Added Factory functions and slot creation