Morality is not a simple set of rules. It's a very complex struggle of conflicting patterns of values. This conflict is the residue of evolution. As new patters evolve they come into conflict with old ones. Each stage of evolution creates in its wake a wash of problems.
There is always one thing to be grateful for - that one is one's self and not somebody else.