Have added docs and comments to explain indifference method