Casting double to integer: 13.4 -> 13 Correct values are Land={Property={id=0, price=300000}, lot_size=10000, water=0} House={Land={Property={id=1, price=600000}, lot_size=10000, water=0}, size=2000} ----------------- Experiment 1: WORKS Land={Property={id=1, price=600000}, lot_size=10000, water=0} ----------------- Experiment 2: WORKS but shouldn't! House={Land={Property={id=0, price=300000}, lot_size=10000, water=0}, size=0} ----------------- Experiment 3: WORKS Land={Property={id=1, price=600000}, lot_size=10000, water=0} ----------------- Experiment 4: ERROR ----------------- Experiment 5: WORKS House={Land={Property={id=1, price=600000}, lot_size=10000, water=0}, size=2000}