fixed overload bug
fixed class contracts to behave correctly