moved touches up the chain, allocated array for images rather than allocating image per touch