   7
 .^
 ._
 .`
`	 .a	 .b	 .c	de	 .f	 .gh
 i	 .jk
 l	 .m
 .no	 .pq	 .r	 wst	 .uvw
 x
 .yz{
 |
}~
 .
 .	 .	 .	 .@  	 .	 .	 .
 .
 .
 .

 2	 .
 5l	 .
 8l	 .	
 .

	 . M
 B   



 H

 Ml	 .	
 	 .		 .
 U	 .A   


 X	 .
 ^	 .
 a	 .
 dl	 .
 gl	 .
 .
 k	 .	 .A  
 .
 5

 .
 tl	 .
 wl
 y	 .
 y
 }	 .
 	 .	a	 .	 .	 .?  	 .
 	 .	 .
 .	 .
 .
 .
 .	 .
 l	 .
 l
 	 .	 .
 l
 .
 .
 .
 .
 .
 .
 .
 .
 .
 .
 .
 .
 .
 . 	
 .
 .
 .

 .	
 }
	 .
 .

	 .
 .	 .
 .
 
 .
?

 .
 .	 .


?
?
 !"	E#	E$
 .%
 &	 .'(
 )	 *
 +	 ,
 .-
 ..	 ./0
 .1
2
 53
1
 54
 556	 .7
 .8	 .9	 .:	 .;<
 %=&>&?%?
 8@	 .A	 .B
 CD
 E	 .F&G	 .H
 I%JK
 L
 M
NOP
 O
QR
 	 US
 5TU	 .V
 .WXY	 .Z	 .[	 .\	 .]^
 ._
 5_
 5`
 .a
 .b
cd	 .e
cf
cg
hi
 .j
hk
 5l
?l	`m	`n
?j
ho
`
 .p
 .q
 .r
hs
ht
hu	 .v
 .w	 .x	`y
 .z
{	 d|	 d}	~
 d	 d
?
?


	~

 
 	
 .	 .

 .
	D	D	 .
h	       


 .
 .
 5
 .
h
h



h
\
^
^
 5
\
 w
 .
 
 .
 .A  
 .
 .CH  B  
 .
8
 .C  A   C  
h
 
 
 
 
 
 k@
 .
 ^
 .
 ^
 k

 k
 .
 .
 .
 k
 k
 

?	 U	 U
?


 .
?	 U
?
 %

 %

 	 .
 
 .
 .?=>L?L
 .
 .
       d
8
8	 U
h
 w

 .
 
 w
 .	 .

	E 
	 w	 w	 .
 .	

 8
 8
	 .
 .
?
?
?
?	 .
?
l
 .

 5
 5
 5

 5
	a
 . !"
 .#	 5$	y%	y&
 .'
8(
8)	 .*	 .+
 .,	 .-
.	 ./
E0
1
 .2
 34
 .5
E6
E7
 .8
 .9
 :;
<
 =
E>
?@
 .A
 .B
 5CXD
EF
G
 .H
 .I
 wJ	 K
LM
 NXOX
 .P
 .Q
 .RS
 TUVWXY
Z
[
 w\
 ]
^_
`
 a
 Jb
 JOc
"d
"e
 .f
?g
?O
^h
 i
 .j
 .k
 .l
 .m
 .no
 .p
 .q
Er
 s
 .t
 .u	 Uv
wx
 .y
 .z
?{
?|
?}~
=
?
 w@
?
 5
E!
D
 
 .
 
 .
 2
 2	 .
 t
 t
 &
 .z
 .
 .
 .
 .
 
 .
 	L	L
 	 .
 .	
 
c		 U	
 	c	c	c	c	c
 .
 
?
 .
 
 
 
 .
 )
 

 5	 .	 
8
   






?

	
					
 .
=
 .
 .



  			
 		 U   	
 @
 w
 w
 }
 y
 
 
 



   
@   




 w


 5
 .
 
 .
 	 .	 .	 U

 .

 w
8
8
8
8
8	 .	 .
h
 .	 
 
8	
 		 w		 w	
 .	
 M		
 8	
	
			
	
 M		
 z
?	
	 U	&	
	
			
 M		&	 		 	 	
 .	
 HO
			 .			 	!	# SearchActionMode InnerClasses logger $Lio/github/rosemoe/sora/util/Logger; 
