
    +gm                       S SK Jr  SSKJrJr  S SKJr  S SKrS SKr\ " S S5      5       r	 " S S	\R                  5      r " S
 S\R                  5      r " S S\5      r\ " S S5      5       r\ " S S5      5       r S"           S#S jjr              S$                               S%S jjr    S&S jr  S'           S(S jjr             S)                                 S*S jjr  S'         S+S jjrS,S jr     S-                   S.S jjr    S/S jr    S0S jr  S'           S1S jjr          S2                         S3S jjr   S4           S5S jjr\" S5      \ " S  S!5      5       5       rg)6    )annotations   )event_classT_JSON_DICT)	dataclassNc                      \ rS rSr% S\S'   S\S'   SrS\S'   SrS\S'   SrS\S	'   SrS\S
'   Sr	S\S'   Sr
S\S'   SrS\S'   SrS\S'   SrS\S'   S r\S 5       rSrg)
TouchPoint   floatxyNtyping.Optional[float]radius_xradius_yrotation_angleforcetangential_pressuretilt_xtilt_ytyping.Optional[int]twistid_c                N   [        5       nU R                  US'   U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R
                  b  U R
                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US	'   U R                  b  U R                  US
'   U R                  b  U R                  US'   U$ )Nr   r   radiusXradiusYrotationAngler   tangentialPressuretiltXtiltYr   id)dictr   r   r   r   r   r   r   r   r   r   r   selfjsons     v/Users/Alptekin/Desktop/izin_takip/venv/lib/python3.13/site-packages/selenium/webdriver/common/devtools/v131/input_.pyto_jsonTouchPoint.to_json1   s   vFFS	FFS	==$"mmDO==$"mmDO*$($7$7D!::! JJDM##/)-)A)AD%&;;" KKDM;;" KKDM::! JJDM88DJ    c                   U " [        US   5      [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      OS S	U;   a  [        US	   5      OS S
U;   a  [        US
   5      OS SU;   a  [        US   5      S9$ S S9$ )Nr   r   r   r   r   r   r   r   r   r   r    )r   r   r   r   r   r   r   r   r   r   r   )r   intclsr$   s     r%   	from_jsonTouchPoint.from_jsonI   s    DIDI/8D/@U4	?+d/8D/@U4	?+d;Jd;R5o!67X\*1T/%W&tEY]aEad+?&@ Agk+2d?5g'+2d?5g'(/4#d7m$T%)T\d4j!
 	
 8<
 	
r(    )__name__
__module____qualname____firstlineno____annotations__r   r   r   r   r   r   r   r   r   r&   classmethodr-   __static_attributes__r/   r(   r%   r	   r	      s     H H (,H$+ (,H$+ .2N*1 %)E!( 37/6 &*F") &*F") #'E& #'C	&0 
 
r(   r	   c                  6    \ rS rSrSrSrSrS r\S 5       r	Sr
g)	GestureSourceTypeZ   defaulttouchmousec                    U R                   $ Nvaluer#   s    r%   r&   GestureSourceType.to_json_       zzr(   c                    U " U5      $ r>   r/   r+   s     r%   r-   GestureSourceType.from_jsonb       4yr(   r/   N)r0   r1   r2   r3   DEFAULTTOUCHMOUSEr&   r5   r-   r6   r/   r(   r%   r8   r8   Z   s*    GEE  r(   r8   c                  B    \ rS rSrSrSrSrSrSrSr	S r
\S	 5       rS
rg)MouseButtong   noneleftmiddlerightbackforwardc                    U R                   $ r>   r?   rA   s    r%   r&   MouseButton.to_jsono   rC   r(   c                    U " U5      $ r>   r/   r+   s     r%   r-   MouseButton.from_jsonr   rF   r(   r/   N)r0   r1   r2   r3   NONELEFTMIDDLERIGHTBACKFORWARDr&   r5   r-   r6   r/   r(   r%   rK   rK   g   s9    DDFEDG  r(   rK   c                  J   ^  \ rS rSrSrSS jr\SS j5       rU 4S jrSr	U =r
$ )	TimeSinceEpochw   z4
UTC time in seconds, counted from January 1, 1970.
c                    U $ r>   r/   rA   s    r%   r&   TimeSinceEpoch.to_json{   s    r(   c                    U " U5      $ r>   r/   r+   s     r%   r-   TimeSinceEpoch.from_json~   rF   r(   c                >   > SR                  [        TU ]	  5       5      $ )NzTimeSinceEpoch({}))formatsuper__repr__)r#   	__class__s    r%   rg   TimeSinceEpoch.__repr__   s    #**57+;+=>>r(   r/   )returnr   )r$   r   rj   r^   )r0   r1   r2   r3   __doc__r&   r5   r-   rg   r6   __classcell__)rh   s   @r%   r^   r^   w   s+      ? ?r(   r^   c                  \    \ rS rSr% S\S'   S\S'   SrS\S'   SrS\S'   S	 r\S
 5       r	Sr
g)DragDataItem   str	mime_typedataNtyping.Optional[str]titlebase_urlc                    [        5       nU R                  US'   U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U$ )NmimeTyperr   rt   baseURL)r!   rq   rr   rt   ru   r"   s     r%   r&   DragDataItem.to_json   sW    v>>ZyyV::! JJDM==$"mmDOr(   c           	         U " [        US   5      [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      S9$ S S9$ )Nrw   rr   rt   rx   )rq   rr   rt   ru   )rp   r+   s     r%   r-   DragDataItem.from_json   s`    $z*+T&\"(/4#d7m$T-6$->Si)	
 	
 EI	
 	
r(   r/   )r0   r1   r2   r3   r4   rt   ru   r&   r5   r-   r6   r/   r(   r%   rn   rn      sC     N I #'E& &*H") 
 
r(   rn   c                  N    \ rS rSr% S\S'   S\S'   SrS\S'   S	 r\S
 5       rSr	g)DragData   ztyping.List[DragDataItem]itemsr*   drag_operations_maskN!typing.Optional[typing.List[str]]filesc                    [        5       nU R                   Vs/ s H  o"R                  5       PM     snUS'   U R                  US'   U R                  b  U R                   Vs/ s H  o"PM     snUS'   U$ s  snf s  snf )Nr   dragOperationsMaskr   )r!   r   r&   r   r   )r#   r$   is      r%   r&   DragData.to_json   so    v.2jj9jj9W%)%>%>!"::!(,

3
1Q
3DM	 : 4s   A5"A:c           
         U " US    Vs/ s H  n[         R                  U5      PM     sn[        US   5      SU;   a!  US    Vs/ s H  n[        U5      PM     snS9$ S S9$ s  snf s  snf )Nr   r   r   )r   r   r   )rn   r-   r*   rp   )r,   r$   r   s      r%   r-   DragData.from_json   su    6:7mDm<))!,mD!$T*>%?!@5<_4=1=a3q6=1
 	
 KO
 	
D1s   A#A(r/   )
r0   r1   r2   r3   r4   r   r&   r5   r-   r6   r/   r(   r%   r}   r}      s6    $$  04E,3 
 
r(   r}   c              #  ~   #    [        5       nXS'   XS'   X%S'   UR                  5       US'   Ub  XES'   SUS.nUv ng7f)	a	  
Dispatches a drag event into the page.

**EXPERIMENTAL**

:param type_: Type of the drag event.
:param x: X coordinate of the event relative to the main frame's viewport in CSS pixels.
:param y: Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
:param data:
:param modifiers: *(Optional)* Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
typer   r   rr   N	modifierszInput.dispatchDragEventmethodparamsr!   r&   )type_r   r   rr   r   r   cmd_dictr$   s           r%   dispatch_drag_eventr      sV     $ &F6N3K3K\\^F6N'{+H >Ds   ;=c              #  J  #    [        5       nXS'   Ub  XS'   Ub  UR                  5       US'   Ub  X?S'   Ub  XOS'   Ub  X_S'   Ub  XoS'   Ub  XS	'   Ub  XS
'   U	b  XS'   U
b  XS'   Ub  XS'   Ub  XS'   Ub  XS'   Ub  U Vs/ s H  nUPM     snUS'   SUS.nUv ngs  snf 7f)a  
Dispatches a key event to the page.

:param type_: Type of the key event.
:param modifiers: *(Optional)* Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
:param timestamp: *(Optional)* Time at which the event occurred.
:param text: *(Optional)* Text as generated by processing a virtual key code with a keyboard layout. Not needed for for ```keyUp```` and ````rawKeyDown```` events (default: "")
:param unmodified_text: *(Optional)* Text that would have been generated by the keyboard if no modifiers were pressed (except for shift). Useful for shortcut (accelerator) key handling (default: "").
:param key_identifier: *(Optional)* Unique key identifier (e.g., 'U+0041') (default: "").
:param code: *(Optional)* Unique DOM defined string value for each physical key (e.g., 'KeyA') (default: "").
:param key: *(Optional)* Unique DOM defined string value describing the meaning of the key in the context of active modifiers, keyboard layout, etc (e.g., 'AltGr') (default: "").
:param windows_virtual_key_code: *(Optional)* Windows virtual key code (default: 0).
:param native_virtual_key_code: *(Optional)* Native virtual key code (default: 0).
:param auto_repeat: *(Optional)* Whether the event was generated from auto repeat (default: false).
:param is_keypad: *(Optional)* Whether the event was generated from the keypad (default: false).
:param is_system_key: *(Optional)* Whether the event was a system key event (default: false).
:param location: *(Optional)* Whether the event was from the left or right side of the keyboard. 1=Left, 2=Right (default: 0).
:param commands: **(EXPERIMENTAL)** *(Optional)* Editing commands to send with the key event (e.g., 'selectAll') (default: []). These are related to but not equal the command names used in ````document.execCommand``` and NSStandardKeyBindingResponding. See https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/editing/commands/editor_command_names.h for valid command names.
r   Nr   	timestamptextunmodifiedTextkeyIdentifiercodekeywindowsVirtualKeyCodenativeVirtualKeyCode
autoRepeatisKeypadisSystemKeylocationcommandszInput.dispatchKeyEventr   r   )r   r   r   r   unmodified_textkey_identifierr   r   windows_virtual_key_codenative_virtual_key_codeauto_repeat	is_keypadis_system_keyr   r   r   r   r   r$   s                      r%   dispatch_key_eventr      s    H &F6N'{'//1{v"#2 !"0v
u+*B&'*)@%&*|&z  -}%z)12Aa2z*H >D 3s   B B#BB#c              #  :   #    [        5       nXS'   SUS.nUv ng7f)z
This method emulates inserting text that doesn't come from a key press,
for example an emoji keyboard or an IME.

**EXPERIMENTAL**

:param text: The text to insert.
r   zInput.insertTextr   Nr!   )r   r   r   r$   s       r%   insert_textr   .  s+      &F6N$H >D   c              #  f   #    [        5       nXS'   XS'   X%S'   Ub  X5S'   Ub  XES'   SUS.nUv ng7f)	a  
This method sets the current candidate text for IME.
Use imeCommitComposition to commit the final text.
Use imeSetComposition with empty string as text to cancel composition.

**EXPERIMENTAL**

:param text: The text to insert
:param selection_start: selection start
:param selection_end: selection end
:param replacement_start: *(Optional)* replacement start
:param replacement_end: *(Optional)* replacement end
r   selectionStartselectionEndNreplacementStartreplacementEndzInput.imeSetCompositionr   r   )r   selection_startselection_endreplacement_startreplacement_endr   r   r$   s           r%   ime_set_compositionr   B  sZ     ( &F6N.*>$%6!""#2 +H >Ds   /1c              #  X  #    [        5       nU US'   UUS'   UUS'   Ub  UUS'   Ub  UR                  5       US'   Ub  UR                  5       US'   Ub  UUS'   Ub  UUS	'   Ub  UUS
'   U	b  U	US'   U
b  U
US'   Ub  UUS'   Ub  UUS'   Ub  UUS'   Ub  UUS'   Ub  UUS'   SUS.nUv ng7f)a  
Dispatches a mouse event to the page.

