class BinaryReader {

    public String readGuid() {
        StringBuilder result = new StringBuilder();
        int maxIndex = 0;
        for (int[] indexArray : INDEX_ARRAYS) {
            for (int index : indexArray) {
                maxIndex = Math.max(maxIndex, index);
                result.append(String.format("%02X", bytes[position + index]).toLowerCase());
            }
            result.append("-");
        }
        result.setLength(result.length() - 1);
        position += (maxIndex + 1);
        return result.toString();
    }

    public  BinaryReader(BinaryReader binaryReader, int position);
    public  BinaryReader(InputStream inputStream, int size);
    public  BinaryReader(byte[] bytes);

}