Smart contract fixes