:param type_: Type of the mouse event.
:param x: X coordinate of the event relative to the main frame's viewport in CSS pixels.
:param y: Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
:param modifiers: *(Optional)* Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
:param timestamp: *(Optional)* Time at which the event occurred.
:param button: *(Optional)* Mouse button (default: "none").
:param buttons: *(Optional)* A number indicating which buttons are pressed on the mouse when a mouse event is triggered. Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0.
:param click_count: *(Optional)* Number of times the mouse button was clicked (default: 0).
:param force: **(EXPERIMENTAL)** *(Optional)* The normalized pressure, which has a range of [0,1] (default: 0).
:param tangential_pressure: **(EXPERIMENTAL)** *(Optional)* The normalized tangential pressure, which has a range of [-1,1] (default: 0).
:param tilt_x: *(Optional)* The plane angle between the Y-Z plane and the plane containing both the stylus axis and the Y axis, in degrees of the range [-90,90], a positive tiltX is to the right (default: 0).
:param tilt_y: *(Optional)* The plane angle between the X-Z plane and the plane containing both the stylus axis and the X axis, in degrees of the range [-90,90], a positive tiltY is towards the user (default: 0).
:param twist: **(EXPERIMENTAL)** *(Optional)* The clockwise rotation of a pen stylus around its own major axis, in degrees in the range [0,359] (default: 0).
:param delta_x: *(Optional)* X delta in CSS pixels for mouse wheel event (default: 0).
:param delta_y: *(Optional)* Y delta in CSS pixels for mouse wheel event (default: 0).
:param pointer_type: *(Optional)* Pointer type (default: "mouse").
r   r   r   Nr   r   buttonbuttons
clickCountr   r   r   r   r   deltaXdeltaYpointerTypezInput.dispatchMouseEventr   r   )r   r   r   r   r   r   r   click_countr   r   r   r   r   delta_xdelta_ypointer_typer   r   r$   s                      r%   dispatch_mouse_eventr   e  s    L &FF6NF3KF3K'{'//1{!>>+x#y*|w&':#$ w ww"x"x ,},H >Ds   B(B*c              #     #    [        5       nXS'   U Vs/ s H  oUR                  5       PM     snUS'   Ub  X$S'   Ub  UR                  5       US'   SUS.nUv ngs  snf 7f)a]  
Dispatches a touch event to the page.

