public void removeBlock( int x, int y, Block b ) {
			int index = stackIndex(x,y);
			Block[] stack = blockStacks[index];
			if( stack == null ) return;
			if( stack.length == 0 ) return;
			for( int j=0; j<stack.length; ++j ) {
				if( stack[j] == b ) {
					Block[] newStack;
					if( stack.length == 2 ) {
						newStack = stack[j^1].stack;
					} else {
						newStack = new Block[stack.length-1];
						for( int k=0; k<j; ++k ) newStack[j] = stack[k];
						for( int k=j+1; k<stack.length; ++k ) newStack[k-1] = stack[k];
					}
					blockStacks[index] = newStack;
				}
			}
		}