public ByteTrieNode<T> getChild(byte value) {
		value = transformByte(value);
		if (children.length == 0) {
			return null;
		}
		else if (children.length == 1) {
			if (transformByte(children[0].getId()) == value) {
				return children[0];
			}
			return null;
		}
		else if (children.length == 2) {
			if (transformByte(children[0].getId()) == value) {
				return children[0];
			}
			if (transformByte(children[1].getId()) == value) {
				return children[1];
			}
			return null;
		}
		int index = findIndex(value);
		if (index >= children.length) {
			return null;
		}
		ByteTrieNode<T> child = children[index];
		if (transformByte(child.getId()) == value) {
			return child;
		}
		return null;
	}
Returns the child node (successor in the byte sequence) which
has byte value, or null if no such child exists.
@param value the byte value
@return the child node if present or null
Ghidra/Features/Base/src/main/java/ghidra/util/search/trie/ByteTrieNode.java