:param type_: Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while TouchStart and TouchMove must contains at least one.
:param touch_points: Active touch points on the touch device. One event per any changed point (compared to previous touch event in a sequence) is generated, emulating pressing/moving/releasing points one by one.
:param modifiers: *(Optional)* Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
:param timestamp: *(Optional)* Time at which the event occurred.
r   touchPointsNr   r   zInput.dispatchTouchEventr   r   )r   touch_pointsr   r   r   r   r   r$   s           r%   dispatch_touch_eventr     su      &F6N2>?,QYY[,?F='{'//1{,H >D @s   A A2A c               #     #    SS0n U v ng7f)z*
Cancels any active dragging in the page.
r   zInput.cancelDraggingNr/   )r   r$   s     r%   cancel_draggingr     s     
 	(H >Ds   
c	              #     #    [        5       n	X	S'   XS'   X)S'   UR                  5       U	S'   Ub  UR                  5       U	S'   Ub  XYS'   Ub  XiS'   Ub  XyS	'   Ub  XS
'   SU	S.n
U
v ng7f)a  
Emulates touch event from the mouse event parameters.

**EXPERIMENTAL**

:param type_: Type of the mouse event.
:param x: X coordinate of the mouse pointer in DIP.
:param y: Y coordinate of the mouse pointer in DIP.
:param button: Mouse button. Only "none", "left", "right" are supported.
:param timestamp: *(Optional)* Time at which the event occurred (default: current time).
:param delta_x: *(Optional)* X delta in DIP for mouse wheel event (default: 0).
:param delta_y: *(Optional)* Y delta in DIP for mouse wheel event (default: 0).
:param modifiers: *(Optional)* Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
:param click_count: *(Optional)* Number of times the mouse button was clicked (default: 0).
r   r   r   r   Nr   r   r   r   r   z Input.emulateTouchFromMouseEventr   r   )r   r   r   r   r   r   r   r   r   r   r   r$   s               r%   emulate_touch_from_mouse_eventr     s     4 &F6N3K3K~~'F8'//1{"x"x'{*|4H >Ds   A&A(c              #  :   #    [        5       nXS'   SUS.nUv ng7f)zv
Ignores input events (useful while auditing page).

