https://www.brokenprogrammers.com/nptel-consumer-behaviour-assignment-6-answers/