public virtual BitBoard UnsetBit(Square sq) { ulong oneBitNumber = 1UL << (int)sq; this.board = this.board & (~oneBitNumber); return this; }