@Override
public Frame getFrame(int index) {
assert(index<getFrameCount());
int listSize = model.getSize();
for(int i=0; i<listSize; i++) {
HierarchicalData data = (HierarchicalData) model.get(i);
if(data instanceof Animation) {
Animation animation = (Animation) data;
int frameCount = animation.getFrameCount();
if(frameCount<=index) index-=frameCount;
else return animation.getFrame(index);