Use constrain for checking the return value
Add rudder decorator