NUMBER_DIGITS Ljava/lang/String; 
ConstantValue DEFAULT_TEXT_SIZE I    DEFAULT_CURSOR_BLINK_PERIOD   FLAG_DRAW_WHITESPACE_LEADING    FLAG_DRAW_WHITESPACE_INNER    FLAG_DRAW_WHITESPACE_TRAILING    #FLAG_DRAW_WHITESPACE_FOR_EMPTY_LINE    FLAG_DRAW_LINE_SEPARATOR    FLAG_DRAW_TAB_SAME_AS_SPACE     !FLAG_DRAW_WHITESPACE_IN_SELECTION   @ WINDOW_POS_MODE_AUTO     $WINDOW_POS_MODE_FOLLOW_CURSOR_ALWAYS !WINDOW_POS_MODE_FULL_WIDTH_ALWAYS SCALE_MINI_GRAPH F?fff ACTION_MODE_NONE ACTION_MODE_SEARCH_TEXT ACTION_MODE_SELECT_TEXT LOG_TAG mLanguageSymbolPairs /Lio/github/rosemoe/sora/widget/SymbolPairMatch; 	mTabWidth mCursorPosition mDownX 
mInputType mNonPrintableOptions mCompletionPosMode mAvailableFloatArrayRegion J mDpUnit 
mDividerWidth mDividerMargin mInsertSelWidth mBlockLineWidth mVerticalScrollFactor mLineInfoTextSize mLineSpacingMultiplier mLineSpacingAdd mWait Z 	mScalable 	mEditable 	mWordwrap mUndoEnabled mLayoutBusy mDisplayLnPanel mLineNumberEnabled mBlockLineEnabled mForceHorizontalScrollable mHighlightCurrentBlock mHighlightCurrentLine mVerticalScrollBarEnabled mHorizontalScrollBarEnabled mCursorAnimation mPinLineNumber mFirstLineNumberAlwaysVisible mLigatureEnabled mLastCursorState mStickyTextSelection mHighlightBracketPair mLeftHandle HandleDescriptor KLio/github/rosemoe/sora/widget/style/SelectionHandleStyle$HandleDescriptor; mRightHandle 
mInsertHandle mClipboardManager "Landroid/content/ClipboardManager; mInputMethodManager -Landroid/view/inputmethod/InputMethodManager; mCursor $Lio/github/rosemoe/sora/text/Cursor; mText %Lio/github/rosemoe/sora/text/Content; mMatrix Landroid/graphics/Matrix; mColors 9Lio/github/rosemoe/sora/widget/schemes/EditorColorScheme; mLnTip 
mFormatTip 	mLanguage &Lio/github/rosemoe/sora/lang/Language; mDiagnosticStyle >Lio/github/rosemoe/sora/widget/style/DiagnosticIndicatorStyle; mLastMakeVisible mCompletionWindow >Lio/github/rosemoe/sora/widget/component/EditorAutoCompletion; 
mEventHandler 7Lio/github/rosemoe/sora/widget/EditorTouchEventHandler; mLineNumberAlign	% Align Landroid/graphics/Paint$Align; mBasicDetector Landroid/view/GestureDetector; mTextActionWindow @Lio/github/rosemoe/sora/widget/component/EditorTextActionWindow; mScaleDetector #Landroid/view/ScaleGestureDetector; mAnchorInfoBuilder Builder 3Landroid/view/inputmethod/CursorAnchorInfo$Builder; 
mVerticalGlow Landroid/widget/EdgeEffect; mHorizontalGlow mExtracting /Landroid/view/inputmethod/ExtractedTextRequest; 
mFormatThread *Lio/github/rosemoe/sora/text/FormatThread; 	mSearcher .Lio/github/rosemoe/sora/widget/EditorSearcher; mCursorAnimator 4Lio/github/rosemoe/sora/widget/style/CursorAnimator; mLineNumberMetrics	& FontMetricsInt 'Landroid/graphics/Paint$FontMetricsInt; 
mGraphMetrics mHandleStyle :Lio/github/rosemoe/sora/widget/style/SelectionHandleStyle; mCursorBlink +Lio/github/rosemoe/sora/widget/CursorBlink; defSpans Ljava/util/List; 	Signature <Ljava/util/List<Lio/github/rosemoe/sora/lang/styling/Span;>; 	mRenderer 5Lio/github/rosemoe/sora/widget/HwAcceleratedRenderer; mProps 1Lio/github/rosemoe/sora/widget/DirectAccessProps; mExtraArguments Landroid/os/Bundle; mStyleDelegate 3Lio/github/rosemoe/sora/widget/EditorStyleDelegate; mStyles ,Lio/github/rosemoe/sora/lang/styling/Styles; mDiagnostics =Lio/github/rosemoe/sora/lang/diagnostic/DiagnosticsContainer; mKeyEventHandler 5Lio/github/rosemoe/sora/widget/EditorKeyEventHandler; mStartedActionMode mSelectionAnchor *Lio/github/rosemoe/sora/text/CharPosition; mConnection 5Lio/github/rosemoe/sora/widget/EditorInputConnection; 
mEventManager +Lio/github/rosemoe/sora/event/EventManager; mLayout -Lio/github/rosemoe/sora/widget/layout/Layout; mPainter -Lio/github/rosemoe/sora/widget/EditorPainter; mHardwareAccAllowed scrollerFinalX scrollerFinalY verticalAbsorb horizontalAbsorb 	COPYRIGHT <init> (Landroid/content/Context;)V Code LineNumberTable LocalVariableTable this *Lio/github/rosemoe/sora/widget/CodeEditor; context Landroid/content/Context; 7(Landroid/content/Context;Landroid/util/AttributeSet;)V attrs Landroid/util/AttributeSet; 8(Landroid/content/Context;Landroid/util/AttributeSet;I)V defStyleAttr 9(Landroid/content/Context;Landroid/util/AttributeSet;II)V defStyleRes getComponent S(Ljava/lang/Class;)Lio/github/rosemoe/sora/widget/component/EditorBuiltinComponent; clazz Ljava/lang/Class; LocalVariableTypeTable Ljava/lang/Class<TT;>; 
StackMapTable `<T::Lio/github/rosemoe/sora/widget/component/EditorBuiltinComponent;>(Ljava/lang/Class<TT;>;)TT; RuntimeInvisibleAnnotations Landroidx/annotation/NonNull; $RuntimeInvisibleParameterAnnotations replaceComponent T(Ljava/lang/Class;Lio/github/rosemoe/sora/widget/component/EditorBuiltinComponent;)V replacement @Lio/github/rosemoe/sora/widget/component/EditorBuiltinComponent; old 	isEnabled TT;	' a<T::Lio/github/rosemoe/sora/widget/component/EditorBuiltinComponent;>(Ljava/lang/Class<TT;>;TT;)V getKeyMetaStates /()Lio/github/rosemoe/sora/widget/KeyMetaStates; hasVisibleRegion (IIII)Z begin end first last cancelAnimation ()V measureTextRegionOffset ()F getLeftHandleDescriptor M()Lio/github/rosemoe/sora/widget/style/SelectionHandleStyle$HandleDescriptor; getRightHandleDescriptor 	getOffset (II)F line column getCharOffsetX getCharOffsetY 
initialize  (Landroid/util/AttributeSet;II)V 
configuration  Landroid/view/ViewConfiguration; a  Landroid/content/res/TypedArray; e Ljava/lang/Exception;	(	) setCompletionWndPositionMode (I)V mode getCompletionWndPositionMode ()I getProps 3()Lio/github/rosemoe/sora/widget/DirectAccessProps; setFormatTip (Ljava/lang/String;)V 	formatTip getFormatTip ()Ljava/lang/String; setPinLineNumber (Z)V 
pinLineNumber isLineNumberPinned ()Z setFirstLineNumberAlwaysVisible enabled isFirstLineNumberAlwaysVisible 
insertText (Ljava/lang/String;I)V pos text selectionOffset cur	* setAutoCompletionItemAdapter D(Lio/github/rosemoe/sora/widget/component/EditorCompletionAdapter;)V adapter ALio/github/rosemoe/sora/widget/component/EditorCompletionAdapter; Landroidx/annotation/Nullable; setCursorBlinkPeriod before period getCursorBlink -()Lio/github/rosemoe/sora/widget/CursorBlink; setLigatureEnabled isLigatureEnabled setFontFeatureSettings features setSelectionHandleStyle =(Lio/github/rosemoe/sora/widget/style/SelectionHandleStyle;)V style getHandleStyle <()Lio/github/rosemoe/sora/widget/style/SelectionHandleStyle; isHighlightCurrentBlock setHighlightCurrentBlock highlightCurrentBlock isStickyTextSelection setStickyTextSelection stickySelection setHighlightCurrentLine highlightCurrentLine isHighlightCurrentLine getEditorLanguage (()Lio/github/rosemoe/sora/lang/Language; setEditorLanguage )(Lio/github/rosemoe/sora/lang/Language;)V lang mgr 5Lio/github/rosemoe/sora/lang/analysis/AnalyzeManager;	+	, canHandleKeyBinding (IZZZ)Z keyCode ctrlPressed shiftPressed 
altPressed getBlockLineWidth setBlockLineWidth (F)V dp 
isWordwrap setWordwrap wordwrap setCursorAnimationEnabled isCursorAnimationEnabled setCursorAnimator 7(Lio/github/rosemoe/sora/widget/style/CursorAnimator;)V cursorAnimator getCursorAnimator 6()Lio/github/rosemoe/sora/widget/style/CursorAnimator; setScrollBarEnabled isDisplayLnPanel setDisplayLnPanel displayLnPanel getLnTip setLnTip prefix isHorizontalScrollBarEnabled setHorizontalScrollBarEnabled horizontalScrollBarEnabled isVerticalScrollBarEnabled setVerticalScrollBarEnabled verticalScrollBarEnabled getInsertHandleDescriptor 
getTextSizePx Landroidx/annotation/Px; 
setTextSizePx size setTextSizePxDirect getRenderer 7()Lio/github/rosemoe/sora/widget/HwAcceleratedRenderer; getEditorPainter /()Lio/github/rosemoe/sora/widget/EditorPainter; getLineNumberMetrics )()Landroid/graphics/Paint$FontMetricsInt; rememberDisplayedLines obtainFloatArray (IZ)[F res [F )Lio/github/rosemoe/sora/text/ContentLine; i desiredSize 
usePainter start firstVis lastVis	- buildMeasureCacheForLines (IIJZ)V gtr 0Lio/github/rosemoe/sora/graphics/GraphicTextRow; 	startLine endLine 	timestamp	. 	clearFlag (II)I flags flag shouldInitializeNonPrintable !setHardwareAcceleratedDrawAllowed acceleratedDraw  isHardwareAcceleratedDrawAllowed #findLeadingAndTrailingWhitespacePos ,(Lio/github/rosemoe/sora/text/ContentLine;)J buffer [C leading trailingt isWhitespace (C)Z ch C computeMatchedPositions /(ILio/github/rosemoe/sora/util/LongArrayList;)V region highlightStart highlightEnd +Lio/github/rosemoe/sora/util/LongArrayList; lineLeft 	lineRight 	positions seq index len	/ getEdgeEffectColor setEdgeEffectColor color 	getLayout /()Lio/github/rosemoe/sora/widget/layout/Layout; 9Lio/github/rosemoe/sora/annotations/UnsupportedUserUsage; getVerticalEdgeEffect ()Landroid/widget/EdgeEffect; getHorizontalEdgeEffect findCursorBlock blocks ALjava/util/List<Lio/github/rosemoe/sora/lang/styling/CodeBlock;>;	0 (Ljava/util/List;)I dis block /Lio/github/rosemoe/sora/lang/styling/CodeBlock; min max minDis found invalidCount maxCount D(Ljava/util/List<Lio/github/rosemoe/sora/lang/styling/CodeBlock;>;)I getCurrentCursorBlock binarySearchEndBlock (ILjava/util/List;)I mid row left right E(ILjava/util/List<Lio/github/rosemoe/sora/lang/styling/CodeBlock;>;)I measureText /(Lio/github/rosemoe/sora/text/ContentLine;III)F count spans getSpansForLine (I)Ljava/util/List; spanMap +Lio/github/rosemoe/sora/lang/styling/Spans;	1 ?(I)Ljava/util/List<Lio/github/rosemoe/sora/lang/styling/Span;>; drawText M(Landroid/graphics/Canvas;Lio/github/rosemoe/sora/text/ContentLine;IIIIZFFI)V canvas Landroid/graphics/Canvas; contextStart contextCount isRtl offX offY 
lineNumber src st	2 !Landroid/annotation/SuppressLint; value NewApi findFirstVisibleChar 1(FIILio/github/rosemoe/sora/text/ContentLine;I)[F target 2(FIIILio/github/rosemoe/sora/text/ContentLine;I)[F findFirstVisibleCharNoCache Y(FIIILio/github/rosemoe/sora/text/ContentLine;ILio/github/rosemoe/sora/graphics/Paint;)[F paint 'Lio/github/rosemoe/sora/graphics/Paint; measureLineNumber 	lineCount singleX createLayout 	newLayout 5Lio/github/rosemoe/sora/widget/layout/WordwrapLayout; 	commitTab updateCompletionWindowPosition offset width shift panelX rightLayoutOffset panelY restY height updateCursorAnchor builder b [I l visible x 
deleteText 	emptyLine 	inLeading tmp col 
commitText (Ljava/lang/CharSequence;)V Ljava/lang/CharSequence; (Ljava/lang/CharSequence;Z)V p sb Ljava/lang/StringBuilder; applyAutoIndent	3 getLineInfoTextSize setLineInfoTextSize setNonPrintablePaintingFlags getNonPrintablePaintingFlags ensureSelectionVisible ensurePositionVisible (II)V layoutOffset xOffset yOffset targetY targetX 	charWidth 	animation hasClip 	getDpUnit getScroller ()Landroid/widget/OverScroller; 
isOverMaxY (F)Z posOnScreen getPointPosition (FF)J getPointPositionOnScreen y 
getScrollMaxY 
getScrollMaxX getSearcher 0()Lio/github/rosemoe/sora/widget/EditorSearcher; setSelectionAround columnCount formatCodeAsync W(Lio/github/rosemoe/sora/text/CharPosition;Lio/github/rosemoe/sora/text/CharPosition;)Z getTabWidth setTabWidth setScaleTextSizes (FF)V minSize maxSize (isInterceptParentHorizontalScrollEnabled *setInterceptParentHorizontalScrollIfNeeded parent Landroid/view/ViewParent; forceHorizontalScrollable setHighlightBracketPair highlightBracketPair isHighlightBracketPair getInputType setInputType 	inputType undo redo canUndo canRedo 
isUndoEnabled setUndoEnabled setDiagnosticIndicatorStyle A(Lio/github/rosemoe/sora/widget/style/DiagnosticIndicatorStyle;)V diagnosticIndicatorStyle getDiagnosticIndicatorStyle @()Lio/github/rosemoe/sora/widget/style/DiagnosticIndicatorStyle; beginSearchMode callback	5 Callback "Landroid/view/ActionMode$Callback; getEventHandler 9()Lio/github/rosemoe/sora/widget/EditorTouchEventHandler; getDividerMargin setDividerMargin 
dividerMargin getDividerWidth setDividerWidth dividerWidth getTypefaceLineNumber ()Landroid/graphics/Typeface; setTypefaceLineNumber (Landroid/graphics/Typeface;)V typefaceLineNumber Landroid/graphics/Typeface; getTypefaceText setTypefaceText typefaceText 
setTextScaleX 
textScaleX 
getTextScaleX setTextLetterSpacing textLetterSpacing getTextLetterSpacing getLineNumberAlign  ()Landroid/graphics/Paint$Align; setLineNumberAlign !(Landroid/graphics/Paint$Align;)V align setCursorWidth getInsertSelectionWidth 	getCursor &()Lio/github/rosemoe/sora/text/Cursor; getLineCount getFirstVisibleLine %Ljava/lang/IndexOutOfBoundsException; getFirstVisibleRow getLastVisibleRow getLastVisibleLine isRowVisible (I)Z setLineSpacing add mult getLineSpacingExtra setLineSpacingExtra lineSpacingExtra setLineSpacingMultiplier lineSpacingMultiplier getLineSpacingMultiplier getLineSpacingPixels metrics getRowBaseline (I)I getRowHeight 	getRowTop getRowBottom getRowTopOfText getRowBottomOfText getRowHeightOfText 
getOffsetX 
getOffsetY 
setLayoutBusy busy 
isEditable setEditable editable setScalable scale 
isScalable setBlockLineEnabled isBlockLineEnabled getSelectingTarget ,()Lio/github/rosemoe/sora/text/CharPosition; ensureSelectingTargetVisible moveSelectionDown moveSelectionUp moveSelectionLeft c 	lineAfter columnAfter moveSelectionRight c_column moveSelectionEnd moveSelectionHome setSelection (III)V cause (IIZ)V 
makeItVisible (IIZI)V 	selectAll setSelectionRegion (IIIII)V 
columnLeft columnRight (IIII)V (IIIIZ)V makeRightVisible 	(IIIIZI)V 	lastState movePageDown 
movePageUp 	pasteText data	6 Item Landroid/content/ClipData$Item; copyText clip shouldCopyLine copyLine cursor cutText cutLine 
duplicateLine duplicateSelection selectDuplicate (Ljava/lang/String;Z)V r sub selectCurrentWord 
selectWord 
lastColumn lineObj edges startColumn 	endColumn getText '()Lio/github/rosemoe/sora/text/Content; getExtraArguments ()Landroid/os/Bundle; setText .(Ljava/lang/CharSequence;Landroid/os/Bundle;)V extraArguments /(Ljava/lang/CharSequence;ZLandroid/os/Bundle;)V reuseContentObject setTextSize Landroid/content/res/Resources; textSize	7 subscribeEvent q(Ljava/lang/Class;Lio/github/rosemoe/sora/event/EventReceiver;)Lio/github/rosemoe/sora/event/SubscriptionReceipt; 	eventType receiver ,Lio/github/rosemoe/sora/event/EventReceiver; 1Lio/github/rosemoe/sora/event/EventReceiver<TT;>; <T:Lio/github/rosemoe/sora/event/Event;>(Ljava/lang/Class<TT;>;Lio/github/rosemoe/sora/event/EventReceiver<TT;>;)Lio/github/rosemoe/sora/event/SubscriptionReceipt<TT;>; 
dispatchEvent '(Lio/github/rosemoe/sora/event/Event;)I event $Lio/github/rosemoe/sora/event/Event; .<T:Lio/github/rosemoe/sora/event/Event;>(TT;)I isFormatting isLineNumberEnabled setLineNumberEnabled lineNumberEnabled getTextPaint )()Lio/github/rosemoe/sora/graphics/Paint; 
getOtherPaint 
getGraphPaint getColorScheme ;()Lio/github/rosemoe/sora/widget/schemes/EditorColorScheme; setColorScheme <(Lio/github/rosemoe/sora/widget/schemes/EditorColorScheme;)V colors 
jumpToLine 
rerunAnalysis 	getStyles .()Lio/github/rosemoe/sora/lang/styling/Styles; getDiagnostics ?()Lio/github/rosemoe/sora/lang/diagnostic/DiagnosticsContainer; hideAutoCompleteWindow 
getBlockIndex 
showSoftInput 
hideSoftInput updateSelection candidatesStart 
candidatesEnd updateExtractedText (Landroid/view/inputmethod/ExtractedText; 
setExtracting 2(Landroid/view/inputmethod/ExtractedTextRequest;)V request extractText Y(Landroid/view/inputmethod/ExtractedTextRequest;)Landroid/view/inputmethod/ExtractedText; selBegin selEnd startOffset	8 notifyIMEExternalCursorChange restartInput updateCursor release hideEditorWindows onColorUpdated type onColorFullUpdate getInputMethodManager /()Landroid/view/inputmethod/InputMethodManager; onCloseConnection onSelectionChanged releaseEdgeEffects onDraw (Landroid/graphics/Canvas;)V createAccessibilityNodeInfo 4()Landroid/view/accessibility/AccessibilityNodeInfo; node 2Landroid/view/accessibility/AccessibilityNodeInfo; performAccessibilityAction (ILandroid/os/Bundle;)Z action 	arguments dispatchTouchEvent (Landroid/view/MotionEvent;)Z deltaX Landroid/view/MotionEvent; onCheckIsTextEditor onCreateInputConnection Q(Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection; outAttrs %Landroid/view/inputmethod/EditorInfo; onTouchEvent handlingBefore handling res2 res3 ClickableViewAccessibility 	onKeyDown (ILandroid/view/KeyEvent;)Z Landroid/view/KeyEvent; onKeyUp 
onKeyMultiple (IILandroid/view/KeyEvent;)Z repeatCount onSuperKeyDown onSuperKeyUp onSuperKeyMultiple 	onMeasure widthMeasureSpec heightMeasureSpec warn onGenericMotionEvent v_scroll h_scroll 
onSizeChanged w h oldWidth 	oldHeight onDetachedFromWindow onFocusChanged (ZILandroid/graphics/Rect;)V 	gainFocus 	direction previouslyFocusedRect Landroid/graphics/Rect;	9 
computeScroll scroller Landroid/widget/OverScroller;	: 
beforeReplace ((Lio/github/rosemoe/sora/text/Content;)V content afterInsert D(Lio/github/rosemoe/sora/text/Content;IIIILjava/lang/CharSequence;)V insertedContent afterDelete deletedContent beforeModification onFormatFail (Ljava/lang/Throwable;)V 	throwable Ljava/lang/Throwable; onRemove Q(Lio/github/rosemoe/sora/text/Content;Lio/github/rosemoe/sora/text/ContentLine;)V onFormatSucceed 3(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V originalText newText (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Lio/github/rosemoe/sora/text/CharPosition;Lio/github/rosemoe/sora/text/CharPosition;)V replaceText 	setStyles /(Lio/github/rosemoe/sora/lang/styling/Styles;)V styles Landroidx/annotation/UiThread; setDiagnostics @(Lio/github/rosemoe/sora/lang/diagnostic/DiagnosticsContainer;)V diagnostics lambda$onFormatSucceed$2 o(Lio/github/rosemoe/sora/text/CharPosition;Lio/github/rosemoe/sora/text/CharPosition;Ljava/lang/CharSequence;)V lambda$onFormatSucceed$1 lambda$onFormatFail$0 <clinit> 
SourceFile CodeEditor.java NestMembers	;,-	<	=ZYZ[$ java/util/ArrayList 3io/github/rosemoe/sora/widget/EditorKeyEventHandler	> <io/github/rosemoe/sora/widget/component/EditorAutoCompletion\] 1io/github/rosemoe/sora/widget/component/Magnifier^_	?	@ >io/github/rosemoe/sora/widget/component/EditorTextActionWindowfg "java/lang/IllegalArgumentException Unknown component type	A	B	C	D'&%DFGF	E	F	Gop (io/github/rosemoe/sora/widget/CodeEditor 
CodeEditor jsora-editor
Copyright (C) Rosemoe roses2020@qq.com
This project is distributed under the LGPL v2.1 license	H	I	J )io/github/rosemoe/sora/event/EventManager +io/github/rosemoe/sora/widget/EditorPainter 1io/github/rosemoe/sora/widget/EditorStyleDelegate	K	M	N android/os/Build$VERSION_CODES 
VERSION_CODES	O	P	Q	R	S	T*	U android/R$attr attr	V	W	X	Y	Z	[ java/lang/Throwable	\C java/lang/Exception Failed to get scroll factor	] 3io/github/rosemoe/sora/widget/HwAcceleratedRenderer	_	a	b	cU	dV /io/github/rosemoe/sora/widget/DirectAccessProps android/util/TypedValue	e	f	g	h	i	j( android/graphics/MatrixQR ?io/github/rosemoe/sora/widget/style/builtin/HandleStyleSideDrop}~ ,io/github/rosemoe/sora/widget/EditorSearchertu >io/github/rosemoe/sora/widget/style/builtin/MoveCursorAnimatorvw 1android/view/inputmethod/CursorAnchorInfo$Builderjl/	k	l	m/ 7io/github/rosemoe/sora/widget/schemes/EditorColorSchemeST 5io/github/rosemoe/sora/widget/EditorTouchEventHandler android/view/GestureDetector	pde	q	t !android/view/ScaleGestureDetector	whi Iio/github/rosemoe/sora/widget/style/SelectionHandleStyle$HandleDescriptorHF	xc`c./7/) android/content/Context input_method	y	z +android/view/inputmethod/InputMethodManagerKL 	clipboard  android/content/ClipboardManagerIJ)v	{	|C/ 3io/github/rosemoe/sora/widget/EditorInputConnection android/widget/EdgeEffectmnon !F=C4tn	}	~AC?	  android/view/ContextThemeWrapper				"			 java/lang/String>/	?/1	 selectionOffset is invalidRS	OP											 )io/github/rosemoe/sora/widget/CursorBlink				/			@/ ,'liga' 0,'calt' 0,'hlig' 0,'dlig' 0,'clig' 0				 8io/github/rosemoe/sora/widget/style/SelectionHandleStyle9/B/:/WX )io/github/rosemoe/sora/lang/EmptyLanguage							 ,io/github/rosemoe/sora/text/ContentReference:						 java/lang/StringBuilder 	Language(				 2) returned null for symbol pairs. It is a mistake.)	J -io/github/rosemoe/sora/widget/SymbolPairMatch		 android/view/KeyEvent2/		=/</;/5/  M/RSUY			#$					jTj			Xg$		UV				Z	!ij/txy						/			j	hL	R	]		/							MN	 java/lang/Integer		R	 -io/github/rosemoe/sora/lang/styling/CodeBlockfe			]									Dab			 0 1 2 3 4 5 6 7 8 9						Z		 4io/github/rosemoe/sora/widget/layout/LineBreakLayout	: 3io/github/rosemoe/sora/widget/layout/WordwrapLayout							s 		i									
 	








	

