File name: /usr/libexec/gnome-shell-portal-helper
File size: 30.2 KiB (30880 B)
Object class: 64-bit
Data encoding: Little endian
ABI: SysV
Type: Shared object file (DYN)
Architecture: x86-64
Entrypoint: 0x1350
Program headers: 13 * 56 @ 64
Section headers: 29 * 64 @ 29024
0
10
20
30
40
50
60
70
80
90
a0
b0
c0
d0
e0
f0
100
110
120
130
140
150
160
170
180
190
1a0
1b0
1c0
1d0
1e0
1f0
200
210
220
230
240
250
260
270
280
290
2a0
2b0
2c0
2d0
2e0
2f0
300
310
320
330
340
350
360
370
380
390
3a0
3b0
3c0
3d0
3e0
3f0
400
410
420
430
440
450
460
470
480
490
4a0
4b0
4c0
4d0
4e0
4f0
500
510
520
530
540
550
560
570
580
590
5a0
5b0
5c0
5d0
5e0
5f0
600
610
620
630
640
650
660
670
680
690
6a0
6b0
6c0
6d0
6e0
6f0
700
710
720
730
740
750
760
770
780
790
7a0
7b0
7c0
7d0
7e0
7f0
800
810
820
830
840
850
860
870
880
890
8a0
8b0
8c0
8d0
8e0
8f0
900
910
920
930
940
950
960
970
980
990
9a0
9b0
9c0
9d0
9e0
9f0
a00
a10
a20
a30
a40
a50
a60
a70
a80
a90
aa0
ab0
ac0
ad0
ae0
af0
b00
b10
b20
b30
b40
b50
b60
b70
b80
b90
ba0
bb0
bc0
bd0
be0
bf0
c00
c10
c20
c30
c40
c50
c60
c70
c80
c90
ca0
cb0
cc0
cd0
ce0
cf0
d00
d10
d20
d30
d40
d50
d60
d70
d80
d90
da0
db0
dc0
dd0
de0
df0
e00
e10
e20
e30
e40
e50
e60
e70
e80
e90
ea0
eb0
ec0
ed0
ee0
ef0
f00
f10
f20
f30
f40
f50
f60
f70
f80
f90
fa0
fb0
fc0
fd0
fe0
ff0
1000
1010
1020
1030
1040
1050
1060
1070
1080
1090
10a0
10b0
10c0
10d0
10e0
10f0
1100
1110
1120
1130
1140
1150
1160
1170
1180
1190
11a0
11b0
11c0
11d0
11e0
11f0
1200
1210
1220
1230
1240
1250
1260
1270
1280
1290
12a0
12b0
12c0
12d0
12e0
12f0
1300
1310
1320
1330
1340
1350
1360
1370
1380
1390
13a0
13b0
13c0
13d0
13e0
13f0
1400
1410
1420
1430
1440
1450
1460
1470
1480
1490
14a0
14b0
14c0
14d0
14e0
14f0
1500
1510
1520
1530
1540
1550
1560
1570
1580
1590
15a0
15b0
15c0
15d0
15e0
15f0
1600
1610
1620
1630
1640
1650
1660
1670
1680
1690
16a0
16b0
16c0
16d0
16e0
16f0
1700
1710
1720
1730
1740
1750
1760
1770
1780
1790
17a0
17b0
17c0
17d0
17e0
17f0
1800
1810
1820
1830
1840
1850
1860
1870
1880
1890
18a0
18b0
18c0
18d0
18e0
18f0
1900
1910
1920
1930
1940
1950
1960
1970
1980
1990
19a0
19b0
19c0
19d0
19e0
19f0
1a00
1a10
1a20
1a30
1a40
1a50
1a60
1a70
1a80
1a90
1aa0
1ab0
1ac0
1ad0
1ae0
1af0
1b00
1b10
1b20
1b30
1b40
1b50
1b60
1b70
1b80
1b90
1ba0
1bb0
1bc0
1bd0
1be0
1bf0
1c00
1c10
1c20
1c30
1c40
1c50
1c60
1c70
1c80
1c90
1ca0
1cb0
1cc0
1cd0
1ce0
1cf0
1d00
1d10
1d20
1d30
1d40
1d50
1d60
1d70
1d80
1d90
1da0
1db0
1dc0
1dd0
1de0
1df0
1e00
1e10
1e20
1e30
1e40
1e50
1e60
1e70
1e80
1e90
1ea0
1eb0
1ec0
1ed0
1ee0
1ef0
1f00
1f10
1f20
1f30
1f40
1f50
1f60
1f70
1f80
1f90
1fa0
1fb0
1fc0
1fd0
1fe0
1ff0
2000
2010
2020
2030
2040
2050
2060
2070
2080
2090
20a0
20b0
20c0
20d0
20e0
20f0
2100
2110
2120
2130
2140
2150
2160
2170
2180
2190
21a0
21b0
21c0
21d0
21e0
21f0
2200
2210
2220
2230
2240
2250
2260
2270
2280
2290
22a0
22b0
22c0
22d0
22e0
22f0
2300
2310
2320
2330
2340
2350
2360
2370
2380
2390
23a0
23b0
23c0
23d0
23e0
23f0
2400
2410
2420
2430
2440
2450
2460
2470
2480
2490
24a0
24b0
24c0
24d0
24e0
24f0
2500
2510
2520
2530
2540
2550
2560
2570
2580
2590
25a0
25b0
25c0
25d0
25e0
25f0
2600
2610
2620
2630
2640
2650
2660
2670
2680
2690
26a0
26b0
26c0
26d0
26e0
26f0
2700
2710
2720
2730
2740
2750
2760
2770
2780
2790
27a0
27b0
27c0
27d0
27e0
27f0
2800
2810
2820
2830
2840
2850
2860
2870
2880
2890
28a0
28b0
28c0
28d0
28e0
28f0
2900
2910
2920
2930
2940
2950
2960
2970
2980
2990
29a0
29b0
29c0
29d0
29e0
29f0
2a00
2a10
2a20
2a30
2a40
2a50
2a60
2a70
2a80
2a90
2aa0
2ab0
2ac0
2ad0
2ae0
2af0
2b00
2b10
2b20
2b30
2b40
2b50
2b60
2b70
2b80
2b90
2ba0
2bb0
2bc0
2bd0
2be0
2bf0
2c00
2c10
2c20
2c30
2c40
2c50
2c60
2c70
2c80
2c90
2ca0
2cb0
2cc0
2cd0
2ce0
2cf0
2d00
2d10
2d20
2d30
2d40
2d50
2d60
2d70
2d80
2d90
2da0
2db0
2dc0
2dd0
2de0
2df0
2e00
2e10
2e20
2e30
2e40
2e50
2e60
2e70
2e80
2e90
2ea0
2eb0
2ec0
2ed0
2ee0
2ef0
2f00
2f10
2f20
2f30
2f40
2f50
2f60
2f70
2f80
2f90
2fa0
2fb0
2fc0
2fd0
2fe0
2ff0
3000
3010
3020
3030
3040
3050
3060
3070
3080
3090
30a0
30b0
30c0
30d0
30e0
30f0
3100
3110
3120
3130
3140
3150
3160
3170
3180
3190
31a0
31b0
31c0
31d0
31e0
31f0
3200
3210
3220
3230
3240
3250
3260
3270
3280
3290
32a0
32b0
32c0
32d0
32e0
32f0
3300
3310
3320
3330
3340
3350
3360
3370
3380
3390
33a0
33b0
33c0
33d0
33e0
33f0
3400
3410
3420
3430
3440
3450
3460
3470
3480
3490
34a0
34b0
34c0
34d0
34e0
34f0
3500
3510
3520
3530
3540
3550
3560
3570
3580
3590
35a0
35b0
35c0
35d0
35e0
35f0
3600
3610
3620
3630
3640
3650
3660
3670
3680
3690
36a0
36b0
36c0
36d0
36e0
36f0
3700
3710
3720
3730
3740
3750
3760
3770
3780
3790
37a0
37b0
37c0
37d0
37e0
37f0
3800
3810
3820
3830
3840
3850
3860
3870
3880
3890
38a0
38b0
38c0
38d0
38e0
38f0
3900
3910
3920
3930
3940
3950
3960
3970
3980
3990
39a0
39b0
39c0
39d0
39e0
39f0
3a00
3a10
3a20
3a30
3a40
3a50
3a60
3a70
3a80
3a90
3aa0
3ab0
3ac0
3ad0
3ae0
3af0
3b00
3b10
3b20
3b30
3b40
3b50
3b60
3b70
3b80
3b90
3ba0
3bb0
3bc0
3bd0
3be0
3bf0
3c00
3c10
3c20
3c30
3c40
3c50
3c60
3c70
3c80
3c90
3ca0
3cb0
3cc0
3cd0
3ce0
3cf0
3d00
3d10
3d20
3d30
3d40
3d50
3d60
3d70
3d80
3d90
3da0
3db0
3dc0
3dd0
3de0
3df0
3e00
3e10
3e20
3e30
3e40
3e50
3e60
3e70
3e80
3e90
3ea0
3eb0
3ec0
3ed0
3ee0
3ef0
3f00
3f10
3f20
3f30
3f40
3f50
3f60
3f70
3f80
3f90
3fa0
3fb0
3fc0
3fd0
3fe0
3ff0
4000
4010
4020
4030
4040
4050
4060
4070
4080
4090
40a0
40b0
40c0
40d0
40e0
40f0
4100
4110
4120
4130
4140
4150
4160
4170
4180
4190
41a0
41b0
41c0
41d0
41e0
41f0
4200
4210
4220
4230
4240
4250
4260
4270
4280
4290
42a0
42b0
42c0
42d0
42e0
42f0
4300
4310
4320
4330
4340
4350
4360
4370
4380
4390
43a0
43b0
43c0
43d0
43e0
43f0
4400
4410
4420
4430
4440
4450
4460
4470
4480
4490
44a0
44b0
44c0
44d0
44e0
44f0
4500
4510
4520
4530
4540
4550
4560
4570
4580
4590
45a0
45b0
45c0
45d0
45e0
45f0
4600
4610
4620
4630
4640
4650
4660
4670
4680
4690
46a0
46b0
46c0
46d0
46e0
46f0
4700
4710
4720
4730
4740
4750
4760
4770
4780
4790
47a0
47b0
47c0
47d0
47e0
47f0
4800
4810
4820
4830
4840
4850
4860
4870
4880
4890
48a0
48b0
48c0
48d0
48e0
48f0
4900
4910
4920
4930
4940
4950
4960
4970
4980
4990
49a0
49b0
49c0
49d0
49e0
49f0
4a00
4a10
4a20
4a30
4a40
4a50
4a60
4a70
4a80
4a90
4aa0
4ab0
4ac0
4ad0
4ae0
4af0
4b00
4b10
4b20
4b30
4b40
4b50
4b60
4b70
4b80
4b90
4ba0
4bb0
4bc0
4bd0
4be0
4bf0
4c00
4c10
4c20
4c30
4c40
4c50
4c60
4c70
4c80
4c90
4ca0
4cb0
4cc0
4cd0
4ce0
4cf0
4d00
4d10
4d20
4d30
4d40
4d50
4d60
4d70
4d80
4d90
4da0
4db0
4dc0
4dd0
4de0
4df0
4e00
4e10
4e20
4e30
4e40
4e50
4e60
4e70
4e80
4e90
4ea0
4eb0
4ec0
4ed0
4ee0
4ef0
4f00
4f10
4f20
4f30
4f40
4f50
4f60
4f70
4f80
4f90
4fa0
4fb0
4fc0
4fd0
4fe0
4ff0
5000
5010
5020
5030
5040
5050
5060
5070
5080
5090
50a0
50b0
50c0
50d0
50e0
50f0
5100
5110
5120
5130
5140
5150
5160
5170
5180
5190
51a0
51b0
51c0
51d0
51e0
51f0
5200
5210
5220
5230
5240
5250
5260
5270
5280
5290
52a0
52b0
52c0
52d0
52e0
52f0
5300
5310
5320
5330
5340
5350
5360
5370
5380
5390
53a0
53b0
53c0
53d0
53e0
53f0
5400
5410
5420
5430
5440
5450
5460
5470
5480
5490
54a0
54b0
54c0
54d0
54e0
54f0
5500
5510
5520
5530
5540
5550
5560
5570
5580
5590
55a0
55b0
55c0
55d0
55e0
55f0
5600
5610
5620
5630
5640
5650
5660
5670
5680
5690
56a0
56b0
56c0
56d0
56e0
56f0
5700
5710
5720
5730
5740
5750
5760
5770
5780
5790
57a0
57b0
57c0
57d0
57e0
57f0
5800
5810
5820
5830
5840
5850
5860
5870
5880
5890
58a0
58b0
58c0
58d0
58e0
58f0
5900
5910
5920
5930
5940
5950
5960
5970
5980
5990
59a0
59b0
59c0
59d0
59e0
59f0
5a00
5a10
5a20
5a30
5a40
5a50
5a60
5a70
5a80
5a90
5aa0
5ab0
5ac0
5ad0
5ae0
5af0
5b00
5b10
5b20
5b30
5b40
5b50
5b60
5b70
5b80
5b90
5ba0
5bb0
5bc0
5bd0
5be0
5bf0
5c00
5c10
5c20
5c30
5c40
5c50
5c60
5c70
5c80
5c90
5ca0
5cb0
5cc0
5cd0
5ce0
5cf0
5d00
5d10
5d20
5d30
5d40
5d50
5d60
5d70
5d80
5d90
5da0
5db0
5dc0
5dd0
5de0
5df0
5e00
5e10
5e20
5e30
5e40
5e50
5e60
5e70
5e80
5e90
5ea0
5eb0
5ec0
5ed0
5ee0
5ef0
5f00
5f10
5f20
5f30
5f40
5f50
5f60
5f70
5f80
5f90
5fa0
5fb0
5fc0
5fd0
5fe0
5ff0
6000
6010
6020
6030
6040
6050
6060
6070
6080
6090
60a0
60b0
60c0
60d0
60e0
60f0
6100
6110
6120
6130
6140
6150
6160
6170
6180
6190
61a0
61b0
61c0
61d0
61e0
61f0
6200
6210
6220
6230
6240
6250
6260
6270
6280
6290
62a0
62b0
62c0
62d0
62e0
62f0
6300
6310
6320
6330
6340
6350
6360
6370
6380
6390
63a0
63b0
63c0
63d0
63e0
63f0
6400
6410
6420
6430
6440
6450
6460
6470
6480
6490
64a0
64b0
64c0
64d0
64e0
64f0
6500
6510
6520
6530
6540
6550
6560
6570
6580
6590
65a0
65b0
65c0
65d0
65e0
65f0
6600
6610
6620
6630
6640
6650
6660
6670
6680
6690
66a0
66b0
66c0
66d0
66e0
66f0
6700
6710
6720
6730
6740
6750
6760
6770
6780
6790
67a0
67b0
67c0
67d0
67e0
67f0
6800
6810
6820
6830
6840
6850
6860
6870
6880
6890
68a0
68b0
68c0
68d0
68e0
68f0
6900
6910
6920
6930
6940
6950
6960
6970
6980
6990
69a0
69b0
69c0
69d0
69e0
69f0
6a00
6a10
6a20
6a30
6a40
6a50
6a60
6a70
6a80
6a90
6aa0
6ab0
6ac0
6ad0
6ae0
6af0
6b00
6b10
6b20
6b30
6b40
6b50
6b60
6b70
6b80
6b90
6ba0
6bb0
6bc0
6bd0
6be0
6bf0
6c00
6c10
6c20
6c30
6c40
6c50
6c60
6c70
6c80
6c90
6ca0
6cb0
6cc0
6cd0
6ce0
6cf0
6d00
6d10
6d20
6d30
6d40
6d50
6d60
6d70
6d80
6d90
6da0
6db0
6dc0
6dd0
6de0
6df0
6e00
6e10
6e20
6e30
6e40
6e50
6e60
6e70
6e80
6e90
6ea0
6eb0
6ec0
6ed0
6ee0
6ef0
6f00
6f10
6f20
6f30
6f40
6f50
6f60
6f70
6f80
6f90
6fa0
6fb0
6fc0
6fd0
6fe0
6ff0
7000
7010
7020
7030
7040
7050
7060
7070
7080
7090
70a0
70b0
70c0
70d0
70e0
70f0
7100
7110
7120
7130
7140
7150
7160
7170
7180
7190
71a0
71b0
71c0
71d0
71e0
71f0
7200
7210
7220
7230
7240
7250
7260
7270
7280
7290
72a0
72b0
72c0
72d0
72e0
72f0
7300
7310
7320
7330
7340
7350
7360
7370
7380
7390
73a0
73b0
73c0
73d0
73e0
73f0
7400
7410
7420
7430
7440
7450
7460
7470
7480
7490
74a0
74b0
74c0
74d0
74e0
74f0
7500
7510
7520
7530
7540
7550
7560
7570
7580
7590
75a0
75b0
75c0
75d0
75e0
75f0
7600
7610
7620
7630
7640
7650
7660
7670
7680
7690
76a0
76b0
76c0
76d0
76e0
76f0
7700
7710
7720
7730
7740
7750
7760
7770
7780
7790
77a0
77b0
77c0
77d0
77e0
77f0
7800
7810
7820
7830
7840
7850
7860
7870
7880
7890
7f E L F 02 01 01 00 00 00 00 00 00 00 00 00
03 00 3e 00 01 00 00 00 50 13 00 00 00 00 00 00
40 00 00 00 00 00 00 00 60 71 00 00 00 00 00 00
00 00 00 00 40 00 38 00 0d 00 40 00 1d 00 1c 00
06 00 00 00 04 00 00 00 40 00 00 00 00 00 00 00
40 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00
d8 02 00 00 00 00 00 00 d8 02 00 00 00 00 00 00
08 00 00 00 00 00 00 00 03 00 00 00 04 00 00 00
18 03 00 00 00 00 00 00 18 03 00 00 00 00 00 00
18 03 00 00 00 00 00 00 1c 00 00 00 00 00 00 00
1c 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00
01 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
78 09 00 00 00 00 00 00 78 09 00 00 00 00 00 00
00 10 00 00 00 00 00 00 01 00 00 00 05 00 00 00
00 10 00 00 00 00 00 00 00 10 00 00 00 00 00 00
00 10 00 00 00 00 00 00 5d 04 00 00 00 00 00 00
5d 04 00 00 00 00 00 00 00 10 00 00 00 00 00 00
01 00 00 00 04 00 00 00 00 20 00 00 00 00 00 00
00 20 00 00 00 00 00 00 00 20 00 00 00 00 00 00
b8 4b 00 00 00 00 00 00 b8 4b 00 00 00 00 00 00
00 10 00 00 00 00 00 00 01 00 00 00 06 00 00 00
d0 6c 00 00 00 00 00 00 d0 7c 00 00 00 00 00 00
d0 7c 00 00 00 00 00 00 78 03 00 00 00 00 00 00
80 03 00 00 00 00 00 00 00 10 00 00 00 00 00 00
02 00 00 00 06 00 00 00 f0 6c 00 00 00 00 00 00
f0 7c 00 00 00 00 00 00 f0 7c 00 00 00 00 00 00
60 02 00 00 00 00 00 00 60 02 00 00 00 00 00 00
08 00 00 00 00 00 00 00 04 00 00 00 04 00 00 00
48 6b 00 00 00 00 00 00 48 6b 00 00 00 00 00 00
48 6b 00 00 00 00 00 00 50 00 00 00 00 00 00 00
50 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
04 00 00 00 04 00 00 00 98 6b 00 00 00 00 00 00
98 6b 00 00 00 00 00 00 98 6b 00 00 00 00 00 00
20 00 00 00 00 00 00 00 20 00 00 00 00 00 00 00
04 00 00 00 00 00 00 00 53 e5 74 64 04 00 00 00
48 6b 00 00 00 00 00 00 48 6b 00 00 00 00 00 00
48 6b 00 00 00 00 00 00 50 00 00 00 00 00 00 00
50 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
50 e5 74 64 04 00 00 00 f8 69 00 00 00 00 00 00
f8 69 00 00 00 00 00 00 f8 69 00 00 00 00 00 00
4c 00 00 00 00 00 00 00 4c 00 00 00 00 00 00 00
04 00 00 00 00 00 00 00 51 e5 74 64 06 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
52 e5 74 64 04 00 00 00 d0 6c 00 00 00 00 00 00
d0 7c 00 00 00 00 00 00 d0 7c 00 00 00 00 00 00
30 03 00 00 00 00 00 00 30 03 00 00 00 00 00 00
01 00 00 00 00 00 00 00 2f 6c 69 62 36 34 2f 6c
64 2d 6c 69 6e 75 78 2d 78 38 36 2d 36 34 2e 73
6f 2e 32 00 00 00 00 00 02 00 00 00 13 00 00 00
01 00 00 00 06 00 00 00 00 00 81 00 00 00 00 00
13 00 00 00 00 00 00 00 d1 65 ce 6d 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 1f 00 00 00 20 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
09 01 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 32 01 00 00 12 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
1a 01 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 20 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
62 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 d7 00 00 00 12 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
75 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 a3 00 00 00 12 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
6f 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 3b 00 00 00 12 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
36 01 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 f4 00 00 00 12 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
10 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 48 00 00 00 20 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c2 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 41 01 00 00 12 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
8c 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 53 01 00 00 22 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 5f 5f 67 6d 6f 6e 5f 73 74 61 72 74 5f 5f 00
67 5f 6f 62 6a 65 63 74 5f 75 6e 72 65 66 00 5f
49 54 4d 5f 64 65 72 65 67 69 73 74 65 72 54 4d
43 6c 6f 6e 65 54 61 62 6c 65 00 67 5f 6f 62 6a
65 63 74 5f 6e 65 77 00 5f 49 54 4d 5f 72 65 67
69 73 74 65 72 54 4d 43 6c 6f 6e 65 54 61 62 6c
65 00 67 5f 65 72 72 6f 72 5f 66 72 65 65 00 67
5f 6c 6f 67 00 67 5f 73 74 61 74 69 63 5f 72 65
73 6f 75 72 63 65 5f 69 6e 69 74 00 67 5f 73 74
61 74 69 63 5f 72 65 73 6f 75 72 63 65 5f 66 69
6e 69 00 67 5f 73 74 61 74 69 63 5f 72 65 73 6f
75 72 63 65 5f 67 65 74 5f 72 65 73 6f 75 72 63
65 00 67 6a 73 5f 63 6f 6e 74 65 78 74 5f 67 65
74 5f 74 79 70 65 00 67 6a 73 5f 63 6f 6e 74 65
78 74 5f 65 76 61 6c 5f 6d 6f 64 75 6c 65 5f 66
69 6c 65 00 67 6a 73 5f 63 6f 6e 74 65 78 74 5f
73 65 74 5f 61 72 67 76 00 5f 5f 73 74 61 63 6b
5f 63 68 6b 5f 66 61 69 6c 00 62 69 6e 64 5f 74
65 78 74 64 6f 6d 61 69 6e 5f 63 6f 64 65 73 65
74 00 62 69 6e 64 74 65 78 74 64 6f 6d 61 69 6e
00 5f 5f 6c 69 62 63 5f 73 74 61 72 74 5f 6d 61
69 6e 00 5f 5f 63 78 61 5f 66 69 6e 61 6c 69 7a
65 00 6c 69 62 67 69 6f 2d 32 2e 30 2e 73 6f 2e
30 00 6c 69 62 67 6f 62 6a 65 63 74 2d 32 2e 30
2e 73 6f 2e 30 00 6c 69 62 67 6c 69 62 2d 32 2e
30 2e 73 6f 2e 30 00 6c 69 62 67 6a 73 2e 73 6f
2e 30 00 6c 69 62 63 2e 73 6f 2e 36 00 47 4c 49
42 43 5f 41 42 49 5f 44 54 5f 52 45 4c 52 00 47
4c 49 42 43 5f 32 2e 33 34 00 47 4c 49 42 43 5f
32 2e 34 00 47 4c 49 42 43 5f 32 2e 32 2e 35 00
00 00 01 00 03 00 02 00 02 00 01 00 01 00 01 00
01 00 01 00 01 00 01 00 02 00 01 00 01 00 01 00
01 00 04 00 01 00 02 00 01 00 04 00 a3 01 00 00
10 00 00 00 00 00 00 00 42 0e fd 00 00 00 05 00
ad 01 00 00 10 00 00 00 b4 91 96 06 00 00 04 00
bf 01 00 00 10 00 00 00 14 69 69 0d 00 00 03 00
ca 01 00 00 10 00 00 00 75 1a 69 09 00 00 02 00
d4 01 00 00 00 00 00 00 d8 7f 00 00 00 00 00 00
06 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00
e0 7f 00 00 00 00 00 00 06 00 00 00 13 00 00 00
00 00 00 00 00 00 00 00 e8 7f 00 00 00 00 00 00
06 00 00 00 05 00 00 00 00 00 00 00 00 00 00 00
f0 7f 00 00 00 00 00 00 06 00 00 00 0f 00 00 00
00 00 00 00 00 00 00 00 f8 7f 00 00 00 00 00 00
06 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00
68 7f 00 00 00 00 00 00 07 00 00 00 02 00 00 00
00 00 00 00 00 00 00 00 70 7f 00 00 00 00 00 00
07 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00
78 7f 00 00 00 00 00 00 07 00 00 00 04 00 00 00
00 00 00 00 00 00 00 00 80 7f 00 00 00 00 00 00
07 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00
88 7f 00 00 00 00 00 00 07 00 00 00 07 00 00 00
00 00 00 00 00 00 00 00 90 7f 00 00 00 00 00 00
07 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00
98 7f 00 00 00 00 00 00 07 00 00 00 09 00 00 00
00 00 00 00 00 00 00 00 a0 7f 00 00 00 00 00 00
07 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00
a8 7f 00 00 00 00 00 00 07 00 00 00 0b 00 00 00
00 00 00 00 00 00 00 00 b0 7f 00 00 00 00 00 00
07 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 00
b8 7f 00 00 00 00 00 00 07 00 00 00 0d 00 00 00
00 00 00 00 00 00 00 00 c0 7f 00 00 00 00 00 00
07 00 00 00 0e 00 00 00 00 00 00 00 00 00 00 00
c8 7f 00 00 00 00 00 00 07 00 00 00 10 00 00 00
00 00 00 00 00 00 00 00 d0 7f 00 00 00 00 00 00
07 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00
d0 7c 00 00 00 00 00 00 0f 00 00 00 00 00 00 00
01 00 00 00 00 09 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f3 0f 1e fa 48 83 ec 08 48 8b 05 d9 6f 00 00 48
85 c0 74 02 ff d0 48 83 c4 08 c3 00 00 00 00 00
ff 35 32 6f 00 00 ff 25 34 6f 00 00 0f 1f 40 00
f3 0f 1e fa 68 00 00 00 00 e9 e2 ff ff ff 66 90
f3 0f 1e fa 68 01 00 00 00 e9 d2 ff ff ff 66 90
f3 0f 1e fa 68 02 00 00 00 e9 c2 ff ff ff 66 90
f3 0f 1e fa 68 03 00 00 00 e9 b2 ff ff ff 66 90
f3 0f 1e fa 68 04 00 00 00 e9 a2 ff ff ff 66 90
f3 0f 1e fa 68 05 00 00 00 e9 92 ff ff ff 66 90
f3 0f 1e fa 68 06 00 00 00 e9 82 ff ff ff 66 90
f3 0f 1e fa 68 07 00 00 00 e9 72 ff ff ff 66 90
f3 0f 1e fa 68 08 00 00 00 e9 62 ff ff ff 66 90
f3 0f 1e fa 68 09 00 00 00 e9 52 ff ff ff 66 90
f3 0f 1e fa 68 0a 00 00 00 e9 42 ff ff ff 66 90
f3 0f 1e fa 68 0b 00 00 00 e9 32 ff ff ff 66 90
f3 0f 1e fa 68 0c 00 00 00 e9 22 ff ff ff 66 90
f3 0f 1e fa 68 0d 00 00 00 e9 12 ff ff ff 66 90
f3 0f 1e fa ff 25 c6 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 3e 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 36 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 2e 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 26 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 1e 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 16 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 0e 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 06 6e 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 fe 6d 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 f6 6d 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 ee 6d 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 e6 6d 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 de 6d 00 00 66 0f 1f 44 00 00
f3 0f 1e fa ff 25 d6 6d 00 00 66 0f 1f 44 00 00
f3 0f 1e fa 48 8d 3d 15 6e 00 00 e9 e0 ff ff ff
f3 0f 1e fa 48 8d 3d 05 6e 00 00 e9 50 ff ff ff
f3 0f 1e fa 41 54 4c 8d 25 05 0e 00 00 48 8d 05
d0 0d 00 00 55 53 89 fb 4c 89 e7 48 83 ec 30 64
48 8b 2c 25 28 00 00 00 48 89 6c 24 28 48 89 f5
48 8d 35 c9 0d 00 00 48 89 44 24 10 48 c7 44 24
18 00 00 00 00 48 c7 44 24 08 00 00 00 00 e8 bd
fe ff ff 48 8d 35 c4 0d 00 00 4c 89 e7 e8 be fe
ff ff 4c 89 e7 e8 26 ff ff ff 4c 8b 65 00 e8 4d
ff ff ff 45 31 c9 48 8d 0d a7 0d 00 00 4c 8d 44
24 10 48 89 c7 4c 89 e2 48 8d 35 a1 0d 00 00 31
c0 e8 ea fe ff ff 8d 73 ff 48 8d 55 08 49 89 c4
48 63 f6 48 89 c7 e8 f5 fe ff ff 48 8d 4c 24 08
48 8d 54 24 07 4c 89 e7 48 8d 35 81 0d 00 00 e8
7c fe ff ff 84 c0 74 23 4c 89 e7 e8 e0 fe ff ff
31 c0 48 8b 54 24 28 64 48 2b 14 25 28 00 00 00
75 40 48 83 c4 30 5b 5d 41 5c c3 48 8b 44 24 08
48 8d 15 81 0d 00 00 be 20 00 00 00 31 ff 48 8b
48 08 31 c0 e8 67 fe ff ff 48 8b 7c 24 08 e8 1d
fe ff ff 4c 89 e7 e8 95 fe ff ff 0f b6 44 24 07
eb b0 e8 d9 fd ff ff 66 0f 1f 84 00 00 00 00 00
f3 0f 1e fa 31 ed 49 89 d1 5e 48 89 e2 48 83 e4
f0 50 54 45 31 c0 31 c9 48 8d 3d b1 fe ff ff ff
15 83 6c 00 00 f4 66 2e 0f 1f 84 00 00 00 00 00
48 8d 3d c1 6c 00 00 48 8d 05 ba 6c 00 00 48 39
f8 74 15 48 8b 05 3e 6c 00 00 48 85 c0 74 09 ff
e0 0f 1f 80 00 00 00 00 c3 0f 1f 80 00 00 00 00
48 8d 3d 91 6c 00 00 48 8d 35 8a 6c 00 00 48 29
fe 48 89 f0 48 c1 ee 3f 48 c1 f8 03 48 01 c6 48
d1 fe 74 14 48 8b 05 15 6c 00 00 48 85 c0 74 08
ff e0 66 0f 1f 44 00 00 c3 0f 1f 80 00 00 00 00
f3 0f 1e fa 80 3d 4d 6c 00 00 00 75 2b 55 48 83
3d da 6b 00 00 00 48 89 e5 74 0c 48 8b 3d f6 6b
00 00 e8 f9 fc ff ff e8 64 ff ff ff c6 05 25 6c
00 00 01 5d c3 0f 1f 00 c3 0f 1f 80 00 00 00 00
f3 0f 1e fa e9 77 ff ff ff 0f 1f 80 00 00 00 00
f3 0f 1e fa 48 8d 3d d5 6b 00 00 e9 30 fd ff ff
f3 0f 1e fa 48 83 ec 08 48 83 c4 08 c3 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01 00 02 00 72 65 73 6f 75 72 63 65 3a 2f 2f 2f
6f 72 67 2f 67 6e 6f 6d 65 2f 73 68 65 6c 6c 00
2f 75 73 72 2f 73 68 61 72 65 2f 6c 6f 63 61 6c
65 00 67 6e 6f 6d 65 2d 73 68 65 6c 6c 00 55 54
46 2d 38 00 73 65 61 72 63 68 2d 70 61 74 68 00
70 72 6f 67 72 61 6d 2d 6e 61 6d 65 00 00 00 00
72 65 73 6f 75 72 63 65 3a 2f 2f 2f 6f 72 67 2f
67 6e 6f 6d 65 2f 73 68 65 6c 6c 2f 70 6f 72 74
61 6c 48 65 6c 70 65 72 2f 6d 61 69 6e 2e 6a 73
00 00 00 00 00 00 00 00 45 78 65 63 75 74 69 6f
6e 20 6f 66 20 6d 61 69 6e 2e 6a 73 20 74 68 72
65 77 20 65 78 63 65 70 74 69 6f 6e 3a 20 25 73
00 00 00 00 00 00 00 00 47 56 61 72 69 61 6e 74
00 00 00 00 00 00 00 00 18 00 00 00 38 01 00 00
00 00 00 28 0a 00 00 00 00 00 00 00 02 00 00 00
02 00 00 00 02 00 00 00 03 00 00 00 06 00 00 00
07 00 00 00 07 00 00 00 08 00 00 00 0a 00 00 00
bc 26 58 06 03 00 00 00 38 01 00 00 0c 00 76 00
48 01 00 00 ea 08 00 00 d4 b5 02 00 ff ff ff ff
ea 08 00 00 01 00 4c 00 ec 08 00 00 f0 08 00 00
73 85 db 97 03 00 00 00 f0 08 00 00 09 00 76 00
00 09 00 00 36 0c 00 00 72 5f a7 0d 07 00 00 00
36 0c 00 00 05 00 4c 00 3c 0c 00 00 48 0c 00 00
08 a5 e8 6d 05 00 00 00 48 0c 00 00 07 00 76 00
50 0c 00 00 ff 3c 00 00 78 68 18 ab 07 00 00 00
ff 3c 00 00 0d 00 4c 00 0c 3d 00 00 10 3d 00 00
4b 50 90 0b 01 00 00 00 10 3d 00 00 04 00 4c 00
14 3d 00 00 18 3d 00 00 37 2c 70 9c 09 00 00 00
18 3d 00 00 06 00 4c 00 20 3d 00 00 28 3d 00 00
0e 8e 9a 8a 03 00 00 00 28 3d 00 00 0c 00 76 00
38 3d 00 00 1e 49 00 00 b0 b7 24 30 06 00 00 00
1e 49 00 00 06 00 4c 00 24 49 00 00 28 49 00 00
64 62 75 73 55 74 69 6c 73 2e 6a 73 00 00 00 00
92 07 00 00 00 00 00 00 69 6d 70 6f 72 74 20 47
69 6f 20 66 72 6f 6d 20 27 67 69 3a 2f 2f 47 69
6f 27 3b 0a 69 6d 70 6f 72 74 20 47 4c 69 62 20
66 72 6f 6d 20 27 67 69 3a 2f 2f 47 4c 69 62 27
3b 0a 0a 69 6d 70 6f 72 74 20 2a 20 61 73 20 43
6f 6e 66 69 67 20 66 72 6f 6d 20 27 2e 2f 63 6f
6e 66 69 67 2e 6a 73 27 3b 0a 0a 6c 65 74 20 5f
69 66 61 63 65 52 65 73 6f 75 72 63 65 20 3d 20
6e 75 6c 6c 3b 0a 0a 2f 2a 2a 0a 20 2a 20 40 70
72 69 76 61 74 65 0a 20 2a 2f 0a 66 75 6e 63 74
69 6f 6e 20 5f 65 6e 73 75 72 65 49 66 61 63 65
52 65 73 6f 75 72 63 65 28 29 20 7b 0a 20 20 20
20 69 66 20 28 5f 69 66 61 63 65 52 65 73 6f 75
72 63 65 29 0a 20 20 20 20 20 20 20 20 72 65 74
75 72 6e 3b 0a 0a 20 20 20 20 2f 2f 20 64 6f 6e
27 74 20 75 73 65 20 67 6c 6f 62 61 6c 2e 64 61
74 61 64 69 72 20 73 6f 20 74 68 65 20 6d 65 74
68 6f 64 20 69 73 20 75 73 61 62 6c 65 20 66 72
6f 6d 20 74 65 73 74 73 2f 74 6f 6f 6c 73 0a 20
20 20 20 6c 65 74 20 64 69 72 20 3d 20 47 4c 69
62 2e 67 65 74 65 6e 76 28 27 47 4e 4f 4d 45 5f
53 48 45 4c 4c 5f 44 41 54 41 44 49 52 27 29 20
7c 7c 20 43 6f 6e 66 69 67 2e 50 4b 47 44 41 54
41 44 49 52 3b 0a 20 20 20 20 6c 65 74 20 70 61
74 68 20 3d 20 60 24 7b 64 69 72 7d 2f 67 6e 6f
6d 65 2d 73 68 65 6c 6c 2d 64 62 75 73 2d 69 6e
74 65 72 66 61 63 65 73 2e 67 72 65 73 6f 75 72
63 65 60 3b 0a 20 20 20 20 5f 69 66 61 63 65 52
65 73 6f 75 72 63 65 20 3d 20 47 69 6f 2e 52 65
73 6f 75 72 63 65 2e 6c 6f 61 64 28 70 61 74 68
29 3b 0a 20 20 20 20 5f 69 66 61 63 65 52 65 73
6f 75 72 63 65 2e 5f 72 65 67 69 73 74 65 72 28
29 3b 0a 7d 0a 0a 2f 2a 2a 0a 20 2a 20 40 70 61
72 61 6d 20 7b 73 74 72 69 6e 67 7d 20 69 66 61
63 65 20 74 68 65 20 69 6e 74 65 72 66 61 63 65
20 6e 61 6d 65 0a 20 2a 20 40 72 65 74 75 72 6e
73 20 7b 73 74 72 69 6e 67 20 7c 20 6e 75 6c 6c
7d 20 74 68 65 20 58 4d 4c 20 73 74 72 69 6e 67
20 6f 72 20 6e 75 6c 6c 20 69 66 20 69 74 20 69
73 20 6e 6f 74 20 66 6f 75 6e 64 0a 20 2a 2f 0a
65 78 70 6f 72 74 20 66 75 6e 63 74 69 6f 6e 20
6c 6f 61 64 49 6e 74 65 72 66 61 63 65 58 4d 4c
28 69 66 61 63 65 29 20 7b 0a 20 20 20 20 5f 65
6e 73 75 72 65 49 66 61 63 65 52 65 73 6f 75 72
63 65 28 29 3b 0a 0a 20 20 20 20 6c 65 74 20 75
72 69 20 3d 20 60 72 65 73 6f 75 72 63 65 3a 2f
2f 2f 6f 72 67 2f 67 6e 6f 6d 65 2f 73 68 65 6c
6c 2f 64 62 75 73 2d 69 6e 74 65 72 66 61 63 65
73 2f 24 7b 69 66 61 63 65 7d 2e 78 6d 6c 60 3b
0a 20 20 20 20 6c 65 74 20 66 20 3d 20 47 69 6f
2e 46 69 6c 65 2e 6e 65 77 5f 66 6f 72 5f 75 72
69 28 75 72 69 29 3b 0a 0a 20 20 20 20 74 72 79
20 7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 5b
6f 6b 5f 2c 20 62 79 74 65 73 5d 20 3d 20 66 2e
6c 6f 61 64 5f 63 6f 6e 74 65 6e 74 73 28 6e 75
6c 6c 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74
75 72 6e 20 6e 65 77 20 54 65 78 74 44 65 63 6f
64 65 72 28 29 2e 64 65 63 6f 64 65 28 62 79 74
65 73 29 3b 0a 20 20 20 20 7d 20 63 61 74 63 68
20 7b 0a 20 20 20 20 20 20 20 20 6c 6f 67 28 60
46 61 69 6c 65 64 20 74 6f 20 6c 6f 61 64 20 44
2d 42 75 73 20 69 6e 74 65 72 66 61 63 65 20 24
7b 69 66 61 63 65 7d 60 29 3b 0a 20 20 20 20 7d
0a 0a 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c
6c 3b 0a 7d 0a 0a 2f 2a 2a 0a 20 2a 20 40 70 61
72 61 6d 20 7b 73 74 72 69 6e 67 7d 20 69 66 61
63 65 20 74 68 65 20 69 6e 74 65 72 66 61 63 65
20 6e 61 6d 65 0a 20 2a 20 40 70 61 72 61 6d 20
7b 73 74 72 69 6e 67 7d 20 69 66 61 63 65 46 69
6c 65 20 74 68 65 20 69 6e 74 65 72 66 61 63 65
20 66 69 6c 65 6e 61 6d 65 0a 20 2a 20 40 72 65
74 75 72 6e 73 20 7b 73 74 72 69 6e 67 20 7c 20
6e 75 6c 6c 7d 20 74 68 65 20 58 4d 4c 20 73 74
72 69 6e 67 20 6f 72 20 6e 75 6c 6c 20 69 66 20
69 74 20 69 73 20 6e 6f 74 20 66 6f 75 6e 64 0a
20 2a 2f 0a 65 78 70 6f 72 74 20 66 75 6e 63 74
69 6f 6e 20 6c 6f 61 64 53 75 62 49 6e 74 65 72
66 61 63 65 58 4d 4c 28 69 66 61 63 65 2c 20 69
66 61 63 65 46 69 6c 65 29 20 7b 0a 20 20 20 20
6c 65 74 20 78 6d 6c 20 3d 20 6c 6f 61 64 49 6e
74 65 72 66 61 63 65 58 4d 4c 28 69 66 61 63 65
46 69 6c 65 29 3b 0a 20 20 20 20 69 66 20 28 21
78 6d 6c 29 0a 20 20 20 20 20 20 20 20 72 65 74
75 72 6e 20 6e 75 6c 6c 3b 0a 0a 20 20 20 20 6c
65 74 20 69 66 61 63 65 53 74 61 72 74 54 61 67
20 3d 20 60 3c 69 6e 74 65 72 66 61 63 65 20 6e
61 6d 65 3d 22 24 7b 69 66 61 63 65 7d 22 3e 60
3b 0a 20 20 20 20 6c 65 74 20 69 66 61 63 65 53
74 6f 70 54 61 67 20 3d 20 27 3c 2f 69 6e 74 65
72 66 61 63 65 3e 27 3b 0a 20 20 20 20 6c 65 74
20 69 66 61 63 65 53 74 61 72 74 49 6e 64 65 78
20 3d 20 78 6d 6c 2e 69 6e 64 65 78 4f 66 28 69
66 61 63 65 53 74 61 72 74 54 61 67 29 3b 0a 20
20 20 20 6c 65 74 20 69 66 61 63 65 45 6e 64 49
6e 64 65 78 20 3d 20 78 6d 6c 2e 69 6e 64 65 78
4f 66 28 69 66 61 63 65 53 74 6f 70 54 61 67 2c
20 69 66 61 63 65 53 74 61 72 74 49 6e 64 65 78
20 2b 20 31 29 20 2b 20 69 66 61 63 65 53 74 6f
70 54 61 67 2e 6c 65 6e 67 74 68 3b 0a 0a 20 20
20 20 6c 65 74 20 78 6d 6c 48 65 61 64 65 72 20
3d 20 27 3c 21 44 4f 43 54 59 50 45 20 6e 6f 64
65 20 50 55 42 4c 49 43 5c 6e 27 20 2b 0a 20 20
20 20 20 20 20 20 27 5c 27 2d 2f 2f 66 72 65 65
64 65 73 6b 74 6f 70 2f 2f 44 54 44 20 44 2d 42
55 53 20 4f 62 6a 65 63 74 20 49 6e 74 72 6f 73
70 65 63 74 69 6f 6e 20 31 2e 30 2f 2f 45 4e 5c
27 5c 6e 27 20 2b 0a 20 20 20 20 20 20 20 20 27
5c 27 68 74 74 70 3a 2f 2f 77 77 77 2e 66 72 65
65 64 65 73 6b 74 6f 70 2e 6f 72 67 2f 73 74 61
6e 64 61 72 64 73 2f 64 62 75 73 2f 31 2e 30 2f
69 6e 74 72 6f 73 70 65 63 74 2e 64 74 64 5c 27
3e 5c 6e 27 20 2b 0a 20 20 20 20 20 20 20 20 27
3c 6e 6f 64 65 3e 5c 6e 27 3b 0a 20 20 20 20 6c
65 74 20 78 6d 6c 46 6f 6f 74 65 72 20 3d 20 27
3c 2f 6e 6f 64 65 3e 27 3b 0a 0a 20 20 20 20 72
65 74 75 72 6e 20 28 0a 20 20 20 20 20 20 20 20
78 6d 6c 48 65 61 64 65 72 20 2b 0a 20 20 20 20
20 20 20 20 78 6d 6c 2e 73 75 62 73 74 72 69 6e
67 28 69 66 61 63 65 53 74 61 72 74 49 6e 64 65
78 2c 20 69 66 61 63 65 45 6e 64 49 6e 64 65 78
29 20 2b 0a 20 20 20 20 20 20 20 20 78 6d 6c 46
6f 6f 74 65 72 29 3b 0a 7d 0a 00 00 28 75 75 61
79 29 2f 00 06 00 00 00 63 6f 6e 66 69 67 2e 6a
73 00 00 00 00 00 00 00 26 03 00 00 00 00 00 00
63 6f 6e 73 74 20 70 6b 67 20 3d 20 69 6d 70 6f
72 74 73 2e 70 61 63 6b 61 67 65 3b 0a 0a 2f 2a
20 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 69
73 20 70 61 63 6b 61 67 65 20 28 6e 6f 74 20 6c
6f 63 61 6c 69 7a 65 64 29 20 2a 2f 0a 65 78 70
6f 72 74 20 63 6f 6e 73 74 20 50 41 43 4b 41 47
45 5f 4e 41 4d 45 20 3d 20 27 67 6e 6f 6d 65 2d
73 68 65 6c 6c 27 3b 0a 2f 2a 20 54 68 65 20 76
65 72 73 69 6f 6e 20 6f 66 20 74 68 69 73 20 70
61 63 6b 61 67 65 20 2a 2f 0a 65 78 70 6f 72 74
20 63 6f 6e 73 74 20 50 41 43 4b 41 47 45 5f 56
45 52 53 49 4f 4e 20 3d 20 27 34 37 2e 37 27 3b
0a 2f 2a 20 31 20 69 66 20 6e 65 74 77 6f 72 6b
6d 61 6e 61 67 65 72 20 69 73 20 61 76 61 69 6c
61 62 6c 65 2c 20 30 20 6f 74 68 65 72 77 69 73
65 20 2a 2f 0a 65 78 70 6f 72 74 20 63 6f 6e 73
74 20 48 41 56 45 5f 4e 45 54 57 4f 52 4b 4d 41
4e 41 47 45 52 20 3d 20 31 3b 0a 2f 2a 20 31 20
69 66 20 70 6f 72 74 61 6c 20 68 65 6c 70 65 72
20 69 73 20 65 6e 61 62 6c 65 64 2c 20 30 20 6f
74 68 65 72 77 69 73 65 20 2a 2f 0a 65 78 70 6f
72 74 20 63 6f 6e 73 74 20 48 41 56 45 5f 50 4f
52 54 41 4c 5f 48 45 4c 50 45 52 20 3d 20 31 3b
0a 2f 2a 20 67 65 74 74 65 78 74 20 70 61 63 6b
61 67 65 20 2a 2f 0a 65 78 70 6f 72 74 20 63 6f
6e 73 74 20 47 45 54 54 45 58 54 5f 50 41 43 4b
41 47 45 20 3d 20 27 67 6e 6f 6d 65 2d 73 68 65
6c 6c 27 3b 0a 2f 2a 20 6c 6f 63 61 6c 65 20 64
69 72 20 2a 2f 0a 65 78 70 6f 72 74 20 63 6f 6e
73 74 20 4c 4f 43 41 4c 45 44 49 52 20 3d 20 27
2f 75 73 72 2f 73 68 61 72 65 2f 6c 6f 63 61 6c
65 27 3b 0a 2f 2a 20 6f 74 68 65 72 20 73 74 61
6e 64 61 72 64 20 64 69 72 65 63 74 6f 72 69 65
73 20 2a 2f 0a 65 78 70 6f 72 74 20 63 6f 6e 73
74 20 4c 49 42 45 58 45 43 44 49 52 20 3d 20 27
2f 75 73 72 2f 6c 69 62 65 78 65 63 27 3b 0a 65
78 70 6f 72 74 20 63 6f 6e 73 74 20 50 4b 47 44
41 54 41 44 49 52 20 3d 20 27 2f 75 73 72 2f 73
68 61 72 65 2f 67 6e 6f 6d 65 2d 73 68 65 6c 6c
27 3b 0a 2f 2a 20 67 2d 69 20 70 61 63 6b 61 67
65 20 76 65 72 73 69 6f 6e 73 20 2a 2f 0a 65 78
70 6f 72 74 20 63 6f 6e 73 74 20 4c 49 42 4d 55
54 54 45 52 5f 41 50 49 5f 56 45 52 53 49 4f 4e
20 3d 20 27 31 35 27 3b 0a 0a 65 78 70 6f 72 74
20 63 6f 6e 73 74 20 48 41 56 45 5f 42 4c 55 45
54 4f 4f 54 48 20 3d 20 70 6b 67 2e 63 68 65 63
6b 53 79 6d 62 6f 6c 28 27 47 6e 6f 6d 65 42 6c
75 65 74 6f 6f 74 68 27 2c 20 27 33 2e 30 27 2c
0a 20 20 20 20 27 43 6c 69 65 6e 74 2e 64 65 66
61 75 6c 74 5f 61 64 61 70 74 65 72 5f 73 74 61
74 65 27 29 3b 0a 00 00 28 75 75 61 79 29 6d 69
73 63 2f 00 02 00 00 00 00 00 00 00 08 00 00 00
6d 61 69 6e 2e 6a 73 00 9f 30 00 00 00 00 00 00
69 6d 70 6f 72 74 20 41 64 77 20 66 72 6f 6d 20
27 67 69 3a 2f 2f 41 64 77 3f 76 65 72 73 69 6f
6e 3d 31 27 3b 0a 69 6d 70 6f 72 74 20 47 69 6f
20 66 72 6f 6d 20 27 67 69 3a 2f 2f 47 69 6f 27
3b 0a 69 6d 70 6f 72 74 20 47 4c 69 62 20 66 72
6f 6d 20 27 67 69 3a 2f 2f 47 4c 69 62 27 3b 0a
69 6d 70 6f 72 74 20 47 4f 62 6a 65 63 74 20 66
72 6f 6d 20 27 67 69 3a 2f 2f 47 4f 62 6a 65 63
74 27 3b 0a 69 6d 70 6f 72 74 20 47 74 6b 20 66
72 6f 6d 20 27 67 69 3a 2f 2f 47 74 6b 3f 76 65
72 73 69 6f 6e 3d 34 2e 30 27 3b 0a 69 6d 70 6f
72 74 20 57 65 62 4b 69 74 20 66 72 6f 6d 20 27
67 69 3a 2f 2f 57 65 62 4b 69 74 3f 76 65 72 73
69 6f 6e 3d 36 2e 30 27 3b 0a 0a 69 6d 70 6f 72
74 20 2a 20 61 73 20 47 65 74 74 65 78 74 20 66
72 6f 6d 20 27 67 65 74 74 65 78 74 27 3b 0a 69
6d 70 6f 72 74 20 7b 70 72 6f 67 72 61 6d 49 6e
76 6f 63 61 74 69 6f 6e 4e 61 6d 65 2c 20 70 72
6f 67 72 61 6d 41 72 67 73 7d 20 66 72 6f 6d 20
27 73 79 73 74 65 6d 27 3b 0a 0a 63 6f 6e 73 74
20 5f 20 3d 20 47 65 74 74 65 78 74 2e 67 65 74
74 65 78 74 3b 0a 0a 69 6d 70 6f 72 74 20 2a 20
61 73 20 43 6f 6e 66 69 67 20 66 72 6f 6d 20 27
2e 2e 2f 6d 69 73 63 2f 63 6f 6e 66 69 67 2e 6a
73 27 3b 0a 69 6d 70 6f 72 74 20 7b 6c 6f 61 64
49 6e 74 65 72 66 61 63 65 58 4d 4c 7d 20 66 72
6f 6d 20 27 2e 2e 2f 6d 69 73 63 2f 66 69 6c 65
55 74 69 6c 73 2e 6a 73 27 3b 0a 0a 63 6f 6e 73
74 20 50 6f 72 74 61 6c 48 65 6c 70 65 72 52 65
73 75 6c 74 20 3d 20 7b 0a 20 20 20 20 43 41 4e
43 45 4c 4c 45 44 3a 20 30 2c 0a 20 20 20 20 43
4f 4d 50 4c 45 54 45 44 3a 20 31 2c 0a 20 20 20
20 52 45 43 48 45 43 4b 3a 20 32 2c 0a 7d 3b 0a
0a 63 6f 6e 73 74 20 50 6f 72 74 61 6c 48 65 6c
70 65 72 53 65 63 75 72 69 74 79 4c 65 76 65 6c
20 3d 20 7b 0a 20 20 20 20 4e 4f 54 5f 59 45 54
5f 44 45 54 45 52 4d 49 4e 45 44 3a 20 30 2c 0a
20 20 20 20 53 45 43 55 52 45 3a 20 31 2c 0a 20
20 20 20 49 4e 53 45 43 55 52 45 3a 20 32 2c 0a
7d 3b 0a 0a 63 6f 6e 73 74 20 48 54 54 50 5f 55
52 49 5f 46 4c 41 47 53 20 3d 0a 20 20 20 20 47
4c 69 62 2e 55 72 69 46 6c 61 67 73 2e 48 41 53
5f 50 41 53 53 57 4f 52 44 20 7c 0a 20 20 20 20
47 4c 69 62 2e 55 72 69 46 6c 61 67 73 2e 45 4e
43 4f 44 45 44 5f 50 41 54 48 20 7c 0a 20 20 20
20 47 4c 69 62 2e 55 72 69 46 6c 61 67 73 2e 45
4e 43 4f 44 45 44 5f 51 55 45 52 59 20 7c 0a 20
20 20 20 47 4c 69 62 2e 55 72 69 46 6c 61 67 73
2e 45 4e 43 4f 44 45 44 5f 46 52 41 47 4d 45 4e
54 20 7c 0a 20 20 20 20 47 4c 69 62 2e 55 72 69
46 6c 61 67 73 2e 53 43 48 45 4d 45 5f 4e 4f 52
4d 41 4c 49 5a 45 20 7c 0a 20 20 20 20 47 4c 69
62 2e 55 72 69 46 6c 61 67 73 2e 50 41 52 53 45
5f 52 45 4c 41 58 45 44 3b 0a 0a 63 6f 6e 73 74
20 43 4f 4e 4e 45 43 54 49 56 49 54 59 5f 43 48
45 43 4b 5f 48 4f 53 54 20 3d 20 27 6e 6d 63 68
65 63 6b 2e 67 6e 6f 6d 65 2e 6f 72 67 27 3b 0a
63 6f 6e 73 74 20 43 4f 4e 4e 45 43 54 49 56 49
54 59 5f 43 48 45 43 4b 5f 55 52 49 20 3d 20 60
68 74 74 70 3a 2f 2f 24 7b 43 4f 4e 4e 45 43 54
49 56 49 54 59 5f 43 48 45 43 4b 5f 48 4f 53 54
7d 60 3b 0a 63 6f 6e 73 74 20 43 4f 4e 4e 45 43
54 49 56 49 54 59 5f 52 45 43 48 45 43 4b 5f 52
41 54 45 4c 49 4d 49 54 5f 54 49 4d 45 4f 55 54
20 3d 20 33 30 20 2a 20 47 4c 69 62 2e 55 53 45
43 5f 50 45 52 5f 53 45 43 3b 0a 0a 63 6f 6e 73
74 20 48 65 6c 70 65 72 44 42 75 73 49 6e 74 65
72 66 61 63 65 20 3d 20 6c 6f 61 64 49 6e 74 65
72 66 61 63 65 58 4d 4c 28 27 6f 72 67 2e 67 6e
6f 6d 65 2e 53 68 65 6c 6c 2e 50 6f 72 74 61 6c
48 65 6c 70 65 72 27 29 3b 0a 0a 63 6f 6e 73 74
20 50 6f 72 74 61 6c 53 65 63 75 72 69 74 79 42
75 74 74 6f 6e 20 3d 20 47 4f 62 6a 65 63 74 2e
72 65 67 69 73 74 65 72 43 6c 61 73 73 28 0a 63
6c 61 73 73 20 50 6f 72 74 61 6c 53 65 63 75 72
69 74 79 42 75 74 74 6f 6e 20 65 78 74 65 6e 64
73 20 47 74 6b 2e 4d 65 6e 75 42 75 74 74 6f 6e
20 7b 0a 20 20 20 20 5f 69 6e 69 74 28 29 20 7b
0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 70
6f 70 6f 76 65 72 20 3d 20 6e 65 77 20 47 74 6b
2e 50 6f 70 6f 76 65 72 28 29 3b 0a 0a 20 20 20
20 20 20 20 20 73 75 70 65 72 2e 5f 69 6e 69 74
28 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70
6f 70 6f 76 65 72 2c 0a 20 20 20 20 20 20 20 20
20 20 20 20 76 69 73 69 62 6c 65 3a 20 66 61 6c
73 65 2c 0a 20 20 20 20 20 20 20 20 7d 29 3b 0a
0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 76
62 6f 78 20 3d 20 6e 65 77 20 47 74 6b 2e 42 6f
78 28 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20
6f 72 69 65 6e 74 61 74 69 6f 6e 3a 20 47 74 6b
2e 4f 72 69 65 6e 74 61 74 69 6f 6e 2e 56 45 52
54 49 43 41 4c 2c 0a 20 20 20 20 20 20 20 20 20
20 20 20 6d 61 72 67 69 6e 5f 74 6f 70 3a 20 36
2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 61
72 67 69 6e 5f 62 6f 74 74 6f 6d 3a 20 36 2c 0a
20 20 20 20 20 20 20 20 20 20 20 20 6d 61 72 67
69 6e 5f 73 74 61 72 74 3a 20 36 2c 0a 20 20 20
20 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 5f
65 6e 64 3a 20 36 2c 0a 20 20 20 20 20 20 20 20
20 20 20 20 73 70 61 63 69 6e 67 3a 20 36 2c 0a
20 20 20 20 20 20 20 20 7d 29 3b 0a 20 20 20 20
20 20 20 20 70 6f 70 6f 76 65 72 2e 73 65 74 5f
63 68 69 6c 64 28 76 62 6f 78 29 3b 0a 0a 20 20
20 20 20 20 20 20 63 6f 6e 73 74 20 68 62 6f 78
20 3d 20 6e 65 77 20 47 74 6b 2e 42 6f 78 28 7b
0a 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 69
65 6e 74 61 74 69 6f 6e 3a 20 47 74 6b 2e 4f 72
69 65 6e 74 61 74 69 6f 6e 2e 48 4f 52 49 5a 4f
4e 54 41 4c 2c 0a 20 20 20 20 20 20 20 20 20 20
20 20 68 61 6c 69 67 6e 3a 20 47 74 6b 2e 41 6c
69 67 6e 2e 43 45 4e 54 45 52 2c 0a 20 20 20 20
20 20 20 20 7d 29 3b 0a 20 20 20 20 20 20 20 20
76 62 6f 78 2e 61 70 70 65 6e 64 28 68 62 6f 78
29 3b 0a 0a 20 20 20 20 20 20 20 20 74 68 69 73
2e 5f 73 65 63 75 72 65 49 63 6f 6e 20 3d 20 6e
65 77 20 47 74 6b 2e 49 6d 61 67 65 28 29 3b 0a
20 20 20 20 20 20 20 20 68 62 6f 78 2e 61 70 70
65 6e 64 28 74 68 69 73 2e 5f 73 65 63 75 72 65
49 63 6f 6e 29 3b 0a 0a 20 20 20 20 20 20 20 20
74 68 69 73 2e 5f 73 65 63 75 72 65 49 63 6f 6e
2e 62 69 6e 64 5f 70 72 6f 70 65 72 74 79 28 27
69 63 6f 6e 2d 6e 61 6d 65 27 2c 0a 20 20 20 20
20 20 20 20 20 20 20 20 74 68 69 73 2c 20 27 69
63 6f 6e 2d 6e 61 6d 65 27 2c 0a 20 20 20 20 20
20 20 20 20 20 20 20 47 4f 62 6a 65 63 74 2e 42
69 6e 64 69 6e 67 46 6c 61 67 73 2e 44 45 46 41
55 4c 54 29 3b 0a 0a 20 20 20 20 20 20 20 20 74
68 69 73 2e 5f 74 69 74 6c 65 4c 61 62 65 6c 20
3d 20 6e 65 77 20 47 74 6b 2e 4c 61 62 65 6c 28
29 3b 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e
5f 74 69 74 6c 65 4c 61 62 65 6c 2e 61 64 64 5f
63 73 73 5f 63 6c 61 73 73 28 27 74 69 74 6c 65
27 29 3b 0a 20 20 20 20 20 20 20 20 68 62 6f 78
2e 61 70 70 65 6e 64 28 74 68 69 73 2e 5f 74 69
74 6c 65 4c 61 62 65 6c 29 3b 0a 0a 20 20 20 20
20 20 20 20 74 68 69 73 2e 5f 64 65 73 63 72 69
70 74 69 6f 6e 4c 61 62 65 6c 20 3d 20 6e 65 77
20 47 74 6b 2e 4c 61 62 65 6c 28 7b 0a 20 20 20
20 20 20 20 20 20 20 20 20 77 72 61 70 3a 20 74
72 75 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20
20 6d 61 78 5f 77 69 64 74 68 5f 63 68 61 72 73
3a 20 33 32 2c 0a 20 20 20 20 20 20 20 20 7d 29
3b 0a 20 20 20 20 20 20 20 20 76 62 6f 78 2e 61
70 70 65 6e 64 28 74 68 69 73 2e 5f 64 65 73 63
72 69 70 74 69 6f 6e 4c 61 62 65 6c 29 3b 0a 20
20 20 20 7d 0a 0a 20 20 20 20 73 65 74 50 6f 70
6f 76 65 72 54 69 74 6c 65 28 6c 61 62 65 6c 29
20 7b 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e
5f 74 69 74 6c 65 4c 61 62 65 6c 2e 73 65 74 5f
74 65 78 74 28 6c 61 62 65 6c 29 3b 0a 20 20 20
20 7d 0a 0a 20 20 20 20 73 65 74 53 65 63 75 72
69 74 79 49 63 6f 6e 28 73 65 63 75 72 69 74 79
4c 65 76 65 6c 29 20 7b 0a 20 20 20 20 20 20 20
20 73 77 69 74 63 68 20 28 73 65 63 75 72 69 74
79 4c 65 76 65 6c 29 20 7b 0a 20 20 20 20 20 20
20 20 63 61 73 65 20 50 6f 72 74 61 6c 48 65 6c
70 65 72 53 65 63 75 72 69 74 79 4c 65 76 65 6c
2e 4e 4f 54 5f 59 45 54 5f 44 45 54 45 52 4d 49
4e 45 44 3a 0a 20 20 20 20 20 20 20 20 20 20 20
20 74 68 69 73 2e 68 69 64 65 28 29 3b 0a 20 20
20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b
0a 20 20 20 20 20 20 20 20 63 61 73 65 20 50 6f
72 74 61 6c 48 65 6c 70 65 72 53 65 63 75 72 69
74 79 4c 65 76 65 6c 2e 53 45 43 55 52 45 3a 0a
20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73
2e 73 68 6f 77 28 29 3b 0a 20 20 20 20 20 20 20
20 20 20 20 20 74 68 69 73 2e 5f 73 65 63 75 72
65 49 63 6f 6e 2e 69 63 6f 6e 5f 6e 61 6d 65 20
3d 20 27 63 68 61 6e 6e 65 6c 2d 73 65 63 75 72
65 2d 73 79 6d 62 6f 6c 69 63 27 3b 0a 20 20 20
20 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 64
65 73 63 72 69 70 74 69 6f 6e 4c 61 62 65 6c 2e
6c 61 62 65 6c 20 3d 20 5f 28 27 59 6f 75 72 20
63 6f 6e 6e 65 63 74 69 6f 6e 20 73 65 65 6d 73
20 74 6f 20 62 65 20 73 65 63 75 72 65 27 29 3b
0a 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65
61 6b 3b 0a 20 20 20 20 20 20 20 20 63 61 73 65
20 50 6f 72 74 61 6c 48 65 6c 70 65 72 53 65 63
75 72 69 74 79 4c 65 76 65 6c 2e 49 4e 53 45 43
55 52 45 3a 0a 20 20 20 20 20 20 20 20 20 20 20
20 74 68 69 73 2e 73 68 6f 77 28 29 3b 0a 20 20
20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f
73 65 63 75 72 65 49 63 6f 6e 2e 69 63 6f 6e 5f
6e 61 6d 65 20 3d 20 27 63 68 61 6e 6e 65 6c 2d
69 6e 73 65 63 75 72 65 2d 73 79 6d 62 6f 6c 69
63 27 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20
74 68 69 73 2e 5f 64 65 73 63 72 69 70 74 69 6f
6e 4c 61 62 65 6c 2e 6c 61 62 65 6c 20 3d 0a 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5f
28 27 59 6f 75 72 20 63 6f 6e 6e 65 63 74 69 6f
6e 20 74 6f 20 74 68 69 73 20 68 6f 74 73 70 6f
74 20 6c 6f 67 69 6e 20 69 73 20 6e 6f 74 20 73
65 63 75 72 65 2e 20 50 61 73 73 77 6f 72 64 73
20 6f 72 20 6f 74 68 65 72 20 69 6e 66 6f 72 6d
61 74 69 6f 6e 20 79 6f 75 20 65 6e 74 65 72 20
6f 6e 20 74 68 69 73 20 70 61 67 65 20 63 61 6e
20 62 65 20 76 69 65 77 65 64 20 62 79 20 70 65
6f 70 6c 65 20 6e 65 61 72 62 79 2e 27 29 3b 0a
20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61
6b 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20
20 7d 0a 7d 29 3b 0a 0a 63 6f 6e 73 74 20 50 6f
72 74 61 6c 57 69 6e 64 6f 77 20 3d 20 47 4f 62
6a 65 63 74 2e 72 65 67 69 73 74 65 72 43 6c 61
73 73 28 0a 63 6c 61 73 73 20 50 6f 72 74 61 6c
57 69 6e 64 6f 77 20 65 78 74 65 6e 64 73 20 47
74 6b 2e 41 70 70 6c 69 63 61 74 69 6f 6e 57 69
6e 64 6f 77 20 7b 0a 20 20 20 20 5f 69 6e 69 74
28 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 75 72
6c 2c 20 74 69 6d 65 73 74 61 6d 70 2c 20 64 6f
6e 65 43 61 6c 6c 62 61 63 6b 29 20 7b 0a 20 20
20 20 20 20 20 20 73 75 70 65 72 2e 5f 69 6e 69
74 28 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20
61 70 70 6c 69 63 61 74 69 6f 6e 2c 0a 20 20 20
20 20 20 20 20 20 20 20 20 74 69 74 6c 65 3a 20
5f 28 27 48 6f 74 73 70 6f 74 20 4c 6f 67 69 6e
27 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20
64 65 66 61 75 6c 74 5f 77 69 64 74 68 3a 20 36
30 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20
64 65 66 61 75 6c 74 5f 68 65 69 67 68 74 3a 20
34 35 30 2c 0a 20 20 20 20 20 20 20 20 7d 29 3b
0a 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20
68 65 61 64 65 72 62 61 72 20 3d 20 6e 65 77 20
47 74 6b 2e 48 65 61 64 65 72 42 61 72 28 29 3b
0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 73
65 63 75 72 65 4d 65 6e 75 20 3d 20 6e 65 77 20
50 6f 72 74 61 6c 53 65 63 75 72 69 74 79 42 75
74 74 6f 6e 28 29 3b 0a 20 20 20 20 20 20 20 20
68 65 61 64 65 72 62 61 72 2e 70 61 63 6b 5f 73
74 61 72 74 28 74 68 69 73 2e 5f 73 65 63 75 72
65 4d 65 6e 75 29 3b 0a 0a 20 20 20 20 20 20 20
20 74 68 69 73 2e 73 65 74 5f 74 69 74 6c 65 62
61 72 28 68 65 61 64 65 72 62 61 72 29 3b 0a 0a
20 20 20 20 20 20 20 20 69 66 20 28 21 75 72 6c
29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20
75 72 6c 20 3d 20 43 4f 4e 4e 45 43 54 49 56 49
54 59 5f 43 48 45 43 4b 5f 55 52 49 3b 0a 20 20
20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f
6f 72 69 67 69 6e 61 6c 55 72 6c 57 61 73 47 6e
6f 6d 65 20 3d 20 74 72 75 65 3b 0a 20 20 20 20
20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20
20 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 6f
72 69 67 69 6e 61 6c 55 72 6c 57 61 73 47 6e 6f
6d 65 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20
20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 74 68
69 73 2e 5f 75 72 69 20 3d 20 47 4c 69 62 2e 55
72 69 2e 70 61 72 73 65 28 75 72 6c 2c 20 48 54
54 50 5f 55 52 49 5f 46 4c 41 47 53 29 3b 0a 20
20 20 20 20 20 20 20 74 68 69 73 2e 5f 65 76 65
72 53 65 65 6e 52 65 64 69 72 65 63 74 20 3d 20
66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 74
68 69 73 2e 5f 6f 72 69 67 69 6e 61 6c 55 72 6c
20 3d 20 75 72 6c 3b 0a 20 20 20 20 20 20 20 20
74 68 69 73 2e 5f 64 6f 6e 65 43 61 6c 6c 62 61
63 6b 20 3d 20 64 6f 6e 65 43 61 6c 6c 62 61 63
6b 3b 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e
5f 6c 61 73 74 52 65 63 68 65 63 6b 20 3d 20 30
3b 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f
72 65 63 68 65 63 6b 41 74 45 78 69 74 20 3d 20
66 61 6c 73 65 3b 0a 0a 20 20 20 20 20 20 20 20
74 68 69 73 2e 5f 6e 65 74 77 6f 72 6b 53 65 73
73 69 6f 6e 20 3d 20 57 65 62 4b 69 74 2e 4e 65
74 77 6f 72 6b 53 65 73 73 69 6f 6e 2e 6e 65 77
5f 65 70 68 65 6d 65 72 61 6c 28 29 3b 0a 20 20
20 20 20 20 20 20 74 68 69 73 2e 5f 6e 65 74 77
6f 72 6b 53 65 73 73 69 6f 6e 2e 73 65 74 5f 70
72 6f 78 79 5f 73 65 74 74 69 6e 67 73 28 57 65
62 4b 69 74 2e 4e 65 74 77 6f 72 6b 50 72 6f 78
79 4d 6f 64 65 2e 4e 4f 5f 50 52 4f 58 59 2c 20
6e 75 6c 6c 29 3b 0a 0a 20 20 20 20 20 20 20 20
74 68 69 73 2e 5f 77 65 62 43 6f 6e 74 65 78 74
20 3d 20 6e 65 77 20 57 65 62 4b 69 74 2e 57 65
62 43 6f 6e 74 65 78 74 28 29 3b 0a 20 20 20 20
20 20 20 20 74 68 69 73 2e 5f 77 65 62 43 6f 6e
74 65 78 74 2e 73 65 74 5f 63 61 63 68 65 5f 6d
6f 64 65 6c 28 57 65 62 4b 69 74 2e 43 61 63 68
65 4d 6f 64 65 6c 2e 44 4f 43 55 4d 45 4e 54 5f
56 49 45 57 45 52 29 3b 0a 0a 20 20 20 20 20 20
20 20 74 68 69 73 2e 5f 77 65 62 56 69 65 77 20
3d 20 6e 65 77 20 57 65 62 4b 69 74 2e 57 65 62
56 69 65 77 28 7b 0a 20 20 20 20 20 20 20 20 20
20 20 20 6e 65 74 77 6f 72 6b 53 65 73 73 69 6f
6e 3a 20 74 68 69 73 2e 5f 6e 65 74 77 6f 72 6b
53 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20
20 20 20 20 20 77 65 62 43 6f 6e 74 65 78 74 3a
20 74 68 69 73 2e 5f 77 65 62 43 6f 6e 74 65 78
74 2c 0a 20 20 20 20 20 20 20 20 7d 29 3b 0a 20
20 20 20 20 20 20 20 74 68 69 73 2e 5f 77 65 62
56 69 65 77 2e 63 6f 6e 6e 65 63 74 28 27 64 65
63 69 64 65 2d 70 6f 6c 69 63 79 27 2c 20 74 68
69 73 2e 5f 6f 6e 44 65 63 69 64 65 50 6f 6c 69
63 79 2e 62 69 6e 64 28 74 68 69 73 29 29 3b 0a
20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 77 65
62 56 69 65 77 2e 63 6f 6e 6e 65 63 74 28 27 6c
6f 61 64 2d 63 68 61 6e 67 65 64 27 2c 20 74 68
69 73 2e 5f 6f 6e 4c 6f 61 64 43 68 61 6e 67 65
64 2e 62 69 6e 64 28 74 68 69 73 29 29 3b 0a 20
20 20 20 20 20 20 20 74 68 69 73 2e 5f 77 65 62
56 69 65 77 2e 63 6f 6e 6e 65 63 74 28 27 69 6e
73 65 63 75 72 65 2d 63 6f 6e 74 65 6e 74 2d 64
65 74 65 63 74 65 64 27 2c 20 74 68 69 73 2e 5f
6f 6e 49 6e 73 65 63 75 72 65 43 6f 6e 74 65 6e
74 44 65 74 65 63 74 65 64 2e 62 69 6e 64 28 74
68 69 73 29 29 3b 0a 20 20 20 20 20 20 20 20 74
68 69 73 2e 5f 77 65 62 56 69 65 77 2e 63 6f 6e
6e 65 63 74 28 27 6c 6f 61 64 2d 66 61 69 6c 65
64 2d 77 69 74 68 2d 74 6c 73 2d 65 72 72 6f 72
73 27 2c 20 74 68 69 73 2e 5f 6f 6e 4c 6f 61 64
46 61 69 6c 65 64 57 69 74 68 54 6c 73 45 72 72
6f 72 73 2e 62 69 6e 64 28 74 68 69 73 29 29 3b
0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 77
65 62 56 69 65 77 2e 6c 6f 61 64 5f 75 72 69 28
75 72 6c 29 3b 0a 20 20 20 20 20 20 20 20 74 68
69 73 2e 5f 77 65 62 56 69 65 77 2e 63 6f 6e 6e
65 63 74 28 27 6e 6f 74 69 66 79 3a 3a 75 72 69
27 2c 20 74 68 69 73 2e 5f 73 79 6e 63 55 72 69
2e 62 69 6e 64 28 74 68 69 73 29 29 3b 0a 20 20
20 20 20 20 20 20 74 68 69 73 2e 5f 73 79 6e 63
55 72 69 28 29 3b 0a 0a 20 20 20 20 20 20 20 20
74 68 69 73 2e 73 65 74 5f 63 68 69 6c 64 28 74
68 69 73 2e 5f 77 65 62 56 69 65 77 29 3b 0a 20
20 20 20 20 20 20 20 74 68 69 73 2e 6d 61 78 69
6d 69 7a 65 28 29 3b 0a 20 20 20 20 20 20 20 20
74 68 69 73 2e 70 72 65 73 65 6e 74 5f 77 69 74
68 5f 74 69 6d 65 28 74 69 6d 65 73 74 61 6d 70
29 3b 0a 0a 20 20 20 20 20 20 20 20 74 68 69 73
2e 61 70 70 6c 69 63 61 74 69 6f 6e 2e 73 65 74
5f 61 63 63 65 6c 73 5f 66 6f 72 5f 61 63 74 69
6f 6e 28 27 61 70 70 2e 71 75 69 74 27 2c 20 5b
27 3c 50 72 69 6d 61 72 79 3e 71 27 2c 20 27 3c
50 72 69 6d 61 72 79 3e 77 27 5d 29 3b 0a 20 20
20 20 7d 0a 0a 20 20 20 20 5f 73 79 6e 63 55 72
69 28 29 20 7b 0a 20 20 20 20 20 20 20 20 63 6f
6e 73 74 20 7b 75 72 69 7d 20 3d 20 74 68 69 73
2e 5f 77 65 62 56 69 65 77 3b 0a 0a 20 20 20 20
20 20 20 20 74 72 79 20 7b 0a 20 20 20 20 20 20
20 20 20 20 20 20 63 6f 6e 73 74 20 5b 2c 20 2c
20 68 6f 73 74 5d 20 3d 20 47 4c 69 62 2e 55 72
69 2e 73 70 6c 69 74 5f 6e 65 74 77 6f 72 6b 28
75 72 69 2c 20 48 54 54 50 5f 55 52 49 5f 46 4c
41 47 53 29 3b 0a 20 20 20 20 20 20 20 20 20 20
20 20 74 68 69 73 2e 5f 73 65 63 75 72 65 4d 65
6e 75 2e 73 65 74 50 6f 70 6f 76 65 72 54 69 74
6c 65 28 68 6f 73 74 29 3b 0a 20 20 20 20 20 20
20 20 7d 20 63 61 74 63 68 20 28 65 29 20 7b 0a
20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28
75 72 69 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e
73 6f 6c 65 2e 65 72 72 6f 72 28 60 46 61 69 6c
65 64 20 74 6f 20 70 61 72 73 65 20 55 72 69 20
24 7b 75 72 69 7d 3a 20 24 7b 65 2e 6d 65 73 73
61 67 65 7d 60 29 3b 0a 20 20 20 20 20 20 20 20
20 20 20 20 74 68 69 73 2e 5f 73 65 63 75 72 65
4d 65 6e 75 2e 73 65 74 50 6f 70 6f 76 65 72 54
69 74 6c 65 28 27 27 29 3b 0a 20 20 20 20 20 20
20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 72
65 66 72 65 73 68 28 29 20 7b 0a 20 20 20 20 20
20 20 20 74 68 69 73 2e 5f 65 76 65 72 53 65 65
6e 52 65 64 69 72 65 63 74 20 3d 20 66 61 6c 73
65 3b 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e
5f 77 65 62 56 69 65 77 2e 6c 6f 61 64 5f 75 72
69 28 74 68 69 73 2e 5f 6f 72 69 67 69 6e 61 6c
55 72 6c 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20
20 76 66 75 6e 63 5f 63 6c 6f 73 65 5f 72 65 71
75 65 73 74 28 29 20 7b 0a 20 20 20 20 20 20 20
20 69 66 20 28 74 68 69 73 2e 5f 72 65 63 68 65
63 6b 41 74 45 78 69 74 29 0a 20 20 20 20 20 20
20 20 20 20 20 20 74 68 69 73 2e 5f 64 6f 6e 65
43 61 6c 6c 62 61 63 6b 28 50 6f 72 74 61 6c 48
65 6c 70 65 72 52 65 73 75 6c 74 2e 52 45 43 48
45 43 4b 29 3b 0a 20 20 20 20 20 20 20 20 65 6c
73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 74
68 69 73 2e 5f 64 6f 6e 65 43 61 6c 6c 62 61 63
6b 28 50 6f 72 74 61 6c 48 65 6c 70 65 72 52 65
73 75 6c 74 2e 43 41 4e 43 45 4c 4c 45 44 29 3b
0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20
66 61 6c 73 65 3b 0a 20 20 20 20 7d 0a 0a 20 20
20 20 5f 6f 6e 4c 6f 61 64 43 68 61 6e 67 65 64
28 76 69 65 77 2c 20 6c 6f 61 64 45 76 65 6e 74
29 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28
6c 6f 61 64 45 76 65 6e 74 20 3d 3d 3d 20 57 65
62 4b 69 74 2e 4c 6f 61 64 45 76 65 6e 74 2e 53
54 41 52 54 45 44 29 20 7b 0a 20 20 20 20 20 20
20 20 20 20 20 20 74 68 69 73 2e 5f 73 65 63 75
72 65 4d 65 6e 75 2e 73 65 74 53 65 63 75 72 69
74 79 49 63 6f 6e 28 50 6f 72 74 61 6c 48 65 6c
70 65 72 53 65 63 75 72 69 74 79 4c 65 76 65 6c
2e 4e 4f 54 5f 59 45 54 5f 44 45 54 45 52 4d 49
4e 45 44 29 3b 0a 20 20 20 20 20 20 20 20 7d 20
65 6c 73 65 20 69 66 20 28 6c 6f 61 64 45 76 65
6e 74 20 3d 3d 3d 20 57 65 62 4b 69 74 2e 4c 6f
61 64 45 76 65 6e 74 2e 43 4f 4d 4d 49 54 54 45
44 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20
20 6c 65 74 20 74 6c 73 49 6e 66 6f 20 3d 20 74
68 69 73 2e 5f 77 65 62 56 69 65 77 2e 67 65 74
5f 74 6c 73 5f 69 6e 66 6f 28 29 3b 0a 20 20 20
20 20 20 20 20 20 20 20 20 6c 65 74 20 72 65 74
20 3d 20 74 6c 73 49 6e 66 6f 5b 30 5d 3b 0a 20
20 20 20 20 20 20 20 20 20 20 20 6c 65 74 20 66
6c 61 67 73 20 3d 20 74 6c 73 49 6e 66 6f 5b 32
5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69
66 20 28 72 65 74 20 26 26 20 66 6c 61 67 73 20
3d 3d 3d 20 30 29 0a 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 74 68 69 73 2e 5f 73 65 63
75 72 65 4d 65 6e 75 2e 73 65 74 53 65 63 75 72
69 74 79 49 63 6f 6e 28 50 6f 72 74 61 6c 48 65
6c 70 65 72 53 65 63 75 72 69 74 79 4c 65 76 65
6c 2e 53 45 43 55 52 45 29 3b 0a 20 20 20 20 20
20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73
2e 5f 73 65 63 75 72 65 4d 65 6e 75 2e 73 65 74
53 65 63 75 72 69 74 79 49 63 6f 6e 28 50 6f 72
74 61 6c 48 65 6c 70 65 72 53 65 63 75 72 69 74
79 4c 65 76 65 6c 2e 49 4e 53 45 43 55 52 45 29
3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20
7d 0a 0a 20 20 20 20 5f 6f 6e 49 6e 73 65 63 75
72 65 43 6f 6e 74 65 6e 74 44 65 74 65 63 74 65
64 28 29 20 7b 0a 20 20 20 20 20 20 20 20 74 68
69 73 2e 5f 73 65 63 75 72 65 4d 65 6e 75 2e 73
65 74 53 65 63 75 72 69 74 79 49 63 6f 6e 28 50
6f 72 74 61 6c 48 65 6c 70 65 72 53 65 63 75 72
69 74 79 4c 65 76 65 6c 2e 49 4e 53 45 43 55 52
45 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 5f
6f 6e 4c 6f 61 64 46 61 69 6c 65 64 57 69 74 68
54 6c 73 45 72 72 6f 72 73 28 76 69 65 77 2c 20
66 61 69 6c 69 6e 67 55 52 49 2c 20 63 65 72 74
69 66 69 63 61 74 65 2c 20 5f 65 72 72 6f 72 73
29 20 7b 0a 20 20 20 20 20 20 20 20 74 68 69 73
2e 5f 73 65 63 75 72 65 4d 65 6e 75 2e 73 65 74
53 65 63 75 72 69 74 79 49 63 6f 6e 28 50 6f 72
74 61 6c 48 65 6c 70 65 72 53 65 63 75 72 69 74
79 4c 65 76 65 6c 2e 49 4e 53 45 43 55 52 45 29
3b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 75 72
69 20 3d 20 47 4c 69 62 2e 55 72 69 2e 70 61 72
73 65 28 66 61 69 6c 69 6e 67 55 52 49 2c 20 48
54 54 50 5f 55 52 49 5f 46 4c 41 47 53 29 3b 0a
20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 6e 65
74 77 6f 72 6b 53 65 73 73 69 6f 6e 2e 61 6c 6c
6f 77 5f 74 6c 73 5f 63 65 72 74 69 66 69 63 61
74 65 5f 66 6f 72 5f 68 6f 73 74 28 63 65 72 74
69 66 69 63 61 74 65 2c 20 75 72 69 2e 67 65 74
5f 68 6f 73 74 28 29 29 3b 0a 20 20 20 20 20 20
20 20 74 68 69 73 2e 5f 77 65 62 56 69 65 77 2e
6c 6f 61 64 5f 75 72 69 28 66 61 69 6c 69 6e 67
55 52 49 29 3b 0a 20 20 20 20 20 20 20 20 72 65
74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 7d
0a 0a 20 20 20 20 5f 6f 6e 44 65 63 69 64 65 50
6f 6c 69 63 79 28 76 69 65 77 2c 20 64 65 63 69
73 69 6f 6e 2c 20 74 79 70 65 29 20 7b 0a 20 20
20 20 20 20 20 20 69 66 20 28 74 79 70 65 20 3d
3d 3d 20 57 65 62 4b 69 74 2e 50 6f 6c 69 63 79
44 65 63 69 73 69 6f 6e 54 79 70 65 2e 52 45 53
50 4f 4e 53 45 29 0a 20 20 20 20 20 20 20 20 20
20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b
0a 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20
6e 61 76 69 67 61 74 69 6f 6e 41 63 74 69 6f 6e
20 3d 20 64 65 63 69 73 69 6f 6e 2e 67 65 74 5f
6e 61 76 69 67 61 74 69 6f 6e 5f 61 63 74 69 6f
6e 28 29 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e
73 74 20 72 65 71 75 65 73 74 20 3d 20 6e 61 76
69 67 61 74 69 6f 6e 41 63 74 69 6f 6e 2e 67 65
74 5f 72 65 71 75 65 73 74 28 29 3b 0a 0a 20 20
20 20 20 20 20 20 69 66 20 28 74 79 70 65 20 3d
3d 3d 20 57 65 62 4b 69 74 2e 50 6f 6c 69 63 79
44 65 63 69 73 69 6f 6e 54 79 70 65 2e 4e 45 57
5f 57 49 4e 44 4f 57 5f 41 43 54 49 4f 4e 29 20
7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66
20 28 6e 61 76 69 67 61 74 69 6f 6e 41 63 74 69
6f 6e 2e 69 73 5f 75 73 65 72 5f 67 65 73 74 75
72 65 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 2f 2f 20 45 76 65 6e 20
74 68 6f 75 67 68 20 74 68 65 20 70 6f 72 74 61
6c 20 61 73 6b 73 20 66 6f 72 20 61 20 6e 65 77
20 77 69 6e 64 6f 77 2c 0a 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 2f 2f 20 70 65 72 66
6f 72 6d 20 74 68 65 20 6e 61 76 69 67 61 74 69
6f 6e 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e
74 20 6f 6e 65 2e 20 53 6f 6d 65 0a 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 70
6f 72 74 61 6c 73 20 6f 70 65 6e 20 61 20 77 69
6e 64 6f 77 20 61 73 20 74 68 65 69 72 20 6c 61
73 74 20 6c 6f 67 69 6e 20 73 74 65 70 20 61 6e
64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 20 2f 2f 20 69 67 6e 6f 72 69 6e 67 20 74 68
61 74 20 77 69 6e 64 6f 77 20 63 61 75 73 65 73
20 74 68 65 6d 20 74 6f 20 6e 6f 74 20 6c 65 74
20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 2f 2f 20 75 73 65 72 20 67 6f 20
74 68 72 6f 75 67 68 2e 20 57 65 20 64 6f 6e 27
74 20 72 69 73 6b 20 70 6f 70 75 70 73 20 74 61
6b 69 6e 67 20 6f 76 65 72 0a 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 68 65
20 70 61 67 65 20 62 65 63 61 75 73 65 20 77 65
20 63 68 65 63 6b 20 74 68 61 74 20 74 68 65 20
6e 61 76 69 67 61 74 69 6f 6e 20 69 73 0a 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f
20 75 73 65 72 20 69 6e 69 74 69 61 74 65 64 2e
0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 74 68 69 73 2e 5f 77 65 62 56 69 65 77 2e 6c
6f 61 64 5f 72 65 71 75 65 73 74 28 72 65 71 75
65 73 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20
20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20
20 64 65 63 69 73 69 6f 6e 2e 69 67 6e 6f 72 65
28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20
72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20
20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20
63 6f 6e 73 74 20 75 72 69 20 3d 20 47 4c 69 62
2e 55 72 69 2e 70 61 72 73 65 28 72 65 71 75 65
73 74 2e 67 65 74 5f 75 72 69 28 29 2c 20 48 54
54 50 5f 55 52 49 5f 46 4c 41 47 53 29 3b 0a 0a
20 20 20 20 20 20 20 20 69 66 20 28 75 72 69 2e
67 65 74 5f 68 6f 73 74 28 29 20 21 3d 3d 20 74
68 69 73 2e 5f 75 72 69 2e 67 65 74 5f 68 6f 73
74 28 29 20 26 26 20 74 68 69 73 2e 5f 6f 72 69
67 69 6e 61 6c 55 72 6c 57 61 73 47 6e 6f 6d 65
29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20
69 66 20 28 75 72 69 2e 67 65 74 5f 68 6f 73 74
28 29 20 3d 3d 3d 20 43 4f 4e 4e 45 43 54 49 56
49 54 59 5f 43 48 45 43 4b 5f 48 4f 53 54 20 26
26 20 74 68 69 73 2e 5f 65 76 65 72 53 65 65 6e
52 65 64 69 72 65 63 74 29 20 7b 0a 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 59
61 79 2c 20 77 65 20 67 6f 74 20 74 6f 20 67 6e
6f 6d 65 21 0a 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 64 65 63 69 73 69 6f 6e 2e 69 67
6e 6f 72 65 28 29 3b 0a 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 64 6f
6e 65 43 61 6c 6c 62 61 63 6b 28 50 6f 72 74 61
6c 48 65 6c 70 65 72 52 65 73 75 6c 74 2e 43 4f
4d 50 4c 45 54 45 44 29 3b 0a 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e
20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 20
20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 75 72
69 2e 67 65 74 5f 68 6f 73 74 28 29 20 21 3d 3d
20 43 4f 4e 4e 45 43 54 49 56 49 54 59 5f 43 48
45 43 4b 5f 48 4f 53 54 29 20 7b 0a 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73
2e 5f 65 76 65 72 53 65 65 6e 52 65 64 69 72 65
63 74 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 20
20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20
20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 57
65 20 2a 6d 61 79 2a 20 68 61 76 65 20 66 69 6e
69 73 68 65 64 20 68 65 72 65 2c 20 62 75 74 20
77 65 20 64 6f 6e 27 74 20 6b 6e 6f 77 20 66 6f
72 0a 20 20 20 20 20 20 20 20 2f 2f 20 73 75 72
65 2e 20 54 65 6c 6c 20 67 6e 6f 6d 65 2d 73 68
65 6c 6c 20 74 6f 20 72 75 6e 20 61 6e 6f 74 68
65 72 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 20
63 68 65 63 6b 0a 20 20 20 20 20 20 20 20 2f 2f
20 28 62 75 74 20 72 61 74 65 6c 69 6d 69 74 20
74 68 65 20 63 68 65 63 6b 73 2c 20 77 65 20 64
6f 6e 27 74 20 77 61 6e 74 20 74 6f 20 73 70 61
6d 0a 20 20 20 20 20 20 20 20 2f 2f 20 6e 6d 63
68 65 63 6b 2e 67 6e 6f 6d 65 2e 6f 72 67 20 66
6f 72 20 70 6f 72 74 61 6c 73 20 74 68 61 74 20
68 61 76 65 20 31 30 20 6f 72 20 6d 6f 72 65 20
69 6e 74 65 72 6e 61 6c 0a 20 20 20 20 20 20 20
20 2f 2f 20 72 65 64 69 72 65 63 74 73 20 2d 20
61 6e 64 20 75 6e 66 6f 72 74 75 6e 61 74 65 6c
79 20 74 68 65 79 20 65 78 69 73 74 29 0a 20 20
20 20 20 20 20 20 2f 2f 20 49 66 20 77 65 20 68
69 74 20 74 68 65 20 72 61 74 65 20 6c 69 6d 69
74 2c 20 77 65 20 61 6c 73 6f 20 71 75 65 75 65
20 61 20 72 65 63 68 65 63 6b 0a 20 20 20 20 20
20 20 20 2f 2f 20 77 68 65 6e 20 74 68 65 20 77
69 6e 64 6f 77 20 69 73 20 63 6c 6f 73 65 64 2c
20 6a 75 73 74 20 69 6e 20 63 61 73 65 20 77 65
20 6d 69 73 73 20 74 68 65 0a 20 20 20 20 20 20
20 20 2f 2f 20 66 69 6e 61 6c 20 63 68 65 63 6b
20 61 6e 64 20 64 6f 6e 27 74 20 72 65 61 6c 69
7a 65 20 77 65 27 72 65 20 63 6f 6e 6e 65 63 74
65 64 0a 20 20 20 20 20 20 20 20 2f 2f 20 54 68
69 73 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62 65
20 61 20 70 72 6f 62 6c 65 6d 20 69 6e 20 74 68
65 20 63 61 6e 63 65 6c 6c 65 64 20 6c 6f 67 69
63 2c 0a 20 20 20 20 20 20 20 20 2f 2f 20 62 65
63 61 75 73 65 20 69 66 20 74 68 65 20 75 73 65
72 20 64 6f 65 73 6e 27 74 20 77 61 6e 74 20 74
6f 20 73 74 61 72 74 20 74 68 65 20 6c 6f 67 69
6e 2c 0a 20 20 20 20 20 20 20 20 2f 2f 20 77 65
20 73 68 6f 75 6c 64 20 6e 6f 74 20 73 65 65 20
61 6e 79 20 72 65 64 69 72 65 63 74 20 61 74 20
61 6c 6c 2c 20 6f 75 74 73 69 64 65 20 74 68 69
73 2e 5f 75 72 69 0a 0a 20 20 20 20 20 20 20 20
6c 65 74 20 6e 6f 77 20 3d 20 47 4c 69 62 2e 67
65 74 5f 6d 6f 6e 6f 74 6f 6e 69 63 5f 74 69 6d
65 28 29 3b 0a 20 20 20 20 20 20 20 20 6c 65 74
20 73 68 6f 75 6c 64 52 65 63 68 65 63 6b 20 3d
20 28 6e 6f 77 20 2d 20 74 68 69 73 2e 5f 6c 61
73 74 52 65 63 68 65 63 6b 29 20 3e 0a 20 20 20
20 20 20 20 20 20 20 20 20 43 4f 4e 4e 45 43 54
49 56 49 54 59 5f 52 45 43 48 45 43 4b 5f 52 41
54 45 4c 49 4d 49 54 5f 54 49 4d 45 4f 55 54 3b
0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 73 68
6f 75 6c 64 52 65 63 68 65 63 6b 29 20 7b 0a 20
20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e
5f 6c 61 73 74 52 65 63 68 65 63 6b 20 3d 20 6e
6f 77 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20
74 68 69 73 2e 5f 72 65 63 68 65 63 6b 41 74 45
78 69 74 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20
20 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 64
6f 6e 65 43 61 6c 6c 62 61 63 6b 28 50 6f 72 74
61 6c 48 65 6c 70 65 72 52 65 73 75 6c 74 2e 52
45 43 48 45 43 4b 29 3b 0a 20 20 20 20 20 20 20
20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20
20 20 20 20 20 20 74 68 69 73 2e 5f 72 65 63 68
65 63 6b 41 74 45 78 69 74 20 3d 20 74 72 75 65
3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20
20 20 20 20 20 2f 2f 20 55 70 64 61 74 65 20 74
68 65 20 55 52 49 2c 20 69 6e 20 63 61 73 65 20
6f 66 20 63 68 61 69 6e 65 64 20 72 65 64 69 72
65 63 74 73 2c 20 73 6f 20 77 65 20 73 74 69 6c
6c 0a 20 20 20 20 20 20 20 20 2f 2f 20 74 68 69
6e 6b 20 77 65 27 72 65 20 64 6f 69 6e 67 20 74
68 65 20 6c 6f 67 69 6e 20 75 6e 74 69 6c 20 67
6e 6f 6d 65 2d 73 68 65 6c 6c 20 6b 69 6c 6c 73
20 75 73 0a 20 20 20 20 20 20 20 20 74 68 69 73
2e 5f 75 72 69 20 3d 20 75 72 69 3b 0a 0a 20 20
20 20 20 20 20 20 64 65 63 69 73 69 6f 6e 2e 75
73 65 28 29 3b 0a 20 20 20 20 20 20 20 20 72 65
74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 7d
0a 7d 29 3b 0a 0a 63 6f 6e 73 74 20 57 65 62 50
6f 72 74 61 6c 48 65 6c 70 65 72 20 3d 20 47 4f
62 6a 65 63 74 2e 72 65 67 69 73 74 65 72 43 6c
61 73 73 28 0a 63 6c 61 73 73 20 57 65 62 50 6f
72 74 61 6c 48 65 6c 70 65 72 20 65 78 74 65 6e
64 73 20 41 64 77 2e 41 70 70 6c 69 63 61 74 69
6f 6e 20 7b 0a 20 20 20 20 5f 69 6e 69 74 28 29
20 7b 0a 20 20 20 20 20 20 20 20 73 75 70 65 72
2e 5f 69 6e 69 74 28 7b 0a 20 20 20 20 20 20 20
20 20 20 20 20 61 70 70 6c 69 63 61 74 69 6f 6e
5f 69 64 3a 20 27 6f 72 67 2e 67 6e 6f 6d 65 2e
53 68 65 6c 6c 2e 50 6f 72 74 61 6c 48 65 6c 70
65 72 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20
20 66 6c 61 67 73 3a 20 47 69 6f 2e 41 70 70 6c
69 63 61 74 69 6f 6e 46 6c 61 67 73 2e 49 53 5f
53 45 52 56 49 43 45 2c 0a 20 20 20 20 20 20 20
20 20 20 20 20 69 6e 61 63 74 69 76 69 74 79 5f
74 69 6d 65 6f 75 74 3a 20 33 30 30 30 30 2c 0a
20 20 20 20 20 20 20 20 7d 29 3b 0a 0a 20 20 20
20 20 20 20 20 74 68 69 73 2e 5f 64 62 75 73 49
6d 70 6c 20 3d 20 47 69 6f 2e 44 42 75 73 45 78
70 6f 72 74 65 64 4f 62 6a 65 63 74 2e 77 72 61
70 4a 53 4f 62 6a 65 63 74 28 48 65 6c 70 65 72
44 42 75 73 49 6e 74 65 72 66 61 63 65 2c 20 74
68 69 73 29 3b 0a 20 20 20 20 20 20 20 20 74 68
69 73 2e 5f 71 75 65 75 65 20 3d 20 5b 5d 3b 0a
0a 20 20 20 20 20 20 20 20 6c 65 74 20 61 63 74
69 6f 6e 20 3d 20 6e 65 77 20 47 69 6f 2e 53 69
6d 70 6c 65 41 63 74 69 6f 6e 28 7b 6e 61 6d 65
3a 20 27 71 75 69 74 27 7d 29 3b 0a 20 20 20 20
20 20 20 20 61 63 74 69 6f 6e 2e 63 6f 6e 6e 65
63 74 28 27 61 63 74 69 76 61 74 65 27 2c 20 28
29 20 3d 3e 20 74 68 69 73 2e 61 63 74 69 76 65
5f 77 69 6e 64 6f 77 2e 64 65 73 74 72 6f 79 28
29 29 3b 0a 20 20 20 20 20 20 20 20 74 68 69 73
2e 61 64 64 5f 61 63 74 69 6f 6e 28 61 63 74 69
6f 6e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20
76 66 75 6e 63 5f 64 62 75 73 5f 72 65 67 69 73
74 65 72 28 63 6f 6e 6e 65 63 74 69 6f 6e 2c 20
70 61 74 68 29 20 7b 0a 20 20 20 20 20 20 20 20
74 68 69 73 2e 5f 64 62 75 73 49 6d 70 6c 2e 65
78 70 6f 72 74 28 63 6f 6e 6e 65 63 74 69 6f 6e
2c 20 70 61 74 68 29 3b 0a 20 20 20 20 20 20 20
20 73 75 70 65 72 2e 76 66 75 6e 63 5f 64 62 75
73 5f 72 65 67 69 73 74 65 72 28 63 6f 6e 6e 65
63 74 69 6f 6e 2c 20 70 61 74 68 29 3b 0a 20 20
20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75
65 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 76 66
75 6e 63 5f 64 62 75 73 5f 75 6e 72 65 67 69 73
74 65 72 28 63 6f 6e 6e 65 63 74 69 6f 6e 2c 20
70 61 74 68 29 20 7b 0a 20 20 20 20 20 20 20 20
74 68 69 73 2e 5f 64 62 75 73 49 6d 70 6c 2e 75
6e 65 78 70 6f 72 74 5f 66 72 6f 6d 5f 63 6f 6e
6e 65 63 74 69 6f 6e 28 63 6f 6e 6e 65 63 74 69
6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 73 75 70
65 72 2e 76 66 75 6e 63 5f 64 62 75 73 5f 75 6e
72 65 67 69 73 74 65 72 28 63 6f 6e 6e 65 63 74
69 6f 6e 2c 20 70 61 74 68 29 3b 0a 20 20 20 20
7d 0a 0a 20 20 20 20 76 66 75 6e 63 5f 61 63 74
69 76 61 74 65 28 29 20 7b 0a 20 20 20 20 20 20
20 20 2f 2f 20 49 66 20 6c 61 75 6e 63 68 65 64
20 6d 61 6e 75 61 6c 6c 79 20 28 66 6f 72 20 65
78 61 6d 70 6c 65 20 66 6f 72 20 74 65 73 74 69
6e 67 29 2c 20 66 6f 72 63 65 20 61 20 64 75 6d
6d 79 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f
6e 0a 20 20 20 20 20 20 20 20 2f 2f 20 73 65 73
73 69 6f 6e 20 77 69 74 68 20 74 68 65 20 64 65
66 61 75 6c 74 20 75 72 6c 0a 20 20 20 20 20 20
20 20 74 68 69 73 2e 41 75 74 68 65 6e 74 69 63
61 74 65 28 27 2f 6f 72 67 2f 67 6e 6f 6d 65 2f
64 75 6d 6d 79 27 2c 20 27 27 2c 20 30 29 3b 0a
20 20 20 20 7d 0a 0a 20 20 20 20 41 75 74 68 65
6e 74 69 63 61 74 65 28 63 6f 6e 6e 65 63 74 69
6f 6e 2c 20 75 72 6c 2c 20 74 69 6d 65 73 74 61
6d 70 29 20 7b 0a 20 20 20 20 20 20 20 20 74 68
69 73 2e 5f 71 75 65 75 65 2e 70 75 73 68 28 7b
63 6f 6e 6e 65 63 74 69 6f 6e 2c 20 75 72 6c 2c
20 74 69 6d 65 73 74 61 6d 70 7d 29 3b 0a 0a 20
20 20 20 20 20 20 20 74 68 69 73 2e 5f 70 72 6f
63 65 73 73 51 75 65 75 65 28 29 3b 0a 20 20 20
20 7d 0a 0a 20 20 20 20 43 6c 6f 73 65 28 63 6f
6e 6e 65 63 74 69 6f 6e 29 20 7b 0a 20 20 20 20
20 20 20 20 66 6f 72 20 28 6c 65 74 20 69 20 3d
20 30 3b 20 69 20 3c 20 74 68 69 73 2e 5f 71 75
65 75 65 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29
20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 6c
65 74 20 6f 62 6a 20 3d 20 74 68 69 73 2e 5f 71
75 65 75 65 5b 69 5d 3b 0a 0a 20 20 20 20 20 20
20 20 20 20 20 20 69 66 20 28 6f 62 6a 2e 63 6f
6e 6e 65 63 74 69 6f 6e 20 3d 3d 3d 20 63 6f 6e
6e 65 63 74 69 6f 6e 29 20 7b 0a 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6f
62 6a 2e 77 69 6e 64 6f 77 29 0a 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f
62 6a 2e 77 69 6e 64 6f 77 2e 64 65 73 74 72 6f
79 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 65
2e 73 70 6c 69 63 65 28 69 2c 20 31 29 3b 0a 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62
72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20
20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20
20 20 20 20 20 20 20 74 68 69 73 2e 5f 70 72 6f
63 65 73 73 51 75 65 75 65 28 29 3b 0a 20 20 20
20 7d 0a 0a 20 20 20 20 52 65 66 72 65 73 68 28
63 6f 6e 6e 65 63 74 69 6f 6e 29 20 7b 0a 20 20
20 20 20 20 20 20 66 6f 72 20 28 6c 65 74 20 69
20 3d 20 30 3b 20 69 20 3c 20 74 68 69 73 2e 5f
71 75 65 75 65 2e 6c 65 6e 67 74 68 3b 20 69 2b
2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20
20 6c 65 74 20 6f 62 6a 20 3d 20 74 68 69 73 2e
5f 71 75 65 75 65 5b 69 5d 3b 0a 0a 20 20 20 20
20 20 20 20 20 20 20 20 69 66 20 28 6f 62 6a 2e
63 6f 6e 6e 65 63 74 69 6f 6e 20 3d 3d 3d 20 63
6f 6e 6e 65 63 74 69 6f 6e 29 20 7b 0a 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20
28 6f 62 6a 2e 77 69 6e 64 6f 77 29 0a 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 6f 62 6a 2e 77 69 6e 64 6f 77 2e 72 65 66 72
65 73 68 28 29 3b 0a 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20
20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20
20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20
20 5f 70 72 6f 63 65 73 73 51 75 65 75 65 28 29
20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 74
68 69 73 2e 5f 71 75 65 75 65 2e 6c 65 6e 67 74
68 20 3d 3d 3d 20 30 29 0a 20 20 20 20 20 20 20
20 20 20 20 20 72 65 74 75 72 6e 3b 0a 0a 20 20
20 20 20 20 20 20 6c 65 74 20 74 6f 70 20 3d 20
74 68 69 73 2e 5f 71 75 65 75 65 5b 30 5d 3b 0a
20 20 20 20 20 20 20 20 69 66 20 28 74 6f 70 2e
77 69 6e 64 6f 77 20 21 3d 20 6e 75 6c 6c 29 0a
20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75
72 6e 3b 0a 0a 20 20 20 20 20 20 20 20 74 6f 70
2e 77 69 6e 64 6f 77 20 3d 20 6e 65 77 20 50 6f
72 74 61 6c 57 69 6e 64 6f 77 28 74 68 69 73 2c
20 74 6f 70 2e 75 72 6c 2c 20 74 6f 70 2e 74 69
6d 65 73 74 61 6d 70 2c 20 72 65 73 75 6c 74 20
3d 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20
20 74 68 69 73 2e 5f 64 62 75 73 49 6d 70 6c 2e
65 6d 69 74 5f 73 69 67 6e 61 6c 28 27 44 6f 6e
65 27 2c 20 6e 65 77 20 47 4c 69 62 2e 56 61 72
69 61 6e 74 28 27 28 6f 75 29 27 2c 20 5b 74 6f
70 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2c 20 72 65
73 75 6c 74 5d 29 29 3b 0a 20 20 20 20 20 20 20
20 7d 29 3b 0a 20 20 20 20 7d 0a 7d 29 3b 0a 0a
47 65 74 74 65 78 74 2e 62 69 6e 64 74 65 78 74
64 6f 6d 61 69 6e 28 43 6f 6e 66 69 67 2e 47 45
54 54 45 58 54 5f 50 41 43 4b 41 47 45 2c 20 43
6f 6e 66 69 67 2e 4c 4f 43 41 4c 45 44 49 52 29
3b 0a 47 65 74 74 65 78 74 2e 74 65 78 74 64 6f
6d 61 69 6e 28 43 6f 6e 66 69 67 2e 47 45 54 54
45 58 54 5f 50 41 43 4b 41 47 45 29 3b 0a 0a 63
6f 6e 73 74 20 61 70 70 20 3d 20 6e 65 77 20 57
65 62 50 6f 72 74 61 6c 48 65 6c 70 65 72 28 29
3b 0a 61 77 61 69 74 20 61 70 70 2e 72 75 6e 41
73 79 6e 63 28 5b 70 72 6f 67 72 61 6d 49 6e 76
6f 63 61 74 69 6f 6e 4e 61 6d 65 2c 20 2e 2e 2e
70 72 6f 67 72 61 6d 41 72 67 73 5d 29 3b 0a 00
00 28 75 75 61 79 29 70 6f 72 74 61 6c 48 65 6c
70 65 72 2f 04 00 00 00 6f 72 67 2f 09 00 00 00
73 68 65 6c 6c 2f 00 00 03 00 00 00 05 00 00 00
66 69 6c 65 55 74 69 6c 73 2e 6a 73 00 00 00 00
d6 0b 00 00 00 00 00 00 69 6d 70 6f 72 74 20 47
4c 69 62 20 66 72 6f 6d 20 27 67 69 3a 2f 2f 47
4c 69 62 27 3b 0a 69 6d 70 6f 72 74 20 47 69 6f
20 66 72 6f 6d 20 27 67 69 3a 2f 2f 47 69 6f 27
3b 0a 0a 65 78 70 6f 72 74 20 7b 6c 6f 61 64 49
6e 74 65 72 66 61 63 65 58 4d 4c 7d 20 66 72 6f
6d 20 27 2e 2f 64 62 75 73 55 74 69 6c 73 2e 6a
73 27 3b 0a 0a 2f 2a 2a 0a 20 2a 20 40 74 79 70
65 64 65 66 20 7b 6f 62 6a 65 63 74 7d 20 53 75
62 64 69 72 49 6e 66 6f 0a 20 2a 20 40 70 72 6f
70 65 72 74 79 20 7b 47 69 6f 2e 46 69 6c 65 7d
20 64 69 72 20 74 68 65 20 66 69 6c 65 20 6f 62
6a 65 63 74 20 66 6f 72 20 74 68 65 20 73 75 62
64 69 72 0a 20 2a 20 40 70 72 6f 70 65 72 74 79
20 7b 47 69 6f 2e 46 69 6c 65 49 6e 66 6f 7d 20
69 6e 66 6f 20 74 68 65 20 66 69 6c 65 20 64 65
73 63 72 69 70 74 6f 72 20 66 6f 72 20 74 68 65
20 73 75 62 64 69 72 0a 20 2a 2f 0a 0a 2f 2a 2a
0a 20 2a 20 40 70 61 72 61 6d 20 7b 73 74 72 69
6e 67 7d 20 73 75 62 64 69 72 20 74 68 65 20 73
75 62 64 69 72 65 63 74 6f 72 79 20 74 6f 20 73
65 61 72 63 68 20 77 69 74 68 69 6e 20 74 68 65
20 64 61 74 61 20 64 69 72 65 63 74 6f 72 69 65
73 0a 20 2a 20 40 70 61 72 61 6d 20 7b 62 6f 6f
6c 65 61 6e 7d 20 69 6e 63 6c 75 64 65 55 73 65
72 44 69 72 20 77 68 65 74 68 65 72 20 74 68 65
20 75 73 65 72 27 73 20 64 61 74 61 20 64 69 72
65 63 74 6f 72 79 20 73 68 6f 75 6c 64 20 61 6c
73 6f 20 62 65 20 73 65 61 72 63 68 65 64 20 69
6e 20 61 64 64 69 74 69 6f 6e 0a 20 2a 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f
20 74 68 65 20 73 79 73 74 65 6d 20 64 61 74 61
20 64 69 72 65 63 74 6f 72 69 65 73 0a 20 2a 20
40 72 65 74 75 72 6e 73 20 7b 47 65 6e 65 72 61
74 6f 72 3c 53 75 62 64 69 72 49 6e 66 6f 2c 20
76 6f 69 64 2c 20 76 6f 69 64 3e 7d 20 61 20 67
65 6e 65 72 61 74 6f 72 20 77 68 69 63 68 20 79
69 65 6c 64 73 20 66 69 6c 65 20 69 6e 66 6f 20
66 6f 72 20 73 75 62 64 69 72 65 63 74 6f 72 69
65 73 20 6e 61 6d 65 64 0a 20 2a 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 60 73 75 62 64 69 72
60 20 77 69 74 68 69 6e 20 64 61 74 61 20 64 69
72 65 63 74 6f 72 69 65 73 0a 20 2a 2f 0a 65 78
70 6f 72 74 20 66 75 6e 63 74 69 6f 6e 2a 20 63
6f 6c 6c 65 63 74 46 72 6f 6d 44 61 74 61 64 69
72 73 28 73 75 62 64 69 72 2c 20 69 6e 63 6c 75
64 65 55 73 65 72 44 69 72 29 20 7b 0a 20 20 20
20 6c 65 74 20 64 61 74 61 44 69 72 73 20 3d 20
47 4c 69 62 2e 67 65 74 5f 73 79 73 74 65 6d 5f
64 61 74 61 5f 64 69 72 73 28 29 3b 0a 20 20 20
20 69 66 20 28 69 6e 63 6c 75 64 65 55 73 65 72
44 69 72 29 0a 20 20 20 20 20 20 20 20 64 61 74
61 44 69 72 73 2e 75 6e 73 68 69 66 74 28 47 4c
69 62 2e 67 65 74 5f 75 73 65 72 5f 64 61 74 61
5f 64 69 72 28 29 29 3b 0a 0a 20 20 20 20 66 6f
72 20 28 6c 65 74 20 69 20 3d 20 30 3b 20 69 20
3c 20 64 61 74 61 44 69 72 73 2e 6c 65 6e 67 74
68 3b 20 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20
20 20 6c 65 74 20 70 61 74 68 20 3d 20 47 4c 69
62 2e 62 75 69 6c 64 5f 66 69 6c 65 6e 61 6d 65
76 28 5b 64 61 74 61 44 69 72 73 5b 69 5d 2c 20
27 67 6e 6f 6d 65 2d 73 68 65 6c 6c 27 2c 20 73
75 62 64 69 72 5d 29 3b 0a 20 20 20 20 20 20 20
20 6c 65 74 20 64 69 72 20 3d 20 47 69 6f 2e 46
69 6c 65 2e 6e 65 77 5f 66 6f 72 5f 70 61 74 68
28 70 61 74 68 29 3b 0a 0a 20 20 20 20 20 20 20
20 6c 65 74 20 66 69 6c 65 45 6e 75 6d 3b 0a 20
20 20 20 20 20 20 20 74 72 79 20 7b 0a 20 20 20
20 20 20 20 20 20 20 20 20 66 69 6c 65 45 6e 75
6d 20 3d 20 64 69 72 2e 65 6e 75 6d 65 72 61 74
65 5f 63 68 69 6c 64 72 65 6e 28 27 73 74 61 6e
64 61 72 64 3a 3a 6e 61 6d 65 2c 73 74 61 6e 64
61 72 64 3a 3a 74 79 70 65 27 2c 0a 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 47 69 6f 2e
46 69 6c 65 51 75 65 72 79 49 6e 66 6f 46 6c 61
67 73 2e 4e 4f 4e 45 2c 20 6e 75 6c 6c 29 3b 0a
20 20 20 20 20 20 20 20 7d 20 63 61 74 63 68 20
7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 69
6c 65 45 6e 75 6d 20 3d 20 6e 75 6c 6c 3b 0a 20
20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20
20 69 66 20 28 66 69 6c 65 45 6e 75 6d 20 21 3d
20 6e 75 6c 6c 29 20 7b 0a 20 20 20 20 20 20 20
20 20 20 20 20 6c 65 74 20 69 6e 66 6f 3b 0a 20
20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65
20 28 28 69 6e 66 6f 20 3d 20 66 69 6c 65 45 6e
75 6d 2e 6e 65 78 74 5f 66 69 6c 65 28 6e 75 6c
6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 79 69 65 6c 64 20 7b 64 69 72 3a
20 66 69 6c 65 45 6e 75 6d 2e 67 65 74 5f 63 68
69 6c 64 28 69 6e 66 6f 29 2c 20 69 6e 66 6f 7d
3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20
7d 0a 7d 0a 0a 2f 2a 2a 0a 20 2a 20 40 70 61 72
61 6d 20 7b 47 69 6f 2e 46 69 6c 65 7d 20 64 69
72 0a 20 2a 20 40 70 61 72 61 6d 20 7b 62 6f 6f
6c 65 61 6e 7d 20 64 65 6c 65 74 65 50 61 72 65
6e 74 0a 20 2a 2f 0a 65 78 70 6f 72 74 20 66 75
6e 63 74 69 6f 6e 20 72 65 63 75 72 73 69 76 65
6c 79 44 65 6c 65 74 65 44 69 72 28 64 69 72 2c
20 64 65 6c 65 74 65 50 61 72 65 6e 74 29 20 7b
0a 20 20 20 20 6c 65 74 20 63 68 69 6c 64 72 65
6e 20 3d 20 64 69 72 2e 65 6e 75 6d 65 72 61 74
65 5f 63 68 69 6c 64 72 65 6e 28 27 73 74 61 6e
64 61 72 64 3a 3a 6e 61 6d 65 2c 73 74 61 6e 64
61 72 64 3a 3a 74 79 70 65 27 2c 0a 20 20 20 20
20 20 20 20 47 69 6f 2e 46 69 6c 65 51 75 65 72
79 49 6e 66 6f 46 6c 61 67 73 2e 4e 4f 46 4f 4c
4c 4f 57 5f 53 59 4d 4c 49 4e 4b 53 2c 20 6e 75
6c 6c 29 3b 0a 0a 20 20 20 20 6c 65 74 20 69 6e
66 6f 3b 0a 20 20 20 20 77 68 69 6c 65 20 28 28
69 6e 66 6f 20 3d 20 63 68 69 6c 64 72 65 6e 2e
6e 65 78 74 5f 66 69 6c 65 28 6e 75 6c 6c 29 29
20 21 3d 20 6e 75 6c 6c 29 20 7b 0a 20 20 20 20
20 20 20 20 6c 65 74 20 74 79 70 65 20 3d 20 69
6e 66 6f 2e 67 65 74 5f 66 69 6c 65 5f 74 79 70
65 28 29 3b 0a 20 20 20 20 20 20 20 20 6c 65 74
20 63 68 69 6c 64 20 3d 20 64 69 72 2e 67 65 74
5f 63 68 69 6c 64 28 69 6e 66 6f 2e 67 65 74 5f
6e 61 6d 65 28 29 29 3b 0a 20 20 20 20 20 20 20
20 69 66 20 28 74 79 70 65 20 3d 3d 3d 20 47 69
6f 2e 46 69 6c 65 54 79 70 65 2e 52 45 47 55 4c
41 52 20 7c 7c 20 74 79 70 65 20 3d 3d 3d 20 47
69 6f 2e 46 69 6c 65 54 79 70 65 2e 53 59 4d 42
4f 4c 49 43 5f 4c 49 4e 4b 29 0a 20 20 20 20 20
20 20 20 20 20 20 20 63 68 69 6c 64 2e 64 65 6c
65 74 65 28 6e 75 6c 6c 29 3b 0a 20 20 20 20 20
20 20 20 65 6c 73 65 20 69 66 20 28 74 79 70 65
20 3d 3d 3d 20 47 69 6f 2e 46 69 6c 65 54 79 70
65 2e 44 49 52 45 43 54 4f 52 59 29 0a 20 20 20
20 20 20 20 20 20 20 20 20 72 65 63 75 72 73 69
76 65 6c 79 44 65 6c 65 74 65 44 69 72 28 63 68
69 6c 64 2c 20 74 72 75 65 29 3b 0a 20 20 20 20
7d 0a 0a 20 20 20 20 69 66 20 28 64 65 6c 65 74
65 50 61 72 65 6e 74 29 0a 20 20 20 20 20 20 20
20 64 69 72 2e 64 65 6c 65 74 65 28 6e 75 6c 6c
29 3b 0a 7d 0a 0a 2f 2a 2a 0a 20 2a 20 40 70 61
72 61 6d 20 7b 47 69 6f 2e 46 69 6c 65 7d 20 73
72 63 44 69 72 0a 20 2a 20 40 70 61 72 61 6d 20
7b 47 69 6f 2e 46 69 6c 65 7d 20 64 65 73 74 44
69 72 0a 20 2a 2f 0a 65 78 70 6f 72 74 20 66 75
6e 63 74 69 6f 6e 20 72 65 63 75 72 73 69 76 65
6c 79 4d 6f 76 65 44 69 72 28 73 72 63 44 69 72
2c 20 64 65 73 74 44 69 72 29 20 7b 0a 20 20 20
20 6c 65 74 20 63 68 69 6c 64 72 65 6e 20 3d 20
73 72 63 44 69 72 2e 65 6e 75 6d 65 72 61 74 65
5f 63 68 69 6c 64 72 65 6e 28 27 73 74 61 6e 64
61 72 64 3a 3a 6e 61 6d 65 2c 73 74 61 6e 64 61
72 64 3a 3a 74 79 70 65 27 2c 0a 20 20 20 20 20
20 20 20 47 69 6f 2e 46 69 6c 65 51 75 65 72 79
49 6e 66 6f 46 6c 61 67 73 2e 4e 4f 46 4f 4c 4c
4f 57 5f 53 59 4d 4c 49 4e 4b 53 2c 20 6e 75 6c
6c 29 3b 0a 0a 20 20 20 20 69 66 20 28 21 64 65
73 74 44 69 72 2e 71 75 65 72 79 5f 65 78 69 73
74 73 28 6e 75 6c 6c 29 29 0a 20 20 20 20 20 20
20 20 64 65 73 74 44 69 72 2e 6d 61 6b 65 5f 64
69 72 65 63 74 6f 72 79 5f 77 69 74 68 5f 70 61
72 65 6e 74 73 28 6e 75 6c 6c 29 3b 0a 0a 20 20
20 20 6c 65 74 20 69 6e 66 6f 3b 0a 20 20 20 20
77 68 69 6c 65 20 28 28 69 6e 66 6f 20 3d 20 63
68 69 6c 64 72 65 6e 2e 6e 65 78 74 5f 66 69 6c
65 28 6e 75 6c 6c 29 29 20 21 3d 20 6e 75 6c 6c
29 20 7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20
74 79 70 65 20 3d 20 69 6e 66 6f 2e 67 65 74 5f
66 69 6c 65 5f 74 79 70 65 28 29 3b 0a 20 20 20
20 20 20 20 20 6c 65 74 20 73 72 63 43 68 69 6c
64 20 3d 20 73 72 63 44 69 72 2e 67 65 74 5f 63
68 69 6c 64 28 69 6e 66 6f 2e 67 65 74 5f 6e 61
6d 65 28 29 29 3b 0a 20 20 20 20 20 20 20 20 6c
65 74 20 64 65 73 74 43 68 69 6c 64 20 3d 20 64
65 73 74 44 69 72 2e 67 65 74 5f 63 68 69 6c 64
28 69 6e 66 6f 2e 67 65 74 5f 6e 61 6d 65 28 29
29 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 74
79 70 65 20 3d 3d 3d 20 47 69 6f 2e 46 69 6c 65
54 79 70 65 2e 52 45 47 55 4c 41 52 20 7c 7c 20
74 79 70 65 20 3d 3d 3d 20 47 69 6f 2e 46 69 6c
65 54 79 70 65 2e 53 59 4d 42 4f 4c 49 43 5f 4c
49 4e 4b 29 0a 20 20 20 20 20 20 20 20 20 20 20
20 73 72 63 43 68 69 6c 64 2e 6d 6f 76 65 28 64
65 73 74 43 68 69 6c 64 2c 20 47 69 6f 2e 46 69
6c 65 43 6f 70 79 46 6c 61 67 73 2e 4e 4f 4e 45
2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 29 3b 0a 20
20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28
74 79 70 65 20 3d 3d 3d 20 47 69 6f 2e 46 69 6c
65 54 79 70 65 2e 44 49 52 45 43 54 4f 52 59 29
0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 63
75 72 73 69 76 65 6c 79 4d 6f 76 65 44 69 72 28
73 72 63 43 68 69 6c 64 2c 20 64 65 73 74 43 68
69 6c 64 29 3b 0a 20 20 20 20 7d 0a 7d 0a 00 00
28 75 75 61 79 29 67 6e 6f 6d 65 2f 07 00 00 00
00 00 00 00 00 00 00 00 01 1b 03 3b 4c 00 00 00
08 00 00 00 28 a6 ff ff 80 00 00 00 18 a7 ff ff
a8 00 00 00 28 a7 ff ff c0 00 00 00 08 a8 ff ff
00 01 00 00 18 a8 ff ff ec 00 00 00 28 a8 ff ff
18 01 00 00 58 a9 ff ff 68 00 00 00 48 aa ff ff
d8 00 00 00 00 00 00 00 14 00 00 00 00 00 00 00
01 7a 52 00 01 78 10 01 1b 0c 07 08 90 01 00 00
14 00 00 00 1c 00 00 00 e8 a8 ff ff 26 00 00 00
00 44 07 10 00 00 00 00 24 00 00 00 34 00 00 00
a0 a5 ff ff f0 00 00 00 00 0e 10 46 0e 18 4a 0f
0b 77 08 80 00 3f 1a 39 2a 33 24 22 00 00 00 00
14 00 00 00 5c 00 00 00 68 a6 ff ff 10 00 00 00
00 00 00 00 00 00 00 00 14 00 00 00 74 00 00 00
60 a6 ff ff e0 00 00 00 00 00 00 00 00 00 00 00
10 00 00 00 8c 00 00 00 68 a9 ff ff 10 00 00 00
00 00 00 00 10 00 00 00 a0 00 00 00 24 a7 ff ff
10 00 00 00 00 00 00 00 14 00 00 00 b4 00 00 00
00 a7 ff ff 10 00 00 00 00 00 00 00 00 00 00 00
30 00 00 00 cc 00 00 00 08 a7 ff ff 27 01 00 00
00 46 0e 10 8c 02 4f 0e 18 86 03 41 0e 20 83 04
49 0e 50 02 c7 0a 0e 20 41 0e 18 41 0e 10 42 0e
08 41 0b 00 00 00 00 00 04 00 00 00 40 00 00 00
05 00 00 00 47 4e 55 00 02 00 00 c0 04 00 00 00
03 00 00 00 00 00 00 00 02 80 00 c0 04 00 00 00
07 00 00 00 00 00 00 00 01 00 01 c0 04 00 00 00
01 00 00 00 00 00 00 00 02 00 01 c0 04 00 00 00
01 00 00 00 00 00 00 00 04 00 00 00 10 00 00 00
01 00 00 00 47 4e 55 00 00 00 00 00 03 00 00 00
02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30 14 00 00 00 00 00 00 10 12 00 00 00 00 00 00
f0 13 00 00 00 00 00 00 00 12 00 00 00 00 00 00
01 00 00 00 00 00 00 00 62 01 00 00 00 00 00 00
01 00 00 00 00 00 00 00 72 01 00 00 00 00 00 00
01 00 00 00 00 00 00 00 86 01 00 00 00 00 00 00
01 00 00 00 00 00 00 00 97 01 00 00 00 00 00 00
01 00 00 00 00 00 00 00 a3 01 00 00 00 00 00 00
0c 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00
0d 00 00 00 00 00 00 00 50 14 00 00 00 00 00 00
19 00 00 00 00 00 00 00 d0 7c 00 00 00 00 00 00
1b 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
1a 00 00 00 00 00 00 00 e0 7c 00 00 00 00 00 00
1c 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
f5 fe ff 6f 00 00 00 00 38 03 00 00 00 00 00 00
05 00 00 00 00 00 00 00 40 05 00 00 00 00 00 00
06 00 00 00 00 00 00 00 60 03 00 00 00 00 00 00
0a 00 00 00 00 00 00 00 e0 01 00 00 00 00 00 00
0b 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00
15 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
03 00 00 00 00 00 00 00 50 7f 00 00 00 00 00 00
02 00 00 00 00 00 00 00 50 01 00 00 00 00 00 00
14 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00
17 00 00 00 00 00 00 00 10 08 00 00 00 00 00 00
07 00 00 00 00 00 00 00 98 07 00 00 00 00 00 00
08 00 00 00 00 00 00 00 78 00 00 00 00 00 00 00
09 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00
1e 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
fb ff ff 6f 00 00 00 00 01 00 00 08 00 00 00 00
fe ff ff 6f 00 00 00 00 48 07 00 00 00 00 00 00
ff ff ff 6f 00 00 00 00 01 00 00 00 00 00 00 00
f0 ff ff 6f 00 00 00 00 20 07 00 00 00 00 00 00
24 00 00 00 00 00 00 00 60 09 00 00 00 00 00 00
23 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00
25 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0 7c 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 30 10 00 00 00 00 00 00
40 10 00 00 00 00 00 00 50 10 00 00 00 00 00 00
60 10 00 00 00 00 00 00 70 10 00 00 00 00 00 00
80 10 00 00 00 00 00 00 90 10 00 00 00 00 00 00
a0 10 00 00 00 00 00 00 b0 10 00 00 00 00 00 00
c0 10 00 00 00 00 00 00 d0 10 00 00 00 00 00 00
e0 10 00 00 00 00 00 00 f0 10 00 00 00 00 00 00
00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 08 80 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c8 20 00 00 00 00 00 00 28 49 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 2e 73 68 73 74 72 74
61 62 00 2e 69 6e 74 65 72 70 00 2e 67 6e 75 2e
68 61 73 68 00 2e 64 79 6e 73 79 6d 00 2e 64 79
6e 73 74 72 00 2e 67 6e 75 2e 76 65 72 73 69 6f
6e 00 2e 67 6e 75 2e 76 65 72 73 69 6f 6e 5f 72
00 2e 72 65 6c 61 2e 64 79 6e 00 2e 72 65 6c 61
2e 70 6c 74 00 2e 72 65 6c 72 2e 64 79 6e 00 2e
69 6e 69 74 00 2e 70 6c 74 2e 67 6f 74 00 2e 70
6c 74 2e 73 65 63 00 2e 74 65 78 74 00 2e 66 69
6e 69 00 2e 72 6f 64 61 74 61 00 2e 67 72 65 73
6f 75 72 63 65 2e 70 6f 72 74 61 6c 5f 6a 73 5f
72 65 73 6f 75 72 63 65 73 00 2e 65 68 5f 66 72
61 6d 65 5f 68 64 72 00 2e 65 68 5f 66 72 61 6d
65 00 2e 6e 6f 74 65 2e 67 6e 75 2e 70 72 6f 70
65 72 74 79 00 2e 6e 6f 74 65 2e 41 42 49 2d 74
61 67 00 2e 69 6e 69 74 5f 61 72 72 61 79 00 2e
66 69 6e 69 5f 61 72 72 61 79 00 2e 64 79 6e 61
6d 69 63 00 2e 64 61 74 61 00 2e 62 73 73 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0b 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00
18 03 00 00 00 00 00 00 18 03 00 00 00 00 00 00
1c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
13 00 00 00 f6 ff ff 6f 02 00 00 00 00 00 00 00
38 03 00 00 00 00 00 00 38 03 00 00 00 00 00 00
24 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
1d 00 00 00 0b 00 00 00 02 00 00 00 00 00 00 00
60 03 00 00 00 00 00 00 60 03 00 00 00 00 00 00
e0 01 00 00 00 00 00 00 04 00 00 00 01 00 00 00
08 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00
25 00 00 00 03 00 00 00 02 00 00 00 00 00 00 00
40 05 00 00 00 00 00 00 40 05 00 00 00 00 00 00
e0 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2d 00 00 00 ff ff ff 6f 02 00 00 00 00 00 00 00
20 07 00 00 00 00 00 00 20 07 00 00 00 00 00 00
28 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00
02 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00
3a 00 00 00 fe ff ff 6f 02 00 00 00 00 00 00 00
48 07 00 00 00 00 00 00 48 07 00 00 00 00 00 00
50 00 00 00 00 00 00 00 04 00 00 00 01 00 00 00
08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
49 00 00 00 04 00 00 00 02 00 00 00 00 00 00 00
98 07 00 00 00 00 00 00 98 07 00 00 00 00 00 00
78 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00
53 00 00 00 04 00 00 00 42 00 00 00 00 00 00 00
10 08 00 00 00 00 00 00 10 08 00 00 00 00 00 00
50 01 00 00 00 00 00 00 03 00 00 00 19 00 00 00
08 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00
5d 00 00 00 13 00 00 00 02 00 00 00 00 00 00 00
60 09 00 00 00 00 00 00 60 09 00 00 00 00 00 00
18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
67 00 00 00 01 00 00 00 06 00 00 00 00 00 00 00
00 10 00 00 00 00 00 00 00 10 00 00 00 00 00 00
1b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
58 00 00 00 01 00 00 00 06 00 00 00 00 00 00 00
20 10 00 00 00 00 00 00 20 10 00 00 00 00 00 00
f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
10 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
6d 00 00 00 01 00 00 00 06 00 00 00 00 00 00 00
10 11 00 00 00 00 00 00 10 11 00 00 00 00 00 00
10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
10 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
76 00 00 00 01 00 00 00 06 00 00 00 00 00 00 00
20 11 00 00 00 00 00 00 20 11 00 00 00 00 00 00
e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
10 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
7f 00 00 00 01 00 00 00 06 00 00 00 00 00 00 00
00 12 00 00 00 00 00 00 00 12 00 00 00 00 00 00
50 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00
10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
85 00 00 00 01 00 00 00 06 00 00 00 00 00 00 00
50 14 00 00 00 00 00 00 50 14 00 00 00 00 00 00
0d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
8b 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00
00 20 00 00 00 00 00 00 00 20 00 00 00 00 00 00
c1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
93 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00
c8 20 00 00 00 00 00 00 c8 20 00 00 00 00 00 00
30 49 00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b2 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00
f8 69 00 00 00 00 00 00 f8 69 00 00 00 00 00 00
4c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00
48 6a 00 00 00 00 00 00 48 6a 00 00 00 00 00 00
00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ca 00 00 00 07 00 00 00 02 00 00 00 00 00 00 00
48 6b 00 00 00 00 00 00 48 6b 00 00 00 00 00 00
50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
dd 00 00 00 07 00 00 00 02 00 00 00 00 00 00 00
98 6b 00 00 00 00 00 00 98 6b 00 00 00 00 00 00
20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
eb 00 00 00 0e 00 00 00 03 00 00 00 00 00 00 00
d0 7c 00 00 00 00 00 00 d0 6c 00 00 00 00 00 00
10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
f7 00 00 00 0f 00 00 00 03 00 00 00 00 00 00 00
e0 7c 00 00 00 00 00 00 e0 6c 00 00 00 00 00 00
10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
03 01 00 00 06 00 00 00 03 00 00 00 00 00 00 00
f0 7c 00 00 00 00 00 00 f0 6c 00 00 00 00 00 00
60 02 00 00 00 00 00 00 04 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00
71 00 00 00 01 00 00 00 03 00 00 00 00 00 00 00
50 7f 00 00 00 00 00 00 50 6f 00 00 00 00 00 00
b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
0c 01 00 00 01 00 00 00 03 00 00 00 00 00 00 00
00 80 00 00 00 00 00 00 00 70 00 00 00 00 00 00
48 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
12 01 00 00 08 00 00 00 03 00 00 00 00 00 00 00
48 80 00 00 00 00 00 00 48 70 00 00 00 00 00 00
08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 48 70 00 00 00 00 00 00
17 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
.ELF............
..>.....P.......
@.......`q......
....@.8...@.....
........@.......
@.......@.......
................
................
................
................
................
................
................
x.......x.......
................
................
........].......
]...............
................
................
.K.......K......
................
.l.......|......
.|......x.......
................
.........l......
.|.......|......
`.......`.......
................
Hk......Hk......
Hk......P.......
P...............
.........k......
.k.......k......
................
........S.td....
Hk......Hk......
Hk......P.......
P...............
P.td.....i......
.i.......i......
L.......L.......
........Q.td....
................
................
................
R.td.....l......
.|.......|......
0.......0.......
......../lib64/l
d-linux-x86-64.s
o.2.............
................
.........e.m....
................
................
................
................
........2.......
................
................
................
................
b...............
................
................
u...............
................
................
o...............
........;.......
................
6...............
................
................
................
........H.......
................
................
........A.......
................
................
........S..."...
................
.__gmon_start__.
g_object_unref._
ITM_deregisterTM
CloneTable.g_obj
ect_new._ITM_reg
isterTMCloneTabl
e.g_error_free.g
_log.g_static_re
source_init.g_st
atic_resource_fi
ni.g_static_reso
urce_get_resourc
e.gjs_context_ge
t_type.gjs_conte
xt_eval_module_f
ile.gjs_context_
set_argv.__stack
_chk_fail.bind_t
extdomain_codese
t.bindtextdomain
.__libc_start_ma
in.__cxa_finaliz
e.libgio-2.0.so.
0.libgobject-2.0
.so.0.libglib-2.
0.so.0.libgjs.so
.0.libc.so.6.GLI
BC_ABI_DT_RELR.G
LIBC_2.34.GLIBC_
2.4.GLIBC_2.2.5.
................
................
................
........B.......
................
.........ii.....
........u.i.....
................
................
................
................
................
................
................
................
h...............
........p.......
................
x...............
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
.|..............
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
....H...H...o..H
..t...H.........
.52o...%4o....@.
....h.........f.
....h.........f.
....h.........f.
....h.........f.
....h.........f.
....h.........f.
....h.........f.
....h.....r...f.
....h.....b...f.
....h.....R...f.
....h.....B...f.
....h.....2...f.
....h....."...f.
....h.........f.
.....%.n..f..D..
.....%>n..f..D..
.....%6n..f..D..
.....%.n..f..D..
.....%&n..f..D..
.....%.n..f..D..
.....%.n..f..D..
.....%.n..f..D..
.....%.n..f..D..
.....%.m..f..D..
.....%.m..f..D..
.....%.m..f..D..
.....%.m..f..D..
.....%.m..f..D..
.....%.m..f..D..
....H.=.n.......
....H.=.n...P...
....ATL.%....H..
....US..L..H..0d
H.,%(...H.l$(H..
H.5....H.D$.H.D$
.....H.D$.......
...H.5....L.....
..L...&...L.e..M
...E1.H......L.D
$.H..L..H.5....1
.......s.H.U.I..
Hc.H.......H.L$.
H.T$.L..H.5.....
|.....t#L.......
1.H.T$(dH+.%(...
u@H..0[]A\.H.D$.
H...........1.H.
H.1..g...H.|$...
...L.........D$.
.......f........
....1.I..^H..H..
.PTE1.1.H.=.....
..l...f.........
H.=.l..H...l..H9
.t.H..>l..H..t..
................
H.=.l..H.5.l..H)
.H..H..?H...H..H
..t.H...l..H..t.
..f..D..........
.....=Ml...u+UH.
=.k...H..t.H.=.k
........d.....%l
...]............
.....w..........
....H.=.k...0...
....H...H.......
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
....resource:///
org/gnome/shell.
/usr/share/local
e.gnome-shell.UT
F-8.search-path.
program-name....
resource:///org/
gnome/shell/port
alHelper/main.js
........Executio
n.of.main.js.thr
ew.exception:.%s
........GVariant
............8...
...(............
................
................
.&X.....8.....v.
H...............
......L.........
s.............v.
....6...r_......
6.....L.<...H...
...m....H.....v.
P....<..xh......
.<....L..=...=..
KP.......=....L.
.=...=..7,p.....
.=....L..=..(=..
........(=....v.
8=...I....$0....
.I....L.$I..(I..
dbusUtils.js....
........import.G
io.from.'gi://Gi
o';.import.GLib.
from.'gi://GLib'
;..import.*.as.C
onfig.from.'./co
nfig.js';..let._
ifaceResource.=.
null;../**..*.@p
rivate..*/.funct
ion._ensureIface
Resource().{....
.if.(_ifaceResou
rce).........ret
urn;......//.don
't.use.global.da
tadir.so.the.met
hod.is.usable.fr
om.tests/tools..
...let.dir.=.GLi
b.getenv('GNOME_
SHELL_DATADIR').
||.Config.PKGDAT
ADIR;.....let.pa
th.=.`${dir}/gno
me-shell-dbus-in
terfaces.gresour
ce`;....._ifaceR
esource.=.Gio.Re
source.load(path
);....._ifaceRes
ource._register(
);.}../**..*.@pa
ram.{string}.ifa
ce.the.interface
.name..*.@return
s.{string.|.null
}.the.XML.string
.or.null.if.it.i
s.not.found..*/.
export.function.
loadInterfaceXML
(iface).{....._e
nsureIfaceResour
ce();......let.u
ri.=.`resource:/
//org/gnome/shel
l/dbus-interface
s/${iface}.xml`;
.....let.f.=.Gio
.File.new_for_ur
i(uri);......try
.{.........let.[
ok_,.bytes].=.f.
load_contents(nu
ll);.........ret
urn.new.TextDeco
der().decode(byt
es);.....}.catch
.{.........log(`
Failed.to.load.D
-Bus.interface.$
{iface}`);.....}
......return.nul
l;.}../**..*.@pa
ram.{string}.ifa
ce.the.interface
.name..*.@param.
{string}.ifaceFi
le.the.interface
.filename..*.@re
turns.{string.|.
null}.the.XML.st
ring.or.null.if.
it.is.not.found.
.*/.export.funct
ion.loadSubInter
faceXML(iface,.i
faceFile).{.....
let.xml.=.loadIn
terfaceXML(iface
File);.....if.(!
xml).........ret
urn.null;......l
et.ifaceStartTag
.=.`<interface.n
ame="${iface}">`
;.....let.ifaceS
topTag.=.'</inte
rface>';.....let
.ifaceStartIndex
.=.xml.indexOf(i
faceStartTag);..
...let.ifaceEndI
ndex.=.xml.index
Of(ifaceStopTag,
.ifaceStartIndex
.+.1).+.ifaceSto
pTag.length;....
..let.xmlHeader.
=.'<!DOCTYPE.nod
e.PUBLIC\n'.+...
......'\'-//free
desktop//DTD.D-B
US.Object.Intros
pection.1.0//EN\
'\n'.+.........'
\'http://www.fre
edesktop.org/sta
ndards/dbus/1.0/
introspect.dtd\'
>\n'.+.........'
<node>\n';.....l
et.xmlFooter.=.'
</node>';......r
eturn.(.........
xmlHeader.+.....
....xml.substrin
g(ifaceStartInde
x,.ifaceEndIndex
).+.........xmlF
ooter);.}...(uua
y)/.....config.j
s.......&.......
const.pkg.=.impo
rts.package;../*
.The.name.of.thi
s.package.(not.l
ocalized).*/.exp
ort.const.PACKAG
E_NAME.=.'gnome-
shell';./*.The.v
ersion.of.this.p
ackage.*/.export
.const.PACKAGE_V
ERSION.=.'47.7';
./*.1.if.network
manager.is.avail
able,.0.otherwis
e.*/.export.cons
t.HAVE_NETWORKMA
NAGER.=.1;./*.1.
if.portal.helper
.is.enabled,.0.o
therwise.*/.expo
rt.const.HAVE_PO
RTAL_HELPER.=.1;
./*.gettext.pack
age.*/.export.co
nst.GETTEXT_PACK
AGE.=.'gnome-she
ll';./*.locale.d
ir.*/.export.con
st.LOCALEDIR.=.'
/usr/share/local
e';./*.other.sta
ndard.directorie
s.*/.export.cons
t.LIBEXECDIR.=.'
/usr/libexec';.e
xport.const.PKGD
ATADIR.=.'/usr/s
hare/gnome-shell
';./*.g-i.packag
e.versions.*/.ex
port.const.LIBMU
TTER_API_VERSION
.=.'15';..export
.const.HAVE_BLUE
TOOTH.=.pkg.chec
kSymbol('GnomeBl
uetooth',.'3.0',
.....'Client.def
ault_adapter_sta
te');...(uuay)mi
sc/.............
main.js..0......
import.Adw.from.
'gi://Adw?versio
n=1';.import.Gio
.from.'gi://Gio'
;.import.GLib.fr
om.'gi://GLib';.
import.GObject.f
rom.'gi://GObjec
t';.import.Gtk.f
rom.'gi://Gtk?ve
rsion=4.0';.impo
rt.WebKit.from.'
gi://WebKit?vers
ion=6.0';..impor
t.*.as.Gettext.f
rom.'gettext';.i
mport.{programIn
vocationName,.pr
ogramArgs}.from.
'system';..const
._.=.Gettext.get
text;..import.*.
as.Config.from.'
../misc/config.j
s';.import.{load
InterfaceXML}.fr
om.'../misc/file
Utils.js';..cons
t.PortalHelperRe
sult.=.{.....CAN
CELLED:.0,.....C
OMPLETED:.1,....
.RECHECK:.2,.};.
.const.PortalHel
perSecurityLevel
.=.{.....NOT_YET
_DETERMINED:.0,.
....SECURE:.1,..
...INSECURE:.2,.
};..const.HTTP_U
RI_FLAGS.=.....G
Lib.UriFlags.HAS
_PASSWORD.|.....
GLib.UriFlags.EN
CODED_PATH.|....
.GLib.UriFlags.E
NCODED_QUERY.|..
...GLib.UriFlags
.ENCODED_FRAGMEN
T.|.....GLib.Uri
Flags.SCHEME_NOR
MALIZE.|.....GLi
b.UriFlags.PARSE
_RELAXED;..const
.CONNECTIVITY_CH
ECK_HOST.=.'nmch
eck.gnome.org';.
const.CONNECTIVI
TY_CHECK_URI.=.`
http://${CONNECT
IVITY_CHECK_HOST
}`;.const.CONNEC
TIVITY_RECHECK_R
ATELIMIT_TIMEOUT
.=.30.*.GLib.USE
C_PER_SEC;..cons
t.HelperDBusInte
rface.=.loadInte
rfaceXML('org.gn
ome.Shell.Portal
Helper');..const
.PortalSecurityB
utton.=.GObject.
registerClass(.c
lass.PortalSecur
ityButton.extend
s.Gtk.MenuButton
.{....._init().{
.........const.p
opover.=.new.Gtk
.Popover();.....
.....super._init
({.............p
opover,.........
....visible:.fal
se,.........});.
.........const.v
box.=.new.Gtk.Bo
x({.............
orientation:.Gtk
.Orientation.VER
TICAL,..........
...margin_top:.6
,.............ma
rgin_bottom:.6,.
............marg
in_start:.6,....
.........margin_
end:.6,.........
....spacing:.6,.
........});.....
....popover.set_
child(vbox);....
......const.hbox
.=.new.Gtk.Box({
.............ori
entation:.Gtk.Or
ientation.HORIZO
NTAL,...........
..halign:.Gtk.Al
ign.CENTER,.....
....});.........
vbox.append(hbox
);..........this
._secureIcon.=.n
ew.Gtk.Image();.
........hbox.app
end(this._secure
Icon);..........
this._secureIcon
.bind_property('
icon-name',.....
........this,.'i
con-name',......
.......GObject.B
indingFlags.DEFA
ULT);..........t
his._titleLabel.
=.new.Gtk.Label(
);.........this.
_titleLabel.add_
css_class('title
');.........hbox
.append(this._ti
tleLabel);......
....this._descri
ptionLabel.=.new
.Gtk.Label({....
.........wrap:.t
rue,............
.max_width_chars
:.32,.........})
;.........vbox.a
ppend(this._desc
riptionLabel);..
...}......setPop
overTitle(label)
.{.........this.
_titleLabel.set_
text(label);....
.}......setSecur
ityIcon(security
Level).{........
.switch.(securit
yLevel).{.......
..case.PortalHel
perSecurityLevel
.NOT_YET_DETERMI
NED:............
.this.hide();...
..........break;
.........case.Po
rtalHelperSecuri
tyLevel.SECURE:.
............this
.show();........
.....this._secur
eIcon.icon_name.
=.'channel-secur
e-symbolic';....
.........this._d
escriptionLabel.
label.=._('Your.
connection.seems
.to.be.secure');
.............bre
ak;.........case
.PortalHelperSec
urityLevel.INSEC
URE:............
.this.show();...
..........this._
secureIcon.icon_
name.=.'channel-
insecure-symboli
c';.............
this._descriptio
nLabel.label.=..
..............._
('Your.connectio
n.to.this.hotspo
t.login.is.not.s
ecure..Passwords
.or.other.inform
ation.you.enter.
on.this.page.can
.be.viewed.by.pe
ople.nearby.');.
............brea
k;.........}....
.}.});..const.Po
rtalWindow.=.GOb
ject.registerCla
ss(.class.Portal
Window.extends.G
tk.ApplicationWi
ndow.{....._init
(application,.ur
l,.timestamp,.do
neCallback).{...
......super._ini
t({.............
application,....
.........title:.
_('Hotspot.Login
'),.............
default_width:.6
00,.............
default_height:.
450,.........});
..........const.
headerbar.=.new.
Gtk.HeaderBar();
.........this._s
ecureMenu.=.new.
PortalSecurityBu
tton();.........
headerbar.pack_s
tart(this._secur
eMenu);.........
.this.set_titleb
ar(headerbar);..
........if.(!url
).{.............
url.=.CONNECTIVI
TY_CHECK_URI;...
..........this._
originalUrlWasGn
ome.=.true;.....
....}.else.{....
.........this._o
riginalUrlWasGno
me.=.false;.....
....}.........th
is._uri.=.GLib.U
ri.parse(url,.HT
TP_URI_FLAGS);..
.......this._eve
rSeenRedirect.=.
false;.........t
his._originalUrl
.=.url;.........
this._doneCallba
ck.=.doneCallbac
k;.........this.
_lastRecheck.=.0
;.........this._
recheckAtExit.=.
false;..........
this._networkSes
sion.=.WebKit.Ne
tworkSession.new
_ephemeral();...
......this._netw
orkSession.set_p
roxy_settings(We
bKit.NetworkProx
yMode.NO_PROXY,.
null);..........
this._webContext
.=.new.WebKit.We
bContext();.....
....this._webCon
text.set_cache_m
odel(WebKit.Cach
eModel.DOCUMENT_
VIEWER);........
..this._webView.
=.new.WebKit.Web
View({..........
...networkSessio
n:.this._network
Session,........
.....webContext:
.this._webContex
t,.........});..
.......this._web
View.connect('de
cide-policy',.th
is._onDecidePoli
cy.bind(this));.
........this._we
bView.connect('l
oad-changed',.th
is._onLoadChange
d.bind(this));..
.......this._web
View.connect('in
secure-content-d
etected',.this._
onInsecureConten
tDetected.bind(t
his));.........t
his._webView.con
nect('load-faile
d-with-tls-error
s',.this._onLoad
FailedWithTlsErr
ors.bind(this));
.........this._w
ebView.load_uri(
url);.........th
is._webView.conn
ect('notify::uri
',.this._syncUri
.bind(this));...
......this._sync
Uri();..........
this.set_child(t
his._webView);..
.......this.maxi
mize();.........
this.present_wit
h_time(timestamp
);..........this
.application.set
_accels_for_acti
on('app.quit',.[
'<Primary>q',.'<
Primary>w']);...
..}......_syncUr
i().{.........co
nst.{uri}.=.this
._webView;......
....try.{.......
......const.[,.,
.host].=.GLib.Ur
i.split_network(
uri,.HTTP_URI_FL
AGS);...........
..this._secureMe
nu.setPopoverTit
le(host);.......
..}.catch.(e).{.
............if.(
uri.!=.null)....
.............con
sole.error(`Fail
ed.to.parse.Uri.
${uri}:.${e.mess
age}`);.........
....this._secure
Menu.setPopoverT
itle('');.......
..}.....}......r
efresh().{......
...this._everSee
nRedirect.=.fals
e;.........this.
_webView.load_ur
i(this._original
Url);.....}.....
.vfunc_close_req
uest().{........
.if.(this._reche
ckAtExit).......
......this._done
Callback(PortalH
elperResult.RECH
ECK);.........el
se.............t
his._doneCallbac
k(PortalHelperRe
sult.CANCELLED);
.........return.
false;.....}....
.._onLoadChanged
(view,.loadEvent
).{.........if.(
loadEvent.===.We
bKit.LoadEvent.S
TARTED).{.......
......this._secu
reMenu.setSecuri
tyIcon(PortalHel
perSecurityLevel
.NOT_YET_DETERMI
NED);.........}.
else.if.(loadEve
nt.===.WebKit.Lo
adEvent.COMMITTE
D).{............
.let.tlsInfo.=.t
his._webView.get
_tls_info();....
.........let.ret
.=.tlsInfo[0];..
...........let.f
lags.=.tlsInfo[2
];.............i
f.(ret.&&.flags.
===.0)..........
.......this._sec
ureMenu.setSecur
ityIcon(PortalHe
lperSecurityLeve
l.SECURE);......
.......else.....
............this
._secureMenu.set
SecurityIcon(Por
talHelperSecurit
yLevel.INSECURE)
;.........}.....
}......_onInsecu
reContentDetecte
d().{.........th
is._secureMenu.s
etSecurityIcon(P
ortalHelperSecur
ityLevel.INSECUR
E);.....}......_
onLoadFailedWith
TlsErrors(view,.
failingURI,.cert
ificate,._errors
).{.........this
._secureMenu.set
SecurityIcon(Por
talHelperSecurit
yLevel.INSECURE)
;.........let.ur
i.=.GLib.Uri.par
se(failingURI,.H
TTP_URI_FLAGS);.
........this._ne
tworkSession.all
ow_tls_certifica
te_for_host(cert
ificate,.uri.get
_host());.......
..this._webView.
load_uri(failing
URI);.........re
turn.true;.....}
......_onDecideP
olicy(view,.deci
sion,.type).{...
......if.(type.=
==.WebKit.Policy
DecisionType.RES
PONSE)..........
...return.false;
..........const.
navigationAction
.=.decision.get_
navigation_actio
n();.........con
st.request.=.nav
igationAction.ge
t_request();....
......if.(type.=
==.WebKit.Policy
DecisionType.NEW
_WINDOW_ACTION).
{.............if
.(navigationActi
on.is_user_gestu
re()).{.........
........//.Even.
though.the.porta
l.asks.for.a.new
.window,........
.........//.perf
orm.the.navigati
on.in.the.curren
t.one..Some.....
............//.p
ortals.open.a.wi
ndow.as.their.la
st.login.step.an
d...............
..//.ignoring.th
at.window.causes
.them.to.not.let
.the............
.....//.user.go.
through..We.don'
t.risk.popups.ta
king.over.......
..........//.the
.page.because.we
.check.that.the.
navigation.is...
..............//
.user.initiated.
................
.this._webView.l
oad_request(requ
est);...........
..}.............
.decision.ignore
();.............
return.true;....
.....}..........
const.uri.=.GLib
.Uri.parse(reque
st.get_uri(),.HT
TP_URI_FLAGS);..
........if.(uri.
get_host().!==.t
his._uri.get_hos
t().&&.this._ori
ginalUrlWasGnome
).{.............
if.(uri.get_host
().===.CONNECTIV
ITY_CHECK_HOST.&
&.this._everSeen
Redirect).{.....
............//.Y
ay,.we.got.to.gn
ome!............
.....decision.ig
nore();.........
........this._do
neCallback(Porta
lHelperResult.CO
MPLETED);.......
..........return
.true;..........
...}.else.if.(ur
i.get_host().!==
.CONNECTIVITY_CH
ECK_HOST).{.....
............this
._everSeenRedire
ct.=.true;......
.......}........
.}..........//.W
e.*may*.have.fin
ished.here,.but.
we.don't.know.fo
r.........//.sur
e..Tell.gnome-sh
ell.to.run.anoth
er.connectivity.
check.........//
.(but.ratelimit.
the.checks,.we.d
on't.want.to.spa
m.........//.nmc
heck.gnome.org.f
or.portals.that.
have.10.or.more.
internal........
.//.redirects.-.
and.unfortunatel
y.they.exist)...
......//.If.we.h
it.the.rate.limi
t,.we.also.queue
.a.recheck......
...//.when.the.w
indow.is.closed,
.just.in.case.we
.miss.the.......
..//.final.check
.and.don't.reali
ze.we're.connect
ed.........//.Th
is.should.not.be
.a.problem.in.th
e.cancelled.logi
c,.........//.be
cause.if.the.use
r.doesn't.want.t
o.start.the.logi
n,.........//.we
.should.not.see.
any.redirect.at.
all,.outside.thi
s._uri..........
let.now.=.GLib.g
et_monotonic_tim
e();.........let
.shouldRecheck.=
.(now.-.this._la
stRecheck).>....
.........CONNECT
IVITY_RECHECK_RA
TELIMIT_TIMEOUT;
..........if.(sh
ouldRecheck).{..
...........this.
_lastRecheck.=.n
ow;.............
this._recheckAtE
xit.=.false;....
.........this._d
oneCallback(Port
alHelperResult.R
ECHECK);........
.}.else.{.......
......this._rech
eckAtExit.=.true
;.........}.....
.....//.Update.t
he.URI,.in.case.
of.chained.redir
ects,.so.we.stil
l.........//.thi
nk.we're.doing.t
he.login.until.g
nome-shell.kills
.us.........this
._uri.=.uri;....
......decision.u
se();.........re
turn.true;.....}
.});..const.WebP
ortalHelper.=.GO
bject.registerCl
ass(.class.WebPo
rtalHelper.exten
ds.Adw.Applicati
on.{....._init()
.{.........super
._init({........
.....application
_id:.'org.gnome.
Shell.PortalHelp
er',............
.flags:.Gio.Appl
icationFlags.IS_
SERVICE,........
.....inactivity_
timeout:.30000,.
........});.....
.....this._dbusI
mpl.=.Gio.DBusEx
portedObject.wra
pJSObject(Helper
DBusInterface,.t
his);.........th
is._queue.=.[];.
.........let.act
ion.=.new.Gio.Si
mpleAction({name
:.'quit'});.....
....action.conne
ct('activate',.(
).=>.this.active
_window.destroy(
));.........this
.add_action(acti
on);.....}......
vfunc_dbus_regis
ter(connection,.
path).{.........
this._dbusImpl.e
xport(connection
,.path);........
.super.vfunc_dbu
s_register(conne
ction,.path);...
......return.tru
e;.....}......vf
unc_dbus_unregis
ter(connection,.
path).{.........
this._dbusImpl.u
nexport_from_con
nection(connecti
on);.........sup
er.vfunc_dbus_un
register(connect
ion,.path);.....
}......vfunc_act
ivate().{.......
..//.If.launched
.manually.(for.e
xample.for.testi
ng),.force.a.dum
my.authenticatio
n.........//.ses
sion.with.the.de
fault.url.......
..this.Authentic
ate('/org/gnome/
dummy',.'',.0);.
....}......Authe
nticate(connecti
on,.url,.timesta
mp).{.........th
is._queue.push({
connection,.url,
.timestamp});...
.......this._pro
cessQueue();....
.}......Close(co
nnection).{.....
....for.(let.i.=
.0;.i.<.this._qu
eue.length;.i++)
.{.............l
et.obj.=.this._q
ueue[i];........
......if.(obj.co
nnection.===.con
nection).{......
...........if.(o
bj.window)......
...............o
bj.window.destro
y();............
.....this._queue
.splice(i,.1);..
...............b
reak;...........
..}.........}...
.......this._pro
cessQueue();....
.}......Refresh(
connection).{...
......for.(let.i
.=.0;.i.<.this._
queue.length;.i+
+).{............
.let.obj.=.this.
_queue[i];......
........if.(obj.
connection.===.c
onnection).{....
.............if.
(obj.window)....
................
.obj.window.refr
esh();..........
.......break;...
..........}.....
....}.....}.....
._processQueue()
.{.........if.(t
his._queue.lengt
h.===.0)........
.....return;....
......let.top.=.
this._queue[0];.
........if.(top.
window.!=.null).
............retu
rn;..........top
.window.=.new.Po
rtalWindow(this,
.top.url,.top.ti
mestamp,.result.
=>.{............
.this._dbusImpl.
emit_signal('Don
e',.new.GLib.Var
iant('(ou)',.[to
p.connection,.re
sult]));........
.});.....}.});..
Gettext.bindtext
domain(Config.GE
TTEXT_PACKAGE,.C
onfig.LOCALEDIR)
;.Gettext.textdo
main(Config.GETT
EXT_PACKAGE);..c
onst.app.=.new.W
ebPortalHelper()
;.await.app.runA
sync([programInv
ocationName,....
programArgs]);..
.(uuay)portalHel
per/....org/....
shell/..........
fileUtils.js....
........import.G
Lib.from.'gi://G
Lib';.import.Gio
.from.'gi://Gio'
;..export.{loadI
nterfaceXML}.fro
m.'./dbusUtils.j
s';../**..*.@typ
edef.{object}.Su
bdirInfo..*.@pro
perty.{Gio.File}
.dir.the.file.ob
ject.for.the.sub
dir..*.@property
.{Gio.FileInfo}.
info.the.file.de
scriptor.for.the
.subdir..*/../**
..*.@param.{stri
ng}.subdir.the.s
ubdirectory.to.s
earch.within.the
.data.directorie
s..*.@param.{boo
lean}.includeUse
rDir.whether.the
.user's.data.dir
ectory.should.al
so.be.searched.i
n.addition..*...
................
..............to
.the.system.data
.directories..*.
@returns.{Genera
tor<SubdirInfo,.
void,.void>}.a.g
enerator.which.y
ields.file.info.
for.subdirectori
es.named..*.....
................
................
.........`subdir
`.within.data.di
rectories..*/.ex
port.function*.c
ollectFromDatadi
rs(subdir,.inclu
deUserDir).{....
.let.dataDirs.=.
GLib.get_system_
data_dirs();....
.if.(includeUser
Dir).........dat
aDirs.unshift(GL
ib.get_user_data
_dir());......fo
r.(let.i.=.0;.i.
<.dataDirs.lengt
h;.i++).{.......
..let.path.=.GLi
b.build_filename
v([dataDirs[i],.
'gnome-shell',.s
ubdir]);........
.let.dir.=.Gio.F
ile.new_for_path
(path);.........
.let.fileEnum;..
.......try.{....
.........fileEnu
m.=.dir.enumerat
e_children('stan
dard::name,stand
ard::type',.....
............Gio.
FileQueryInfoFla
gs.NONE,.null);.
........}.catch.
{.............fi
leEnum.=.null;..
.......}........
.if.(fileEnum.!=
.null).{........
.....let.info;..
...........while
.((info.=.fileEn
um.next_file(nul
l)))............
.....yield.{dir:
.fileEnum.get_ch
ild(info),.info}
;.........}.....
}.}../**..*.@par
am.{Gio.File}.di
r..*.@param.{boo
lean}.deletePare
nt..*/.export.fu
nction.recursive
lyDeleteDir(dir,
.deleteParent).{
.....let.childre
n.=.dir.enumerat
e_children('stan
dard::name,stand
ard::type',.....
....Gio.FileQuer
yInfoFlags.NOFOL
LOW_SYMLINKS,.nu
ll);......let.in
fo;.....while.((
info.=.children.
next_file(null))
.!=.null).{.....
....let.type.=.i
nfo.get_file_typ
e();.........let
.child.=.dir.get
_child(info.get_
name());........
.if.(type.===.Gi
o.FileType.REGUL
AR.||.type.===.G
io.FileType.SYMB
OLIC_LINK)......
.......child.del
ete(null);......
...else.if.(type
.===.Gio.FileTyp
e.DIRECTORY)....
.........recursi
velyDeleteDir(ch
ild,.true);.....
}......if.(delet
eParent)........
.dir.delete(null
);.}../**..*.@pa
ram.{Gio.File}.s
rcDir..*.@param.
{Gio.File}.destD
ir..*/.export.fu
nction.recursive
lyMoveDir(srcDir
,.destDir).{....
.let.children.=.
srcDir.enumerate
_children('stand
ard::name,standa
rd::type',......
...Gio.FileQuery
InfoFlags.NOFOLL
OW_SYMLINKS,.nul
l);......if.(!de
stDir.query_exis
ts(null)).......
..destDir.make_d
irectory_with_pa
rents(null);....
..let.info;.....
while.((info.=.c
hildren.next_fil
e(null)).!=.null
).{.........let.
type.=.info.get_
file_type();....
.....let.srcChil
d.=.srcDir.get_c
hild(info.get_na
me());.........l
et.destChild.=.d
estDir.get_child
(info.get_name()
);.........if.(t
ype.===.Gio.File
Type.REGULAR.||.
type.===.Gio.Fil
eType.SYMBOLIC_L
INK)............
.srcChild.move(d
estChild,.Gio.Fi
leCopyFlags.NONE
,.null,.null);..
.......else.if.(
type.===.Gio.Fil
eType.DIRECTORY)
.............rec
ursivelyMoveDir(
srcChild,.destCh
ild);.....}.}...
(uuay)gnome/....
...........;L...
....(...........
....(...........
............(...
....X...h...H...
................
.zR..x..........
............&...
.D......$...4...
...........F..J.
.w...?.9*3$"....
....\...h.......
............t...
`...............
........h.......
............$...
................
................
0...........'...
.F....O....A....
I.P.....A..A..B.
.A..........@...
....GNU.........
................
................
................
................
....GNU.........
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
................
0...............
................
........b.......
........r.......
................
................
................
................
........P.......
.........|......
................
.........|......
................
...o....8.......
........@.......
........`.......
................
................
................
........P.......
........P.......
................
................
................
........x.......
................
................
...o............
...o....H.......
...o............
...o............
$.......`.......
#...............
%...............
................
................
................
................
................
................
.|..............
........0.......
@.......P.......
`.......p.......
................
................
................
................
................
................
................
................
................
........(I......
................
..........shstrt
ab..interp..gnu.
hash..dynsym..dy
nstr..gnu.versio
n..gnu.version_r
..rela.dyn..rela
.plt..relr.dyn..
init..plt.got..p
lt.sec..text..fi
ni..rodata..gres
ource.portal_js_
resources..eh_fr
ame_hdr..eh_fram
e..note.gnu.prop
erty..note.ABI-t
ag..init_array..
fini_array..dyna
mic..data..bss..
................
................
................
................
................
................
................
................
.......o........
8.......8.......
$...............
................
................
`.......`.......
................
................
%...............
@.......@.......
................
................
-......o........
................
(...............
................
:......o........
H.......H.......
P...............
................
I...............
................
x...............
................
S.......B.......
................
P...............
................
]...............
`.......`.......
................
................
g...............
................
................
................
X...............
................
................
................
m...............
................
................
................
v...............
................
................
................
................
................
P...............
................
................
P.......P.......
................
................
................
................
................
................
................
................
0I..............
................
................
.i.......i......
L...............
................
................
Hj......Hj......
................
................
................
Hk......Hk......
P...............
................
................
.k.......k......
................
................
................
.|.......l......
................
................
................
.|.......l......
................
................
................
.|.......l......
`...............
................
q...............
P.......Po......
................
................
................
.........p......
H...............
................
................
H.......Hp......
................
................
................
........Hp......
................
................
Type: PHDR
Flags: R
Offset in file: 0x40
Size in file: 728
Vaddr in memory: 0x40
Size in memory: 728
Alignment: 0x8
Type: INTERP
Flags: R
Offset in file: 0x318
Size in file: 28
Vaddr in memory: 0x318
Size in memory: 28
Alignment: 0x1
Type: LOAD
Flags: R
Offset in file: 0x0
Size in file: 2424 (2.4 KiB)
Vaddr in memory: 0x0
Size in memory: 2424 (2.4 KiB)
Alignment: 0x1000
Type: LOAD
Flags: RX
Offset in file: 0x1000
Size in file: 1117 (1.1 KiB)
Vaddr in memory: 0x1000
Size in memory: 1117 (1.1 KiB)
Alignment: 0x1000
Type: LOAD
Flags: R
Offset in file: 0x2000
Size in file: 19384 (18.9 KiB)
Vaddr in memory: 0x2000
Size in memory: 19384 (18.9 KiB)
Alignment: 0x1000
Type: LOAD
Flags: RW
Offset in file: 0x6cd0
Size in file: 888
Vaddr in memory: 0x7cd0
Size in memory: 896
Alignment: 0x1000
Type: DYNAMIC
Flags: RW
Offset in file: 0x6cf0
Size in file: 608
Vaddr in memory: 0x7cf0
Size in memory: 608
Alignment: 0x8
Type: NOTE
Flags: R
Offset in file: 0x6b48
Size in file: 80
Vaddr in memory: 0x6b48
Size in memory: 80
Alignment: 0x8
Type: NOTE
Flags: R
Offset in file: 0x6b98
Size in file: 32
Vaddr in memory: 0x6b98
Size in memory: 32
Alignment: 0x4
Type: Unknown: 1685382483
Flags: R
Offset in file: 0x6b48
Size in file: 80
Vaddr in memory: 0x6b48
Size in memory: 80
Alignment: 0x8
Type: GNU_EH_FRAME (OS-specific)
Flags: R
Offset in file: 0x69f8
Size in file: 76
Vaddr in memory: 0x69f8
Size in memory: 76
Alignment: 0x4
Type: GNU_STACK (OS-specific)
Flags: RW
Offset in file: 0x0
Size in file: 0
Vaddr in memory: 0x0
Size in memory: 0
Alignment: 0x10
Type: GNU_RELRO (OS-specific)
Flags: R
Offset in file: 0x6cd0
Size in file: 816
Vaddr in memory: 0x7cd0
Size in memory: 816
Alignment: 0x1
Index: 0
Name:
Type: NULL
Flags: 0
Vaddr in memory: 0x0
Offset in file: 0x0
Size in file: 0
Linked section: 0
Extra info: 0
Alignment: 0x0
Size of entries: 0
Index: 1
Name: .interp
Type: PROGBITS
Flags: A
Vaddr in memory: 0x318
Offset in file: 0x318
Size in file: 28
Linked section: 0
Extra info: 0
Alignment: 0x1
Size of entries: 0
Index: 2
Name: .gnu.hash
Type: GNU_HASH (OS-specific)
Flags: A
Vaddr in memory: 0x338
Offset in file: 0x338
Size in file: 36
Linked section: 3
Extra info: 0
Alignment: 0x8
Size of entries: 0
Index: 3
Name: .dynsym
Type: DYNSYM
Flags: A
Vaddr in memory: 0x360
Offset in file: 0x360
Size in file: 480
Linked section: 4
Extra info: 1
Alignment: 0x8
Size of entries: 24
Index: 4
Name: .dynstr
Type: STRTAB
Flags: A
Vaddr in memory: 0x540
Offset in file: 0x540
Size in file: 480
Linked section: 0
Extra info: 0
Alignment: 0x1
Size of entries: 0
Index: 5
Name: .gnu.version
Type: HIOS
Flags: A
Vaddr in memory: 0x720
Offset in file: 0x720
Size in file: 40
Linked section: 3
Extra info: 0
Alignment: 0x2
Size of entries: 2
Index: 6
Name: .gnu.version_r
Type: VER_NEED (OS-specific)
Flags: A
Vaddr in memory: 0x748
Offset in file: 0x748
Size in file: 80
Linked section: 4
Extra info: 1
Alignment: 0x8
Size of entries: 0
Index: 7
Name: .rela.dyn
Type: RELA
Flags: A
Vaddr in memory: 0x798
Offset in file: 0x798
Size in file: 120
Linked section: 3
Extra info: 0
Alignment: 0x8
Size of entries: 24
Index: 8
Name: .rela.plt
Type: RELA
Flags: A
Vaddr in memory: 0x810
Offset in file: 0x810
Size in file: 336
Linked section: 3
Extra info: 25
Alignment: 0x8
Size of entries: 24
Index: 9
Name: .relr.dyn
Type: Unknown: 19
Flags: A
Vaddr in memory: 0x960
Offset in file: 0x960
Size in file: 24
Linked section: 0
Extra info: 0
Alignment: 0x8
Size of entries: 8
Index: 10
Name: .init
Type: PROGBITS
Flags: AX
Vaddr in memory: 0x1000
Offset in file: 0x1000
Size in file: 27
Linked section: 0
Extra info: 0
Alignment: 0x4
Size of entries: 0
Index: 11
Name: .plt
Type: PROGBITS
Flags: AX
Vaddr in memory: 0x1020
Offset in file: 0x1020
Size in file: 240
Linked section: 0
Extra info: 0
Alignment: 0x10
Size of entries: 16
Index: 12
Name: .plt.got
Type: PROGBITS
Flags: AX
Vaddr in memory: 0x1110
Offset in file: 0x1110
Size in file: 16
Linked section: 0
Extra info: 0
Alignment: 0x10
Size of entries: 16
Index: 13
Name: .plt.sec
Type: PROGBITS
Flags: AX
Vaddr in memory: 0x1120
Offset in file: 0x1120
Size in file: 224
Linked section: 0
Extra info: 0
Alignment: 0x10
Size of entries: 16
Index: 14
Name: .text
Type: PROGBITS
Flags: AX
Vaddr in memory: 0x1200
Offset in file: 0x1200
Size in file: 592
Linked section: 0
Extra info: 0
Alignment: 0x10
Size of entries: 0
Index: 15
Name: .fini
Type: PROGBITS
Flags: AX
Vaddr in memory: 0x1450
Offset in file: 0x1450
Size in file: 13
Linked section: 0
Extra info: 0
Alignment: 0x4
Size of entries: 0
Index: 16
Name: .rodata
Type: PROGBITS
Flags: A
Vaddr in memory: 0x2000
Offset in file: 0x2000
Size in file: 193
Linked section: 0
Extra info: 0
Alignment: 0x8
Size of entries: 0
Index: 17
Name: .gresource.portal_js_resources
Type: PROGBITS
Flags: A
Vaddr in memory: 0x20c8
Offset in file: 0x20c8
Size in file: 18736 (18.3 KiB)
Linked section: 0
Extra info: 0
Alignment: 0x8
Size of entries: 0
Index: 18
Name: .eh_frame_hdr
Type: PROGBITS
Flags: A
Vaddr in memory: 0x69f8
Offset in file: 0x69f8
Size in file: 76
Linked section: 0
Extra info: 0
Alignment: 0x4
Size of entries: 0
Index: 19
Name: .eh_frame
Type: PROGBITS
Flags: A
Vaddr in memory: 0x6a48
Offset in file: 0x6a48
Size in file: 256
Linked section: 0
Extra info: 0
Alignment: 0x8
Size of entries: 0
Index: 20
Name: .note.gnu.property
Type: NOTE
Flags: A
Vaddr in memory: 0x6b48
Offset in file: 0x6b48
Size in file: 80
Linked section: 0
Extra info: 0
Alignment: 0x8
Size of entries: 0
Index: 21
Name: .note.ABI-tag
Type: NOTE
Flags: A
Vaddr in memory: 0x6b98
Offset in file: 0x6b98
Size in file: 32
Linked section: 0
Extra info: 0
Alignment: 0x4
Size of entries: 0
Index: 22
Name: .init_array
Type: INIT_ARRAY
Flags: WA
Vaddr in memory: 0x7cd0
Offset in file: 0x6cd0
Size in file: 16
Linked section: 0
Extra info: 0
Alignment: 0x8
Size of entries: 8
Index: 23
Name: .fini_array
Type: FINI_ARRAY
Flags: WA
Vaddr in memory: 0x7ce0
Offset in file: 0x6ce0
Size in file: 16
Linked section: 0
Extra info: 0
Alignment: 0x8
Size of entries: 8
Index: 24
Name: .dynamic
Type: DYNAMIC
Flags: WA
Vaddr in memory: 0x7cf0
Offset in file: 0x6cf0
Size in file: 608
Linked section: 4
Extra info: 0
Alignment: 0x8
Size of entries: 16
Index: 25
Name: .got
Type: PROGBITS
Flags: WA
Vaddr in memory: 0x7f50
Offset in file: 0x6f50
Size in file: 176
Linked section: 0
Extra info: 0
Alignment: 0x8
Size of entries: 8
Index: 26
Name: .data
Type: PROGBITS
Flags: WA
Vaddr in memory: 0x8000
Offset in file: 0x7000
Size in file: 72
Linked section: 0
Extra info: 0
Alignment: 0x20
Size of entries: 0
Index: 27
Name: .bss
Type: NOBITS
Flags: WA
Vaddr in memory: 0x8048
Offset in file: 0x7048
Size in file: 8
Linked section: 0
Extra info: 0
Alignment: 0x1
Size of entries: 0
Index: 28
Name: .shstrtab
Type: STRTAB
Flags: 0
Vaddr in memory: 0x0
Offset in file: 0x7048
Size in file: 279
Linked section: 0
Extra info: 0
Alignment: 0x1
Size of entries: 0
Type: PHDR
Size in file: 728
Size in memory: 728
Type: INTERP
Size in file: 28
Size in memory: 28
Interpreter: /lib64/ld-linux-x86-64.so.2
Type: LOAD
Size in file: 2424 (2.4 KiB)
Size in memory: 2424 (2.4 KiB)
Type: LOAD
Size in file: 1117 (1.1 KiB)
Size in memory: 1117 (1.1 KiB)
Type: LOAD
Size in file: 19384 (18.9 KiB)
Size in memory: 19384 (18.9 KiB)
Type: LOAD
Size in file: 888
Size in memory: 896
Type: DYNAMIC
Size in file: 608
Size in memory: 608
Type: NOTE
Size in file: 80
Size in memory: 80
Name: GNU
Type: 0x5
Desc: 02 00 00 c0 04 00 00 00 03 00 00 00 00 00 00 00 02 80 00 c0 04 00 00 00 07 00 00 00 00 00 00 00 01 00 01 c0 04 00 00 00 01 00 00 00 00 00 00 00 02 00 01 c0 04 00 00 00 01 00 00 00 00 00 00 00
Name: GNU
Type: 0x1
Desc: 00 00 00 00 03 00 00 00 02 00 00 00 00 00 00 00
Type: NOTE
Size in file: 32
Size in memory: 32
Name: GNU
Type: 0x5
Desc: 02 00 00 c0 04 00 00 00 03 00 00 00 00 00 00 00 02 80 00 c0 04 00 00 00 07 00 00 00 00 00 00 00 01 00 01 c0 04 00 00 00 01 00 00 00 00 00 00 00 02 00 01 c0 04 00 00 00 01 00 00 00 00 00 00 00
Name: GNU
Type: 0x1
Desc: 00 00 00 00 03 00 00 00 02 00 00 00 00 00 00 00
Type: Unknown: 1685382483
Size in file: 80
Size in memory: 80
Type: GNU_EH_FRAME (OS-specific)
Size in file: 76
Size in memory: 76
Type: GNU_STACK (OS-specific)
Size in file: 0
Size in memory: 0
Type: GNU_RELRO (OS-specific)
Size in file: 816
Size in memory: 816
Type: GNU_HASH (OS-specific)
Size: 36
Type: STRTAB
Size: 480
__gmon_start__
g_object_unref
_ITM_deregisterTMCloneTable
g_object_new
_ITM_registerTMCloneTable
g_error_free
g_log
g_static_resource_init
g_static_resource_fini
g_static_resource_get_resource
gjs_context_get_type
gjs_context_eval_module_file
gjs_context_set_argv
__stack_chk_fail
bind_textdomain_codeset
bindtextdomain
__libc_start_main
__cxa_finalize
libgio-2.0.so.0
libgobject-2.0.so.0
libglib-2.0.so.0
libgjs.so.0
libc.so.6
GLIBC_ABI_DT_RELR
GLIBC_2.34
GLIBC_2.4
GLIBC_2.2.5
Type: VER_NEED (OS-specific)
Size: 80
Type: Unknown: 19
Size: 24
Type: PROGBITS
Size: 18736 (18.3 KiB)
Type: INIT_ARRAY
Size: 16
Type: FINI_ARRAY
Size: 16
Type: STRTAB
Size: 279
.shstrtab
.interp
.gnu.hash
.dynsym
.dynstr
.gnu.version
.gnu.version_r
.rela.dyn
.rela.plt
.relr.dyn
.init
.plt.got
.plt.sec
.text
.fini
.rodata
.gresource.portal_js_resources
.eh_frame_hdr
.eh_frame
.note.gnu.property
.note.ABI-tag
.init_array
.fini_array
.dynamic
.data
.bss