add mixin pattern