private BitSet getSpecSeqcode(int seqcode, boolean returnEmpty) {
		BitSet bs = new BitSet();
		int seqNum = (seqcode >> 8);
		boolean isEmpty = true;
		char insCode = Group.getInsertionCode(seqcode);
		switch (insCode) {
		case '?':
			for (int i = atomCount; --i >= 0;) {
				int atomSeqcode = atoms[i].getSeqcode();
				if ((seqNum == 0 || seqNum == (atomSeqcode >> 8)) && (atomSeqcode & 0xFF) != 0) {
					bs.set(i);
					isEmpty = false;
				}
			}
			break;
		default:
			for (int i = atomCount; --i >= 0;) {
				int atomSeqcode = atoms[i].getSeqcode();
				if (seqcode == atomSeqcode || seqNum == 0 && seqcode == (atomSeqcode & 0xFF) || insCode == '*'
						&& seqNum == (atomSeqcode >> 8)) {
					bs.set(i);
					isEmpty = false;
				}
			}
		}
		return (!isEmpty || returnEmpty ? bs : null);
	}