optimise array copying
seperate mixin