informatyka usb praktyczne programowanie z windows api w c andrzej daniluk ebook


USB. Praktyczne
programowanie
z Windows API w C++
Autor: Andrzej Daniluk
ISBN: 978-83-246-2032-6
Format: 158x235, stron: 280
Dowiedz się więcej o działaniu USB i poznaj metody programowania transmisji danych
" W jaki sposób odbywa się transfer danych?
" Jak odblokować urządzenia do transmisji?
" Na czym polega programowanie obiektowe transmisji USB?
USB (skrót od ang. Universal Serial Bus  uniwersalna magistrala szeregowa) to rodzaj
bardzo praktycznego portu komunikacyjnego, dzięki któremu możliwe jest podłączanie
do komputera wielu różnych urządzeń, takich jak mysz, kamera, aparat fotograficzny,
telefon komórkowy, modem, skaner, przenoSna pamięć. Podłączone w ten sposób
urządzenia są od razu wykrywane i rozpoznawane przez system, dzięki czemu
instalacja sterowników i konfiguracja sprzętu odbywają się zwykle automatycznie.
Książka  USB. Praktyczne programowanie z Windows API w C++ w zwięzły sposób
przedstawia wszelkie zagadnienia, dotyczące użytkowania i programowania transmisji
USB. Korzystając z tego podręcznika, poznasz nie tylko teoretyczne podstawy działania
USB, ale także zdobędziesz praktyczne umiejętnoSci w tym zakresie. Książka zawiera
bowiem zarówno konkretne przykłady, jak i ćwiczenia do samodzielnego wykonania
dla wszystkich, którzy chcą zyskać wiedzę na zaawansowanym poziomie. Dowiesz się
między innymi, jakie są rodzaje transferów danych i transakcji USB, za co odpowiadają
komponenty i jak wykorzystać wzorce projektowe. Zrozumiesz także metody
projektowania obiektowego oraz implementacji oprogramowania sterującego łączem USB.
" Srodowisko fizyczne i sygnałowe USB
" Klasy instalacji urządzeń
" Rejestr systemowy
" Transmisja danych
" Struktura systemu USB
" Detekcja i identyfikacja urządzeń
" Odczyt i zapis danych w formie raportu
" Programowanie obiektowe transmisji USB
" Wewnętrzne struktury danych
" Programy wielowątkowe
" Konwertery USB
Tu znajdziesz wszystko o działaniu USB i możliwoSciach jego wykorzystania!
01234567892
000000000000000000000000001
!" #$ %&'%()##!&*(+, )#-./#00000000000000000000000000000
000000000000000000000
- /2 4#00000000000000000000000000000000000005
. #3 00000000000000000000000000000000000000
000000000000000000000000000000000000006
7 8 # + " 000000000000000000000000000000000005
+ " # 8 #0000000000000000000000000000000000
8" 00000000000000000000000000000000005
3+! # ('#0000000000000000000000000000000000005
($ +&90000000000000000000000000000000000005
)& 000000000000000000000000000000000000
3+!":- /0000000000000000000000000000000000000
(+' #. #0000000000000000000000000000000000005
) 0000000000000000000000000000000000000;
<" = +&900000000000000000000000000000000000005
+ ) # ('#0000000000000000000000000000000000000>
& 0000000000000000000000000000000000000
< !8 + )0000000000000000000 00 00 0 00 0 00 0 05
? ( #0000000000000000000 00 0 00 0 00 0 00 0
0 0000000 00 00 00 00 00 00 00@
00000000000000 0 0 00 00 00 00 00 00
A BC D EG H I G E
F J
K)= "= & L%( #00000000000000000000000000000005
( $ + #% ) +00000000000000000000000000000000
& ? 00000000000000000000000000000000M
K)= "= & N%=00000000000000000000000000000000
( $ + # O #
& ! ?00000000000000000000000000000000P
00000000000000000000000000000005
K)= "= & N= R '000000000000000000000000000
( $ + # + Q(S #
& "8 & 000000000000000000000000000P
000000000000000000000000005
2 )+#R + + ) #) ( T #0000000000000000000000
'(# ) ":N" = ! " 00000000000000000000000P
! )' # T = 00000000000000000000005
U+&(=+: L%V000000000000000000000000000000005
R + '# )#00000000000000000000000000000000P
!#! R ?% 00000000000000000000000000000000
W))X # L%V00000000000000000000000000000000000
( )?% )#00000000000000000000000000000000005
0
000000000000000000000000000000000001
7 :=!! 8 &0000000000000000000000000000000000006
) !# ) #00000000000000000000000000000000000
) &= 00000000000000000000000000000000000Y
U?%) + '(#U \ ^ _ ^ W` Za #00000000000000000Y
R = = Z [ ] 2 ` ] _ K[ 000000000000000000
'#8 &%& 000000000000000000Y
< " = + '(# !#0000000000000000000000000000
R'#8 = bR 0000000000000000000000000000Y
?%) &%&_+!00000000000000000000000000000;
< " N " '+) + '(*# !#000000000000000000000
R'# R = = bR 000000000000000000000Y
?% ?%#8 &%) _+!0000000000000000000000>
K)= "= & K#00000000000000000000000000000000@
( $ + #-c 00000000000000000000000000000000Y
& 4 00000000000000000000000000000000
< "0 $00000000000000000000000000000000000000000d
R # 00000000000000000000000000000000000000000
(#0000000000000000000000000000000000000000Y
< !8 + )0000000000000000000000000000000000000Y
? ( #0000000000000000000000000000000000000M
0
0000000000000000000000000000000000000
e fgh g g jJ A
i D F E k
. ?= # ) ? / 000000000000000000000000000000000
= " !! 8 #. #00000000000000000000000000000000Y
?+ &= - 0000000000000000000000000000000001
l+ =+?": + +0000000000000000000000000000000Y
! # (R 000000000000000000000000000000001
$(' (#0000000000000000000000000000000
l+! #%'(#000000000000000000000000000000000;
=+ &%+0000000000000000000000000000000000
$ 00000000000000000000000000000000006
l+ =+ '(#000000000000000000000000000000000;
! #* %+0000000000000000000000000000000000
R 00000000000000000000000000000000005
<= # ('#00000000000000000000000000000000000;
" +&9000000000000000000000000000000000000
000000000000000000000000000000000000Y
-% ) +# ! N & L%V /000000000000000000000000;
L%( # )"&= # )#. #000000000000000000000000>
?% - 000000000000000000000000
U ( * ' # )"&= & $ ?+:000000000000000000000000;
$ ?+: ! N # * '#000000000000000000000000M
)# "( 0
000000000000000000000000
K=$ !# )"&= &( ) T #% )#. #000000000000000000;
( ) &# ! N #=$ ! ? L%V /0000000000000000000
) : ) : - 00000000000000000001
K=$ !. $ - / ) '#000000000000000000000000000
( ) # = . c m )00000000000000000000000000005
) :K Z 0
000000000000000000000000000>
<(="V )# ! N & ?" # ' ) 0000000000000000000
?" # ' # )"&= # ? 0000000000000000000Y
& N(="V *#000000000000000000>
U 8 ( +:N *+ ? X= ( + # L%( 8 000000000000000000
? "' # 8 # " "#?% ) ) #00000000000000000>
+ ?& % 000000000000000000;
c ! N #N =000000000000000000000000000000000000d
)"&= + ?00000000000000000000000000000000000>
#
00000000000000000000000000000000000
<%' # R' # _ R' #000000000000000000000000M
&:_ R [ R 0
) )=(#(# )=(000000000000000000000000>
000000000000000000000000
7 %: = #000000000000000000000000000000000>
+ #N T 0000000000000000000000000000000000
)+ 0000000000000000000000000000000000P
0 123456789 57 78 8 55 56 55
!#% &" ! %(((((((((((((((((((((((((((((((((((((((((((((((((*
"$ ' ((((((((((((((((((((((((((((((((((((((((((((((((()
+" , !- ./01%(((((((((((((((((((((((((((((((((((((((((((((((((((((23
% (((((((((((((((((((((((((((((((((((((((((((((((((((((
4 56/% !#07- ./01%(((((((((((((((((((((((((((((((((((((((((((((23
" % (((((((((((((((((((((((((((((((((((((((((((((
85-."6!7,7 %(((((((((((((((((((((((((((((((((((((((((((((((((((((23
4% (((((((((((((((((((((((((((((((((((((((((((((((((((((
9"-6! " 5%;.40<%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((23
: 5 (
+;.40<%"-=7./%7-?@ABBCD%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((2E
5 > (
+;.40<%"-=7./%7-9@ABBCD%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((2*
5 >
F7GH7"!54 %>I?(?JJ%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((KK
L! ;4!; %MNF%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((KO
+;.40<%M6GF;7H-P5!?560 7&!" N5Q;56!CD%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((*2
9"-6;," .75%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((*2
R 8S5045T 9 U5 5 V 98 U5W7 X Y5 SX Z5 5 8 78[ 512354444\]
8 8
9"-6! " 5% 6"G/%/6!5," 5%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((*O
= 6
+;.40<%5!;&?7P5!^H 66?5_6CD%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((*O
L
+;.40<%5!;&?7`.;,?5_705I.!5 : 056CD%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((O3
L
L! ;4!; %L9@?`aIb+c@?ded%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((O3
L! ;4!; %L9@?`aI^`@Ibe`N+d^`@?ded%((((((((((((((((((((((((((((((((((((((((((((((((((((((((OE
L! ;4!; %L9@?`aI^`@Ibe`N+d^`@?`edIJ@?ded%((((((((((((((((((((((((((((((((((((((((Of
+;.40<%L5!;&?7P5!?5_705I.!5 : 05?5! 7HCD%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Of
+;.40<%L5!;&?7?56! "/?5_705I.:"J76!CD%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Og
?5!540<%7.!5 :5<' %; =h-=5i%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((O)
6
6
H70= .75%7.!5 :5<' %; =h-=5i%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((O*
+;.40<%L5!;&?7P5!?5_705N5j76! /9 "&5 !/CD%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E33
L! ;4!; /%- ./01%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E3)
k"-;l%;6G7"-5:(1%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E3*
F7GH7"!54 %65!;& &7(-HH%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EE3
9" 7 - ,7 .75%"%-"lh0= .7;%7%"-lh0= .7;%; =h-=5i%(((((((((((((((((((((((((((((((((((((((((((((((((((((EEg
9"-6;," .75%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EE*
R 8S5m45n o[ 9 8 5W7 X 85 5 78 U45n 5 5 8 5 8 Z54444444ppq
c-GH"4" .75%; =h-=5.7 %-"%! .6,76<%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EEO
7
+;.40<%^ 5 !5+7H5CD%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EEO
+;.40<%^H"65> .-H5CD%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Eff
9 =/4l -" /%& "j ,%# "-" 764 %!546!" 5j"%((((((((((((((((((((((((((((((((((((((((((((((((((((((Eff
c-0=/!%- ./01% %:" ,75% &" !;%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EfK
+;.40<%N5 -+7H5CD%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EfK
c-0=/!%-l;j"#07%G;:" %- ./01%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Egf
+;.40<%>7-?@P5!I.&;!N5&" !CD%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Egr
c-0=/!% l 6."#07%& =/0764' %((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EgK
c-0=/!% l 6."#07% !"#07%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E)f
d&H74 0<%# "-" 764 %j :70=.5j"%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E)K
&76%- ./01% %:" ,75% &" !;%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E2f
+;.40<%s 7!5+7H5CD%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E2g
+;.40<%>7-?@L5!c;!&;!N5&" !CD% =%>7-?@L5!+5 !; 5CD%(((((((((((((((((((((((((((((((((((E2)
5 "
L! ;4!; %ca`NJd99`?%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E22
+;.40<%BBB`B%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E2*
5
L! ;4!; %^ckkeIk`cMeL%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((ErE
+;.40<%P5!^",,e7,5";!6CD%7%L5!^",,e7,5";!6CD%(((((((((((((((((((((((((((((((((((((((((((Erf
5
+;.40<%?5_705I"^".! "HCD%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Erg
N"=4 =/%%,"-;l;%17-0H 66(1%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((ErO
=
N"=4 =/%%,"-;l;%;6G7"0!H(1%(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EKg
=
9"-6;," .75%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((EKg
01234567892
2 4 4 6 6 24 2 5 746 3 2 240 4
7 7 5 3
!#$&%'()*********************************************************+,-
"% ********************************************************
./%01")0%3#$&")*****************************************************************************************************+45
2 "% * *
6!78"9$7)****************************************************************************************************************+4:
%
;7$0<"3>)**********************************************************************************************************************+44
" =*
?9!1/@7!")A&%B@C)%)7$"0<"3D)*****************************************************************************+E-
% A! =
;A"7$>! =
G%H2%7"7$>)*****************************************************************************************************************5I:
J%A=DH%&@7!")**************************************************************************************************************5I,
K&!1/"7!@)*********************************************************************************************************************5I,
2 4 4L7 M56 74356N 5N6O4 O9P4 Q
J0%80@H)0%1"AD0@97>)**************************************************************************************************5+F
2
J0%80@H) !"#$%&>)******************************************************************************************************55:
%
R29!#@13)0%A%&!=#@)0@@' 8
J%A=DH%&@7!")**************************************************************************************************************5SI
K&!1/"7!@)*********************************************************************************************************************5SI
2 4T 4 6 6 O4 27U V5 74 QWX
.Y$#!))20%1"=>)*************************************************************************************************************5S:
!
ZD7#13)[0"@$"\]0"@A^_)************************************************************************************************5SS
"
G9@=@)\\]0"@A)**************************************************************************************************************5-:
J%A=DH%&@7!")**************************************************************************************************************5F+
K&!1/"7!@)*********************************************************************************************************************5F+
2 4` 4a 76576O4 0 4 Q X
G%7&"0$"0>)b6cde6):5[)*******************************************************************************************5F:
5
.B@'1!&%'1!)2%0$D)#%7&"0$"0@)*******************************************************************************5FS
G%7&"0$"0>)b6cd;fffgS44)*****************************************************************************************5FF
J%A=DH%&@7!")**************************************************************************************************************5F,
h2576 5N6 4 Q `
0 6 2 4 Q
0 22 8
1346
579
! "# %
$
&(*+- & 12/ 5 . 8, /7'9 ,/' 22 6 5+ 8< 8/5>
' . / .4 4 + :7 .+ +/ + /;' ,/5-
)(, /0 ) 3 6 7(-9 ;(( 74 .7 7;/=;*
? 3/? 3 .-, A *// + -;< --,9 / C/ 7 5 .+
)(, / 8+-(2.-/- 922 6+ 5 9/C 5 7 ;(4 9 9 ,
8+-- .4
9)(, / @ .B+7 74 / . 2 / 2' D:
2/ 5+37+5 + :) '8*'/E/ +8/- 7- - 8C45' .7
; < *4 - F .-*, A /E/;/ .<
<4.5+3 + 8 /,A LN OSVWX (5(8 / +3 + 8/ 5
+ /:/ ' . .EKM PQ RT PA + '82/ .<
2< ,6 .
;9
*<;(<-3(*+-6C(/ ++ . 52 9 9 6/.. -< 4 ;:(,
3 / + 8 / )(, /- 84 6 / . 5 7 -4 /:5 5..5
+ ' I + ' . *7 ( ' ;*4 2 ,6D.//
,/2,3 A
.73:/Z
' Y A
G/ +, 4+ /@ 3 (,58/: ' ,<., < (2 ?; +2 95+
. 5' 8 6::,2 / D/H7= . + (/ . /(*4 ,
;I *-9 -3.487,I- 4 8/ 9 [-2+ 547 ' . -
(
;, +/ + / .7 7 :,<+3 + 8 /(*+-9' .= 5((E@
5- D 65+ 8< 9 + ,6 ' C ' . . 8/ ,8
[<74 ;' ,/753 / .<3 )(, //6 ;28+H 7=
22
2 ,9
4 A
.H
\] [4 , / 7 8. ' + 5 54& 1=2 / .- (2 E
& 7 5 -;(? 3(*+-*/ 3 / .6 8 ' +5
:9 : ' )(/ )(, / ;' /0 54J + 74
:6 3 ' /^ 3.:,+44 W 3(*+-;(2 <92 ,
5 ;4.@ =^/ '5._/ )(, / . //.-
+ W3/ J58, . ' / ' + 554+ 4 +
;(? ..ESSab T O
' )(, /,AT `ONS W
7 8+-J /T M T A
\] 5 *@ .-@ -(2. 8<' + ' //./ @ .
c/ 55 , / -.-< / )(, / (85(92 , .-,
5^ :9 3- @)+3(*+-; +=*- 4 (2.-
,/
J / OONS W
.Ede Rb T O
,AV M T A
\] 5 ;. *+-2 ,/ -(2. 88/ 6 9 , / . ' C3
c/ 9 (, /.3- -.-< 5'E. 5 .-=2 / 74 +
2' 3 4 @ @)7= ;5' + 54;(2 ;<
,/
*/ E'9 , / +5 ;(4
5 5F 35 .-,9 E/ C A
:,- . 5 2' 3
\] 3/ ((+4 .-2 ,/ -2E. 9 8/ 9 (D/:/ C:I-
f ^ 5' 4 5 , /.3- -7,? 7= ;. *.(.) ' )
;; +/2 9 + 4 @
,/ 5 2' /< ; *58
;(2?*,8/ )(, /5+ ' .A,56 8 / . / +...
' 3 .7= ' + [/.5 ghF' .<(2 <;(:(,
+7 / 3(*+-6 ; 89 / . 54+ '
*/ . *5 - / 9 2 ,/(( - '(./ o lkks
5 5495;9+(,/7? ; +/+5 5:( jlnkpqrA
=2 // *-. .7 ' , E/ ikm
\ B+7 5 + ' + 54+5;(.+:, 5 ' 549 2?*/
] - ,9 /(*+-(2 <'(5,,D54 +=2 /77 / =^
*/ 3 )(, / . / / '@ / . . 5 3.
'(./ o ljko A 5454+ ' 5 .7 ;(( u / -v
5:( jlnkt qrj/ / . /++ 9 ,/ +/ /2- +
pkm c'(2 <( 24 J' Z 6 @ /w
,
5./x;(2 <9, : 4 +5- W
' v / . //2-/.-@ 8,6 A
( 554) - 62 , /E (7
00 123456789 57 78 8 55 56 55
9544!"#$&'"'($&*+,-/#.*0))-10)*,3(-24
5 % )% ). ( &'%&2(( &0
56789:<;=?@;<=;?MN;O
; >A B 8 G:P>;; <9? P ;9DA P9 G> U 9 B
;=;OSF8TNEP=OA8FPX
A C
5678D8CDE<=OAORQN=8;F?;=Z[\]^_[\`[a[bcM=8ABA9:?C>;?M=;O=:;P>;C ?P: Y L = N G
98;8AB?Q==B?DE<=($(%X=9:;<;D?N;8DO=8=<@fC=8DgEHG:?NQ=:;P>;;>N F EG h 9
;8AB?Q=8UOT@DO=>:;E=D8=8=B?DG=8UOT@D<> ? i 9N 9 8 >A >
k?DHX=(l,m%)%&%(nX
#& $
56o8ABCOAOR=8;F?;=Z[\pZcq_rs[^_M?SO=B;OU?W=Dg8:U?NQ==?FAOU?@DOU
= ?: Y = 8: E <8U
:8;UE?:;<=?FE9 G> =f U S B 8 98 >
t8;F?;=;B F Q >; 9 F v G
w9:8H:?U8C?DE<=8AB?=8V<=>D8
L U E C> N B Q
G:;P>;D8=:;P>;; B Q G C> N U 9
;=>:? i
56x=?ABy9DDENBC;D = D ;9 : ` G
9:;O9EAOC?DO=:A
Q G ? |=:;P>;;E=8=B?DG
?>::k & $ } ? 9 >89fFE=:;P>;G 9 Q >9 h x=8URPN;G:;P>;9 Q :
56x=?@A;DENBC:> = D ;9 DD ? :
YZ[\pZcq_rs[^_=9:8H:?U8C?DE<=8AB?=8SE<:?=8U9@8 L 9 F >
G:;P>;k :
0123245678977 5773 45 57 2 32 716 21 7175 4 5 4
44 3 3 7
!"#$%&'()*,-%/0123*25%26&(/,-7$32829$5+,-%$0*%)0(.1.;
$ +.& )$4 .( +% $ + /: +5 /
&<%26&(/,-%+;/3-;3+0.;')%*25,-%%+3-.;%*0$5+,/%,=$2+';
+.( +,< /% 6 0/$ 1-( 0/0$ - 9 /
>?/,&$2@A7#2&.'*@A7BB%%<1.%EG
% %$ % %BC53- DFB
!"H*25,-%26&(/,-%)0)I%$(1+(%KLMNOPQRSTUVLROP%%/<%0**'(,/8$
/$ 1.( +5 +2 J 5'.$+/
01$,=-.2$5+,-%$5/8$%32(W*BX&%/8$%$9/,*%2(6&(/,-%$($0*;
8 +, 0 .% * 9 .. /3 +/
d
5%*,-%1$,=-.2$5+,-%+,8BYZFG[\]^_ąbb^CB
0+/0 8 +> % E c
efghijkfklmjhfopmphilqfkl
n h
r$93-+*2%tt%%$&.<%^bucuED%&$0*3,-%(/2/8%w)*'(,)':%.,1';%%*.1*27
<$s 59 /a\ v. W +0 . / = --02 .
1*2/%%,+1$9-)%3$04x%9$w<5-;%+9$&(-4 5( *0 . -+60 /,3 /&/ --- )
=-+';%'-w/1%$0*3.%$%,*2=/;45%2(6&(/{%1*+<-%$I'($,)':%$%+8-*+<%H}B
1 -z/ & W &-/ 0 . +.,/&6 &9 02-|
~%)9%$&2$(&(-+* 3 ( +)3 + $ ,5 0 (,
 57 4 5 "
ą.,1';%52+'+%&/,*=-1+*2%<+0)%$&I'($,)':%2(6&(/{7%*2)':%-0*%%3-0%$,y
+( - ) $1 3 6 . 14 <+-$ 1
=-8.2+';%(,+;.;%0-W%5%2/;0*(/%0)0*9$5)9%5%1<.'(.%MŚNćMćNŹ%>($xB
- &/ /2 /
2$(&(-+IęCB
%
łŹ"Ś
JKLT
łRKLNŚVłK
ŹśŹłNŚVTRśźŚś ŹŚć
ŹśN J ĄPTóKUVLOUźŚś ŹŚć
ŹŁłńĄPśśVUKPLźŚś ŹŚć
ŹłŁŚĄł"ŚVS
Śż
#+2+9/*%ŚVTRś%01+(.;%*.1*2W%|@A%<+0)%2(6&(/{B%w)'-/%/8$%3+2+9/*.
2N 5 /02 . 1 . | * 2
;0*$3';,+<,/B%3<-1+';%w)*$5,-1+%$86%$x-/2+%&2/0%&/,*=-1+*2+%|@A%<+
/% $ /. 1 9 3 + - ) $ &
1<0)%.2(6&(/{%@A%(+%3$9$'6%=.,1';%RśłMKLRśTRśŚB~01+Ź,-%PTóKUVLOU%501+y
+ - % 1
(.;%+{'.':%,+145%>(+1${'($,)%(/2$5)9%$82+,-'(,-1-/9C%32(/':$5.;')%&+,/
/I ( 6
1$,12/*)':%.2(6&(/{%>($xB%2$(&(-+I%ę7%2)0B%ęBCB%|w)'-/%*8$%3+2+9/*2.%5%32$82+9-/
, /
;0*%$3';,+<,/B%/w/<-%501+Ź,-1$5-%32()3-0(/9)%5+2*$z%7%=.,1';%(524'-%<-0*W
/ $ +
.2(6&(/{%*3.%#,#%>+,8B%Ż\[`cF_`ŻcąCB%X3';,+<,-/%5)1$2()0*)5+,)%-&/,*)=-1+*$2
) $
ńĄPśśVUKPL%501+(.;%$1,$%$&3$5-/&(-+<,/%(+%-,*/2+1';%(%$*2()9+,)9%(/0*+5/9
/ W
.2(6&(/{B%,+'(,-1%"ŚVS%32();.;%3$0*+%x-*$5/;+<*/2,+*)5)%5)x2+,/8$%(/0*+5.
9 / %
,+0*W3.;')':%*+I)':%)9x$<-'(,)':ł
6 0 0
łŹN"MćNćJJJ% $ %12/z<+%-0*%0()0*1-':%+-,0*+<$5+,)':%%)0*/9-/%2(6&(/{
łŹN"MłŹNŹ Ą"ćN% $ <0W(,+ . (& -/ 0
%12/z<+%-*%+-0*<$5+,)':%2(6&(/{%%+,)9%,*2=/;/9
łŹN"Mł"ć % ( %52+'+%-0*%2(6&(/{%%$9)z<,)9%,*/2=/;/9
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
d
/w/<-%%2+1'-/%2+,09-0;%2(6&(/,-/%2(/(%%0%-/%)12)5+%,+'(,-1+%$'(6*.%+91-%+,)':%Xą7
5* * -. 3 ś9 , 5 ( 3 12 & H
32(/':$&(-%$%*+,.%+5-/0(/,-/%+,8B%\au^F_^_ąbcb^CB
&0 ( > a
01 23456789 68 89 9 66 67 66
+*-.02*.564/78*-9218*,:9<7/**>:9?8@
!"#$%&'&()* , /134 2237/6 ; =: / /
+*-./01*89*3.4564/C*D;65E>EF*E4;0E85*2-9217/G,*4/:9=3*:<.4;H
!"#$%A" B&* , 21:; 3 2
9=/G,I
,
J/K/1*>-,7278*37-EM*8/*,=8/648*8;N4=.2E272*/:9=2.90O*(PQB #RQ( B&#PQBS&I
8= /L 87 < /:* M* ,
T,6*=/793217/G,*U;63*,K72*682G7,4,=2O*2*,?,E5*37-EM* VWBXYW&ZZ[Z\]I
/ D ? 4 4< L 8
^_ `63 _ a b _ a c 8d9 ef
9
g37-EM*=>:43-3M*879/.L/M>*3.4564/C*86/79>L8-,=27>EF*<.4/4*=:-2h78-* VijkV lm['VW
2 / :
4=.2E27>*.4/4*37-EM*VWno j VW!pXYY ViY\]I
< L ;'
q ('&)S$Q$ rsAABrq (Q$
rr'VWno j&lnt VijkV lWVZmXkVY\
rrrr (rR &P ("Arr VijkV lm['VWu
rrrr (r$'$# &P ("A# Q)Qrr VijkV lm[ XWXurrA$) A(QB
rrrr (rB$ S rr lWVZmXkV!pXYY njvu
rrrr (r qA% rrwVtxVZ lvVyu
rrrrAS)r$'$# &P !&# ()&%"Q!&# Q)Qrr VijkV lWVZmXkV XWX
rrrr]z
{:-2h78-* VijkV lm[ XWX*=:-243M*:9.3-93.;*'$# &P ("A# Q)Q*|4,DI*92D/12*}I~N*3?,KH
/
18=82ME*,G.278E4/78/*<.4/:43-8=2C*8:978/ME>EF*3.4564/CI*5 5 , 8
<.4/-242O*=:-2h78-*<3:9>I*{*92-8?*=><26-3*L37-EM*721/K>*=>=,U>=2O*E>-18E478/N
;
92-*2D>*<.4/:43-2U2*=:4>:9-8/*89/.L/M>*627/G,*3.4564/782I{:-2h78-* lWVZmXkV!pXYY njv
7 : *
=:-243M*:9.3-93.;* S I*2.2?/9.*=/ME8,=>*wVtxVZ lvVyM:9*73?/./?*,6<>9>=27/G,
/ 0 /
879/.L/M3I*J/G,*=2.9,0E8*42E4>72M*:8;*,6**|4/.,=>*876/-:*<8/.=:4/G,*879/.L/M3I
: 5 :
J/K/18*L37-EM*=>=,U>=272*M:9*=*<;918*E>-18E478/N*<.4>*-2K6>?*=>=,U2783*721/K>
2 /
,6<,=8/678,*4=8;-:4>O*=2.9,0O*wVtxVZ lvVyI*J/K/18*'VWno j&lnt VijkV lWVZmXkVY\]
4=."E8*=2.9,0O*"QB'&*,.24*L37-EM* VWBQYW&ZZ[Z\]*4=."E8*&%%A%#(A#wA%&# )&w'N*,472H
2
E42*9,NK/*78/*4721/48,7,*879/.L/M3*,*<,627>?*876/-:8/I{:-2h78-* VijkV lWVZmXkV XWX
* : *
=:-243M*:9.3-93.;*'$# &P !&# ()&%"Q!&# Q)Q*|4,DI*.,46482U*N*-9"./M.,4?82.*721/K>
/ *
=<8:2O*=*,13*kx'jąV
<
vVijkV lWVZmXkV XWXkx'jąVrrYjąV[m\'$# &P !&# ()&%"Q!&# Q)Q]z
3 8_ _89637ab Ś^ća
{*<,12EF*:9.3-93.>*<.4/EF,=>=27/*:5*87L,.?2EM*72*9/?29*/G4/?<12.42*3.4564/782
/
721/K5E/G,*,*-12:>*.4564/C*ŹęI* /*
6 3 {*92D/18*}I~*42?8/:4E4,7,*MM,<8:I
9ł 96"55
Śśź ĄóŁĄŁóń
ĄŚżŹŚżŻ
ś ś
b 6 8_ _8 9
k ,4?82.*:9.3-93.>**D2M2EFI
qA% ąx'jąV = 9
ąpXYY njv ł6/79>L8-29,.*Źł*-12:>*3.4564/CI
S !
ł6/79>L8-29,.*=/=7;9.47/M:9.3-93.>*<8:3ME/M3.4564/78/
qA% ąVi lYW * , 5 *
=*:>:9/?8/I
SBA( #$)% ąVYVZiVv ś2./4/.=,=27/I
%
0123245678977 5773 45 57 2 32 716 21 7175 4 5 4
44 3 3 7
!"$%&'()*(+-.+,(/(01#"2(3.%4
# ) ', -/+$ "-02
567898:;<5=>?5;@AB@CDEFGHI@CJKJ;L
;;CMINC;;?OAPQ8R
;;STFC;;UVW<P9R
;;CMINC;;C8XFY<5R
;;TZIGS@BKN;;N8<8=X89R
[;AB@CDEFGHI@CJKJ\;]BAB@CDEFGHI@CJKJR
)01"#"^2(+3(+&%,_`($&3(#%&0('a%&3(.b-^_%&0(AB@CDEFGHI@CJKJ(c'+-.+-,3d("(AB@CDEFGHI@
3 ,
eCJKJ(c&'.3f#".($%(+,-.+-,`dg
'
hijklmopqrstuoA85>7CPvwxyzoi{u|}mlopikipuoAB@CDEFGHI@CJKJomkqo}p}npizo}i
n j ~ }
q}ulsjtop}|rs}moqp}|jq"oqkpn"ąjtommpqstpioki}ąuopqst}popik
n ~ n}no } j
ipuoj}ąn{uoqkpn"ątos}oqql~oqnp}qp}opqst}popikipuojtnosq}jtnoqkpn"ąqjuo|oqŚąnoąićosq}jtnoqkpn"ąqjuojtnp}|t
rq|qzoqo|opsu}rkioi{ult}opikipuomkqo}p}npio|nmltq|nqoFGosq}jtn
} "
|unjnpq|}juoćroDNNIN@FGEJZFC@BJNJŹDKDNzoj}qtoqrls}oi{u|}jtopikipu
~ } }
mkqo}p}npio|umlt|nqoITKosq}jto|unjnpq|}juoćrooDNNIN@FGEJZFC@TADN@THHDN
} "q n ~
57 ęł "
łŚ0
ł Ś
3'%ś`('+,-.+-,`(AB@CDEFUD@FGKDNHJUD@CJKJ(_3,0_0#+%&3#0(&(+3ś0b"(śgź(,_0^ %&-2
Ą
$3#0(#+0,102'-(3b0óĄ^0Ł%(%(.b3'`(,_Ą$_0ń(Śżg
" # $ - Ą
Ś5 57899ŹŻłśśŻąźżźĄźżź
ą ł
Ś 7 Ć 5 2 4
CMINC OAPQ8 %_"3,('+,-.+-,`((ś32+3^ g
? &
STFC Y58=:W?8UVW<P9 Ę$0#+`1".3+%,(ĄĘ)("#+0,102'-(.b3'`(-,_Ą$_0ńg
F
CMINC VW<; #3^_#"."("#+0,102'-g(!3,+%(ABFGK@JUKFED(_#3^_3(ó0(#+0,102'
H % "
2'+(.+-3b#"0(%'+/#`g( A % $
03 $ !3,+%(BFGK@CDHJTZK(_#3^_3(%`b#`
"#+0,102'($b3(.b3'`(-,_Ą$_0ńg(!3,+%(BFGK@NDŹIEDC(.,0b3
A %
-'-#"/+`(#+0,102'g
"
TZIGS@BKN 8<8=X89 3,30+,(3,0_0,&%&3#`("(.+-3b#"0(#"0-ó`&3#`g
N _ 3
!"#$%&'())*('+,-.+-,/(+/($01"#"-20(23.%4
567898:;<5=>?5;@AB@CDEFUD@FGKDNHJUD@CJKJ;L
;;CMINC;?OAPQ8R
;;STFC;;FY58=:W?8UVW<P9R
;;CMINC;HVW;;TZIGS@BKN;;N8<8=X89R
[;AB@CDEFUD@FGKDNHJUD@CJKJ\;]BAB@CDEFUD@FGKDNHJUD@CJKJR
)01"#"^23(+3(+&%,_`($&3(#%&0('a%&3(.b-^_%&0(AB@CDEFUD@FGKDNHJUD@CJKJ(c'+,-.+-,3d
"(BAB@CDEFUD@FGKDNHJUD@CJKJ(c&'.3f#".(%(+,-.+-,`dg
$'
01 23456789 68 89 9 66 67 66
#& )* +- $/ 2 6% + ; <> :?
!"$%'$( )+, $%%*' .%01343578 9:,#"%= !=>%@ABCDEFCAEGHCIJKFCABKHK
#!*%L,>,-$=> 8%, =*-,=:"& )$%,+'&,#%L*L>,+ *MN%*!>$M.$ ),%##>*&-),> O
, ; $%
P!= ,. :%>*&-),>%<=> != >:% ,.$9:%*!>$M.)N%&,%L*-*";%*L$>,=*>,%QRSTUVWX%)%+L)<,N
'*%L*.,%YZ?RSTO%[$9$.)%>*&-),>%<=> != >:% )$%&*<=, )$%*!>$M.* :%+%*\].$%. ^%&*<=,_
$
)$%*!>$M.* :% )$L>,+)'`*+*8%<:<=$-%+:\$ $> #%^`;'%CIIaIAEGDKbEBAc?CIAdcJJCIO
3 8e e89637fghi hf jkhlm hfghk nfg k
opqrsprqtu?@ABCDEFCAEGHCIJKFCABCHKEbABKHKuvtwxyqtuxz{|q}t~u|u|pt~xu~xysxu"|
y
pąru|uzpyq{yruqtzy|urqv"vyzxtuoŚćuuptyŹxućęuqvy"ptwx|z|uvzt~vyzxy
"x w
|v~vyłŹz~ułŹupypqrsprqć
u
k9" 96
55Śśś ĄśóŚŁńĄŚ ńŚĄŚżŹŹŻąŻŹłŻ
ź Ą
k h 6 8e e8 9
BaIB śZ?RST |v}xtqupqrsprquutt~ć
Y w p
HFKI śTąRYT@źKG?EżC t~r~uztsłwuts|~v|zuyq|w}uqtzx~vzxsxy}upvwćucbb
B v v v | G
ĄAKIIK
uńĄĆźĄńŚŁńĄźĘuvtwxyqt~uyzuztvwąu}|Źx~vz

rqv"vyzxtuĂ~xysąu"|pąru"|uxzpyq{yrĘćutqt}ypquyz
p
ws|qvpwtzuypuqvyvu{rzs~uFTTJRTWXć
 ą
xz"|wuupqrsprqąupąu"y{xzxrus|Ń
yt
ÓTTVQYA?@ABCDEFCAEGHCIJKFCABCHKEbABKHK
BaIBYZ?RST
HFKIBTąRYT@źKG?EżCAKIIK
Ł?@ABCDEFCAEGHCIJKFCABCHKEbABKHK@?@ABCDEFCAEGHCIJKFCABCHKEbABKHK
y{xzx~tuptupw|qvu"wtuz|wyu|wtusŹr~v|wyu?@ABCDEFCAEGHCIJKFCABCHKEbABKHK
āpqrsprqtĘuxu@?@ABCDEFCAEGHCIJKFCABCHKEbABKHKuwstzxsu"|upqrsprqĘć

Ż)!)$':%M")9!%'*<=L %'*%)=$>($# % >&;'&$ ),% =*9<,-),%<)%&%#\*% ,&+;%<:-_
$ $ < $
^*."& ;8%!=]>;%-*9 ,%*'"&:=,N%&%>$#<=> %<:<=$-*+$\*%&*^O%>*&'&O%ąO%*"),9%=$
) $ ć
'+,%`," "ć:%& ,!]+%-,#%^,>'&*%L*'*^ ;%L*<=,N8%=*%#' ,!%-*\;%>]9 )N%<)
; $
'`\*M")8%'.=$\*%+%L>*\>,-,"ć%^$&L)"& $##<=%L*<`\),N%<)%!*-L.= :-)',_
; , $ %$ + $ %
%
:-)&,L)<, :-)%+%L*. %BTąRYT@ź%<=> != >:%?@ABCDEFCAEGHCIJKFCABCHKEbABKHKO
me 63 e g ć g 8Ł9 g 9
9 ę
rzs~tuvwqt~tuv~vył|wyuxz{|q}t~yutuy}tpuxzpyq{yrurqv"vyzxtć
zp
EG?CHc@K@EdaabյEGK@E
?TÓBRTBTąRYTETVYTBTRW
EGոBCDEGJaBTąRYTEVU?T
EG@?@ABCDEFCAEGHCIJKFCABKHKBTąRYTETVYTB
acH@?@ABCDEFCAEGHCIJKFCABCHKEbABKHKBTąRYTETVYTBTRBa@HEaGKb
EGBaIBBTąRYTETVYTBTRB?RST
acH@BaIBITRT?RSTa@HEaGKb
acH@?@ABCDEGJaABKHKBTąRYTEVUBa@HEaGKb
X
0123245678977 5773 45 57 2 32 716 21 7175 4 5 4
44 3 3 7
!"#$%&'(*+,-*./012*3(567$&8(9";<6:4(=>O(2*3@A),B*3CDEFF)*+FGHI(J$6$K
#) 4 $ :(4 ?
L:;()*+,-*./3*M0E-*)E3E(5"#$4>9(";>#;6?(2NO)PQ.CPO.RSPTUVCPO)VSVI(!"#$%&'#
6 : 6 >
)*+,-*./3*M0E-*)*3E,D)E3E(5"#$4>9(";6>#;>6?(2NO)PQ.CPO.RSPTUVCPO)PSV.WO)VSV(X4YZI
:
6Y4[4'$\(]^_(Y<79&$`&':(4$L'$";(&':aY([Y(=>O(LYb:(Z8c(<64:#$4$&$(5$6;Ydc(ReWWI
Y '
!(<648<$[#>(95&:aY(5"#$4$&'$(";6>#;>68(2NO)PQ.CPO.RSPTUVCPO)PSV.WO)VSV(5"#$%K
$
&'#("'(Z8c(<6$5'[\Y5Y
Y :(
Y#6:d&:I(!(<64:7'5&8L(6$4':(#YL<'`$;Y6(4a\Y"'(Z\?[8(&$6>"4:&'$(<$L'?7'f(5("&#$7j(Il((I]I
[; < &6 k 'k
0 789m97nopqrtuvwxysztrt|z}~zrtrzy{utzqortzsz~tsyrw"tsz"trrąuv"ąvu
s { q s x qw
ŚćŹŚęŚł"ŹŚŚę""ę"

6a>L:&;)*+,-*./3*M0E-*)*3E,D)E3E2,h*(=>O(2*3@A),B*3)*+,-*./3*M0E-*)*3E,DGH
( '
L$(5$6;dc(4:6Y5f9b:`'()*+,-*./3*M0E-*)*3E,D)E3EŚReWW_(5(<64:7'5&8L(6$4':(Y#6:d`$
Y (:
6Y4L'$6(Z>=Y6$(G100F*310G2NO)PQ.CPO.RSPTUVCPO)PSV.WO)VSV)*+,-*NE3śHF,h*10
śGSCźVTHHI(J$6$L:;6(T* @,M*Ą2,h*9";(5"#$%&'#':L([Y([$&:9;8<>()óŁT)f(#;i6:9<648K
: ( (
<'">9("'?(b[$&8(6Y4L'$6(Z>=Y6$(5"#$485$&:aY(<64:4()*+,-*./3*M0E-*)*3E,D)E3EI
:
J$6$L:;6()*+,-*./01)E3E9";(5"#$%&'#':L([Y(Z>=Y6$([$&87j(<64:7jY5>97:aY('&K
:
=Y6L$79(&$(;:L$;('&;:6=:9>(>64[4:&'$I(ń:b:`'(5"#$%&'#Y5'(&':(<648<'"$&Y(5$6;Yd7'
: "
ReWWf(6Y4L'$6([$&87j(ś./01)E3EĄ-g2,h*ŚF,h*10G2NO)PQ.RUŁO)VSVHI
Ś 57 ż 4 1 4 14 Ź
>O(>">5$(5"48";#':(4$$#Y5$&:(4$"YZ8(4$5':6$97:('&=Y6L$79(Y(>64[4:&'>
$ :
'(45$`&'$(<648[4':&('L(<$L'?cI(Y`:9:(>64[4:&'$((LYa
&
#Y648";$c(:(5Y`&'Y&87j($"YZi5I
44 4
01 23456789 68 89 9 66 67 66
1 6#%')+&'./0-$'&,( $4 4(2 .'1 +35&5$*( )<
655!"$&(*,-%'-1%2%-.'3-"34%5,64&,74%42%89-,%*':-'%4%;)5;(
9=>?@AB@>BE@FGHC@>?@EHB>?HEH
C D I
JKLMNOPQRQKSTUUVSJKLRQK
SSMWXYZ[\[W]X^_`[Wa\bWKcd_V\]Xe
SSSSKLSf[NgKLhUSS[Wa\bWKcd_MWX
SSSSij
klmnopqrWa\bWKcd_MWXrtunvnpwrylz{usysr}pmvxrWXYZ[\WX]][Wa]eirkr{usw"
m[ s xr | ~M
{nm}runtqątyrtpqypqnrnltr}pmvxrtunvnrnuzŚćrPNŹrtr{usyvqtpw
{ s s | ns t O
unsqyrnuzŚćrRVMNęrwlz{qypqnrą}rtunvnpwrylz{usysr}pmvxrWXV]XN^^_^ei
t h r t ł ~ s xr | ~
"6 8 "
6 8 Ś
9
nruwl}pm}rrtr{lznvqrqnun}rvswppŚvqr{usylzntqprpłrlqyćrsqnąnŹrsn
{vłrmzuwvśrpnr{uuntrlnsqypqyrtwmpnćr{uvy}u~ryzymvxr}usł"
q
syrmnlwrśź rnmz}npqyr{ąłvspwvśrrlwlz}Źrvrtry|ymvqyr{tqpprlm}zmtnć
y
swlmnpqyr.,"&<1Ąrpnstrlwqvspwvśró{yąpwvśrŚvqyymrlz~{}rrqpzyu|yxtŁ
l
}usłsyrn{qlnpwvśrr}rWa\bWQXńrzu}mz}uwrQĄ[NgKNĄKLONhRNĄ[NORKVĄ[ROR
s t{ [ l M
kr{qyutlsyxmyxŚvqrpnywrvswznćr{lznćrqypzw|qmnzunrŚżź rqpzyu|yx}rmnlw
r p l
}usłsyrtwlz~{}xvwvśrtrlwlzyqyrklmnopqmrWa\bWKcd_MWXrtlmnyrnpyrsntqyun"
ł
xvyrqp|unvxrpnrzynzrtlswlzmqvśrsnqplzntnpwvśrqrnmz}npqyrlz~{pwvśró{uswął"
ł y
vspwvśŁr}usłsyrnpyxmnlwrnlz~{pqyrtwls}mqtnpyrlłrqpzyu|yxwr{lsvsypwvś
r l
}usłsy{usysrvswznpqyrntnuzŚvqrnrWa\bWQXńrzu}mz}uwrQĄ[NgKNĄKLONhRNĄ
r s { [ l M
[NORKVĄ[RORrtwwtnpnrxlzr{yąpnrŚvqymnrlz~{}rrqpzyu|yx}rqlzpqyxvyr}usł"
y l ł
sypqnrnrpqyvrzwvśvsnlr}wtnpyrusysruunrsnlwrlłrtnpqnpy
m { { s
0123245678977 5773 45 57 2 32 716 21 7175 4 5 4
44 3 3 7
0 799
88
!"#$&()"+*,
%'*
-.%%/0)($'12+*-3
& -'*/ )
4561%23%8,2+*-3
7 ' )
2
8+.9(.2:'$5&'=
;* <>
?@ABDEFGHAIJAL@MCDLOLPFPAQPRAMPRHSATUVQEAWXRYONGPAHDLOLNGZS[CFYAC\
CC K N H PNH P P M
TBMNFEOVACGU@MHAA]DHFQHAJJ
N @YR@ LU II
^4 4 79_97/('/(8a'5bcdecfg11A*;/'+.&;a('*1+/"+*,/4*%)'561%23%8,2+*-3'+.9(.2:
8 ` , 88 - 3 1 *. *4 7 ' )8
2
%*'/(564)'(2%6h;*6+*'j='$5&'+.9(.2:
1 * 2) &) / i >;* 8
klmnopqrstulmqvuwx
klmnopqrstwrypz{zlx
klmnopqrst{wwr|yx
klmnopqrstlvwy|r{}x
pwlm~sm{}rwz{nrswyq
vlqsqlwzo{||v|nvmwysn"{|s}w~ą
ssnvpystts}w~sttsrmqo
sswwyr}Śą
ssrćlyą
Ź
ęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęę
yr}zo{yrstno{wwsłx
lmolmrsvlqs|ror{wrr}v|łs"ćą

ss{wwr|yćs
sŚŚą
ssqroryrsć
ssćs
sŚŚ
Ź
ęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęęę
sno{wwplq
Czytaj dalej...


Wyszukiwarka

Podobne podstrony:
USB Praktyczne programowanie z Windows API w C usbppr
Visual Studio 05 Programowanie z Windows API w jezyku C vs25pw
informatyka windows 7 pl zaawansowana administracja systemem andrzej szelag ebook
technik informatyk egzamin praktyczny zadanie a
Technik Informatyk Egzamin Praktyczny Czerwiec 2007 (Zadanie 3)
technik informatyk egzamin praktyczny 10 zad 1
technik informatyk egzamin praktyczny probny zadanie1 przyklad rozwiazana
Programowniae windows petzold Petzold01

więcej podobnych podstron