jhghkh )android/view/inputmethod/CursorAnchorInfo








/



	R





/


	c
 
! Language object error)	]
"
#
$	
%+
&
'
(
)	
*/
+
,
- (io/github/rosemoe/sora/event/ScrollEvent
.
/
0
1
2rs (io/github/rosemoe/sora/text/FormatThread
3] start > end
4 width can not be under 1 (min size can not be bigger than max size min size must be at least 2px
5
68/
7
8
9
:
;
< $%&'3/ :io/github/rosemoe/sora/widget/CodeEditor$1SearchActionMode
=
> margin can not be under zero width can not be under zero
?=>?E/G
@/
A
BcW
Ch #java/lang/IndexOutOfBoundsExceptionX
D{
E
Fe
G
H4/1/0/|
I	|
J
K	{|	
L}
M
N	
O
P
Q
R	D
S
P 1io/github/rosemoe/sora/event/SelectionChangeEvent
T
U
V
Wy	
X
Y
Z
[
\
]
^ 0setSelectionRegion() error: start > end:start = 	
_  end =   lineLeft =   columnLeft =  
 lineRight =   columnRight = 
`
a	
b
c
d
e
f
g
h
i
j android/widget/Toast
k
l
m
n
o
p
q
r
s 

t|	
u
v/
w
x
y
z
{
|
}
~ android/os/Bundle #io/github/rosemoe/sora/text/Content

{
 /io/github/rosemoe/sora/event/ContentChangeEvent (io/github/rosemoe/sora/text/CharPosition	




	fK/6/
	>
	>













pq

 &android/view/inputmethod/ExtractedText

k









A/
/
 BootstrapMethods



 

 android/text/InputType"


















 0android/view/accessibility/AccessibilityNodeInfo %ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE



	 #android/view/inputmethod/EditorInfo#


h

/

	 android/view/MotionEvent
h android/view/View$MeasureSpec MeasureSpec
h
j konMeasure():CodeEditor does not support wrap_content mode when measuring.It will just fill the whole space.! android/view/InputDevice
[



%	(
//
/-
	./






+h


/
/
9:




 Update failure<=

/	V


?=
V


FG








 android/view/View +io/github/rosemoe/sora/text/ContentListener =io/github/rosemoe/sora/text/FormatThread$FormatResultReceiver FormatResultReceiver .io/github/rosemoe/sora/text/LineRemoveListener
 android/graphics/Paint$Align %android/graphics/Paint$FontMetricsInt >io/github/rosemoe/sora/widget/component/EditorBuiltinComponent android/util/AttributeSet android/content/res/TypedArray "io/github/rosemoe/sora/text/Cursor $io/github/rosemoe/sora/lang/Language 3io/github/rosemoe/sora/lang/analysis/AnalyzeManager 'io/github/rosemoe/sora/text/ContentLine .io/github/rosemoe/sora/graphics/GraphicTextRow )io/github/rosemoe/sora/util/LongArrayList java/util/List )io/github/rosemoe/sora/lang/styling/Spans android/graphics/Canvas java/lang/CharSequence
  android/view/ActionMode$Callback android/content/ClipData$Item android/content/res/Resources -android/view/inputmethod/ExtractedTextRequest android/graphics/Rect android/widget/OverScroller <io/github/rosemoe/sora/widget/CodeEditor$1SearchActionMode$1 <io/github/rosemoe/sora/widget/style/DiagnosticIndicatorStyle 	WAVY_LINE -(Lio/github/rosemoe/sora/widget/CodeEditor;)V 
mMagnifier 3Lio/github/rosemoe/sora/widget/component/Magnifier; 
setEnabled java/lang/System currentTimeMillis ()J +io/github/rosemoe/sora/widget/layout/Layout getCharLayoutOffset (II)[F android/util/Log v '(Ljava/lang/String;Ljava/lang/String;)I android/os/Build$VERSION VERSION SDK_INT android/os/Build 
getContext ()Landroid/content/Context; android/view/ViewConfiguration get ;(Landroid/content/Context;)Landroid/view/ViewConfiguration; getScaledVerticalScrollFactor 	android/R obtainStyledAttributes $([I)Landroid/content/res/TypedArray; getFloat (IF)F recycle close 
addSuppressed <(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
 io/github/rosemoe/sora/R$string string editor_line_number_tip_prefix 	getString (I)Ljava/lang/String; editor_formatting 	getSystem !()Landroid/content/res/Resources; getDisplayMetrics ()Landroid/util/DisplayMetrics; applyDimension "(IFLandroid/util/DisplayMetrics;)F getPaint %io/github/rosemoe/sora/graphics/Paint getTextSize
 OnGestureListener L(Landroid/content/Context;Landroid/view/GestureDetector$OnGestureListener;)V setOnDoubleTapListener
 OnDoubleTapListener 5(Landroid/view/GestureDetector$OnDoubleTapListener;)V
 OnScaleGestureListener V(Landroid/content/Context;Landroid/view/ScaleGestureDetector$OnScaleGestureListener;)V RIGHT getSystemService &(Ljava/lang/String;)Ljava/lang/Object; setFocusable setFocusableInTouchMode android/graphics/Typeface DEFAULT setDefaultFocusHighlightEnabled &io/github/rosemoe/sora/util/ThemeUtils getColorPrimary %(Landroid/view/ContextThemeWrapper;)I setQuickScaleEnabled java/util/Objects requireNonNull &(Ljava/lang/Object;)Ljava/lang/Object; 
invalidate length 
isSelected getRightLine getRightColumn insert (IILjava/lang/CharSequence;)V 
getIndexer '()Lio/github/rosemoe/sora/text/Indexer; getRight #io/github/rosemoe/sora/text/Indexer getCharPosition -(I)Lio/github/rosemoe/sora/text/CharPosition; 
setAdapter .(Lio/github/rosemoe/sora/widget/CodeEditor;I)V 	setPeriod valid isAttachedToWindow post (Ljava/lang/Runnable;)Z setFontFeatureSettingsWrapped 
getPaintOther 
getPaintGraph updateTimestamp getAnalyzeManager 7()Lio/github/rosemoe/sora/lang/analysis/AnalyzeManager; setReceiver 7(Lio/github/rosemoe/sora/lang/analysis/StyleReceiver;)V destroy reset hide D(Lio/github/rosemoe/sora/text/ContentReference;Landroid/os/Bundle;)V 	setParent 2(Lio/github/rosemoe/sora/widget/SymbolPairMatch;)V getSymbolPairs 1()Lio/github/rosemoe/sora/widget/SymbolPairMatch; append -(Ljava/lang/String;)Ljava/lang/StringBuilder; java/lang/Object toString overrideSymbolPairs invalidateHwRenderer 2io/github/rosemoe/sora/widget/style/CursorAnimator cancel #io/github/rosemoe/sora/util/IntPair pack (II)J getFirst (J)I 	getSecond java/lang/Math getLine ,(I)Lio/github/rosemoe/sora/text/ContentLine; 
widthCache obtain 2()Lio/github/rosemoe/sora/graphics/GraphicTextRow; set f(Lio/github/rosemoe/sora/text/ContentLine;IIILjava/util/List;Lio/github/rosemoe/sora/graphics/Paint;)V buildMeasureCache 3(Lio/github/rosemoe/sora/graphics/GraphicTextRow;)V clear mPattern mOptions 
SearchOptions <Lio/github/rosemoe/sora/widget/EditorSearcher$SearchOptions; :io/github/rosemoe/sora/widget/EditorSearcher$SearchOptions useRegex 
isResultValid mLastResults getCharIndex getColumnCount (I)J (J)V 
ignoreCase %io/github/rosemoe/sora/text/TextUtils indexOf 5(Ljava/lang/CharSequence;Ljava/lang/CharSequence;ZI)I getColor setColor *io/github/rosemoe/sora/lang/styling/Styles isEmpty getLeftLine getSuppressSwitch (I)Ljava/lang/Object; (io/github/rosemoe/sora/lang/styling/Span .(IJ)Lio/github/rosemoe/sora/lang/styling/Span; (Ljava/lang/Object;)Z read Reader 4()Lio/github/rosemoe/sora/lang/styling/Spans$Reader; 0io/github/rosemoe/sora/lang/styling/Spans$Reader getSpansOnLine drawTextRun $([CIIIIFFZLandroid/graphics/Paint;)V getTimestamp findOffsetByAdvance (IF)[F disableCache 0io/github/rosemoe/sora/util/TemporaryFloatBuffer (I)[F 
getTextWidths (Ljava/lang/String;[F)I ([F)V (FF)F reuse getRowTable ()Ljava/util/List; b(Lio/github/rosemoe/sora/widget/CodeEditor;Lio/github/rosemoe/sora/text/Content;Ljava/util/List;)V 
destroyLayout setCachedLineNumberWidth R(Lio/github/rosemoe/sora/widget/CodeEditor;Lio/github/rosemoe/sora/text/Content;)V scrollBy commitTextInternal 	getHeight startScroll getWidth 	isShowing setMaxHeight setSize setLocation 	getMatrix ()Landroid/graphics/Matrix; (Landroid/graphics/Matrix;)V getLocationOnScreen ([I)V 
postTranslate (FF)Z 	setMatrix N(Landroid/graphics/Matrix;)Landroid/view/inputmethod/CursorAnchorInfo$Builder; getLeft setSelectionRange 7(II)Landroid/view/inputmethod/CursorAnchorInfo$Builder; setInsertionMarkerLocation :(FFFFI)Landroid/view/inputmethod/CursorAnchorInfo$Builder; build -()Landroid/view/inputmethod/CursorAnchorInfo; updateCursorAnchorInfo A(Landroid/view/View;Landroid/view/inputmethod/CursorAnchorInfo;)V 
getLeftColumn delete deleteEmptyLineFast deleteMultiSpaces charAt (II)C ,io/github/rosemoe/sora/text/TextLayoutHelper 0()Lio/github/rosemoe/sora/text/TextLayoutHelper; 
getCurPosLeft (ILjava/lang/CharSequence;)I replace (IIIILjava/lang/CharSequence;)V 
autoIndent (I)C 
getLineString getIndentAdvance 3(Lio/github/rosemoe/sora/text/ContentReference;II)I useTab createIndent (IIZ)Ljava/lang/String; .(ILjava/lang/String;)Ljava/lang/StringBuilder; "io/github/rosemoe/sora/util/Floats withinDelta (FFF)Z 
forceFinished awareScrollbarWhenAdjust abs (F)F notifyScrolled 2(Lio/github/rosemoe/sora/widget/CodeEditor;IIIII)V hasPrimaryClip getLayoutHeight getCharPositionForLayoutOffset getLayoutWidth (Ljava/lang/CharSequence;Lio/github/rosemoe/sora/lang/Language;Lio/github/rosemoe/sora/text/FormatThread$FormatResultReceiver;)V (Ljava/lang/CharSequence;Lio/github/rosemoe/sora/lang/Language;Lio/github/rosemoe/sora/text/FormatThread$FormatResultReceiver;Lio/github/rosemoe/sora/text/CharPosition;Lio/github/rosemoe/sora/text/CharPosition;)V scaleMinSize scaleMaxSize 	getParent ()Landroid/view/ViewParent; android/view/ViewParent "requestDisallowInterceptTouchEvent clearFoundBracketPair postUpdateBracketPair startActionMode =(Landroid/view/ActionMode$Callback;)Landroid/view/ActionMode; getTypeface setLetterSpacing getLetterSpacing LEFT getLineNumberForRow mTextMetrics descent ascent getCurrX getCurrY equals moveDown getDownPosition 	getColumn moveUp 
getUpPosition 	getLeftOf (J)J requireCompletion 	toIntPair 
getRightOf invalidateInCursor markStartPos java/lang/Character isHighSurrogate hasAnyHeldHandle mComposingText -Lio/github/rosemoe/sora/widget/ComposingText; +io/github/rosemoe/sora/widget/ComposingText isComposing shouldRejectComposing 
markEndPos (I)Ljava/lang/StringBuilder; setLeft setRight (FFZ)V getPrimaryClip ()Landroid/content/ClipData; android/content/ClipData 	getItemAt "(I)Landroid/content/ClipData$Item; ()Ljava/lang/CharSequence; (Ljava/lang/CharSequence;I)Z printStackTrace makeText J(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; show 
subContent +(IIII)Lio/github/rosemoe/sora/text/Content; newPlainText L(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Landroid/content/ClipData; setPrimaryClip (Landroid/content/ClipData;)V fromThis -(Ljava/lang/Object;)Ljava/lang/StringBuilder; useICULibToSelectWords $io/github/rosemoe/sora/text/ICUUtils getWordEdges (Ljava/lang/CharSequence;IZ)J removeContentListener 0(Lio/github/rosemoe/sora/text/ContentListener;)V setLineListener 3(Lio/github/rosemoe/sora/text/LineRemoveListener;)V resetBatchEdit addContentListener notifyFullTextUpdate .(II)Lio/github/rosemoe/sora/text/CharPosition; (Lio/github/rosemoe/sora/widget/CodeEditor;ILio/github/rosemoe/sora/text/CharPosition;Lio/github/rosemoe/sora/text/CharPosition;Ljava/lang/CharSequence;)V (Landroid/view/View;)V 
requestLayout getResources attachEditor detachEditor applyColorScheme rerun 
isInTouchMode requestFocusFromTouch hasFocus requestFocus (Landroid/view/View;I)Z getWindowToken ()Landroid/os/IBinder; hideSoftInputFromWindow (Landroid/os/IBinder;I)Z 
startIndex endIndex (Landroid/view/View;IIII)V token ?(Landroid/view/View;ILandroid/view/inputmethod/ExtractedText;)V hintMaxChars maxIPCTextLength 
getTextRegion (III)Ljava/lang/CharSequence; selectionStart selectionEnd invalid 
isInBatchEdit cancelCompletion dismiss 	onRelease draw 
visibility 
isFinished



 
 run I(Lio/github/rosemoe/sora/widget/component/Magnifier;)Ljava/lang/Runnable; setTextSelection 
setScrollable setMultiLine toStringBuilder ()Ljava/lang/StringBuilder; setLongClickable Dandroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction AccessibilityAction ACTION_COPY FLandroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction; 	addAction I(Landroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;)V 
ACTION_CUT ACTION_PASTE ACTION_SET_TEXT ACTION_SCROLL_FORWARD ACTION_SCROLL_BACKWARD getCharSequence ,(Ljava/lang/String;)Ljava/lang/CharSequence; getX 	getAction initialSelStart 
initialSelEnd getCursorCapsMode initialCapsMode allowFullscreen 
imeOptions handlingMotions getMode getSize makeMeasureSpec isFromSource getAxisValue (I)F onScroll 9(Landroid/view/MotionEvent;Landroid/view/MotionEvent;FF)Z finish adjustToSelectionOnResize removeCallbacks hideInsertHandle computeScrollOffset 	getStartX 	getFinalX 	getStartY 	getFinalY getCurrVelocity onAbsorb glowLeftOrRight glowTopOrBottom postInvalidateOnAnimation onTextChange adjustOnInsert W(Lio/github/rosemoe/sora/text/CharPosition;Lio/github/rosemoe/sora/text/CharPosition;)V ;io/github/rosemoe/sora/lang/diagnostic/DiagnosticsContainer 
shiftOnInsert isUndoOrRedo autoCompletionOnComposing adjustOnDelete 
shiftOnDelete
 .
 U(Lio/github/rosemoe/sora/widget/CodeEditor;Ljava/lang/Throwable;)Ljava/lang/Runnable;
 .
 X(Lio/github/rosemoe/sora/widget/CodeEditor;Ljava/lang/CharSequence;)Ljava/lang/Runnable;
 .
 (Lio/github/rosemoe/sora/widget/CodeEditor;Lio/github/rosemoe/sora/text/CharPosition;Lio/github/rosemoe/sora/text/CharPosition;Ljava/lang/CharSequence;)Ljava/lang/Runnable; "io/github/rosemoe/sora/util/Logger instance 8(Ljava/lang/String;)Lio/github/rosemoe/sora/util/Logger; android/graphics/Paint android/view/ActionMode io/github/rosemoe/sora/R .android/view/GestureDetector$OnGestureListener 0android/view/GestureDetector$OnDoubleTapListener 8android/view/ScaleGestureDetector$OnScaleGestureListener



XCWUV "java/lang/invoke/LambdaMetafactory metafactory Lookup (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; 
updateDisplay %java/lang/invoke/MethodHandles$Lookup java/lang/invoke/MethodHandles ! .  l        W                               	 
         
                                              /                 !   "   #$   %   &   '   (   )   *   +   ,   -   ./   0/   1/   2/   3/   4/   5/   6/   7/   8/   9/   :/   ;/   </   =/   >/   ?/   @/   A/   B/   C/   DF   GF   HF   IJ   KL   MN   OP   QR   ST   U   V   WX   YZ   [$   \]   ^_   `c   de   fg   hi   jl   mn   on   pq   rs   tu   vw   x{   |{   }~                                                       /         /   /        0     ?     *+       
   F G                  J     *+,       
   J K                       U     	*+,       
   N O   *    	     	    	    	           E*+, * * * *  	*	 
* Y  
* Y*  *,       * 
  R 	      " # $5 0< <S DT   4    E     E    E    E    E           .+ * + *  + *  Y          ^ _ ` a b c $e       .     .        .     
                        ^*+ N-  6-  + *,   2+ * ,   + *,   
 Y ,        2   r s t u v &w ,x :y @z K| U~ ]   4    ^     ^    ^   X   P/         ^    ^   X      &	      
           2     *                         c                    *                      @     6     *   
      
                  W     "* ! * "* #
jb* $b 
* %&j                "      F     /     * '                       /     * (                       W     * ) * 0* +b* ,f                                W     * ) * 0* +b* ,f                                R     * ) * 0* -f                                   /0 1W* 2Y 3 4* 5Y* 6 7* 8Y* 9 : ; * = >:* ? @ b* =
YBO C:*D E @ F & G :  G : I :/K LW*D @ ; * MY* N O** = P Q R** = S Q T* UY V W*Y Z [ \Yn %** % $** % ]** %
j #* ^Y _ `* aY* = b c* dY* e f* gY* h i* j* kY l m* n*o p** 7 q r s* tY* u v* wY* x * yY* =*  z {* {*  |* }Y* =*  ~ * Y  * Y  '* Y  (*  * * * ** =   ** =   * * * * * * * Y*  * Y*  * Y* =  * Y* =  * Y*  * * * * * * * * * * * * * * *  *  ; * * =  ** =   *    Y j w H ~   H H   J   J R      + 3 < E H Y e j w            )5 AHSX^lx	


!&+7CRam r!w"|#$%&'()*+,-./2356:;   H  < 	  Y 9                    @ 
 H .  .  H   . H  H B J     F     
* *          E F 	G       
     
      /     *          M              /     * W         V              D     *+   T      
   ] ^                        /     * T         d              Z     * * ! *          m n o q            /          /     *          w              Z     * *  *                         /          /     *                            q +  
 Y *  N-  * * * - - + * +  ** Ŷ - + dd  :*  Ͷ α      2       % ) - = A I b p   4  b     q     q    q   S N    
 	  B     A     	* + ϱ      
           	     	                 F*  * Y* ҵ Ч 1* д =*   * д ՙ * ֙ ** ж W             ' < E       &    F     F	     - 
    /     * а                       m     * *  ٶ ڱ                       /     N .   .  .  
    /     * ج                       u     -* 7 q+ * 7 + * 7 + * 7 *             ! ( ,       -     -      L     *+   c*                        ~            /     * c                             /     *                        s     !* *  *  **  *                       !     !/          /     *          !              >     *       
   * +            /      F     
* *          2 3 	4       
     
/      /     *          :              /     *          D                 !        +  Y L* M,  ,    ,    ,  * : *+ * * *  
*  +  N-* :  *  - Y* ŷ *   *  *  **    *  2/ Y  *      W* Y  * * W * 7*       n   N O S T U !V ,W 2Z 9[ >\ C] H_ O` Vc ]d ge nf j k m n o p r t u v   *         "X   X  ] #$      %%# ,& B       '(         j B > 9 - '4 !2 1 .   	3   $  &  B            
 C L P \ h   4    j     j)    j*/    j+/    j,/     
=@ @ 	@  -    /     *                    ./    F     
*# *            	       
     
0  1    /     *                   2    w     !* ** 
* 7*            
            !     !3/      4    \      * i *           
             /     
 5    /     *                   67    >     *+ i      
                8w        9:    /     * i                   ;    K     **Z	*           
             /  <    /     *
                   =    F     
*
*            	        
     
>/  ?    /     * R                   @    _     + L*+ R*             
             A      B    /     *                   C    >     *      
                D/  E    /     *	         #          F    >     *	      
   ( )            G/  H    /     *          1          I    5     * 7 q r         =             J   K/    N     *#**          F G 	H 
I            L     J   M/    A     	* 7#
      
   Q R       	     	L  NO    /     * O         U          PQ    /     * 7         Y          RS    2     * 7         ]           T    >     ***      
   d e          UV     
   *>*6*6*6d>`*66 l 
 F * 7 * : # 	:		  6      J   l m n o p %q 2r <t Ju ev ww }x y z ~  r    f 
  	WX 	 e (Y  5 pZ         [    \/   ]      ^   _      5  .  H`)   ab   f  	   * :   * 7 * :! c:  *`Z* *!* 7 q"#$!k      :      . 8 = S k         R  = [cd  . mY         e    f    g$    \/   P      ?G` &`h ,  ij    W     ~ 	                       k    l     @ m    N     ***%& &                        @ n    a     *' *  
* 7                        o/      p    /     *'                   qr         W+(M+>66 *,4) 	 %*%~  *,d4) 	      * 
    
 
  ! ' 7 I O   >    W     WY   Rst  
 M  
 Ju   Gv        .`w   xy    R     	 	                        z{     @ |}     
  ,** f+ 
* f, * f,- * f. * f/N* 06* 1`66-2 S-376	6
	6
6 ,dd4	  	* N6* f+ 6 :-* f+* f,566,`4`6Ʊ      z       & 0 1 9 D Q ] e l s |             	 

     e B~$  l ;] 	 s 4 
 | +   "  T YZ  9 uW  D j  Q ]             MY   J   >    U 
  "  .   H  .   	  .      `<     2     * 7                       M     * 8* 8            !                  /     * )         (                    /     *          1              /     *          :                   (*   
* 9L+ +:  *+;         D E  F "H       (                F 
         *<==*+>>+? d6A666A6*  * B66		 \+	C D:

E +
F "
E
Fd6 6	6 A   		      Z   S T U V W !X $Y )Z 0[ 9] C^ P_ b` oa vb zc ~e f g h ] l   z  o   P F 
 < `Z 	                      ! ~  $ {  ) v            '  9 	 .    AD          /     *          s              y     m>,? d66 O`l6  ,C DE6 d6 `>>       :        % / ? E N T \ _ b   R   D  ? #    m     m^    m   k   a   ]        m    P    .       .   	   .  
   .                 B::+ *!:++*G* 7 q"`H8$      "        / : ?   R    B     BY    B    B    B   =cd   :  : W       :      h                L*   
