2 GJ     L   M    G       ! G G   *   / 1 / /  / 1 / 1  G 1 1 ? ? ? 1 1Node InnerClassespmfLptolemy/data/expr/Parameter;alphabethuffmanCodeBookLptolemy/actor/TypedIOPort; _codeBook[Ljava/lang/String;_parametersInvalidZ_pmf[D5(Lptolemy/kernel/CompositeEntity;Ljava/lang/String;)VCodeLineNumberTableLocalVariableTablethis%Lptolemy/actor/lib/comm/HuffmanBasic; container Lptolemy/kernel/CompositeEntity;nameLjava/lang/String; Exceptionsclone3(Lptolemy/kernel/util/Workspace;)Ljava/lang/Object; workspaceLptolemy/kernel/util/Workspace; newObjectattributeChanged"(Lptolemy/kernel/util/Attribute;)ViIpmfValueLptolemy/data/ArrayToken;sumD attributeLptolemy/kernel/util/Attribute; StackMapTablefire()VcodeBookTokensptolemy/data/StringToken;alphabetArrayTokenalphabetTokens[Lptolemy/data/Token;zwgenerateCodeBook([D)[Ljava/lang/String;node*Lptolemy/actor/lib/comm/HuffmanBasic$Node;node1node2newNodecodeBooklistLjava/util/LinkedList;rootP initialize _findMinNodeB(Ljava/util/LinkedList;)Lptolemy/actor/lib/comm/HuffmanBasic$Node;minProbindex_setCode@(Lptolemy/actor/lib/comm/HuffmanBasic$Node;[Ljava/lang/String;)VleftCode rightCode parentCodeleftright SourceFileHuffmanBasic.java UVptolemy/data/expr/Parameter U JK {0.5, 0.5} ptolemy/data/type/ArrayType U LK{0, 1} ptolemy/actor/TypedIOPort U MN bc#ptolemy/actor/lib/comm/HuffmanBasic ST QR ptolemy/data/ArrayToken ptolemy/data/DoubleToken *ptolemy/kernel/util/IllegalActionExceptionProbabilities must be positive! U hi tuCuncoded alphabet and pmf are required to be arrayswith same length.ptolemy/data/Token }~ OPptolemy/data/StringToken U U java/lang/Stringjava/util/LinkedList Uu(ptolemy/actor/lib/comm/HuffmanBasic$Node U    U  _ u o  java/lang/StringBuilder   0   k 1ptolemy/actor/lib/Transformer,ptolemy/kernel/util/NameDuplicationException$java/lang/CloneNotSupportedException3(Lptolemy/kernel/util/NamedObj;Ljava/lang/String;)V setExpression(Ljava/lang/String;)Vptolemy/data/type/BaseTypeDOUBLE DoubleType'Lptolemy/data/type/BaseType$DoubleType;(Lptolemy/data/type/Type;)V setTypeEquals ARRAY_BOTTOMLptolemy/graph/InequalityTerm;setTypeAtLeast!(Lptolemy/graph/InequalityTerm;)V7(Lptolemy/kernel/ComponentEntity;Ljava/lang/String;ZZ)VSTRING StringType'Lptolemy/data/type/BaseType$StringType;getToken()Lptolemy/data/Token;length()I getElement(I)Lptolemy/data/Token; doubleValue()D3(Lptolemy/kernel/util/Nameable;Ljava/lang/String;)V0(Lptolemy/data/type/Type;[Lptolemy/data/Token;)Vsend(ILptolemy/data/Token;)V(DI)Vadd(Ljava/lang/Object;)ZsizeremoveW(Lptolemy/actor/lib/comm/HuffmanBasic$Node;Lptolemy/actor/lib/comm/HuffmanBasic$Node;)Vget(I)Ljava/lang/Object; huffmanCode probability leftChildappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString()Ljava/lang/String; indexInArray rightChild%ptolemy/data/type/BaseType$DoubleType%ptolemy/data/type/BaseType$StringType!GJKLKMNOPQRSTUVWq*+,*Y***Y *Y*  * * *Y**Y X* LNOP.R<SETOW_XpYY qZ[q\]q^_`a!bcWd*+M, ,,Xz {}~Y Z[de f[`ghiWt*+*d*M*,J6*=*, R*1!Y*"#)*1cJ*+$X: "$1DP[eknsY4'DjkSlm$GnotZ[tpqr's3`!tuWc*%* L*+!Y*&#*'M>*,+S*U****()**N6*-*Y*)2+S*Y-,-XF&/:BHOT`ivY>1jkl"jki8vwZ[xm/syzr&s {#|!`!}~Wm+.M/Y0N6*"1Y*12:-3W-46*-5:-6W*-5:-6W1Y7:-3W-81:9:*,;,XJ-4:BIPW ^#k$r%u)*+,Yf -)jkI)WkZ[JTPr(:uW< *<*X56 7Y  Z[`!WM+81=I66+4++81=(6+81=I+81X"R SUV,W0X=UC\Y41jkMZ[M Ao>kr *W]+:N+>Y::?Y@-ABAC::D,DS *,;+EY::?Y@-AFAC::D,DS *,;X:dhi$j+l3m?oFsPteulwtxz}YR$"_e"_Z[P_ |M;r+?9I1H