added a singleton mixin