* IM* 
?  * 
JLM W, ,N O * 
N* 
  0 @ F J A E F J    "      0 4 A F G   *  G     L     L   9     F D J        
    `6,(:6
6 L4	 <+

d	* 7 qP*,

d`
Qb8`6

 !+

d	* 7 qP      2        # A V \ b i       PZ             Y                    /         	    
     |t   y 
   '    .`w   I $     [ s     i     
*#R            >    
     
    
]    
    
Y    
           Z  	   w YQYQ #* 7S ** 7ST:*G *! * 7 q"#U:$      & 	     * : ? f o t   \ 	   w     w    w]    w    w    wY    w  ? 8cd  o WX    C '    .`h h`    .`h h`            
   ^ YQYQ:* 
?  * 
JLM W*G* 
"V#U:	$	      * 
      # 4 H M V [    f 
   ^     ^    ^]    ^    ^    ^Y    ^    ^   Gcd  V WX 	   	  !h          +     e* ! <*= 
l=W >X:* 7 WYWZ86 0[8j      B   	 
 	 
     & , < A D M Y _   H  G Z    e    Z   U  & ?  , 9sX  D !     	  '  .       1     * ) c* )\ * * )\* Ŷ]* )^ 0* )^Y** * )^_`L* )a *+ )* )a * #* 7* "b*^Y** ` ) *\Y** ŷc )*  * d      F   ! " # &$ '& 8' O( X) ]* ^, g. n/ z0 2 4 5 7     O           '6&      U     *  *e * fg         = > @                  4     *h      
   C D             V    J*i* %jjbE* )*< *< ǹ * N-0* -f*k
