Site uses cookies to provide basic functionality.

OK
Historical explanation is not identical with moral judgment.