public CpsFile(byte[] cpsFileBytes) {
        CpsFileHeader header = new CpsFileHeader(cpsFileBytes);
        switch (header.type) {
            default:
            case Uncompressed:
                throw new UnsupportedOperationException("Compress method Uncompressed is not supported now.");
//                uncompressed = Arrays.copyOfRange(cpsFileBytes, 10, header.fileSize);
//                break;
            case Crunch1:
                throw new UnsupportedOperationException("Compress method Crunch1 is not supported now.");
            case Format2:
                throw new UnsupportedOperationException("Compress method Format2 is not supported now.");
            case Format3:
                throw new UnsupportedOperationException("Compress method Format3 is not supported now.");
            case Format80:
                uncompressed = uncompressByFormat80(header, cpsFileBytes);
                break;
        }
    }