nb8*lf8* %mj * %mj8 [* %nj M I8* %nj $*kb8*kf8*kb8*o* ,* -p*qr* %j 
*  *  *qhl6*qsn
nE t* %j*q
nu6* v6* w 6* x* y* $* ,`* -`z      b   J K &L 9M CN QO ^P pQ sR S T U W Z \ ] `bcdf(g3hIi   f 
 s C      J    J/  <  &$X  9  C  D  ;    & 	 ^  .   .            * mL+{* `*|}
M*,~* `,.,.W+* `W+*<*< ʶW*< >*< 66* +8* ) * 0b8* ,f8 	68+** -d** -d** -d  W* *+      R   r s 	t u v w -x 6y Iz Q{ Z| ]} c~ v         H        l     Q }  Z t  ] q/  c k    M    . k   ,  . k  k    . k  k      
  *<L+  * +=++ + Ƕ+=+=>* W "* W* d  * +=(:6d6 $46  	 	6 	 6* 166 $46		  		 	6 	* W 2 - *  * d* d1* W A =* d  -* * W 
*  
* Wd* +=6+6 666 ,+= 8* +=d* +=d1+= * +=+=       *     & + 0 Y i l v }                
,UVjpw{     } z{  q &Z   z{ 	  (Z   /     i t  l / {   +  0 j \ p V       N      & 2 w  !    7  .w ?   .w ? 	  .   ,/   .       ?     *+      
                     $  	  *<N-  * -=-- - + * W +   + 6
 * -=:66- 2*) $	 *G`6 *  Y* ŷ -=- `6 :/W Y+:*G*  WL* -=-+ ȱ     J    ^      ' > G N [ a j x               f 
    [   ^   a      G {          /    N    9 	 ' 9  .   .c J %  .       /     *                    /    ]     #  Y*#         	 
  
            L          F     
*%*            	        
     
k      /     *%         ,              A     ** * Ƕ      
   3 4             M 	 
  * ) * N-0* +b8-08* -8* ,8*kf* - *kjf8*l* -` *lf*kjb8  ** dQ8* ,*  
* + b *  * +v bjf8b* ,*q` jb*qf8*u[8*u[8* , * - *   * 
e  6	*   
	 W*o*o* ,* -* ,f* -f* W F* -f* %nj /*  %*o* ,* -* ,f* -fp*Y** ,* -W*           = ? A C "D )F :H HJ XL lN O P R S V WYZ"[#^9_@aEbMcndehklkno   f 
           X      "  )  U 9 / 	   k  H  .  #P  	 .    	 . U   	 . 	# @@ a!      2     *          w              /     * %                       2     *                        Z     #* -b* )                             @     O     * )#* +f$                             	    Q     *#* ,b$* -b                          
      ?     * ) *lld                       G     * ) * +b*q
nf[                   
    /     * f                            9* * 1> =* Χ **d* *d1 α      "         ! 8   *   
    9     9    9    
    !    i     &* *Y* * **           	  $       &      	 !         >+,  Y * *Y* * *+,*              5 <        >     >]    >          /     *G                       }     (  Y *G* 7* 7 *          
     # '       (     (               3#$  Y· #
  Y÷ * #* $ű              "" *# 2$        3     3    3          /     *Ƭ         *              u     * *M, 
,          5 6 	7 8 9 <                /          q     *  
* :ɧ 
* :*          B C 	D F H I            /           /     *          O          !    /     *ˬ         V          "    F     
**̱         a b 	c       
     
#  $    I     * Ŷ* *           i j k l          %    I     * Ŷ* *           r s t u          &    2     * ŶϬ         }          '    2     * ŶЬ                   (    /     *Ѭ                   )    ^     **  * ұ                        /      *+    F     
*+ 	*            	       
     
,Z        -.    /     * 	                   /    L     Y*L*+W          		  	          	 03  45    /     *          	          6    /     * #         	          7/    h     #  Yַ *# #*          	 	 	 	 	            8      9    /     * $         	$          :/    h     #  Y׷ *# $*          	- 	. 	0 	1 	2            ;      <=    5     * 7 ܶذ         	9          >?    A     	* 7+ٱ      
   	B 	C       	     	@A  B=    5     * 7 qذ         	J          C?    A     	* 7+ڱ      
   	S 	T       	     	DA  E/    A     	* 7#۱      
   	] 	^       	     	F  G    5     * 7 qܮ         	d          H/    A     	* 7#ݱ      
   	n 	o       	     	I  J    5     * 7 qޮ         	u          KL    /     *          	}          MN    _     + L*+ *          	 	 	 
	 	            Oc      P/    h     #  Y׷ *# ]*          	 	 	 	 	                  Q    /     * ]         	          RS    /     *<         	          T    2     * Ŷ         	          U    a     * )* L    
        	 	 	      V          N W    8     * -*kl         	          X    I     * ) * -*l`*kl         	          Y    f     * )* L*d    
        	 	 	      V          N Z[    U     * *           	                 @ \    Q     *# *$          	 	 
	             ]    ^  _    /     *          
           `/    F     
*# *          
 
	 	

       
     
a  b/    F     
*# *          
 
 	
       
     
c  d    /     *          
          e    \     $* 7L++d* fj* blh      
   
" 
#       $    f{  gh    O     *k`h* 7d*ld         
-              i    S     * 7L++d*`      
   
6 
8           f{  jh    ;     *kh         
B              kh    =     	*k`h         
L       	     	  lh    A     
**l`         
S       
     
  mh    A     
**ld         
Z       
     
  n    J     * 7L++d      
   
a 
b           
f{  o    5     *          
k          p    5     *          
t          q    >     *      
   
| 
}            r/        s    I     * *           
             @ t    W     * *         
 
 	
 
            u/     
 v    >     *      
   
 
            w/  x    /     *         
          y    F     
* *          
 
 	
       
     
/  z    /     *          
          {|    \     !*<* *<*<         
 
 
       !       }    k     +*<* 
* **<=*<         
 
 
 *
       +       ~         * <* w * * )*<=*< @* Χ A*  * )** @** * *      2   
 
 
 
 
 1
 =
 @
 G
 _
 z
 ~
      1 $  _ $          &=          * <* w * * )*<=*< @* Χ A*  * )** @** * *      2   
 
 
 
 
 1
 =
 @
 G
 _
 z
 ~
      1 $  _ $          &=    w     * _*L+==+>*<766*  #* w  
*   
*  8*  *<*@** * *      N   
 
 
 
 
 $
 +
 2
 :
 @
 J
 O
 Y
 ` c j y     R   TN   O   J  $ <$  + 5  2 .  y $            Y  .     .  4    [  	   * Z*L+==+>* 16*<766*  * w 
*  8*  *<*@** * *      F          . 5 < D T [ ^ e t      \ 	  ON   J   E    ;  . -$  5 &  <   t $           [4          H* *<=<** 1 Χ +* <** * * 1*      "   & ' ( ) * '+ C, G.       
  '      H      '     z     6* **<= Χ "** * * *         4 5 7 18 5:       6           J     *      
   C D                       U     	*      
   M N   *    	     	    	    	      U     	*      
   X Y   *    	     	    	    	/     V     * 7* i  &* d * 1 *<*  **  *** 7* 	 ,* 
 *  * i
 * i  * * *      R   c d e %f (g 4h 7k @l Gm Oo Sp Wq ^r s t v w y { |   4                 /        	 7 A     H     **d* *d1      
                  m     
*      
       >    
     
    
    
    
    
      b     *      
       4                           m     
*      
       >    
     
    
    
    
    
/         F* 7* 06* 06 
* α `*/ Y         W* i *< 6	 .d6
* 
6 * 1  0d6
* 
6 * 1 *<*<* 7***   
* * *       %      % + , 3 @                 !%,1;?E      & 
  z{   ' 
  z{   F    F   F   F   F   F/   F  4]  (   / 	     , c @17     H     * *l*                           I     * *lt*                                W*  
*  * L+M, *  
* ,W* ħ L+ * =+!#$     B J  ? B J    2      ! & 1 ; ? B C G V   *  !   &   C     W        %   .  J     4     *%      
    
                   `*<  9* *<=*<*< *< Ƕ&'M* ,,()  ** M, * =,!#$    H K J    >    
    ' * - 1 = D H# K  L! P" _$   *  1   L     `     `/      @B J          -*L+  *++ =** 1*+      "   * + , - 0 1 (2 ,3        -    (N              f     *<  *+* * ħ *,         9 
: ; < > @                       S*L+  *-+M, >* , ̶16`* ** 1 
*`*-      2   F G H I L M N (P 2Q DS NV RW   4    S    NN   =   8  ( +       2E	          8*L+  *.+M*, , * , ̶1*/0      "   ^ _ ` a d e /f 7g        8    3N   "           4     *1      
   n o              A     	*0      
   w x       	     	/     7     *N-  -:-2:*     Ͷ&:*  Ͷ * Y + 3 4 !-:*    Ͷ      2      
   9 G ^ b h    R  h          A    /   |N   n   e  9 HP      
 rEE?     Q     *L*+ + Ͷ5                      
     s     >6* :* W67766		 K 	 @	 		 0 * d16
d>
6 *d `66	*	8      N       % , 3 8 > H N R ^ b f s x {    f 
 ^  
               e   f   yY   j$  % c  , \ 	     > 	 .`       /     * Ű                             /     *                              @     *+9      
                            J     *+,9      
                         
              (+ L*  * *:* ;* Ŷ<*- 
=Y> -  #+? *+? * Ŷ<* 7 ߧ *?Y+@ * : * ** Ŷ <* A* *B* *Ѷ* *;* 7C*   *    Y* ŷ *   *DY*EYF* Ŷ *d* *d1G * ŷHW*  * *I**J* 7*       z         & 9 D L S ] i p u
  
 
 
 
 
 
 
 






#
'
   *   (    (   (/   (    ' N .    .=  .=& c F            /         #* =M, 
 ZN ,KN*#- [ \L         
 
 	
 
! 
$ "
%   4  
 W    #     #      W             d     
* 4+,M         
-        
     
    
        
    
         O     	* 4+N         
6       	     	        	         B     
*           
@       
      @     /     *O         
I              j     *O *  **O*          
R 
S 
U 
V 
W            /          2     * 7 q         
a                    2     * 7 ܰ         
e              2     * 7 ް         
i              /     * v         
t                         3+*P* v * v*Q*+ v*  
* R* 7*       & 	  
 
 
 
 
  
 '
 .
 2
       3     3T                ?     * α      
   
 
                  Q     *  *   S          
 
 
                  /     *          
                    /     *          
                    J     *  
*           
 
 
                  /     *          
                   5*e ,*T %*U *VW*W *XW* *YW*       "   
 
 
 
 !
 &
 0
 4
       5      	     <     * *Z[W      
   
 

                   D<=* 
 * 
\<* 
]= N* **<*< ^   ' *    "   
 
 
 
 '
 *
 +
 C
        D    B   @      *  .       j     !*_ **_`L* **_a+b         
 
 
  
          !            >     *+_      
   
 
            q           ^     *McYdN,6, 66+e +* Wfe+e* Wf +e` +eld6-* +e`+ghi-j-dk-dl 
-Ymm-      F     
    # .	 <
 H S k q z      H         q    N  
       }   z      .  .c  $ @           f     *n**iW* 
 *̱            
  ! #                  b     *  
* o*  * *I         , - . / 0                  h     %*iW*n* Ŷp * 
 *         6 7 	8  9 $;       %      $     u     .*q*  %*     *   * Y           D E F G "H -J       .      -     O     * r* s*  t         P Q R S              ~     ' 	 *  
* R* 7*          _ ` a b d "e &f       '     '     
      ]     *  
* R* 7*          l m n o p                  /     *          v              <     
*u*          } ~ 	       
       G     * Y*vW      
                      A     * w* w                              W*+x* 7+y*z* д{ * | 1*  } $** д{z**  Y W~   W           
 5 @ V       W     W     (-           j*L+*e+*<*< ʶ++++* ++++++++      >     
  $ ) . 9 > E L S Z a h       j    e           n     f         `       Z  @    ;      G      A       M*+*-**, ***,      :    < @ B F H L N Y [ _ a e g        n     n    n    	 < 	         {+=+    k                3* *ƙ H*  ;* d>*ƙ - 
*o  *o* 
* *+      .     $ ) 0 = D K ^ k u   *  D 1
    {     {   u      $  	     I     *T *e                        @ 
   0     *e 
*T +*˙ 
*˧ +* 
* +* 
* ʧ +* * W 
+* * Ŷ<*u*       2      % ; Q ] g n u |                 D 	N   . T    . T    .  	   #     m*T * =* +>* 66* +6  
* {+6+ * w* w          6 
     	   # & 0 9 C
 K R Y   H    m     m   \/   SW/  # J/  & G/  0 =/     	 9  .  
@     [ s     H     
* ,                 
     
)    
      H     
* ,                 
     
)    
      S     * -            *         )               E     *,         !             )           E     *,         %             )            P     *-         )   *         )          !         R> 
 <> 
 => / W*      .   . 0 1 2  5 16 <7 >9 B: K< Q=   *    R     R"    R#   P$/    
   %	         ?+ 3+ ++	vE+
vF* ++%* @j$* @jW*+         A B C !D 7E 9G   *    &  ! '    ?     ?     9 (   v     ** 7***** ) *   
* <* * ,* ** ,d * -* ** -d d** * Wř *      :   L 	M N O 'P .Q 5R HS OU W X Y Z \   4         )    *    +    ,    C  H[ w    .  w   .  w    .  w -    L     **  ** жW         ` a b c          ./        j*- /* * д Ӟ   * д ՙ =** ж W 1*  * {*  * s* ** жW*       6 
  g h i !j +k 7n ?o Gp Nq Ur \s eu iv   *    j     j0/    j1    j23     ]     .4  -           5   K    m* L+ʙ`+| m++̠ ++Ο W*+̆*+Ά*++dц*&j  *++dц*&j  + 4* +* ә !*ę * +ԋ* ֧ ?*=+ 2* (* ә *ę * +ԋ* + 4* +* ә !*Ù * +ԋ* ק ?*=+ 2* (* ә *Ù * +ԋ* *ر      ^      , 5 > _        !,1T`hl   *   7 1 7   m   e67    8  ,8n .    .8  ._ .    .8  .7;7; 9:    m      *  ; * O+* )+            
                ;P      <=     
  * 7 * :* Ŷ G :* Ŷ G :6		 	* * 		*  * *  * ݧ :	/	W ; * O+* )+ ** *  N* Ŷ D* 
 
* W   
*  
*  ** wh 
*  *iW* 7**    * **<  ,* 
 *  * i
 * i *DY*HW  V   J     $      0 C P V ] h o           
$+/CJOpy   p  3 #Z 	   	      ;P   e      f      >  y]  0g    ! 
 3EE "B J E
 b ?=   	  
  * 7 * :* Ŷ G :2:   `6		` 	* * 		*  * *  *  :	/	W ; * O+* )+ **  J* Ŷ @* 
 :* w 0 d 
*   * *  
*  * 7*  *iW** *<  3*  ,* 
 *  * i
 * i *    **DY*HW  l   J     (      % , 3 E Y f l s ~            
%,3:?CJr{   p  H $Z 	   	      ;P   e      f      @  ]  %     
 HEE #B J N	
9 A:    B     
* i       
   ! 	"       
     
;P  BC    N     **+   W*         & ' (            DE  FG    N     * )+,       
   , -             ;P    Y  HI    q     *+* Ŧ , **,   W         1 2 3 <             J    K      HL         !*+* Ŧ , **-,   W         @ A B  K   4    !     !J    !M    !]    !       NO    |     '*+ *  **  * 7* 7 *          O P Q S T "U &V       '     'P         Q         RS    F     
*+ *          Z [ 	\       
     
T     Q        UV         B*<=6*<6* + + , , -*o*  *         C 	D E *F 2G 9H AI   >    B     B]    B    BM  	 9   0 W         C*<==*<>* *d* *d1+*o*  *         4 5 6 -7 58 <9 B:   *    C     CK   ;   3 XC    D     * =+#$         &            DE  Y    !      	/           Z   [\    ]          E 	a	$b@ kk y	$z 	1	42	^ 	 < 	 A  		"	]      	L 		^	` 	n y	o		r y	s		u }	v	~ d	 			
 
 
    *   	 	 	