frames[frnum] : read(shapes, shnum, frnum);
frames[frnum] : read(shapes, shnum, frnum, shapes2, count1, count2);
	Shape_frame *get(DataSource& shapes, int shnum, int frnum)		{ 		return (frames && frnum < frames_size && frames[frnum]) ? 			frames[frnum] : read(shapes, shnum, frnum); 		}