Removed class constraints
Made it non abstract