some more modifications around contract