1      +  +  +    + +s +    p  p + + +u} +^c + + + + +| + + + + + + + + + + + + +  + + + + + + + + + + + + + + +  + + + + +optionsI isLogicalZspacesRelativeToTextBeginEndtailCharCSEEN_TWOCELL_NEAR ConstantValue SEEN_MASKYEHHAMZA_TWOCELL_NEAR YEHHAMZA_MASKTASHKEEL_BEGIN TASHKEEL_ENDTASHKEEL_RESIZETASHKEEL_REPLACE_BY_TATWEEL TASHKEEL_MASK!SPACES_RELATIVE_TO_TEXT_BEGIN_ENDSPACES_RELATIVE_TO_TEXT_MASKSHAPE_TAIL_NEW_UNICODESHAPE_TAIL_TYPE_MASKLENGTH_GROW_SHRINKLAMALEF_RESIZELENGTH_FIXED_SPACES_NEAR LAMALEF_NEARLENGTH_FIXED_SPACES_AT_END LAMALEF_END LENGTH_FIXED_SPACES_AT_BEGINNING LAMALEF_BEGIN LAMALEF_AUTO LENGTH_MASK LAMALEF_MASKTEXT_DIRECTION_LOGICALTEXT_DIRECTION_VISUAL_RTLTEXT_DIRECTION_VISUAL_LTRTEXT_DIRECTION_MASK LETTERS_NOOP LETTERS_SHAPELETTERS_UNSHAPELETTERS_SHAPE_TASHKEEL_ISOLATED LETTERS_MASK DIGITS_NOOP DIGITS_EN2AN  DIGITS_AN2EN@DIGITS_EN2AN_INIT_LR`DIGITS_EN2AN_INIT_AL DIGITS_MASK DIGIT_TYPE_ANDIGIT_TYPE_AN_EXTENDEDDIGIT_TYPE_MASK HAMZAFE_CHAR HAMZA06_CHAR!YEH_HAMZA_CHAR&YEH_HAMZAFE_CHARLAMALEF_SPACE_SUBTASHKEEL_SPACE_SUBLAM_CHARD SPACE_CHAR SHADDA_CHAR SHADDA06_CHARQ TATWEEL_CHAR@SHADDA_TATWEEL_CHAR NEW_TAIL_CHAR OLD_TAIL_CHAR  SHAPE_MODE DESHAPE_MODE IRRELEVANTLAMTYPEALEFTYPELINKRLINKL LINK_MASK irrelevantPos[ItailFamilyIsolatedFinaltashkeelMedial yehHamzaToYeh[CconvertNormalizedLamAlefaraLinkpresLink convertFEto06 shapeTable[[[Ishape ([CII[CII)ICodeLineNumberTableLocalVariableTablethis Lcom/ibm/icu/text/ArabicShaping;source sourceStart sourceLengthdest destStartdestSize Exceptions([CII)Vstartlength&(Ljava/lang/String;)Ljava/lang/String;textLjava/lang/String;srclen(I)Vequals(Ljava/lang/Object;)ZrhsLjava/lang/Object;hashCode()ItoString()Ljava/lang/String;bufLjava/lang/StringBuilder;shapeToArabicDigitsWithContext ([CIICZ)Vchi digitBaselastStrongWasALbdpLcom/ibm/icu/impl/UBiDiProps; invertBuffertempjbuffer changeLamAlef(C)C specialChar(C)IgetLinkcountSpacesLeft([CII)IecountcountSpacesRightisTashkeelChar(C)ZisSeenTailFamilyCharisSeenFamilyChar isTailCharisAlefMaksouraCharisYehHamzaCharisTashkeelCharFEisTashkeelOnTatweelCharisIsolatedTashkeelChar isAlefChar isLamAlefCharisNormalizedLamAlefChar calculateSize countSpaceSub([CIC)IsubChar shiftArray([CIIC)Vwr flipArray([CIII)IhandleTashkeelWithTatweel([CI)IhandleGeneratedSpaceswLwTlenOptionsLamAleflenOptionsTashkeel lamAlefOn tashkeelOnexpandCompositCharAtBegin([CIII)Zlacount spaceNotFoundexpandCompositCharAtEndexpandCompositCharAtNear ([CIIIII)ZyehHamzaOptionseenTailOption lamAlefOptionexpandCompositChar ([CIIII)I shapingModelenOptionsSeenlenOptionsYehHamza normalizedeshapeNormalizeyehHamzaComposeEnabledseenComposeEnabled shapeUnicodewLamalefflag tashkeelFlag lamalef_count lamalef_found seenfam_foundyehhamza_foundtashkeel_foundcurrLinknextLinkprevLinklastLinklastPosnxnwdeShapeUnicode internalShape digitDeltadigitTop outputSize()V SourceFileArabicShaping.java"java/lang/IllegalArgumentExceptionsource can not be null java/lang/StringBuilder bad source start (   ) or length () for buffer of length !" null dest requires destSize == 0bad dest start ( ) or size ( Wrong Tashkeel argumentWrong Lam Alef argument=Tashkeel replacement should not be enabled in deshaping mode 'com/ibm/icu/text/ArabicShapingException0Cannot shape in place with length option resize.   java/lang/String bad DIGITS options com/ibm/icu/text/ArabicShaping LamAlef resizeLamAlef spaces at nearLamAlef spaces at beginLamAlef spaces at end lamAlef auto , logical, visual, no letter shaping, shape letters!, shape letters tashkeel isolated, unshape letters, Seen at near, Yeh Hamza at near, Tashkeel at begin, Tashkeel at end, Tashkeel replace with tatweel, Tashkeel resize, no digit shaping, shape digits to AN, shape digits to EN-, shape digits to AN contextually: default EN-, shape digits to AN contextually: default AL, standard Arabic-Indic digits, extended Arabic-Indic digits] ,  E< B< F< C4 D4 IJ LM PQ :7 G< 67 =4 A< _\ [\ `aNo spacefor lamalef No space for Seen tail expansionNo space for YehHamza expansion  @< ?< j7 54 ;< 12 >4 34  T7 ef k7 H7  - nf RS ~Qnot enough room for result data %&[[Ijava/lang/Object(Ljava/lang/String;)Vappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;(I)Ljava/lang/StringBuilder; toCharArray()[CgetClass()Ljava/lang/Class;(C)Ljava/lang/StringBuilder;com/ibm/icu/impl/UBiDiPropsINSTANCE(I)Ijava/lang/System arraycopy*(Ljava/lang/Object;ILjava/lang/Object;II)V1+Mw:y<%%''rVfheY( *h+ Y `+1YY  +  Y I`4YY   *~=*~1*~%*~*~ Y*~D*~9*~.*~$*~*~ Y*~*~ Y*+>XY[\L`Va`czejot0z:PZHh h h h h hht *~ Y*++W *     >+M,N*~*~ ,hN*,,--6 Y-!$24> >97 2 Y*"*~ Y#*~$*%~%&'~' *() * )*  -?HQXY YV"++*+*++H" " /*R  !"EY*,-L+[.W*~a2<PFZ+/W(+0W+1W+2W +3W*~,%+4W +5W*~Q,6J@+6W+7W+8W +9W*:~ +;W*<~+=W*~O*4H >+>W+?W+@W +AW*~b3 =@G`Q[+BW(+CW+DW+EW +FW*~*#+GW +HW+IW+ $Y Z\L]V^`_j`ta{cdeghijkm n'p@qGsxtuvwz{|}~(29@E 9#$%&' }J:0d6`6d+46KQ,,8 26"69+`U6 no qr!sTvWwZy]z`|l}y|\ !X'j(} } }}})}*x+, -+>`d6*46**4U*U!*> .(( !/+0++ 12x:7"''+7/73\]^_(,048 :' 34o! &-'&. 3G J )K RS UpL M8:HJkm o' 54H"ӣ N"d.  m  oLO PLd.& !/1=F H' 67!>`6*4 d 4(8! !!9 :7r`>*4 `dd *( 9 ;<>KR ' =4IQR SQd.  ' >4D3 6   ' ?<C (  ' @<CTU I' ' A<BV W0 13 ' B<BXL M= ' C4w=L$M(XY ZLd.[ \ YHJ'K9L;N =' D4m3L M(XZLd.d] ^Z[#\/]1_ 3' E<L""#% 'h "' F<<_ Op ' G<>\_t 'H76*~""*$@6`d6,+4D+`4` +4aӧe`6`6,+4D+d4` +4aӧ(6`6+4bJ,3Ddgpp 67(=08u5(z08(8     IJ>6*4 4 K(9 LM/66"*46 *U۱* %+.H'/ //8/K,N)O PQ$6>**4U>  "4O$ $$8$N RSK=E*4c *@U,*4c *YU*4d*4e* U& $,>CI K K I(T7 *~6*~666*$*&~U& 6 6(!6 6+6`6  +4f + Uf`6+fg6 +hg6 66$+fi +   U%+hi +   U6666!+fi+ j6  d>#+hi+ j6  d>66 667 *+fi+ j6  +  U1*+hi+ j6  +  U>   4 P V\x"#$&')*./015678+<.=1?6@9B@CCFMGVHaIfKrL{MNQRTVXY\^_`adefg hm "(8 ^8UU LV    WXYZ[\  e6+k 6`d6`6;+46l!+DU+m\d4U +U2 {}~*08BV_b\ 0/'FO!ANe e eee]b^_\ g6+n 6`66`6>+46  l!+m \d4U+DU + U2 )/7HU^df //' JOGN"B8g g ggg]d^`a 6+4l 6`6+46 = l5)+d4 +DU+m \d4Uy60 o'+d4 +d*)UF6: p2&+d4 +q Vd4U+drU 6Af  &4EL`cfuf &' (  bcd^efY *~6*:~6*<~66 *$2*&+& 6 6B*$>*+s6  *+t6  *+u6  GYv*+t6  *+s6  *+u6   Yv*+s6  Yv*+t6  ̻Yv*+u6  Yv`6  `6  ;+ 46  l!+  DU+  m \d4U +   U`>Gw*+u6  Yxy*+u6  Yz7 ,HNTZahsx   $ 0!5"?$D%Y&_'g(q)+-.1234789:> _/' IHO PAN   ]g Whi^ j7I66`66+46L#Ob+{Ld.U& HIJK'L/M2O@IFRR''@( :8I I IIF]k7 666*<~y6*:~w66`6+46 8 !  r)d!+`4|+ U+`&UV) }!d+`4o + U* L# O b+{ Ld.UbJ_`a cd/f?gEinktlmoqrsufxf E' 2(88  ]l mnf~^*+~6666 6 `d6 + 46 6 66 666  ~ + 4 d660 6 6+46  ~ 6ׄ  ~7~/6+ 46+ fU+U6 66  /+ d4 $+ 4 66+ 4&,6 & !+ 4 6+ 4&6 + 46 ~2~2 ~.6 ~6c]?~8 ~1+ 4L'+ 4M  ~ ~ 6+ 4Q 669+ 4Q+ hU6 -+ L+ 4Kd.``U+ L z``U ~6 6 6   6 6  + 46 6 *+6 *+6*J %(+.269>PVZ_ehox %9?HN ". 1 ; DN[ o%p9^ ^ ^^^^q Ur RsOtLu Iv B( %9w (6x +3y.0z2,{6(|9%}~Q#*+6*+66 !#% (># # ### r!*~*~ *+h:+*$ 6*~3}#*6\*~*~*66*6*~6*6 Y*~06 *~+#`6 6 *~ ,@f` 0d6 6  ) 46  9 0 \4 `U ֧c  `6 0 d6 6  ) 46      \4 `U ֧!* * *$ 6236 7:'<)A0B9D@EGHJJtLMPSVYZ`aghklm o%p(s-t0zd}k~u|~ |' n-( k0 ' -( 7 0 )      0.J p 8 YOYOYOYOYOY OY OYO YOYOYOYOYOYOYOYOYOY OY OY OY OY OS YOYOYOYOYOYOYOYOYOY OY OY OY OY OYOYOZYTUYUUqY"UY#UY%UY'Um Y!OY!OYOY!OYOY!OYOY#OY%OY )OY -OY 1OY 5OY 9OY;OY=OY?OYAOYEOYIOYMOYQOYUOYYOY]OYOYOYOYOYOYOYaOY eOY!iOY"mOY#qOY$uOY%yOY&}OY'OY(OY)OY*OY+OY,OY-OY.OY/OY0OY1OY2OY3OY4OY5OY6OY7OY8OY9OY:OY;OY<OY=OY>OY?OY@OYAOYBOYCOYDOYEOYFOYGOYHOYIOYJOYKOYLOYMOYNOYOOYP!OYQ!OYROYS!OYTOYUOYVOYWOYXOYYOYZOY[OY\OY]OY^OY_OY`OYaOYbOYcOYdOYeOYfOYgOYhOYiOYjOYkOYlOYmOYnOYoOYpOYqOYrOYsOYtOYuOYvOYwOYxOYyOYzOY{OY|OY}OY~OYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYON YOYOYOYOYOYOYOYOYOY OY OY OY OY OYOYOYOY OY!OY OY!OYOYOY OY!OYOYOYOYOY OY!OYOY OY!OY"OY#OY$OY%OY&OY'OY(OY)OY*OY+OY,OY-OY.OY/OY0OY1OY2OY3OY4OY5OY6OY7OY8OY9OY:OY;OY<OY=OY>OY?OY@OYAOYBOYCOYDOYEOYFOYGOYHOYIOYJOYKOYLOYMOYNOYOOYPOYQOYROYSOYTOYUOYVOYWOYXOYYOYZOY[OY\OY]OY^OY_OY`OYaOYbOYcOYdOYeOYfOYgOYhOYiOYjOYkOYlOYmOYnOYoOYpOYqOYrOYsOYtOYuOYvOYwOYxOYyOYzOY{OY|OY}OY~OYOYOYOYOYOYOYOYOYOYOYOYOYOYOP YKOYKOYLOYLOYMOYMOYNOYNOYOOY OOY POY POY QOY QOYROYROY!OY"OY"OY#OY#OY$OY$OY%OY%OY&OY&OY&OY&OY'OY'OY(OY (OY!(OY"(OY#)OY$)OY%*OY&*OY'*OY(*OY)+OY*+OY++OY,+OY-,OY.,OY/,OY0,OY1-OY2-OY3-OY4-OY5.OY6.OY7.OY8.OY9/OY:/OY;0OY<0OY=1OY>1OY?2OY@2OYA3OYB3OYC3OYD3OYE4OYF4OYG4OYH4OYI5OYJ5OYK5OYL5OYM6OYN6OYO6OYP6OYQ7OYR7OYS7OYT7OYU8OYV8OYW8OYX8OYY9OYZ9OY[9OY\9OY]:OY^:OY_:OY`:OYaAOYbAOYcAOYdAOYeBOYfBOYgBOYhBOYiCOYjCOYkCOYlCOYmDOYnDOYoDOYpDOYqEOYrEOYsEOYtEOYuFOYvFOYwFOYxFOYyGOYzGOY{GOY|GOY}HOY~HOYIOYIOYJOYJOYJOYJOY\OY\OY]OY]OY^OY^OY_OY_O{YY YOYOYOYOSY YOYOYOYOSY YOYOYOYOSY YOYOYOYOSSYY YOYOYOYOSY YOYOYOYOSY YOYOYOYOSY YOYOYOYOSSYY YOYOYOYOSY YOYOYOYOSY YOYOYOYOSY YOYOYOYOSSYY YOYOYOYOSY YOYOYOYOSY YOYOYOYOSY YOYOYOYOSS& .u'P ]