better mixin support