Clazz.declarePackage("JU");
(function(){
var c$ = Clazz.decorateAsClass(function(){
this.cd = null;
this.magicNumbers = null;
this.uniqueID16 = null;
this.revNumber = 0;
this.verNumber = 0;
this.sectorPower = 0;
this.shortSectorPower = 0;
this.unused = null;
this.nSATsectors = 0;
this.SID_DIR_start = 0;
this.minBytesStandardStream = 0;
this.SID_SSAT_start = 0;
this.nSSATsectors = 0;
this.SID_MSAT_next = 0;
this.nAdditionalMATsectors = 0;
this.MSAT0 = null;
Clazz.instantialize(this, arguments);}, JU, "CompoundDocHeader", null);
Clazz.prepareFields (c$, function(){
this.magicNumbers =  Clazz.newByteArray (8, 0);
this.uniqueID16 =  Clazz.newByteArray (16, 0);
this.unused =  Clazz.newByteArray (10, 0);
this.MSAT0 =  Clazz.newIntArray (109, 0);
});
Clazz.makeConstructor(c$, 
function(compoundDocument){
this.cd = compoundDocument;
}, "JU.CompoundDocument");
Clazz.defineMethod(c$, "readData", 
function(){
try {
this.cd.readByteArray(this.magicNumbers, 0, 8);
if ((this.magicNumbers[0] & 0xFF) != 0xD0 || (this.magicNumbers[1] & 0xFF) != 0xCF || (this.magicNumbers[2] & 0xFF) != 0x11 || (this.magicNumbers[3] & 0xFF) != 0xE0 || (this.magicNumbers[4] & 0xFF) != 0xA1 || (this.magicNumbers[5] & 0xFF) != 0xB1 || (this.magicNumbers[6] & 0xFF) != 0x1A || (this.magicNumbers[7] & 0xFF) != 0xE1) return false;
this.cd.readByteArray(this.uniqueID16, 0, 16);
this.revNumber = this.cd.readByte();
this.cd.readByte();
this.verNumber = this.cd.readByte();
this.cd.readByte();
var b1 = this.cd.readByte();
var b2 = this.cd.readByte();
this.cd.isBigEndian = (b1 == -1 && b2 == -2);
this.sectorPower = this.cd.readShort();
this.shortSectorPower = this.cd.readShort();
this.cd.readByteArray(this.unused, 0, 10);
this.nSATsectors = this.cd.readInt();
this.SID_DIR_start = this.cd.readInt();
this.cd.readByteArray(this.unused, 0, 4);
this.minBytesStandardStream = this.cd.readInt();
this.SID_SSAT_start = this.cd.readInt();
this.nSSATsectors = this.cd.readInt();
this.SID_MSAT_next = this.cd.readInt();
this.nAdditionalMATsectors = this.cd.readInt();
for (var i = 0; i < 109; i++) this.MSAT0[i] = this.cd.readInt();

} catch (e) {
if (Clazz.exceptionOf(e, Exception)){
System.out.println(e.toString());
return false;
} else {
throw e;
}
}
return true;
});
})();
;//5.0.1-v2 Tue Jul 23 17:25:20 CDT 2024
