public boolean eat(Row in, int remap[]) {int sum = 0;for (Iterator<Cell> i = in.cells.values().iterator(); i.hasNext();) {Cell c = i.next();sum += c.cnt;if (c.ref >= 0) {if (remap[c.ref] == 0) {c.ref = -1;}}}int frame = sum / 10;boolean live = false;for (Iterator<Cell> i = in.cells.values().iterator(); i.hasNext();) {Cell c = i.next();if (c.cnt < frame && c.cmd >= 0) {c.cnt = 0;c.cmd = -1;}if (c.cmd >= 0 || c.ref >= 0) {live |= true;}}return !live;}