added basic Hook class