* ref(RTC): store remote tracks in peer TPC In order to implement P2P <-> JVB connection switching we need to be able to associate remote tracks with the TraceablePeerConnections. * feat(ChatRoom): multiple presence handlers Add support for more than 1 presence handler per tag name. * feat(JitsiLocalTrack): update stored MSID * ref(stats): add peer connection arg to BYTE_SENT_STATS Required to store local SSRCs in TraceablePeerConnection. * ref: change local SSRCs strategy * fix: generate recvonly SSRC if 0 video tracks Video SSRC has to be generated for the recvonly stream if there are no video tracks in the PeerConnection. * feat: add "attach" and "detach" methods * feat(jitsi tracks): improve logging Adds toString methods and improve log messages around local and remote tracks. * ref(modify SSRCs): optimisations + fixes - adds _doRenegotiate to JingleSessionPC that wraps some of the duplicated logic - fixes problems with attach/detach - renames methods to reflect what that they really do (operate on JitsiTrack rather than streams) * ref(JingleSessionPC): remove duplication Extracts common code for the 'modificationQueue' execution * ref(VideoMuteSdpHack): rename, add docs, fix minor Renames, adds docs and moves 'modified' flag and media direction modification. * ref(TPC): add 'isSimulcastOn' * ref(MungeLocalSdp): move to RTC module * ref: move "ufrag" events to the RTC module * ref(JitsiConference): use promises for mute * feat(XMPPEvents): add CONNECTION_ESTABLISHED * feat: add peer to peer * fix(P2P): deal with everyone's a moderator + fixes * feat(P2P): implement "backToP2PDelay" * fix(TPC): crash on FF accessing LD/RD Firefox return null/undefined for localDescription/remoteDescription objects if they have not been set yet, while Chrome does return empty object instead. This commit makes the behaviour consistent by making sure that at least empty object is returned for all browsers. * fix(TPC): replace isFirefox with feature * fix(JSPC): fix renegotiate crash on FF FF does not allow to call 'createAnswer' in 'have-local-offer' state * fix(JSPC): fix addIceCandidate crash on FF * doc(JitsiConference): fix outdated comment To be squashed with "ref(ChatRoom): remove unnecessary JingleSessionPC dependency" * style(JitsiConference): rename arg to "jingleSession" * feat(stats): add 'p2p' to 'transport' The new p2p field will inform whether the transport comes from the peer to peer type of connection or not. * doc(TPC): describe local maps * fix(P2P): multiplex between JVB and P2P ICE status Will make sure that when in P2P mode the conference will be updated with the ICE state coming from P2P and when in the JVB mode will get the JVB one. * doc(TPC): fixes docs and adds FIXME * ref: use 'doesVideoMuteByStreamRemove' * feat(P2P): stop P2P when ICE enters FAILED The conference will switch back to the JVB connection when P2P connection breaks (ICE enters failed state). * feat(P2P): "connectivity-error" for ICE failed Will use "connectivity-error" reason element name when ending P2P session due to ICE failure. * feat(xmpp): make P2P Stun servers configurable STUN servers used in the P2P connection can be configured through "p2pStunServers" option. * ref(JitsiConference): use 'getActivePeerConnection' * fix(P2P): re-create 'dtmfManager' * ref(P2P): deal with ICE "completed" state * ref(RTC): rename "owner" to "ownerEndpointId" * fix(MungeLocalSdp): fix directions * ref(ParticipantConnectionStatus): use for..of and () => * remove double 'l' * ref: fix ESLint errors * fix(MungeLocalSdp): adopt to new SdpTransformerUtil * ref(MungeLocalSdp): use for .. of * ref(SdpTransformUtil): remove "forEachSSRCAttr" * fix(SDPDiffer): fix invalid "arrayEquals" call * doc(MungeLocalSdp): add fixme * fix(P2PEnabledConference): JVB tracks not added * ref(JitsiConference): doc + rename mute methods * ref(JitsiConference): adjust log level * fix(JitsiConference): remove invalid eslint comments Some mistake during rebase merge * doc(JitsiConference): add FIXME * ref(JitsiConferenceEventManager): stick to "tpc" * ref(JitsiLocalTrack): use Set for "peerConnections" * ref(JitsiLocalTrack): simplify expression * ref(MungeLocalSdp): style + doc fixes * ref: rename MungeLocalSdp to LocalSdpMunger * ref(ParticipantConn..Status): rename method * ref(SignalingLayerImpl): use Map and => * fix(strophe.jingle.js): minor style fixes + rename * doc(XMPPEvents): typo * doc(P2PEnabledConference): typo and style * ref(P2PEnabledConference): rename methods * ref(P2PEnabledConference): do not use "window" * fix(P2PEnabledConference): cleanup deferred task * ref(TPC): make options the last arg * ref(TPC): use Map * ref(TPC): syntax and other fixes... * doc(ChatRoom): remove comment * ref: remove P2PEnabledConference * fix: remove JSUtil.js * ref(LocalSdpMunger): re-use 'RtxModifier' Reuses RtxModifier for injecting local RTX SSRCs as part of the LocalSdpMunger logic. * doc(LocalSdpMunger): remove confusing FIXME * fix(TPC): setLocalDescription for FF * fix(LocalSdpMunger): crash on react-native * fix(JingleSessionPC): no events when ended The instance once terminated should not emit connection state events. * fix(P2P): do not start P2P on react-native * fix: log meaningful error Prior to this change you would see something like: JitsiConference <error>: null * fix(JingleSessionPC): no IQs once ended * fix(JingleSessionPC): Jingle error logging * fix: arguments order * fix: make audio SSRC consistent Audio SSRC needs to stay consistent between detach and attach operations in order to avoid source-remove/source-add. * fix(P2P): disable P2P on FF There are problems with going back from P2P to JVB in FireFox. Other participants will not see FF video. Looks like something related to detach/attach. * fix(JitsiConference): attach local tracks Local tracks should be attached back to the JVB connection only if the P2P was established. * ref(JitsiConference): PR review fixes ref(JitsiConference): else if ref(JitsiConference): use getter doc(JitsiConference): add comment style(JitsiConference): remove extra line log(JitsiConference): misleading msg ref(JitsiConference): rename method * ref(RTC): del _iteratePeerConnections * ref: move getUfrag to SDPUtil * fix(LocalSdpMunger): docs and if check * fix(TPC): docs and typo * ref(JingleSessionPC): PR review fixes ref(JingleSessionPC): rename 'candidates' ref(JitsiConference): remove extra check ref(JitsiConference): rename isP2PEstablished ref(JitsiConference): rename field (typo) * doc(JitsiConferenceEventManager): typo * ref(JitsiLocalTrack): rename var * ref(JitsiConference): PR review fixes ref(JitsiConference): rename var doc(JitsiConference): add comment doc(JitsiConference): add comment doc(JitsiConference): fix comment ref(JitsiConference): rename listener ref(JitsiConference): rename var * doc(RTC): remove duplicated arg description doc(RTC): fill docs * doc(SignalingLayerImpl): remove fixed FIXME * ref(strophe.jingle.js): remove comment and break line * style(TPC): formatting doc(TPC): add FIXME ref(TPC): remove unused code doc(TPC): add docs * doc(JingleSessionPC): mark "send" methods private style(JingleSessionPC): extra linesmaster
|
|
||
29 |
|
29 |
|
30 |
|
30 |
|
31 |
|
31 |
|
|
32 |
|
|
|
33 |
|
|
|
34 |
|
|
|
35 |
|
|
|
36 |
|
|
|
37 |
|
|
32 |
|
38 |
|
33 |
|
39 |
|
34 |
|
40 |
|
|
|
||
111 |
|
117 |
|
112 |
|
118 |
|
113 |
|
119 |
|
114 |
|
|
|
115 |
|
|
|
116 |
|
|
|
117 |
|
|
|
118 |
|
|
|
|
120 |
|
|
|
121 |
|
|
|
122 |
|
|
|
123 |
|
|
|
124 |
|
|
|
125 |
|
|
|
126 |
|
|
|
127 |
|
|
|
128 |
|
|
119 |
|
129 |
|
120 |
|
130 |
|
121 |
|
131 |
|
|
|
||
140 |
|
150 |
|
141 |
|
151 |
|
142 |
|
152 |
|
143 |
|
|
|
|
153 |
|
|
144 |
|
154 |
|
145 |
|
155 |
|
146 |
|
156 |
|
|
|
||
194 |
|
204 |
|
195 |
|
205 |
|
196 |
|
206 |
|
197 |
|
|
|
198 |
|
|
|
199 |
|
|
|
|
207 |
|
|
|
208 |
|
|
|
209 |
|
|
|
210 |
|
|
|
211 |
|
|
200 |
|
212 |
|
201 |
|
213 |
|
202 |
|
214 |
|
203 |
|
|
|
204 |
|
|
|
205 |
|
|
|
206 |
|
|
|
|
215 |
|
|
|
216 |
|
|
207 |
|
217 |
|
208 |
|
218 |
|
209 |
|
219 |
|
|
|
||
230 |
|
240 |
|
231 |
|
241 |
|
232 |
|
242 |
|
233 |
|
|
|
234 |
|
|
|
235 |
|
|
|
236 |
|
|
|
237 |
|
|
|
238 |
|
|
|
239 |
|
|
|
240 |
|
|
|
|
243 |
|
|
|
244 |
|
|
|
245 |
|
|
|
246 |
|
|
241 |
|
247 |
|
242 |
|
248 |
|
243 |
|
249 |
|
|
|
||
246 |
|
252 |
|
247 |
|
253 |
|
248 |
|
254 |
|
249 |
|
|
|
250 |
|
|
|
251 |
|
|
|
252 |
|
|
|
253 |
|
|
|
254 |
|
|
|
|
255 |
|
|
|
256 |
|
|
|
257 |
|
|
|
258 |
|
|
|
259 |
|
|
|
260 |
|
|
|
261 |
|
|
|
262 |
|
|
|
263 |
|
|
255 |
|
264 |
|
256 |
|
265 |
|
257 |
|
|
|
258 |
|
|
|
259 |
|
|
|
260 |
|
|
|
261 |
|
266 |
|
262 |
|
267 |
|
263 |
|
268 |
|
|
|
||
294 |
|
299 |
|
295 |
|
300 |
|
296 |
|
301 |
|
297 |
|
|
|
298 |
|
|
|
|
302 |
|
|
299 |
|
303 |
|
300 |
|
304 |
|
301 |
|
305 |
|
|
|
||
351 |
|
355 |
|
352 |
|
356 |
|
353 |
|
357 |
|
354 |
|
|
|
355 |
|
|
|
356 |
|
|
|
357 |
|
|
|
358 |
|
|
|
359 |
|
|
|
360 |
|
|
|
361 |
|
|
|
362 |
|
|
|
363 |
|
|
|
364 |
|
|
|
365 |
|
|
|
366 |
|
|
|
367 |
|
358 |
|
368 |
|
359 |
|
369 |
|
360 |
|
|
|
||
404 |
|
395 |
|
405 |
|
396 |
|
406 |
|
397 |
|
407 |
|
|
|
408 |
|
|
|
409 |
|
|
|
410 |
|
|
|
411 |
|
|
|
412 |
|
|
|
413 |
|
|
|
414 |
|
|
|
415 |
|
|
|
416 |
|
|
|
417 |
|
|
|
418 |
|
|
|
419 |
|
|
|
420 |
|
|
|
421 |
|
398 |
|
422 |
|
399 |
|
423 |
|
400 |
|
|
|
||
467 |
|
444 |
|
468 |
|
445 |
|
469 |
|
446 |
|
470 |
|
|
|
|
447 |
|
|
471 |
|
448 |
|
472 |
|
449 |
|
473 |
|
450 |
|
|
|
||
543 |
|
520 |
|
544 |
|
521 |
|
545 |
|
522 |
|
|
523 |
|
|
|
524 |
|
|
|
525 |
|
|
|
526 |
|
|
|
527 |
|
|
|
528 |
|
|
|
529 |
|
|
|
530 |
|
|
|
531 |
|
|
|
532 |
|
|
|
533 |
|
|
|
534 |
|
|
|
535 |
|
|
|
536 |
|
|
|
537 |
|
|
|
538 |
|
|
|
539 |
|
|
|
540 |
|
|
|
541 |
|
|
|
542 |
|
|
|
543 |
|
|
546 |
|
544 |
|
547 |
|
545 |
|
548 |
|
546 |
|
|
|
||
587 |
|
585 |
|
588 |
|
586 |
|
589 |
|
587 |
|
|
588 |
|
|
|
589 |
|
|
|
590 |
|
|
|
591 |
|
|
|
592 |
|
|
|
593 |
|
|
590 |
|
594 |
|
591 |
|
595 |
|
592 |
|
596 |
|
|
|
||
624 |
|
628 |
|
625 |
|
629 |
|
626 |
|
630 |
|
627 |
|
|
|
628 |
|
|
|
629 |
|
|
|
630 |
|
|
|
631 |
|
|
|
632 |
|
|
|
633 |
|
|
|
|
631 |
|
|
634 |
|
632 |
|
635 |
|
633 |
|
636 |
|
634 |
|
|
|
||
647 |
|
645 |
|
648 |
|
646 |
|
649 |
|
647 |
|
650 |
|
|
|
|
648 |
|
|
651 |
|
649 |
|
652 |
|
|
|
|
650 |
|
|
653 |
|
651 |
|
654 |
|
652 |
|
655 |
|
653 |
|
656 |
|
654 |
|
657 |
|
655 |
|
658 |
|
|
|
|
656 |
|
|
659 |
|
657 |
|
660 |
|
658 |
|
661 |
|
659 |
|
|
|
||
132 |
|
132 |
|
133 |
|
133 |
|
134 |
|
134 |
|
|
135 |
|
|
|
136 |
|
|
|
137 |
|
|
|
138 |
|
|
|
139 |
|
|
|
140 |
|
|
|
141 |
|
|
135 |
|
142 |
|
136 |
|
143 |
|
137 |
|
144 |
|
|
|
||
1 |
|
|
|
2 |
|
|
|
|
1 |
|
|
3 |
|
2 |
|
|
3 |
|
|
4 |
|
4 |
|
5 |
|
|
|
6 |
|
5 |
|
7 |
|
6 |
|
8 |
|
7 |
|
|
|
||
90 |
|
89 |
|
91 |
|
90 |
|
92 |
|
91 |
|
93 |
|
|
|
|
92 |
|
|
|
93 |
|
|
94 |
|
94 |
|
95 |
|
|
|
|
95 |
|
|
|
96 |
|
|
96 |
|
97 |
|
97 |
|
98 |
|
98 |
|
99 |
|
|
|
||
20 |
|
20 |
|
21 |
|
21 |
|
22 |
|
22 |
|
|
23 |
|
|
23 |
|
24 |
|
24 |
|
25 |
|
25 |
|
26 |
|
|
|
||
30 |
|
31 |
|
31 |
|
32 |
|
32 |
|
33 |
|
|
34 |
|
|
33 |
|
35 |
|
34 |
|
36 |
|
35 |
|
37 |
|
|
|
||
37 |
|
39 |
|
38 |
|
40 |
|
39 |
|
41 |
|
|
42 |
|
|
|
43 |
|
|
|
44 |
|
|
|
45 |
|
|
|
46 |
|
|
|
47 |
|
|
40 |
|
48 |
|
41 |
|
49 |
|
42 |
|
50 |
|
|
|
||
49 |
|
57 |
|
50 |
|
58 |
|
51 |
|
59 |
|
52 |
|
|
|
53 |
|
|
|
|
60 |
|
|
54 |
|
61 |
|
55 |
|
62 |
|
56 |
|
63 |
|
|
|
||
62 |
|
69 |
|
63 |
|
70 |
|
64 |
|
71 |
|
65 |
|
|
|
|
72 |
|
|
66 |
|
73 |
|
67 |
|
74 |
|
|
75 |
|
|
|
76 |
|
|
|
77 |
|
|
|
78 |
|
|
|
79 |
|
|
|
80 |
|
|
|
81 |
|
|
68 |
|
82 |
|
69 |
|
83 |
|
70 |
|
84 |
|
|
|
||
144 |
|
158 |
|
145 |
|
159 |
|
146 |
|
160 |
|
|
161 |
|
|
|
162 |
|
|
|
163 |
|
|
|
164 |
|
|
|
165 |
|
|
|
166 |
|
|
|
167 |
|
|
|
168 |
|
|
|
169 |
|
|
|
170 |
|
|
|
171 |
|
|
|
172 |
|
|
|
173 |
|
|
|
174 |
|
|
|
175 |
|
|
|
176 |
|
|
|
177 |
|
|
|
178 |
|
|
|
179 |
|
|
|
180 |
|
|
|
181 |
|
|
|
182 |
|
|
|
183 |
|
|
|
184 |
|
|
|
185 |
|
|
|
186 |
|
|
|
187 |
|
|
|
188 |
|
|
147 |
|
189 |
|
148 |
|
190 |
|
149 |
|
191 |
|
|
|
||
237 |
|
279 |
|
238 |
|
280 |
|
239 |
|
281 |
|
|
282 |
|
|
|
283 |
|
|
|
284 |
|
|
|
285 |
|
|
|
286 |
|
|
|
287 |
|
|
|
288 |
|
|
|
289 |
|
|
|
290 |
|
|
|
291 |
|
|
|
292 |
|
|
|
293 |
|
|
|
294 |
|
|
|
295 |
|
|
|
296 |
|
|
|
297 |
|
|
|
298 |
|
|
240 |
|
299 |
|
241 |
|
300 |
|
242 |
|
301 |
|
|
|
||
300 |
|
359 |
|
301 |
|
360 |
|
302 |
|
361 |
|
|
362 |
|
|
|
363 |
|
|
|
364 |
|
|
|
365 |
|
|
303 |
|
366 |
|
304 |
|
367 |
|
305 |
|
368 |
|
306 |
|
369 |
|
307 |
|
370 |
|
308 |
|
371 |
|
309 |
|
|
|
|
372 |
|
|
|
373 |
|
|
|
374 |
|
|
310 |
|
375 |
|
311 |
|
376 |
|
312 |
|
|
|
|
377 |
|
|
|
378 |
|
|
313 |
|
379 |
|
314 |
|
380 |
|
315 |
|
381 |
|
316 |
|
382 |
|
317 |
|
383 |
|
318 |
|
384 |
|
|
385 |
|
|
319 |
|
386 |
|
320 |
|
387 |
|
321 |
|
388 |
|
|
|
||
327 |
|
394 |
|
328 |
|
395 |
|
329 |
|
396 |
|
|
397 |
|
|
|
398 |
|
|
330 |
|
399 |
|
331 |
|
400 |
|
332 |
|
401 |
|
|
|
||
352 |
|
421 |
|
353 |
|
422 |
|
354 |
|
423 |
|
355 |
|
|
|
|
424 |
|
|
356 |
|
425 |
|
357 |
|
426 |
|
358 |
|
427 |
|
|
|
||
387 |
|
456 |
|
388 |
|
457 |
|
389 |
|
458 |
|
|
459 |
|
|
|
460 |
|
|
|
461 |
|
|
|
462 |
|
|
|
463 |
|
|
|
464 |
|
|
|
465 |
|
|
|
466 |
|
|
|
467 |
|
|
390 |
|
468 |
|
391 |
|
|
|
392 |
|
|
|
393 |
|
|
|
394 |
|
|
|
395 |
|
|
|
396 |
|
|
|
397 |
|
|
|
398 |
|
|
|
399 |
|
|
|
400 |
|
|
|
401 |
|
|
|
|
469 |
|
|
|
470 |
|
|
402 |
|
471 |
|
403 |
|
472 |
|
404 |
|
473 |
|
|
|
||
415 |
|
484 |
|
416 |
|
485 |
|
417 |
|
486 |
|
418 |
|
|
|
419 |
|
|
|
420 |
|
|
|
|
487 |
|
|
421 |
|
488 |
|
422 |
|
|
|
423 |
|
|
|
424 |
|
|
|
425 |
|
|
|
426 |
|
|
|
427 |
|
|
|
428 |
|
|
|
|
489 |
|
|
429 |
|
490 |
|
430 |
|
491 |
|
431 |
|
492 |
|
|
|
||
502 |
|
563 |
|
503 |
|
564 |
|
504 |
|
565 |
|
505 |
|
|
|
506 |
|
|
|
507 |
|
|
|
508 |
|
|
|
509 |
|
|
|
510 |
|
|
|
511 |
|
|
|
512 |
|
|
|
513 |
|
|
|
514 |
|
566 |
|
515 |
|
567 |
|
516 |
|
568 |
|
|
|
||
528 |
|
580 |
|
529 |
|
581 |
|
530 |
|
582 |
|
531 |
|
|
|
532 |
|
|
|
533 |
|
|
|
534 |
|
|
|
535 |
|
|
|
536 |
|
|
|
537 |
|
|
|
538 |
|
|
|
539 |
|
|
|
540 |
|
|
|
541 |
|
|
|
542 |
|
|
|
543 |
|
|
|
544 |
|
|
|
545 |
|
|
|
546 |
|
|
|
547 |
|
|
|
548 |
|
|
|
549 |
|
583 |
|
550 |
|
584 |
|
551 |
|
585 |
|
|
|
||
562 |
|
596 |
|
563 |
|
597 |
|
564 |
|
598 |
|
|
599 |
|
|
|
600 |
|
|
|
601 |
|
|
|
602 |
|
|
|
603 |
|
|
|
604 |
|
|
|
605 |
|
|
|
606 |
|
|
|
607 |
|
|
565 |
|
608 |
|
566 |
|
609 |
|
567 |
|
|
|
|
610 |
|
|
|
611 |
|
|
568 |
|
612 |
|
569 |
|
613 |
|
570 |
|
|
|
|
614 |
|
|
571 |
|
615 |
|
572 |
|
|
|
573 |
|
|
|
574 |
|
|
|
575 |
|
|
|
576 |
|
|
|
577 |
|
|
|
|
616 |
|
|
578 |
|
617 |
|
579 |
|
618 |
|
580 |
|
619 |
|
581 |
|
620 |
|
|
621 |
|
|
|
622 |
|
|
582 |
|
623 |
|
583 |
|
624 |
|
584 |
|
625 |
|
|
|
||
676 |
|
717 |
|
677 |
|
718 |
|
678 |
|
719 |
|
|
720 |
|
|
|
721 |
|
|
|
722 |
|
|
|
723 |
|
|
|
724 |
|
|
|
725 |
|
|
|
726 |
|
|
|
727 |
|
|
679 |
|
728 |
|
|
|
||
24 |
|
24 |
|
25 |
|
25 |
|
26 |
|
26 |
|
|
27 |
|
|
|
28 |
|
|
27 |
|
29 |
|
28 |
|
30 |
|
29 |
|
31 |
|
|
|
||
35 |
|
37 |
|
36 |
|
38 |
|
37 |
|
39 |
|
38 |
|
|
|
|
40 |
|
|
|
41 |
|
|
39 |
|
42 |
|
40 |
|
43 |
|
41 |
|
44 |
|
|
|
||
45 |
|
48 |
|
46 |
|
49 |
|
47 |
|
50 |
|
48 |
|
|
|
49 |
|
|
|
|
51 |
|
|
50 |
|
52 |
|
|
53 |
|
|
51 |
|
54 |
|
52 |
|
55 |
|
|
56 |
|
|
53 |
|
57 |
|
54 |
|
58 |
|
55 |
|
59 |
|
|
|
||
218 |
|
222 |
|
219 |
|
223 |
|
220 |
|
224 |
|
|
225 |
|
|
|
226 |
|
|
|
227 |
|
|
|
228 |
|
|
|
229 |
|
|
|
230 |
|
|
|
231 |
|
|
|
232 |
|
|
|
233 |
|
|
221 |
|
234 |
|
|
|
||
67 |
|
67 |
|
68 |
|
68 |
|
69 |
|
69 |
|
70 |
|
|
|
71 |
|
70 |
|
72 |
|
71 |
|
73 |
|
|
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
|
77 |
|
|
|
78 |
|
|
|
79 |
|
|
|
|
72 |
|
|
|
73 |
|
|
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
|
77 |
|
|
80 |
|
78 |
|
81 |
|
79 |
|
82 |
|
80 |
|
|
|
||
84 |
|
82 |
|
85 |
|
83 |
|
86 |
|
84 |
|
87 |
|
|
|
88 |
|
85 |
|
89 |
|
86 |
|
90 |
|
87 |
|
|
|
||
|
1 |
|
|
|
2 |
|
|
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
|
6 |
|
|
|
7 |
|
|
|
8 |
|
|
|
9 |
|
|
|
10 |
|
|
|
11 |
|
|
|
12 |
|
|
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
|
16 |
|
|
|
17 |
|
|
|
18 |
|
|
|
19 |
|
|
|
20 |
|
|
|
21 |
|
|
|
22 |
|
|
|
23 |
|
|
|
24 |
|
|
|
25 |
|
|
|
26 |
|
|
|
27 |
|
|
|
28 |
|
|
|
29 |
|
|
|
30 |
|
|
|
31 |
|
|
|
32 |
|
|
|
33 |
|
|
|
34 |
|
|
|
35 |
|
|
|
36 |
|
|
|
37 |
|
|
|
38 |
|
|
|
39 |
|
|
|
40 |
|
|
|
41 |
|
|
|
42 |
|
|
|
43 |
|
|
|
44 |
|
|
|
45 |
|
|
|
46 |
|
|
|
47 |
|
|
|
48 |
|
|
|
49 |
|
|
|
50 |
|
|
|
51 |
|
|
|
52 |
|
|
|
53 |
|
|
|
54 |
|
|
|
55 |
|
|
|
56 |
|
|
|
57 |
|
|
|
58 |
|
|
|
59 |
|
|
|
60 |
|
|
|
61 |
|
|
|
62 |
|
|
|
63 |
|
|
|
64 |
|
|
|
65 |
|
|
|
66 |
|
|
|
67 |
|
|
|
68 |
|
|
|
69 |
|
|
|
70 |
|
|
|
71 |
|
|
|
72 |
|
|
|
73 |
|
|
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
|
77 |
|
|
|
78 |
|
|
|
79 |
|
|
|
80 |
|
|
|
81 |
|
|
|
82 |
|
|
|
83 |
|
|
|
84 |
|
|
|
85 |
|
|
|
86 |
|
|
|
87 |
|
|
|
88 |
|
|
|
89 |
|
|
|
90 |
|
|
|
91 |
|
|
|
92 |
|
|
|
93 |
|
|
|
94 |
|
|
|
95 |
|
|
|
96 |
|
|
|
97 |
|
|
|
98 |
|
|
|
99 |
|
|
|
100 |
|
|
|
101 |
|
|
|
102 |
|
|
|
103 |
|
|
|
104 |
|
|
|
105 |
|
|
|
106 |
|
|
|
107 |
|
|
|
108 |
|
|
|
109 |
|
|
|
110 |
|
|
|
111 |
|
|
|
112 |
|
|
|
113 |
|
|
|
114 |
|
|
|
115 |
|
|
|
116 |
|
|
|
117 |
|
|
|
118 |
|
|
|
119 |
|
|
|
120 |
|
|
|
121 |
|
|
|
122 |
|
|
|
123 |
|
|
|
124 |
|
|
|
125 |
|
|
|
126 |
|
|
|
127 |
|
|
|
128 |
|
|
|
129 |
|
|
|
130 |
|
|
|
131 |
|
|
|
132 |
|
|
|
133 |
|
|
|
134 |
|
|
|
135 |
|
|
|
136 |
|
|
|
137 |
|
|
|
138 |
|
|
|
139 |
|
|
|
140 |
|
|
|
141 |
|
|
|
142 |
|
|
|
143 |
|
|
|
144 |
|
|
|
145 |
|
|
|
146 |
|
|
|
147 |
|
|
|
148 |
|
|
|
149 |
|
|
|
150 |
|
|
|
151 |
|
|
|
152 |
|
|
|
153 |
|
|
|
154 |
|
|
|
155 |
|
|
|
156 |
|
|
|
157 |
|
|
|
158 |
|
|
|
159 |
|
|
|
160 |
|
|
|
161 |
|
|
|
162 |
|
|
|
163 |
|
|
|
164 |
|
|
|
165 |
|
|
|
166 |
|
|
|
167 |
|
|
|
168 |
|
|
|
169 |
|
|
|
170 |
|
|
|
171 |
|
|
|
172 |
|
|
|
173 |
|
|
|
174 |
|
|
|
175 |
|
|
|
176 |
|
|
|
177 |
|
|
|
178 |
|
|
|
179 |
|
|
|
180 |
|
|
|
181 |
|
|
|
182 |
|
|
|
183 |
|
|
|
184 |
|
|
|
185 |
|
|
|
186 |
|
|
|
187 |
|
|
|
188 |
|
|
|
189 |
|
|
|
190 |
|
|
|
191 |
|
|
|
192 |
|
|
|
193 |
|
|
|
194 |
|
|
|
195 |
|
|
|
196 |
|
|
|
197 |
|
|
|
198 |
|
|
|
199 |
|
|
|
200 |
|
|
|
201 |
|
|
|
202 |
|
|
|
203 |
|
|
|
204 |
|
|
|
205 |
|
|
|
206 |
|
|
|
207 |
|
|
|
208 |
|
|
|
209 |
|
|
|
210 |
|
|
|
211 |
|
|
|
212 |
|
|
|
213 |
|
|
|
214 |
|
|
|
215 |
|
|
|
216 |
|
|
|
217 |
|
|
|
218 |
|
|
|
219 |
|
|
|
220 |
|
|
|
221 |
|
|
|
222 |
|
|
|
223 |
|
|
|
224 |
|
|
|
225 |
|
|
|
226 |
|
|
|
227 |
|
|
|
228 |
|
|
|
229 |
|
|
|
230 |
|
|
|
231 |
|
|
|
232 |
|
|
|
233 |
|
|
|
234 |
|
|
|
235 |
|
|
|
236 |
|
|
|
237 |
|
|
|
238 |
|
|
|
239 |
|
|
|
240 |
|
|
|
241 |
|
|
|
242 |
|
|
|
243 |
|
|
|
244 |
|
|
|
245 |
|
|
|
246 |
|
|
|
247 |
|
|
|
248 |
|
|
|
249 |
|
|
|
250 |
|
|
|
251 |
|
|
|
252 |
|
|
|
253 |
|
|
|
254 |
|
|
|
255 |
|
|
|
256 |
|
|
|
257 |
|
|
|
258 |
|
|
|
259 |
|
|
|
260 |
|
|
|
261 |
|
|
|
262 |
|
|
|
263 |
|
|
|
264 |
|
|
|
265 |
|
|
|
266 |
|
|
|
267 |
|
|
|
268 |
|
|
|
269 |
|
|
|
270 |
|
|
|
271 |
|
|
|
272 |
|
|
|
273 |
|
|
|
274 |
|
|
|
275 |
|
|
|
276 |
|
|
|
277 |
|
|
|
278 |
|
|
|
279 |
|
|
|
280 |
|
|
|
281 |
|
|
|
282 |
|
|
|
283 |
|
|
|
284 |
|
|
|
285 |
|
|
|
286 |
|
|
|
287 |
|
|
|
288 |
|
|
|
289 |
|
|
|
290 |
|
|
|
291 |
|
|
|
292 |
|
|
|
293 |
|
|
|
294 |
|
|
|
295 |
|
|
|
296 |
|
|
|
297 |
|
|
|
298 |
|
|
|
||
3 |
|
3 |
|
4 |
|
4 |
|
5 |
|
5 |
|
6 |
|
|
|
7 |
|
6 |
|
8 |
|
7 |
|
9 |
|
8 |
|
|
|
||
15 |
|
14 |
|
16 |
|
15 |
|
17 |
|
16 |
|
|
17 |
|
|
|
18 |
|
|
18 |
|
19 |
|
19 |
|
20 |
|
20 |
|
21 |
|
|
|
||
30 |
|
31 |
|
31 |
|
32 |
|
32 |
|
33 |
|
|
34 |
|
|
33 |
|
35 |
|
34 |
|
36 |
|
|
37 |
|
|
35 |
|
38 |
|
36 |
|
39 |
|
37 |
|
40 |
|
|
|
||
73 |
|
76 |
|
74 |
|
77 |
|
75 |
|
78 |
|
76 |
|
|
|
77 |
|
|
|
78 |
|
79 |
|
79 |
|
80 |
|
80 |
|
81 |
|
|
|
||
270 |
|
271 |
|
271 |
|
272 |
|
272 |
|
273 |
|
|
274 |
|
|
|
275 |
|
|
273 |
|
276 |
|
274 |
|
277 |
|
275 |
|
278 |
|
|
|
||
277 |
|
280 |
|
278 |
|
281 |
|
279 |
|
282 |
|
|
283 |
|
|
|
284 |
|
|
280 |
|
285 |
|
281 |
|
286 |
|
282 |
|
287 |
|
|
|
||
285 |
|
290 |
|
286 |
|
291 |
|
287 |
|
292 |
|
288 |
|
|
|
|
293 |
|
|
289 |
|
294 |
|
290 |
|
295 |
|
291 |
|
296 |
|
292 |
|
297 |
|
293 |
|
|
|
|
298 |
|
|
294 |
|
299 |
|
295 |
|
300 |
|
296 |
|
301 |
|
|
|
||
298 |
|
303 |
|
299 |
|
304 |
|
300 |
|
305 |
|
|
306 |
|
|
|
307 |
|
|
301 |
|
308 |
|
302 |
|
309 |
|
303 |
|
310 |
|
|
|
||
379 |
|
386 |
|
380 |
|
387 |
|
381 |
|
388 |
|
382 |
|
|
|
383 |
|
|
|
384 |
|
|
|
385 |
|
|
|
386 |
|
|
|
|
389 |
|
|
387 |
|
390 |
|
388 |
|
|
|
389 |
|
|
|
390 |
|
|
|
391 |
|
|
|
392 |
|
|
|
|
391 |
|
|
|
392 |
|
|
393 |
|
393 |
|
394 |
|
|
|
395 |
|
|
|
396 |
|
|
|
397 |
|
|
|
|
394 |
|
|
|
395 |
|
|
398 |
|
396 |
|
399 |
|
397 |
|
400 |
|
398 |
|
401 |
|
399 |
|
402 |
|
400 |
|
403 |
|
401 |
|
404 |
|
|
|
405 |
|
|
|
406 |
|
|
|
407 |
|
|
|
408 |
|
|
|
409 |
|
|
|
410 |
|
|
|
411 |
|
|
|
412 |
|
|
|
413 |
|
|
|
414 |
|
|
|
415 |
|
|
|
416 |
|
|
|
417 |
|
|
|
418 |
|
|
|
419 |
|
|
|
420 |
|
|
|
421 |
|
|
|
422 |
|
|
|
423 |
|
|
|
424 |
|
|
|
425 |
|
|
|
426 |
|
|
|
427 |
|
|
|
428 |
|
|
|
429 |
|
|
|
430 |
|
|
|
431 |
|
|
|
432 |
|
|
|
433 |
|
|
|
434 |
|
|
|
435 |
|
|
|
436 |
|
|
|
437 |
|
|
|
438 |
|
|
|
439 |
|
|
|
440 |
|
402 |
|
441 |
|
403 |
|
442 |
|
404 |
|
|
|
||
469 |
|
431 |
|
470 |
|
432 |
|
471 |
|
433 |
|
472 |
|
|
|
473 |
|
|
|
474 |
|
|
|
475 |
|
|
|
476 |
|
|
|
477 |
|
|
|
478 |
|
|
|
479 |
|
|
|
480 |
|
|
|
481 |
|
|
|
482 |
|
|
|
483 |
|
|
|
484 |
|
|
|
485 |
|
|
|
486 |
|
|
|
487 |
|
|
|
488 |
|
|
|
489 |
|
|
|
490 |
|
|
|
491 |
|
|
|
492 |
|
|
|
493 |
|
|
|
494 |
|
|
|
495 |
|
|
|
496 |
|
|
|
497 |
|
|
|
498 |
|
|
|
499 |
|
|
|
500 |
|
|
|
501 |
|
|
|
502 |
|
|
|
503 |
|
|
|
504 |
|
|
|
505 |
|
|
|
506 |
|
|
|
507 |
|
|
|
508 |
|
|
|
509 |
|
|
|
510 |
|
|
|
511 |
|
|
|
512 |
|
|
|
513 |
|
|
|
514 |
|
|
|
515 |
|
|
|
516 |
|
|
|
517 |
|
|
|
518 |
|
|
|
519 |
|
|
|
520 |
|
|
|
521 |
|
|
|
522 |
|
434 |
|
523 |
|
435 |
|
524 |
|
436 |
|
|
|
||
527 |
|
439 |
|
528 |
|
440 |
|
529 |
|
441 |
|
530 |
|
|
|
|
442 |
|
|
531 |
|
443 |
|
532 |
|
|
|
533 |
|
|
|
534 |
|
|
|
535 |
|
|
|
536 |
|
|
|
|
444 |
|
|
|
445 |
|
|
537 |
|
446 |
|
538 |
|
|
|
539 |
|
|
|
540 |
|
|
|
541 |
|
|
|
|
447 |
|
|
542 |
|
448 |
|
543 |
|
449 |
|
544 |
|
|
|
545 |
|
|
|
546 |
|
|
|
547 |
|
|
|
548 |
|
|
|
549 |
|
|
|
550 |
|
|
|
551 |
|
|
|
552 |
|
|
|
553 |
|
|
|
554 |
|
|
|
555 |
|
|
|
556 |
|
|
|
557 |
|
|
|
558 |
|
|
|
559 |
|
|
|
560 |
|
|
|
561 |
|
|
|
562 |
|
|
|
563 |
|
|
|
564 |
|
|
|
565 |
|
|
|
566 |
|
|
|
567 |
|
|
|
568 |
|
|
|
569 |
|
|
|
570 |
|
|
|
571 |
|
|
|
572 |
|
|
|
573 |
|
|
|
574 |
|
|
|
575 |
|
|
|
576 |
|
|
|
577 |
|
|
|
578 |
|
|
|
579 |
|
|
|
580 |
|
|
|
581 |
|
|
|
582 |
|
|
|
583 |
|
|
|
584 |
|
|
|
585 |
|
|
|
586 |
|
|
|
587 |
|
|
|
588 |
|
|
|
589 |
|
|
|
590 |
|
|
|
591 |
|
|
|
592 |
|
|
|
593 |
|
|
|
594 |
|
|
|
595 |
|
|
|
|
450 |
|
|
|
451 |
|
|
|
452 |
|
|
596 |
|
453 |
|
597 |
|
|
|
598 |
|
|
|
599 |
|
|
|
600 |
|
|
|
601 |
|
|
|
602 |
|
|
|
603 |
|
|
|
604 |
|
|
|
|
454 |
|
|
605 |
|
455 |
|
606 |
|
456 |
|
607 |
|
457 |
|
|
|
||
762 |
|
612 |
|
763 |
|
613 |
|
764 |
|
614 |
|
765 |
|
|
|
766 |
|
|
|
|
615 |
|
|
|
616 |
|
|
|
617 |
|
|
|
618 |
|
|
767 |
|
619 |
|
768 |
|
620 |
|
769 |
|
|
|
|
621 |
|
|
|
622 |
|
|
770 |
|
623 |
|
771 |
|
|
|
772 |
|
|
|
|
624 |
|
|
773 |
|
625 |
|
|
626 |
|
|
|
627 |
|
|
774 |
|
628 |
|
775 |
|
629 |
|
776 |
|
630 |
|
|
|
||
779 |
|
633 |
|
780 |
|
634 |
|
781 |
|
635 |
|
|
636 |
|
|
782 |
|
637 |
|
783 |
|
|
|
784 |
|
|
|
785 |
|
|
|
|
638 |
|
|
|
639 |
|
|
786 |
|
640 |
|
787 |
|
|
|
788 |
|
|
|
789 |
|
|
|
790 |
|
|
|
|
641 |
|
|
|
642 |
|
|
|
643 |
|
|
|
644 |
|
|
|
645 |
|
|
|
646 |
|
|
|
647 |
|
|
|
648 |
|
|
|
649 |
|
|
|
650 |
|
|
|
651 |
|
|
|
652 |
|
|
791 |
|
653 |
|
792 |
|
|
|
|
654 |
|
|
|
655 |
|
|
|
656 |
|
|
|
657 |
|
|
|
658 |
|
|
|
659 |
|
|
793 |
|
660 |
|
|
661 |
|
|
|
662 |
|
|
|
663 |
|
|
794 |
|
664 |
|
795 |
|
|
|
|
665 |
|
|
796 |
|
666 |
|
797 |
|
667 |
|
798 |
|
668 |
|
|
|
||
801 |
|
671 |
|
802 |
|
672 |
|
803 |
|
673 |
|
|
674 |
|
|
804 |
|
675 |
|
805 |
|
|
|
806 |
|
|
|
|
676 |
|
|
|
677 |
|
|
807 |
|
678 |
|
808 |
|
679 |
|
809 |
|
|
|
810 |
|
|
|
811 |
|
|
|
812 |
|
|
|
813 |
|
|
|
814 |
|
|
|
815 |
|
|
|
816 |
|
|
|
817 |
|
|
|
818 |
|
|
|
819 |
|
|
|
820 |
|
|
|
|
680 |
|
|
|
681 |
|
|
821 |
|
682 |
|
822 |
|
|
|
823 |
|
|
|
824 |
|
|
|
825 |
|
|
|
826 |
|
|
|
827 |
|
|
|
828 |
|
|
|
829 |
|
|
|
830 |
|
|
|
831 |
|
|
|
832 |
|
|
|
833 |
|
|
|
834 |
|
|
|
835 |
|
|
|
836 |
|
|
|
837 |
|
|
|
|
683 |
|
|
838 |
|
684 |
|
839 |
|
685 |
|
840 |
|
686 |
|
|
|
||
24 |
|
24 |
|
25 |
|
25 |
|
26 |
|
26 |
|
|
27 |
|
|
|
28 |
|
|
|
29 |
|
|
|
30 |
|
|
|
31 |
|
|
|
32 |
|
|
|
33 |
|
|
|
34 |
|
|
|
35 |
|
|
|
36 |
|
|
|
37 |
|
|
27 |
|
38 |
|
28 |
|
39 |
|
29 |
|
40 |
|
|
|
||
102 |
|
113 |
|
103 |
|
114 |
|
104 |
|
115 |
|
|
116 |
|
|
|
117 |
|
|
|
118 |
|
|
|
119 |
|
|
|
120 |
|
|
|
121 |
|
|
|
122 |
|
|
|
123 |
|
|
|
124 |
|
|
105 |
|
125 |
|
106 |
|
126 |
|
107 |
|
127 |
|
|
|
||
214 |
|
214 |
|
215 |
|
215 |
|
216 |
|
216 |
|
217 |
|
|
|
218 |
|
|
|
|
217 |
|
|
|
218 |
|
|
219 |
|
219 |
|
220 |
|
220 |
|
221 |
|
221 |
|
|
|
||
101 |
|
101 |
|
102 |
|
102 |
|
103 |
|
103 |
|
|
104 |
|
|
|
105 |
|
|
|
106 |
|
|
|
107 |
|
|
104 |
|
108 |
|
105 |
|
109 |
|
106 |
|
110 |
|
|
|
||
159 |
|
163 |
|
160 |
|
164 |
|
161 |
|
165 |
|
162 |
|
|
|
|
166 |
|
|
|
167 |
|
|
|
168 |
|
|
|
169 |
|
|
|
170 |
|
|
|
171 |
|
|
163 |
|
172 |
|
164 |
|
173 |
|
165 |
|
|
|
|
174 |
|
|
166 |
|
175 |
|
167 |
|
176 |
|
168 |
|
177 |
|
|
|
||
321 |
|
330 |
|
322 |
|
331 |
|
323 |
|
332 |
|
|
333 |
|
|
|
334 |
|
|
|
335 |
|
|
|
336 |
|
|
|
337 |
|
|
|
338 |
|
|
|
339 |
|
|
|
340 |
|
|
|
341 |
|
|
|
342 |
|
|
|
343 |
|
|
|
344 |
|
|
|
345 |
|
|
324 |
|
346 |
|
325 |
|
347 |
|
326 |
|
348 |
|
|
|
||
348 |
|
370 |
|
349 |
|
371 |
|
350 |
|
372 |
|
351 |
|
|
|
352 |
|
|
|
353 |
|
|
|
|
373 |
|
|
|
374 |
|
|
|
375 |
|
|
|
376 |
|
|
|
377 |
|
|
|
378 |
|
|
354 |
|
379 |
|
355 |
|
380 |
|
356 |
|
381 |
|
|
|
||
473 |
|
473 |
|
474 |
|
474 |
|
475 |
|
475 |
|
476 |
|
|
|
477 |
|
|
|
478 |
|
|
|
479 |
|
|
|
|
476 |
|
|
|
477 |
|
|
|
478 |
|
|
|
479 |
|
|
|
480 |
|
|
480 |
|
481 |
|
481 |
|
|
|
|
482 |
|
|
|
483 |
|
|
|
484 |
|
|
482 |
|
485 |
|
483 |
|
486 |
|
484 |
|
487 |
|
|
|
||
495 |
|
498 |
|
496 |
|
499 |
|
497 |
|
500 |
|
498 |
|
|
|
|
501 |
|
|
|
502 |
|
|
499 |
|
503 |
|
500 |
|
504 |
|
501 |
|
505 |
|
|
|
||
661 |
|
665 |
|
662 |
|
666 |
|
663 |
|
667 |
|
664 |
|
|
|
|
668 |
|
|
|
669 |
|
|
665 |
|
670 |
|
666 |
|
671 |
|
667 |
|
672 |
|
|
|
||
534 |
|
534 |
|
535 |
|
535 |
|
536 |
|
536 |
|
537 |
|
|
|
|
537 |
|
|
538 |
|
538 |
|
539 |
|
539 |
|
540 |
|
|
|
|
540 |
|
|
541 |
|
541 |
|
542 |
|
542 |
|
543 |
|
|
|
544 |
|
|
|
|
543 |
|
|
|
544 |
|
|
|
545 |
|
|
|
546 |
|
|
545 |
|
547 |
|
546 |
|
548 |
|
547 |
|
549 |
|
|
|
||
890 |
|
892 |
|
891 |
|
893 |
|
892 |
|
894 |
|
893 |
|
|
|
|
895 |
|
|
|
896 |
|
|
|
897 |
|
|
|
898 |
|
|
|
899 |
|
|
|
900 |
|
|
|
901 |
|
|
|
902 |
|
|
|
903 |
|
|
|
904 |
|
|
|
905 |
|
|
|
906 |
|
|
|
907 |
|
|
|
908 |
|
|
894 |
|
909 |
|
895 |
|
910 |
|
896 |
|
911 |
|
897 |
|
912 |
|
898 |
|
913 |
|
|
914 |
|
|
899 |
|
915 |
|
900 |
|
|
|
901 |
|
|
|
|
916 |
|
|
|
917 |
|
|
|
918 |
|
|
|
919 |
|
|
|
920 |
|
|
|
921 |
|
|
|
922 |
|
|
|
923 |
|
|
|
924 |
|
|
|
925 |
|
|
902 |
|
926 |
|
903 |
|
927 |
|
904 |
|
928 |
|
|
|
||
953 |
|
977 |
|
954 |
|
978 |
|
955 |
|
979 |
|
956 |
|
|
|
|
980 |
|
|
957 |
|
981 |
|
958 |
|
982 |
|
959 |
|
983 |
|
|
|
||
120 |
|
120 |
|
121 |
|
121 |
|
122 |
|
122 |
|
|
123 |
|
|
|
124 |
|
|
|
125 |
|
|
|
126 |
|
|
|
127 |
|
|
|
128 |
|
|
|
129 |
|
|
|
130 |
|
|
|
131 |
|
|
|
132 |
|
|
|
133 |
|
|
|
134 |
|
|
|
135 |
|
|
123 |
|
136 |
|
124 |
|
|
|
|
137 |
|
|
125 |
|
138 |
|
126 |
|
139 |
|
127 |
|
140 |
|
128 |
|
|
|
|
141 |
|
|
129 |
|
142 |
|
130 |
|
143 |
|
131 |
|
144 |
|
132 |
|
145 |
|
133 |
|
|
|
|
146 |
|
|
134 |
|
147 |
|
135 |
|
148 |
|
136 |
|
149 |
|
|
|
||
179 |
|
192 |
|
180 |
|
193 |
|
181 |
|
194 |
|
182 |
|
|
|
|
195 |
|
|
|
196 |
|
|
|
197 |
|
|
183 |
|
198 |
|
184 |
|
199 |
|
185 |
|
200 |
|
|
|
||
92 |
|
92 |
|
93 |
|
93 |
|
94 |
|
94 |
|
95 |
|
|
|
96 |
|
|
|
|
95 |
|
|
97 |
|
96 |
|
98 |
|
97 |
|
99 |
|
98 |
|
|
|
||
546 |
|
546 |
|
547 |
|
547 |
|
548 |
|
548 |
|
|
549 |
|
|
|
550 |
|
|
|
551 |
|
|
|
552 |
|
|
|
553 |
|
|
|
554 |
|
|
|
555 |
|
|
|
556 |
|
|
|
557 |
|
|
|
558 |
|
|
|
559 |
|
|
|
560 |
|
|
|
561 |
|
|
|
562 |
|
|
549 |
|
563 |
|
550 |
|
564 |
|
551 |
|
565 |
|
|
|
||
21 |
|
21 |
|
22 |
|
22 |
|
23 |
|
23 |
|
24 |
|
|
|
|
24 |
|
|
|
25 |
|
|
|
26 |
|
|
|
27 |
|
|
|
28 |
|
|
|
29 |
|
|
|
30 |
|
|
25 |
|
31 |
|
26 |
|
32 |
|
27 |
|
33 |
|
28 |
|
|
|
|
34 |
|
|
29 |
|
35 |
|
30 |
|
36 |
|
31 |
|
37 |
|
32 |
|
|
|
|
38 |
|
|
33 |
|
39 |
|
34 |
|
40 |
|
35 |
|
41 |
|
|
|
||
120 |
|
126 |
|
121 |
|
127 |
|
122 |
|
128 |
|
|
129 |
|
|
|
130 |
|
|
|
131 |
|
|
|
132 |
|
|
|
133 |
|
|
|
134 |
|
|
|
135 |
|
|
|
136 |
|
|
|
137 |
|
|
|
138 |
|
|
|
139 |
|
|
|
140 |
|
|
|
141 |
|
|
|
142 |
|
|
|
143 |
|
|
|
144 |
|
|
|
145 |
|
|
|
146 |
|
|
|
147 |
|
|
|
148 |
|
|
|
149 |
|
|
|
150 |
|
|
|
151 |
|
|
|
152 |
|
|
|
153 |
|
|
|
154 |
|
|
|
155 |
|
|
|
156 |
|
|
|
157 |
|
|
|
158 |
|
|
|
159 |
|
|
|
160 |
|
|
|
161 |
|
|
|
162 |
|
|
|
163 |
|
|
|
164 |
|
|
|
165 |
|
|
|
166 |
|
|
|
167 |
|
|
|
168 |
|
|
|
169 |
|
|
|
170 |
|
|
|
171 |
|
|
|
172 |
|
|
|
173 |
|
|
|
174 |
|
|
|
175 |
|
|
|
176 |
|
|
123 |
|
177 |
|
|
|
||
54 |
|
54 |
|
55 |
|
55 |
|
56 |
|
56 |
|
|
57 |
|
|
|
58 |
|
|
57 |
|
59 |
|
|
60 |
|
|
|
61 |
|
|
58 |
|
62 |
|
59 |
|
|
|
|
63 |
|
|
60 |
|
64 |
|
61 |
|
65 |
|
62 |
|
66 |
|
|
|
||
64 |
|
68 |
|
65 |
|
69 |
|
66 |
|
70 |
|
|
71 |
|
|
|
72 |
|
|
|
73 |
|
|
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
|
77 |
|
|
|
78 |
|
|
|
79 |
|
|
|
80 |
|
|
67 |
|
81 |
|
68 |
|
82 |
|
69 |
|
83 |
|
|
|
||
110 |
|
124 |
|
111 |
|
125 |
|
112 |
|
126 |
|
113 |
|
|
|
|
127 |
|
|
114 |
|
128 |
|
115 |
|
129 |
|
116 |
|
130 |
|
|
|
||
138 |
|
152 |
|
139 |
|
153 |
|
140 |
|
154 |
|
141 |
|
|
|
|
155 |
|
|
142 |
|
156 |
|
143 |
|
157 |
|
144 |
|
158 |
|
|
|
||
179 |
|
193 |
|
180 |
|
194 |
|
181 |
|
195 |
|
|
196 |
|
|
|
197 |
|
|
|
198 |
|
|
|
199 |
|
|
|
200 |
|
|
|
201 |
|
|
|
202 |
|
|
|
203 |
|
|
|
204 |
|
|
|
205 |
|
|
|
206 |
|
|
|
207 |
|
|
182 |
|
208 |
|
183 |
|
209 |
|
184 |
|
210 |
|
|
|
||
212 |
|
238 |
|
213 |
|
239 |
|
214 |
|
240 |
|
215 |
|
|
|
|
241 |
|
|
216 |
|
242 |
|
217 |
|
243 |
|
218 |
|
244 |
|
|
|
||
252 |
|
278 |
|
253 |
|
279 |
|
254 |
|
280 |
|
255 |
|
|
|
|
281 |
|
|
256 |
|
282 |
|
257 |
|
283 |
|
258 |
|
284 |
|
|
|
||
|
1 |
|
|
|
2 |
|
|
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
|
6 |
|
|
|
7 |
|
|
|
8 |
|
|
|
9 |
|
|
|
10 |
|
|
|
11 |
|
|
|
12 |
|
|
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
|
16 |
|
|
|
17 |
|
|
|
18 |
|
|
|
19 |
|
|
|
20 |
|
|
|
21 |
|
|
|
22 |
|
|
|
23 |
|
|
|
24 |
|
|
|
25 |
|
|
|
26 |
|
|
|
27 |
|
|
|
28 |
|
|
|
29 |
|
|
|
30 |
|
|
|
31 |
|
|
|
32 |
|
|
|
33 |
|
|
|
34 |
|
|
|
35 |
|
|
|
36 |
|
|
|
37 |
|
|
|
38 |
|
|
|
39 |
|
|
|
40 |
|
|
|
41 |
|
|
|
42 |
|
|
|
43 |
|
|
|
44 |
|
|
|
45 |
|
|
|
46 |
|
|
|
47 |
|
|
|
48 |
|
|
|
49 |
|
|
|
50 |
|
|
|
51 |
|
|
|
52 |
|
|
|
53 |
|
|
|
54 |
|
|
|
55 |
|
|
|
56 |
|
|
|
57 |
|
|
|
58 |
|
|
|
59 |
|
|
|
60 |
|
|
|
61 |
|
|
|
62 |
|
|
|
63 |
|
|
|
64 |
|
|
|
65 |
|
|
|
66 |
|
|
|
67 |
|
|
|
68 |
|
|
|
69 |
|
|
|
70 |
|
|
|
71 |
|
|
|
72 |
|
|
|
73 |
|
|
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
|
77 |
|
|
|
78 |
|
|
|
79 |
|
|
|
80 |
|
|
|
81 |
|
|
|
82 |
|
|
|
83 |
|
|
|
84 |
|
|
|
85 |
|
|
|
86 |
|
|
|
87 |
|
|
|
88 |
|
|
|
89 |
|
|
|
90 |
|
|
|
91 |
|
|
|
92 |
|
|
|
93 |
|
|
|
94 |
|
|
|
95 |
|
|
|
96 |
|
|
|
97 |
|
|
|
98 |
|
|
|
99 |
|
|
|
100 |
|
|
|
101 |
|
|
|
102 |
|
|
|
103 |
|
|
|
104 |
|
|
|
||
1 |
|
|
|
|
1 |
|
|
2 |
|
2 |
|
3 |
|
3 |
|
4 |
|
4 |
|
5 |
|
5 |
|
6 |
|
6 |
|
|
7 |
|
|
7 |
|
8 |
|
8 |
|
9 |
|
|
10 |
|
|
9 |
|
11 |
|
10 |
|
12 |
|
11 |
|
13 |
|
|
|
||
18 |
|
20 |
|
19 |
|
21 |
|
20 |
|
22 |
|
21 |
|
|
|
22 |
|
|
|
23 |
|
|
|
|
23 |
|
|
|
24 |
|
|
|
25 |
|
|
|
26 |
|
|
|
27 |
|
|
|
28 |
|
|
24 |
|
29 |
|
25 |
|
|
|
|
30 |
|
|
26 |
|
31 |
|
27 |
|
32 |
|
28 |
|
33 |
|
29 |
|
34 |
|
30 |
|
|
|
|
35 |
|
|
|
36 |
|
|
|
37 |
|
|
|
38 |
|
|
|
39 |
|
|
|
40 |
|
|
31 |
|
41 |
|
32 |
|
42 |
|
33 |
|
43 |
|
|
|
||
128 |
|
138 |
|
129 |
|
139 |
|
130 |
|
140 |
|
131 |
|
|
|
|
141 |
|
|
132 |
|
142 |
|
|
143 |
|
|
|
144 |
|
|
|
145 |
|
|
|
146 |
|
|
|
147 |
|
|
|
148 |
|
|
|
149 |
|
|
|
150 |
|
|
|
151 |
|
|
133 |
|
152 |
|
134 |
|
153 |
|
135 |
|
154 |
|
136 |
|
155 |
|
137 |
|
156 |
|
138 |
|
157 |
|
139 |
|
|
|
|
158 |
|
|
|
159 |
|
|
|
160 |
|
|
|
161 |
|
|
140 |
|
162 |
|
141 |
|
163 |
|
142 |
|
164 |
|
|
|
||
146 |
|
168 |
|
147 |
|
169 |
|
148 |
|
170 |
|
|
171 |
|
|
|
172 |
|
|
|
173 |
|
|
|
174 |
|
|
|
175 |
|
|
|
176 |
|
|
|
177 |
|
|
|
178 |
|
|
|
179 |
|
|
|
180 |
|
|
149 |
|
181 |
|
150 |
|
182 |
|
151 |
|
183 |
|
|
|
||
156 |
|
188 |
|
157 |
|
189 |
|
158 |
|
190 |
|
|
191 |
|
|
159 |
|
192 |
|
160 |
|
193 |
|
161 |
|
|
|
|
194 |
|
|
162 |
|
195 |
|
163 |
|
196 |
|
164 |
|
197 |
|
|
|
||
202 |
|
235 |
|
203 |
|
236 |
|
204 |
|
237 |
|
|
238 |
|
|
|
239 |
|
|
|
240 |
|
|
|
241 |
|
|
|
242 |
|
|
|
243 |
|
|
|
244 |
|
|
|
245 |
|
|
|
246 |
|
|
|
247 |
|
|
|
248 |
|
|
|
249 |
|
|
|
250 |
|
|
|
251 |
|
|
|
252 |
|
|
|
253 |
|
|
|
254 |
|
|
|
255 |
|
|
|
256 |
|
|
|
257 |
|
|
|
258 |
|
|
|
259 |
|
|
|
260 |
|
|
|
261 |
|
|
|
262 |
|
|
205 |
|
263 |
|
206 |
|
264 |
|
207 |
|
265 |
|
|
|
||
296 |
|
354 |
|
297 |
|
355 |
|
298 |
|
356 |
|
299 |
|
|
|
|
357 |
|
|
300 |
|
358 |
|
301 |
|
359 |
|
302 |
|
360 |
|
|
|
||
331 |
|
389 |
|
332 |
|
390 |
|
333 |
|
391 |
|
334 |
|
|
|
|
392 |
|
|
335 |
|
393 |
|
336 |
|
394 |
|
337 |
|
|
|
|
395 |
|
|
338 |
|
396 |
|
|
|
||
36 |
|
36 |
|
37 |
|
37 |
|
38 |
|
38 |
|
39 |
|
|
|
40 |
|
|
|
|
39 |
|
|
|
40 |
|
|
|
41 |
|
|
|
42 |
|
|
41 |
|
43 |
|
42 |
|
44 |
|
43 |
|
45 |
|
|
|
||
442 |
|
444 |
|
443 |
|
445 |
|
444 |
|
446 |
|
445 |
|
|
|
|
447 |
|
|
446 |
|
448 |
|
447 |
|
449 |
|
448 |
|
450 |
|
|
|
||
10 |
|
10 |
|
11 |
|
11 |
|
12 |
|
12 |
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
|
16 |
|
|
|
17 |
|
|
|
18 |
|
|
|
19 |
|
13 |
|
20 |
|
14 |
|
21 |
|
15 |
|
|
|
||
26 |
|
20 |
|
27 |
|
21 |
|
28 |
|
22 |
|
29 |
|
|
|
30 |
|
|
|
31 |
|
|
|
32 |
|
|
|
33 |
|
|
|
34 |
|
|
|
35 |
|
|
|
36 |
|
|
|
|
23 |
|
|
37 |
|
24 |
|
38 |
|
25 |
|
39 |
|
26 |
|
|
|
||
43 |
|
30 |
|
44 |
|
31 |
|
45 |
|
32 |
|
46 |
|
|
|
47 |
|
|
|
48 |
|
|
|
|
33 |
|
|
49 |
|
34 |
|
50 |
|
35 |
|
51 |
|
36 |
|
|
|
||
70 |
|
55 |
|
71 |
|
56 |
|
72 |
|
57 |
|
73 |
|
|
|
74 |
|
|
|
|
58 |
|
|
|
59 |
|
|
|
60 |
|
|
|
61 |
|
|
|
62 |
|
|
|
63 |
|
|
|
64 |
|
|
|
65 |
|
|
|
66 |
|
|
|
67 |
|
|
|
68 |
|
|
|
69 |
|
|
|
70 |
|
|
|
71 |
|
|
|
72 |
|
|
|
73 |
|
|
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
75 |
|
77 |
|
76 |
|
78 |
|
77 |
|
79 |
|
|
|
||
|
1 |
|
|
|
2 |
|
|
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
|
6 |
|
|
|
7 |
|
|
|
8 |
|
|
|
9 |
|
|
|
10 |
|
|
|
11 |
|
|
|
12 |
|
|
|
13 |
|
|
|
14 |
|
|
|
||
1 |
|
1 |
|
|
2 |
|
|
|
3 |
|
|
2 |
|
4 |
|
3 |
|
5 |
|
4 |
|
|
|
|
6 |
|
|
5 |
|
7 |
|
6 |
|
8 |
|
7 |
|
9 |
|
8 |
|
10 |
|
9 |
|
11 |
|
10 |
|
12 |
|
11 |
|
|
|
|
13 |
|
|
12 |
|
14 |
|
13 |
|
15 |
|
14 |
|
16 |
|
15 |
|
17 |
|
16 |
|
|
|
|
18 |
|
|
17 |
|
19 |
|
18 |
|
20 |
|
19 |
|
21 |
|
|
|
||
10 |
|
10 |
|
11 |
|
11 |
|
12 |
|
12 |
|
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
|
16 |
|
|
|
17 |
|
|
13 |
|
18 |
|
14 |
|
19 |
|
15 |
|
20 |
|
|
|
||
22 |
|
27 |
|
23 |
|
28 |
|
24 |
|
29 |
|
|
30 |
|
|
|
31 |
|
|
|
32 |
|
|
|
33 |
|
|
|
34 |
|
|
25 |
|
35 |
|
26 |
|
36 |
|
27 |
|
37 |
|
|
|
||
181 |
|
191 |
|
182 |
|
192 |
|
183 |
|
193 |
|
|
194 |
|
|
184 |
|
195 |
|
185 |
|
196 |
|
186 |
|
197 |
|
187 |
|
|
|
188 |
|
|
|
189 |
|
|
|
190 |
|
|
|
191 |
|
|
|
192 |
|
|
|
193 |
|
|
|
|
198 |
|
|
|
199 |
|
|
|
200 |
|
|
|
201 |
|
|
194 |
|
202 |
|
195 |
|
203 |
|
196 |
|
204 |
|