:param ignore: Ignores input events processing when set to true.
ignorezInput.setIgnoreInputEventsr   Nr   )r   r   r   r$   s       r%   set_ignore_input_eventsr     s,      &F8.H >Dr   c              #  :   #    [        5       nXS'   SUS.nUv ng7f)z
Prevents default drag and drop behavior and instead emits ``Input.dragIntercepted`` events.
Drag and drop behavior can be directly controlled via ``Input.dispatchDragEvent``.

**EXPERIMENTAL**

:param enabled:
enabledzInput.setInterceptDragsr   Nr   )r   r   r   r$   s       r%   set_intercept_dragsr     s,      &F9+H >Dr   c              #     #    [        5       nXS'   XS'   X%S'   Ub  X5S'   Ub  UR                  5       US'   SUS.nUv ng7f)	aI  
Synthesizes a pinch gesture over a time period by issuing appropriate touch events.

**EXPERIMENTAL**

:param x: X coordinate of the start of the gesture in CSS pixels.
:param y: Y coordinate of the start of the gesture in CSS pixels.
:param scale_factor: Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out).
:param relative_speed: *(Optional)* Relative pointer speed in pixels per second (default: 800).
:param gesture_source_type: *(Optional)* Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type).
r   r   scaleFactorNrelativeSpeedgestureSourceTypezInput.synthesizePinchGesturer   r   )r   r   scale_factorrelative_speedgesture_source_typer   r   r$   s           r%   synthesize_pinch_gesturer   +  sb     $ &F3K3K(=!"0&&9&A&A&C"#0H >Ds   >A c              #     #    [        5       nXS'   XS'   Ub  X,S'   Ub  X<S'   Ub  XLS'   Ub  X\S'   Ub  XlS'   Ub  X|S	'   Ub  UR                  5       US
'   U	b  XS'   U
b  XS'   Ub  XS'   SUS.nUv ng7f)a-  
Synthesizes a scroll gesture over a time period by issuing appropriate touch events.

