separate Slot class