ࡱ>  I(ɀ\pThierry Janaudy Ba==[J18X@"1Arial1Arial1Arial1Arial1Arial10Arial Unicode MS1Arial1 Arial""#,##0;\-""#,##0""#,##0;[Red]\-""#,##0""#,##0.00;\-""#,##0.00#""#,##0.00;[Red]\-""#,##0.005*0_-""* #,##0_-;\-""* #,##0_-;_-""* "-"_-;_-@_-,)'_-* #,##0_-;\-* #,##0_-;_-* "-"_-;_-@_-=,8_-""* #,##0.00_-;\-""* #,##0.00_-;_-""* "-"??_-;_-@_-4+/_-* #,##0.00_-;\-* #,##0.00_-;_-* "-"??_-;_-@_-"Yes";"Yes";"No""True";"True";"False""On";"On";"Off"],[$ -2]\ #,##0.00_);[Red]\([$ -2]\ #,##0.00\)                + ) , *    @5  @/  @,  @+  @2 !  @. `bopcodes,T 2The value must of type reference. It is popped from the operand stack. If value is null, the unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is calculated to be (branchbyte1 << 8) | branchbyte2. Execution then proceeds at that offset from the address of the opcode of this ifnull instruction. The target address must be that of an opcode of an instruction within the method that contains this ifnull instruction. Otherwise, execution proceeds at the address of the instruction following this ifnull instruction  JOSWYefqvEKBranch if reference not null BThe value must be of type reference. It is popped from the operand stack. If value is not null, the unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is calculated to be (branchbyte1 << 8) | branchbyte2. Execution then proceeds at that offset from the address of the opcode of this ifnonnull instruction. The target address must be that of an opcode of an instruction within the method that contains this ifnonnull instruction. Otherwise, execution proceeds at the address of the instruction following this ifnonnull instruction #MRZ^`lmx}LUBranch always (wide index)The unsigned bytes branchbyte1, branchbyte2, branchbyte3, and branchbyte4 are used to construct a signed 32-bit branchoffset, where branchoffset is (branchbyte1 << 24) | (branchbyte2 << 16) | (branchbyte3 << 8) | branchbyte4. Execution proceeds at that offset from the address of the opcode of this goto_w instruction. The target address must be that of an opcode of an instruction within the method that contains this goto_w instruction +-8>Ip|+1Jump subroutine (wide index)4The address of the opcode of the instruction immediately following this jsr_w instruction is pushed onto the operand stack as a value of type returnAddress. The unsigned branchbyte1, branchbyte2, branchbyte3, and branchbyte4 are used to construct a signed 32-bit offset, where the offset is (branchbyte1 << 24) | (branchbyte2 << 16) | (branchbyte3 << 8) | branchbyte4. Execution proceeds at that offset from the address of this jsr_w instruction. The target address must be that of an opcode of an instruction within the method that contains this jsr_w instruction HM$/:EP[do#)ReservedBoth value1 and value2 must be of type int. They are popped from the operand stack. An int result is calculated by taking the bitwise inclusive OR of value1 and value2. The result is pushed onto the operand stack '*WZ[aBoolean OR long Both value1 and value2 must be of type long. They are popped from the operand stack. A long result is calculated by taking the bitwise inclusive OR of value1 and value2. The result is pushed onto the operand stack '+W[\bBoolean XOR int Both value1 and value2 must be of type int. They are popped from the operand stack. An int result is calculated by taking the bitwise exclusive OR of value1 and value2. The result is pushed onto the operand stack '*WZ[aBoolean XOR long Both value1 and value2 must be of type long. They are popped from the operand stack. A long result is calculated by taking the bitwise exclusive OR of value1 and value2. The result is pushed onto the operand stack '+W[\b$Increment local variable by constant3The index is an unsigned byte that must be an index into the local variable array of the current frame The const is an immediate signed byte. The local variable at index must contain an int. The value const is first sign-extended to an int, and then the local variable at index is incremented by that amount Convert int to long  The value on the top of the operand stack must be of type int. It is popped from the operand stack and sign-extended to a long result. That result is pushed onto the operand stack :=z~Convert int to float  The value on the top of the operand stack must be of type int. It is popped from the operand stack and converted to the float result using IEEE 754 round to nearest mode. The result is pushed onto the operand stack :=x}~Convert int to double  The value on the top of the operand stack must be of type int. It is popped from the operand stack and converted to a double result. The result is pushed onto the operand stack :=v|}Convert long to int  The value on the top of the operand stack must be of type long. It is popped from the operand stack and converted to an int result by taking the low-order 32 bits of the long value and discarding the high-order 32 bits. The result is pushed onto the operand stack :>x{|Convert long to float  The value on the top of the operand stack must be of type long. It is popped from the operand stack and converted to a float result using IEEE 754 round to nearest mode. The result is pushed onto the operand stack. :>w|}Convert long to double  The value on the top of the operand stack must be of type long. It is popped from the operand stack and converted to a double result using IEEE 754 round to nearest mode. The result is pushed onto the operand stack :>w}~Convert float to int The value on the top of the operand stack must be of type float. It is popped from the operand stack and undergoes value set conversion resulting in value'. Then value' is converted to an int result. This result is pushed onto the operand stack :?Convert float to long The value on the top of the operand stack must be of type float. It is popped from the operand stack and undergoes value set conversion resulting in value'. Then value' is converted to a long result. This result is pushed onto the operand stack :?Convert float to double The value on the top of the operand stack must be of type float. It is popped from the operand stack and undergoes value set conversion resulting in value'. Then value' is converted to a double result. This result is pushed onto the operand stack :?Convert double to intThe value on the top of the operand stack must be of type double. It is popped from the operand stack and undergoes value set conversion resulting in value'. Then value' is converted to an int. The result is pushed onto the operand stack :@Convert double to longThe value on the top of the operand stack must be of type double. It is popped from the operand stack and undergoes value set conversion resulting in value'. Then value' is converted to a long. The result is pushed onto the operand stack :@Convert double to floatThe value on the top of the operand stack must be of type double. It is popped from the operand stack and undergoes value set conversion resulting in value'. Then value' is converted to a float result using IEEE 754 round to nearest mode. The result is pushed onto the operand stack :@Convert int to byte  The value on the top of the operand stack must be of type int. It is popped from the operand stack, truncated to a byte, then sign-extended to an int result. That result is pushed onto the operand stack :=swConvert int to char  The value on the top of the operand stack must be of type int. < It is popped from the operand stack, truncated to char, then zero-extended to an int result. That result is pushed onto the operand stack :=quConvert int to short  The value on the top of the operand stack must be of type int. It is popped from the operand stack, truncated to a short, then sign-extended to an int result. That result is pushed onto the operand stack :=sx Compare long|Both value1 and value2 must be of type long. They are both popped from the operand stack, and a signed integer comparison is performed. If value1 is greater than value2, the int value 1 is pushed onto the operand stack. If value1 is equal to value2, the int value 0 is pushed onto the operand stack. If value1 is less than value2, the int value -1 is pushed onto the operand stack '+/5CIOR Compare float{Both value1 and value2 must be of type float. The values are popped from the operand stack and undergo value set conversion ',Compare double|Both value1 and value2 must be of type double. The values are popped from the operand stack and undergo value set conversion '-+Branch if int comparison with zero succeeds  The value must be of type int. It is popped from the operand stack and compared against zero. All comparisons are signed. The results of the comparisons are as follows: eq succeeds if and only if value = 0. If the comparison succeeds, the unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is calculated to be (branchbyte1 << 8) | branchbyte2. Execution then proceeds at that offset from the address of the opcode of this if instruction. The target address must be that of an opcode of an instruction within the method that contains this if instruction. Otherwise, execution proceeds at the address of the instruction following this if instruction The value must be of type int. It is popped from the operand stack and compared against zero. All comparisons are signed. The results of the comparisons are as follows: ne succeeds if and only if value != 0. If the comparison succeeds, the unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is calculated to be (branchbyte1 << 8) | branchbyte2. Execution then proceeds at that offset from the address of the opcode of this if instruction. The target address must be that of an opcode of an instruction within the method that contains this if instruction. Otherwise, execution proceeds at the address of the instruction following this if instruction The value must be of type int. It is popped from the operand stack and compared against zero. All comparisons are signed. The results of the comparisons are as follows: lt succeeds if and only if value < 0. If the comparison succeeds, the unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is calculated to be (branchbyte1 << 8) | branchbyte2. Execution then proceeds at that offset from the address of the opcode of this if instruction. The target address must be that of an opcode of an instruction within the method that contains this if instruction. Otherwise, execution proceeds at the address of the instruction following this if instruction The value must be of type int. It is popped from the operand stack and compared against zero. All comparisons are signed. The results of the comparisons are as follows: le succeeds if and only if value <= 0. If the comparison succeeds, the unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is calculated to be (branchbyte1 << 8) | branchbyte2. Execution then proceeds at that offset from the address of the opcode of this if instruction. The target address must be that of an opcode of an instruction within the method that contains this if instruction. Otherwise, execution proceeds at the address of the instruction following this if instruction The value must be of type int. It is popped from the operand stack and compared against zero. All comparisons are signed. The results of the comparisons are as follows: ge succeeds if and only if value >= 0. If the comparison succeeds, the unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is calculated to be (branchbyte1 << 8) | branchbyte2. Execution then proceeds at that offset from the address of the opcode of this if instruction. The target address must be that of an opcode of an instruction within the method that contains this if instruction. Otherwise, execution proceeds at the address of the instruction following this if instruction The value must be of type int. It is popped from the operand stack and compared against zero. All comparisons are signed. The results of the comparisons are as follows: gt succeeds if and only if value > 0. If the comparison succeeds, the unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is calculated to be (branchbyte1 << 8) | branchbyte2. Execution then proceeds at that offset from the address of the opcode of this if instruction. The target address must be that of an opcode of an instruction within the method that contains this if instruction. Otherwise, execution proceeds at the address of the instruction following this if instruction !Branch if int comparison succeeds  & ., value1, value2 -> & Check doco'Branch if reference comparison succeeds jBoth value1 and value2 must be of type reference. They are both popped from the operand stack and compared '0 Branch alwaysjThe unsigned bytes branchbyte1 and branchbyte2 are used to construct a signed 16-bit branchoffset, where branchoffset is (branchbyte1 << 8) | branchbyte2. Execution proceeds at that offset from the address of the opcode of this goto instruction. The target address must be that of an opcode of an instruction within the method that contains this goto instruction#.UaiuzZ^Jump subroutine& -> & , addressThe address of the opcode of the instruction immediately following this jsr instruction is pushed onto the operand stack as a value of type returnAddress. The unsigned branchbyte1 and branchbyte2 are used to construct a signed 16-bit offset, where the offset is (branchbyte1 << 8) | branchbyte2. Execution proceeds at that offset from the address of this jsr instruction. The target address must be that of an opcode of an instruction within the method that contains this jsr instruction HK&cfReturn from subroutineThe index is an unsigned byte between 0 and 255, inclusive. The local variable at index in the current frame must contain a value of type returnAddress. The contents of the local variable are written into the Java virtual machine's pc register, and execution continues there <OQW\#Access jump table by index and jump & , index -> & A tableswitch is a variable-length instruction. Immediately after the tableswitch opcode, between 0 and 3 null bytes (zeroed bytes, not the null object) are inserted as padding. The number of null bytes is chosen so that the following byte begins at an address that is a multiple of 4 bytes from the start of the current method (the opcode of its first instruction). Immediately after the padding follow bytes constituting three signed 32-bit values: default, low, and high. Immediately following those bytes are bytes constituting a series of high - low + 1 signed 32-bit offsets. The value low must be less than or equal to high. The high - low + 1 signed 32-bi< t offsets are treated as a 0-based jump table. Each of these signed 32-bit values is constructed as (byte1 << 24) | (byte2 << 16) | (byte3 << 8) | byte4. The index must be of type int and is popped from the operand stack. If index is less than low or index is greater than high, then a target address is calculated by adding default to the address of the opcode of this tableswitch instruction. Otherwise, the offset at position index - low of the jump table is extracted. The target address is calculated by adding that offset to the address of the opcode of this tableswitch instruction. Execution then continues at the target address. The target address that can be calculated from each jump table offset, as well as the ones that can be calculated from default, must be the address of an opcode of an instruction within the method that contains this tableswitch instruction. The alignment required of the 4-byte operands of the tableswitch instruction guarantees 4-byte alignment of those operands if and only if the method that contains the tableswitch starts on a 4-byte boundary FQ %'+PSrv| !*'Access jump table by key match and jump & , key -> & A lookupswitch is a variable-length instruction. Immediately after the lookupswitch opcode, between zero and three null bytes (zeroed bytes, not the null object) are inserted as padding. The number of null bytes is chosen so that the defaultbyte1 begins at an address that is a multiple of four bytes from the start of the current method (the opcode of its first instruction). Immediately after the padding follow a series of signed 32-bit values: default, npairs, and then npairs pairs of signed 32-bit values. The npairs must be greater than or equal to 0. Each of the npairs pairs consists of an int match and a signed 32-bit offset. Each of these signed 32-bit values is constructed from four unsigned bytes as (byte1 << 24) | (byte2 << 16) | (byte3 << 8) | byte4. The table match-offset pairs of the lookupswitch instruction must be sorted in increasing numerical order by match. The key must be of type int and is popped from the operand stack. The key is compared against the match values. If it is equal to one of them, then a target address is calculated by adding the corresponding offset to the address of the opcode of this lookupswitch instruction. If the key does not match any of the match values, the target address is calculated by adding default to the address of the opcode of this lookupswitch instruction. Execution then continues at the target address. The target address that can be calculated from the offset of each match-offset pair, as well as the one calculated from default, must be the address of an opcode of an instruction within the method that contains this lookupswitch instruction. The alignment required of the 4-byte operands of the lookupswitch instruction guarantees 4-byte alignment of those operands if and only if the method that contains the lookupswitch is positioned on a 4-byte boundary. The match-offset pairs are sorted to support lookup routines that are quicker than linear search.GS ;AWZ[`u{Return int from method & , value -> [empty]j The current method must have return type boolean, byte, short, char, or int. The value must be of type int)0268=?CHKQVgReturn long from method Return float from method Return double from method Return reference from method& , objectref -> [empty]Return void from method & -> [empty]Get static field from class The unsigned indexbyte1 and indexbyte2 are used to construct an index into the runtime constant pool of the current class where the value of the index is (indexbyte1 << 8) | indexbyte2. The runtime constant pool item at that index must be a symbolic reference to a field which gives the name and descriptor of the field as well as a symbolic reference to the class or interface in which the field is to be found. The referenced field is resolved &Set static field in class The unsigned indexbyte1 and indexbyte2 are used to construct an index into the runtime constant pool of the current class where the value of the index is (indexbyte1 << 8) | indexbyte2. The runtime constant pool item at that index must be a symbolic reference to a field which gives the name and descriptor of the field as well as a symbolic reference to the class or interface in which the field is to be found. The referenced field is resolved &Fetch field from object& , objectref -> & , value^The objectref, which must be of type reference, is popped from the operand stack. The unsigned indexbyte1 and indexbyte2 are used to construct an index into the runtime constant pool of the current class where the value of the index is (indexbyte1 << 8) | indexbyte2. The runtime constant pool item at that index must be a symbolic reference to a field which gives the name and descriptor of the field as well as a symbolic reference to the class in which the field is to be found. The referenced field is resolved The value of the referenced field in objectref is fetched and pushed onto the operand stack %._inxSet field in object& , objectref, value -> & The unsigned indexbyte1 and indexbyte2 are used to construct an index into the runtime constant pool of the current class where the value of the index is (indexbyte1 << 8) | indexbyte2. The runtime constant pool item at that index must be a symbolic reference to a field which gives the name and descriptor of the field as well as a symbolic reference to the class in which the field is to be found. The class of objectref must not be an array. If the field is protected and it is either a member of the current class or a member of a superclass of the current class, then the class of objectref must be either the current class or a subclass of the current class &/Invoke instance method; dispatch based on class#& , objectref, [arg1, [arg2 & ]] -> & The unsigned indexbyte1 and indexbyte2 are used to construct an index into the runtime constant pool of the current class where the value of the index is (indexbyte1 << 8) | indexbyte2. The runtime constant pool item at that index must be a symbolic reference to a method which gives the name and descriptor of the method as well as a symbolic reference to the class in which the method is to be found. The named method is resolved The method must not be an instance initialization method or the class or interface initialization method Finally, if the resolved method is protected and it is either a member of the current class or a member of a superclass of the current class, then the class of objectref must be either the current class or a subclass of the current class &pInvoke instance method; special handling for superclass, private, and instance initialization method invocationsInvoke a class (static) method& , [arg1. [arg2 & ]] -> & Invoke interface methodCreate new objectCreate new array& , count -> & , arrayrefCreate new array of referenceGet length of arrayThrow exception or error& , arrayref -> & , length%Check whether object is of given type& , objectref -> & , objectref$Determine if object is of given type& , objectref -> & , resultEnter monitor for objectExit monitor for object/Extend local variable index by additional bytesSame as modified instructionCheck doco. The bahavior depends on the next byte: Format 1 for iload, fload, aload, lload, dload, istore, fstore, astore, lstore, dstore, or ret (4 bytes) and Format 2 for iinc (6 bytes)!Create new mul< tidimensional array%& , count1, [count2, & ] => & , arrayrefBranch if reference is null (0x00)nop(0x01) aconst_null(0x02) iconst_m1(0x03)iconst_0(0x04)iconst_1(0x05)iconst_2(0x06)iconst_3(0x07)iconst_4(0x08)iconst_5(0x09)lconst_0(0x0a)lconst_1(0x0b)fconst_0(0x0c)fconst_1(0x0d)fconst_2(0x0e)dconst_0(0x0f)dconst_1(0x10)bipush(0x11)sipush(0x12)ldc(0x13)ldc_w(0x14)ldc2_w(0x15)iload(0x16)lload(0x17)fload(0x18)dload(0x19)aload(0x1a)iload_0(0x1b)iload_1(0x1c)iload_2(0x1d)iload_3(0x1e)lload_0(0x1f)lload_1(0x20)lload_2(0x21)lload_3(0x22)fload_0(0x23)fload_1(0x24)fload_2(0x25)fload_3(0x26)dload_0(0x27)dload_1(0x28)dload_2(0x29)dload_3(0x2a)aload_0(0x2b)aload_1(0x2c)aload_2(0x2d)aload_3(0x2e)iaload(0x2f)laload(0x30)faload(0x31)daload(0x32)aaload(0x33)baload(0x34)caload(0x35)saload(0x36)istore(0x37)lstore(0x38)fstore(0x39)dstore(0x3a)astore(0x3b)istore_0(0x3c)istore_1(0x3d)istore_2(0x3e)istore_3(0x3f)lstore_0(0x40)lstore_1(0x41)lstore_2(0x42)lstore_3(0x43)fstore_0(0x44)fstore_1(0x45)fstore_2(0x46)fstore_3(0x47)dstore_0(0x48)dstore_1(0x49)dstore_2(0x4a)dstore_3(0x4b)astore_0(0x4c)astore_1(0x4d)astore_2(0x4e)astore_3(0x4f)iastore(0x50)lastore(0x51)fastore(0x52)dastore(0x53)aastore(0x54)bastore(0x55)castore(0x56)sastore(0x57)pop(0x58)pop2(0x59)dup(0x5a)dup_x1(0x5b)dup_x2(0x5c)dup2(0x5d)dup2_x1(0x5e)dup2_x2(0x5f)swap(0x60)iadd(0x61)ladd(0x62)fadd(0x63)dadd(0x64)isub(0x65)lsub(0x66)fsub(0x67)dsub(0x68)imul(0x69)lmul(0x6a)fmul(0x6b)dmul(0x6c)idiv(0x6d)ldiv(0x6e)fdiv(0x6f)ddiv(0x70)irem(0x71)lrem(0x72)frem(0x73)drem(0x74)ineg(0x75)lneg(0x76)fneg(0x77)dneg(0x78)ishl(0x79)lshl(0x7a)ishr(0x7b)lshr(0x7c)iushr(0x7d)lushr(0x7e)iand(0x7f)land(0x80)ior(0x81)lor(0x82)ixor(0x83)lxor(0x84)iinc(0x85)i2l(0x86)i2f(0x87)i2d(0x88)l2i(0x89)l2f(0x8a)l2d(0x8b)f2i(0x8c)f2l(0x8d)f2d(0x8e)d2i(0x8f)d2l(0x90)d2f(0x91)i2b(0x92)i2c(0x93)i2s(0x94)lcmp(0x95)fcmpl(0x96)fcmpg(0x97)dcmpl(0x98)dcmpg(0x99)ifeq(0x9a)ifne(0x9b)iflt(0x9c)ifge(0x9d)ifgt(0x9e)ifle(0x9f) if_icmpeq(0xa0) if_icmpne(0xa1) if_icmplt(0xa2) if_icmpge(0xa3) if_icmpgt(0xa4) if_icmple(0xa5) if_acmpeq(0xa6) if_acmpne(0xa7)goto(0xa8)jsr(0xa9)ret(0xaa) tableswitch(0xab) lookupswitch(0xac)ireturn(0xad)lreturn(0xae)freturn(0xaf)dreturn(0xb0)areturn(0xb1)return(0xb2) getstatic(0xb3) putstatic(0xb4)getfield(0xb5)putfield(0xb6) invokevirtual(0xb7) invokespecial(0xb8) invokestatic(0xb9)invokeinterface(0xba) xxxunusedxxx1(0xbb)new(0xbc)newarray(0xbd) anewarray(0xbe) arraylength(0xbf)athrow(0xc0) checkcast(0xc1) instanceof(0xc2) monitorenter(0xc3) monitorexit(0xc4)wide(0xc5)multianewarray(0xc6)ifnull(0xc7) ifnonnull(0xc8)goto_w(0xc9)jsr_w(0xca) breakpoint(0xfe)impdep1(0xff)impdep2OpCode int valueOpcode hex value Opcode name Description Do nothingNext valid index Push nullPush int constant -1 Operand stack & -> & , <i>Push int constant 0Push int constant 1Push int constant 2Push int constant 3Push int constant 4Push int constant 5 & -> & , null & -> & , <l>Push long constant 0 Push long constant 1 Push float 0.0Push float 1.0Push float 2.0 & -> & , <f>Push double 1.0Push double 1.1 & -> & , <d> Push byte & -> & , valueaThe immediate byte is sign-extended to an int value. That value is pushed onto the operand stack.*-.3:? Push shortThe immediate unsigned byte1 and byte2 values are assembled into an intermediate short where the value of the short is (byte1 << 8) | byte2. The intermediate value is then sign-extended to an int value. That value is pushed onto the operand stack!&QVx}$Push item from runtime constant poolThe index is an unsigned byte that must be a valid index into the runtime constant pool of the current class. The runtime constant pool entry at index either must be a runtime constant of type int or float, or must be a symbolic reference to a string literal 1Push item from runtime constant pool (wide index)The unsigned indexbyte1 and indexbyte2 are assembled into an unsigned 16-bit index into the runtime constant pool of the current class. where the value of the index is calculated as (indexbyte1 << 8) | indexbyte2. The index must be a valid index into the runtime constant pool of the current class. The runtime constant pool entry at the index either must be a runtime constant of type int or float, or must be a symbolic reference to a string literal &;Push long or double from runtime constant pool (wide index) The unsigned indexbyte1 and indexbyte2 are assembled into an unsigned 16-bit index into the runtime constant pool of the current class. where the value of the index is calculated as (indexbyte1 << 8) | indexbyte2. The index must be a valid index into the runtime constant pool of the current class. The runtime constant pool entry at the index must be a runtime constant of type long or double &Load int from local variableThe index is an unsigned byte that must be an index into the local variable array of the current frame The local variable at index must contain an int. The value of the local variable at index is pushed onto the operand stack. Load long from local variable The index is an unsigned byte. Both index and index + 1 must be indices into the local variable array of the current frame The local variable at index must contain a long. The value of the local variable at index is pushed onto the operand stack $).4Load float from local variable The index is an unsigned byte that must be an index into the local variable array of the current frame The local variable at index must contain a float. The value of the local variable at index is pushed onto the operand stackLoad double from local variable zThe index is an unsigned byte. Both index and index + 1 must be indices into the local variable array of the current frame $).467The index is an unsigned byte. Both index and index + 1 must be indices into the local variable array of the current frame The local variable at index must contain a double. The value of the local variable at index is pushed onto the operand stack $).467"Load reference from local variable& -> & , objectrefThe index is an unsigned byte that must be an index into the local variable array of the current frame The local variable at index must contain a reference. The objectref in the local variable at index is pushed onto the operand stack The must be an index into the local variable array of the current frame The local variable at must contain an int. The value of the local variable at is pushed onto the operand stack< The must be an index into the local variable array of the current frame The local variable at must contain an int. The value of the local variable at is pushed onto the operand stackBoth and + 1 must be indices into the local variable array of the current frame The local variable at must contain a long. The value of the local variable at is pushed onto the operand stackThe must be an index into the local variable array of the current frame The local variable at must contain a float. The value of the local variable at is pushed onto the operand stackBoth and + 1 must be indices into the local variable array of the current frame The local variable at must contain a double. The value of the local variable at is pushed onto the operand stack The must be an index into the local variable array of the current frame The local variable at must contain a reference. The objectref in the local variable at index is pushed onto the operand stackLoad int from array& , arrayref, index -> & , value!The arrayref must be of type reference and must refer to an array whose components are of type int. The index must be of type int. Both arrayref and index are popped from the operand stack. The int value in the component of the array at index is retrieved and pushed onto the operand stack &_bhm~Load long from array #The arrayref must be of type reference and must refer to an array whose components are of type long. The index must be of type int. Both arrayref and index are popped from the operand stack. The long value in the component of the array at index is retrieved and pushed onto the operand stack &_cinLoad float from array %The arrayref must be of type reference and must refer to an array whose components are of type float. The index must be of type int. Both arrayref and index are popped from the operand stack. The float value in the component of the array at index is retrieved and pushed onto the operand stack &_djoLoad double from array 'The arrayref must be of type reference and must refer to an array whose components are of type double. The index must be of type int. Both arrayref and index are popped from the operand stack. The double value in the component of the array at index is retrieved and pushed onto the operand stack &_ekpLoad reference from array-The arrayref must be of type reference and must refer to an array whose components are of type reference. The index must be of type int. Both arrayref and index are popped from the operand stack. The reference value in the component of the array at index is retrieved and pushed onto the operand stack &_hnsLoad byte or boolean from array #"The arrayref must be of type reference and must refer to an array whose components are of type byte or of type boolean. The index must be of type int. Both arrayref and index are popped from the operand stack. If the components of the array are of type byte, the component of the array at index is retrieved and sign-extended to an int value. If the components of the array are of type boolean, the component of the array at index is retrieved and zero-extended to an int value. In either case the resulting value is pushed onto the operand stack. &_cov|!&LOPULoad char from array >The arrayref must be of type reference and must refer to an array whose components are of type char. The index must be of type int. Both arrayref and index are popped from the operand stack. The component of the array at index is retrieved and zero-extended to an int value. That value is pushed onto the operand stack &_cin  Load short from array @The arrayref must be of type reference and must refer to an array whose components are of type short. The index must be of type int. Both arrayref and index are popped from the operand stack. The component of the array at index is retrieved and sign-extended to an int value. That value is pushed onto the operand stack. &_djo   Store int into local variab & , value -> & The index is an unsigned byte that must be an index into the local variable array of the current frame The value on the top of the operand stack must be of type int. It is popped from the operand stack, and the value of the local variable at index is set to value Store long into local variable The index is an unsigned byte. Both index and index + 1 must be indices into the local variable array of the current frame The value on the top of the operand stack must be of type long. It is popped from the operand stack, and the local variables at index and index + 1 are set to value $).467Store float into local variable =The index is an unsigned byte that must be an index into the local variable array of the current frame The value on the top of the operand stack must be of type float. It is popped from the operand stack and undergoes value set conversion resulting in value'. The value of the local variable at index is set to value' Store double into local variable Store into reference array #Store reference into local variable& , objectref -> & .The index is an unsigned byte that must be an index into the local variable array of the current frame The objectref on the top of the operand stack must be of type returnAddress or of type reference. It is popped from the operand stack, and the value of the local variable at index is set to objectref Store int into local variable The must be an index into the local variable array of the current frame The value on the top of the operand stack must be of type int. It is popped from the operand stack, and the value of the local variable at is set to valueBoth and + 1 must be indices into the local variable array of the current frame The value on the top of the operand stack must be of type long. It is popped from the operand stack, and the local variables at and + 1 are set to value!The must be an index into the local variable array of the current frame The value on the top of the operand stack must be of type float. It is popped from the operand stack and undergoes value set conversion resulting in value'. The value of the local variable at is set to value'./Both and + 1 must be indices into the local variable array of the current frame The value on the top of the operand stack must be of type double. It is popped from the operand stack and undergoes value set conversion resulting in value'. The local variables at and + 1 are set to value'.The must be an index into the local variable array of the current frame The objectref on the top of the operand stack must be of type returnAddress or of type reference. It is popped from the operand stack, and the value of the local variable at is set to objectrefStore into int array & , arrayref, index, value -> & The arrayref must be of type reference and must refer to an array whose components are of type int. Both index and value must be of type int. The arrayref, index, and value are popped from the operand stack. The int value is stored as the component of the array indexed by index. Store into long array < .The arrayref must be of type reference and must refer to an array whose components are of type long. The index must be of type int, and value must be of type long. The arrayref, index, and value are popped from the operand stack. The long value is stored as the component of the array indexed by index. &_cin(-Store into float array sThe arrayref must be of type reference and must refer to an array whose components are of type float. The index must be of type int, and the value must be of type float. The arrayref, index, and value are popped from the operand stack. The float value undergoes value set conversion resulting in value', and value' is stored as the component of the array indexed by index &_djoStore into double array mThe arrayref must be of type reference and must refer to an array whose components are of type double. The index must be of type int, and value must be of type double. The arrayref, index, and value are popped from the operand stack. The double value undergoes value set conversion resulting in value', which is stored as the component of the array indexed by index &_ekp4The arrayref must be of type reference and must refer to an array whose components are of type reference. The index must be of type int and value must be of type reference. The arrayref, index, and value are popped from the operand stack. The reference value is stored as the component of the array at index. &_hns.3 Store into byte or boolean array 'The arrayref must be of type reference and must refer to an array whose components are of type byte or of type boolean. The index and the value must both be of type int. The arrayref, index, and value are popped from the operand stack. If the components of the array are of type byte, the int value is truncated to a byte and stored as the component of the array indexed by index. If the components of the array are of type boolean, the int value is truncated to its low order bit then zero-extended to the storage size for components of boolean arrays used by the implementation. The result is stored as the component of the array indexed by index &_cov|!$%*=Av{!Store into char array 7The arrayref must be of type reference and must refer to an array whose components are of type char. The index and the value must both be of type int. The arrayref, index, and value are popped from the operand stack. The int value is truncated to a char and stored as the component of the array indexed by index &_cinw|2Store into short array 1The arrayref must be of type reference and must refer to an array whose components are of type short. Both index and value must be of type int. The arrayref, index, and value are popped from the operand stack. The int value is truncated to a short and stored as the component of the array indexed by index &_dkpuz,Pop the top operand stack valuePop the top value from the operand stack The pop instruction must not be used unless value is a value of a category 1 computational type +Pop the top one or two operand stack values'& , value2, value1 -> & or & , value -> & 4Pop the top one or two values from the operand stack%Duplicate the top operand stack value& , value -> & , value, valueDuplicate the top value on the operand stack and push the duplicated value onto the operand stack, The dup instruction must not be used unless value is a value of a category 1 computational type @Duplicate the top operand stack value and insert two values down.& , value2, value1 -> & , value1, value2, value1qDuplicate the top value on the operand stack and insert the duplicated value two values down in the operand stackIDuplicate the top operand stack value and insert two or three values downp& , value3, value2, value1 -> & , value1, value3, value2, value1 or & , value2, value1 -> & , value1, value2, value1zDuplicate the top value on the operand stack and insert the duplicated value two or three values down in the operand stack1Duplicate the top one or two operand stack valuesU& , value2, value1 -> & , value2, value1, value2, value1 or & , value -> & , value, valueDuplicate the top one or two values on the operand stack and push the duplicated value or values back onto the operand stack in the original orderUDuplicate the top one or two operand stack values and insert two or three values downx& , value3, value2, value1 -> & , value2, value1, value3, value2, value1 or & , value2, value1 -> & , value1, value2, value1Duplicate the top one or two values on the operand stack and insert the duplicated values, in the original order, one value beneath the original value or values in the operand stack.\Duplicate the top one or two operand stack values and insert two, three, or four values downCheck the docoDuplicate the top one or two values on the operand stack and insert the duplicated values, in the original order, into the operand stack%Swap the top two operand stack values&& , value2, value1 -> & , value1, value2-Swap the top two values on the operand stack.Add int& , value1, value2 -> & , resultBoth value1 and value2 must be of type int. The values are popped from the operand stack. The int result is value1 + value2. The result is pushed onto the operand stack '*^abhlru{Add longBoth value1 and value2 must be of type long. The values are popped from the operand stack. The long result is value1 + value2. The result is pushed onto the operand stack '+_cdjntw} Add floatBoth value1 and value2 must be of type float. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The float result is value1' + value2'. The result is pushed onto the operand stack ', Add doubleBoth value1 and value2 must be of type double. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The double result is value1' + value2'. The result is pushed onto the operand stack '- Subtract int Both value1 and value2 must be of type int. The values are popped from the operand stack. The int result is value1 - value2. The result is pushed onto the operand stack '*^abhlru{ Subtract long Both value1 and value2 must be of type long. The values are popped from the operand stack. The long result is value1 - value2. The result is pushed onto the operand stack '+_cdjntw}Subtract float Both value1 and value2 must be of type float. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The float result is value1' - value2'. The result is pushed onto the operand stack ',<JSubtract double Both value1 and value2 must be of type double. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The double result is value1' - value2'. The result is pushed onto the operand stack '- Multiply int Both value1 and value2 must be of type int. The values are popped from the operand stack. The int result is value1 * value2. The result is pushed onto the operand stack '*^abhlru{ Multiply long Both value1 and value2 must be of type long. The values are popped from the operand stack. The long result is value1 * value2. The result is pushed onto the operand stack '+_cdjntw}Multiply float Both value1 and value2 must be of type float. The values are popped from the operand stack and undergo value set conversion in value1' and value2'. The float result is value1' * value2'. The result is pushed onto the operand stack ',Multiply double Both value1 and value2 must be of type double. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The double result is value1' * value2'. The result is pushed onto the operand stack '- Divide intBoth value1 and value2 must be of type int. The values are popped from the operand stack. The int result is the value of the Java programming language expression value1 / value2. The result is pushed onto the operand stack. '*^abh Divide longBoth value1 and value2 must be of type long. The values are popped from the operand stack. The long result is the value of the Java programming language expression value1 / value2. The result is pushed onto the operand stack. '+_cdj Divide floatBoth value1 and value2 must be of type float. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The float result is value1' / value2'. The result is pushed onto the operand stack ', Divide doubleBoth value1 and value2 must be of type double. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The double result is value1' / value2'. The result is pushed onto the operand stack '- Remainder int Both value1 and value2 must be of type int. The values are popped from the operand stack. The int result is value1 - (value1 / value2) * value2. The result is pushed onto the operand stack. '*^abhlrv|Remainder long Both value1 and value2 must be of type long. The values are popped from the operand stack. The long result is value1 - (value1 / value2) * value2. The result is pushed onto the operand stack '+_cdjntx~Remainder float Both value1 and value2 must be of type float. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The result is calculated and pushed onto the operand stack as a floatRemainder double Both value1 and value2 must be of type double. The values are popped from the operand stack and undergo value set conversion resulting in value1' and value2'. The result is calculated and pushed onto the operand stack as a double '- Negate int& , value -> & , resultThe value must be of type int. It is popped from the operand stack. The int result is the arithmetic negation of value, -value. The result is pushed onto the operand stack HKLRqvy~ Negate longThe value must be of type long. It is popped from the operand stack. The long result is the arithmetic negation of value, -value. The result is pushed onto the operand stack IMNTsx{ Negate floatThe value must be of type float. It is popped from the operand stack and undergoes value set conversion resulting in value'. The float result is the arithmetic negation of value'. This result is pushed onto the operand stack Negate doubleThe value must be of type double. It is popped from the operand stack and undergoes value set conversion resulting in value'. The double result is the arithmetic negation of value'. The result is pushed onto the operand stack  Shift left int Both value1 and value2 must be of type int. The values are popped from the operand stack. An int result is calculated by shifting value1 left by s bit positions, where s is the value of the low 5 bits of value2. The result is pushed onto the operand stack '*]`agShift left longThe value1 must be of type long, and value2 must be of type int. The values are popped from the operand stack. A long result is calculated by shifting value1 left by s bit positions, where s is the low 6 bits of value2. The result is pushed onto the operand stack. %+<?quv|Arithmetic shift right intBoth value1 and value2 must be of type int. The values are popped from the operand stack. An int result is calculated by shifting value1 right by s bit positions, with sign extension, where s is the value of the low 5 bits of value2. The result is pushed onto the operand stack '*]`agArithmetic shift right long*The value1 must be of type long, and value2 must be of type int. The values are popped from the operand stack. A long result is calculated by shifting value1 right by s bit positions, with sign extension, where s is the value of the low 6 bits of value2. The result is pushed onto the operand stack %+<?quv| Logical shift right intBoth value1 and value2 must be of type int. The values are popped from the operand stack. An int result is calculated by shifting value1 right by s bit positions, with zero extension, where s is the value of the low 5 bits of value2. The result is pushed onto the operand stack '*]`agLogical shift right long$The value1 must be of type long, and value2 must be of type int. The values are popped from the operand stack. A long result is calculated by shifting value1 right logically (with zero extension) by the amount indicated by the low 6 bits of value2. The result is pushed onto the operand stack %+<?quv|Boolean AND int Both value1 and value2 must be of type int. They are popped from the operand stack. An int result is calculated by taking the bitwise AND (conjunction) of value1 and value2. The result is pushed onto the operand stack. '*WZ[aBoolean AND long Both value1 and value2 must be of type long. They are popped from the operand stack. A long result is calculated by taking the bitwise AND of value1 and value2. The result is pushed onto the operand stack '+W[\bBoolean OR int g i ?- $jw)2. >LDETJ Vq]defU~hhiXoiii7Bj{jj&k_rkkl?Nlll4mmmm $n]qnnn7Eo~oopAHppp qA Jq q q r< ?rx {r r r6 =sv s s #t\ xt t uN zu uvXxvv$w]wtx2yk|Ԃ Ou XsZux ޷ۿ\2} g=e I(ɀ ,*2 :B*<9HGNM  dMbP?_*+%M\\LON0015XNS.FM.RBSGRP.NET\LON0? dXXLetter.HP LaserJet 5Si PCL 5e2xU[n! ؐtsk4YJUz<6kDSNq00g\F#@){& (#@#*mxܢD{-UXT:`Gxu֗RBXgP):}t:@0%㿩`೪>~TA.jhJj$/Xұ޳v@\aJI*䠈L.KHq|=EZR0u Ikcf买o׫;ƕjW1W}j+O7Whhӽh+A?8=*p A/8B}(x?:h9r3QPt0" dXX??U} } }  } } m} m} I!,,  , ,  ,,,,,,,,,,,,,,,       ~  | } ~ ?~ ? ~  ~ ? &~ @   ~ ? ~ @    ~ ? ~ @   !~ ? ~ @   "~ ? ~ @   #~ ? ~ @   $~ ? ~  @   %~ ? ~ "@   (~ ? '~ $@   )~ ? '~ &@   *~ ? -~ (@   +~ ? -~ *@   ,~ ? -~ ,@   .~ ? 0~ .@   /~ ? 0~ 0@   1~ @ 2 3~ 1@   4~ @ 2 5~ 2@   6~ @ 2 7~ 3@   8~ @ 2 9~ 4@   :~ @ 2 ;~ 5@   <~ @ 2 =~ 6@   >~ @ 2 ?~ 7@   @~ @ 2 A~ 8@   B~ @ 2 D~ 9@   E~ @ F G~ :@   <~ ? 2 H~ ;@   <~ ? 2 I~ <@   <~ ? 2 I~ =@   <~ ? 2 I~ >@   >~ ? 2 JD lbFTTTTTTTTTTTTTTTbbbbbbbbbbbbbb ,!,",#,$,%,&,',(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,~ ?@   >~ ? 2 J~ !@@ ! ! !>~ !? !2 !J~ "@@ " " ">~ "? "2 "J~ #A@ # # #@~ #? #2 #K~ $A@ $ $ $@~ $? $2 $K~ %B@ % % %@~ %? %2 %K~ &B@ & & &@~ &? &2 &K~ 'C@ ' ' 'B~ '? '2 'L~ (C@ ( ( (B~ (? (2 (L~ )D@ ) ) )B~ )? )2 )L~ *D@ * * *B~ *? *2 *L~ +E@ + + +E~ +? +F +M~ ,E@ , , ,E~ ,? ,F ,M~ -F@ - - -E~ -? -F -M~ .F@ . . .E~ .? .F .M~ /G@ / / /N~ /? /O /P~ 0G@ 0 0 0Q~ 0? 0O 0R~ 1H@ 1 1 1S~ 1? 1O 1T~ 2H@ 2 2 2U~ 2? 2O 2V~ 3I@ 3 3 3W~ 3? 3O 3X~ 4I@ 4 4 4Y~ 4? 4O 4Z~ 5J@ 5 5 5[~ 5? 5O 5\~ 6J@ 6 6 6]~ 6? 6O 6^~ 7K@ 7 7 7_~ 7@ 7` 7a~ 8K@ 8 8 8b~ 8@ 8` 8c~ 9L@ 9 9 9d~ 9@ 9` 9e~ :L@ : : :f~ :@ :` :C~ ;M@ ; ; ;h~ ;@ ;i ;j~ <M@ < < <k~ <? <` <l~ =N@ = = =k~ =? =` =l~ >N@ > > >k~ >? >` >l~ ?O@ ? ? ?k~ ?? ?` ?lDlbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,XYZ[\]^_~ @O@ @ @ @b~ @? @` @m~ AP@ A A Ab~ A? A` Am~ B@P@ B B Bb~ B? B` Bm~ CP@ C C Cb~ C? C` Cm~ DP@ D D Dd~ D? D` Dn~ EQ@ E E Ed~ E? E` En~ F@Q@ F F Fd~ F? F` Fn~ GQ@ G G  Gd~ G? G` Gn~ HQ@ H  H  Hf~ H? H` Ho~ IR@ I  I  If~ I? I` Io~ J@R@ J J Jf~ J? J` Jo~ KR@ K K Kf~ K? K` Ko~ LR@ L L Lh~ L? Li Lp~ MS@ M M Mh~ M? Mi Mp~ N@S@ N N Nh~ N? Ni Np~ OS@ O O Oh~ O? Oi Op~ PS@ P P Pq~ P? Pr Ps~ QT@ Q Q Qt~ Q? Qr Qu~ R@T@ R R Rv~ R? Rr Rw~ ST@ S  S! Sx~ S? Sr Sy~ TT@ T" T# Tg~ T? Tr Tz~ UU@ U$ U% U{~ U? Ur U|~ V@U@ V& V' V}~ V? Vr V~~ WU@ W( W) W~ W? Wr W~ XU@ X* X+ X~ X? X` X~ YV@ Y, Y- Y~ Y? Y Y~ Z@V@ Z. Z/ Z~ Z? Z Z~ [V@ [0 [1 [~ [? [ [~ \V@ \2 \3 \~ \? \ \~ ]W@ ]4 ]5 ]~ ]? ] ]~ ^@W@ ^6 ^7 ^~ ^? ^ ^~ _W@ _8 _9 _~ _? _ _Dlbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb`a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,{,|,},~,,~ `W@ `: `; `~ `? ` `~ aX@ a< a= a~ a? a a~ b@X@ b> b? b~ b? b b~ cX@ c@ cA c~ c? c c~ dX@ dB dC d~ d? d d~ eY@ eD eE e~ e? e e~ f@Y@ fF fG f~ f? f f~ gY@ gH gI g~ g? g g~ hY@ hJ hK h~ h? h h~ iZ@ iL iM i~ i? i i~ j@Z@ jN jO j~ j? j j~ kZ@ kP kQ k~ k? k k~ lZ@ lR lS l~ l? l l~ m[@ mT mU m~ m? m m~ n@[@ nV nW n~ n? n n~ o[@ oX oY o~ o? o o~ p[@ pZ p[ p~ p? p p~ q\@ q\ q] q~ q? q q~ r@\@ r^ r_ r~ r? r r~ s\@ s` sa s~ s? s s~ t\@ tb tc t~ t? t t~ u]@ ud ue u~ u? u u~ v@]@ vf vg v~ v? v v~ w]@ wh wi w~ w? w w~ x]@ xj xk x~ x? x x~ y^@ yl ym y~ y? y y~ z@^@ zn zo z~ z? z z~ {^@ {p {q {~ {? { {~ |^@ |r |s |~ |? | |~ }_@ }t }u }~ }? } }~ ~@_@ ~v ~w ~~ ~? ~ ~~ _@ x y ~ ?  Dlbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~ _@ z { ~ ?  ~ `@ | } ~ ?  ~  `@ ~   ~ ?   ~ @`@    ~ ?   ~ ``@    ~ ?  ~ `@   ~ @ ~ `@   ~ ?  ~ `@   ~ ?  ~ `@   ~ ?  ~ a@   ~ ?  ~  a@   ~ ?  ~ @a@   ~ ?  ~ `a@   ~ ?  ~ a@   ~ ?   ~ a@   !~ ?  "~ a@   #~ ?  $~ a@   %~ ?  &~ b@   '~ ?  (~  b@   )~ ?  *~ @b@   +~ ?  ,~ `b@   -~ ?  .~ b@   /~ ?  0~ b@   1~ ?  2~ b@   1~ ?  2~ b@   3~ ?  4~ c@   3~ ?  4~  c@   5~ @ ` 6~ @c@   5~ @ ` 7~ `c@   5~ @ ` 8~ c@   5~ @ ` :~ c@   5~ @ ` ;~ c@   5~ @ ` 9DlbbbbbTbbbbbbbbbbbbbbbbbbbbbbbbb,,,,,,,,,,,,,,,,,,,,,~ c@   <~ @ = >~ d@   <~ @ = >~  d@   <~ @ = >~ @d@   <~ @ = >~ `d@   <~ @ = >~ d@   <~ @ = >~ d@   ?~ @ = @~ d@   ?~ @ = @~ d@   A~ @ B~ e@   C~ @ D E~  e@   F~ @ G~ @e@   H~  I J~ `e@   K~  L M~ e@   N~ ? O P~ e@   Q~ ? O~ e@   R~ ? O~ e@   S~ ? O~ f@   T~ ? U~  f@   V~ ? W~ @f@   X~ @ 2 Y~ `f@   Z~ @ ` [~ f@   \~ @ ] ^~ f@   _~ @ ` a~ f@   b~ @ c d~ f@   e~ @ c~ g@   f~ @ g~  g@   h~ @ c~ @g@  ~ `g@   i~ @ F~ g@   j~ @ k~ g@   l~ @ k~ g@   m~ ? oD lbbbbbbbbTbTbbbTTTTTbbbbbTTT*TTT,,,~ g@   n~ ? q~ h@   p~ @ q~  h@   r~ @ s~ @h@   t~ ? i~ `h@   u~ ? i~ h@   v~  w x~ h@   y~ @ z~ h@    {~ @ ` ~ h@     ~ @ ` ~ i@     ~ @ ~  i@   ~ @ D ~ @i@   ~ ~ o@   ~ ~ o@   ~  TTTTTbTbbTbFF>@7 Oh+'0T(0 @LKumikkA@R{՜.+,0HP X`hp x O opcodes  Worksheets  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root Entry FpWorkbookMSummaryInformation(DocumentSummaryInformation8