**EXPERIMENTAL**

:param x: X coordinate of the start of the gesture in CSS pixels.
:param y: Y coordinate of the start of the gesture in CSS pixels.
:param x_distance: *(Optional)* The distance to scroll along the X axis (positive to scroll left).
:param y_distance: *(Optional)* The distance to scroll along the Y axis (positive to scroll up).
:param x_overscroll: *(Optional)* The number of additional pixels to scroll back along the X axis, in addition to the given distance.
:param y_overscroll: *(Optional)* The number of additional pixels to scroll back along the Y axis, in addition to the given distance.
:param prevent_fling: *(Optional)* Prevent fling (default: true).
:param speed: *(Optional)* Swipe speed in pixels per second (default: 800).
:param gesture_source_type: *(Optional)* Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type).
:param repeat_count: *(Optional)* The number of times to repeat the gesture (default: 0).
:param repeat_delay_ms: *(Optional)* The number of milliseconds delay between each repeat. (default: 250).
:param interaction_marker_name: *(Optional)* The name of the interaction markers to generate, if not empty (default: "").
r   r   N	xDistance	yDistancexOverscrollyOverscrollpreventFlingspeedr   repeatCountrepeatDelayMsinteractionMarkerNamezInput.synthesizeScrollGesturer   r   )r   r   
x_distance
y_distancex_overscrolly_overscrollprevent_flingr   r   repeat_countrepeat_delay_msinteraction_marker_namer   r   r$   s                  r%   synthesize_scroll_gesturer   L  s     @ &F3K3K({({ ,} ,} !.~w&&9&A&A&C"# ,}""1**A&'1H >Ds   A2A4c              #     #    [        5       nXS'   XS'   Ub  X%S'   Ub  X5S'   Ub  UR                  5       US'   SUS.nUv ng7f)	aU  
Synthesizes a tap gesture over a time period by issuing appropriate touch events.

**EXPERIMENTAL**

:param x: X coordinate of the start of the gesture in CSS pixels.
:param y: Y coordinate of the start of the gesture in CSS pixels.
:param duration: *(Optional)* Duration between touchdown and touchup events in ms (default: 50).
:param tap_count: *(Optional)* Number of times to perform the tap (e.g. 2 for double tap, default: 1).
:param gesture_source_type: *(Optional)* Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type).
r   r   NdurationtapCountr   zInput.synthesizeTapGesturer   r   )r   r   r   	tap_countr   r   r   r$   s           r%   synthesize_tap_gesturer     sh     $ &F3K3K%z&z&&9&A&A&C"#.H >Ds   AAzInput.dragInterceptedc                  8    \ rS rSr% SrS\S'   \SS j5       rSrg)	DragInterceptedi  z
**EXPERIMENTAL**

