so this will work like differently for each inherited class if class uses different strategy/