https://medium.com/coinmonks/solving-the-trolley-problem-using-programming-a-success-story-2c7f52a704ad