Emitted only when ``Input.setInterceptDrags`` is enabled. Use this data with ``Input.dispatchDragEvent`` to
restore normal drag and drop behavior.
r}   rr   c                :    U " [         R                  US   5      S9$ )Nrr   )rr   )r}   r-   r+   s     r%   r-   DragIntercepted.from_json  s!    ##DL1
 	
r(   r/   N)r$   r   rj   r   )	r0   r1   r2   r3   rk   r4   r5   r-   r6   r/   r(   r%   r   r     s      N
 
r(   r   r>   )r   rp   r   r   r   r   rr   r}   r   r   rj   0typing.Generator[T_JSON_DICT, T_JSON_DICT, None])NNNNNNNNNNNNNN) r   rp   r   r   r   typing.Optional[TimeSinceEpoch]r   rs   r   rs   r   rs   r   rs   r   rs   r   r   r   r   r   typing.Optional[bool]r   r   r   r   r   r   r   r   rj   r   )r   rp   rj   r   )NN)r   rp   r   r*   r   r*   r   r   r   r   rj   r   )NNNNNNNNNNNNN)"r   rp   r   r   r   r   r   r   r   r   r   ztyping.Optional[MouseButton]r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rs   rj   r   )
r   rp   r   ztyping.List[TouchPoint]r   r   r   r   rj   r   )rj   r   )NNNNN)r   rp   r   r*   r   r*   r   rK   r   r   r   r   r   r   r   r   r   r   rj   r   )r   boolrj   r   )r   r   rj   r   )r   r   r   r   r   r   r   r   r   "typing.Optional[GestureSourceType]rj   r   )
NNNNNNNNNN)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rs   rj   r   )NNN)r   r   r   r   r   r   r   r   r   r   rj   r   )
__future__r   utilr   r   dataclassesr   enumtypingr	   Enumr8   rK   r   r^   rn   r}   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r/   r(   r%   <module>r      s2   # * !  
I
 I
 I
X
		 
$))  ?U ?  
  
  
F 
 
 
> +/  	
 ( 
8D +/59%)04/3%)$(9=8<-1+//3)-6:FF'F 3F #	F
 .F -F #F "F #7F "6F +F )F -F 'F 4F  
8!FR	70 3704      0	 
 .  
8 N +/59/3(,,0(,6:)-)-&**.*.-1!HHH H (	H
 3H -H &H *H &H 4H 'H 'H $H (H (H  +!H" 
8#H\ +/59	- ( 3	
 
88 6:*.*.*.,0--- - 	-
 3- (- (- (- *- 
8-`	7"	70 04BF  -	
 @ 
8H .2-1/3/3/3&*BF-1048<;;; +; +	;
 -; -; -; $; @; +; .; "6; 
8;B *.*.BF ' (	
 @ 
8D $%

 
  &
r(   