diy array implementation