aboutsummaryrefslogtreecommitdiffstats
path: root/composer.phar
blob: fca2a8d72dd02c9e5025a760b940b5fd46e06d93 (plain)
ofshex dumpascii
0000 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 70 68 70 0a 3c 3f 70 68 70 0a 2f 2a 0a 20 2a 20 54 #!/usr/bin/env.php.<?php./*..*.T
0020 68 69 73 20 66 69 6c 65 20 69 73 20 70 61 72 74 20 6f 66 20 43 6f 6d 70 6f 73 65 72 2e 0a 20 2a his.file.is.part.of.Composer...*
0040 0a 20 2a 20 28 63 29 20 4e 69 6c 73 20 41 64 65 72 6d 61 6e 6e 20 3c 6e 61 64 65 72 6d 61 6e 40 ..*.(c).Nils.Adermann.<naderman@
0060 6e 61 64 65 72 6d 61 6e 2e 64 65 3e 0a 20 2a 20 20 20 20 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 naderman.de>..*.....Jordi.Boggia
0080 6e 6f 20 3c 6a 2e 62 6f 67 67 69 61 6e 6f 40 73 65 6c 64 2e 62 65 3e 0a 20 2a 0a 20 2a 20 46 6f no.<j.boggiano@seld.be>..*..*.Fo
00a0 72 20 74 68 65 20 66 75 6c 6c 20 63 6f 70 79 72 69 67 68 74 20 61 6e 64 20 6c 69 63 65 6e 73 65 r.the.full.copyright.and.license
00c0 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 70 6c 65 61 73 65 20 76 69 65 77 0a 20 2a 20 74 68 65 .information,.please.view..*.the
00e0 20 6c 69 63 65 6e 73 65 20 74 68 61 74 20 69 73 20 6c 6f 63 61 74 65 64 20 61 74 20 74 68 65 20 .license.that.is.located.at.the.
0100 62 6f 74 74 6f 6d 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2e 0a 20 2a 2f 0a 0a 2f 2f 20 41 76 6f bottom.of.this.file...*/..//.Avo
0120 69 64 20 41 50 43 20 63 61 75 73 69 6e 67 20 72 61 6e 64 6f 6d 20 66 61 74 61 6c 20 65 72 72 6f id.APC.causing.random.fatal.erro
0140 72 73 20 70 65 72 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 63 6f 6d 70 6f 73 rs.per.https://github.com/compos
0160 65 72 2f 63 6f 6d 70 6f 73 65 72 2f 69 73 73 75 65 73 2f 32 36 34 0a 69 66 20 28 65 78 74 65 6e er/composer/issues/264.if.(exten
0180 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 61 70 63 27 29 20 26 26 20 69 6e 69 5f 67 65 74 28 27 61 sion_loaded('apc').&&.ini_get('a
01a0 70 63 2e 65 6e 61 62 6c 65 5f 63 6c 69 27 29 20 26 26 20 69 6e 69 5f 67 65 74 28 27 61 70 63 2e pc.enable_cli').&&.ini_get('apc.
01c0 63 61 63 68 65 5f 62 79 5f 64 65 66 61 75 6c 74 27 29 29 20 7b 0a 20 20 20 20 69 66 20 28 76 65 cache_by_default')).{.....if.(ve
01e0 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 70 68 70 76 65 72 73 69 6f 6e 28 27 61 70 63 27 29 2c rsion_compare(phpversion('apc'),
0200 20 27 33 2e 30 2e 31 32 27 2c 20 27 3e 3d 27 29 29 20 7b 0a 20 20 20 20 20 20 20 20 69 6e 69 5f .'3.0.12',.'>=')).{.........ini_
0220 73 65 74 28 27 61 70 63 2e 63 61 63 68 65 5f 62 79 5f 64 65 66 61 75 6c 74 27 2c 20 30 29 3b 0a set('apc.cache_by_default',.0);.
0240 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 66 77 72 69 74 65 28 53 54 44 45 ....}.else.{.........fwrite(STDE
0260 52 52 2c 20 27 57 61 72 6e 69 6e 67 3a 20 41 50 43 20 3c 3d 20 33 2e 30 2e 31 32 20 6d 61 79 20 RR,.'Warning:.APC.<=.3.0.12.may.
0280 63 61 75 73 65 20 66 61 74 61 6c 20 65 72 72 6f 72 73 20 77 68 65 6e 20 72 75 6e 6e 69 6e 67 20 cause.fatal.errors.when.running.
02a0 63 6f 6d 70 6f 73 65 72 20 63 6f 6d 6d 61 6e 64 73 2e 27 2e 50 48 50 5f 45 4f 4c 29 3b 0a 20 20 composer.commands.'.PHP_EOL);...
02c0 20 20 20 20 20 20 66 77 72 69 74 65 28 53 54 44 45 52 52 2c 20 27 55 70 64 61 74 65 20 41 50 43 ......fwrite(STDERR,.'Update.APC
02e0 2c 20 6f 72 20 73 65 74 20 61 70 63 2e 65 6e 61 62 6c 65 5f 63 6c 69 20 6f 72 20 61 70 63 2e 63 ,.or.set.apc.enable_cli.or.apc.c
0300 61 63 68 65 5f 62 79 5f 64 65 66 61 75 6c 74 20 74 6f 20 30 20 69 6e 20 79 6f 75 72 20 70 68 70 ache_by_default.to.0.in.your.php
0320 2e 69 6e 69 2e 27 2e 50 48 50 5f 45 4f 4c 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 50 68 61 72 3a 3a .ini.'.PHP_EOL);.....}.}..Phar::
0340 6d 61 70 50 68 61 72 28 27 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 27 29 3b 0a 72 65 71 75 69 72 mapPhar('composer.phar');.requir
0360 65 20 27 70 68 61 72 3a 2f 2f 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 2f 62 69 6e 2f 63 6f 6d 70 e.'phar://composer.phar/bin/comp
0380 6f 73 65 72 27 3b 0a 0a 5f 5f 48 41 4c 54 5f 43 4f 4d 50 49 4c 45 52 28 29 3b 20 3f 3e 0d 0a 5a oser';..__HALT_COMPILER();.?>..Z
03a0 7b 00 00 a5 01 00 00 11 00 00 00 01 00 0d 00 00 00 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 00 00 {................composer.phar..
03c0 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 41 75 74 6f 6c 6f 61 64 2f 41 75 74 6f ..+...src/Composer/Autoload/Auto
03e0 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 2e 70 68 70 01 53 00 00 92 f5 f7 56 01 53 00 00 2c 2c 10 loadGenerator.php.S.....V.S..,,.
0400 61 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 41 75 74 6f 6c 6f a........+...src/Composer/Autolo
0420 61 64 2f 43 6c 61 73 73 4d 61 70 47 65 6e 65 72 61 74 6f 72 2e 70 68 70 37 10 00 00 92 f5 f7 56 ad/ClassMapGenerator.php7......V
0440 37 10 00 00 50 73 d1 3d b6 01 00 00 00 00 00 00 16 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 7...Ps.=............src/Composer
0460 2f 43 61 63 68 65 2e 70 68 70 85 12 00 00 92 f5 f7 56 85 12 00 00 9d 94 19 26 b6 01 00 00 00 00 /Cache.php.......V.......&......
0480 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 41 62 6f 75 74 ..%...src/Composer/Command/About
04a0 43 6f 6d 6d 61 6e 64 2e 70 68 70 c0 02 00 00 92 f5 f7 56 c0 02 00 00 c4 69 57 52 b6 01 00 00 00 Command.php.......V.....iWR.....
04c0 00 00 00 27 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 41 72 63 68 ...'...src/Composer/Command/Arch
04e0 69 76 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 09 13 00 00 92 f5 f7 56 09 13 00 00 f2 b1 dc 9b b6 01 iveCommand.php.......V..........
0500 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 42 ......$...src/Composer/Command/B
0520 61 73 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 7a 06 00 00 92 f5 f7 56 7a 06 00 00 44 5c e4 a6 b6 01 aseCommand.phpz......Vz...D\....
0540 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 42 ..........src/Composer/Command/B
0560 61 73 65 44 65 70 65 6e 64 65 6e 63 79 43 6f 6d 6d 61 6e 64 2e 70 68 70 cf 18 00 00 92 f5 f7 56 aseDependencyCommand.php.......V
0580 cf 18 00 00 04 83 61 b9 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 ......a.........*...src/Composer
05a0 2f 43 6f 6d 6d 61 6e 64 2f 43 6c 65 61 72 43 61 63 68 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 5e 05 /Command/ClearCacheCommand.php^.
05c0 00 00 92 f5 f7 56 5e 05 00 00 83 f7 8d 0f b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f .....V^...............&...src/Co
05e0 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 43 6f 6e 66 69 67 43 6f 6d 6d 61 6e 64 2e 70 68 70 mposer/Command/ConfigCommand.php
0600 62 3a 00 00 92 f5 f7 56 62 3a 00 00 1d 79 26 d7 b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f b:.....Vb:...y&.........-...src/
0620 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 43 72 65 61 74 65 50 72 6f 6a 65 63 74 43 6f Composer/Command/CreateProjectCo
0640 6d 6d 61 6e 64 2e 70 68 70 f5 33 00 00 92 f5 f7 56 f5 33 00 00 75 c7 91 87 b6 01 00 00 00 00 00 mmand.php.3.....V.3..u..........
0660 00 27 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 44 65 70 65 6e 64 .'...src/Composer/Command/Depend
0680 73 43 6f 6d 6d 61 6e 64 2e 70 68 70 b6 02 00 00 92 f5 f7 56 b6 02 00 00 e1 1f 30 1a b6 01 00 00 sCommand.php.......V......0.....
06a0 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 44 69 61 ....(...src/Composer/Command/Dia
06c0 67 6e 6f 73 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 ab 44 00 00 92 f5 f7 56 ab 44 00 00 02 ec d1 20 gnoseCommand.php.D.....V.D......
06e0 b6 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 ........,...src/Composer/Command
0700 2f 44 75 6d 70 41 75 74 6f 6c 6f 61 64 43 6f 6d 6d 61 6e 64 2e 70 68 70 df 08 00 00 92 f5 f7 56 /DumpAutoloadCommand.php.......V
0720 df 08 00 00 ac 78 78 4b b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 .....xxK........$...src/Composer
0740 2f 43 6f 6d 6d 61 6e 64 2f 45 78 65 63 43 6f 6d 6d 61 6e 64 2e 70 68 70 da 06 00 00 92 f5 f7 56 /Command/ExecCommand.php.......V
0760 da 06 00 00 2c 68 a3 20 b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 ....,h..........&...src/Composer
0780 2f 43 6f 6d 6d 61 6e 64 2f 47 6c 6f 62 61 6c 43 6f 6d 6d 61 6e 64 2e 70 68 70 17 07 00 00 92 f5 /Command/GlobalCommand.php......
07a0 f7 56 17 07 00 00 f1 e7 7f 32 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V.......2........$...src/Compos
07c0 65 72 2f 43 6f 6d 6d 61 6e 64 2f 48 6f 6d 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 63 0d 00 00 92 f5 er/Command/HomeCommand.phpc.....
07e0 f7 56 63 0d 00 00 b7 78 c6 d0 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .Vc....x..........$...src/Compos
0800 65 72 2f 43 6f 6d 6d 61 6e 64 2f 49 6e 69 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 bc 3c 00 00 92 f5 er/Command/InitCommand.php.<....
0820 f7 56 bc 3c 00 00 9c c3 99 2d b6 01 00 00 00 00 00 00 27 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V.<.....-........'...src/Compos
0840 65 72 2f 43 6f 6d 6d 61 6e 64 2f 49 6e 73 74 61 6c 6c 43 6f 6d 6d 61 6e 64 2e 70 68 70 10 14 00 er/Command/InstallCommand.php...
0860 00 92 f5 f7 56 10 14 00 00 9e df a0 55 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d ....V.......U........(...src/Com
0880 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 4c 69 63 65 6e 73 65 73 43 6f 6d 6d 61 6e 64 2e 70 68 poser/Command/LicensesCommand.ph
08a0 70 22 0e 00 00 92 f5 f7 56 22 0e 00 00 4c 38 7d 27 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 p"......V"...L8}'........)...src
08c0 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 50 72 6f 68 69 62 69 74 73 43 6f 6d 6d 61 /Composer/Command/ProhibitsComma
08e0 6e 64 2e 70 68 70 ca 02 00 00 92 f5 f7 56 ca 02 00 00 97 d5 d3 80 b6 01 00 00 00 00 00 00 26 00 nd.php.......V................&.
0900 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 52 65 6d 6f 76 65 43 6f 6d ..src/Composer/Command/RemoveCom
0920 6d 61 6e 64 2e 70 68 70 4e 13 00 00 92 f5 f7 56 4e 13 00 00 69 ed a5 1a b6 01 00 00 00 00 00 00 mand.phpN......VN...i...........
0940 27 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 52 65 71 75 69 72 65 '...src/Composer/Command/Require
0960 43 6f 6d 6d 61 6e 64 2e 70 68 70 bf 1c 00 00 92 f5 f7 56 bf 1c 00 00 92 0b 1f 92 b6 01 00 00 00 Command.php.......V.............
0980 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 52 75 6e 53 ...)...src/Composer/Command/RunS
09a0 63 72 69 70 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 68 0c 00 00 92 f5 f7 56 68 0c 00 00 e8 e3 9b 16 criptCommand.phph......Vh.......
09c0 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 ........+...src/Composer/Command
09e0 2f 53 63 72 69 70 74 41 6c 69 61 73 43 6f 6d 6d 61 6e 64 2e 70 68 70 02 05 00 00 92 f5 f7 56 02 /ScriptAliasCommand.php.......V.
0a00 05 00 00 ae 25 fe 9b b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f ....%..........&...src/Composer/
0a20 43 6f 6d 6d 61 6e 64 2f 53 65 61 72 63 68 43 6f 6d 6d 61 6e 64 2e 70 68 70 78 08 00 00 92 f5 f7 Command/SearchCommand.phpx......
0a40 56 78 08 00 00 4e 9c 88 21 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 Vx...N..!........*...src/Compose
0a60 72 2f 43 6f 6d 6d 61 6e 64 2f 53 65 6c 66 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 94 r/Command/SelfUpdateCommand.php.
0a80 2f 00 00 92 f5 f7 56 94 2f 00 00 b9 05 7e de b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 /.....V./....~.........$...src/C
0aa0 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 53 68 6f 77 43 6f 6d 6d 61 6e 64 2e 70 68 70 d8 omposer/Command/ShowCommand.php.
0ac0 41 00 00 92 f5 f7 56 d8 41 00 00 20 25 e9 24 b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 A.....V.A...%.$........&...src/C
0ae0 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 53 74 61 74 75 73 43 6f 6d 6d 61 6e 64 2e 70 68 omposer/Command/StatusCommand.ph
0b00 70 c2 0c 00 00 92 f5 f7 56 c2 0c 00 00 00 fc 4c 51 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 p.......V......LQ........(...src
0b20 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 53 75 67 67 65 73 74 73 43 6f 6d 6d 61 6e /Composer/Command/SuggestsComman
0b40 64 2e 70 68 70 a7 0d 00 00 92 f5 f7 56 a7 0d 00 00 cc 78 ee 5d b6 01 00 00 00 00 00 00 26 00 00 d.php.......V.....x.]........&..
0b60 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 55 70 64 61 74 65 43 6f 6d 6d .src/Composer/Command/UpdateComm
0b80 61 6e 64 2e 70 68 70 6e 22 00 00 92 f5 f7 56 6e 22 00 00 76 8e 9d da b6 01 00 00 00 00 00 00 28 and.phpn".....Vn"..v...........(
0ba0 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 56 61 6c 69 64 61 74 65 ...src/Composer/Command/Validate
0bc0 43 6f 6d 6d 61 6e 64 2e 70 68 70 17 14 00 00 92 f5 f7 56 17 14 00 00 74 1d 4e b9 b6 01 00 00 00 Command.php.......V....t.N......
0be0 00 00 00 19 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 70 6f 73 65 72 2e 70 68 70 .......src/Composer/Composer.php
0c00 05 09 00 00 92 f5 f7 56 05 09 00 00 13 92 b6 80 b6 01 00 00 00 00 00 00 17 00 00 00 73 72 63 2f .......V....................src/
0c20 43 6f 6d 70 6f 73 65 72 2f 43 6f 6e 66 69 67 2e 70 68 70 ea 1d 00 00 92 f5 f7 56 ea 1d 00 00 23 Composer/Config.php.......V....#
0c40 08 00 0a b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6e 66 ...........-...src/Composer/Conf
0c60 69 67 2f 43 6f 6e 66 69 67 53 6f 75 72 63 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 ae 01 00 00 ig/ConfigSourceInterface.php....
0c80 92 f5 f7 56 ae 01 00 00 36 4a 5b aa b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 ...V....6J[.........(...src/Comp
0ca0 6f 73 65 72 2f 43 6f 6e 66 69 67 2f 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 2e 70 68 70 oser/Config/JsonConfigSource.php
0cc0 52 0e 00 00 92 f5 f7 56 52 0e 00 00 47 b5 64 6b b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f R......VR...G.dk........$...src/
0ce0 43 6f 6d 70 6f 73 65 72 2f 43 6f 6e 73 6f 6c 65 2f 41 70 70 6c 69 63 61 74 69 6f 6e 2e 70 68 70 Composer/Console/Application.php
0d00 92 23 00 00 92 f5 f7 56 92 23 00 00 32 5f 7b d2 b6 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 2f .#.....V.#..2_{.........,...src/
0d20 43 6f 6d 70 6f 73 65 72 2f 43 6f 6e 73 6f 6c 65 2f 48 74 6d 6c 4f 75 74 70 75 74 46 6f 72 6d 61 Composer/Console/HtmlOutputForma
0d40 74 74 65 72 2e 70 68 70 33 06 00 00 92 f5 f7 56 33 06 00 00 da 81 45 75 b6 01 00 00 00 00 00 00 tter.php3......V3.....Eu........
0d60 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c -...src/Composer/DependencyResol
0d80 76 65 72 2f 44 65 63 69 73 69 6f 6e 73 2e 70 68 70 51 0f 00 00 92 f5 f7 56 51 0f 00 00 3f 98 ac ver/Decisions.phpQ......VQ...?..
0da0 24 b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 $........1...src/Composer/Depend
0dc0 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 44 65 66 61 75 6c 74 50 6f 6c 69 63 79 2e 70 68 70 02 17 encyResolver/DefaultPolicy.php..
0de0 00 00 92 f5 f7 56 02 17 00 00 f5 dd 76 7f b6 01 00 00 00 00 00 00 3e 00 00 00 73 72 63 2f 43 6f .....V......v.........>...src/Co
0e00 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 61 74 mposer/DependencyResolver/Operat
0e20 69 6f 6e 2f 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 43 02 00 00 92 f5 f7 56 ion/InstallOperation.phpC......V
0e40 43 02 00 00 b4 5c f5 2a b6 01 00 00 00 00 00 00 49 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 C....\.*........I...src/Composer
0e60 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 61 74 69 6f 6e 2f 4d 61 /DependencyResolver/Operation/Ma
0e80 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 f7 02 00 rkAliasInstalledOperation.php...
0ea0 00 92 f5 f7 56 f7 02 00 00 ef ce e0 f7 b6 01 00 00 00 00 00 00 4b 00 00 00 73 72 63 2f 43 6f 6d ....V................K...src/Com
0ec0 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 61 74 69 poser/DependencyResolver/Operati
0ee0 6f 6e 2f 4d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e on/MarkAliasUninstalledOperation
0f00 2e 70 68 70 fd 02 00 00 92 f5 f7 56 fd 02 00 00 19 33 23 86 b6 01 00 00 00 00 00 00 40 00 00 00 .php.......V.....3#.........@...
0f20 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f src/Composer/DependencyResolver/
0f40 4f 70 65 72 61 74 69 6f 6e 2f 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 2e 70 68 70 Operation/OperationInterface.php
0f60 d3 00 00 00 92 f5 f7 56 d3 00 00 00 d9 e2 26 e4 b6 01 00 00 00 00 00 00 3d 00 00 00 73 72 63 2f .......V......&.........=...src/
0f80 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 Composer/DependencyResolver/Oper
0fa0 61 74 69 6f 6e 2f 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 b9 01 00 00 92 f5 f7 ation/SolverOperation.php.......
0fc0 56 b9 01 00 00 26 a2 65 0a b6 01 00 00 00 00 00 00 40 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V....&.e.........@...src/Compose
0fe0 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 61 74 69 6f 6e 2f 55 r/DependencyResolver/Operation/U
1000 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 49 02 00 00 92 f5 f7 56 49 02 00 ninstallOperation.phpI......VI..
1020 00 46 fb c2 c9 b6 01 00 00 00 00 00 00 3d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 .F...........=...src/Composer/De
1040 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 61 74 69 6f 6e 2f 55 70 64 61 74 pendencyResolver/Operation/Updat
1060 65 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 68 03 00 00 92 f5 f7 56 68 03 00 00 f6 53 d5 5d b6 01 eOperation.phph......Vh....S.]..
1080 00 00 00 00 00 00 33 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 ......3...src/Composer/Dependenc
10a0 79 52 65 73 6f 6c 76 65 72 2f 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 ad 01 00 yResolver/PolicyInterface.php...
10c0 00 92 f5 f7 56 ad 01 00 00 18 9f 8b 52 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d ....V.......R........(...src/Com
10e0 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 50 6f 6f 6c 2e 70 68 poser/DependencyResolver/Pool.ph
1100 70 b3 21 00 00 92 f5 f7 56 b3 21 00 00 18 54 64 a5 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 p.!.....V.!...Td.........+...src
1120 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 50 72 6f /Composer/DependencyResolver/Pro
1140 62 6c 65 6d 2e 70 68 70 ed 14 00 00 92 f5 f7 56 ed 14 00 00 19 6e fb 85 b6 01 00 00 00 00 00 00 blem.php.......V.....n..........
1160 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c +...src/Composer/DependencyResol
1180 76 65 72 2f 52 65 71 75 65 73 74 2e 70 68 70 80 04 00 00 92 f5 f7 56 80 04 00 00 d0 77 83 19 b6 ver/Request.php.......V.....w...
11a0 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e .......(...src/Composer/Dependen
11c0 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 2e 70 68 70 e3 19 00 00 92 f5 f7 56 e3 19 00 00 2c cyResolver/Rule.php.......V....,
11e0 a4 59 ac b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 .Y.........+...src/Composer/Depe
1200 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 53 65 74 2e 70 68 70 06 0a 00 00 92 f5 ndencyResolver/RuleSet.php......
1220 f7 56 06 0a 00 00 3a 5a 8f 45 b6 01 00 00 00 00 00 00 34 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V....:Z.E........4...src/Compos
1240 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 53 65 74 47 65 6e er/DependencyResolver/RuleSetGen
1260 65 72 61 74 6f 72 2e 70 68 70 5d 1b 00 00 92 f5 f7 56 5d 1b 00 00 34 93 d1 39 b6 01 00 00 00 00 erator.php]......V]...4..9......
1280 00 00 33 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 ..3...src/Composer/DependencyRes
12a0 6f 6c 76 65 72 2f 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 2e 70 68 70 14 06 00 00 92 f5 f7 olver/RuleSetIterator.php.......
12c0 56 14 06 00 00 7d f5 c7 f9 b6 01 00 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V....}...........2...src/Compose
12e0 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 57 61 74 63 68 43 68 r/DependencyResolver/RuleWatchCh
1300 61 69 6e 2e 70 68 70 69 01 00 00 92 f5 f7 56 69 01 00 00 68 ef 9a 2c b6 01 00 00 00 00 00 00 32 ain.phpi......Vi...h..,........2
1320 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 ...src/Composer/DependencyResolv
1340 65 72 2f 52 75 6c 65 57 61 74 63 68 47 72 61 70 68 2e 70 68 70 dc 06 00 00 92 f5 f7 56 dc 06 00 er/RuleWatchGraph.php.......V...
1360 00 89 03 0f 38 b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 ....8........1...src/Composer/De
1380 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 2e 70 pendencyResolver/RuleWatchNode.p
13a0 68 70 e7 03 00 00 92 f5 f7 56 e7 03 00 00 97 de 12 c8 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 hp.......V................*...sr
13c0 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 53 6f c/Composer/DependencyResolver/So
13e0 6c 76 65 72 2e 70 68 70 37 38 00 00 92 f5 f7 56 37 38 00 00 be 66 3a fe b6 01 00 00 00 00 00 00 lver.php78.....V78...f:.........
1400 36 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 6...src/Composer/DependencyResol
1420 76 65 72 2f 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 98 01 00 00 92 f5 ver/SolverBugException.php......
1440 f7 56 98 01 00 00 7f 22 71 4e b6 01 00 00 00 00 00 00 3b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V....."qN........;...src/Compos
1460 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 53 6f 6c 76 65 72 50 72 6f 62 er/DependencyResolver/SolverProb
1480 6c 65 6d 73 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 5b 08 00 00 92 f5 f7 56 5b 08 00 00 62 51 67 lemsException.php[......V[...bQg
14a0 4a b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 J......../...src/Composer/Depend
14c0 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 54 72 61 6e 73 61 63 74 69 6f 6e 2e 70 68 70 f3 13 00 00 encyResolver/Transaction.php....
14e0 92 f5 f7 56 f3 13 00 00 f3 f6 14 ab b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 ...V................-...src/Comp
1500 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 oser/Downloader/ArchiveDownloade
1520 72 2e 70 68 70 a2 0e 00 00 92 f5 f7 56 a2 0e 00 00 76 6d 74 4f b6 01 00 00 00 00 00 00 31 00 00 r.php.......V....vmtO........1..
1540 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 43 68 61 6e 67 65 52 .src/Composer/Downloader/ChangeR
1560 65 70 6f 72 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 cc 00 00 00 92 f5 f7 56 cc 00 00 00 af e0 eportInterface.php.......V......
1580 a8 bf b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c ..........+...src/Composer/Downl
15a0 6f 61 64 65 72 2f 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2e 70 68 70 47 15 00 00 92 f5 f7 oader/DownloadManager.phpG......
15c0 56 47 15 00 00 8a 28 ed bb b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 VG....(........../...src/Compose
15e0 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 r/Downloader/DownloaderInterface
1600 2e 70 68 70 ca 01 00 00 92 f5 f7 56 ca 01 00 00 67 73 21 6c b6 01 00 00 00 00 00 00 33 00 00 00 .php.......V....gs!l........3...
1620 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 44 76 63 73 44 6f 77 6e src/Composer/Downloader/DvcsDown
1640 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 d1 00 00 00 92 f5 f7 56 d1 00 00 00 26 loaderInterface.php.......V....&
1660 c1 9c bf b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e ...........*...src/Composer/Down
1680 6c 6f 61 64 65 72 2f 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 ce 15 00 00 92 f5 f7 loader/FileDownloader.php.......
16a0 56 ce 15 00 00 e8 ea c4 97 b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V................/...src/Compose
16c0 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 46 69 6c 65 73 79 73 74 65 6d 45 78 63 65 70 74 69 6f 6e r/Downloader/FilesystemException
16e0 2e 70 68 70 0a 01 00 00 92 f5 f7 56 0a 01 00 00 2e 2d 1e 8b b6 01 00 00 00 00 00 00 29 00 00 00 .php.......V.....-..........)...
1700 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 47 69 74 44 6f 77 6e 6c src/Composer/Downloader/GitDownl
1720 6f 61 64 65 72 2e 70 68 70 67 2d 00 00 92 f5 f7 56 67 2d 00 00 06 ab 63 3d b6 01 00 00 00 00 00 oader.phpg-.....Vg-....c=.......
1740 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 47 7a 69 .*...src/Composer/Downloader/Gzi
1760 70 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 e9 06 00 00 92 f5 f7 56 e9 06 00 00 c3 ef de f7 b6 pDownloader.php.......V.........
1780 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 .......(...src/Composer/Download
17a0 65 72 2f 48 67 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 1f 0a 00 00 92 f5 f7 56 1f 0a 00 00 4e er/HgDownloader.php.......V....N
17c0 83 15 a9 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e ...........*...src/Composer/Down
17e0 6c 6f 61 64 65 72 2f 50 61 74 68 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 b2 0c 00 00 92 f5 f7 loader/PathDownloader.php.......
1800 56 b2 0c 00 00 8d ef 91 d5 b6 01 00 00 00 00 00 00 30 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V................0...src/Compose
1820 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 50 65 61 72 50 61 63 6b 61 67 65 45 78 74 72 61 63 74 6f r/Downloader/PearPackageExtracto
1840 72 2e 70 68 70 75 1b 00 00 92 f5 f7 56 75 1b 00 00 7a 84 15 87 b6 01 00 00 00 00 00 00 2e 00 00 r.phpu......Vu...z..............
1860 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 50 65 72 66 6f 72 63 .src/Composer/Downloader/Perforc
1880 65 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 c7 07 00 00 92 f5 f7 56 c7 07 00 00 76 78 56 3d b6 eDownloader.php.......V....vxV=.
18a0 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 .......*...src/Composer/Download
18c0 65 72 2f 50 68 61 72 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 e5 00 00 00 92 f5 f7 56 e5 00 00 er/PharDownloader.php.......V...
18e0 00 de c9 1f e7 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f .............)...src/Composer/Do
1900 77 6e 6c 6f 61 64 65 72 2f 52 61 72 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 25 08 00 00 92 f5 wnloader/RarDownloader.php%.....
1920 f7 56 25 08 00 00 fb a5 09 2e b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V%...............)...src/Compos
1940 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 53 76 6e 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 48 er/Downloader/SvnDownloader.phpH
1960 11 00 00 92 f5 f7 56 48 11 00 00 54 7f 70 a5 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 ......VH...T.p.........)...src/C
1980 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 54 61 72 44 6f 77 6e 6c 6f 61 64 65 72 omposer/Downloader/TarDownloader
19a0 2e 70 68 70 e3 00 00 00 92 f5 f7 56 e3 00 00 00 cd 92 58 3f b6 01 00 00 00 00 00 00 2e 00 00 00 .php.......V......X?............
19c0 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 54 72 61 6e 73 70 6f 72 src/Composer/Downloader/Transpor
19e0 74 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 3d 02 00 00 92 f5 f7 56 3d 02 00 00 5a ce c8 de b6 01 tException.php=......V=...Z.....
1a00 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 ......)...src/Composer/Downloade
1a20 72 2f 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 3e 13 00 00 92 f5 f7 56 3e 13 00 00 89 r/VcsDownloader.php>......V>....
1a40 6a 2b b9 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e j+.........(...src/Composer/Down
1a60 6c 6f 61 64 65 72 2f 58 7a 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 a7 04 00 00 92 f5 f7 56 a7 loader/XzDownloader.php.......V.
1a80 04 00 00 57 24 3b e1 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f ...W$;.........)...src/Composer/
1aa0 44 6f 77 6e 6c 6f 61 64 65 72 2f 5a 69 70 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 6f 0d 00 00 Downloader/ZipDownloader.phpo...
1ac0 92 f5 f7 56 6f 0d 00 00 3b 52 8b 27 b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 ...Vo...;R.'........&...src/Comp
1ae0 6f 73 65 72 2f 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2f 45 76 65 6e 74 2e 70 68 70 a0 02 oser/EventDispatcher/Event.php..
1b00 00 00 92 f5 f7 56 a0 02 00 00 b1 99 6a ef b6 01 00 00 00 00 00 00 30 00 00 00 73 72 63 2f 43 6f .....V......j.........0...src/Co
1b20 6d 70 6f 73 65 72 2f 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2f 45 76 65 6e 74 44 69 73 70 mposer/EventDispatcher/EventDisp
1b40 61 74 63 68 65 72 2e 70 68 70 b7 22 00 00 92 f5 f7 56 b7 22 00 00 b7 0f 8d 40 b6 01 00 00 00 00 atcher.php.".....V.".....@......
1b60 00 00 39 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 45 76 65 6e 74 44 69 73 70 61 74 63 68 ..9...src/Composer/EventDispatch
1b80 65 72 2f 45 76 65 6e 74 53 75 62 73 63 72 69 62 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 a9 er/EventSubscriberInterface.php.
1ba0 00 00 00 92 f5 f7 56 a9 00 00 00 68 b7 01 30 b6 01 00 00 00 00 00 00 18 00 00 00 73 72 63 2f 43 ......V....h..0............src/C
1bc0 6f 6d 70 6f 73 65 72 2f 46 61 63 74 6f 72 79 2e 70 68 70 d0 38 00 00 92 f5 f7 56 d0 38 00 00 6b omposer/Factory.php.8.....V.8..k
1be0 8c c3 64 b6 01 00 00 00 00 00 00 1a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 42 ..d............src/Composer/IO/B
1c00 61 73 65 49 4f 2e 70 68 70 35 08 00 00 92 f5 f7 56 35 08 00 00 8c 69 d3 eb b6 01 00 00 00 00 00 aseIO.php5......V5....i.........
1c20 00 1c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 42 75 66 66 65 72 49 4f 2e 70 68 .....src/Composer/IO/BufferIO.ph
1c40 70 2c 04 00 00 92 f5 f7 56 2c 04 00 00 a7 12 59 7e b6 01 00 00 00 00 00 00 1d 00 00 00 73 72 63 p,......V,.....Y~............src
1c60 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 43 6f 6e 73 6f 6c 65 49 4f 2e 70 68 70 23 15 00 00 92 f5 /Composer/IO/ConsoleIO.php#.....
1c80 f7 56 23 15 00 00 a8 5d 00 d8 b6 01 00 00 00 00 00 00 1f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V#....]..............src/Compos
1ca0 65 72 2f 49 4f 2f 49 4f 49 6e 74 65 72 66 61 63 65 2e 70 68 70 ec 05 00 00 92 f5 f7 56 ec 05 00 er/IO/IOInterface.php.......V...
1cc0 00 00 d5 9d 0e b6 01 00 00 00 00 00 00 1a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f .................src/Composer/IO
1ce0 2f 4e 75 6c 6c 49 4f 2e 70 68 70 c0 04 00 00 92 f5 f7 56 c0 04 00 00 46 60 73 ca b6 01 00 00 00 /NullIO.php.......V....F`s......
1d00 00 00 00 1a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2e 70 68 .......src/Composer/Installer.ph
1d20 70 7a 80 00 00 92 f5 f7 56 7a 80 00 00 bf ab f9 04 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 pz......Vz...............*...src
1d40 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 42 69 6e 61 72 79 49 6e 73 74 61 6c /Composer/Installer/BinaryInstal
1d60 6c 65 72 2e 70 68 70 83 12 00 00 92 f5 f7 56 83 12 00 00 2f 85 ef 1c b6 01 00 00 00 00 00 00 2e ler.php.......V..../............
1d80 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 49 6e 73 74 61 6c ...src/Composer/Installer/Instal
1da0 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2e 70 68 70 06 16 00 00 92 f5 f7 56 06 16 00 00 d3 fd c7 lationManager.php.......V.......
1dc0 db b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c .........)...src/Composer/Instal
1de0 6c 65 72 2f 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 2e 70 68 70 0e 06 00 00 92 f5 f7 56 0e 06 ler/InstallerEvent.php.......V..
1e00 00 00 6c d4 7a 69 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 ..l.zi........*...src/Composer/I
1e20 6e 73 74 61 6c 6c 65 72 2f 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 73 2e 70 68 70 de 00 00 00 nstaller/InstallerEvents.php....
1e40 92 f5 f7 56 de 00 00 00 ec 9f 40 47 b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 ...V......@G........-...src/Comp
1e60 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 63 oser/Installer/InstallerInterfac
1e80 65 2e 70 68 70 e3 02 00 00 92 f5 f7 56 e3 02 00 00 5e 83 93 ca b6 01 00 00 00 00 00 00 2b 00 00 e.php.......V....^...........+..
1ea0 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 4c 69 62 72 61 72 79 49 .src/Composer/Installer/LibraryI
1ec0 6e 73 74 61 6c 6c 65 72 2e 70 68 70 9e 12 00 00 92 f5 f7 56 9e 12 00 00 5b 8e 4f 73 b6 01 00 00 nstaller.php.......V....[.Os....
1ee0 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 4d ..../...src/Composer/Installer/M
1f00 65 74 61 70 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 9c 04 00 00 92 f5 f7 56 9c etapackageInstaller.php.......V.
1f20 04 00 00 c6 12 c5 21 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f ......!........(...src/Composer/
1f40 49 6e 73 74 61 6c 6c 65 72 2f 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 2b 05 00 00 92 Installer/NoopInstaller.php+....
1f60 f5 f7 56 2b 05 00 00 c0 b7 4d 7d b6 01 00 00 00 00 00 00 27 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..V+.....M}........'...src/Compo
1f80 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 50 61 63 6b 61 67 65 45 76 65 6e 74 2e 70 68 70 65 03 ser/Installer/PackageEvent.phpe.
1fa0 00 00 92 f5 f7 56 65 03 00 00 3b b0 20 1a b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f .....Ve...;...........(...src/Co
1fc0 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 50 61 63 6b 61 67 65 45 76 65 6e 74 73 2e 70 mposer/Installer/PackageEvents.p
1fe0 68 70 b8 01 00 00 92 f5 f7 56 b8 01 00 00 64 62 d8 73 b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 hp.......V....db.s............sr
2000 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 50 65 61 72 42 69 6e 61 72 79 49 c/Composer/Installer/PearBinaryI
2020 6e 73 74 61 6c 6c 65 72 2e 70 68 70 18 0d 00 00 92 f5 f7 56 18 0d 00 00 29 56 f4 df b6 01 00 00 nstaller.php.......V....)V......
2040 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 50 ....(...src/Composer/Installer/P
2060 65 61 72 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 c5 07 00 00 92 f5 f7 56 c5 07 00 00 99 cc 9c 0f earInstaller.php.......V........
2080 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c ........*...src/Composer/Install
20a0 65 72 2f 50 6c 75 67 69 6e 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 0a 06 00 00 92 f5 f7 56 0a 06 er/PluginInstaller.php.......V..
20c0 00 00 36 c0 a2 00 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 ..6...........+...src/Composer/I
20e0 6e 73 74 61 6c 6c 65 72 2f 50 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 1d 06 00 nstaller/ProjectInstaller.php...
2100 00 92 f5 f7 56 1d 06 00 00 2a 30 40 50 b6 01 00 00 00 00 00 00 34 00 00 00 73 72 63 2f 43 6f 6d ....V....*0@P........4...src/Com
2120 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 53 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 poser/Installer/SuggestedPackage
2140 73 52 65 70 6f 72 74 65 72 2e 70 68 70 aa 05 00 00 92 f5 f7 56 aa 05 00 00 c3 a0 47 c3 b6 01 00 sReporter.php.......V......G....
2160 00 00 00 00 00 1e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 4a 73 6f 6e 2f 4a 73 6f 6e 46 .........src/Composer/Json/JsonF
2180 69 6c 65 2e 70 68 70 af 13 00 00 92 f5 f7 56 af 13 00 00 b0 ab 23 5c b6 01 00 00 00 00 00 00 23 ile.php.......V......#\........#
21a0 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 4a 73 6f 6e 2f 4a 73 6f 6e 46 6f 72 6d 61 74 74 ...src/Composer/Json/JsonFormatt
21c0 65 72 2e 70 68 70 06 06 00 00 92 f5 f7 56 06 06 00 00 1e d0 71 75 b6 01 00 00 00 00 00 00 25 00 er.php.......V......qu........%.
21e0 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 4a 73 6f 6e 2f 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 ..src/Composer/Json/JsonManipula
2200 74 6f 72 2e 70 68 70 a6 2a 00 00 92 f5 f7 56 a6 2a 00 00 62 ae da 66 b6 01 00 00 00 00 00 00 2d tor.php.*.....V.*..b..f........-
2220 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 4a 73 6f 6e 2f 4a 73 6f 6e 56 61 6c 69 64 61 74 ...src/Composer/Json/JsonValidat
2240 69 6f 6e 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 5c 01 00 00 92 f5 f7 56 5c 01 00 00 2e 58 f3 dc ionException.php\......V\....X..
2260 b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 ........%...src/Composer/Package
2280 2f 41 6c 69 61 73 50 61 63 6b 61 67 65 2e 70 68 70 05 17 00 00 92 f5 f7 56 05 17 00 00 b9 97 7e /AliasPackage.php.......V......~
22a0 9a b6 01 00 00 00 00 00 00 37 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 .........7...src/Composer/Packag
22c0 65 2f 41 72 63 68 69 76 65 72 2f 41 72 63 68 69 76 61 62 6c 65 46 69 6c 65 73 46 69 6e 64 65 72 e/Archiver/ArchivableFilesFinder
22e0 2e 70 68 70 be 04 00 00 92 f5 f7 56 be 04 00 00 84 8c f5 c9 b6 01 00 00 00 00 00 00 30 00 00 00 .php.......V................0...
2300 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 72 63 68 69 76 65 72 2f 41 72 src/Composer/Package/Archiver/Ar
2320 63 68 69 76 65 4d 61 6e 61 67 65 72 2e 70 68 70 7a 0c 00 00 92 f5 f7 56 7a 0c 00 00 21 73 4b 99 chiveManager.phpz......Vz...!sK.
2340 b6 01 00 00 00 00 00 00 33 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 ........3...src/Composer/Package
2360 2f 41 72 63 68 69 76 65 72 2f 41 72 63 68 69 76 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 ef /Archiver/ArchiverInterface.php.
2380 00 00 00 92 f5 f7 56 ef 00 00 00 07 3c ca b8 b6 01 00 00 00 00 00 00 33 00 00 00 73 72 63 2f 43 ......V.....<..........3...src/C
23a0 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 72 63 68 69 76 65 72 2f 42 61 73 65 45 78 63 omposer/Package/Archiver/BaseExc
23c0 6c 75 64 65 46 69 6c 74 65 72 2e 70 68 70 91 06 00 00 92 f5 f7 56 91 06 00 00 5b ff 30 3d b6 01 ludeFilter.php.......V....[.0=..
23e0 00 00 00 00 00 00 37 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 ......7...src/Composer/Package/A
2400 72 63 68 69 76 65 72 2f 43 6f 6d 70 6f 73 65 72 45 78 63 6c 75 64 65 46 69 6c 74 65 72 2e 70 68 rchiver/ComposerExcludeFilter.ph
2420 70 1f 01 00 00 92 f5 f7 56 1f 01 00 00 8b 53 5a 30 b6 01 00 00 00 00 00 00 32 00 00 00 73 72 63 p.......V.....SZ0........2...src
2440 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 72 63 68 69 76 65 72 2f 47 69 74 45 78 /Composer/Package/Archiver/GitEx
2460 63 6c 75 64 65 46 69 6c 74 65 72 2e 70 68 70 77 03 00 00 92 f5 f7 56 77 03 00 00 4c 67 55 bb b6 cludeFilter.phpw......Vw...LgU..
2480 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f .......1...src/Composer/Package/
24a0 41 72 63 68 69 76 65 72 2f 48 67 45 78 63 6c 75 64 65 46 69 6c 74 65 72 2e 70 68 70 13 05 00 00 Archiver/HgExcludeFilter.php....
24c0 92 f5 f7 56 13 05 00 00 7e 94 0e b8 b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 ...V....~...............src/Comp
24e0 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 72 63 68 69 76 65 72 2f 50 68 61 72 41 72 63 68 69 76 oser/Package/Archiver/PharArchiv
2500 65 72 2e 70 68 70 b8 05 00 00 92 f5 f7 56 b8 05 00 00 20 5f 56 2a b6 01 00 00 00 00 00 00 2d 00 er.php.......V....._V*........-.
2520 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 72 63 68 69 76 65 72 2f ..src/Composer/Package/Archiver/
2540 5a 69 70 41 72 63 68 69 76 65 72 2e 70 68 70 01 04 00 00 92 f5 f7 56 01 04 00 00 e1 76 9e cb b6 ZipArchiver.php.......V.....v...
2560 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f .......$...src/Composer/Package/
2580 42 61 73 65 50 61 63 6b 61 67 65 2e 70 68 70 3d 0d 00 00 92 f5 f7 56 3d 0d 00 00 ce 9d e7 16 b6 BasePackage.php=......V=........
25a0 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f .......(...src/Composer/Package/
25c0 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 2e 70 68 70 ff 06 00 00 92 f5 f7 56 ff 06 00 00 6f CompletePackage.php.......V....o
25e0 2b e3 09 b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b +..........1...src/Composer/Pack
2600 61 67 65 2f 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 age/CompletePackageInterface.php
2620 f5 01 00 00 92 f5 f7 56 f5 01 00 00 a6 ca 81 f2 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f .......V................+...src/
2640 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 44 75 6d 70 65 72 2f 41 72 72 61 79 44 75 6d Composer/Package/Dumper/ArrayDum
2660 70 65 72 2e 70 68 70 ec 0b 00 00 92 f5 f7 56 ec 0b 00 00 aa 96 7f e6 b6 01 00 00 00 00 00 00 1d per.php.......V.................
2680 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 69 6e 6b 2e 70 68 70 ...src/Composer/Package/Link.php
26a0 88 05 00 00 92 f5 f7 56 88 05 00 00 e5 b6 59 ab b6 01 00 00 00 00 00 00 37 00 00 00 73 72 63 2f .......V......Y.........7...src/
26c0 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2f Composer/Package/LinkConstraint/
26e0 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 82 01 00 00 92 f5 f7 56 82 01 00 00 0e EmptyConstraint.php.......V.....
2700 e9 7e 8b b6 01 00 00 00 00 00 00 3f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b .~.........?...src/Composer/Pack
2720 61 67 65 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e age/LinkConstraint/LinkConstrain
2740 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 64 01 00 00 92 f5 f7 56 64 01 00 00 a4 f4 4c 6e b6 01 tInterface.phpd......Vd.....Ln..
2760 00 00 00 00 00 00 37 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c ......7...src/Composer/Package/L
2780 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2f 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 inkConstraint/MultiConstraint.ph
27a0 70 82 01 00 00 92 f5 f7 56 82 01 00 00 f3 62 60 fd b6 01 00 00 00 00 00 00 3a 00 00 00 73 72 63 p.......V.....b`.........:...src
27c0 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 /Composer/Package/LinkConstraint
27e0 2f 53 70 65 63 69 66 69 63 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 69 01 00 00 92 f5 f7 56 69 /SpecificConstraint.phpi......Vi
2800 01 00 00 de 94 9a 25 b6 01 00 00 00 00 00 00 39 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f ......%........9...src/Composer/
2820 50 61 63 6b 61 67 65 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2f 56 65 72 73 69 6f 6e 43 6f Package/LinkConstraint/VersionCo
2840 6e 73 74 72 61 69 6e 74 2e 70 68 70 58 01 00 00 92 f5 f7 56 58 01 00 00 02 7d 60 79 b6 01 00 00 nstraint.phpX......VX....}`y....
2860 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 6f 61 ....+...src/Composer/Package/Loa
2880 64 65 72 2f 41 72 72 61 79 4c 6f 61 64 65 72 2e 70 68 70 30 1d 00 00 92 f5 f7 56 30 1d 00 00 46 der/ArrayLoader.php0......V0...F
28a0 13 b1 ad b6 01 00 00 00 00 00 00 37 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b ...........7...src/Composer/Pack
28c0 61 67 65 2f 4c 6f 61 64 65 72 2f 49 6e 76 61 6c 69 64 50 61 63 6b 61 67 65 45 78 63 65 70 74 69 age/Loader/InvalidPackageExcepti
28e0 6f 6e 2e 70 68 70 45 02 00 00 92 f5 f7 56 45 02 00 00 78 62 13 be b6 01 00 00 00 00 00 00 2a 00 on.phpE......VE...xb..........*.
2900 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 6f 61 64 65 72 2f 4a 73 ..src/Composer/Package/Loader/Js
2920 6f 6e 4c 6f 61 64 65 72 2e 70 68 70 f9 01 00 00 92 f5 f7 56 f9 01 00 00 21 7e 88 7b b6 01 00 00 onLoader.php.......V....!~.{....
2940 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 6f 61 ..../...src/Composer/Package/Loa
2960 64 65 72 2f 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 b2 00 00 00 92 f5 f7 56 b2 der/LoaderInterface.php.......V.
2980 00 00 00 a6 7d fa ce b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f ....}..........1...src/Composer/
29a0 50 61 63 6b 61 67 65 2f 4c 6f 61 64 65 72 2f 52 6f 6f 74 50 61 63 6b 61 67 65 4c 6f 61 64 65 72 Package/Loader/RootPackageLoader
29c0 2e 70 68 70 40 16 00 00 92 f5 f7 56 40 16 00 00 83 c8 51 0a b6 01 00 00 00 00 00 00 35 00 00 00 .php@......V@.....Q.........5...
29e0 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 6f 61 64 65 72 2f 56 61 6c 69 src/Composer/Package/Loader/Vali
2a00 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 2e 70 68 70 f2 2f 00 00 92 f5 f7 56 f2 2f 00 datingArrayLoader.php./.....V./.
2a20 00 3f d0 fe 98 b6 01 00 00 00 00 00 00 1f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 .?...............src/Composer/Pa
2a40 63 6b 61 67 65 2f 4c 6f 63 6b 65 72 2e 70 68 70 8f 21 00 00 92 f5 f7 56 8f 21 00 00 3d 2d 77 92 ckage/Locker.php.!.....V.!..=-w.
2a60 b6 01 00 00 00 00 00 00 20 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 ............src/Composer/Package
2a80 2f 50 61 63 6b 61 67 65 2e 70 68 70 c9 1a 00 00 92 f5 f7 56 c9 1a 00 00 63 c3 8f 68 b6 01 00 00 /Package.php.......V....c..h....
2aa0 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 50 61 63 ....)...src/Composer/Package/Pac
2ac0 6b 61 67 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 a0 07 00 00 92 f5 f7 56 a0 07 00 00 fb c7 5e kageInterface.php.......V......^
2ae0 c6 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 .........)...src/Composer/Packag
2b00 65 2f 52 6f 6f 74 41 6c 69 61 73 50 61 63 6b 61 67 65 2e 70 68 70 d7 08 00 00 92 f5 f7 56 d7 08 e/RootAliasPackage.php.......V..
2b20 00 00 7f a0 1c ce b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 ..............$...src/Composer/P
2b40 61 63 6b 61 67 65 2f 52 6f 6f 74 50 61 63 6b 61 67 65 2e 70 68 70 6e 04 00 00 92 f5 f7 56 6e 04 ackage/RootPackage.phpn......Vn.
2b60 00 00 e1 41 43 4f b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 ...ACO........-...src/Composer/P
2b80 61 63 6b 61 67 65 2f 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 96 ackage/RootPackageInterface.php.
2ba0 03 00 00 92 f5 f7 56 96 03 00 00 ff 66 c6 67 b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 ......V.....f.g......../...src/C
2bc0 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 56 65 72 73 69 6f 6e 2f 56 65 72 73 69 6f 6e 47 omposer/Package/Version/VersionG
2be0 75 65 73 73 65 72 2e 70 68 70 78 15 00 00 92 f5 f7 56 78 15 00 00 3e d9 28 89 b6 01 00 00 00 00 uesser.phpx......Vx...>.(.......
2c00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 56 65 72 73 69 ......src/Composer/Package/Versi
2c20 6f 6e 2f 56 65 72 73 69 6f 6e 50 61 72 73 65 72 2e 70 68 70 f8 03 00 00 92 f5 f7 56 f8 03 00 00 on/VersionParser.php.......V....
2c40 1e be 33 6c b6 01 00 00 00 00 00 00 30 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 ..3l........0...src/Composer/Pac
2c60 6b 61 67 65 2f 56 65 72 73 69 6f 6e 2f 56 65 72 73 69 6f 6e 53 65 6c 65 63 74 6f 72 2e 70 68 70 kage/Version/VersionSelector.php
2c80 cc 0b 00 00 92 f5 f7 56 cc 0b 00 00 c8 0e 51 7c b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f .......V......Q|........-...src/
2ca0 43 6f 6d 70 6f 73 65 72 2f 50 6c 75 67 69 6e 2f 43 61 70 61 62 69 6c 69 74 79 2f 43 61 70 61 62 Composer/Plugin/Capability/Capab
2cc0 69 6c 69 74 79 2e 70 68 70 57 00 00 00 92 f5 f7 56 57 00 00 00 e6 5f a8 31 b6 01 00 00 00 00 00 ility.phpW......VW...._.1.......
2ce0 00 1f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 6c 75 67 69 6e 2f 43 61 70 61 62 6c 65 .....src/Composer/Plugin/Capable
2d00 2e 70 68 70 7f 00 00 00 92 f5 f7 56 7f 00 00 00 c6 71 15 2b b6 01 00 00 00 00 00 00 24 00 00 00 .php.......V.....q.+........$...
2d20 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 6c 75 67 69 6e 2f 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 src/Composer/Plugin/CommandEvent
2d40 2e 70 68 70 e2 02 00 00 92 f5 f7 56 e2 02 00 00 b3 c6 c7 57 b6 01 00 00 00 00 00 00 24 00 00 00 .php.......V.......W........$...
2d60 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 6c 75 67 69 6e 2f 50 6c 75 67 69 6e 45 76 65 6e 74 73 src/Composer/Plugin/PluginEvents
2d80 2e 70 68 70 a4 00 00 00 92 f5 f7 56 a4 00 00 00 30 ef de 58 b6 01 00 00 00 00 00 00 27 00 00 00 .php.......V....0..X........'...
2da0 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 6c 75 67 69 6e 2f 50 6c 75 67 69 6e 49 6e 74 65 72 66 src/Composer/Plugin/PluginInterf
2dc0 61 63 65 2e 70 68 70 f4 00 00 00 92 f5 f7 56 f4 00 00 00 0c 31 89 25 b6 01 00 00 00 00 00 00 25 ace.php.......V.....1.%........%
2de0 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 6c 75 67 69 6e 2f 50 6c 75 67 69 6e 4d 61 6e ...src/Composer/Plugin/PluginMan
2e00 61 67 65 72 2e 70 68 70 89 21 00 00 92 f5 f7 56 89 21 00 00 fd 2c 4a 84 b6 01 00 00 00 00 00 00 ager.php.!.....V.!...,J.........
2e20 2c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 6c 75 67 69 6e 2f 50 72 65 46 69 6c 65 44 ,...src/Composer/Plugin/PreFileD
2e40 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 2e 70 68 70 60 02 00 00 92 f5 f7 56 60 02 00 00 00 39 2d ce ownloadEvent.php`......V`....9-.
2e60 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 ........+...src/Composer/Reposit
2e80 6f 72 79 2f 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 7d 0d 00 00 92 f5 f7 56 7d ory/ArrayRepository.php}......V}
2ea0 0d 00 00 e7 02 3e 8a b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f .....>.............src/Composer/
2ec0 52 65 70 6f 73 69 74 6f 72 79 2f 41 72 74 69 66 61 63 74 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 Repository/ArtifactRepository.ph
2ee0 70 ad 0c 00 00 92 f5 f7 56 ad 0c 00 00 03 62 1d 98 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 p.......V.....b..........*...src
2f00 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 42 61 73 65 52 65 70 6f 73 69 74 /Composer/Repository/BaseReposit
2f20 6f 72 79 2e 70 68 70 af 06 00 00 92 f5 f7 56 af 06 00 00 ca 57 35 ea b6 01 00 00 00 00 00 00 2e ory.php.......V.....W5..........
2f40 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 43 6f 6d 70 6f ...src/Composer/Repository/Compo
2f60 73 65 72 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 49 4b 00 00 92 f5 f7 56 49 4b 00 00 c3 f6 75 serRepository.phpIK.....VIK....u
2f80 95 b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 ........./...src/Composer/Reposi
2fa0 74 6f 72 79 2f 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 26 08 00 00 tory/CompositeRepository.php&...
2fc0 92 f5 f7 56 26 08 00 00 c1 27 66 15 b6 01 00 00 00 00 00 00 3b 00 00 00 73 72 63 2f 43 6f 6d 70 ...V&....'f.........;...src/Comp
2fe0 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 43 6f 6e 66 69 67 75 72 61 62 6c 65 52 65 70 6f oser/Repository/ConfigurableRepo
3000 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 85 00 00 00 92 f5 f7 56 85 00 00 00 b1 sitoryInterface.php.......V.....
3020 9f 5f 1c b6 01 00 00 00 00 00 00 30 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f ._.........0...src/Composer/Repo
3040 73 69 74 6f 72 79 2f 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 d7 sitory/FilesystemRepository.php.
3060 04 00 00 92 f5 f7 56 d7 04 00 00 49 9c aa 13 b6 01 00 00 00 00 00 00 34 00 00 00 73 72 63 2f 43 ......V....I...........4...src/C
3080 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 49 6e 73 74 61 6c 6c 65 64 41 72 72 61 omposer/Repository/InstalledArra
30a0 79 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 a3 00 00 00 92 f5 f7 56 a3 00 00 00 2f f6 7e 3e b6 yRepository.php.......V..../.~>.
30c0 01 00 00 00 00 00 00 39 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f .......9...src/Composer/Reposito
30e0 72 79 2f 49 6e 73 74 61 6c 6c 65 64 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 ry/InstalledFilesystemRepository
3100 2e 70 68 70 a3 00 00 00 92 f5 f7 56 a3 00 00 00 56 0a 95 5f b6 01 00 00 00 00 00 00 38 00 00 00 .php.......V....V.._........8...
3120 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 49 6e 73 74 61 6c 6c 65 src/Composer/Repository/Installe
3140 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 87 00 00 00 92 f5 f7 56 dRepositoryInterface.php.......V
3160 87 00 00 00 18 a3 39 70 b6 01 00 00 00 00 00 00 36 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 ......9p........6...src/Composer
3180 2f 52 65 70 6f 73 69 74 6f 72 79 2f 49 6e 76 61 6c 69 64 52 65 70 6f 73 69 74 6f 72 79 45 78 63 /Repository/InvalidRepositoryExc
31a0 65 70 74 69 6f 6e 2e 70 68 70 6e 00 00 00 92 f5 f7 56 6e 00 00 00 e0 93 eb 98 b6 01 00 00 00 00 eption.phpn......Vn.............
31c0 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 61 ..-...src/Composer/Repository/Pa
31e0 63 6b 61 67 65 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 6a 03 00 00 92 f5 f7 56 6a 03 00 00 a5 ckageRepository.phpj......Vj....
3200 f4 f2 cc b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f ...........*...src/Composer/Repo
3220 73 69 74 6f 72 79 2f 50 61 74 68 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 1b 09 00 00 92 f5 f7 sitory/PathRepository.php.......
3240 56 1b 09 00 00 57 b8 2b f3 b6 01 00 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V....W.+.........2...src/Compose
3260 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 42 61 73 65 43 68 61 6e 6e 65 6c 52 65 61 r/Repository/Pear/BaseChannelRea
3280 64 65 72 2e 70 68 70 48 05 00 00 92 f5 f7 56 48 05 00 00 a4 e7 e1 ee b6 01 00 00 00 00 00 00 2c der.phpH......VH...............,
32a0 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f ...src/Composer/Repository/Pear/
32c0 43 68 61 6e 6e 65 6c 49 6e 66 6f 2e 70 68 70 c4 01 00 00 92 f5 f7 56 c4 01 00 00 3a 54 2a c9 b6 ChannelInfo.php.......V....:T*..
32e0 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f ...........src/Composer/Reposito
3300 72 79 2f 50 65 61 72 2f 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 2e 70 68 70 17 07 00 00 92 f5 f7 ry/Pear/ChannelReader.php.......
3320 56 17 07 00 00 d8 56 c5 7c b6 01 00 00 00 00 00 00 34 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V.....V.|........4...src/Compose
3340 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 43 68 61 6e 6e 65 6c 52 65 73 74 31 30 52 r/Repository/Pear/ChannelRest10R
3360 65 61 64 65 72 2e 70 68 70 c1 09 00 00 92 f5 f7 56 c1 09 00 00 04 4f 80 eb b6 01 00 00 00 00 00 eader.php.......V.....O.........
3380 00 34 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 .4...src/Composer/Repository/Pea
33a0 72 2f 43 68 61 6e 6e 65 6c 52 65 73 74 31 31 52 65 61 64 65 72 2e 70 68 70 26 09 00 00 92 f5 f7 r/ChannelRest11Reader.php&......
33c0 56 26 09 00 00 f2 55 62 08 b6 01 00 00 00 00 00 00 35 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V&....Ub.........5...src/Compose
33e0 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 44 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 r/Repository/Pear/DependencyCons
3400 74 72 61 69 6e 74 2e 70 68 70 71 02 00 00 92 f5 f7 56 71 02 00 00 39 0e 17 3d b6 01 00 00 00 00 traint.phpq......Vq...9..=......
3420 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 ../...src/Composer/Repository/Pe
3440 61 72 2f 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 2e 70 68 70 71 01 00 00 92 f5 f7 56 71 01 00 ar/DependencyInfo.phpq......Vq..
3460 00 66 ba 54 f2 b6 01 00 00 00 00 00 00 38 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 .f.T.........8...src/Composer/Re
3480 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 50 61 63 6b 61 67 65 44 65 70 65 6e 64 65 6e 63 79 50 pository/Pear/PackageDependencyP
34a0 61 72 73 65 72 2e 70 68 70 25 16 00 00 92 f5 f7 56 25 16 00 00 06 6a 3f 93 b6 01 00 00 00 00 00 arser.php%......V%....j?........
34c0 00 2c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 .,...src/Composer/Repository/Pea
34e0 72 2f 50 61 63 6b 61 67 65 49 6e 66 6f 2e 70 68 70 b0 03 00 00 92 f5 f7 56 b0 03 00 00 9f 0d b8 r/PackageInfo.php.......V.......
3500 0c b6 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 .........,...src/Composer/Reposi
3520 74 6f 72 79 2f 50 65 61 72 2f 52 65 6c 65 61 73 65 49 6e 66 6f 2e 70 68 70 92 01 00 00 92 f5 f7 tory/Pear/ReleaseInfo.php.......
3540 56 92 01 00 00 6f 93 8a c3 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V....o...........*...src/Compose
3560 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 aa r/Repository/PearRepository.php.
3580 16 00 00 92 f5 f7 56 aa 16 00 00 29 9f 83 7d b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 ......V....)..}............src/C
35a0 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 omposer/Repository/PlatformRepos
35c0 69 74 6f 72 79 2e 70 68 70 47 14 00 00 92 f5 f7 56 47 14 00 00 7d fd 03 d9 b6 01 00 00 00 00 00 itory.phpG......VG...}..........
35e0 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 52 65 70 .-...src/Composer/Repository/Rep
3600 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 2e 70 68 70 dc 10 00 00 92 f5 f7 56 dc 10 00 00 d9 96 ositoryFactory.php.......V......
3620 00 7e b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 .~......../...src/Composer/Repos
3640 69 74 6f 72 79 2f 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 da 01 00 itory/RepositoryInterface.php...
3660 00 92 f5 f7 56 da 01 00 00 37 40 1f 80 b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d ....V....7@..........-...src/Com
3680 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 poser/Repository/RepositoryManag
36a0 65 72 2e 70 68 70 23 09 00 00 92 f5 f7 56 23 09 00 00 13 8d ca 3e b6 01 00 00 00 00 00 00 37 00 er.php#......V#......>........7.
36c0 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 52 65 70 6f 73 69 ..src/Composer/Repository/Reposi
36e0 74 6f 72 79 53 65 63 75 72 69 74 79 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 6f 00 00 00 92 f5 f7 torySecurityException.phpo......
3700 56 6f 00 00 00 70 d5 ab aa b6 01 00 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 Vo...p...........2...src/Compose
3720 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 47 69 74 42 69 74 62 75 63 6b 65 74 44 72 69 r/Repository/Vcs/GitBitbucketDri
3740 76 65 72 2e 70 68 70 a5 0e 00 00 92 f5 f7 56 a5 0e 00 00 10 18 09 fd b6 01 00 00 00 00 00 00 29 ver.php.......V................)
3760 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 47 ...src/Composer/Repository/Vcs/G
3780 69 74 44 72 69 76 65 72 2e 70 68 70 01 16 00 00 92 f5 f7 56 01 16 00 00 5c 7f ee ef b6 01 00 00 itDriver.php.......V....\.......
37a0 00 00 00 00 2c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f ....,...src/Composer/Repository/
37c0 56 63 73 2f 47 69 74 48 75 62 44 72 69 76 65 72 2e 70 68 70 e3 27 00 00 92 f5 f7 56 e3 27 00 00 Vcs/GitHubDriver.php.'.....V.'..
37e0 d8 9f 12 f4 b6 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 ............,...src/Composer/Rep
3800 6f 73 69 74 6f 72 79 2f 56 63 73 2f 47 69 74 4c 61 62 44 72 69 76 65 72 2e 70 68 70 78 19 00 00 ository/Vcs/GitLabDriver.phpx...
3820 92 f5 f7 56 78 19 00 00 07 54 f9 89 b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d 70 ...Vx....T..........1...src/Comp
3840 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 48 67 42 69 74 62 75 63 6b 65 74 44 oser/Repository/Vcs/HgBitbucketD
3860 72 69 76 65 72 2e 70 68 70 ad 0f 00 00 92 f5 f7 56 ad 0f 00 00 9a f7 d6 54 b6 01 00 00 00 00 00 river.php.......V.......T.......
3880 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 .(...src/Composer/Repository/Vcs
38a0 2f 48 67 44 72 69 76 65 72 2e 70 68 70 fc 13 00 00 92 f5 f7 56 fc 13 00 00 03 75 5d 4e b6 01 00 /HgDriver.php.......V.....u]N...
38c0 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 .........src/Composer/Repository
38e0 2f 56 63 73 2f 50 65 72 66 6f 72 63 65 44 72 69 76 65 72 2e 70 68 70 22 0a 00 00 92 f5 f7 56 22 /Vcs/PerforceDriver.php"......V"
3900 0a 00 00 b0 60 ec 45 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f ....`.E........)...src/Composer/
3920 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 53 76 6e 44 72 69 76 65 72 2e 70 68 70 b2 19 00 00 Repository/Vcs/SvnDriver.php....
3940 92 f5 f7 56 b2 19 00 00 cb c2 a0 57 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 ...V.......W........)...src/Comp
3960 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 56 63 73 44 72 69 76 65 72 2e 70 68 oser/Repository/Vcs/VcsDriver.ph
3980 70 ff 05 00 00 92 f5 f7 56 ff 05 00 00 2a df d9 0e b6 01 00 00 00 00 00 00 32 00 00 00 73 72 63 p.......V....*...........2...src
39a0 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 56 63 73 44 72 69 76 /Composer/Repository/Vcs/VcsDriv
39c0 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 88 02 00 00 92 f5 f7 56 88 02 00 00 8e 50 a9 ce b6 erInterface.php.......V.....P...
39e0 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f .......)...src/Composer/Reposito
3a00 72 79 2f 56 63 73 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 0d 1e 00 00 92 f5 f7 56 0d 1e 00 00 ry/VcsRepository.php.......V....
3a20 9e d0 d4 a6 b6 01 00 00 00 00 00 00 33 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 ............3...src/Composer/Rep
3a40 6f 73 69 74 6f 72 79 2f 57 72 69 74 61 62 6c 65 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 2e ository/WritableArrayRepository.
3a60 70 68 70 0f 03 00 00 92 f5 f7 56 0f 03 00 00 be 47 17 2a b6 01 00 00 00 00 00 00 37 00 00 00 73 php.......V.....G.*........7...s
3a80 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 57 72 69 74 61 62 6c 65 52 rc/Composer/Repository/WritableR
3aa0 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 89 01 00 00 92 f5 f7 56 89 01 epositoryInterface.php.......V..
3ac0 00 00 91 2f 73 ef b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 .../s.........$...src/Composer/S
3ae0 63 72 69 70 74 2f 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 2e 70 68 70 57 00 00 00 92 f5 f7 56 57 00 cript/CommandEvent.phpW......VW.
3b00 00 00 a3 56 5a 74 b6 01 00 00 00 00 00 00 1d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 ...VZt............src/Composer/S
3b20 63 72 69 70 74 2f 45 76 65 6e 74 2e 70 68 70 b5 02 00 00 92 f5 f7 56 b5 02 00 00 6c 74 a6 4d b6 cript/Event.php.......V....lt.M.
3b40 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 72 69 70 74 2f 50 .......$...src/Composer/Script/P
3b60 61 63 6b 61 67 65 45 76 65 6e 74 2e 70 68 70 9c 00 00 00 92 f5 f7 56 9c 00 00 00 a7 ff c9 0d b6 ackageEvent.php.......V.........
3b80 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 72 69 70 74 2f 53 .......$...src/Composer/Script/S
3ba0 63 72 69 70 74 45 76 65 6e 74 73 2e 70 68 70 50 04 00 00 92 f5 f7 56 50 04 00 00 87 8f 04 b6 b6 criptEvents.phpP......VP........
3bc0 01 00 00 00 00 00 00 20 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 65 6c 66 55 70 64 61 ...........src/Composer/SelfUpda
3be0 74 65 2f 4b 65 79 73 2e 70 68 70 9d 01 00 00 92 f5 f7 56 9d 01 00 00 0b ee ca 4e b6 01 00 00 00 te/Keys.php.......V.......N.....
3c00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 65 6c 66 55 70 64 61 74 65 2f 56 ...$...src/Composer/SelfUpdate/V
3c20 65 72 73 69 6f 6e 73 2e 70 68 70 ec 05 00 00 92 f5 f7 56 ec 05 00 00 cd b5 91 83 b6 01 00 00 00 ersions.php.......V.............
3c40 00 00 00 20 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 41 75 74 68 48 65 6c .......src/Composer/Util/AuthHel
3c60 70 65 72 2e 70 68 70 cb 03 00 00 92 f5 f7 56 cb 03 00 00 3e 7a 78 96 b6 01 00 00 00 00 00 00 24 per.php.......V....>zx.........$
3c80 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 43 6f 6d 70 6f 73 65 72 4d 69 72 ...src/Composer/Util/ComposerMir
3ca0 72 6f 72 2e 70 68 70 b1 04 00 00 92 f5 f7 56 b1 04 00 00 ad bd f8 d8 b6 01 00 00 00 00 00 00 25 ror.php.......V................%
3cc0 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 43 6f 6e 66 69 67 56 61 6c 69 64 ...src/Composer/Util/ConfigValid
3ce0 61 74 6f 72 2e 70 68 70 26 11 00 00 92 f5 f7 56 26 11 00 00 ee 3a e4 fc b6 01 00 00 00 00 00 00 ator.php&......V&....:..........
3d00 22 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 45 72 72 6f 72 48 61 6e 64 6c "...src/Composer/Util/ErrorHandl
3d20 65 72 2e 70 68 70 87 04 00 00 92 f5 f7 56 87 04 00 00 48 65 1c 22 b6 01 00 00 00 00 00 00 20 00 er.php.......V....He."..........
3d40 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 46 69 6c 65 73 79 73 74 65 6d 2e 70 ..src/Composer/Util/Filesystem.p
3d60 68 70 cf 2d 00 00 92 f5 f7 56 cf 2d 00 00 0a c7 f1 a6 b6 01 00 00 00 00 00 00 19 00 00 00 73 72 hp.-.....V.-..................sr
3d80 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 47 69 74 2e 70 68 70 6c 1a 00 00 92 f5 f7 56 6c c/Composer/Util/Git.phpl......Vl
3da0 1a 00 00 74 5d e1 81 b6 01 00 00 00 00 00 00 1c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f ...t]..............src/Composer/
3dc0 55 74 69 6c 2f 47 69 74 48 75 62 2e 70 68 70 af 0a 00 00 92 f5 f7 56 af 0a 00 00 1d e0 cf 09 b6 Util/GitHub.php.......V.........
3de0 01 00 00 00 00 00 00 1c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 47 69 74 ...........src/Composer/Util/Git
3e00 4c 61 62 2e 70 68 70 b3 0b 00 00 92 f5 f7 56 b3 0b 00 00 34 82 07 f5 b6 01 00 00 00 00 00 00 24 Lab.php.......V....4...........$
3e20 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 4e 6f 50 72 6f 78 79 50 61 74 74 ...src/Composer/Util/NoProxyPatt
3e40 65 72 6e 2e 70 68 70 be 06 00 00 92 f5 f7 56 be 06 00 00 5a 2b b0 6d b6 01 00 00 00 00 00 00 1e ern.php.......V....Z+.m.........
3e60 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 50 65 72 66 6f 72 63 65 2e 70 68 ...src/Composer/Util/Perforce.ph
3e80 70 f0 32 00 00 92 f5 f7 56 f0 32 00 00 58 76 cd 04 b6 01 00 00 00 00 00 00 1e 00 00 00 73 72 63 p.2.....V.2..Xv..............src
3ea0 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 50 6c 61 74 66 6f 72 6d 2e 70 68 70 9a 00 00 00 92 /Composer/Util/Platform.php.....
3ec0 f5 f7 56 9a 00 00 00 c0 11 d5 00 b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..V................%...src/Compo
3ee0 73 65 72 2f 55 74 69 6c 2f 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 2e 70 68 70 de 06 00 00 ser/Util/ProcessExecutor.php....
3f00 92 f5 f7 56 de 06 00 00 18 de ed d0 b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 ...V................&...src/Comp
3f20 6f 73 65 72 2f 55 74 69 6c 2f 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 2e 70 68 70 5e 5d oser/Util/RemoteFilesystem.php^]
3f40 00 00 92 f5 f7 56 5e 5d 00 00 b0 7d 94 f8 b6 01 00 00 00 00 00 00 1e 00 00 00 73 72 63 2f 43 6f .....V^]...}..............src/Co
3f60 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 53 69 6c 65 6e 63 65 72 2e 70 68 70 f1 02 00 00 92 f5 f7 56 mposer/Util/Silencer.php.......V
3f80 f1 02 00 00 6d 14 76 fd b6 01 00 00 00 00 00 00 21 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 ....m.v.........!...src/Composer
3fa0 2f 55 74 69 6c 2f 53 70 64 78 4c 69 63 65 6e 73 65 2e 70 68 70 03 01 00 00 92 f5 f7 56 03 01 00 /Util/SpdxLicense.php.......V...
3fc0 00 be 37 0a f1 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 ..7..........*...src/Composer/Ut
3fe0 69 6c 2f 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 2e 70 68 70 e4 0e 00 00 92 il/StreamContextFactory.php.....
4000 f5 f7 56 e4 0e 00 00 c2 42 89 a9 b6 01 00 00 00 00 00 00 19 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..V.....B..............src/Compo
4020 73 65 72 2f 55 74 69 6c 2f 53 76 6e 2e 70 68 70 a2 12 00 00 92 f5 f7 56 a2 12 00 00 a8 4f 70 1e ser/Util/Svn.php.......V.....Op.
4040 b6 01 00 00 00 00 00 00 1f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 54 6c ............src/Composer/Util/Tl
4060 73 48 65 6c 70 65 72 2e 70 68 70 e5 19 00 00 92 f5 f7 56 e5 19 00 00 90 de 8a 17 b6 01 00 00 00 sHelper.php.......V.............
4080 00 00 00 11 00 00 00 73 72 63 2f 62 6f 6f 74 73 74 72 61 70 2e 70 68 70 b9 01 00 00 92 f5 f7 56 .......src/bootstrap.php.......V
40a0 b9 01 00 00 15 49 7d 9c b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 .....I}.........%...src/Composer
40c0 2f 41 75 74 6f 6c 6f 61 64 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 b2 30 00 00 92 f5 f7 /Autoload/ClassLoader.php.0.....
40e0 56 b2 30 00 00 fa 81 dd 5d b6 01 00 00 00 00 00 00 18 00 00 00 72 65 73 2f 63 6f 6d 70 6f 73 65 V.0.....]............res/compose
4100 72 2d 73 63 68 65 6d 61 2e 6a 73 6f 6e 77 61 00 00 92 f5 f7 56 77 61 00 00 90 61 5b 6b b6 01 00 r-schema.jsonwa.....Vwa...a[k...
4120 00 00 00 00 00 36 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 70 64 78 2d 6c 69 .....6...vendor/composer/spdx-li
4140 63 65 6e 73 65 73 2f 72 65 73 2f 73 70 64 78 2d 65 78 63 65 70 74 69 6f 6e 73 2e 6a 73 6f 6e a5 censes/res/spdx-exceptions.json.
4160 06 00 00 92 f5 f7 56 a5 06 00 00 76 64 9d 8a b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f ......V....vd..........4...vendo
4180 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 70 64 78 2d 6c 69 63 65 6e 73 65 73 2f 72 65 73 2f 73 70 64 r/composer/spdx-licenses/res/spd
41a0 78 2d 6c 69 63 65 6e 73 65 73 2e 6a 73 6f 6e 4b 5f 00 00 92 f5 f7 56 4b 5f 00 00 80 71 09 be b6 x-licenses.jsonK_.....VK_...q...
41c0 01 00 00 00 00 00 00 2a 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 63 6c 69 2d 70 72 6f 6d 70 .......*...vendor/seld/cli-promp
41e0 74 2f 72 65 73 2f 68 69 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 00 24 00 00 92 f5 f7 56 00 24 00 t/res/hiddeninput.exe.$.....V.$.
4200 00 95 8d a5 76 b6 01 00 00 00 00 00 00 26 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f ....v........&...vendor/symfony/
4220 63 6f 6e 73 6f 6c 65 2f 41 70 70 6c 69 63 61 74 69 6f 6e 2e 70 68 70 ba 55 00 00 92 f5 f7 56 ba console/Application.php.U.....V.
4240 55 00 00 b5 d7 c6 62 b6 01 00 00 00 00 00 00 2a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e U.....b........*...vendor/symfon
4260 79 2f 63 6f 6e 73 6f 6c 65 2f 43 6f 6d 6d 61 6e 64 2f 43 6f 6d 6d 61 6e 64 2e 70 68 70 4f 20 00 y/console/Command/Command.phpO..
4280 00 92 f5 f7 56 4f 20 00 00 e6 be 02 28 b6 01 00 00 00 00 00 00 2e 00 00 00 76 65 6e 64 6f 72 2f ....VO......(............vendor/
42a0 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 43 6f 6d 6d 61 6e 64 2f 48 65 6c 70 43 6f 6d 6d symfony/console/Command/HelpComm
42c0 61 6e 64 2e 70 68 70 dd 07 00 00 92 f5 f7 56 dd 07 00 00 2e d8 99 75 b6 01 00 00 00 00 00 00 2e and.php.......V.......u.........
42e0 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 43 6f 6d 6d 61 6e ...vendor/symfony/console/Comman
4300 64 2f 4c 69 73 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 5a 08 00 00 92 f5 f7 56 5a 08 00 00 c9 a3 a0 d/ListCommand.phpZ......VZ......
4320 16 b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 .........(...vendor/symfony/cons
4340 6f 6c 65 2f 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 73 2e 70 68 70 ef 00 00 00 92 f5 f7 56 ef 00 00 ole/ConsoleEvents.php.......V...
4360 00 0d d5 48 b8 b6 01 00 00 00 00 00 00 3c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f ...H.........<...vendor/symfony/
4380 63 6f 6e 73 6f 6c 65 2f 44 65 73 63 72 69 70 74 6f 72 2f 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 console/Descriptor/ApplicationDe
43a0 73 63 72 69 70 74 69 6f 6e 2e 70 68 70 df 08 00 00 92 f5 f7 56 df 08 00 00 b5 8c b0 37 b6 01 00 scription.php.......V.......7...
43c0 00 00 00 00 00 30 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f .....0...vendor/symfony/console/
43e0 44 65 73 63 72 69 70 74 6f 72 2f 44 65 73 63 72 69 70 74 6f 72 2e 70 68 70 9d 07 00 00 92 f5 f7 Descriptor/Descriptor.php.......
4400 56 9d 07 00 00 08 3b 7e c4 b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V.....;~.........9...vendor/symf
4420 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 44 65 73 63 72 69 70 74 6f 72 2f 44 65 73 63 72 69 70 74 6f ony/console/Descriptor/Descripto
4440 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 fc 00 00 00 92 f5 f7 56 fc 00 00 00 b1 51 07 b5 b6 01 rInterface.php.......V.....Q....
4460 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 ......4...vendor/symfony/console
4480 2f 44 65 73 63 72 69 70 74 6f 72 2f 4a 73 6f 6e 44 65 73 63 72 69 70 74 6f 72 2e 70 68 70 9a 0d /Descriptor/JsonDescriptor.php..
44a0 00 00 92 f5 f7 56 9a 0d 00 00 14 6c ac 05 b6 01 00 00 00 00 00 00 38 00 00 00 76 65 6e 64 6f 72 .....V.....l..........8...vendor
44c0 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 44 65 73 63 72 69 70 74 6f 72 2f 4d 61 72 6b /symfony/console/Descriptor/Mark
44e0 64 6f 77 6e 44 65 73 63 72 69 70 74 6f 72 2e 70 68 70 7f 0e 00 00 92 f5 f7 56 7f 0e 00 00 3f 77 downDescriptor.php.......V....?w
4500 0f 6e b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e .n........4...vendor/symfony/con
4520 73 6f 6c 65 2f 44 65 73 63 72 69 70 74 6f 72 2f 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 2e 70 sole/Descriptor/TextDescriptor.p
4540 68 70 e5 1c 00 00 92 f5 f7 56 e5 1c 00 00 01 af 63 c5 b6 01 00 00 00 00 00 00 33 00 00 00 76 65 hp.......V......c.........3...ve
4560 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 44 65 73 63 72 69 70 74 6f 72 2f ndor/symfony/console/Descriptor/
4580 58 6d 6c 44 65 73 63 72 69 70 74 6f 72 2e 70 68 70 0f 1c 00 00 92 f5 f7 56 0f 1c 00 00 04 8b 50 XmlDescriptor.php.......V......P
45a0 24 b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 $........4...vendor/symfony/cons
45c0 6f 6c 65 2f 45 76 65 6e 74 2f 43 6f 6e 73 6f 6c 65 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 2e 70 68 ole/Event/ConsoleCommandEvent.ph
45e0 70 b2 01 00 00 92 f5 f7 56 b2 01 00 00 5a 6b 89 32 b6 01 00 00 00 00 00 00 2d 00 00 00 76 65 6e p.......V....Zk.2........-...ven
4600 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 45 76 65 6e 74 2f 43 6f 6e 73 6f 6c dor/symfony/console/Event/Consol
4620 65 45 76 65 6e 74 2e 70 68 70 c5 02 00 00 92 f5 f7 56 c5 02 00 00 d2 78 db 5c b6 01 00 00 00 00 eEvent.php.......V.....x.\......
4640 00 00 36 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 45 76 65 ..6...vendor/symfony/console/Eve
4660 6e 74 2f 43 6f 6e 73 6f 6c 65 45 78 63 65 70 74 69 6f 6e 45 76 65 6e 74 2e 70 68 70 12 03 00 00 nt/ConsoleExceptionEvent.php....
4680 92 f5 f7 56 12 03 00 00 e1 16 32 e9 b6 01 00 00 00 00 00 00 36 00 00 00 76 65 6e 64 6f 72 2f 73 ...V......2.........6...vendor/s
46a0 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 45 76 65 6e 74 2f 43 6f 6e 73 6f 6c 65 54 65 72 6d ymfony/console/Event/ConsoleTerm
46c0 69 6e 61 74 65 45 76 65 6e 74 2e 70 68 70 7a 02 00 00 92 f5 f7 56 7a 02 00 00 b3 2c ee 4c b6 01 inateEvent.phpz......Vz....,.L..
46e0 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 ......=...vendor/symfony/console
4700 2f 45 78 63 65 70 74 69 6f 6e 2f 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 /Exception/CommandNotFoundExcept
4720 69 6f 6e 2e 70 68 70 d4 01 00 00 92 f5 f7 56 d4 01 00 00 c8 f7 20 4c b6 01 00 00 00 00 00 00 37 ion.php.......V.......L........7
4740 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 45 78 63 65 70 74 ...vendor/symfony/console/Except
4760 69 6f 6e 2f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 2e 70 68 70 66 00 00 00 92 f5 ion/ExceptionInterface.phpf.....
4780 f7 56 66 00 00 00 a1 41 42 aa b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .Vf....AB.........=...vendor/sym
47a0 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 45 78 63 65 70 74 69 6f 6e 2f 49 6e 76 61 6c 69 64 41 72 fony/console/Exception/InvalidAr
47c0 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 a6 00 00 00 92 f5 f7 56 a6 00 00 00 d6 gumentException.php.......V.....
47e0 cc bd 5a b6 01 00 00 00 00 00 00 3b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f ..Z........;...vendor/symfony/co
4800 6e 73 6f 6c 65 2f 45 78 63 65 70 74 69 6f 6e 2f 49 6e 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 nsole/Exception/InvalidOptionExc
4820 65 70 74 69 6f 6e 2e 70 68 70 a6 00 00 00 92 f5 f7 56 a6 00 00 00 13 cb d7 48 b6 01 00 00 00 00 eption.php.......V.......H......
4840 00 00 33 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 45 78 63 ..3...vendor/symfony/console/Exc
4860 65 70 74 69 6f 6e 2f 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 92 00 00 00 92 f5 f7 eption/LogicException.php.......
4880 56 92 00 00 00 cd 4f 5c 65 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V.....O\e........5...vendor/symf
48a0 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 45 78 63 65 70 74 69 6f 6e 2f 52 75 6e 74 69 6d 65 45 78 63 ony/console/Exception/RuntimeExc
48c0 65 70 74 69 6f 6e 2e 70 68 70 96 00 00 00 92 f5 f7 56 96 00 00 00 d9 ed 2c 36 b6 01 00 00 00 00 eption.php.......V......,6......
48e0 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 46 6f 72 ..4...vendor/symfony/console/For
4900 6d 61 74 74 65 72 2f 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 2e 70 68 70 b3 0c 00 00 92 f5 matter/OutputFormatter.php......
4920 f7 56 b3 0c 00 00 28 af 0f 6f b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V....(..o........=...vendor/sym
4940 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 46 6f 72 6d 61 74 74 65 72 2f 4f 75 74 70 75 74 46 6f 72 fony/console/Formatter/OutputFor
4960 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 8a 01 00 00 92 f5 f7 56 8a 01 00 00 3a matterInterface.php.......V....:
4980 df 05 07 b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f ...........9...vendor/symfony/co
49a0 6e 73 6f 6c 65 2f 46 6f 72 6d 61 74 74 65 72 2f 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 nsole/Formatter/OutputFormatterS
49c0 74 79 6c 65 2e 70 68 70 4c 10 00 00 92 f5 f7 56 4c 10 00 00 8a 90 38 3c b6 01 00 00 00 00 00 00 tyle.phpL......VL.....8<........
49e0 42 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 46 6f 72 6d 61 B...vendor/symfony/console/Forma
4a00 74 74 65 72 2f 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 tter/OutputFormatterStyleInterfa
4a20 63 65 2e 70 68 70 86 01 00 00 92 f5 f7 56 86 01 00 00 dd 52 da ad b6 01 00 00 00 00 00 00 3e 00 ce.php.......V.....R..........>.
4a40 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 46 6f 72 6d 61 74 74 ..vendor/symfony/console/Formatt
4a60 65 72 2f 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 53 74 61 63 6b 2e 70 68 70 er/OutputFormatterStyleStack.php
4a80 4c 05 00 00 92 f5 f7 56 4c 05 00 00 2e 3d 16 62 b6 01 00 00 00 00 00 00 36 00 00 00 76 65 6e 64 L......VL....=.b........6...vend
4aa0 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 44 65 62 75 67 46 or/symfony/console/Helper/DebugF
4ac0 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 2e 70 68 70 78 08 00 00 92 f5 f7 56 78 08 00 00 4e a9 ormatterHelper.phpx......Vx...N.
4ae0 d8 bc b6 01 00 00 00 00 00 00 32 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e ..........2...vendor/symfony/con
4b00 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 44 65 73 63 72 69 70 74 6f 72 48 65 6c 70 65 72 2e 70 68 70 sole/Helper/DescriptorHelper.php
4b20 7a 05 00 00 92 f5 f7 56 7a 05 00 00 66 c9 da fd b6 01 00 00 00 00 00 00 2e 00 00 00 76 65 6e 64 z......Vz...f...............vend
4b40 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 44 69 61 6c 6f 67 or/symfony/console/Helper/Dialog
4b60 48 65 6c 70 65 72 2e 70 68 70 59 1d 00 00 92 f5 f7 56 59 1d 00 00 fe 6b 6c bb b6 01 00 00 00 00 Helper.phpY......VY....kl.......
4b80 00 00 31 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c ..1...vendor/symfony/console/Hel
4ba0 70 65 72 2f 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 2e 70 68 70 63 04 00 00 92 f5 f7 56 63 per/FormatterHelper.phpc......Vc
4bc0 04 00 00 93 fd ab 4e b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e ......N........(...vendor/symfon
4be0 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 48 65 6c 70 65 72 2e 70 68 70 a9 06 00 00 92 y/console/Helper/Helper.php.....
4c00 f5 f7 56 a9 06 00 00 7a c9 1d 1b b6 01 00 00 00 00 00 00 31 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V....z...........1...vendor/sy
4c20 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 48 65 6c 70 65 72 49 6e 74 65 72 mfony/console/Helper/HelperInter
4c40 66 61 63 65 2e 70 68 70 e7 00 00 00 92 f5 f7 56 e7 00 00 00 a0 18 c7 e3 b6 01 00 00 00 00 00 00 face.php.......V................
4c60 2b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 +...vendor/symfony/console/Helpe
4c80 72 2f 48 65 6c 70 65 72 53 65 74 2e 70 68 70 ca 07 00 00 92 f5 f7 56 ca 07 00 00 66 21 36 3e b6 r/HelperSet.php.......V....f!6>.
4ca0 01 00 00 00 00 00 00 32 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c .......2...vendor/symfony/consol
4cc0 65 2f 48 65 6c 70 65 72 2f 49 6e 70 75 74 41 77 61 72 65 48 65 6c 70 65 72 2e 70 68 70 63 01 00 e/Helper/InputAwareHelper.phpc..
4ce0 00 92 f5 f7 56 63 01 00 00 f1 f8 90 7c b6 01 00 00 00 00 00 00 2f 00 00 00 76 65 6e 64 6f 72 2f ....Vc......|......../...vendor/
4d00 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 50 72 6f 63 65 73 73 48 65 symfony/console/Helper/ProcessHe
4d20 6c 70 65 72 2e 70 68 70 d1 09 00 00 92 f5 f7 56 d1 09 00 00 40 b1 e3 81 b6 01 00 00 00 00 00 00 lper.php.......V....@...........
4d40 2d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 -...vendor/symfony/console/Helpe
4d60 72 2f 50 72 6f 67 72 65 73 73 42 61 72 2e 70 68 70 3b 27 00 00 92 f5 f7 56 3b 27 00 00 c4 da 82 r/ProgressBar.php;'.....V;'.....
4d80 cb b6 01 00 00 00 00 00 00 30 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 .........0...vendor/symfony/cons
4da0 6f 6c 65 2f 48 65 6c 70 65 72 2f 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 2e 70 68 70 da 1a 00 ole/Helper/ProgressHelper.php...
4dc0 00 92 f5 f7 56 da 1a 00 00 d9 fe f1 54 b6 01 00 00 00 00 00 00 33 00 00 00 76 65 6e 64 6f 72 2f ....V.......T........3...vendor/
4de0 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 50 72 6f 67 72 65 73 73 49 symfony/console/Helper/ProgressI
4e00 6e 64 69 63 61 74 6f 72 2e 70 68 70 b6 15 00 00 92 f5 f7 56 b6 15 00 00 14 65 d8 a1 b6 01 00 00 ndicator.php.......V.....e......
4e20 00 00 00 00 30 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 ....0...vendor/symfony/console/H
4e40 65 6c 70 65 72 2f 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 2e 70 68 70 0b 1c 00 00 92 f5 f7 56 elper/QuestionHelper.php.......V
4e60 0b 1c 00 00 e4 a2 9c 42 b6 01 00 00 00 00 00 00 37 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f .......B........7...vendor/symfo
4e80 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 53 79 6d 66 6f 6e 79 51 75 65 73 74 69 6f ny/console/Helper/SymfonyQuestio
4ea0 6e 48 65 6c 70 65 72 2e 70 68 70 6c 08 00 00 92 f5 f7 56 6c 08 00 00 43 81 e6 6f b6 01 00 00 00 nHelper.phpl......Vl...C..o.....
4ec0 00 00 00 27 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 ...'...vendor/symfony/console/He
4ee0 6c 70 65 72 2f 54 61 62 6c 65 2e 70 68 70 7b 29 00 00 92 f5 f7 56 7b 29 00 00 8f 9f 7c 6a b6 01 lper/Table.php{).....V{)....|j..
4f00 00 00 00 00 00 00 2b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 ......+...vendor/symfony/console
4f20 2f 48 65 6c 70 65 72 2f 54 61 62 6c 65 43 65 6c 6c 2e 70 68 70 3a 03 00 00 92 f5 f7 56 3a 03 00 /Helper/TableCell.php:......V:..
4f40 00 37 ae 0f 8f b6 01 00 00 00 00 00 00 2d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f .7...........-...vendor/symfony/
4f60 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 54 61 62 6c 65 48 65 6c 70 65 72 2e 70 68 70 13 0c console/Helper/TableHelper.php..
4f80 00 00 92 f5 f7 56 13 0c 00 00 a6 70 6d 87 b6 01 00 00 00 00 00 00 30 00 00 00 76 65 6e 64 6f 72 .....V.....pm.........0...vendor
4fa0 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 54 61 62 6c 65 53 65 70 /symfony/console/Helper/TableSep
4fc0 61 72 61 74 6f 72 2e 70 68 70 ce 00 00 00 92 f5 f7 56 ce 00 00 00 3c 66 3b a3 b6 01 00 00 00 00 arator.php.......V....<f;.......
4fe0 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c ..,...vendor/symfony/console/Hel
5000 70 65 72 2f 54 61 62 6c 65 53 74 79 6c 65 2e 70 68 70 1f 0a 00 00 92 f5 f7 56 1f 0a 00 00 50 de per/TableStyle.php.......V....P.
5020 b5 a6 b6 01 00 00 00 00 00 00 2a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e ..........*...vendor/symfony/con
5040 73 6f 6c 65 2f 49 6e 70 75 74 2f 41 72 67 76 49 6e 70 75 74 2e 70 68 70 03 14 00 00 92 f5 f7 56 sole/Input/ArgvInput.php.......V
5060 03 14 00 00 e4 8d 7e e5 b6 01 00 00 00 00 00 00 2b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f ......~.........+...vendor/symfo
5080 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 41 72 72 61 79 49 6e 70 75 74 2e 70 68 70 70 ny/console/Input/ArrayInput.phpp
50a0 0a 00 00 92 f5 f7 56 70 0a 00 00 d5 06 a4 be b6 01 00 00 00 00 00 00 26 00 00 00 76 65 6e 64 6f ......Vp...............&...vendo
50c0 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e 70 75 74 2e 70 68 r/symfony/console/Input/Input.ph
50e0 70 d4 0b 00 00 92 f5 f7 56 d4 0b 00 00 e4 13 a0 f1 b6 01 00 00 00 00 00 00 2e 00 00 00 76 65 6e p.......V....................ven
5100 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e 70 75 74 41 dor/symfony/console/Input/InputA
5120 72 67 75 6d 65 6e 74 2e 70 68 70 12 06 00 00 92 f5 f7 56 12 06 00 00 c1 dc 17 90 b6 01 00 00 00 rgument.php.......V.............
5140 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e ...4...vendor/symfony/console/In
5160 70 75 74 2f 49 6e 70 75 74 41 77 61 72 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 9a 00 00 00 92 put/InputAwareInterface.php.....
5180 f5 f7 56 9a 00 00 00 87 6a 54 9f b6 01 00 00 00 00 00 00 30 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V.....jT.........0...vendor/sy
51a0 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e 70 75 74 44 65 66 69 6e 69 74 mfony/console/Input/InputDefinit
51c0 69 6f 6e 2e 70 68 70 93 19 00 00 92 f5 f7 56 93 19 00 00 c9 ff ff e3 b6 01 00 00 00 00 00 00 2f ion.php.......V................/
51e0 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f ...vendor/symfony/console/Input/
5200 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 20 03 00 00 92 f5 f7 56 20 03 00 00 39 94 InputInterface.php.......V....9.
5220 f8 c7 b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e ..........,...vendor/symfony/con
5240 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e 70 75 74 4f 70 74 69 6f 6e 2e 70 68 70 1c 0c 00 00 92 f5 sole/Input/InputOption.php......
5260 f7 56 1c 0c 00 00 87 b9 a7 7f b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V................,...vendor/sym
5280 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 53 74 72 69 6e 67 49 6e 70 75 74 2e 70 fony/console/Input/StringInput.p
52a0 68 70 98 06 00 00 92 f5 f7 56 98 06 00 00 20 1d da a4 b6 01 00 00 00 00 00 00 1e 00 00 00 76 65 hp.......V....................ve
52c0 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4c 49 43 45 4e 53 45 29 04 00 00 ndor/symfony/console/LICENSE)...
52e0 92 f5 f7 56 29 04 00 00 19 b9 f4 1a b6 01 00 00 00 00 00 00 2f 00 00 00 76 65 6e 64 6f 72 2f 73 ...V).............../...vendor/s
5300 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4c 6f 67 67 65 72 2f 43 6f 6e 73 6f 6c 65 4c 6f 67 ymfony/console/Logger/ConsoleLog
5320 67 65 72 2e 70 68 70 3c 09 00 00 92 f5 f7 56 3c 09 00 00 3a e2 c7 6c b6 01 00 00 00 00 00 00 30 ger.php<......V<...:..l........0
5340 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 ...vendor/symfony/console/Output
5360 2f 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 2e 70 68 70 5f 01 00 00 92 f5 f7 56 5f 01 00 00 fb /BufferedOutput.php_......V_....
5380 42 cd b7 b6 01 00 00 00 00 00 00 2f 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f B........../...vendor/symfony/co
53a0 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 2e 70 68 70 b5 07 nsole/Output/ConsoleOutput.php..
53c0 00 00 92 f5 f7 56 b5 07 00 00 0a a2 53 5c b6 01 00 00 00 00 00 00 38 00 00 00 76 65 6e 64 6f 72 .....V......S\........8...vendor
53e0 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 43 6f 6e 73 6f 6c 65 4f /symfony/console/Output/ConsoleO
5400 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 e5 00 00 00 92 f5 f7 56 e5 00 00 00 72 4e utputInterface.php.......V....rN
5420 f4 00 b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e ..........,...vendor/symfony/con
5440 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 4e 75 6c 6c 4f 75 74 70 75 74 2e 70 68 70 c3 03 00 00 92 f5 sole/Output/NullOutput.php......
5460 f7 56 c3 03 00 00 08 5a c5 6c b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V.....Z.l........(...vendor/sym
5480 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 4f 75 74 70 75 74 2e 70 68 70 8e 09 fony/console/Output/Output.php..
54a0 00 00 92 f5 f7 56 8e 09 00 00 78 3a 6c a5 b6 01 00 00 00 00 00 00 31 00 00 00 76 65 6e 64 6f 72 .....V....x:l.........1...vendor
54c0 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 4f 75 74 70 75 74 49 6e /symfony/console/Output/OutputIn
54e0 74 65 72 66 61 63 65 2e 70 68 70 1c 03 00 00 92 f5 f7 56 1c 03 00 00 1a d3 da 3e b6 01 00 00 00 terface.php.......V.......>.....
5500 00 00 00 2e 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4f 75 .......vendor/symfony/console/Ou
5520 74 70 75 74 2f 53 74 72 65 61 6d 4f 75 74 70 75 74 2e 70 68 70 37 05 00 00 92 f5 f7 56 37 05 00 tput/StreamOutput.php7......V7..
5540 00 69 43 18 9c b6 01 00 00 00 00 00 00 32 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f .iC..........2...vendor/symfony/
5560 63 6f 6e 73 6f 6c 65 2f 51 75 65 73 74 69 6f 6e 2f 43 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 2e console/Question/ChoiceQuestion.
5580 70 68 70 dd 09 00 00 92 f5 f7 56 dd 09 00 00 b0 02 a7 c2 b6 01 00 00 00 00 00 00 38 00 00 00 76 php.......V................8...v
55a0 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 51 75 65 73 74 69 6f 6e 2f 43 endor/symfony/console/Question/C
55c0 6f 6e 66 69 72 6d 61 74 69 6f 6e 51 75 65 73 74 69 6f 6e 2e 70 68 70 e9 02 00 00 92 f5 f7 56 e9 onfirmationQuestion.php.......V.
55e0 02 00 00 83 17 51 40 b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e .....Q@........,...vendor/symfon
5600 79 2f 63 6f 6e 73 6f 6c 65 2f 51 75 65 73 74 69 6f 6e 2f 51 75 65 73 74 69 6f 6e 2e 70 68 70 0b y/console/Question/Question.php.
5620 0a 00 00 92 f5 f7 56 0b 0a 00 00 15 10 8f 7b b6 01 00 00 00 00 00 00 20 00 00 00 76 65 6e 64 6f ......V.......{............vendo
5640 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 68 65 6c 6c 2e 70 68 70 e9 0f 00 00 92 r/symfony/console/Shell.php.....
5660 f5 f7 56 e9 0f 00 00 bd 66 fc 91 b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V.....f..........,...vendor/sy
5680 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 74 79 6c 65 2f 4f 75 74 70 75 74 53 74 79 6c 65 2e mfony/console/Style/OutputStyle.
56a0 70 68 70 5f 05 00 00 92 f5 f7 56 5f 05 00 00 04 fb 05 b5 b6 01 00 00 00 00 00 00 2f 00 00 00 76 php_......V_.............../...v
56c0 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 74 79 6c 65 2f 53 74 79 6c endor/symfony/console/Style/Styl
56e0 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 d4 03 00 00 92 f5 f7 56 d4 03 00 00 a0 df ca 6a b6 01 eInterface.php.......V.......j..
5700 00 00 00 00 00 00 2d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 ......-...vendor/symfony/console
5720 2f 53 74 79 6c 65 2f 53 79 6d 66 6f 6e 79 53 74 79 6c 65 2e 70 68 70 45 1d 00 00 92 f5 f7 56 45 /Style/SymfonyStyle.phpE......VE
5740 1d 00 00 7f 00 37 32 b6 01 00 00 00 00 00 00 33 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e .....72........3...vendor/symfon
5760 79 2f 63 6f 6e 73 6f 6c 65 2f 54 65 73 74 65 72 2f 41 70 70 6c 69 63 61 74 69 6f 6e 54 65 73 74 y/console/Tester/ApplicationTest
5780 65 72 2e 70 68 70 d4 05 00 00 92 f5 f7 56 d4 05 00 00 ac ec a4 64 b6 01 00 00 00 00 00 00 2f 00 er.php.......V.......d......../.
57a0 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 54 65 73 74 65 72 2f ..vendor/symfony/console/Tester/
57c0 43 6f 6d 6d 61 6e 64 54 65 73 74 65 72 2e 70 68 70 ae 06 00 00 92 f5 f7 56 ae 06 00 00 45 d9 9a CommandTester.php.......V....E..
57e0 7c b6 01 00 00 00 00 00 00 3a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 |........:...vendor/symfony/file
5800 73 79 73 74 65 6d 2f 45 78 63 65 70 74 69 6f 6e 2f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 system/Exception/ExceptionInterf
5820 61 63 65 2e 70 68 70 69 00 00 00 92 f5 f7 56 69 00 00 00 24 20 ff 9b b6 01 00 00 00 00 00 00 3d ace.phpi......Vi...$...........=
5840 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 73 79 73 74 65 6d 2f 45 78 63 ...vendor/symfony/filesystem/Exc
5860 65 70 74 69 6f 6e 2f 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 eption/FileNotFoundException.php
5880 bc 01 00 00 92 f5 f7 56 bc 01 00 00 70 ed 5c b6 b6 01 00 00 00 00 00 00 33 00 00 00 76 65 6e 64 .......V....p.\.........3...vend
58a0 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 73 79 73 74 65 6d 2f 45 78 63 65 70 74 69 6f 6e 2f or/symfony/filesystem/Exception/
58c0 49 4f 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 87 01 00 00 92 f5 f7 56 87 01 00 00 80 fc 23 d1 b6 IOException.php.......V......#..
58e0 01 00 00 00 00 00 00 3c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 73 79 .......<...vendor/symfony/filesy
5900 73 74 65 6d 2f 45 78 63 65 70 74 69 6f 6e 2f 49 4f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 stem/Exception/IOExceptionInterf
5920 61 63 65 2e 70 68 70 a6 00 00 00 92 f5 f7 56 a6 00 00 00 6a d9 77 4d b6 01 00 00 00 00 00 00 28 ace.php.......V....j.wM........(
5940 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 73 79 73 74 65 6d 2f 46 69 6c ...vendor/symfony/filesystem/Fil
5960 65 73 79 73 74 65 6d 2e 70 68 70 40 2b 00 00 92 f5 f7 56 40 2b 00 00 ad 7f bb e7 b6 01 00 00 00 esystem.php@+.....V@+...........
5980 00 00 00 21 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 73 79 73 74 65 6d ...!...vendor/symfony/filesystem
59a0 2f 4c 49 43 45 4e 53 45 29 04 00 00 92 f5 f7 56 29 04 00 00 19 b9 f4 1a b6 01 00 00 00 00 00 00 /LICENSE)......V)...............
59c0 29 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 73 79 73 74 65 6d 2f 4c 6f )...vendor/symfony/filesystem/Lo
59e0 63 6b 48 61 6e 64 6c 65 72 2e 70 68 70 8d 05 00 00 92 f5 f7 56 8d 05 00 00 66 f7 23 83 b6 01 00 ckHandler.php.......V....f.#....
5a00 00 00 00 00 00 31 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 41 .....1...vendor/symfony/finder/A
5a20 64 61 70 74 65 72 2f 41 62 73 74 72 61 63 74 41 64 61 70 74 65 72 2e 70 68 70 5c 0b 00 00 92 f5 dapter/AbstractAdapter.php\.....
5a40 f7 56 5c 0b 00 00 c6 93 c9 80 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V\...............5...vendor/sym
5a60 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 41 64 61 70 74 65 72 2f 41 62 73 74 72 61 63 74 46 69 6e 64 fony/finder/Adapter/AbstractFind
5a80 41 64 61 70 74 65 72 2e 70 68 70 99 19 00 00 92 f5 f7 56 99 19 00 00 70 5c 5a 33 b6 01 00 00 00 Adapter.php.......V....p\Z3.....
5aa0 00 00 00 32 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 41 64 61 ...2...vendor/symfony/finder/Ada
5ac0 70 74 65 72 2f 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 b1 03 00 00 92 f5 f7 pter/AdapterInterface.php.......
5ae0 56 b1 03 00 00 e4 bb ca 26 b6 01 00 00 00 00 00 00 30 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V.......&........0...vendor/symf
5b00 6f 6e 79 2f 66 69 6e 64 65 72 2f 41 64 61 70 74 65 72 2f 42 73 64 46 69 6e 64 41 64 61 70 74 65 ony/finder/Adapter/BsdFindAdapte
5b20 72 2e 70 68 70 32 07 00 00 92 f5 f7 56 32 07 00 00 51 2f c7 43 b6 01 00 00 00 00 00 00 30 00 00 r.php2......V2...Q/.C........0..
5b40 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 41 64 61 70 74 65 72 2f 47 .vendor/symfony/finder/Adapter/G
5b60 6e 75 46 69 6e 64 41 64 61 70 74 65 72 2e 70 68 70 15 07 00 00 92 f5 f7 56 15 07 00 00 0d 17 a1 nuFindAdapter.php.......V.......
5b80 be b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 .........,...vendor/symfony/find
5ba0 65 72 2f 41 64 61 70 74 65 72 2f 50 68 70 41 64 61 70 74 65 72 2e 70 68 70 f4 07 00 00 92 f5 f7 er/Adapter/PhpAdapter.php.......
5bc0 56 f4 07 00 00 16 1d 3a 3f b6 01 00 00 00 00 00 00 2f 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V......:?......../...vendor/symf
5be0 6f 6e 79 2f 66 69 6e 64 65 72 2f 43 6f 6d 70 61 72 61 74 6f 72 2f 43 6f 6d 70 61 72 61 74 6f 72 ony/finder/Comparator/Comparator
5c00 2e 70 68 70 8c 03 00 00 92 f5 f7 56 8c 03 00 00 16 77 fe 54 b6 01 00 00 00 00 00 00 33 00 00 00 .php.......V.....w.T........3...
5c20 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 43 6f 6d 70 61 72 61 74 6f 72 vendor/symfony/finder/Comparator
5c40 2f 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 2e 70 68 70 25 03 00 00 92 f5 f7 56 25 03 00 00 4c /DateComparator.php%......V%...L
5c60 bf 45 c7 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 .E.........5...vendor/symfony/fi
5c80 6e 64 65 72 2f 43 6f 6d 70 61 72 61 74 6f 72 2f 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 nder/Comparator/NumberComparator
5ca0 2e 70 68 70 7e 03 00 00 92 f5 f7 56 7e 03 00 00 94 87 20 78 b6 01 00 00 00 00 00 00 39 00 00 00 .php~......V~......x........9...
5cc0 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 45 78 63 65 70 74 69 6f 6e 2f vendor/symfony/finder/Exception/
5ce0 41 63 63 65 73 73 44 65 6e 69 65 64 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 84 00 00 00 92 f5 f7 AccessDeniedException.php.......
5d00 56 84 00 00 00 bd be 73 9c b6 01 00 00 00 00 00 00 3b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V......s.........;...vendor/symf
5d20 6f 6e 79 2f 66 69 6e 64 65 72 2f 45 78 63 65 70 74 69 6f 6e 2f 41 64 61 70 74 65 72 46 61 69 6c ony/finder/Exception/AdapterFail
5d40 75 72 65 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 af 02 00 00 92 f5 f7 56 af 02 00 00 9c f4 d4 c1 ureException.php.......V........
5d60 b6 01 00 00 00 00 00 00 36 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 ........6...vendor/symfony/finde
5d80 72 2f 45 78 63 65 70 74 69 6f 6e 2f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 2e 70 r/Exception/ExceptionInterface.p
5da0 68 70 84 00 00 00 92 f5 f7 56 84 00 00 00 1c 47 7a 2d b6 01 00 00 00 00 00 00 41 00 00 00 76 65 hp.......V.....Gz-........A...ve
5dc0 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 45 78 63 65 70 74 69 6f 6e 2f 4f 70 ndor/symfony/finder/Exception/Op
5de0 65 72 61 74 69 6f 6e 4e 6f 74 50 65 72 6d 69 74 65 64 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 29 erationNotPermitedException.php)
5e00 01 00 00 92 f5 f7 56 29 01 00 00 ec 63 6a 3d b6 01 00 00 00 00 00 00 40 00 00 00 76 65 6e 64 6f ......V)....cj=........@...vendo
5e20 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 45 78 63 65 70 74 69 6f 6e 2f 53 68 65 6c 6c r/symfony/finder/Exception/Shell
5e40 43 6f 6d 6d 61 6e 64 46 61 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 c2 02 00 00 92 CommandFailureException.php.....
5e60 f5 f7 56 c2 02 00 00 19 76 82 c8 b6 01 00 00 00 00 00 00 2f 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V.....v........../...vendor/sy
5e80 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 45 78 70 72 65 73 73 69 6f 6e 2f 45 78 70 72 65 73 73 69 mfony/finder/Expression/Expressi
5ea0 6f 6e 2e 70 68 70 07 06 00 00 92 f5 f7 56 07 06 00 00 b5 6f d4 06 b6 01 00 00 00 00 00 00 29 00 on.php.......V.....o..........).
5ec0 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 45 78 70 72 65 73 73 69 ..vendor/symfony/finder/Expressi
5ee0 6f 6e 2f 47 6c 6f 62 2e 70 68 70 69 04 00 00 92 f5 f7 56 69 04 00 00 40 8a 1b ba b6 01 00 00 00 on/Glob.phpi......Vi...@........
5f00 00 00 00 2a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 45 78 70 ...*...vendor/symfony/finder/Exp
5f20 72 65 73 73 69 6f 6e 2f 52 65 67 65 78 2e 70 68 70 06 0f 00 00 92 f5 f7 56 06 0f 00 00 70 38 00 ression/Regex.php.......V....p8.
5f40 5c b6 01 00 00 00 00 00 00 33 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 \........3...vendor/symfony/find
5f60 65 72 2f 45 78 70 72 65 73 73 69 6f 6e 2f 56 61 6c 75 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 er/Expression/ValueInterface.php
5f80 cd 01 00 00 92 f5 f7 56 cd 01 00 00 b2 7e f8 62 b6 01 00 00 00 00 00 00 20 00 00 00 76 65 6e 64 .......V.....~.b............vend
5fa0 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 46 69 6e 64 65 72 2e 70 68 70 c2 2d 00 00 or/symfony/finder/Finder.php.-..
5fc0 92 f5 f7 56 c2 2d 00 00 1e 98 66 b4 b6 01 00 00 00 00 00 00 1e 00 00 00 76 65 6e 64 6f 72 2f 73 ...V.-....f.............vendor/s
5fe0 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 47 6c 6f 62 2e 70 68 70 34 05 00 00 92 f5 f7 56 34 05 ymfony/finder/Glob.php4......V4.
6000 00 00 b0 42 61 b3 b6 01 00 00 00 00 00 00 37 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 ...Ba.........7...vendor/symfony
6020 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 43 75 73 74 6f 6d 46 69 6c 74 65 72 49 74 65 /finder/Iterator/CustomFilterIte
6040 72 61 74 6f 72 2e 70 68 70 5d 02 00 00 92 f5 f7 56 5d 02 00 00 74 e0 b1 b5 b6 01 00 00 00 00 00 rator.php]......V]...t..........
6060 00 3a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 .:...vendor/symfony/finder/Itera
6080 74 6f 72 2f 44 61 74 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 7a tor/DateRangeFilterIterator.phpz
60a0 02 00 00 92 f5 f7 56 7a 02 00 00 7f 7d 17 a2 b6 01 00 00 00 00 00 00 3b 00 00 00 76 65 6e 64 6f ......Vz....}..........;...vendo
60c0 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 44 65 70 74 68 52 r/symfony/finder/Iterator/DepthR
60e0 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 f0 01 00 00 92 f5 f7 56 f0 01 angeFilterIterator.php.......V..
6100 00 00 df 30 99 04 b6 01 00 00 00 00 00 00 41 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 ...0..........A...vendor/symfony
6120 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 45 78 63 6c 75 64 65 44 69 72 65 63 74 6f 72 /finder/Iterator/ExcludeDirector
6140 79 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 ca 05 00 00 92 f5 f7 56 ca 05 00 00 90 yFilterIterator.php.......V.....
6160 39 36 86 b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 96.........4...vendor/symfony/fi
6180 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 46 69 6c 65 50 61 74 68 73 49 74 65 72 61 74 6f 72 2e nder/Iterator/FilePathsIterator.
61a0 70 68 70 20 06 00 00 92 f5 f7 56 20 06 00 00 66 51 43 65 b6 01 00 00 00 00 00 00 39 00 00 00 76 php.......V....fQCe........9...v
61c0 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 46 69 endor/symfony/finder/Iterator/Fi
61e0 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 5c 02 00 00 92 f5 f7 56 leTypeFilterIterator.php\......V
6200 5c 02 00 00 70 91 27 98 b6 01 00 00 00 00 00 00 3c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f \...p.'.........<...vendor/symfo
6220 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 46 69 6c 65 63 6f 6e 74 65 6e 74 46 69 ny/finder/Iterator/FilecontentFi
6240 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 35 02 00 00 92 f5 f7 56 35 02 00 00 9a ed 1f 14 lterIterator.php5......V5.......
6260 b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 ........9...vendor/symfony/finde
6280 72 2f 49 74 65 72 61 74 6f 72 2f 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f r/Iterator/FilenameFilterIterato
62a0 72 2e 70 68 70 72 01 00 00 92 f5 f7 56 72 01 00 00 74 08 1a 75 b6 01 00 00 00 00 00 00 31 00 00 r.phpr......Vr...t..u........1..
62c0 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f .vendor/symfony/finder/Iterator/
62e0 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 86 02 00 00 92 f5 f7 56 86 02 00 00 30 a3 FilterIterator.php.......V....0.
6300 be d4 b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e ..........=...vendor/symfony/fin
6320 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 4d 75 6c 74 69 70 6c 65 50 63 72 65 46 69 6c 74 65 72 49 der/Iterator/MultiplePcreFilterI
6340 74 65 72 61 74 6f 72 2e 70 68 70 2f 05 00 00 92 f5 f7 56 2f 05 00 00 bb c7 1f 59 b6 01 00 00 00 terator.php/......V/......Y.....
6360 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 ...5...vendor/symfony/finder/Ite
6380 72 61 74 6f 72 2f 50 61 74 68 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 cf 01 00 00 rator/PathFilterIterator.php....
63a0 92 f5 f7 56 cf 01 00 00 ba 1c aa c7 b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 2f 73 ...V................=...vendor/s
63c0 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 52 65 63 75 72 73 69 76 65 ymfony/finder/Iterator/Recursive
63e0 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 2e 70 68 70 77 08 00 00 92 f5 f7 56 77 08 00 DirectoryIterator.phpw......Vw..
6400 00 6f 70 17 9b b6 01 00 00 00 00 00 00 3a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f .op..........:...vendor/symfony/
6420 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 53 69 7a 65 52 61 6e 67 65 46 69 6c 74 65 72 49 finder/Iterator/SizeRangeFilterI
6440 74 65 72 61 74 6f 72 2e 70 68 70 67 02 00 00 92 f5 f7 56 67 02 00 00 21 d4 97 e9 b6 01 00 00 00 terator.phpg......Vg...!........
6460 00 00 00 33 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 ...3...vendor/symfony/finder/Ite
6480 72 61 74 6f 72 2f 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 2e 70 68 70 d8 05 00 00 92 f5 rator/SortableIterator.php......
64a0 f7 56 d8 05 00 00 60 8b 3e 63 b6 01 00 00 00 00 00 00 1d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V....`.>c............vendor/sym
64c0 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 4c 49 43 45 4e 53 45 29 04 00 00 92 f5 f7 56 29 04 00 00 19 fony/finder/LICENSE)......V)....
64e0 b9 f4 1a b6 01 00 00 00 00 00 00 27 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 ...........'...vendor/symfony/fi
6500 6e 64 65 72 2f 53 68 65 6c 6c 2f 43 6f 6d 6d 61 6e 64 2e 70 68 70 53 0b 00 00 92 f5 f7 56 53 0b nder/Shell/Command.phpS......VS.
6520 00 00 63 43 85 99 b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 ..cC..........%...vendor/symfony
6540 2f 66 69 6e 64 65 72 2f 53 68 65 6c 6c 2f 53 68 65 6c 6c 2e 70 68 70 70 04 00 00 92 f5 f7 56 70 /finder/Shell/Shell.phpp......Vp
6560 04 00 00 18 d3 7d 67 b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e .....}g........%...vendor/symfon
6580 79 2f 66 69 6e 64 65 72 2f 53 70 6c 46 69 6c 65 49 6e 66 6f 2e 70 68 70 fb 02 00 00 92 f5 f7 56 y/finder/SplFileInfo.php.......V
65a0 fb 02 00 00 91 05 86 36 b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f .......6........(...vendor/symfo
65c0 6e 79 2f 70 6f 6c 79 66 69 6c 6c 2d 6d 62 73 74 72 69 6e 67 2f 4c 49 43 45 4e 53 45 29 04 00 00 ny/polyfill-mbstring/LICENSE)...
65e0 92 f5 f7 56 29 04 00 00 ee 2a 4c 14 b6 01 00 00 00 00 00 00 2d 00 00 00 76 65 6e 64 6f 72 2f 73 ...V)....*L.........-...vendor/s
6600 79 6d 66 6f 6e 79 2f 70 6f 6c 79 66 69 6c 6c 2d 6d 62 73 74 72 69 6e 67 2f 4d 62 73 74 72 69 6e ymfony/polyfill-mbstring/Mbstrin
6620 67 2e 70 68 70 35 30 00 00 92 f5 f7 56 35 30 00 00 8a 41 81 ba b6 01 00 00 00 00 00 00 2e 00 00 g.php50.....V50...A.............
6640 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 6f 6c 79 66 69 6c 6c 2d 6d 62 73 74 72 69 6e .vendor/symfony/polyfill-mbstrin
6660 67 2f 62 6f 6f 74 73 74 72 61 70 2e 70 68 70 6f 0e 00 00 92 f5 f7 56 6f 0e 00 00 63 10 d7 35 b6 g/bootstrap.phpo......Vo...c..5.
6680 01 00 00 00 00 00 00 37 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 .......7...vendor/symfony/proces
66a0 73 2f 45 78 63 65 70 74 69 6f 6e 2f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 2e 70 s/Exception/ExceptionInterface.p
66c0 68 70 66 00 00 00 92 f5 f7 56 66 00 00 00 5d f6 3e 54 b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 hpf......Vf...].>T........=...ve
66e0 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 45 78 63 65 70 74 69 6f 6e 2f 49 ndor/symfony/process/Exception/I
6700 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 a8 00 00 00 92 nvalidArgumentException.php.....
6720 f5 f7 56 a8 00 00 00 d0 c0 2b 5f b6 01 00 00 00 00 00 00 33 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V......+_........3...vendor/sy
6740 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 45 78 63 65 70 74 69 6f 6e 2f 4c 6f 67 69 63 45 78 63 mfony/process/Exception/LogicExc
6760 65 70 74 69 6f 6e 2e 70 68 70 94 00 00 00 92 f5 f7 56 94 00 00 00 20 b3 e3 f1 b6 01 00 00 00 00 eption.php.......V..............
6780 00 00 3b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 45 78 63 ..;...vendor/symfony/process/Exc
67a0 65 70 74 69 6f 6e 2f 50 72 6f 63 65 73 73 46 61 69 6c 65 64 45 78 63 65 70 74 69 6f 6e 2e 70 68 eption/ProcessFailedException.ph
67c0 70 78 03 00 00 92 f5 f7 56 78 03 00 00 a8 cc 7a 79 b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e px......Vx.....zy........=...ven
67e0 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 45 78 63 65 70 74 69 6f 6e 2f 50 72 dor/symfony/process/Exception/Pr
6800 6f 63 65 73 73 54 69 6d 65 64 4f 75 74 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 1f 04 00 00 92 f5 ocessTimedOutException.php......
6820 f7 56 1f 04 00 00 2e 09 c3 e1 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V................5...vendor/sym
6840 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 45 78 63 65 70 74 69 6f 6e 2f 52 75 6e 74 69 6d 65 45 78 fony/process/Exception/RuntimeEx
6860 63 65 70 74 69 6f 6e 2e 70 68 70 98 00 00 00 92 f5 f7 56 98 00 00 00 a2 1b d8 3a b6 01 00 00 00 ception.php.......V.......:.....
6880 00 00 00 2b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 45 78 ...+...vendor/symfony/process/Ex
68a0 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2e 70 68 70 81 04 00 00 92 f5 f7 56 81 04 00 00 f2 29 ecutableFinder.php.......V.....)
68c0 e5 dc b6 01 00 00 00 00 00 00 1e 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f ..............vendor/symfony/pro
68e0 63 65 73 73 2f 4c 49 43 45 4e 53 45 29 04 00 00 92 f5 f7 56 29 04 00 00 19 b9 f4 1a b6 01 00 00 cess/LICENSE)......V)...........
6900 00 00 00 00 2e 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 ........vendor/symfony/process/P
6920 68 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2e 70 68 70 67 04 00 00 92 f5 f7 56 67 04 hpExecutableFinder.phpg......Vg.
6940 00 00 8d e7 b5 06 b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 ..............%...vendor/symfony
6960 2f 70 72 6f 63 65 73 73 2f 50 68 70 50 72 6f 63 65 73 73 2e 70 68 70 fc 03 00 00 92 f5 f7 56 fc /process/PhpProcess.php.......V.
6980 03 00 00 5f 17 97 39 b6 01 00 00 00 00 00 00 2e 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e ..._..9............vendor/symfon
69a0 79 2f 70 72 6f 63 65 73 73 2f 50 69 70 65 73 2f 41 62 73 74 72 61 63 74 50 69 70 65 73 2e 70 68 y/process/Pipes/AbstractPipes.ph
69c0 70 00 03 00 00 92 f5 f7 56 00 03 00 00 98 7c a5 be b6 01 00 00 00 00 00 00 2f 00 00 00 76 65 6e p.......V.....|........../...ven
69e0 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 69 70 65 73 2f 50 69 70 65 73 49 dor/symfony/process/Pipes/PipesI
6a00 6e 74 65 72 66 61 63 65 2e 70 68 70 44 01 00 00 92 f5 f7 56 44 01 00 00 76 d8 ee a1 b6 01 00 00 nterface.phpD......VD...v.......
6a20 00 00 00 00 2a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 ....*...vendor/symfony/process/P
6a40 69 70 65 73 2f 55 6e 69 78 50 69 70 65 73 2e 70 68 70 a4 0b 00 00 92 f5 f7 56 a4 0b 00 00 f8 01 ipes/UnixPipes.php.......V......
6a60 55 74 b6 01 00 00 00 00 00 00 2d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f Ut........-...vendor/symfony/pro
6a80 63 65 73 73 2f 50 69 70 65 73 2f 57 69 6e 64 6f 77 73 50 69 70 65 73 2e 70 68 70 9d 0e 00 00 92 cess/Pipes/WindowsPipes.php.....
6aa0 f5 f7 56 9d 0e 00 00 96 29 be 6e b6 01 00 00 00 00 00 00 22 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V.....).n........"...vendor/sy
6ac0 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 72 6f 63 65 73 73 2e 70 68 70 03 51 00 00 92 f5 f7 mfony/process/Process.php.Q.....
6ae0 56 03 51 00 00 5a ac 17 cb b6 01 00 00 00 00 00 00 29 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V.Q..Z...........)...vendor/symf
6b00 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 72 6f 63 65 73 73 42 75 69 6c 64 65 72 2e 70 68 70 03 0b ony/process/ProcessBuilder.php..
6b20 00 00 92 f5 f7 56 03 0b 00 00 84 38 3c b2 b6 01 00 00 00 00 00 00 27 00 00 00 76 65 6e 64 6f 72 .....V.....8<.........'...vendor
6b40 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 72 6f 63 65 73 73 55 74 69 6c 73 2e 70 68 /symfony/process/ProcessUtils.ph
6b60 70 0e 06 00 00 92 f5 f7 56 0e 06 00 00 5e dc b2 22 b6 01 00 00 00 00 00 00 1c 00 00 00 76 65 6e p.......V....^.."............ven
6b80 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 4c 49 43 45 4e 53 45 22 04 00 00 92 f5 f7 dor/seld/jsonlint/LICENSE"......
6ba0 56 22 04 00 00 61 83 73 79 b6 01 00 00 00 00 00 00 40 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 V"...a.sy........@...vendor/seld
6bc0 2f 6a 73 6f 6e 6c 69 6e 74 2f 73 72 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f 44 75 70 6c /jsonlint/src/Seld/JsonLint/Dupl
6be0 69 63 61 74 65 4b 65 79 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 2a 01 00 00 92 f5 f7 56 2a 01 00 icateKeyException.php*......V*..
6c00 00 19 95 70 f1 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f ...p.........5...vendor/seld/jso
6c20 6e 6c 69 6e 74 2f 73 72 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f 4a 73 6f 6e 50 61 72 73 nlint/src/Seld/JsonLint/JsonPars
6c40 65 72 2e 70 68 70 93 31 00 00 92 f5 f7 56 93 31 00 00 9d 50 02 a6 b6 01 00 00 00 00 00 00 30 00 er.php.1.....V.1...P..........0.
6c60 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 73 72 63 2f 53 65 6c 64 2f ..vendor/seld/jsonlint/src/Seld/
6c80 4a 73 6f 6e 4c 69 6e 74 2f 4c 65 78 65 72 2e 70 68 70 07 0f 00 00 92 f5 f7 56 07 0f 00 00 89 84 JsonLint/Lexer.php.......V......
6ca0 6d 21 b6 01 00 00 00 00 00 00 3b 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 m!........;...vendor/seld/jsonli
6cc0 6e 74 2f 73 72 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f 50 61 72 73 69 6e 67 45 78 63 65 nt/src/Seld/JsonLint/ParsingExce
6ce0 70 74 69 6f 6e 2e 70 68 70 1e 01 00 00 92 f5 f7 56 1e 01 00 00 89 b2 10 f1 b6 01 00 00 00 00 00 ption.php.......V...............
6d00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 73 72 63 2f 53 65 .4...vendor/seld/jsonlint/src/Se
6d20 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f 55 6e 64 65 66 69 6e 65 64 2e 70 68 70 3e 00 00 00 92 f5 f7 ld/JsonLint/Undefined.php>......
6d40 56 3e 00 00 00 ff 71 9f 9f b6 01 00 00 00 00 00 00 1e 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 V>....q..............vendor/seld
6d60 2f 63 6c 69 2d 70 72 6f 6d 70 74 2f 4c 49 43 45 4e 53 45 22 04 00 00 92 f5 f7 56 22 04 00 00 88 /cli-prompt/LICENSE"......V"....
6d80 f1 3f 65 b6 01 00 00 00 00 00 00 26 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 63 6c 69 2d 70 .?e........&...vendor/seld/cli-p
6da0 72 6f 6d 70 74 2f 72 65 73 2f 65 78 61 6d 70 6c 65 2e 70 68 70 27 01 00 00 92 f5 f7 56 27 01 00 rompt/res/example.php'......V'..
6dc0 00 49 1c 05 a3 b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 63 6c 69 .I...........(...vendor/seld/cli
6de0 2d 70 72 6f 6d 70 74 2f 73 72 63 2f 43 6c 69 50 72 6f 6d 70 74 2e 70 68 70 07 06 00 00 92 f5 f7 -prompt/src/CliPrompt.php.......
6e00 56 07 06 00 00 ad e9 99 76 b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 V.......v........(...vendor/just
6e20 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 4c 49 43 45 4e 53 45 f7 05 00 inrainbow/json-schema/LICENSE...
6e40 00 92 f5 f7 56 f7 05 00 00 78 de 78 74 b6 01 00 00 00 00 00 00 54 00 00 00 76 65 6e 64 6f 72 2f ....V....x.xt........T...vendor/
6e60 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 justinrainbow/json-schema/src/Js
6e80 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 43 6f 6c 6c 65 63 74 69 6f 6e 43 onSchema/Constraints/CollectionC
6ea0 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 f9 09 00 00 92 f5 f7 56 f9 09 00 00 f0 26 95 d8 b6 01 00 onstraint.php.......V.....&.....
6ec0 00 00 00 00 00 4a 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 .....J...vendor/justinrainbow/js
6ee0 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 on-schema/src/JsonSchema/Constra
6f00 69 6e 74 73 2f 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 9b 0f 00 00 92 f5 f7 56 9b 0f 00 00 98 ints/Constraint.php.......V.....
6f20 91 28 63 b6 01 00 00 00 00 00 00 53 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e .(c........S...vendor/justinrain
6f40 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 bow/json-schema/src/JsonSchema/C
6f60 6f 6e 73 74 72 61 69 6e 74 73 2f 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 2e 70 onstraints/ConstraintInterface.p
6f80 68 70 72 01 00 00 92 f5 f7 56 72 01 00 00 e3 7b 73 36 b6 01 00 00 00 00 00 00 4e 00 00 00 76 65 hpr......Vr....{s6........N...ve
6fa0 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 ndor/justinrainbow/json-schema/s
6fc0 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 45 6e 75 6d 43 6f rc/JsonSchema/Constraints/EnumCo
6fe0 6e 73 74 72 61 69 6e 74 2e 70 68 70 78 02 00 00 92 f5 f7 56 78 02 00 00 02 d2 d9 91 b6 01 00 00 nstraint.phpx......Vx...........
7000 00 00 00 00 47 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f ....G...vendor/justinrainbow/jso
7020 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 n-schema/src/JsonSchema/Constrai
7040 6e 74 73 2f 46 61 63 74 6f 72 79 2e 70 68 70 80 06 00 00 92 f5 f7 56 80 06 00 00 a3 43 14 af b6 nts/Factory.php.......V.....C...
7060 01 00 00 00 00 00 00 50 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f .......P...vendor/justinrainbow/
7080 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 json-schema/src/JsonSchema/Const
70a0 72 61 69 6e 74 73 2f 46 6f 72 6d 61 74 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 97 10 00 00 92 raints/FormatConstraint.php.....
70c0 f5 f7 56 97 10 00 00 1d 72 d9 82 b6 01 00 00 00 00 00 00 50 00 00 00 76 65 6e 64 6f 72 2f 6a 75 ..V.....r..........P...vendor/ju
70e0 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e stinrainbow/json-schema/src/Json
7100 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 4e 75 6d 62 65 72 43 6f 6e 73 74 72 61 Schema/Constraints/NumberConstra
7120 69 6e 74 2e 70 68 70 90 0a 00 00 92 f5 f7 56 90 0a 00 00 bd 4b b8 89 b6 01 00 00 00 00 00 00 50 int.php.......V.....K..........P
7140 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 ...vendor/justinrainbow/json-sch
7160 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 4f ema/src/JsonSchema/Constraints/O
7180 62 6a 65 63 74 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 d9 0b 00 00 92 f5 f7 56 d9 0b 00 00 c6 bjectConstraint.php.......V.....
71a0 41 80 72 b6 01 00 00 00 00 00 00 50 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e A.r........P...vendor/justinrain
71c0 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 bow/json-schema/src/JsonSchema/C
71e0 6f 6e 73 74 72 61 69 6e 74 73 2f 53 63 68 65 6d 61 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 20 onstraints/SchemaConstraint.php.
7200 02 00 00 92 f5 f7 56 20 02 00 00 c8 cc d5 e2 b6 01 00 00 00 00 00 00 50 00 00 00 76 65 6e 64 6f ......V................P...vendo
7220 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f r/justinrainbow/json-schema/src/
7240 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 53 74 72 69 6e 67 43 6f 6e JsonSchema/Constraints/StringCon
7260 73 74 72 61 69 6e 74 2e 70 68 70 51 04 00 00 92 f5 f7 56 51 04 00 00 78 d0 f8 bc b6 01 00 00 00 straint.phpQ......VQ...x........
7280 00 00 00 4e 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e ...N...vendor/justinrainbow/json
72a0 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e -schema/src/JsonSchema/Constrain
72c0 74 73 2f 54 79 70 65 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 c6 08 00 00 92 f5 f7 56 c6 08 00 ts/TypeConstraint.php.......V...
72e0 00 dc f2 da 8a b6 01 00 00 00 00 00 00 53 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 .............S...vendor/justinra
7300 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 inbow/json-schema/src/JsonSchema
7320 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 /Constraints/UndefinedConstraint
7340 2e 70 68 70 e7 18 00 00 92 f5 f7 56 e7 18 00 00 5e 8f 67 d3 b6 01 00 00 00 00 00 00 56 00 00 00 .php.......V....^.g.........V...
7360 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 vendor/justinrainbow/json-schema
7380 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 45 78 63 65 70 74 69 6f 6e 2f 49 6e 76 61 6c 69 /src/JsonSchema/Exception/Invali
73a0 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 76 00 00 00 92 f5 f7 56 76 00 dArgumentException.phpv......Vv.
73c0 00 00 ac 20 ab 22 b6 01 00 00 00 00 00 00 5d 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 ....."........]...vendor/justinr
73e0 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d ainbow/json-schema/src/JsonSchem
7400 61 2f 45 78 63 65 70 74 69 6f 6e 2f 49 6e 76 61 6c 69 64 53 63 68 65 6d 61 4d 65 64 69 61 54 79 a/Exception/InvalidSchemaMediaTy
7420 70 65 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 76 00 00 00 92 f5 f7 56 76 00 00 00 02 8a 43 d3 b6 peException.phpv......Vv.....C..
7440 01 00 00 00 00 00 00 57 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f .......W...vendor/justinrainbow/
7460 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 45 78 63 65 70 json-schema/src/JsonSchema/Excep
7480 74 69 6f 6e 2f 49 6e 76 61 6c 69 64 53 6f 75 72 63 65 55 72 69 45 78 63 65 70 74 69 6f 6e 2e 70 tion/InvalidSourceUriException.p
74a0 68 70 77 00 00 00 92 f5 f7 56 77 00 00 00 4e 2d f2 5b b6 01 00 00 00 00 00 00 53 00 00 00 76 65 hpw......Vw...N-.[........S...ve
74c0 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 ndor/justinrainbow/json-schema/s
74e0 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 45 78 63 65 70 74 69 6f 6e 2f 4a 73 6f 6e 44 65 63 6f rc/JsonSchema/Exception/JsonDeco
7500 64 69 6e 67 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 de 02 00 00 92 f5 f7 56 de 02 00 00 86 be a9 dingException.php.......V.......
7520 91 b6 01 00 00 00 00 00 00 57 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f .........W...vendor/justinrainbo
7540 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 45 78 63 w/json-schema/src/JsonSchema/Exc
7560 65 70 74 69 6f 6e 2f 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e eption/ResourceNotFoundException
7580 2e 70 68 70 6f 00 00 00 92 f5 f7 56 6f 00 00 00 c6 24 22 c5 b6 01 00 00 00 00 00 00 52 00 00 00 .phpo......Vo....$".........R...
75a0 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 vendor/justinrainbow/json-schema
75c0 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 45 78 63 65 70 74 69 6f 6e 2f 55 72 69 52 65 73 /src/JsonSchema/Exception/UriRes
75e0 6f 6c 76 65 72 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 6a 00 00 00 92 f5 f7 56 6a 00 00 00 53 d3 olverException.phpj......Vj...S.
7600 c7 b3 b6 01 00 00 00 00 00 00 3f 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 ..........?...vendor/justinrainb
7620 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 52 65 ow/json-schema/src/JsonSchema/Re
7640 66 52 65 73 6f 6c 76 65 72 2e 70 68 70 d2 0d 00 00 92 f5 f7 56 d2 0d 00 00 4b 24 0b a4 b6 01 00 fResolver.php.......V....K$.....
7660 00 00 00 00 00 54 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 .....T...vendor/justinrainbow/js
7680 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 55 72 69 2f 52 65 74 on-schema/src/JsonSchema/Uri/Ret
76a0 72 69 65 76 65 72 73 2f 41 62 73 74 72 61 63 74 52 65 74 72 69 65 76 65 72 2e 70 68 70 dc 00 00 rievers/AbstractRetriever.php...
76c0 00 92 f5 f7 56 dc 00 00 00 1b 5d 6a 1c b6 01 00 00 00 00 00 00 47 00 00 00 76 65 6e 64 6f 72 2f ....V.....]j.........G...vendor/
76e0 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 justinrainbow/json-schema/src/Js
7700 6f 6e 53 63 68 65 6d 61 2f 55 72 69 2f 52 65 74 72 69 65 76 65 72 73 2f 43 75 72 6c 2e 70 68 70 onSchema/Uri/Retrievers/Curl.php
7720 74 04 00 00 92 f5 f7 56 74 04 00 00 49 b7 fd 00 b6 01 00 00 00 00 00 00 52 00 00 00 76 65 6e 64 t......Vt...I...........R...vend
7740 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 or/justinrainbow/json-schema/src
7760 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 55 72 69 2f 52 65 74 72 69 65 76 65 72 73 2f 46 69 6c 65 47 /JsonSchema/Uri/Retrievers/FileG
7780 65 74 43 6f 6e 74 65 6e 74 73 2e 70 68 70 62 05 00 00 92 f5 f7 56 62 05 00 00 57 18 fd c1 b6 01 etContents.phpb......Vb...W.....
77a0 00 00 00 00 00 00 52 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a ......R...vendor/justinrainbow/j
77c0 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 55 72 69 2f 52 65 son-schema/src/JsonSchema/Uri/Re
77e0 74 72 69 65 76 65 72 73 2f 50 72 65 64 65 66 69 6e 65 64 41 72 72 61 79 2e 70 68 70 2a 02 00 00 trievers/PredefinedArray.php*...
7800 92 f5 f7 56 2a 02 00 00 2d 33 ff 08 b6 01 00 00 00 00 00 00 58 00 00 00 76 65 6e 64 6f 72 2f 6a ...V*...-3..........X...vendor/j
7820 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f ustinrainbow/json-schema/src/Jso
7840 6e 53 63 68 65 6d 61 2f 55 72 69 2f 52 65 74 72 69 65 76 65 72 73 2f 55 72 69 52 65 74 72 69 65 nSchema/Uri/Retrievers/UriRetrie
7860 76 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 a9 00 00 00 92 f5 f7 56 a9 00 00 00 06 03 43 4f verInterface.php.......V......CO
7880 b6 01 00 00 00 00 00 00 43 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 ........C...vendor/justinrainbow
78a0 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 55 72 69 2f /json-schema/src/JsonSchema/Uri/
78c0 55 72 69 52 65 73 6f 6c 76 65 72 2e 70 68 70 52 09 00 00 92 f5 f7 56 52 09 00 00 70 ff 69 31 b6 UriResolver.phpR......VR...p.i1.
78e0 01 00 00 00 00 00 00 44 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f .......D...vendor/justinrainbow/
7900 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 55 72 69 2f 55 json-schema/src/JsonSchema/Uri/U
7920 72 69 52 65 74 72 69 65 76 65 72 2e 70 68 70 61 10 00 00 92 f5 f7 56 61 10 00 00 be 2c ce 97 b6 riRetriever.phpa......Va....,...
7940 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f .......=...vendor/justinrainbow/
7960 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 56 61 6c 69 64 json-schema/src/JsonSchema/Valid
7980 61 74 6f 72 2e 70 68 70 db 01 00 00 92 f5 f7 56 db 01 00 00 0c 7a 44 34 b6 01 00 00 00 00 00 00 ator.php.......V.....zD4........
79a0 25 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 70 64 78 2d 6c 69 63 65 6e 73 65 %...vendor/composer/spdx-license
79c0 73 2f 4c 49 43 45 4e 53 45 1c 04 00 00 92 f5 f7 56 1c 04 00 00 06 42 68 ed b6 01 00 00 00 00 00 s/LICENSE.......V.....Bh........
79e0 00 32 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 70 64 78 2d 6c 69 63 65 6e 73 .2...vendor/composer/spdx-licens
7a00 65 73 2f 73 72 63 2f 53 70 64 78 4c 69 63 65 6e 73 65 73 2e 70 68 70 e5 11 00 00 92 f5 f7 56 e5 es/src/SpdxLicenses.php.......V.
7a20 11 00 00 3d 0e d8 37 b6 01 00 00 00 00 00 00 1e 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 ...=..7............vendor/compos
7a40 65 72 2f 73 65 6d 76 65 72 2f 4c 49 43 45 4e 53 45 1c 04 00 00 92 f5 f7 56 1c 04 00 00 06 42 68 er/semver/LICENSE.......V.....Bh
7a60 ed b6 01 00 00 00 00 00 00 29 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 65 6d .........)...vendor/composer/sem
7a80 76 65 72 2f 73 72 63 2f 43 6f 6d 70 61 72 61 74 6f 72 2e 70 68 70 02 04 00 00 92 f5 f7 56 02 04 ver/src/Comparator.php.......V..
7aa0 00 00 77 6c 83 ef b6 01 00 00 00 00 00 00 3c 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 ..wl..........<...vendor/compose
7ac0 72 2f 73 65 6d 76 65 72 2f 73 72 63 2f 43 6f 6e 73 74 72 61 69 6e 74 2f 41 62 73 74 72 61 63 74 r/semver/src/Constraint/Abstract
7ae0 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 d7 02 00 00 92 f5 f7 56 d7 02 00 00 f5 ee 3e 8e b6 01 Constraint.php.......V......>...
7b00 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 65 6d 76 65 72 ......4...vendor/composer/semver
7b20 2f 73 72 63 2f 43 6f 6e 73 74 72 61 69 6e 74 2f 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 aa 0c /src/Constraint/Constraint.php..
7b40 00 00 92 f5 f7 56 aa 0c 00 00 c7 4f 37 b2 b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 .....V.....O7.........=...vendor
7b60 2f 63 6f 6d 70 6f 73 65 72 2f 73 65 6d 76 65 72 2f 73 72 63 2f 43 6f 6e 73 74 72 61 69 6e 74 2f /composer/semver/src/Constraint/
7b80 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 df 00 00 00 92 f5 f7 56 df ConstraintInterface.php.......V.
7ba0 00 00 00 30 43 2c 87 b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 ...0C,.........9...vendor/compos
7bc0 65 72 2f 73 65 6d 76 65 72 2f 73 72 63 2f 43 6f 6e 73 74 72 61 69 6e 74 2f 45 6d 70 74 79 43 6f er/semver/src/Constraint/EmptyCo
7be0 6e 73 74 72 61 69 6e 74 2e 70 68 70 e9 01 00 00 92 f5 f7 56 e9 01 00 00 21 2d d8 99 b6 01 00 00 nstraint.php.......V....!-......
7c00 00 00 00 00 39 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 65 6d 76 65 72 2f 73 ....9...vendor/composer/semver/s
7c20 72 63 2f 43 6f 6e 73 74 72 61 69 6e 74 2f 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 rc/Constraint/MultiConstraint.ph
7c40 70 66 04 00 00 92 f5 f7 56 66 04 00 00 44 f0 ec 3e b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e pf......Vf...D..>........%...ven
7c60 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 65 6d 76 65 72 2f 73 72 63 2f 53 65 6d 76 65 72 2e 70 dor/composer/semver/src/Semver.p
7c80 68 70 76 06 00 00 92 f5 f7 56 76 06 00 00 8b d7 c8 9b b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 hpv......Vv...............,...ve
7ca0 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 65 6d 76 65 72 2f 73 72 63 2f 56 65 72 73 69 6f 6e ndor/composer/semver/src/Version
7cc0 50 61 72 73 65 72 2e 70 68 70 5f 2a 00 00 92 f5 f7 56 5f 2a 00 00 50 93 80 b0 b6 01 00 00 00 00 Parser.php_*.....V_*..P.........
7ce0 00 00 13 00 00 00 76 65 6e 64 6f 72 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 87 00 00 00 92 f5 f7 ......vendor/autoload.php.......
7d00 56 87 00 00 00 bd 6c 0d 81 b6 01 00 00 00 00 00 00 27 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 V.....l..........'...vendor/comp
7d20 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 2e 70 68 70 64 00 00 00 oser/autoload_namespaces.phpd...
7d40 92 f5 f7 56 64 00 00 00 5a a1 a6 48 b6 01 00 00 00 00 00 00 21 00 00 00 76 65 6e 64 6f 72 2f 63 ...Vd...Z..H........!...vendor/c
7d60 6f 6d 70 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 70 73 72 34 2e 70 68 70 d0 03 00 00 92 f5 f7 omposer/autoload_psr4.php.......
7d80 56 d0 03 00 00 0b ff ae 8c b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 V................%...vendor/comp
7da0 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 2e 70 68 70 64 00 00 00 92 f5 oser/autoload_classmap.phpd.....
7dc0 f7 56 64 00 00 00 5a a1 a6 48 b6 01 00 00 00 00 00 00 22 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d .Vd...Z..H........"...vendor/com
7de0 70 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 66 69 6c 65 73 2e 70 68 70 c3 00 00 00 92 f5 f7 56 poser/autoload_files.php.......V
7e00 c3 00 00 00 d2 c2 fc 72 b6 01 00 00 00 00 00 00 21 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f .......r........!...vendor/compo
7e20 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 72 65 61 6c 2e 70 68 70 80 05 00 00 92 f5 f7 56 80 05 00 ser/autoload_real.php.......V...
7e40 00 92 21 54 b1 b6 01 00 00 00 00 00 00 1f 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 ..!T.............vendor/composer
7e60 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 42 16 00 00 92 f5 f7 56 42 16 00 00 e9 94 ed 18 /ClassLoader.phpB......VB.......
7e80 b6 01 00 00 00 00 00 00 0e 00 00 00 72 65 73 2f 63 61 63 65 72 74 2e 70 65 6d 15 e9 03 00 92 f5 ............res/cacert.pem......
7ea0 f7 56 15 e9 03 00 ed 8a 06 c0 b6 01 00 00 00 00 00 00 0c 00 00 00 62 69 6e 2f 63 6f 6d 70 6f 73 .V....................bin/compos
7ec0 65 72 6c 04 00 00 92 f5 f7 56 6c 04 00 00 d4 9a c3 09 b6 01 00 00 00 00 00 00 07 00 00 00 4c 49 erl......Vl...................LI
7ee0 43 45 4e 53 45 33 04 00 00 92 f5 f7 56 33 04 00 00 fb 1e b7 fe b6 01 00 00 00 00 00 00 3c 3f 70 CENSE3......V3...............<?p
7f00 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
7f20 5c 41 75 74 6f 6c 6f 61 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b \Autoload;..use.Composer\Config;
7f40 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 .use.Composer\EventDispatcher\Ev
7f60 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 entDispatcher;.use.Composer\Inst
7f80 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 aller\InstallationManager;.use.C
7fa0 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 omposer\IO\IOInterface;.use.Comp
7fc0 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 oser\Package\AliasPackage;.use.C
7fe0 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 omposer\Package\PackageInterface
8000 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c ;.use.Composer\Repository\Instal
8020 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 ledRepositoryInterface;.use.Comp
8040 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 oser\Util\Filesystem;.use.Compos
8060 65 72 5c 53 63 72 69 70 74 5c 53 63 72 69 70 74 45 76 65 6e 74 73 3b 0a 0a 0a 0a 0a 0a 63 6c 61 er\Script\ScriptEvents;......cla
8080 73 73 20 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 ss.AutoloadGenerator.{....privat
80a0 65 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 e.$eventDispatcher;.....private.
80c0 24 69 6f 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 64 65 76 4d 6f 64 65 20 3d 20 66 61 6c 73 $io;.....private.$devMode.=.fals
80e0 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 e;.....private.$classMapAuthorit
8100 61 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 75 6e 53 ative.=.false;.....private.$runS
8120 63 72 69 70 74 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e cripts.=.false;..public.function
8140 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 24 65 76 .__construct(EventDispatcher.$ev
8160 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d entDispatcher,.IOInterface.$io.=
8180 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 .null).{.$this->eventDispatcher.
81a0 3d 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 =.$eventDispatcher;.$this->io.=.
81c0 24 69 6f 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 76 4d 6f $io;.}..public.function.setDevMo
81e0 64 65 28 24 64 65 76 4d 6f 64 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 76 de($devMode.=.true).{.$this->dev
8200 4d 6f 64 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 64 65 76 4d 6f 64 65 3b 0a 7d 0a 0a 0a 0a Mode.=.(boolean).$devMode;.}....
8220 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6c 61 73 73 4d 61 70 41 ....public.function.setClassMapA
8240 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 uthoritative($classMapAuthoritat
8260 69 76 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 ive).{.$this->classMapAuthoritat
8280 69 76 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 ive.=.(boolean).$classMapAuthori
82a0 74 61 74 69 76 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 tative;.}.......public.function.
82c0 73 65 74 52 75 6e 53 63 72 69 70 74 73 28 24 72 75 6e 53 63 72 69 70 74 73 20 3d 20 74 72 75 65 setRunScripts($runScripts.=.true
82e0 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 20 3d 20 28 62 6f 6f 6c 65 61 6e ).{.$this->runScripts.=.(boolean
8300 29 20 24 72 75 6e 53 63 72 69 70 74 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ).$runScripts;.}..public.functio
8320 6e 20 64 75 6d 70 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 49 6e 73 74 61 6c 6c 65 64 n.dump(Config.$config,.Installed
8340 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 RepositoryInterface.$localRepo,.
8360 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 2c 20 49 PackageInterface.$mainPackage,.I
8380 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e nstallationManager.$installation
83a0 4d 61 6e 61 67 65 72 2c 20 24 74 61 72 67 65 74 44 69 72 2c 20 24 73 63 61 6e 50 73 72 30 50 61 Manager,.$targetDir,.$scanPsr0Pa
83c0 63 6b 61 67 65 73 20 3d 20 66 61 6c 73 65 2c 20 24 73 75 66 66 69 78 20 3d 20 27 27 29 0a 7b 0a ckages.=.false,.$suffix.=.'').{.
83e0 69 66 20 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 if.($this->classMapAuthoritative
8400 29 20 7b 0a 0a 20 24 73 63 61 6e 50 73 72 30 50 61 63 6b 61 67 65 73 20 3d 20 74 72 75 65 3b 0a ).{...$scanPsr0Packages.=.true;.
8420 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 20 7b 0a 24 74 68 69 73 }.if.($this->runScripts).{.$this
8440 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 ->eventDispatcher->dispatchScrip
8460 74 28 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 41 55 54 4f 4c 4f 41 44 5f 44 55 4d t(ScriptEvents::PRE_AUTOLOAD_DUM
8480 50 2c 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 2c 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 P,.$this->devMode,.array(),.arra
84a0 79 28 0a 27 6f 70 74 69 6d 69 7a 65 27 20 3d 3e 20 28 62 6f 6f 6c 29 20 24 73 63 61 6e 50 73 72 y(.'optimize'.=>.(bool).$scanPsr
84c0 30 50 61 63 6b 61 67 65 73 2c 0a 29 29 3b 0a 7d 0a 0a 24 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 0Packages,.));.}..$filesystem.=.
84e0 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 new.Filesystem();.$filesystem->e
8500 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 63 6f 6e 66 69 67 2d 3e 67 65 nsureDirectoryExists($config->ge
8520 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 29 3b 0a 24 62 61 73 65 50 61 74 68 20 3d 20 24 66 t('vendor-dir'));.$basePath.=.$f
8540 69 6c 65 73 79 73 74 65 6d 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 72 65 61 6c 70 61 74 ilesystem->normalizePath(realpat
8560 68 28 67 65 74 63 77 64 28 29 29 29 3b 0a 24 76 65 6e 64 6f 72 50 61 74 68 20 3d 20 24 66 69 6c h(getcwd()));.$vendorPath.=.$fil
8580 65 73 79 73 74 65 6d 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 72 65 61 6c 70 61 74 68 28 esystem->normalizePath(realpath(
85a0 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 29 29 3b 0a 24 75 $config->get('vendor-dir')));.$u
85c0 73 65 47 6c 6f 62 61 6c 49 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 28 62 6f 6f 6c 29 20 24 63 6f seGlobalIncludePath.=.(bool).$co
85e0 6e 66 69 67 2d 3e 67 65 74 28 27 75 73 65 2d 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 29 3b 0a 24 nfig->get('use-include-path');.$
8600 70 72 65 70 65 6e 64 41 75 74 6f 6c 6f 61 64 65 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 prependAutoloader.=.$config->get
8620 28 27 70 72 65 70 65 6e 64 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 20 3d 3d 3d 20 66 61 6c 73 65 ('prepend-autoloader').===.false
8640 20 3f 20 27 66 61 6c 73 65 27 20 3a 20 27 74 72 75 65 27 3b 0a 24 74 61 72 67 65 74 44 69 72 20 .?.'false'.:.'true';.$targetDir.
8660 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 2e 27 2f 27 2e 24 74 61 72 67 65 74 44 69 72 3b 0a 24 66 =.$vendorPath.'/'.$targetDir;.$f
8680 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 ilesystem->ensureDirectoryExists
86a0 28 24 74 61 72 67 65 74 44 69 72 29 3b 0a 0a 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 20 3d ($targetDir);..$vendorPathCode.=
86c0 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 43 6f .$filesystem->findShortestPathCo
86e0 64 65 28 72 65 61 6c 70 61 74 68 28 24 74 61 72 67 65 74 44 69 72 29 2c 20 24 76 65 6e 64 6f 72 de(realpath($targetDir),.$vendor
8700 50 61 74 68 2c 20 74 72 75 65 29 3b 0a 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 35 32 20 3d Path,.true);.$vendorPathCode52.=
8720 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5f 5f 44 49 52 5f 5f 27 2c 20 27 64 69 72 6e 61 6d 65 .str_replace('__DIR__',.'dirname
8740 28 5f 5f 46 49 4c 45 5f 5f 29 27 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 29 3b 0a 24 (__FILE__)',.$vendorPathCode);.$
8760 76 65 6e 64 6f 72 50 61 74 68 54 6f 54 61 72 67 65 74 44 69 72 43 6f 64 65 20 3d 20 24 66 69 6c vendorPathToTargetDirCode.=.$fil
8780 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 43 6f 64 65 28 24 76 esystem->findShortestPathCode($v
87a0 65 6e 64 6f 72 50 61 74 68 2c 20 72 65 61 6c 70 61 74 68 28 24 74 61 72 67 65 74 44 69 72 29 2c endorPath,.realpath($targetDir),
87c0 20 74 72 75 65 29 3b 0a 0a 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 20 3d 20 24 66 69 6c 65 .true);..$appBaseDirCode.=.$file
87e0 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 43 6f 64 65 28 24 76 65 system->findShortestPathCode($ve
8800 6e 64 6f 72 50 61 74 68 2c 20 24 62 61 73 65 50 61 74 68 2c 20 74 72 75 65 29 3b 0a 24 61 70 70 ndorPath,.$basePath,.true);.$app
8820 42 61 73 65 44 69 72 43 6f 64 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5f 5f 44 49 52 BaseDirCode.=.str_replace('__DIR
8840 5f 5f 27 2c 20 27 24 76 65 6e 64 6f 72 44 69 72 27 2c 20 24 61 70 70 42 61 73 65 44 69 72 43 6f __',.'$vendorDir',.$appBaseDirCo
8860 64 65 29 3b 0a 0a 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 20 3d 20 3c 3c 3c 45 4f 46 0a 3c de);..$namespacesFile.=.<<<EOF.<
8880 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 2e 70 68 70 ?php..//.autoload_namespaces.php
88a0 20 40 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 5c 24 76 65 6e 64 6f .@generated.by.Composer..\$vendo
88c0 72 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 35 32 3b 0a 5c 24 62 61 73 65 rDir.=.$vendorPathCode52;.\$base
88e0 44 69 72 20 3d 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 61 Dir.=.$appBaseDirCode;..return.a
8900 72 72 61 79 28 0a 0a 45 4f 46 3b 0a 0a 24 70 73 72 34 46 69 6c 65 20 3d 20 3c 3c 3c 45 4f 46 0a rray(..EOF;..$psr4File.=.<<<EOF.
8920 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 70 73 72 34 2e 70 68 70 20 40 67 65 6e <?php..//.autoload_psr4.php.@gen
8940 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 5c 24 76 65 6e 64 6f 72 44 69 72 20 erated.by.Composer..\$vendorDir.
8960 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 35 32 3b 0a 5c 24 62 61 73 65 44 69 72 20 3d =.$vendorPathCode52;.\$baseDir.=
8980 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 .$appBaseDirCode;..return.array(
89a0 0a 0a 45 4f 46 3b 0a 0a 0a 20 24 70 61 63 6b 61 67 65 4d 61 70 20 3d 20 24 74 68 69 73 2d 3e 62 ..EOF;....$packageMap.=.$this->b
89c0 75 69 6c 64 50 61 63 6b 61 67 65 4d 61 70 28 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 uildPackageMap($installationMana
89e0 67 65 72 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 2c 20 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 ger,.$mainPackage,.$localRepo->g
8a00 65 74 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 29 3b 0a 24 61 75 74 6f 6c 6f 61 etCanonicalPackages());.$autoloa
8a20 64 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 28 24 70 61 63 6b ds.=.$this->parseAutoloads($pack
8a40 61 67 65 4d 61 70 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 ageMap,.$mainPackage);....foreac
8a60 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 2d 30 27 5d 20 61 73 20 24 6e 61 6d 65 73 h.($autoloads['psr-0'].as.$names
8a80 70 61 63 65 20 3d 3e 20 24 70 61 74 68 73 29 20 7b 0a 24 65 78 70 6f 72 74 65 64 50 61 74 68 73 pace.=>.$paths).{.$exportedPaths
8aa0 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 74 68 73 20 61 73 20 24 .=.array();.foreach.($paths.as.$
8ac0 70 61 74 68 29 20 7b 0a 24 65 78 70 6f 72 74 65 64 50 61 74 68 73 5b 5d 20 3d 20 24 74 68 69 73 path).{.$exportedPaths[].=.$this
8ae0 2d 3e 67 65 74 50 61 74 68 43 6f 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 61 73 65 ->getPathCode($filesystem,.$base
8b00 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 24 65 78 Path,.$vendorPath,.$path);.}.$ex
8b20 70 6f 72 74 65 64 50 72 65 66 69 78 20 3d 20 76 61 72 5f 65 78 70 6f 72 74 28 24 6e 61 6d 65 73 portedPrefix.=.var_export($names
8b40 70 61 63 65 2c 20 74 72 75 65 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 20 2e 3d 20 pace,.true);.$namespacesFile..=.
8b60 22 20 20 20 20 24 65 78 70 6f 72 74 65 64 50 72 65 66 69 78 20 3d 3e 20 22 3b 0a 24 6e 61 6d 65 "....$exportedPrefix.=>.";.$name
8b80 73 70 61 63 65 73 46 69 6c 65 20 2e 3d 20 22 61 72 72 61 79 28 22 2e 69 6d 70 6c 6f 64 65 28 27 spacesFile..=."array(".implode('
8ba0 2c 20 27 2c 20 24 65 78 70 6f 72 74 65 64 50 61 74 68 73 29 2e 22 29 2c 5c 6e 22 3b 0a 7d 0a 24 ,.',.$exportedPaths)."),\n";.}.$
8bc0 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 20 2e 3d 20 22 29 3b 5c 6e 22 3b 0a 0a 0a 20 66 6f 72 namespacesFile..=.");\n";....for
8be0 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 2d 34 27 5d 20 61 73 20 24 6e 61 each.($autoloads['psr-4'].as.$na
8c00 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 73 29 20 7b 0a 24 65 78 70 6f 72 74 65 64 50 61 mespace.=>.$paths).{.$exportedPa
8c20 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 74 68 73 20 61 ths.=.array();.foreach.($paths.a
8c40 73 20 24 70 61 74 68 29 20 7b 0a 24 65 78 70 6f 72 74 65 64 50 61 74 68 73 5b 5d 20 3d 20 24 74 s.$path).{.$exportedPaths[].=.$t
8c60 68 69 73 2d 3e 67 65 74 50 61 74 68 43 6f 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 his->getPathCode($filesystem,.$b
8c80 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 3b 0a 7d 0a asePath,.$vendorPath,.$path);.}.
8ca0 24 65 78 70 6f 72 74 65 64 50 72 65 66 69 78 20 3d 20 76 61 72 5f 65 78 70 6f 72 74 28 24 6e 61 $exportedPrefix.=.var_export($na
8cc0 6d 65 73 70 61 63 65 2c 20 74 72 75 65 29 3b 0a 24 70 73 72 34 46 69 6c 65 20 2e 3d 20 22 20 20 mespace,.true);.$psr4File..=."..
8ce0 20 20 24 65 78 70 6f 72 74 65 64 50 72 65 66 69 78 20 3d 3e 20 22 3b 0a 24 70 73 72 34 46 69 6c ..$exportedPrefix.=>.";.$psr4Fil
8d00 65 20 2e 3d 20 22 61 72 72 61 79 28 22 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 65 78 70 e..=."array(".implode(',.',.$exp
8d20 6f 72 74 65 64 50 61 74 68 73 29 2e 22 29 2c 5c 6e 22 3b 0a 7d 0a 24 70 73 72 34 46 69 6c 65 20 ortedPaths)."),\n";.}.$psr4File.
8d40 2e 3d 20 22 29 3b 5c 6e 22 3b 0a 0a 24 63 6c 61 73 73 6d 61 70 46 69 6c 65 20 3d 20 3c 3c 3c 45 .=.");\n";..$classmapFile.=.<<<E
8d60 4f 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 2e 70 OF.<?php..//.autoload_classmap.p
8d80 68 70 20 40 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 5c 24 76 65 6e hp.@generated.by.Composer..\$ven
8da0 64 6f 72 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 35 32 3b 0a 5c 24 62 61 dorDir.=.$vendorPathCode52;.\$ba
8dc0 73 65 44 69 72 20 3d 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 3b 0a 0a 72 65 74 75 72 6e seDir.=.$appBaseDirCode;..return
8de0 20 61 72 72 61 79 28 0a 0a 45 4f 46 3b 0a 0a 0a 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 .array(..EOF;....$targetDirLoade
8e00 72 20 3d 20 6e 75 6c 6c 3b 0a 24 6d 61 69 6e 41 75 74 6f 6c 6f 61 64 20 3d 20 24 6d 61 69 6e 50 r.=.null;.$mainAutoload.=.$mainP
8e20 61 63 6b 61 67 65 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 3b 0a 69 66 20 28 24 6d 61 69 6e ackage->getAutoload();.if.($main
8e40 50 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 20 26 26 20 21 65 6d 70 74 Package->getTargetDir().&&.!empt
8e60 79 28 24 6d 61 69 6e 41 75 74 6f 6c 6f 61 64 5b 27 70 73 72 2d 30 27 5d 29 29 20 7b 0a 24 6c 65 y($mainAutoload['psr-0'])).{.$le
8e80 76 65 6c 73 20 3d 20 63 6f 75 6e 74 28 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 24 66 69 6c 65 73 vels.=.count(explode('/',.$files
8ea0 79 73 74 65 6d 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 6d 61 69 6e 50 61 63 6b 61 67 ystem->normalizePath($mainPackag
8ec0 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 29 29 3b 0a 24 70 72 65 66 69 78 65 73 20 e->getTargetDir())));.$prefixes.
8ee0 3d 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 =.implode(',.',.array_map(functi
8f00 6f 6e 20 28 24 70 72 65 66 69 78 29 20 7b 0a 72 65 74 75 72 6e 20 76 61 72 5f 65 78 70 6f 72 74 on.($prefix).{.return.var_export
8f20 28 24 70 72 65 66 69 78 2c 20 74 72 75 65 29 3b 0a 7d 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 ($prefix,.true);.},.array_keys($
8f40 6d 61 69 6e 41 75 74 6f 6c 6f 61 64 5b 27 70 73 72 2d 30 27 5d 29 29 29 3b 0a 24 62 61 73 65 44 mainAutoload['psr-0'])));.$baseD
8f60 69 72 46 72 6f 6d 54 61 72 67 65 74 44 69 72 43 6f 64 65 20 3d 20 24 66 69 6c 65 73 79 73 74 65 irFromTargetDirCode.=.$filesyste
8f80 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 43 6f 64 65 28 24 74 61 72 67 65 74 44 m->findShortestPathCode($targetD
8fa0 69 72 2c 20 24 62 61 73 65 50 61 74 68 2c 20 74 72 75 65 29 3b 0a 0a 24 74 61 72 67 65 74 44 69 ir,.$basePath,.true);..$targetDi
8fc0 72 4c 6f 61 64 65 72 20 3d 20 3c 3c 3c 45 4f 46 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 rLoader.=.<<<EOF......public.sta
8fe0 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f 6c 6f 61 64 28 5c 24 63 6c 61 73 73 29 0a 20 tic.function.autoload(\$class)..
9000 20 20 20 7b 0a 20 20 20 20 20 20 20 20 5c 24 64 69 72 20 3d 20 24 62 61 73 65 44 69 72 46 72 6f ...{.........\$dir.=.$baseDirFro
9020 6d 54 61 72 67 65 74 44 69 72 43 6f 64 65 20 2e 20 27 2f 27 3b 0a 20 20 20 20 20 20 20 20 5c 24 mTargetDirCode...'/';.........\$
9040 70 72 65 66 69 78 65 73 20 3d 20 61 72 72 61 79 28 24 70 72 65 66 69 78 65 73 29 3b 0a 20 20 20 prefixes.=.array($prefixes);....
9060 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 5c 24 70 72 65 66 69 78 65 73 20 61 73 20 5c 24 70 72 .....foreach.(\$prefixes.as.\$pr
9080 65 66 69 78 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 30 20 21 3d 3d 20 73 74 efix).{.............if.(0.!==.st
90a0 72 70 6f 73 28 5c 24 63 6c 61 73 73 2c 20 5c 24 70 72 65 66 69 78 29 29 20 7b 0a 20 20 20 20 20 rpos(\$class,.\$prefix)).{......
90c0 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 ...........continue;............
90e0 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 5c 24 70 61 74 68 20 3d 20 5c 24 64 69 72 20 2e 20 .}.............\$path.=.\$dir...
9100 69 6d 70 6c 6f 64 65 28 27 2f 27 2c 20 61 72 72 61 79 5f 73 6c 69 63 65 28 65 78 70 6c 6f 64 65 implode('/',.array_slice(explode
9120 28 27 5c 5c 5c 5c 27 2c 20 5c 24 63 6c 61 73 73 29 2c 20 24 6c 65 76 65 6c 73 29 29 2e 27 2e 70 ('\\\\',.\$class),.$levels)).'.p
9140 68 70 27 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 5c 24 70 61 74 68 20 3d 20 73 hp';.............if.(!\$path.=.s
9160 74 72 65 61 6d 5f 72 65 73 6f 6c 76 65 5f 69 6e 63 6c 75 64 65 5f 70 61 74 68 28 5c 24 70 61 74 tream_resolve_include_path(\$pat
9180 68 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c h)).{.................return.fal
91a0 73 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 20 20 20 20 72 65 se;.............}.............re
91c0 71 75 69 72 65 20 5c 24 70 61 74 68 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 quire.\$path;..............retur
91e0 6e 20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 45 4f 46 3b 0a 7d 0a n.true;.........}.....}..EOF;.}.
9200 0a 24 62 6c 61 63 6b 6c 69 73 74 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 .$blacklist.=.null;.if.(!empty($
9220 61 75 74 6f 6c 6f 61 64 73 5b 27 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 autoloads['exclude-from-classmap
9240 27 5d 29 29 20 7b 0a 24 62 6c 61 63 6b 6c 69 73 74 20 3d 20 27 7b 28 27 20 2e 20 69 6d 70 6c 6f '])).{.$blacklist.=.'{('...implo
9260 64 65 28 27 7c 27 2c 20 24 61 75 74 6f 6c 6f 61 64 73 5b 27 65 78 63 6c 75 64 65 2d 66 72 6f 6d de('|',.$autoloads['exclude-from
9280 2d 63 6c 61 73 73 6d 61 70 27 5d 29 20 2e 20 27 29 7d 27 3b 0a 7d 0a 0a 0a 20 24 63 6c 61 73 73 -classmap'])...')}';.}....$class
92a0 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 73 63 61 6e 50 73 72 30 50 61 63 6b Map.=.array();.if.($scanPsr0Pack
92c0 61 67 65 73 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 54 6f 53 63 61 6e 20 3d 20 61 72 72 61 ages).{.$namespacesToScan.=.arra
92e0 79 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 70 73 72 2d 30 27 2c 20 y();....foreach.(array('psr-0',.
9300 27 70 73 72 2d 34 27 29 20 61 73 20 24 70 73 72 54 79 70 65 29 20 7b 0a 66 6f 72 65 61 63 68 20 'psr-4').as.$psrType).{.foreach.
9320 28 24 61 75 74 6f 6c 6f 61 64 73 5b 24 70 73 72 54 79 70 65 5d 20 61 73 20 24 6e 61 6d 65 73 70 ($autoloads[$psrType].as.$namesp
9340 61 63 65 20 3d 3e 20 24 70 61 74 68 73 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 54 6f 53 63 ace.=>.$paths).{.$namespacesToSc
9360 61 6e 5b 24 6e 61 6d 65 73 70 61 63 65 5d 5b 5d 20 3d 20 61 72 72 61 79 28 27 70 61 74 68 73 27 an[$namespace][].=.array('paths'
9380 20 3d 3e 20 24 70 61 74 68 73 2c 20 27 74 79 70 65 27 20 3d 3e 20 24 70 73 72 54 79 70 65 29 3b .=>.$paths,.'type'.=>.$psrType);
93a0 0a 7d 0a 7d 0a 0a 6b 72 73 6f 72 74 28 24 6e 61 6d 65 73 70 61 63 65 73 54 6f 53 63 61 6e 29 3b .}.}..krsort($namespacesToScan);
93c0 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 70 61 63 65 73 54 6f 53 63 61 6e 20 61 73 20 ..foreach.($namespacesToScan.as.
93e0 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 67 72 6f 75 70 73 29 20 7b 0a 66 6f 72 65 61 63 68 $namespace.=>.$groups).{.foreach
9400 20 28 24 67 72 6f 75 70 73 20 61 73 20 24 67 72 6f 75 70 29 20 7b 0a 24 70 73 72 54 79 70 65 20 .($groups.as.$group).{.$psrType.
9420 3d 20 24 67 72 6f 75 70 5b 27 74 79 70 65 27 5d 3b 0a 66 6f 72 65 61 63 68 20 28 24 67 72 6f 75 =.$group['type'];.foreach.($grou
9440 70 5b 27 70 61 74 68 73 27 5d 20 61 73 20 24 64 69 72 29 20 7b 0a 24 64 69 72 20 3d 20 24 66 69 p['paths'].as.$dir).{.$dir.=.$fi
9460 6c 65 73 79 73 74 65 6d 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 66 69 6c 65 73 79 73 lesystem->normalizePath($filesys
9480 74 65 6d 2d 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 64 69 72 29 20 3f 20 24 64 69 72 tem->isAbsolutePath($dir).?.$dir
94a0 20 3a 20 24 62 61 73 65 50 61 74 68 2e 27 2f 27 2e 24 64 69 72 29 3b 0a 69 66 20 28 21 69 73 5f .:.$basePath.'/'.$dir);.if.(!is_
94c0 64 69 72 28 24 64 69 72 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6e 61 6d 65 73 dir($dir)).{.continue;.}..$names
94e0 70 61 63 65 46 69 6c 74 65 72 20 3d 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3d 3d 20 27 27 20 3f paceFilter.=.$namespace.===.''.?
9500 20 6e 75 6c 6c 20 3a 20 24 6e 61 6d 65 73 70 61 63 65 3b 0a 24 63 6c 61 73 73 4d 61 70 20 3d 20 .null.:.$namespace;.$classMap.=.
9520 24 74 68 69 73 2d 3e 61 64 64 43 6c 61 73 73 4d 61 70 43 6f 64 65 28 24 66 69 6c 65 73 79 73 74 $this->addClassMapCode($filesyst
9540 65 6d 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 64 69 72 em,.$basePath,.$vendorPath,.$dir
9560 2c 20 24 62 6c 61 63 6b 6c 69 73 74 2c 20 24 6e 61 6d 65 73 70 61 63 65 46 69 6c 74 65 72 2c 20 ,.$blacklist,.$namespaceFilter,.
9580 24 63 6c 61 73 73 4d 61 70 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 $classMap);.}.}.}.}..foreach.($a
95a0 75 74 6f 6c 6f 61 64 73 5b 27 63 6c 61 73 73 6d 61 70 27 5d 20 61 73 20 24 64 69 72 29 20 7b 0a utoloads['classmap'].as.$dir).{.
95c0 24 63 6c 61 73 73 4d 61 70 20 3d 20 24 74 68 69 73 2d 3e 61 64 64 43 6c 61 73 73 4d 61 70 43 6f $classMap.=.$this->addClassMapCo
95e0 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 de($filesystem,.$basePath,.$vend
9600 6f 72 50 61 74 68 2c 20 24 64 69 72 2c 20 24 62 6c 61 63 6b 6c 69 73 74 2c 20 6e 75 6c 6c 2c 20 orPath,.$dir,.$blacklist,.null,.
9620 24 63 6c 61 73 73 4d 61 70 29 3b 0a 7d 0a 0a 6b 73 6f 72 74 28 24 63 6c 61 73 73 4d 61 70 29 3b $classMap);.}..ksort($classMap);
9640 0a 66 6f 72 65 61 63 68 20 28 24 63 6c 61 73 73 4d 61 70 20 61 73 20 24 63 6c 61 73 73 20 3d 3e .foreach.($classMap.as.$class.=>
9660 20 24 63 6f 64 65 29 20 7b 0a 24 63 6c 61 73 73 6d 61 70 46 69 6c 65 20 2e 3d 20 27 20 20 20 20 .$code).{.$classmapFile..=.'....
9680 27 2e 76 61 72 5f 65 78 70 6f 72 74 28 24 63 6c 61 73 73 2c 20 74 72 75 65 29 2e 27 20 3d 3e 20 '.var_export($class,.true).'.=>.
96a0 27 2e 24 63 6f 64 65 3b 0a 7d 0a 24 63 6c 61 73 73 6d 61 70 46 69 6c 65 20 2e 3d 20 22 29 3b 5c '.$code;.}.$classmapFile..=.");\
96c0 6e 22 3b 0a 0a 69 66 20 28 21 24 73 75 66 66 69 78 29 20 7b 0a 69 66 20 28 21 24 63 6f 6e 66 69 n";..if.(!$suffix).{.if.(!$confi
96e0 67 2d 3e 67 65 74 28 27 61 75 74 6f 6c 6f 61 64 65 72 2d 73 75 66 66 69 78 27 29 20 26 26 20 69 g->get('autoloader-suffix').&&.i
9700 73 5f 72 65 61 64 61 62 6c 65 28 24 76 65 6e 64 6f 72 50 61 74 68 2e 27 2f 61 75 74 6f 6c 6f 61 s_readable($vendorPath.'/autoloa
9720 64 2e 70 68 70 27 29 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 d.php')).{.$content.=.file_get_c
9740 6f 6e 74 65 6e 74 73 28 24 76 65 6e 64 6f 72 50 61 74 68 2e 27 2f 61 75 74 6f 6c 6f 61 64 2e 70 ontents($vendorPath.'/autoload.p
9760 68 70 27 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 43 6f 6d 70 6f 73 65 72 41 hp');.if.(preg_match('{ComposerA
9780 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 28 5b 5e 3a 5c 73 5d 2b 29 3a 3a 7d 27 2c 20 24 63 6f 6e utoloaderInit([^:\s]+)::}',.$con
97a0 74 65 6e 74 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 73 75 66 66 69 78 20 3d 20 24 6d 61 74 63 tent,.$match)).{.$suffix.=.$matc
97c0 68 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 73 75 66 66 69 78 29 20 7b 0a 24 73 75 66 66 h[1];.}.}..if.(!$suffix).{.$suff
97e0 69 78 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 61 75 74 6f 6c 6f 61 64 65 72 2d 73 75 ix.=.$config->get('autoloader-su
9800 66 66 69 78 27 29 20 3f 3a 20 6d 64 35 28 75 6e 69 71 69 64 28 27 27 2c 20 74 72 75 65 29 29 3b ffix').?:.md5(uniqid('',.true));
9820 0a 7d 0a 7d 0a 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 61 72 67 65 74 44 .}.}..file_put_contents($targetD
9840 69 72 2e 27 2f 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 2e 70 68 70 27 2c 20 24 ir.'/autoload_namespaces.php',.$
9860 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e namespacesFile);.file_put_conten
9880 74 73 28 24 74 61 72 67 65 74 44 69 72 2e 27 2f 61 75 74 6f 6c 6f 61 64 5f 70 73 72 34 2e 70 68 ts($targetDir.'/autoload_psr4.ph
98a0 70 27 2c 20 24 70 73 72 34 46 69 6c 65 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 p',.$psr4File);.file_put_content
98c0 73 28 24 74 61 72 67 65 74 44 69 72 2e 27 2f 61 75 74 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 s($targetDir.'/autoload_classmap
98e0 2e 70 68 70 27 2c 20 24 63 6c 61 73 73 6d 61 70 46 69 6c 65 29 3b 0a 24 69 6e 63 6c 75 64 65 50 .php',.$classmapFile);.$includeP
9900 61 74 68 46 69 6c 65 50 61 74 68 20 3d 20 24 74 61 72 67 65 74 44 69 72 2e 27 2f 69 6e 63 6c 75 athFilePath.=.$targetDir.'/inclu
9920 64 65 5f 70 61 74 68 73 2e 70 68 70 27 3b 0a 69 66 20 28 24 69 6e 63 6c 75 64 65 50 61 74 68 46 de_paths.php';.if.($includePathF
9940 69 6c 65 43 6f 6e 74 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 63 6c 75 64 65 50 ileContents.=.$this->getIncludeP
9960 61 74 68 73 46 69 6c 65 28 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 24 66 69 6c 65 73 79 73 74 65 athsFile($packageMap,.$filesyste
9980 6d 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 76 65 6e 64 m,.$basePath,.$vendorPath,.$vend
99a0 6f 72 50 61 74 68 43 6f 64 65 35 32 2c 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 29 29 20 orPathCode52,.$appBaseDirCode)).
99c0 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 69 6e 63 6c 75 64 65 50 61 74 68 {.file_put_contents($includePath
99e0 46 69 6c 65 50 61 74 68 2c 20 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 43 6f 6e 74 65 6e FilePath,.$includePathFileConten
9a00 74 73 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 69 6e 63 6c ts);.}.elseif.(file_exists($incl
9a20 75 64 65 50 61 74 68 46 69 6c 65 50 61 74 68 29 29 20 7b 0a 75 6e 6c 69 6e 6b 28 24 69 6e 63 6c udePathFilePath)).{.unlink($incl
9a40 75 64 65 50 61 74 68 46 69 6c 65 50 61 74 68 29 3b 0a 7d 0a 24 69 6e 63 6c 75 64 65 46 69 6c 65 udePathFilePath);.}.$includeFile
9a60 73 46 69 6c 65 50 61 74 68 20 3d 20 24 74 61 72 67 65 74 44 69 72 2e 27 2f 61 75 74 6f 6c 6f 61 sFilePath.=.$targetDir.'/autoloa
9a80 64 5f 66 69 6c 65 73 2e 70 68 70 27 3b 0a 69 66 20 28 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 46 d_files.php';.if.($includeFilesF
9aa0 69 6c 65 43 6f 6e 74 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 63 6c 75 64 65 46 ileContents.=.$this->getIncludeF
9ac0 69 6c 65 73 46 69 6c 65 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 66 69 6c 65 73 27 5d 2c 20 24 66 ilesFile($autoloads['files'],.$f
9ae0 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 ilesystem,.$basePath,.$vendorPat
9b00 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 35 32 2c 20 24 61 70 70 42 61 73 65 44 69 h,.$vendorPathCode52,.$appBaseDi
9b20 72 43 6f 64 65 29 29 20 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 69 6e 63 rCode)).{.file_put_contents($inc
9b40 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 50 61 74 68 2c 20 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 ludeFilesFilePath,.$includeFiles
9b60 46 69 6c 65 43 6f 6e 74 65 6e 74 73 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 69 6c 65 5f 65 78 FileContents);.}.elseif.(file_ex
9b80 69 73 74 73 28 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 50 61 74 68 29 29 20 7b 0a 75 ists($includeFilesFilePath)).{.u
9ba0 6e 6c 69 6e 6b 28 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 50 61 74 68 29 3b 0a 7d 0a nlink($includeFilesFilePath);.}.
9bc0 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 76 65 6e 64 6f 72 50 61 74 68 2e 27 2f file_put_contents($vendorPath.'/
9be0 61 75 74 6f 6c 6f 61 64 2e 70 68 70 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 autoload.php',.$this->getAutoloa
9c00 64 46 69 6c 65 28 24 76 65 6e 64 6f 72 50 61 74 68 54 6f 54 61 72 67 65 74 44 69 72 43 6f 64 65 dFile($vendorPathToTargetDirCode
9c20 2c 20 24 73 75 66 66 69 78 29 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 ,.$suffix));.file_put_contents($
9c40 74 61 72 67 65 74 44 69 72 2e 27 2f 61 75 74 6f 6c 6f 61 64 5f 72 65 61 6c 2e 70 68 70 27 2c 20 targetDir.'/autoload_real.php',.
9c60 24 74 68 69 73 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 52 65 61 6c 46 69 6c 65 28 74 72 75 65 2c $this->getAutoloadRealFile(true,
9c80 20 28 62 6f 6f 6c 29 20 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 43 6f 6e 74 65 6e 74 73 .(bool).$includePathFileContents
9ca0 2c 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 2c 20 28 62 6f 6f 6c 29 20 24 69 6e 63 6c ,.$targetDirLoader,.(bool).$incl
9cc0 75 64 65 46 69 6c 65 73 46 69 6c 65 43 6f 6e 74 65 6e 74 73 2c 20 24 76 65 6e 64 6f 72 50 61 74 udeFilesFileContents,.$vendorPat
9ce0 68 43 6f 64 65 2c 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 2c 20 24 73 75 66 66 69 78 2c hCode,.$appBaseDirCode,.$suffix,
9d00 20 24 75 73 65 47 6c 6f 62 61 6c 49 6e 63 6c 75 64 65 50 61 74 68 2c 20 24 70 72 65 70 65 6e 64 .$useGlobalIncludePath,.$prepend
9d20 41 75 74 6f 6c 6f 61 64 65 72 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 61 66 65 43 6f 70 79 28 5f Autoloader));..$this->safeCopy(_
9d40 5f 44 49 52 5f 5f 2e 27 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 27 2c 20 24 74 61 72 67 _DIR__.'/ClassLoader.php',.$targ
9d60 65 74 44 69 72 2e 27 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 27 29 3b 0a 24 74 68 69 73 etDir.'/ClassLoader.php');.$this
9d80 2d 3e 73 61 66 65 43 6f 70 79 28 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 4c 49 ->safeCopy(__DIR__.'/../../../LI
9da0 43 45 4e 53 45 27 2c 20 24 74 61 72 67 65 74 44 69 72 2e 27 2f 4c 49 43 45 4e 53 45 27 29 3b 0a CENSE',.$targetDir.'/LICENSE');.
9dc0 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 20 7b 0a 24 74 68 69 73 2d .if.($this->runScripts).{.$this-
9de0 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 >eventDispatcher->dispatchScript
9e00 28 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 41 55 54 4f 4c 4f 41 44 5f 44 55 4d (ScriptEvents::POST_AUTOLOAD_DUM
9e20 50 2c 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 2c 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 P,.$this->devMode,.array(),.arra
9e40 79 28 0a 27 6f 70 74 69 6d 69 7a 65 27 20 3d 3e 20 28 62 6f 6f 6c 29 20 24 73 63 61 6e 50 73 72 y(.'optimize'.=>.(bool).$scanPsr
9e60 30 50 61 63 6b 61 67 65 73 2c 0a 29 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 0Packages,.));.}.}..private.func
9e80 74 69 6f 6e 20 61 64 64 43 6c 61 73 73 4d 61 70 43 6f 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d tion.addClassMapCode($filesystem
9ea0 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 64 69 72 2c 20 ,.$basePath,.$vendorPath,.$dir,.
9ec0 24 62 6c 61 63 6b 6c 69 73 74 20 3d 20 6e 75 6c 6c 2c 20 24 6e 61 6d 65 73 70 61 63 65 46 69 6c $blacklist.=.null,.$namespaceFil
9ee0 74 65 72 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 63 6c 61 73 73 4d 61 70 20 3d 20 61 72 ter.=.null,.array.$classMap.=.ar
9f00 72 61 79 28 29 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 ray()).{.foreach.($this->generat
9f20 65 43 6c 61 73 73 4d 61 70 28 24 64 69 72 2c 20 24 62 6c 61 63 6b 6c 69 73 74 2c 20 24 6e 61 6d eClassMap($dir,.$blacklist,.$nam
9f40 65 73 70 61 63 65 46 69 6c 74 65 72 29 20 61 73 20 24 63 6c 61 73 73 20 3d 3e 20 24 70 61 74 68 espaceFilter).as.$class.=>.$path
9f60 29 20 7b 0a 24 70 61 74 68 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 43 6f ).{.$pathCode.=.$this->getPathCo
9f80 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 de($filesystem,.$basePath,.$vend
9fa0 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 2e 22 2c 5c 6e 22 3b 0a 69 66 20 28 21 69 73 73 65 74 orPath,.$path).",\n";.if.(!isset
9fc0 28 24 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 29 29 20 7b 0a 24 63 6c 61 73 73 4d 61 70 ($classMap[$class])).{.$classMap
9fe0 5b 24 63 6c 61 73 73 5d 20 3d 20 24 70 61 74 68 43 6f 64 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 [$class].=.$pathCode;.}.elseif.(
a000 24 74 68 69 73 2d 3e 69 6f 20 26 26 20 24 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 20 21 $this->io.&&.$classMap[$class].!
a020 3d 3d 20 24 70 61 74 68 43 6f 64 65 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 2f 28 ==.$pathCode.&&.!preg_match('{/(
a040 74 65 73 74 7c 66 69 78 74 75 72 65 7c 65 78 61 6d 70 6c 65 7c 73 74 75 62 29 73 3f 2f 7d 69 27 test|fixture|example|stub)s?/}i'
a060 2c 20 73 74 72 74 72 28 24 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 2e 27 20 27 2e 24 70 ,.strtr($classMap[$class].'.'.$p
a080 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 ath,.'\\',.'/'))).{.$this->io->w
a0a0 72 69 74 65 45 72 72 6f 72 28 0a 27 3c 77 61 72 6e 69 6e 67 3e 57 61 72 6e 69 6e 67 3a 20 41 6d riteError(.'<warning>Warning:.Am
a0c0 62 69 67 75 6f 75 73 20 63 6c 61 73 73 20 72 65 73 6f 6c 75 74 69 6f 6e 2c 20 22 27 2e 24 63 6c biguous.class.resolution,."'.$cl
a0e0 61 73 73 2e 27 22 27 2e 0a 27 20 77 61 73 20 66 6f 75 6e 64 20 69 6e 20 62 6f 74 68 20 22 27 2e ass.'"'..'.was.found.in.both."'.
a100 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 str_replace(array('$vendorDir...
a120 5c 27 27 2c 20 22 27 2c 5c 6e 22 29 2c 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 50 61 74 68 2c \'',."',\n"),.array($vendorPath,
a140 20 27 27 29 2c 20 24 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 29 2e 27 22 20 61 6e 64 20 .''),.$classMap[$class]).'".and.
a160 22 27 2e 24 70 61 74 68 2e 27 22 2c 20 74 68 65 20 66 69 72 73 74 20 77 69 6c 6c 20 62 65 20 75 "'.$path.'",.the.first.will.be.u
a180 73 65 64 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 0a 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 sed.</warning>'.);.}.}..return.$
a1a0 63 6c 61 73 73 4d 61 70 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 classMap;.}..private.function.ge
a1c0 6e 65 72 61 74 65 43 6c 61 73 73 4d 61 70 28 24 64 69 72 2c 20 24 62 6c 61 63 6b 6c 69 73 74 20 nerateClassMap($dir,.$blacklist.
a1e0 3d 20 6e 75 6c 6c 2c 20 24 6e 61 6d 65 73 70 61 63 65 46 69 6c 74 65 72 20 3d 20 6e 75 6c 6c 2c =.null,.$namespaceFilter.=.null,
a200 20 24 73 68 6f 77 41 6d 62 69 67 75 6f 75 73 57 61 72 6e 69 6e 67 20 3d 20 74 72 75 65 29 0a 7b .$showAmbiguousWarning.=.true).{
a220 0a 72 65 74 75 72 6e 20 43 6c 61 73 73 4d 61 70 47 65 6e 65 72 61 74 6f 72 3a 3a 63 72 65 61 74 .return.ClassMapGenerator::creat
a240 65 4d 61 70 28 24 64 69 72 2c 20 24 62 6c 61 63 6b 6c 69 73 74 2c 20 24 73 68 6f 77 41 6d 62 69 eMap($dir,.$blacklist,.$showAmbi
a260 67 75 6f 75 73 57 61 72 6e 69 6e 67 20 3f 20 24 74 68 69 73 2d 3e 69 6f 20 3a 20 6e 75 6c 6c 2c guousWarning.?.$this->io.:.null,
a280 20 24 6e 61 6d 65 73 70 61 63 65 46 69 6c 74 65 72 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 .$namespaceFilter);.}..public.fu
a2a0 6e 63 74 69 6f 6e 20 62 75 69 6c 64 50 61 63 6b 61 67 65 4d 61 70 28 49 6e 73 74 61 6c 6c 61 74 nction.buildPackageMap(Installat
a2c0 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c ionManager.$installationManager,
a2e0 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 2c 20 .PackageInterface.$mainPackage,.
a300 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 0a 20 24 70 61 63 6b 61 67 65 4d 61 70 array.$packages).{...$packageMap
a320 20 3d 20 61 72 72 61 79 28 61 72 72 61 79 28 24 6d 61 69 6e 50 61 63 6b 61 67 65 2c 20 27 27 29 .=.array(array($mainPackage,.'')
a340 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 );..foreach.($packages.as.$packa
a360 67 65 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c ge).{.if.($package.instanceof.Al
a380 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 74 68 69 73 2d iasPackage).{.continue;.}.$this-
a3a0 3e 76 61 6c 69 64 61 74 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 24 70 61 >validatePackage($package);..$pa
a3c0 63 6b 61 67 65 4d 61 70 5b 5d 20 3d 20 61 72 72 61 79 28 0a 24 70 61 63 6b 61 67 65 2c 0a 24 69 ckageMap[].=.array(.$package,.$i
a3e0 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 nstallationManager->getInstallPa
a400 74 68 28 24 70 61 63 6b 61 67 65 29 2c 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b th($package),.);.}..return.$pack
a420 61 67 65 4d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 ageMap;.}.......protected.functi
a440 6f 6e 20 76 61 6c 69 64 61 74 65 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 on.validatePackage(PackageInterf
a460 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 61 75 74 6f 6c 6f 61 64 20 3d 20 24 70 61 63 ace.$package).{.$autoload.=.$pac
a480 6b 61 67 65 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 kage->getAutoload();.if.(!empty(
a4a0 24 61 75 74 6f 6c 6f 61 64 5b 27 70 73 72 2d 34 27 5d 29 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 $autoload['psr-4']).&&.null.!==.
a4c0 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 20 7b 0a 24 6e 61 6d $package->getTargetDir()).{.$nam
a4e0 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 24 70 61 63 6b 61 67 e.=.$package->getName();.$packag
a500 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e e->getTargetDir();.throw.new.\In
a520 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 50 53 52 2d 34 20 61 75 validArgumentException("PSR-4.au
a540 74 6f 6c 6f 61 64 69 6e 67 20 69 73 20 69 6e 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 74 toloading.is.incompatible.with.t
a560 68 65 20 74 61 72 67 65 74 2d 64 69 72 20 70 72 6f 70 65 72 74 79 2c 20 72 65 6d 6f 76 65 20 74 he.target-dir.property,.remove.t
a580 68 65 20 74 61 72 67 65 74 2d 64 69 72 20 69 6e 20 70 61 63 6b 61 67 65 20 27 24 6e 61 6d 65 27 he.target-dir.in.package.'$name'
a5a0 2e 22 29 3b 0a 7d 0a 69 66 20 28 21 65 6d 70 74 79 28 24 61 75 74 6f 6c 6f 61 64 5b 27 70 73 72 .");.}.if.(!empty($autoload['psr
a5c0 2d 34 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 5b 27 70 73 72 -4'])).{.foreach.($autoload['psr
a5e0 2d 34 27 5d 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 64 69 72 73 29 20 7b 0a 69 -4'].as.$namespace.=>.$dirs).{.i
a600 66 20 28 24 6e 61 6d 65 73 70 61 63 65 20 21 3d 3d 20 27 27 20 26 26 20 27 5c 5c 27 20 21 3d 3d f.($namespace.!==.''.&&.'\\'.!==
a620 20 73 75 62 73 74 72 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 2d 31 29 29 20 7b 0a 74 68 72 6f 77 .substr($namespace,.-1)).{.throw
a640 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 .new.\InvalidArgumentException("
a660 70 73 72 2d 34 20 6e 61 6d 65 73 70 61 63 65 73 20 6d 75 73 74 20 65 6e 64 20 77 69 74 68 20 61 psr-4.namespaces.must.end.with.a
a680 20 6e 61 6d 65 73 70 61 63 65 20 73 65 70 61 72 61 74 6f 72 2c 20 27 24 6e 61 6d 65 73 70 61 63 .namespace.separator,.'$namespac
a6a0 65 27 20 64 6f 65 73 20 6e 6f 74 2c 20 75 73 65 20 27 24 6e 61 6d 65 73 70 61 63 65 5c 5c 27 2e e'.does.not,.use.'$namespace\\'.
a6c0 22 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ");.}.}.}.}.........public.funct
a6e0 69 6f 6e 20 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 ion.parseAutoloads(array.$packag
a700 65 4d 61 70 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 6d 61 69 6e 50 61 63 6b eMap,.PackageInterface.$mainPack
a720 61 67 65 29 0a 7b 0a 24 6d 61 69 6e 50 61 63 6b 61 67 65 4d 61 70 20 3d 20 61 72 72 61 79 5f 73 age).{.$mainPackageMap.=.array_s
a740 68 69 66 74 28 24 70 61 63 6b 61 67 65 4d 61 70 29 3b 0a 24 73 6f 72 74 65 64 50 61 63 6b 61 67 hift($packageMap);.$sortedPackag
a760 65 4d 61 70 20 3d 20 24 74 68 69 73 2d 3e 73 6f 72 74 50 61 63 6b 61 67 65 4d 61 70 28 24 70 61 eMap.=.$this->sortPackageMap($pa
a780 63 6b 61 67 65 4d 61 70 29 3b 0a 24 73 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 70 5b 5d 20 3d ckageMap);.$sortedPackageMap[].=
a7a0 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 4d 61 70 3b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 .$mainPackageMap;.array_unshift(
a7c0 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 4d 61 70 29 3b 0a 0a $packageMap,.$mainPackageMap);..
a7e0 24 70 73 72 30 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 54 79 70 $psr0.=.$this->parseAutoloadsTyp
a800 65 28 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 27 70 73 72 2d 30 27 2c 20 24 6d 61 69 6e 50 61 63 e($packageMap,.'psr-0',.$mainPac
a820 6b 61 67 65 29 3b 0a 24 70 73 72 34 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 41 75 74 6f 6c kage);.$psr4.=.$this->parseAutol
a840 6f 61 64 73 54 79 70 65 28 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 27 70 73 72 2d 34 27 2c 20 24 oadsType($packageMap,.'psr-4',.$
a860 6d 61 69 6e 50 61 63 6b 61 67 65 29 3b 0a 24 63 6c 61 73 73 6d 61 70 20 3d 20 24 74 68 69 73 2d mainPackage);.$classmap.=.$this-
a880 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 54 79 70 65 28 61 72 72 61 79 5f 72 65 76 65 72 73 >parseAutoloadsType(array_revers
a8a0 65 28 24 73 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 70 29 2c 20 27 63 6c 61 73 73 6d 61 70 27 e($sortedPackageMap),.'classmap'
a8c0 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 3b 0a 24 66 69 6c 65 73 20 3d 20 24 74 68 69 73 2d ,.$mainPackage);.$files.=.$this-
a8e0 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 54 79 70 65 28 24 73 6f 72 74 65 64 50 61 63 6b 61 >parseAutoloadsType($sortedPacka
a900 67 65 4d 61 70 2c 20 27 66 69 6c 65 73 27 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 3b 0a 24 geMap,.'files',.$mainPackage);.$
a920 65 78 63 6c 75 64 65 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 54 exclude.=.$this->parseAutoloadsT
a940 79 70 65 28 24 73 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 70 2c 20 27 65 78 63 6c 75 64 65 2d ype($sortedPackageMap,.'exclude-
a960 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 27 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 3b 0a 0a from-classmap',.$mainPackage);..
a980 6b 72 73 6f 72 74 28 24 70 73 72 30 29 3b 0a 6b 72 73 6f 72 74 28 24 70 73 72 34 29 3b 0a 0a 72 krsort($psr0);.krsort($psr4);..r
a9a0 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 70 73 72 2d 30 27 20 3d 3e 20 24 70 73 72 30 2c 0a 27 eturn.array(.'psr-0'.=>.$psr0,.'
a9c0 70 73 72 2d 34 27 20 3d 3e 20 24 70 73 72 34 2c 0a 27 63 6c 61 73 73 6d 61 70 27 20 3d 3e 20 24 psr-4'.=>.$psr4,.'classmap'.=>.$
a9e0 63 6c 61 73 73 6d 61 70 2c 0a 27 66 69 6c 65 73 27 20 3d 3e 20 24 66 69 6c 65 73 2c 0a 27 65 78 classmap,.'files'.=>.$files,.'ex
aa00 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 27 20 3d 3e 20 24 65 78 63 6c 75 64 65 clude-from-classmap'.=>.$exclude
aa20 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 ,.);.}........public.function.cr
aa40 65 61 74 65 4c 6f 61 64 65 72 28 61 72 72 61 79 20 24 61 75 74 6f 6c 6f 61 64 73 29 0a 7b 0a 24 eateLoader(array.$autoloads).{.$
aa60 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 43 6c 61 73 73 4c 6f 61 64 65 72 28 29 3b 0a 0a 69 66 20 loader.=.new.ClassLoader();..if.
aa80 28 69 73 73 65 74 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 2d 30 27 5d 29 29 20 7b 0a 66 (isset($autoloads['psr-0'])).{.f
aaa0 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 2d 30 27 5d 20 61 73 20 24 oreach.($autoloads['psr-0'].as.$
aac0 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 6c 6f 61 64 65 72 2d 3e 61 namespace.=>.$path).{.$loader->a
aae0 64 64 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 dd($namespace,.$path);.}.}..if.(
ab00 69 73 73 65 74 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 2d 34 27 5d 29 29 20 7b 0a 66 6f isset($autoloads['psr-4'])).{.fo
ab20 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 2d 34 27 5d 20 61 73 20 24 6e reach.($autoloads['psr-4'].as.$n
ab40 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 6c 6f 61 64 65 72 2d 3e 61 64 amespace.=>.$path).{.$loader->ad
ab60 64 50 73 72 34 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 69 dPsr4($namespace,.$path);.}.}..i
ab80 66 20 28 69 73 73 65 74 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 63 6c 61 73 73 6d 61 70 27 5d 29 f.(isset($autoloads['classmap'])
aba0 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 63 6c 61 73 73 6d 61 ).{.foreach.($autoloads['classma
abc0 70 27 5d 20 61 73 20 24 64 69 72 29 20 7b 0a 74 72 79 20 7b 0a 24 6c 6f 61 64 65 72 2d 3e 61 64 p'].as.$dir).{.try.{.$loader->ad
abe0 64 43 6c 61 73 73 4d 61 70 28 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 43 6c 61 73 73 4d 61 dClassMap($this->generateClassMa
ac00 70 28 24 64 69 72 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 66 61 6c 73 65 29 29 3b 0a 7d 20 63 p($dir,.null,.null,.false));.}.c
ac20 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 atch.(\RuntimeException.$e).{.$t
ac40 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 27 2e his->io->writeError('<warning>'.
ac60 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a $e->getMessage().'</warning>');.
ac80 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 70 72 6f 74 65 63 }.}.}..return.$loader;.}..protec
aca0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 46 69 6c 65 ted.function.getIncludePathsFile
acc0 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 (array.$packageMap,.Filesystem.$
ace0 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 filesystem,.$basePath,.$vendorPa
ad00 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 2c 20 24 61 70 70 42 61 73 65 44 69 72 th,.$vendorPathCode,.$appBaseDir
ad20 43 6f 64 65 29 0a 7b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b Code).{.$includePaths.=.array();
ad40 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 4d 61 70 20 61 73 20 24 69 74 65 6d 29 ..foreach.($packageMap.as.$item)
ad60 20 7b 0a 6c 69 73 74 28 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 .{.list($package,.$installPath).
ad80 3d 20 24 69 74 65 6d 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d =.$item;..if.(null.!==.$package-
ada0 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 20 26 26 20 73 74 72 6c 65 6e 28 24 70 61 63 6b 61 >getTargetDir().&&.strlen($packa
adc0 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 20 3e 20 30 29 20 7b 0a 24 69 6e 73 74 ge->getTargetDir()).>.0).{.$inst
ade0 61 6c 6c 50 61 74 68 20 3d 20 73 75 62 73 74 72 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 30 allPath.=.substr($installPath,.0
ae00 2c 20 2d 73 74 72 6c 65 6e 28 27 2f 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 ,.-strlen('/'.$package->getTarge
ae20 74 44 69 72 28 29 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e tDir()));.}..foreach.($package->
ae40 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 20 61 73 20 24 69 6e 63 6c 75 64 65 50 61 74 getIncludePaths().as.$includePat
ae60 68 29 20 7b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 74 72 69 6d 28 24 69 6e 63 6c 75 64 h).{.$includePath.=.trim($includ
ae80 65 50 61 74 68 2c 20 27 2f 27 29 3b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 5b 5d 20 3d 20 65 ePath,.'/');.$includePaths[].=.e
aea0 6d 70 74 79 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 3f 20 24 69 6e 63 6c 75 64 65 50 61 74 mpty($installPath).?.$includePat
aec0 68 20 3a 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 2e 27 2f 27 2e 24 69 6e 63 6c 75 64 65 50 61 74 h.:.$installPath.'/'.$includePat
aee0 68 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 69 6e 63 6c 75 64 65 50 61 74 68 73 29 20 7b 0a 72 65 h;.}.}..if.(!$includePaths).{.re
af00 74 75 72 6e 3b 0a 7d 0a 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 43 6f 64 65 20 3d 20 27 27 3b turn;.}..$includePathsCode.=.'';
af20 0a 66 6f 72 65 61 63 68 20 28 24 69 6e 63 6c 75 64 65 50 61 74 68 73 20 61 73 20 24 70 61 74 68 .foreach.($includePaths.as.$path
af40 29 20 7b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 43 6f 64 65 20 2e 3d 20 22 20 20 20 20 22 20 ).{.$includePathsCode..=."....".
af60 2e 20 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 43 6f 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d ..$this->getPathCode($filesystem
af80 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 ,.$basePath,.$vendorPath,.$path)
afa0 20 2e 20 22 2c 5c 6e 22 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 3c 3c 3c 45 4f 46 0a 3c 3f 70 68 70 ...",\n";.}..return.<<<EOF.<?php
afc0 0a 0a 2f 2f 20 69 6e 63 6c 75 64 65 5f 70 61 74 68 73 2e 70 68 70 20 40 67 65 6e 65 72 61 74 65 ..//.include_paths.php.@generate
afe0 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 5c 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 24 76 65 d.by.Composer..\$vendorDir.=.$ve
b000 6e 64 6f 72 50 61 74 68 43 6f 64 65 3b 0a 5c 24 62 61 73 65 44 69 72 20 3d 20 24 61 70 70 42 61 ndorPathCode;.\$baseDir.=.$appBa
b020 73 65 44 69 72 43 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 24 69 6e 63 6c 75 seDirCode;..return.array(.$inclu
b040 64 65 50 61 74 68 73 43 6f 64 65 29 3b 0a 0a 45 4f 46 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 dePathsCode);..EOF;.}..protected
b060 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 28 61 72 .function.getIncludeFilesFile(ar
b080 72 61 79 20 24 66 69 6c 65 73 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 ray.$files,.Filesystem.$filesyst
b0a0 65 6d 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 76 65 6e em,.$basePath,.$vendorPath,.$ven
b0c0 64 6f 72 50 61 74 68 43 6f 64 65 2c 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 29 0a 7b 0a dorPathCode,.$appBaseDirCode).{.
b0e0 24 66 69 6c 65 73 43 6f 64 65 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6c 65 73 $filesCode.=.'';.foreach.($files
b100 20 61 73 20 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 20 3d 3e 20 24 66 75 6e 63 74 69 6f 6e .as.$fileIdentifier.=>.$function
b120 46 69 6c 65 29 20 7b 0a 24 66 69 6c 65 73 43 6f 64 65 20 2e 3d 20 27 20 20 20 20 27 20 2e 20 76 File).{.$filesCode..=.'....'...v
b140 61 72 5f 65 78 70 6f 72 74 28 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 2c 20 74 72 75 65 29 ar_export($fileIdentifier,.true)
b160 20 2e 20 27 20 3d 3e 20 27 0a 2e 20 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 43 6f 64 65 28 24 ...'.=>.'...$this->getPathCode($
b180 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 filesystem,.$basePath,.$vendorPa
b1a0 74 68 2c 20 24 66 75 6e 63 74 69 6f 6e 46 69 6c 65 29 20 2e 20 22 2c 5c 6e 22 3b 0a 7d 0a 0a 69 th,.$functionFile)...",\n";.}..i
b1c0 66 20 28 21 24 66 69 6c 65 73 43 6f 64 65 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a f.(!$filesCode).{.return.false;.
b1e0 7d 0a 0a 72 65 74 75 72 6e 20 3c 3c 3c 45 4f 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c }..return.<<<EOF.<?php..//.autol
b200 6f 61 64 5f 66 69 6c 65 73 2e 70 68 70 20 40 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 oad_files.php.@generated.by.Comp
b220 6f 73 65 72 0a 0a 5c 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 43 oser..\$vendorDir.=.$vendorPathC
b240 6f 64 65 3b 0a 5c 24 62 61 73 65 44 69 72 20 3d 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 ode;.\$baseDir.=.$appBaseDirCode
b260 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 24 66 69 6c 65 73 43 6f 64 65 29 3b 0a 0a 45 ;..return.array(.$filesCode);..E
b280 4f 46 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 74 OF;.}..protected.function.getPat
b2a0 68 43 6f 64 65 28 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 hCode(Filesystem.$filesystem,.$b
b2c0 61 73 65 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 0a 7b 0a 69 asePath,.$vendorPath,.$path).{.i
b2e0 66 20 28 21 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 f.(!$filesystem->isAbsolutePath(
b300 24 70 61 74 68 29 29 20 7b 0a 24 70 61 74 68 20 3d 20 24 62 61 73 65 50 61 74 68 20 2e 20 27 2f $path)).{.$path.=.$basePath...'/
b320 27 20 2e 20 24 70 61 74 68 3b 0a 7d 0a 24 70 61 74 68 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d '...$path;.}.$path.=.$filesystem
b340 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 0a 24 62 61 73 65 44 69 ->normalizePath($path);..$baseDi
b360 72 20 3d 20 27 27 3b 0a 69 66 20 28 73 74 72 70 6f 73 28 24 70 61 74 68 2e 27 2f 27 2c 20 24 76 r.=.'';.if.(strpos($path.'/',.$v
b380 65 6e 64 6f 72 50 61 74 68 2e 27 2f 27 29 20 3d 3d 3d 20 30 29 20 7b 0a 24 70 61 74 68 20 3d 20 endorPath.'/').===.0).{.$path.=.
b3a0 73 75 62 73 74 72 28 24 70 61 74 68 2c 20 73 74 72 6c 65 6e 28 24 76 65 6e 64 6f 72 50 61 74 68 substr($path,.strlen($vendorPath
b3c0 29 29 3b 0a 24 62 61 73 65 44 69 72 20 3d 20 27 24 76 65 6e 64 6f 72 44 69 72 27 3b 0a 0a 69 66 ));.$baseDir.=.'$vendorDir';..if
b3e0 20 28 24 70 61 74 68 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 62 61 73 65 44 69 72 20 2e 3d .($path.!==.false).{.$baseDir..=
b400 20 22 20 2e 20 22 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 3d 20 24 66 69 6c 65 ."...";.}.}.else.{.$path.=.$file
b420 73 79 73 74 65 6d 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 66 69 6c 65 73 79 73 74 65 system->normalizePath($filesyste
b440 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 62 61 73 65 50 61 74 68 2c 20 24 m->findShortestPath($basePath,.$
b460 70 61 74 68 2c 20 74 72 75 65 29 29 3b 0a 69 66 20 28 21 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e path,.true));.if.(!$filesystem->
b480 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 70 61 74 68 29 29 20 7b 0a 24 62 61 73 65 44 69 isAbsolutePath($path)).{.$baseDi
b4a0 72 20 3d 20 27 24 62 61 73 65 44 69 72 20 2e 20 27 3b 0a 24 70 61 74 68 20 3d 20 27 2f 27 20 2e r.=.'$baseDir...';.$path.=.'/'..
b4c0 20 24 70 61 74 68 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5c 2e .$path;.}.}..if.(preg_match('/\.
b4e0 70 68 61 72 24 2f 27 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 62 61 73 65 44 69 72 20 3d 20 22 27 phar$/',.$path)).{.$baseDir.=."'
b500 70 68 61 72 3a 2f 2f 27 20 2e 20 22 20 2e 20 24 62 61 73 65 44 69 72 3b 0a 7d 0a 0a 72 65 74 75 phar://'..."...$baseDir;.}..retu
b520 72 6e 20 24 62 61 73 65 44 69 72 20 2e 20 28 28 24 70 61 74 68 20 21 3d 3d 20 66 61 6c 73 65 29 rn.$baseDir...(($path.!==.false)
b540 20 3f 20 76 61 72 5f 65 78 70 6f 72 74 28 24 70 61 74 68 2c 20 74 72 75 65 29 20 3a 20 22 22 29 .?.var_export($path,.true).:."")
b560 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 6c ;.}..protected.function.getAutol
b580 6f 61 64 46 69 6c 65 28 24 76 65 6e 64 6f 72 50 61 74 68 54 6f 54 61 72 67 65 74 44 69 72 43 6f oadFile($vendorPathToTargetDirCo
b5a0 64 65 2c 20 24 73 75 66 66 69 78 29 0a 7b 0a 72 65 74 75 72 6e 20 3c 3c 3c 41 55 54 4f 4c 4f 41 de,.$suffix).{.return.<<<AUTOLOA
b5c0 44 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 2e 70 68 70 20 40 67 65 6e 65 72 61 D.<?php..//.autoload.php.@genera
b5e0 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 72 65 71 75 69 72 65 5f 6f 6e 63 65 20 24 76 ted.by.Composer..require_once.$v
b600 65 6e 64 6f 72 50 61 74 68 54 6f 54 61 72 67 65 74 44 69 72 43 6f 64 65 20 2e 20 27 2f 61 75 74 endorPathToTargetDirCode...'/aut
b620 6f 6c 6f 61 64 5f 72 65 61 6c 2e 70 68 70 27 3b 0a 0a 72 65 74 75 72 6e 20 43 6f 6d 70 6f 73 65 oload_real.php';..return.Compose
b640 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 3a 3a 67 65 74 4c 6f 61 64 65 rAutoloaderInit$suffix::getLoade
b660 72 28 29 3b 0a 0a 41 55 54 4f 4c 4f 41 44 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e r();..AUTOLOAD;.}..protected.fun
b680 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 6c 6f 61 64 52 65 61 6c 46 69 6c 65 28 24 75 73 65 43 6c ction.getAutoloadRealFile($useCl
b6a0 61 73 73 4d 61 70 2c 20 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 2c 20 24 74 61 72 67 65 74 assMap,.$useIncludePath,.$target
b6c0 44 69 72 4c 6f 61 64 65 72 2c 20 24 75 73 65 49 6e 63 6c 75 64 65 46 69 6c 65 73 2c 20 24 76 65 DirLoader,.$useIncludeFiles,.$ve
b6e0 6e 64 6f 72 50 61 74 68 43 6f 64 65 2c 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 2c 20 24 ndorPathCode,.$appBaseDirCode,.$
b700 73 75 66 66 69 78 2c 20 24 75 73 65 47 6c 6f 62 61 6c 49 6e 63 6c 75 64 65 50 61 74 68 2c 20 24 suffix,.$useGlobalIncludePath,.$
b720 70 72 65 70 65 6e 64 41 75 74 6f 6c 6f 61 64 65 72 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 3c 3c 3c prependAutoloader).{.$file.=.<<<
b740 48 45 41 44 45 52 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 72 65 61 6c 2e 70 HEADER.<?php..//.autoload_real.p
b760 68 70 20 40 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 63 6c 61 73 73 hp.@generated.by.Composer..class
b780 20 43 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 0a 7b .ComposerAutoloaderInit$suffix.{
b7a0 0a 20 20 20 20 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 5c 24 6c 6f 61 64 65 72 3b 0a 0a 20 .....private.static.\$loader;...
b7c0 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 43 6c ...public.static.function.loadCl
b7e0 61 73 73 4c 6f 61 64 65 72 28 5c 24 63 6c 61 73 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 assLoader(\$class).....{........
b800 20 69 66 20 28 27 43 6f 6d 70 6f 73 65 72 5c 5c 41 75 74 6f 6c 6f 61 64 5c 5c 43 6c 61 73 73 4c .if.('Composer\\Autoload\\ClassL
b820 6f 61 64 65 72 27 20 3d 3d 3d 20 5c 24 63 6c 61 73 73 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 oader'.===.\$class).{...........
b840 20 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 43 6c 61 73 73 4c 6f 61 64 65 ..require.__DIR__...'/ClassLoade
b860 72 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75 62 r.php';.........}.....}......pub
b880 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 61 64 65 72 28 29 0a lic.static.function.getLoader().
b8a0 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 73 65 6c 66 3a ....{.........if.(null.!==.self:
b8c0 3a 5c 24 6c 6f 61 64 65 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 :\$loader).{.............return.
b8e0 73 65 6c 66 3a 3a 5c 24 6c 6f 61 64 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 self::\$loader;.........}.......
b900 20 20 20 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 72 65 67 69 73 74 65 72 28 61 72 72 61 79 28 27 ...spl_autoload_register(array('
b920 43 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 27 2c 20 ComposerAutoloaderInit$suffix',.
b940 27 6c 6f 61 64 43 6c 61 73 73 4c 6f 61 64 65 72 27 29 2c 20 74 72 75 65 2c 20 24 70 72 65 70 65 'loadClassLoader'),.true,.$prepe
b960 6e 64 41 75 74 6f 6c 6f 61 64 65 72 29 3b 0a 20 20 20 20 20 20 20 20 73 65 6c 66 3a 3a 5c 24 6c ndAutoloader);.........self::\$l
b980 6f 61 64 65 72 20 3d 20 5c 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 5c 5c 43 6f 6d 70 6f 73 65 oader.=.\$loader.=.new.\\Compose
b9a0 72 5c 5c 41 75 74 6f 6c 6f 61 64 5c 5c 43 6c 61 73 73 4c 6f 61 64 65 72 28 29 3b 0a 20 20 20 20 r\\Autoload\\ClassLoader();.....
b9c0 20 20 20 20 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 75 6e 72 65 67 69 73 74 65 72 28 61 72 72 61 ....spl_autoload_unregister(arra
b9e0 79 28 27 43 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 y('ComposerAutoloaderInit$suffix
ba00 27 2c 20 27 6c 6f 61 64 43 6c 61 73 73 4c 6f 61 64 65 72 27 29 29 3b 0a 0a 0a 48 45 41 44 45 52 ',.'loadClassLoader'));...HEADER
ba20 3b 0a 0a 69 66 20 28 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 29 20 7b 0a 24 66 69 6c 65 20 ;..if.($useIncludePath).{.$file.
ba40 2e 3d 20 3c 3c 3c 27 49 4e 43 4c 55 44 45 5f 50 41 54 48 27 0a 20 20 20 20 20 20 20 20 24 69 6e .=.<<<'INCLUDE_PATH'.........$in
ba60 63 6c 75 64 65 50 61 74 68 73 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 cludePaths.=.require.__DIR__...'
ba80 2f 69 6e 63 6c 75 64 65 5f 70 61 74 68 73 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 61 72 72 /include_paths.php';.........arr
baa0 61 79 5f 70 75 73 68 28 24 69 6e 63 6c 75 64 65 50 61 74 68 73 2c 20 67 65 74 5f 69 6e 63 6c 75 ay_push($includePaths,.get_inclu
bac0 64 65 5f 70 61 74 68 28 29 29 3b 0a 20 20 20 20 20 20 20 20 73 65 74 5f 69 6e 63 6c 75 64 65 5f de_path());.........set_include_
bae0 70 61 74 68 28 6a 6f 69 6e 28 50 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 24 69 6e 63 6c 75 path(join(PATH_SEPARATOR,.$inclu
bb00 64 65 50 61 74 68 73 29 29 3b 0a 0a 0a 49 4e 43 4c 55 44 45 5f 50 41 54 48 3b 0a 7d 0a 0a 69 66 dePaths));...INCLUDE_PATH;.}..if
bb20 20 28 21 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 29 .(!$this->classMapAuthoritative)
bb40 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 27 50 53 52 30 34 27 0a 20 20 20 20 20 20 20 20 24 .{.$file..=.<<<'PSR04'.........$
bb60 6d 61 70 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 61 75 74 6f 6c 6f map.=.require.__DIR__...'/autolo
bb80 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 ad_namespaces.php';.........fore
bba0 61 63 68 20 28 24 6d 61 70 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 ach.($map.as.$namespace.=>.$path
bbc0 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 73 65 74 28 24 6e 61 ).{.............$loader->set($na
bbe0 6d 65 73 70 61 63 65 2c 20 24 70 61 74 68 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 mespace,.$path);.........}......
bc00 20 20 20 20 24 6d 61 70 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 61 ....$map.=.require.__DIR__...'/a
bc20 75 74 6f 6c 6f 61 64 5f 70 73 72 34 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 utoload_psr4.php';.........forea
bc40 63 68 20 28 24 6d 61 70 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 29 ch.($map.as.$namespace.=>.$path)
bc60 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 73 65 74 50 73 72 34 28 .{.............$loader->setPsr4(
bc80 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 70 61 74 68 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 0a $namespace,.$path);.........}...
bca0 50 53 52 30 34 3b 0a 7d 0a 0a 69 66 20 28 24 75 73 65 43 6c 61 73 73 4d 61 70 29 20 7b 0a 24 66 PSR04;.}..if.($useClassMap).{.$f
bcc0 69 6c 65 20 2e 3d 20 3c 3c 3c 27 43 4c 41 53 53 4d 41 50 27 0a 20 20 20 20 20 20 20 20 24 63 6c ile..=.<<<'CLASSMAP'.........$cl
bce0 61 73 73 4d 61 70 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 61 75 74 assMap.=.require.__DIR__...'/aut
bd00 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 69 66 20 oload_classmap.php';.........if.
bd20 28 24 63 6c 61 73 73 4d 61 70 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6c 6f 61 64 65 ($classMap).{.............$loade
bd40 72 2d 3e 61 64 64 43 6c 61 73 73 4d 61 70 28 24 63 6c 61 73 73 4d 61 70 29 3b 0a 20 20 20 20 20 r->addClassMap($classMap);......
bd60 20 20 20 7d 0a 0a 0a 43 4c 41 53 53 4d 41 50 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 ...}...CLASSMAP;.}..if.($this->c
bd80 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 29 20 7b 0a 24 66 69 6c 65 20 2e 3d lassMapAuthoritative).{.$file..=
bda0 20 3c 3c 3c 27 43 4c 41 53 53 4d 41 50 41 55 54 48 4f 52 49 54 41 54 49 56 45 27 0a 20 20 20 20 .<<<'CLASSMAPAUTHORITATIVE'.....
bdc0 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 ....$loader->setClassMapAuthorit
bde0 61 74 69 76 65 28 74 72 75 65 29 3b 0a 0a 43 4c 41 53 53 4d 41 50 41 55 54 48 4f 52 49 54 41 54 ative(true);..CLASSMAPAUTHORITAT
be00 49 56 45 3b 0a 7d 0a 0a 69 66 20 28 24 75 73 65 47 6c 6f 62 61 6c 49 6e 63 6c 75 64 65 50 61 74 IVE;.}..if.($useGlobalIncludePat
be20 68 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 27 49 4e 43 4c 55 44 45 50 41 54 48 27 0a 20 h).{.$file..=.<<<'INCLUDEPATH'..
be40 20 20 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 73 65 74 55 73 65 49 6e 63 6c 75 64 65 50 61 74 .......$loader->setUseIncludePat
be60 68 28 74 72 75 65 29 3b 0a 0a 49 4e 43 4c 55 44 45 50 41 54 48 3b 0a 7d 0a 0a 69 66 20 28 24 74 h(true);..INCLUDEPATH;.}..if.($t
be80 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 52 45 argetDirLoader).{.$file..=.<<<RE
bea0 47 49 53 54 45 52 5f 54 41 52 47 45 54 5f 44 49 52 5f 41 55 54 4f 4c 4f 41 44 0a 20 20 20 20 20 GISTER_TARGET_DIR_AUTOLOAD......
bec0 20 20 20 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 72 65 67 69 73 74 65 72 28 61 72 72 61 79 28 27 ...spl_autoload_register(array('
bee0 43 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 27 2c 20 ComposerAutoloaderInit$suffix',.
bf00 27 61 75 74 6f 6c 6f 61 64 27 29 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 0a 0a 0a 52 45 47 49 'autoload'),.true,.true);...REGI
bf20 53 54 45 52 5f 54 41 52 47 45 54 5f 44 49 52 5f 41 55 54 4f 4c 4f 41 44 3b 0a 7d 0a 0a 24 66 69 STER_TARGET_DIR_AUTOLOAD;.}..$fi
bf40 6c 65 20 2e 3d 20 3c 3c 3c 52 45 47 49 53 54 45 52 5f 4c 4f 41 44 45 52 0a 20 20 20 20 20 20 20 le..=.<<<REGISTER_LOADER........
bf60 20 5c 24 6c 6f 61 64 65 72 2d 3e 72 65 67 69 73 74 65 72 28 24 70 72 65 70 65 6e 64 41 75 74 6f .\$loader->register($prependAuto
bf80 6c 6f 61 64 65 72 29 3b 0a 0a 0a 52 45 47 49 53 54 45 52 5f 4c 4f 41 44 45 52 3b 0a 0a 69 66 20 loader);...REGISTER_LOADER;..if.
bfa0 28 24 75 73 65 49 6e 63 6c 75 64 65 46 69 6c 65 73 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c ($useIncludeFiles).{.$file..=.<<
bfc0 3c 49 4e 43 4c 55 44 45 5f 46 49 4c 45 53 0a 20 20 20 20 20 20 20 20 5c 24 69 6e 63 6c 75 64 65 <INCLUDE_FILES.........\$include
bfe0 46 69 6c 65 73 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 61 75 74 6f Files.=.require.__DIR__...'/auto
c000 6c 6f 61 64 5f 66 69 6c 65 73 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 load_files.php';.........foreach
c020 20 28 5c 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 20 61 73 20 5c 24 66 69 6c 65 49 64 65 6e 74 69 .(\$includeFiles.as.\$fileIdenti
c040 66 69 65 72 20 3d 3e 20 5c 24 66 69 6c 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f fier.=>.\$file).{.............co
c060 6d 70 6f 73 65 72 52 65 71 75 69 72 65 24 73 75 66 66 69 78 28 5c 24 66 69 6c 65 49 64 65 6e 74 mposerRequire$suffix(\$fileIdent
c080 69 66 69 65 72 2c 20 5c 24 66 69 6c 65 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 0a 49 4e 43 4c ifier,.\$file);.........}...INCL
c0a0 55 44 45 5f 46 49 4c 45 53 3b 0a 7d 0a 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 4d 45 54 48 4f 44 UDE_FILES;.}..$file..=.<<<METHOD
c0c0 5f 46 4f 4f 54 45 52 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 5c 24 6c 6f 61 64 65 72 3b _FOOTER.........return.\$loader;
c0e0 0a 20 20 20 20 7d 0a 0a 4d 45 54 48 4f 44 5f 46 4f 4f 54 45 52 3b 0a 0a 24 66 69 6c 65 20 2e 3d .....}..METHOD_FOOTER;..$file..=
c100 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 3b 0a 0a 69 66 20 28 24 75 73 65 49 6e 63 6c .$targetDirLoader;..if.($useIncl
c120 75 64 65 46 69 6c 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 20 2e 20 3c 3c 3c 46 4f udeFiles).{.return.$file...<<<FO
c140 4f 54 45 52 0a 7d 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 70 6f 73 65 72 52 65 71 75 69 72 65 OTER.}..function.composerRequire
c160 24 73 75 66 66 69 78 28 5c 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 2c 20 5c 24 66 69 6c 65 $suffix(\$fileIdentifier,.\$file
c180 29 0a 7b 0a 20 20 20 20 69 66 20 28 65 6d 70 74 79 28 5c 24 47 4c 4f 42 41 4c 53 5b 27 5f 5f 63 ).{.....if.(empty(\$GLOBALS['__c
c1a0 6f 6d 70 6f 73 65 72 5f 61 75 74 6f 6c 6f 61 64 5f 66 69 6c 65 73 27 5d 5b 5c 24 66 69 6c 65 49 omposer_autoload_files'][\$fileI
c1c0 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 72 65 71 75 69 72 65 20 5c dentifier])).{.........require.\
c1e0 24 66 69 6c 65 3b 0a 0a 20 20 20 20 20 20 20 20 5c 24 47 4c 4f 42 41 4c 53 5b 27 5f 5f 63 6f 6d $file;..........\$GLOBALS['__com
c200 70 6f 73 65 72 5f 61 75 74 6f 6c 6f 61 64 5f 66 69 6c 65 73 27 5d 5b 5c 24 66 69 6c 65 49 64 65 poser_autoload_files'][\$fileIde
c220 6e 74 69 66 69 65 72 5d 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 46 4f 4f 54 45 52 ntifier].=.true;.....}.}..FOOTER
c240 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 20 2e 20 3c 3c 3c 46 4f 4f 54 45 52 0a 7d 0a ;.}..return.$file...<<<FOOTER.}.
c260 0a 46 4f 4f 54 45 52 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 .FOOTER;.}..protected.function.p
c280 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 54 79 70 65 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 arseAutoloadsType(array.$package
c2a0 4d 61 70 2c 20 24 74 79 70 65 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 6d 61 Map,.$type,.PackageInterface.$ma
c2c0 69 6e 50 61 63 6b 61 67 65 29 0a 7b 0a 24 61 75 74 6f 6c 6f 61 64 73 20 3d 20 61 72 72 61 79 28 inPackage).{.$autoloads.=.array(
c2e0 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 4d 61 70 20 61 73 20 24 69 74 65 );..foreach.($packageMap.as.$ite
c300 6d 29 20 7b 0a 6c 69 73 74 28 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 m).{.list($package,.$installPath
c320 29 20 3d 20 24 69 74 65 6d 3b 0a 0a 24 61 75 74 6f 6c 6f 61 64 20 3d 20 24 70 61 63 6b 61 67 65 ).=.$item;..$autoload.=.$package
c340 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 76 4d ->getAutoload();.if.($this->devM
c360 6f 64 65 20 26 26 20 24 70 61 63 6b 61 67 65 20 3d 3d 3d 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 ode.&&.$package.===.$mainPackage
c380 29 20 7b 0a 24 61 75 74 6f 6c 6f 61 64 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 5f 72 65 63 75 ).{.$autoload.=.array_merge_recu
c3a0 72 73 69 76 65 28 24 61 75 74 6f 6c 6f 61 64 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 rsive($autoload,.$package->getDe
c3c0 76 41 75 74 6f 6c 6f 61 64 28 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 61 vAutoload());.}....if.(!isset($a
c3e0 75 74 6f 6c 6f 61 64 5b 24 74 79 70 65 5d 29 20 7c 7c 20 21 69 73 5f 61 72 72 61 79 28 24 61 75 utoload[$type]).||.!is_array($au
c400 74 6f 6c 6f 61 64 5b 24 74 79 70 65 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 toload[$type])).{.continue;.}.if
c420 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 .(null.!==.$package->getTargetDi
c440 72 28 29 20 26 26 20 24 70 61 63 6b 61 67 65 20 21 3d 3d 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 r().&&.$package.!==.$mainPackage
c460 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 3d 20 73 75 62 73 74 72 28 24 69 6e 73 74 61 ).{.$installPath.=.substr($insta
c480 6c 6c 50 61 74 68 2c 20 30 2c 20 2d 73 74 72 6c 65 6e 28 27 2f 27 2e 24 70 61 63 6b 61 67 65 2d llPath,.0,.-strlen('/'.$package-
c4a0 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 >getTargetDir()));.}..foreach.($
c4c0 61 75 74 6f 6c 6f 61 64 5b 24 74 79 70 65 5d 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e autoload[$type].as.$namespace.=>
c4e0 20 24 70 61 74 68 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 70 61 74 .$paths).{.foreach.((array).$pat
c500 68 73 20 61 73 20 24 70 61 74 68 29 20 7b 0a 69 66 20 28 28 24 74 79 70 65 20 3d 3d 3d 20 27 66 hs.as.$path).{.if.(($type.===.'f
c520 69 6c 65 73 27 20 7c 7c 20 24 74 79 70 65 20 3d 3d 3d 20 27 63 6c 61 73 73 6d 61 70 27 20 7c 7c iles'.||.$type.===.'classmap'.||
c540 20 24 74 79 70 65 20 3d 3d 3d 20 27 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 .$type.===.'exclude-from-classma
c560 70 27 29 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 20 p').&&.$package->getTargetDir().
c580 26 26 20 21 69 73 5f 72 65 61 64 61 62 6c 65 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2e 27 2f 27 &&.!is_readable($installPath.'/'
c5a0 2e 24 70 61 74 68 29 29 20 7b 0a 0a 20 69 66 20 28 24 70 61 63 6b 61 67 65 20 3d 3d 3d 20 24 6d .$path)).{...if.($package.===.$m
c5c0 61 69 6e 50 61 63 6b 61 67 65 29 20 7b 0a 24 74 61 72 67 65 74 44 69 72 20 3d 20 73 74 72 5f 72 ainPackage).{.$targetDir.=.str_r
c5e0 65 70 6c 61 63 65 28 27 5c 5c 3c 64 69 72 73 65 70 5c 5c 3e 27 2c 20 27 5b 5c 5c 5c 5c 2f 5d 27 eplace('\\<dirsep\\>',.'[\\\\/]'
c600 2c 20 70 72 65 67 5f 71 75 6f 74 65 28 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 ,.preg_quote(str_replace(array('
c620 2f 27 2c 20 27 5c 5c 27 29 2c 20 27 3c 64 69 72 73 65 70 3e 27 2c 20 24 70 61 63 6b 61 67 65 2d /',.'\\'),.'<dirsep>',.$package-
c640 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 29 29 3b 0a 24 70 61 74 68 20 3d 20 6c 74 72 69 >getTargetDir())));.$path.=.ltri
c660 6d 28 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 27 2e 24 74 61 72 67 65 74 44 69 72 2e 27 m(preg_replace('{^'.$targetDir.'
c680 7d 27 2c 20 27 27 2c 20 6c 74 72 69 6d 28 24 70 61 74 68 2c 20 27 5c 5c 2f 27 29 29 2c 20 27 5c }',.'',.ltrim($path,.'\\/')),.'\
c6a0 5c 2f 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 70 61 74 68 20 3d 20 24 70 61 63 6b 61 67 \/');.}.else.{...$path.=.$packag
c6c0 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 20 2e 20 27 2f 27 20 2e 20 24 70 61 74 68 3b e->getTargetDir()...'/'...$path;
c6e0 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 65 78 63 6c 75 64 65 2d 66 72 6f .}.}..if.($type.===.'exclude-fro
c700 6d 2d 63 6c 61 73 73 6d 61 70 27 29 20 7b 0a 0a 20 24 70 61 74 68 20 3d 20 70 72 65 67 5f 71 75 m-classmap').{...$path.=.preg_qu
c720 6f 74 65 28 74 72 69 6d 28 73 74 72 74 72 28 24 70 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 ote(trim(strtr($path,.'\\',.'/')
c740 2c 20 27 2f 27 29 29 3b 0a 0a 0a 20 24 70 61 74 68 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 ,.'/'));....$path.=.str_replace(
c760 27 5c 5c 2a 5c 5c 2a 27 2c 20 27 2e 2b 3f 27 2c 20 24 70 61 74 68 29 3b 0a 24 70 61 74 68 20 3d '\\*\\*',.'.+?',.$path);.$path.=
c780 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 2a 27 2c 20 27 5b 5e 2f 5d 2b 3f 27 2c 20 24 70 .str_replace('\\*',.'[^/]+?',.$p
c7a0 61 74 68 29 3b 0a 0a 0a 20 24 75 70 64 69 72 20 3d 20 6e 75 6c 6c 3b 0a 24 70 61 74 68 20 3d 20 ath);....$updir.=.null;.$path.=.
c7c0 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 0a 27 7b 5e 28 28 3f 3a 28 3f preg_replace_callback(.'{^((?:(?
c7e0 3a 5c 5c 5c 5c 5c 5c 2e 29 7b 31 2c 32 7d 2b 2f 29 2b 29 7d 27 2c 0a 66 75 6e 63 74 69 6f 6e 20 :\\\\\\.){1,2}+/)+)}',.function.
c800 28 24 6d 61 74 63 68 65 73 29 20 75 73 65 20 28 26 24 75 70 64 69 72 29 20 7b 0a 69 66 20 28 69 ($matches).use.(&$updir).{.if.(i
c820 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 29 20 7b 0a 0a 20 24 75 70 64 69 72 20 3d 20 sset($matches[1])).{...$updir.=.
c840 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 2e 27 2c 20 27 2e 27 2c 20 24 6d 61 74 63 68 65 73 str_replace('\\.',.'.',.$matches
c860 5b 31 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 2c 0a 24 70 61 74 68 0a 29 3b 0a [1]);.}..return.'';.},.$path.);.
c880 69 66 20 28 65 6d 70 74 79 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 29 20 7b 0a 24 69 6e 73 74 if.(empty($installPath)).{.$inst
c8a0 61 6c 6c 50 61 74 68 20 3d 20 73 74 72 74 72 28 67 65 74 63 77 64 28 29 2c 20 27 5c 5c 27 2c 20 allPath.=.strtr(getcwd(),.'\\',.
c8c0 27 2f 27 29 3b 0a 7d 0a 0a 24 72 65 73 6f 6c 76 65 64 50 61 74 68 20 3d 20 72 65 61 6c 70 61 74 '/');.}..$resolvedPath.=.realpat
c8e0 68 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 2e 20 27 2f 27 20 2e 20 24 75 70 64 69 72 29 3b 0a h($installPath...'/'...$updir);.
c900 24 61 75 74 6f 6c 6f 61 64 73 5b 5d 20 3d 20 70 72 65 67 5f 71 75 6f 74 65 28 73 74 72 74 72 28 $autoloads[].=.preg_quote(strtr(
c920 24 72 65 73 6f 6c 76 65 64 50 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 20 2e 20 27 2f 27 $resolvedPath,.'\\',.'/'))...'/'
c940 20 2e 20 24 70 61 74 68 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 72 65 6c 61 74 69 76 65 ...$path;.continue;.}..$relative
c960 50 61 74 68 20 3d 20 65 6d 70 74 79 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 3f 20 28 65 6d Path.=.empty($installPath).?.(em
c980 70 74 79 28 24 70 61 74 68 29 20 3f 20 27 2e 27 20 3a 20 24 70 61 74 68 29 20 3a 20 24 69 6e 73 pty($path).?.'.'.:.$path).:.$ins
c9a0 74 61 6c 6c 50 61 74 68 2e 27 2f 27 2e 24 70 61 74 68 3b 0a 0a 69 66 20 28 24 74 79 70 65 20 3d tallPath.'/'.$path;..if.($type.=
c9c0 3d 3d 20 27 66 69 6c 65 73 27 29 20 7b 0a 24 61 75 74 6f 6c 6f 61 64 73 5b 24 74 68 69 73 2d 3e ==.'files').{.$autoloads[$this->
c9e0 67 65 74 46 69 6c 65 49 64 65 6e 74 69 66 69 65 72 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 getFileIdentifier($package,.$pat
ca00 68 29 5d 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d h)].=.$relativePath;.continue;.}
ca20 20 65 6c 73 65 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 63 6c 61 73 73 6d 61 70 27 29 20 7b .elseif.($type.===.'classmap').{
ca40 0a 24 61 75 74 6f 6c 6f 61 64 73 5b 5d 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 63 .$autoloads[].=.$relativePath;.c
ca60 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 61 75 74 6f 6c 6f 61 64 73 5b 24 6e 61 6d 65 73 70 61 63 ontinue;.}..$autoloads[$namespac
ca80 65 5d 5b 5d 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 e][].=.$relativePath;.}.}.}..ret
caa0 75 72 6e 20 24 61 75 74 6f 6c 6f 61 64 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e urn.$autoloads;.}..protected.fun
cac0 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 49 64 65 6e 74 69 66 69 65 72 28 50 61 63 6b 61 67 65 49 ction.getFileIdentifier(PackageI
cae0 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 nterface.$package,.$path).{.retu
cb00 72 6e 20 6d 64 35 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e 20 27 3a 27 rn.md5($package->getName()...':'
cb20 20 2e 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 ...$path);.}..........protected.
cb40 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 50 61 63 6b 61 67 65 4d 61 70 28 61 72 72 61 79 20 24 70 function.sortPackageMap(array.$p
cb60 61 63 6b 61 67 65 4d 61 70 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 ackageMap).{.$packages.=.array()
cb80 3b 0a 24 70 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 75 73 61 67 65 4c 69 73 74 20 3d ;.$paths.=.array();.$usageList.=
cba0 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 4d 61 70 20 .array();..foreach.($packageMap.
cbc0 61 73 20 24 69 74 65 6d 29 20 7b 0a 6c 69 73 74 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 as.$item).{.list($package,.$path
cbe0 29 20 3d 20 24 69 74 65 6d 3b 0a 24 6e 61 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 ).=.$item;.$name.=.$package->get
cc00 4e 61 6d 65 28 29 3b 0a 24 70 61 63 6b 61 67 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 70 61 63 6b Name();.$packages[$name].=.$pack
cc20 61 67 65 3b 0a 24 70 61 74 68 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 70 61 74 68 3b 0a 0a 66 6f 72 age;.$paths[$name].=.$path;..for
cc40 65 61 63 68 20 28 61 72 72 61 79 5f 6d 65 72 67 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 each.(array_merge($package->getR
cc60 65 71 75 69 72 65 73 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 69 equires(),.$package->getDevRequi
cc80 72 65 73 28 29 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 74 61 72 67 65 74 20 3d 20 24 6c 69 res()).as.$link).{.$target.=.$li
cca0 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a 24 75 73 61 67 65 4c 69 73 74 5b 24 74 61 72 nk->getTarget();.$usageList[$tar
ccc0 67 65 74 5d 5b 5d 20 3d 20 24 6e 61 6d 65 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6d 70 75 74 69 6e 67 20 get][].=.$name;.}.}..$computing.
cce0 3d 20 61 72 72 61 79 28 29 3b 0a 24 63 6f 6d 70 75 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a =.array();.$computed.=.array();.
cd00 24 63 6f 6d 70 75 74 65 49 6d 70 6f 72 74 61 6e 63 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 $computeImportance.=.function.($
cd20 6e 61 6d 65 29 20 75 73 65 20 28 26 24 63 6f 6d 70 75 74 65 49 6d 70 6f 72 74 61 6e 63 65 2c 20 name).use.(&$computeImportance,.
cd40 26 24 63 6f 6d 70 75 74 69 6e 67 2c 20 26 24 63 6f 6d 70 75 74 65 64 2c 20 24 75 73 61 67 65 4c &$computing,.&$computed,.$usageL
cd60 69 73 74 29 20 7b 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 75 74 65 64 5b 24 6e 61 ist).{...if.(isset($computed[$na
cd80 6d 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 75 74 65 64 5b 24 6e 61 6d 65 5d 3b me])).{.return.$computed[$name];
cda0 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 75 74 69 6e 67 5b 24 6e 61 6d 65 .}....if.(isset($computing[$name
cdc0 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 24 63 6f 6d 70 75 74 69 6e 67 5b 24 6e ])).{.return.0;.}..$computing[$n
cde0 61 6d 65 5d 20 3d 20 74 72 75 65 3b 0a 24 77 65 69 67 68 74 20 3d 20 30 3b 0a 0a 69 66 20 28 69 ame].=.true;.$weight.=.0;..if.(i
ce00 73 73 65 74 28 24 75 73 61 67 65 4c 69 73 74 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 66 6f 72 65 61 sset($usageList[$name])).{.forea
ce20 63 68 20 28 24 75 73 61 67 65 4c 69 73 74 5b 24 6e 61 6d 65 5d 20 61 73 20 24 75 73 65 72 29 20 ch.($usageList[$name].as.$user).
ce40 7b 0a 24 77 65 69 67 68 74 20 2d 3d 20 31 20 2d 20 24 63 6f 6d 70 75 74 65 49 6d 70 6f 72 74 61 {.$weight.-=.1.-.$computeImporta
ce60 6e 63 65 28 24 75 73 65 72 29 3b 0a 7d 0a 7d 0a 0a 75 6e 73 65 74 28 24 63 6f 6d 70 75 74 69 6e nce($user);.}.}..unset($computin
ce80 67 5b 24 6e 61 6d 65 5d 29 3b 0a 24 63 6f 6d 70 75 74 65 64 5b 24 6e 61 6d 65 5d 20 3d 20 24 77 g[$name]);.$computed[$name].=.$w
cea0 65 69 67 68 74 3b 0a 0a 72 65 74 75 72 6e 20 24 77 65 69 67 68 74 3b 0a 7d 3b 0a 0a 24 77 65 69 eight;..return.$weight;.};..$wei
cec0 67 68 74 4c 69 73 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 ghtList.=.array();..foreach.($pa
cee0 63 6b 61 67 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 ckages.as.$name.=>.$package).{.$
cf00 77 65 69 67 68 74 20 3d 20 24 63 6f 6d 70 75 74 65 49 6d 70 6f 72 74 61 6e 63 65 28 24 6e 61 6d weight.=.$computeImportance($nam
cf20 65 29 3b 0a 24 77 65 69 67 68 74 4c 69 73 74 5b 24 6e 61 6d 65 5d 20 3d 20 24 77 65 69 67 68 74 e);.$weightList[$name].=.$weight
cf40 3b 0a 7d 0a 0a 24 73 74 61 62 6c 65 5f 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 ;.}..$stable_sort.=.function.(&$
cf60 61 72 72 61 79 29 20 7b 0a 73 74 61 74 69 63 20 24 74 72 61 6e 73 66 6f 72 6d 2c 20 24 72 65 73 array).{.static.$transform,.$res
cf80 74 6f 72 65 3b 0a 0a 24 69 20 3d 20 30 3b 0a 0a 69 66 20 28 21 24 74 72 61 6e 73 66 6f 72 6d 29 tore;..$i.=.0;..if.(!$transform)
cfa0 20 7b 0a 24 74 72 61 6e 73 66 6f 72 6d 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 76 2c 20 24 .{.$transform.=.function.(&$v,.$
cfc0 6b 29 20 75 73 65 20 28 26 24 69 29 20 7b 0a 24 76 20 3d 20 61 72 72 61 79 28 24 76 2c 20 2b 2b k).use.(&$i).{.$v.=.array($v,.++
cfe0 24 69 2c 20 24 6b 2c 20 24 76 29 3b 0a 7d 3b 0a 0a 24 72 65 73 74 6f 72 65 20 3d 20 66 75 6e 63 $i,.$k,.$v);.};..$restore.=.func
d000 74 69 6f 6e 20 28 26 24 76 2c 20 24 6b 29 20 7b 0a 24 76 20 3d 20 24 76 5b 33 5d 3b 0a 7d 3b 0a tion.(&$v,.$k).{.$v.=.$v[3];.};.
d020 7d 0a 0a 61 72 72 61 79 5f 77 61 6c 6b 28 24 61 72 72 61 79 2c 20 24 74 72 61 6e 73 66 6f 72 6d }..array_walk($array,.$transform
d040 29 3b 0a 61 73 6f 72 74 28 24 61 72 72 61 79 29 3b 0a 61 72 72 61 79 5f 77 61 6c 6b 28 24 61 72 );.asort($array);.array_walk($ar
d060 72 61 79 2c 20 24 72 65 73 74 6f 72 65 29 3b 0a 7d 3b 0a 0a 24 73 74 61 62 6c 65 5f 73 6f 72 74 ray,.$restore);.};..$stable_sort
d080 28 24 77 65 69 67 68 74 4c 69 73 74 29 3b 0a 0a 24 73 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 ($weightList);..$sortedPackageMa
d0a0 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6b 65 79 p.=.array();..foreach.(array_key
d0c0 73 28 24 77 65 69 67 68 74 4c 69 73 74 29 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 73 6f 72 74 s($weightList).as.$name).{.$sort
d0e0 65 64 50 61 63 6b 61 67 65 4d 61 70 5b 5d 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 73 edPackageMap[].=.array($packages
d100 5b 24 6e 61 6d 65 5d 2c 20 24 70 61 74 68 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 72 65 74 75 [$name],.$paths[$name]);.}..retu
d120 72 6e 20 24 73 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 rn.$sortedPackageMap;.}........p
d140 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 61 66 65 43 6f 70 79 28 24 73 6f 75 72 rotected.function.safeCopy($sour
d160 63 65 2c 20 24 74 61 72 67 65 74 29 0a 7b 0a 24 73 6f 75 72 63 65 20 3d 20 66 6f 70 65 6e 28 24 ce,.$target).{.$source.=.fopen($
d180 73 6f 75 72 63 65 2c 20 27 72 27 29 3b 0a 24 74 61 72 67 65 74 20 3d 20 66 6f 70 65 6e 28 24 74 source,.'r');.$target.=.fopen($t
d1a0 61 72 67 65 74 2c 20 27 77 2b 27 29 3b 0a 0a 73 74 72 65 61 6d 5f 63 6f 70 79 5f 74 6f 5f 73 74 arget,.'w+');..stream_copy_to_st
d1c0 72 65 61 6d 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 29 3b 0a 66 63 6c 6f 73 65 28 24 ream($source,.$target);.fclose($
d1e0 73 6f 75 72 63 65 29 3b 0a 66 63 6c 6f 73 65 28 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 3c 3f source);.fclose($target);.}.}.<?
d200 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 php..................namespace.C
d220 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 omposer\Autoload;..use.Symfony\C
d240 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 46 69 6e 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 omponent\Finder\Finder;.use.Comp
d260 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 oser\IO\IOInterface;........clas
d280 73 20 43 6c 61 73 73 4d 61 70 47 65 6e 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c s.ClassMapGenerator.{.......publ
d2a0 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 75 6d 70 28 24 64 69 72 73 2c 20 24 ic.static.function.dump($dirs,.$
d2c0 66 69 6c 65 29 0a 7b 0a 24 6d 61 70 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 file).{.$maps.=.array();..foreac
d2e0 68 20 28 24 64 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 24 6d 61 70 73 20 3d 20 61 72 72 61 h.($dirs.as.$dir).{.$maps.=.arra
d300 79 5f 6d 65 72 67 65 28 24 6d 61 70 73 2c 20 73 74 61 74 69 63 3a 3a 63 72 65 61 74 65 4d 61 70 y_merge($maps,.static::createMap
d320 28 24 64 69 72 29 29 3b 0a 7d 0a 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 ($dir));.}..file_put_contents($f
d340 69 6c 65 2c 20 73 70 72 69 6e 74 66 28 27 3c 3f 70 68 70 20 72 65 74 75 72 6e 20 25 73 3b 27 2c ile,.sprintf('<?php.return.%s;',
d360 20 76 61 72 5f 65 78 70 6f 72 74 28 24 6d 61 70 73 2c 20 74 72 75 65 29 29 29 3b 0a 7d 0a 0a 0a .var_export($maps,.true)));.}...
d380 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e ..........public.static.function
d3a0 20 63 72 65 61 74 65 4d 61 70 28 24 70 61 74 68 2c 20 24 62 6c 61 63 6b 6c 69 73 74 20 3d 20 6e .createMap($path,.$blacklist.=.n
d3c0 75 6c 6c 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d 20 6e 75 6c 6c 2c 20 24 6e 61 ull,.IOInterface.$io.=.null,.$na
d3e0 6d 65 73 70 61 63 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 mespace.=.null).{.if.(is_string(
d400 24 70 61 74 68 29 29 20 7b 0a 69 66 20 28 69 73 5f 66 69 6c 65 28 24 70 61 74 68 29 29 20 7b 0a $path)).{.if.(is_file($path)).{.
d420 24 70 61 74 68 20 3d 20 61 72 72 61 79 28 6e 65 77 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 28 24 $path.=.array(new.\SplFileInfo($
d440 70 61 74 68 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 64 69 72 28 24 70 61 74 68 29 29 path));.}.elseif.(is_dir($path))
d460 20 7b 0a 24 70 61 74 68 20 3d 20 46 69 6e 64 65 72 3a 3a 63 72 65 61 74 65 28 29 2d 3e 66 69 6c .{.$path.=.Finder::create()->fil
d480 65 73 28 29 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 28 29 2d 3e 6e 61 6d 65 28 27 2f 5c 2e 28 70 es()->followLinks()->name('/\.(p
d4a0 68 70 7c 69 6e 63 7c 68 68 29 24 2f 27 29 2d 3e 69 6e 28 24 70 61 74 68 29 3b 0a 7d 20 65 6c 73 hp|inc|hh)$/')->in($path);.}.els
d4c0 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 e.{.throw.new.\RuntimeException(
d4e0 0a 27 43 6f 75 6c 64 20 6e 6f 74 20 73 63 61 6e 20 66 6f 72 20 63 6c 61 73 73 65 73 20 69 6e 73 .'Could.not.scan.for.classes.ins
d500 69 64 65 20 22 27 2e 24 70 61 74 68 2e 0a 27 22 20 77 68 69 63 68 20 64 6f 65 73 20 6e 6f 74 20 ide."'.$path..'".which.does.not.
d520 61 70 70 65 61 72 20 74 6f 20 62 65 20 61 20 66 69 6c 65 20 6e 6f 72 20 61 20 66 6f 6c 64 65 72 appear.to.be.a.file.nor.a.folder
d540 27 0a 29 3b 0a 7d 0a 7d 0a 0a 24 6d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 '.);.}.}..$map.=.array();..forea
d560 63 68 20 28 24 70 61 74 68 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 66 69 6c 65 50 61 74 68 20 ch.($path.as.$file).{.$filePath.
d580 3d 20 24 66 69 6c 65 2d 3e 67 65 74 52 65 61 6c 50 61 74 68 28 29 3b 0a 0a 69 66 20 28 21 69 6e =.$file->getRealPath();..if.(!in
d5a0 5f 61 72 72 61 79 28 70 61 74 68 69 6e 66 6f 28 24 66 69 6c 65 50 61 74 68 2c 20 50 41 54 48 49 _array(pathinfo($filePath,.PATHI
d5c0 4e 46 4f 5f 45 58 54 45 4e 53 49 4f 4e 29 2c 20 61 72 72 61 79 28 27 70 68 70 27 2c 20 27 69 6e NFO_EXTENSION),.array('php',.'in
d5e0 63 27 2c 20 27 68 68 27 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 c',.'hh'))).{.continue;.}..if.($
d600 62 6c 61 63 6b 6c 69 73 74 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 24 62 6c 61 63 6b 6c 69 blacklist.&&.preg_match($blackli
d620 73 74 2c 20 73 74 72 74 72 28 24 66 69 6c 65 50 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 st,.strtr($filePath,.'\\',.'/'))
d640 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6c 61 73 73 65 73 20 3d 20 73 65 6c 66 ).{.continue;.}..$classes.=.self
d660 3a 3a 66 69 6e 64 43 6c 61 73 73 65 73 28 24 66 69 6c 65 50 61 74 68 29 3b 0a 0a 66 6f 72 65 61 ::findClasses($filePath);..forea
d680 63 68 20 28 24 63 6c 61 73 73 65 73 20 61 73 20 24 63 6c 61 73 73 29 20 7b 0a 0a 20 69 66 20 28 ch.($classes.as.$class).{...if.(
d6a0 6e 75 6c 6c 20 21 3d 3d 20 24 6e 61 6d 65 73 70 61 63 65 20 26 26 20 30 20 21 3d 3d 20 73 74 72 null.!==.$namespace.&&.0.!==.str
d6c0 70 6f 73 28 24 63 6c 61 73 73 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 29 20 7b 0a 63 6f 6e 74 69 pos($class,.$namespace)).{.conti
d6e0 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 6d 61 70 5b 24 63 6c 61 73 73 5d 29 nue;.}..if.(!isset($map[$class])
d700 29 20 7b 0a 24 6d 61 70 5b 24 63 6c 61 73 73 5d 20 3d 20 24 66 69 6c 65 50 61 74 68 3b 0a 7d 20 ).{.$map[$class].=.$filePath;.}.
d720 65 6c 73 65 69 66 20 28 24 69 6f 20 26 26 20 24 6d 61 70 5b 24 63 6c 61 73 73 5d 20 21 3d 3d 20 elseif.($io.&&.$map[$class].!==.
d740 24 66 69 6c 65 50 61 74 68 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 2f 28 74 65 73 $filePath.&&.!preg_match('{/(tes
d760 74 7c 66 69 78 74 75 72 65 7c 65 78 61 6d 70 6c 65 7c 73 74 75 62 29 73 3f 2f 7d 69 27 2c 20 73 t|fixture|example|stub)s?/}i',.s
d780 74 72 74 72 28 24 6d 61 70 5b 24 63 6c 61 73 73 5d 2e 27 20 27 2e 24 66 69 6c 65 50 61 74 68 2c trtr($map[$class].'.'.$filePath,
d7a0 20 27 5c 5c 27 2c 20 27 2f 27 29 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 .'\\',.'/'))).{.$io->writeError(
d7c0 0a 27 3c 77 61 72 6e 69 6e 67 3e 57 61 72 6e 69 6e 67 3a 20 41 6d 62 69 67 75 6f 75 73 20 63 6c .'<warning>Warning:.Ambiguous.cl
d7e0 61 73 73 20 72 65 73 6f 6c 75 74 69 6f 6e 2c 20 22 27 2e 24 63 6c 61 73 73 2e 27 22 27 2e 0a 27 ass.resolution,."'.$class.'"'..'
d800 20 77 61 73 20 66 6f 75 6e 64 20 69 6e 20 62 6f 74 68 20 22 27 2e 24 6d 61 70 5b 24 63 6c 61 73 .was.found.in.both."'.$map[$clas
d820 73 5d 2e 27 22 20 61 6e 64 20 22 27 2e 24 66 69 6c 65 50 61 74 68 2e 27 22 2c 20 74 68 65 20 66 s].'".and."'.$filePath.'",.the.f
d840 69 72 73 74 20 77 69 6c 6c 20 62 65 20 75 73 65 64 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 0a 29 3b irst.will.be.used.</warning>'.);
d860 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 .}.}.}..return.$map;.}.........p
d880 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 43 6c 61 73 73 rivate.static.function.findClass
d8a0 65 73 28 24 70 61 74 68 29 0a 7b 0a 24 65 78 74 72 61 54 79 70 65 73 20 3d 20 50 48 50 5f 56 45 es($path).{.$extraTypes.=.PHP_VE
d8c0 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 34 30 30 20 3f 20 27 27 20 3a 20 27 7c 74 72 61 69 74 27 RSION_ID.<.50400.?.''.:.'|trait'
d8e0 3b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 20 26 26 ;.if.(defined('HHVM_VERSION').&&
d900 20 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 48 48 56 4d 5f 56 45 52 53 49 4f 4e 2c 20 27 .version_compare(HHVM_VERSION,.'
d920 33 2e 33 27 2c 20 27 3e 3d 27 29 29 20 7b 0a 24 65 78 74 72 61 54 79 70 65 73 20 2e 3d 20 27 7c 3.3',.'>=')).{.$extraTypes..=.'|
d940 65 6e 75 6d 27 3b 0a 7d 0a 0a 0a 20 0a 20 24 63 6f 6e 74 65 6e 74 73 20 3d 20 40 70 68 70 5f 73 enum';.}......$contents.=.@php_s
d960 74 72 69 70 5f 77 68 69 74 65 73 70 61 63 65 28 24 70 61 74 68 29 3b 0a 69 66 20 28 21 24 63 6f trip_whitespace($path);.if.(!$co
d980 6e 74 65 6e 74 73 29 20 7b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 70 61 74 68 ntents).{.if.(!file_exists($path
d9a0 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 46 69 6c 65 20 61 74 20 22 25 73 22 20 64 6f )).{.$message.=.'File.at."%s".do
d9c0 65 73 20 6e 6f 74 20 65 78 69 73 74 2c 20 63 68 65 63 6b 20 79 6f 75 72 20 63 6c 61 73 73 6d 61 es.not.exist,.check.your.classma
d9e0 70 20 64 65 66 69 6e 69 74 69 6f 6e 73 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 72 65 p.definitions';.}.elseif.(!is_re
da00 61 64 61 62 6c 65 28 24 70 61 74 68 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 46 69 6c adable($path)).{.$message.=.'Fil
da20 65 20 61 74 20 22 25 73 22 20 69 73 20 6e 6f 74 20 72 65 61 64 61 62 6c 65 2c 20 63 68 65 63 6b e.at."%s".is.not.readable,.check
da40 20 69 74 73 20 70 65 72 6d 69 73 73 69 6f 6e 73 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 27 20 .its.permissions';.}.elseif.(''.
da60 3d 3d 3d 20 74 72 69 6d 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 70 61 74 68 ===.trim(file_get_contents($path
da80 29 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 20 7b ))).{...return.array();.}.else.{
daa0 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 46 69 6c 65 20 61 74 20 22 25 73 22 20 63 6f 75 6c 64 20 .$message.=.'File.at."%s".could.
dac0 6e 6f 74 20 62 65 20 70 61 72 73 65 64 20 61 73 20 50 48 50 2c 20 69 74 20 6d 61 79 20 62 65 20 not.be.parsed.as.PHP,.it.may.be.
dae0 62 69 6e 61 72 79 20 6f 72 20 63 6f 72 72 75 70 74 65 64 27 3b 0a 7d 0a 24 65 72 72 6f 72 20 3d binary.or.corrupted';.}.$error.=
db00 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 74 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 65 72 .error_get_last();.if.(isset($er
db20 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 50 ror['message'])).{.$message..=.P
db40 48 50 5f 45 4f 4c 20 2e 20 27 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6d 65 73 73 61 67 65 20 HP_EOL...'The.following.message.
db60 6d 61 79 20 62 65 20 68 65 6c 70 66 75 6c 3a 27 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 24 65 72 may.be.helpful:'...PHP_EOL...$er
db80 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 3b 0a 7d 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e ror['message'];.}.throw.new.\Run
dba0 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 24 6d 65 73 73 61 67 65 2c 20 timeException(sprintf($message,.
dbc0 24 70 61 74 68 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b $path));.}....if.(!preg_match('{
dbe0 5c 62 28 3f 3a 63 6c 61 73 73 7c 69 6e 74 65 72 66 61 63 65 27 2e 24 65 78 74 72 61 54 79 70 65 \b(?:class|interface'.$extraType
dc00 73 2e 27 29 5c 73 7d 69 27 2c 20 24 63 6f 6e 74 65 6e 74 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 s.')\s}i',.$contents)).{.return.
dc20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 20 24 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 array();.}....$contents.=.preg_r
dc40 65 70 6c 61 63 65 28 27 7b 3c 3c 3c 5c 73 2a 28 5c 27 3f 29 28 5c 77 2b 29 5c 5c 31 28 3f 3a 5c eplace('{<<<\s*(\'?)(\w+)\\1(?:\
dc60 72 5c 6e 7c 5c 6e 7c 5c 72 29 28 3f 3a 2e 2a 3f 29 28 3f 3a 5c 72 5c 6e 7c 5c 6e 7c 5c 72 29 5c r\n|\n|\r)(?:.*?)(?:\r\n|\n|\r)\
dc80 5c 32 28 3f 3d 5c 72 5c 6e 7c 5c 6e 7c 5c 72 7c 3b 29 7d 73 27 2c 20 27 6e 75 6c 6c 27 2c 20 24 \2(?=\r\n|\n|\r|;)}s',.'null',.$
dca0 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 20 24 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 contents);...$contents.=.preg_re
dcc0 70 6c 61 63 65 28 27 7b 22 5b 5e 22 5c 5c 5c 5c 5d 2a 2b 28 5c 5c 5c 5c 2e 5b 5e 22 5c 5c 5c 5c place('{"[^"\\\\]*+(\\\\.[^"\\\\
dce0 5d 2a 2b 29 2a 2b 22 7c 5c 27 5b 5e 5c 27 5c 5c 5c 5c 5d 2a 2b 28 5c 5c 5c 5c 2e 5b 5e 5c 27 5c ]*+)*+"|\'[^\'\\\\]*+(\\\\.[^\'\
dd00 5c 5c 5c 5d 2a 2b 29 2a 2b 5c 27 7d 73 27 2c 20 27 6e 75 6c 6c 27 2c 20 24 63 6f 6e 74 65 6e 74 \\\]*+)*+\'}s',.'null',.$content
dd20 73 29 3b 0a 0a 20 69 66 20 28 73 75 62 73 74 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 30 2c 20 32 s);...if.(substr($contents,.0,.2
dd40 29 20 21 3d 3d 20 27 3c 3f 27 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 ).!==.'<?').{.$contents.=.preg_r
dd60 65 70 6c 61 63 65 28 27 7b 5e 2e 2b 3f 3c 5c 3f 7d 73 27 2c 20 27 3c 3f 27 2c 20 24 63 6f 6e 74 eplace('{^.+?<\?}s',.'<?',.$cont
dd80 65 6e 74 73 2c 20 31 2c 20 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 29 3b 0a 69 66 20 28 24 72 65 ents,.1,.$replacements);.if.($re
dda0 70 6c 61 63 65 6d 65 6e 74 73 20 3d 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 placements.===.0).{.return.array
ddc0 28 29 3b 0a 7d 0a 7d 0a 0a 20 24 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 ();.}.}...$contents.=.preg_repla
dde0 63 65 28 27 7b 5c 3f 3e 2e 2b 3c 5c 3f 7d 73 27 2c 20 27 3f 3e 3c 3f 27 2c 20 24 63 6f 6e 74 65 ce('{\?>.+<\?}s',.'?><?',.$conte
de00 6e 74 73 29 3b 0a 0a 20 24 70 6f 73 20 3d 20 73 74 72 72 70 6f 73 28 24 63 6f 6e 74 65 6e 74 73 nts);...$pos.=.strrpos($contents
de20 2c 20 27 3f 3e 27 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 26 26 20 66 ,.'?>');.if.(false.!==.$pos.&&.f
de40 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 73 75 62 73 74 72 28 24 63 6f 6e 74 65 6e 74 73 alse.===.strpos(substr($contents
de60 2c 20 24 70 6f 73 29 2c 20 27 3c 3f 27 29 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 73 75 ,.$pos),.'<?')).{.$contents.=.su
de80 62 73 74 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 30 2c 20 24 70 6f 73 29 3b 0a 7d 0a 0a 70 72 65 bstr($contents,.0,.$pos);.}..pre
dea0 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 27 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 3f 3a 0a 20 g_match_all('{.............(?:..
dec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5c 62 28 3f 3c 21 5b 5c 24 3a 3e 5d 29 28 3f 50 ................\b(?<![\$:>])(?P
dee0 3c 74 79 70 65 3e 63 6c 61 73 73 7c 69 6e 74 65 72 66 61 63 65 27 2e 24 65 78 74 72 61 54 79 70 <type>class|interface'.$extraTyp
df00 65 73 2e 27 29 20 5c 73 2b 2b 20 28 3f 50 3c 6e 61 6d 65 3e 5b 61 2d 7a 41 2d 5a 5f 5c 78 37 66 es.').\s++.(?P<name>[a-zA-Z_\x7f
df20 2d 5c 78 66 66 3a 5d 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 5c 78 37 66 2d 5c 78 66 66 3a 5c 2d 5d 2a -\xff:][a-zA-Z0-9_\x7f-\xff:\-]*
df40 2b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 5c 62 28 3f 3c 21 5b 5c 24 3a 3e 5d +)................|.\b(?<![\$:>]
df60 29 28 3f 50 3c 6e 73 3e 6e 61 6d 65 73 70 61 63 65 29 20 28 3f 50 3c 6e 73 6e 61 6d 65 3e 5c 73 )(?P<ns>namespace).(?P<nsname>\s
df80 2b 2b 5b 61 2d 7a 41 2d 5a 5f 5c 78 37 66 2d 5c 78 66 66 5d 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 5c ++[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\
dfa0 78 37 66 2d 5c 78 66 66 5d 2a 2b 28 3f 3a 5c 73 2a 2b 5c 5c 5c 5c 5c 73 2a 2b 5b 61 2d 7a 41 2d x7f-\xff]*+(?:\s*+\\\\\s*+[a-zA-
dfc0 5a 5f 5c 78 37 66 2d 5c 78 66 66 5d 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 5c 78 37 66 2d 5c 78 66 66 Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff
dfe0 5d 2a 2b 29 2a 2b 29 3f 20 5c 73 2a 2b 20 5b 5c 7b 3b 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ]*+)*+)?.\s*+.[\{;].............
e000 29 0a 20 20 20 20 20 20 20 20 7d 69 78 27 2c 20 24 63 6f 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 ).........}ix',.$contents,.$matc
e020 68 65 73 29 3b 0a 0a 24 63 6c 61 73 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6e 61 6d 65 hes);..$classes.=.array();.$name
e040 73 70 61 63 65 20 3d 20 27 27 3b 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 6c 65 6e 20 3d space.=.'';..for.($i.=.0,.$len.=
e060 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 65 73 5b 27 74 79 70 65 27 5d 29 3b 20 24 69 20 3c 20 24 .count($matches['type']);.$i.<.$
e080 6c 65 6e 3b 20 24 69 2b 2b 29 20 7b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 len;.$i++).{.if.(!empty($matches
e0a0 5b 27 6e 73 27 5d 5b 24 69 5d 29 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 73 74 72 5f ['ns'][$i])).{.$namespace.=.str_
e0c0 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 20 27 2c 20 22 5c 74 22 2c 20 22 5c 72 22 2c 20 22 replace(array('.',."\t",."\r",."
e0e0 5c 6e 22 29 2c 20 27 27 2c 20 24 6d 61 74 63 68 65 73 5b 27 6e 73 6e 61 6d 65 27 5d 5b 24 69 5d \n"),.'',.$matches['nsname'][$i]
e100 29 20 2e 20 27 5c 5c 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 6d 61 74 63 )...'\\';.}.else.{.$name.=.$matc
e120 68 65 73 5b 27 6e 61 6d 65 27 5d 5b 24 69 5d 3b 0a 69 66 20 28 24 6e 61 6d 65 5b 30 5d 20 3d 3d hes['name'][$i];.if.($name[0].==
e140 3d 20 27 3a 27 29 20 7b 0a 0a 20 24 6e 61 6d 65 20 3d 20 27 78 68 70 27 2e 73 75 62 73 74 72 28 =.':').{...$name.=.'xhp'.substr(
e160 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 2d 27 2c 20 27 3a 27 29 2c 20 61 72 72 str_replace(array('-',.':'),.arr
e180 61 79 28 27 5f 27 2c 20 27 5f 5f 27 29 2c 20 24 6e 61 6d 65 29 2c 20 31 29 3b 0a 7d 20 65 6c 73 ay('_',.'__'),.$name),.1);.}.els
e1a0 65 69 66 20 28 24 6d 61 74 63 68 65 73 5b 27 74 79 70 65 27 5d 5b 24 69 5d 20 3d 3d 3d 20 27 65 eif.($matches['type'][$i].===.'e
e1c0 6e 75 6d 27 29 20 7b 0a 0a 20 0a 20 0a 20 0a 20 24 6e 61 6d 65 20 3d 20 72 74 72 69 6d 28 24 6e num').{.........$name.=.rtrim($n
e1e0 61 6d 65 2c 20 27 3a 27 29 3b 0a 7d 0a 24 63 6c 61 73 73 65 73 5b 5d 20 3d 20 6c 74 72 69 6d 28 ame,.':');.}.$classes[].=.ltrim(
e200 24 6e 61 6d 65 73 70 61 63 65 20 2e 20 24 6e 61 6d 65 2c 20 27 5c 5c 27 29 3b 0a 7d 0a 7d 0a 0a $namespace...$name,.'\\');.}.}..
e220 72 65 74 75 72 6e 20 24 63 6c 61 73 73 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a return.$classes;.}.}.<?php......
e240 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a 0a 75 73 65 20 43 ......namespace.Composer;..use.C
e260 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 omposer\IO\IOInterface;.use.Comp
e280 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 oser\Util\Filesystem;.use.Compos
e2a0 65 72 5c 55 74 69 6c 5c 53 69 6c 65 6e 63 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f er\Util\Silencer;.use.Symfony\Co
e2c0 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 mponent\Finder\Finder;.......cla
e2e0 73 73 20 43 61 63 68 65 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 63 61 63 68 65 ss.Cache.{.private.static.$cache
e300 43 6f 6c 6c 65 63 74 65 64 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a Collected.=.false;.private.$io;.
e320 70 72 69 76 61 74 65 20 24 72 6f 6f 74 3b 0a 70 72 69 76 61 74 65 20 24 65 6e 61 62 6c 65 64 20 private.$root;.private.$enabled.
e340 3d 20 74 72 75 65 3b 0a 70 72 69 76 61 74 65 20 24 77 68 69 74 65 6c 69 73 74 3b 0a 70 72 69 76 =.true;.private.$whitelist;.priv
e360 61 74 65 20 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ate.$filesystem;........public.f
e380 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 unction.__construct(IOInterface.
e3a0 24 69 6f 2c 20 24 63 61 63 68 65 44 69 72 2c 20 24 77 68 69 74 65 6c 69 73 74 20 3d 20 27 61 2d $io,.$cacheDir,.$whitelist.=.'a-
e3c0 7a 30 2d 39 2e 27 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 65 6d 20 3d z0-9.',.Filesystem.$filesystem.=
e3e0 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d .null).{.$this->io.=.$io;.$this-
e400 3e 72 6f 6f 74 20 3d 20 72 74 72 69 6d 28 24 63 61 63 68 65 44 69 72 2c 20 27 2f 5c 5c 27 29 20 >root.=.rtrim($cacheDir,.'/\\').
e420 2e 20 27 2f 27 3b 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 20 3d 20 24 77 68 69 74 65 ..'/';.$this->whitelist.=.$white
e440 6c 69 73 74 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 69 6c 65 73 list;.$this->filesystem.=.$files
e460 79 73 74 65 6d 20 3f 3a 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 0a 69 66 20 28 ystem.?:.new.Filesystem();..if.(
e480 0a 28 21 69 73 5f 64 69 72 28 24 74 68 69 73 2d 3e 72 6f 6f 74 29 20 26 26 20 21 53 69 6c 65 6e .(!is_dir($this->root).&&.!Silen
e4a0 63 65 72 3a 3a 63 61 6c 6c 28 27 6d 6b 64 69 72 27 2c 20 24 74 68 69 73 2d 3e 72 6f 6f 74 2c 20 cer::call('mkdir',.$this->root,.
e4c0 30 37 37 37 2c 20 74 72 75 65 29 29 0a 7c 7c 20 21 69 73 5f 77 72 69 74 61 62 6c 65 28 24 74 68 0777,.true)).||.!is_writable($th
e4e0 69 73 2d 3e 72 6f 6f 74 29 0a 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 is->root).).{.$this->io->writeEr
e500 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 43 61 6e 6e 6f 74 20 63 72 65 61 74 65 20 63 61 63 68 ror('<warning>Cannot.create.cach
e520 65 20 64 69 72 65 63 74 6f 72 79 20 27 20 2e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 27 2c e.directory.'...$this->root...',
e540 20 6f 72 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 6e 6f 74 20 77 72 69 74 61 62 6c 65 2e 20 50 .or.directory.is.not.writable..P
e560 72 6f 63 65 65 64 69 6e 67 20 77 69 74 68 6f 75 74 20 63 61 63 68 65 3c 2f 77 61 72 6e 69 6e 67 roceeding.without.cache</warning
e580 3e 27 29 3b 0a 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d >');.$this->enabled.=.false;.}.}
e5a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 45 6e 61 62 6c 65 64 28 29 0a 7b 0a ..public.function.isEnabled().{.
e5c0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 return.$this->enabled;.}..public
e5e0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 .function.getRoot().{.return.$th
e600 69 73 2d 3e 72 6f 6f 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 is->root;.}..public.function.rea
e620 64 28 24 66 69 6c 65 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 d($file).{.$file.=.preg_replace(
e640 27 7b 5b 5e 27 2e 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 2e 27 5d 7d 69 27 2c 20 27 2d '{[^'.$this->whitelist.']}i',.'-
e660 27 2c 20 24 66 69 6c 65 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 20 26 26 ',.$file);.if.($this->enabled.&&
e680 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 .file_exists($this->root...$file
e6a0 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 52 65 61 64 )).{.$this->io->writeError('Read
e6c0 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 2e 27 20 66 72 6f 6d ing.'.$this->root...$file.'.from
e6e0 20 63 61 63 68 65 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 .cache',.true,.IOInterface::DEBU
e700 47 29 3b 0a 0a 72 65 74 75 72 6e 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 G);..return.file_get_contents($t
e720 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 his->root...$file);.}..return.fa
e740 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 66 lse;.}..public.function.write($f
e760 69 6c 65 2c 20 24 63 6f 6e 74 65 6e 74 73 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 61 ile,.$contents).{.if.($this->ena
e780 62 6c 65 64 29 20 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b bled).{.$file.=.preg_replace('{[
e7a0 5e 27 2e 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 2e 27 5d 7d 69 27 2c 20 27 2d 27 2c 20 ^'.$this->whitelist.']}i',.'-',.
e7c0 24 66 69 6c 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 $file);..$this->io->writeError('
e7e0 57 72 69 74 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 2e 27 20 Writing.'.$this->root...$file.'.
e800 69 6e 74 6f 20 63 61 63 68 65 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a into.cache',.true,.IOInterface::
e820 44 45 42 55 47 29 3b 0a 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 66 69 6c 65 5f 70 75 74 5f 63 DEBUG);..try.{.return.file_put_c
e840 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 2c 20 24 63 6f ontents($this->root...$file,.$co
e860 6e 74 65 6e 74 73 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 72 72 6f 72 45 78 63 65 70 74 69 6f ntents);.}.catch.(\ErrorExceptio
e880 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c n.$e).{.$this->io->writeError('<
e8a0 77 61 72 6e 69 6e 67 3e 46 61 69 6c 65 64 20 74 6f 20 77 72 69 74 65 20 69 6e 74 6f 20 63 61 63 warning>Failed.to.write.into.cac
e8c0 68 65 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 77 61 72 6e 69 6e he:.'.$e->getMessage().'</warnin
e8e0 67 3e 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a g>',.true,.IOInterface::DEBUG);.
e900 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 if.(preg_match('{^file_put_conte
e920 6e 74 73 5c 28 5c 29 3a 20 4f 6e 6c 79 20 28 5b 30 2d 39 5d 2b 29 20 6f 66 20 28 5b 30 2d 39 5d nts\(\):.Only.([0-9]+).of.([0-9]
e940 2b 29 20 62 79 74 65 73 20 77 72 69 74 74 65 6e 7d 27 2c 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 +).bytes.written}',.$e->getMessa
e960 67 65 28 29 2c 20 24 6d 29 29 20 7b 0a 0a 20 75 6e 6c 69 6e 6b 28 24 74 68 69 73 2d 3e 72 6f 6f ge(),.$m)).{...unlink($this->roo
e980 74 20 2e 20 24 66 69 6c 65 29 3b 0a 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 t...$file);..$message.=.sprintf(
e9a0 0a 27 3c 77 61 72 6e 69 6e 67 3e 57 72 69 74 69 6e 67 20 25 31 24 73 20 69 6e 74 6f 20 63 61 63 .'<warning>Writing.%1$s.into.cac
e9c0 68 65 20 66 61 69 6c 65 64 20 61 66 74 65 72 20 25 32 24 75 20 6f 66 20 25 33 24 75 20 62 79 74 he.failed.after.%2$u.of.%3$u.byt
e9e0 65 73 20 77 72 69 74 74 65 6e 2c 20 6f 6e 6c 79 20 25 34 24 75 20 62 79 74 65 73 20 6f 66 20 66 es.written,.only.%4$u.bytes.of.f
ea00 72 65 65 20 73 70 61 63 65 20 61 76 61 69 6c 61 62 6c 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 2c 0a ree.space.available</warning>',.
ea20 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 2c 0a 24 6d 5b 31 5d 2c 0a 24 6d 5b 32 $this->root...$file,.$m[1],.$m[2
ea40 5d 2c 0a 40 64 69 73 6b 5f 66 72 65 65 5f 73 70 61 63 65 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 ],.@disk_free_space($this->root.
ea60 2e 20 64 69 72 6e 61 6d 65 28 24 66 69 6c 65 29 29 0a 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d ..dirname($file)).);..$this->io-
ea80 3e 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 72 65 74 75 72 6e 20 66 >writeError($message);..return.f
eaa0 61 6c 73 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 alse;.}..throw.$e;.}.}..return.f
eac0 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 alse;.}.....public.function.copy
eae0 46 72 6f 6d 28 24 66 69 6c 65 2c 20 24 73 6f 75 72 63 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 From($file,.$source).{.if.($this
eb00 2d 3e 65 6e 61 62 6c 65 64 29 20 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 ->enabled).{.$file.=.preg_replac
eb20 65 28 27 7b 5b 5e 27 2e 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 2e 27 5d 7d 69 27 2c 20 e('{[^'.$this->whitelist.']}i',.
eb40 27 2d 27 2c 20 24 66 69 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e '-',.$file);.$this->filesystem->
eb60 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 64 69 72 6e 61 6d 65 28 24 74 ensureDirectoryExists(dirname($t
eb80 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 29 3b 0a 0a 69 66 20 28 21 66 69 6c 65 5f his->root...$file));..if.(!file_
eba0 65 78 69 73 74 73 28 24 73 6f 75 72 63 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 exists($source)).{.$this->io->wr
ebc0 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 27 2e 24 73 6f 75 72 63 65 2e 27 20 64 6f 65 iteError('<error>'.$source.'.doe
ebe0 73 20 6e 6f 74 20 65 78 69 73 74 2c 20 63 61 6e 20 6e 6f 74 20 77 72 69 74 65 20 69 6e 74 6f 20 s.not.exist,.can.not.write.into.
ec00 63 61 63 68 65 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 cache</error>');.}.elseif.($this
ec20 2d 3e 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 ->io->isDebug()).{.$this->io->wr
ec40 69 74 65 45 72 72 6f 72 28 27 57 72 69 74 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 72 6f 6f 74 20 iteError('Writing.'.$this->root.
ec60 2e 20 24 66 69 6c 65 2e 27 20 69 6e 74 6f 20 63 61 63 68 65 20 66 72 6f 6d 20 27 2e 24 73 6f 75 ..$file.'.into.cache.from.'.$sou
ec80 72 63 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 63 6f 70 79 28 24 73 6f 75 72 63 65 2c 20 24 74 rce);.}..return.copy($source,.$t
eca0 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 his->root...$file);.}..return.fa
ecc0 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 54 lse;.}.....public.function.copyT
ece0 6f 28 24 66 69 6c 65 2c 20 24 74 61 72 67 65 74 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 o($file,.$target).{.$file.=.preg
ed00 5f 72 65 70 6c 61 63 65 28 27 7b 5b 5e 27 2e 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 2e _replace('{[^'.$this->whitelist.
ed20 27 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 66 69 6c 65 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 ']}i',.'-',.$file);.if.($this->e
ed40 6e 61 62 6c 65 64 20 26 26 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f nabled.&&.file_exists($this->roo
ed60 74 20 2e 20 24 66 69 6c 65 29 29 20 7b 0a 74 72 79 20 7b 0a 74 6f 75 63 68 28 24 74 68 69 73 2d t...$file)).{.try.{.touch($this-
ed80 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 2c 20 66 69 6c 65 6d 74 69 6d 65 28 24 74 68 69 73 2d 3e >root...$file,.filemtime($this->
eda0 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 2c 20 74 69 6d 65 28 29 29 3b 0a 7d 20 63 61 74 63 68 20 root...$file),.time());.}.catch.
edc0 28 5c 45 72 72 6f 72 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 0a 20 53 69 6c 65 6e (\ErrorException.$e).{.....Silen
ede0 63 65 72 3a 3a 63 61 6c 6c 28 27 74 6f 75 63 68 27 2c 20 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e cer::call('touch',.$this->root..
ee00 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f .$file);.}..$this->io->writeErro
ee20 72 28 27 52 65 61 64 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 r('Reading.'.$this->root...$file
ee40 2e 27 20 66 72 6f 6d 20 63 61 63 68 65 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 .'.from.cache',.true,.IOInterfac
ee60 65 3a 3a 44 45 42 55 47 29 3b 0a 0a 72 65 74 75 72 6e 20 63 6f 70 79 28 24 74 68 69 73 2d 3e 72 e::DEBUG);..return.copy($this->r
ee80 6f 6f 74 20 2e 20 24 66 69 6c 65 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e oot...$file,.$target);.}..return
eea0 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 63 49 73 4e .false;.}..public.function.gcIsN
eec0 65 63 65 73 73 61 72 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 21 73 65 6c 66 3a 3a 24 63 61 63 ecessary().{.return.(!self::$cac
eee0 68 65 43 6f 6c 6c 65 63 74 65 64 20 26 26 20 21 6d 74 5f 72 61 6e 64 28 30 2c 20 35 30 29 29 3b heCollected.&&.!mt_rand(0,.50));
ef00 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 24 66 69 6c 65 .}..public.function.remove($file
ef20 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 5e 27 2e 24 ).{.$file.=.preg_replace('{[^'.$
ef40 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 2e 27 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 66 69 6c this->whitelist.']}i',.'-',.$fil
ef60 65 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 20 26 26 20 66 69 6c 65 5f 65 e);.if.($this->enabled.&&.file_e
ef80 78 69 73 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 29 20 7b 0a 72 65 xists($this->root...$file)).{.re
efa0 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 75 6e 6c 69 6e 6b 28 24 turn.$this->filesystem->unlink($
efc0 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 this->root...$file);.}..return.f
efe0 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 63 28 24 74 74 6c alse;.}..public.function.gc($ttl
f000 2c 20 24 6d 61 78 53 69 7a 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 ,.$maxSize).{.if.($this->enabled
f020 29 20 7b 0a 24 65 78 70 69 72 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 29 3b 0a 24 ).{.$expire.=.new.\DateTime();.$
f040 65 78 70 69 72 65 2d 3e 6d 6f 64 69 66 79 28 27 2d 27 2e 24 74 74 6c 2e 27 20 73 65 63 6f 6e 64 expire->modify('-'.$ttl.'.second
f060 73 27 29 3b 0a 0a 24 66 69 6e 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 69 6e 64 65 72 s');..$finder.=.$this->getFinder
f080 28 29 2d 3e 64 61 74 65 28 27 75 6e 74 69 6c 20 27 2e 24 65 78 70 69 72 65 2d 3e 66 6f 72 6d 61 ()->date('until.'.$expire->forma
f0a0 74 28 27 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6e t('Y-m-d.H:i:s'));.foreach.($fin
f0c0 64 65 72 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 der.as.$file).{.$this->filesyste
f0e0 6d 2d 3e 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 29 3b m->unlink($file->getPathname());
f100 0a 7d 0a 0a 24 74 6f 74 61 6c 53 69 7a 65 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 .}..$totalSize.=.$this->filesyst
f120 65 6d 2d 3e 73 69 7a 65 28 24 74 68 69 73 2d 3e 72 6f 6f 74 29 3b 0a 69 66 20 28 24 74 6f 74 61 em->size($this->root);.if.($tota
f140 6c 53 69 7a 65 20 3e 20 24 6d 61 78 53 69 7a 65 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 lSize.>.$maxSize).{.$iterator.=.
f160 24 74 68 69 73 2d 3e 67 65 74 46 69 6e 64 65 72 28 29 2d 3e 73 6f 72 74 42 79 41 63 63 65 73 73 $this->getFinder()->sortByAccess
f180 65 64 54 69 6d 65 28 29 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 3b 0a 77 68 69 6c 65 20 28 edTime()->getIterator();.while.(
f1a0 24 74 6f 74 61 6c 53 69 7a 65 20 3e 20 24 6d 61 78 53 69 7a 65 20 26 26 20 24 69 74 65 72 61 74 $totalSize.>.$maxSize.&&.$iterat
f1c0 6f 72 2d 3e 76 61 6c 69 64 28 29 29 20 7b 0a 24 66 69 6c 65 70 61 74 68 20 3d 20 24 69 74 65 72 or->valid()).{.$filepath.=.$iter
f1e0 61 74 6f 72 2d 3e 63 75 72 72 65 6e 74 28 29 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 3b 0a ator->current()->getPathname();.
f200 24 74 6f 74 61 6c 53 69 7a 65 20 2d 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d $totalSize.-=.$this->filesystem-
f220 3e 73 69 7a 65 28 24 66 69 6c 65 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 >size($filepath);.$this->filesys
f240 74 65 6d 2d 3e 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 70 61 74 68 29 3b 0a 24 69 74 65 72 61 74 6f tem->unlink($filepath);.$iterato
f260 72 2d 3e 6e 65 78 74 28 29 3b 0a 7d 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 63 61 63 68 65 43 6f 6c 6c r->next();.}.}..self::$cacheColl
f280 65 63 74 65 64 20 3d 20 74 72 75 65 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 ected.=.true;..return.true;.}..r
f2a0 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 eturn.false;.}..public.function.
f2c0 73 68 61 31 28 24 66 69 6c 65 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 sha1($file).{.$file.=.preg_repla
f2e0 63 65 28 27 7b 5b 5e 27 2e 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 2e 27 5d 7d 69 27 2c ce('{[^'.$this->whitelist.']}i',
f300 20 27 2d 27 2c 20 24 66 69 6c 65 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 .'-',.$file);.if.($this->enabled
f320 20 26 26 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 .&&.file_exists($this->root...$f
f340 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 68 61 31 5f 66 69 6c 65 28 24 74 68 69 73 2d 3e ile)).{.return.sha1_file($this->
f360 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a root...$file);.}..return.false;.
f380 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 68 61 32 35 36 28 24 66 69 6c 65 29 }..public.function.sha256($file)
f3a0 0a 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 5e 27 2e 24 74 .{.$file.=.preg_replace('{[^'.$t
f3c0 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 2e 27 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 66 69 6c 65 his->whitelist.']}i',.'-',.$file
f3e0 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 20 26 26 20 66 69 6c 65 5f 65 78 );.if.($this->enabled.&&.file_ex
f400 69 73 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 29 20 7b 0a 72 65 74 ists($this->root...$file)).{.ret
f420 75 72 6e 20 68 61 73 68 5f 66 69 6c 65 28 27 73 68 61 32 35 36 27 2c 20 24 74 68 69 73 2d 3e 72 urn.hash_file('sha256',.$this->r
f440 6f 6f 74 20 2e 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d oot...$file);.}..return.false;.}
f460 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6e 64 65 72 28 29 ..protected.function.getFinder()
f480 0a 7b 0a 72 65 74 75 72 6e 20 46 69 6e 64 65 72 3a 3a 63 72 65 61 74 65 28 29 2d 3e 69 6e 28 24 .{.return.Finder::create()->in($
f4a0 74 68 69 73 2d 3e 72 6f 6f 74 29 2d 3e 66 69 6c 65 73 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a this->root)->files();.}.}.<?php.
f4c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f ...........namespace.Composer\Co
f4e0 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f mmand;..use.Symfony\Component\Co
f500 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 nsole\Input\InputInterface;.use.
f520 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 Symfony\Component\Console\Output
f540 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 62 6f 75 \OutputInterface;.....class.Abou
f560 74 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 tCommand.extends.BaseCommand.{.p
f580 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a rotected.function.configure().{.
f5a0 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 61 62 6f 75 74 27 29 0a 2d 3e 73 65 74 44 65 $this.->setName('about').->setDe
f5c0 73 63 72 69 70 74 69 6f 6e 28 27 53 68 6f 72 74 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f scription('Short.information.abo
f5e0 75 74 20 43 6f 6d 70 6f 73 65 72 27 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 3c ut.Composer').->setHelp(<<<EOT.<
f600 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 61 62 6f 75 74 3c 2f 69 6e info>php.composer.phar.about</in
f620 66 6f 3e 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f fo>.EOT.).;.}..protected.functio
f640 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c n.execute(InputInterface.$input,
f660 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 .OutputInterface.$output).{.$thi
f680 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 28 3c 3c 3c 45 4f 54 0a 3c 69 6e 66 6f 3e 43 s->getIO()->write(<<<EOT.<info>C
f6a0 6f 6d 70 6f 73 65 72 20 2d 20 50 61 63 6b 61 67 65 20 4d 61 6e 61 67 65 6d 65 6e 74 20 66 6f 72 omposer.-.Package.Management.for
f6c0 20 50 48 50 3c 2f 69 6e 66 6f 3e 0a 3c 63 6f 6d 6d 65 6e 74 3e 43 6f 6d 70 6f 73 65 72 20 69 73 .PHP</info>.<comment>Composer.is
f6e0 20 61 20 64 65 70 65 6e 64 65 6e 63 79 20 6d 61 6e 61 67 65 72 20 74 72 61 63 6b 69 6e 67 20 6c .a.dependency.manager.tracking.l
f700 6f 63 61 6c 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 6f 66 20 79 6f 75 72 20 70 72 6f 6a 65 63 ocal.dependencies.of.your.projec
f720 74 73 20 61 6e 64 20 6c 69 62 72 61 72 69 65 73 2e 0a 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 ts.and.libraries..See.https://ge
f740 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 tcomposer.org/.for.more.informat
f760 69 6f 6e 2e 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 45 4f 54 0a 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a ion.</comment>.EOT.);.}.}.<?php.
f780 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f ...........namespace.Composer\Co
f7a0 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 mmand;..use.Composer\Factory;.us
f7c0 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 e.Composer\IO\IOInterface;.use.C
f7e0 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 omposer\Config;.use.Composer\Rep
f800 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 ository\CompositeRepository;.use
f820 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 46 .Composer\Repository\RepositoryF
f840 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 53 63 72 69 actory;.use.Composer\Script\Scri
f860 70 74 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 6f ptEvents;.use.Composer\Plugin\Co
f880 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c mmandEvent;.use.Composer\Plugin\
f8a0 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c PluginEvents;.use.Composer\Util\
f8c0 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e Filesystem;.use.Symfony\Componen
f8e0 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 t\Console\Input\InputArgument;.u
f900 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 se.Symfony\Component\Console\Inp
f920 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 ut\InputInterface;.use.Symfony\C
f940 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 omponent\Console\Input\InputOpti
f960 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c on;.use.Symfony\Component\Consol
f980 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a e\Output\OutputInterface;.......
f9a0 63 6c 61 73 73 20 41 72 63 68 69 76 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 class.ArchiveCommand.extends.Bas
f9c0 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f eCommand.{.protected.function.co
f9e0 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 61 72 63 nfigure().{.$this.->setName('arc
fa00 68 69 76 65 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 43 72 65 61 74 65 20 hive').->setDescription('Create.
fa20 61 6e 20 61 72 63 68 69 76 65 20 6f 66 20 74 68 69 73 20 63 6f 6d 70 6f 73 65 72 20 70 61 63 6b an.archive.of.this.composer.pack
fa40 61 67 65 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 age').->setDefinition(array(.new
fa60 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 2c 20 49 6e 70 75 74 41 .InputArgument('package',.InputA
fa80 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 54 68 65 20 70 61 63 6b 61 67 65 20 rgument::OPTIONAL,.'The.package.
faa0 74 6f 20 61 72 63 68 69 76 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e to.archive.instead.of.the.curren
fac0 74 20 70 72 6f 6a 65 63 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 t.project'),.new.InputArgument('
fae0 76 65 72 73 69 6f 6e 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 version',.InputArgument::OPTIONA
fb00 4c 2c 20 27 41 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 20 74 6f 20 66 69 6e 64 L,.'A.version.constraint.to.find
fb20 20 74 68 65 20 70 61 63 6b 61 67 65 20 74 6f 20 61 72 63 68 69 76 65 27 29 2c 0a 6e 65 77 20 49 .the.package.to.archive'),.new.I
fb40 6e 70 75 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 2c 20 27 66 27 2c 20 49 6e 70 75 74 4f nputOption('format',.'f',.InputO
fb60 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 46 6f 72 6d 61 74 20 6f ption::VALUE_REQUIRED,.'Format.o
fb80 66 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 61 72 63 68 69 76 65 3a 20 74 61 72 20 6f 72 20 f.the.resulting.archive:.tar.or.
fba0 7a 69 70 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 69 72 27 2c 20 6e 75 zip'),.new.InputOption('dir',.nu
fbc0 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c ll,.InputOption::VALUE_REQUIRED,
fbe0 20 27 57 72 69 74 65 20 74 68 65 20 61 72 63 68 69 76 65 20 74 6f 20 74 68 69 73 20 64 69 72 65 .'Write.the.archive.to.this.dire
fc00 63 74 6f 72 79 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 66 69 6c 65 27 2c ctory'),.new.InputOption('file',
fc20 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 .null,.InputOption::VALUE_REQUIR
fc40 45 44 2c 20 27 57 72 69 74 65 20 74 68 65 20 61 72 63 68 69 76 65 20 77 69 74 68 20 74 68 65 20 ED,.'Write.the.archive.with.the.
fc60 67 69 76 65 6e 20 66 69 6c 65 20 6e 61 6d 65 2e 27 0a 2e 27 20 4e 6f 74 65 20 74 68 61 74 20 74 given.file.name.'..'.Note.that.t
fc80 68 65 20 66 6f 72 6d 61 74 20 77 69 6c 6c 20 62 65 20 61 70 70 65 6e 64 65 64 2e 27 29 2c 0a 29 he.format.will.be.appended.'),.)
fca0 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 61 72 63 ).->setHelp(<<<EOT.The.<info>arc
fcc0 68 69 76 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 63 72 65 61 74 65 73 20 61 6e 20 61 hive</info>.command.creates.an.a
fce0 72 63 68 69 76 65 20 6f 66 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 66 6f 72 6d 61 74 0a 63 rchive.of.the.specified.format.c
fd00 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 66 69 6c 65 73 20 61 6e 64 20 64 69 72 65 63 74 6f 72 ontaining.the.files.and.director
fd20 69 65 73 20 6f 66 20 74 68 65 20 43 6f 6d 70 6f 73 65 72 20 70 72 6f 6a 65 63 74 20 6f 72 20 74 ies.of.the.Composer.project.or.t
fd40 68 65 20 73 70 65 63 69 66 69 65 64 0a 70 61 63 6b 61 67 65 20 69 6e 20 74 68 65 20 73 70 65 63 he.specified.package.in.the.spec
fd60 69 66 69 65 64 20 76 65 72 73 69 6f 6e 20 61 6e 64 20 77 72 69 74 65 73 20 69 74 20 74 6f 20 74 ified.version.and.writes.it.to.t
fd80 68 65 20 73 70 65 63 69 66 69 65 64 20 64 69 72 65 63 74 6f 72 79 2e 0a 0a 3c 69 6e 66 6f 3e 70 he.specified.directory...<info>p
fda0 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 61 72 63 68 69 76 65 20 5b 2d 2d 66 6f 72 6d hp.composer.phar.archive.[--form
fdc0 61 74 3d 7a 69 70 5d 20 5b 2d 2d 64 69 72 3d 2f 66 6f 6f 5d 20 5b 70 61 63 6b 61 67 65 20 5b 76 at=zip].[--dir=/foo].[package.[v
fde0 65 72 73 69 6f 6e 5d 5d 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 ersion]]</info>..EOT.).;.}..prot
fe00 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 ected.function.execute(InputInte
fe20 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f rface.$input,.OutputInterface.$o
fe40 75 74 70 75 74 29 0a 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 utput).{.$config.=.Factory::crea
fe60 74 65 43 6f 6e 66 69 67 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 teConfig();.$composer.=.$this->g
fe80 65 74 43 6f 6d 70 6f 73 65 72 28 66 61 6c 73 65 29 3b 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 etComposer(false);.if.($composer
fea0 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 ).{.$commandEvent.=.new.CommandE
fec0 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 61 72 63 vent(PluginEvents::COMMAND,.'arc
fee0 68 69 76 65 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f 73 hive',.$input,.$output);.$compos
ff00 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 er->getEventDispatcher()->dispat
ff20 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f ch($commandEvent->getName(),.$co
ff40 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 mmandEvent);.$composer->getEvent
ff60 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 53 63 72 Dispatcher()->dispatchScript(Scr
ff80 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 41 52 43 48 49 56 45 5f 43 4d 44 29 3b 0a 7d 0a 0a iptEvents::PRE_ARCHIVE_CMD);.}..
ffa0 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 if.(null.===.$input->getOption('
ffc0 66 6f 72 6d 61 74 27 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 66 format')).{.$input->setOption('f
ffe0 6f 72 6d 61 74 27 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 61 72 63 68 69 76 65 2d 66 6f ormat',.$config->get('archive-fo
10000 72 6d 61 74 27 29 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e rmat'));.}.if.(null.===.$input->
10020 67 65 74 4f 70 74 69 6f 6e 28 27 64 69 72 27 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f getOption('dir')).{.$input->setO
10040 70 74 69 6f 6e 28 27 64 69 72 27 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 61 72 63 68 69 ption('dir',.$config->get('archi
10060 76 65 2d 64 69 72 27 29 29 3b 0a 7d 0a 0a 24 72 65 74 75 72 6e 43 6f 64 65 20 3d 20 24 74 68 69 ve-dir'));.}..$returnCode.=.$thi
10080 73 2d 3e 61 72 63 68 69 76 65 28 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2c 0a 24 63 6f 6e s->archive(.$this->getIO(),.$con
100a0 66 69 67 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 fig,.$input->getArgument('packag
100c0 65 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f e'),.$input->getArgument('versio
100e0 6e 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 29 n'),.$input->getOption('format')
10100 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 69 72 27 29 2c 0a 24 69 6e 70 ,.$input->getOption('dir'),.$inp
10120 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 66 69 6c 65 27 29 0a 29 3b 0a 0a 69 66 20 28 30 20 ut->getOption('file').);..if.(0.
10140 3d 3d 3d 20 24 72 65 74 75 72 6e 43 6f 64 65 20 26 26 20 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a ===.$returnCode.&&.$composer).{.
10160 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d $composer->getEventDispatcher()-
10180 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f >dispatchScript(ScriptEvents::PO
101a0 53 54 5f 41 52 43 48 49 56 45 5f 43 4d 44 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 74 75 ST_ARCHIVE_CMD);.}..return.$retu
101c0 72 6e 43 6f 64 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 72 rnCode;.}..protected.function.ar
101e0 63 68 69 76 65 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 chive(IOInterface.$io,.Config.$c
10200 6f 6e 66 69 67 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 6e 75 6c 6c 2c 20 24 76 65 72 onfig,.$packageName.=.null,.$ver
10220 73 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 66 6f 72 6d 61 74 20 3d 20 27 74 61 72 27 2c 20 24 64 sion.=.null,.$format.=.'tar',.$d
10240 65 73 74 20 3d 20 27 2e 27 2c 20 24 66 69 6c 65 4e 61 6d 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 est.=.'.',.$fileName.=.null).{.$
10260 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 46 61 63 74 6f 72 79 3b 0a 24 64 6f 77 6e 6c 6f 61 64 factory.=.new.Factory;.$download
10280 4d 61 6e 61 67 65 72 20 3d 20 24 66 61 63 74 6f 72 79 2d 3e 63 72 65 61 74 65 44 6f 77 6e 6c 6f Manager.=.$factory->createDownlo
102a0 61 64 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 24 61 72 63 68 69 76 adManager($io,.$config);.$archiv
102c0 65 4d 61 6e 61 67 65 72 20 3d 20 24 66 61 63 74 6f 72 79 2d 3e 63 72 65 61 74 65 41 72 63 68 69 eManager.=.$factory->createArchi
102e0 76 65 4d 61 6e 61 67 65 72 28 24 63 6f 6e 66 69 67 2c 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 veManager($config,.$downloadMana
10300 67 65 72 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 7b 0a 24 70 61 63 6b ger);..if.($packageName).{.$pack
10320 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 73 65 6c 65 63 74 50 61 63 6b 61 67 65 28 24 69 6f 2c 20 age.=.$this->selectPackage($io,.
10340 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 21 24 $packageName,.$version);..if.(!$
10360 70 61 63 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a package).{.return.1;.}.}.else.{.
10380 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d $package.=.$this->getComposer()-
103a0 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f >getPackage();.}..$io->writeErro
103c0 72 28 27 3c 69 6e 66 6f 3e 43 72 65 61 74 69 6e 67 20 74 68 65 20 61 72 63 68 69 76 65 20 69 6e r('<info>Creating.the.archive.in
103e0 74 6f 20 22 27 2e 24 64 65 73 74 2e 27 22 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 24 70 61 63 6b 61 to."'.$dest.'".</info>');.$packa
10400 67 65 50 61 74 68 20 3d 20 24 61 72 63 68 69 76 65 4d 61 6e 61 67 65 72 2d 3e 61 72 63 68 69 76 gePath.=.$archiveManager->archiv
10420 65 28 24 70 61 63 6b 61 67 65 2c 20 24 66 6f 72 6d 61 74 2c 20 24 64 65 73 74 2c 20 24 66 69 6c e($package,.$format,.$dest,.$fil
10440 65 4e 61 6d 65 29 3b 0a 24 66 73 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 3b 0a 24 73 eName);.$fs.=.new.Filesystem;.$s
10460 68 6f 72 74 50 61 74 68 20 3d 20 24 66 73 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 hortPath.=.$fs->findShortestPath
10480 28 67 65 74 63 77 64 28 29 2c 20 24 70 61 63 6b 61 67 65 50 61 74 68 2c 20 74 72 75 65 29 3b 0a (getcwd(),.$packagePath,.true);.
104a0 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 43 72 65 61 74 65 64 3a 20 27 2c 20 66 61 .$io->writeError('Created:.',.fa
104c0 6c 73 65 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 73 74 72 6c 65 6e 28 24 73 68 6f 72 74 50 61 lse);.$io->write(strlen($shortPa
104e0 74 68 29 20 3c 20 73 74 72 6c 65 6e 28 24 70 61 63 6b 61 67 65 50 61 74 68 29 20 3f 20 24 73 68 th).<.strlen($packagePath).?.$sh
10500 6f 72 74 50 61 74 68 20 3a 20 24 70 61 63 6b 61 67 65 50 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e ortPath.:.$packagePath);..return
10520 20 30 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 .0;.}..protected.function.select
10540 50 61 63 6b 61 67 65 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 70 61 63 6b 61 67 Package(IOInterface.$io,.$packag
10560 65 4e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 69 6f 2d 3e 77 eName,.$version.=.null).{.$io->w
10580 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 53 65 61 72 63 68 69 6e 67 20 66 6f 72 20 74 riteError('<info>Searching.for.t
105a0 68 65 20 73 70 65 63 69 66 69 65 64 20 70 61 63 6b 61 67 65 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a he.specified.package.</info>');.
105c0 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f .if.($composer.=.$this->getCompo
105e0 73 65 72 28 66 61 6c 73 65 29 29 20 7b 0a 24 6c 6f 63 61 6c 52 65 70 6f 20 3d 20 24 63 6f 6d 70 ser(false)).{.$localRepo.=.$comp
10600 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 oser->getRepositoryManager()->ge
10620 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 24 72 65 70 6f 20 3d 20 6e 65 77 20 tLocalRepository();.$repo.=.new.
10640 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 5f 6d 65 72 67 65 28 CompositeRepository(array_merge(
10660 61 72 72 61 79 28 24 6c 6f 63 61 6c 52 65 70 6f 29 2c 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 array($localRepo),.$composer->ge
10680 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 52 65 70 6f 73 69 74 tRepositoryManager()->getReposit
106a0 6f 72 69 65 73 28 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 52 65 70 6f ories()));.}.else.{.$defaultRepo
106c0 73 20 3d 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 64 65 66 61 75 6c 74 52 65 s.=.RepositoryFactory::defaultRe
106e0 70 6f 73 28 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 pos($this->getIO());.$io->writeE
10700 72 72 6f 72 28 27 4e 6f 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 6f 75 6e 64 20 69 6e 20 rror('No.composer.json.found.in.
10720 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 73 65 61 72 63 68 69 6e 67 the.current.directory,.searching
10740 20 70 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c .packages.from.'...implode(',.',
10760 20 61 72 72 61 79 5f 6b 65 79 73 28 24 64 65 66 61 75 6c 74 52 65 70 6f 73 29 29 29 3b 0a 24 72 .array_keys($defaultRepos)));.$r
10780 65 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 24 64 epo.=.new.CompositeRepository($d
107a0 65 66 61 75 6c 74 52 65 70 6f 73 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 72 65 efaultRepos);.}..$packages.=.$re
107c0 70 6f 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 po->findPackages($packageName,.$
107e0 76 65 72 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 70 61 63 6b 61 67 65 73 29 20 version);..if.(count($packages).
10800 3e 20 31 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 72 65 73 65 74 28 24 70 61 63 6b 61 67 65 >.1).{.$package.=.reset($package
10820 73 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 46 6f 75 6e 64 s);.$io->writeError('<info>Found
10840 20 6d 75 6c 74 69 70 6c 65 20 6d 61 74 63 68 65 73 2c 20 73 65 6c 65 63 74 65 64 20 27 2e 24 70 .multiple.matches,.selected.'.$p
10860 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 2e 27 2e 3c 2f 69 6e ackage->getPrettyString().'.</in
10880 66 6f 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 41 6c 74 65 72 6e 61 74 fo>');.$io->writeError('Alternat
108a0 69 76 65 73 20 77 65 72 65 20 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f ives.were.'.implode(',.',.array_
108c0 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 70 29 20 7b 20 72 65 74 75 72 6e 20 24 70 2d 3e 67 map(function.($p).{.return.$p->g
108e0 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 3b 20 7d 2c 20 24 70 61 63 6b 61 67 65 73 29 29 etPrettyString();.},.$packages))
10900 2e 27 2e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 63 6f 6d 6d 65 6e 74 .'.');.$io->writeError('<comment
10920 3e 50 6c 65 61 73 65 20 75 73 65 20 61 20 6d 6f 72 65 20 73 70 65 63 69 66 69 63 20 63 6f 6e 73 >Please.use.a.more.specific.cons
10940 74 72 61 69 6e 74 20 74 6f 20 70 69 63 6b 20 61 20 64 69 66 66 65 72 65 6e 74 20 70 61 63 6b 61 traint.to.pick.a.different.packa
10960 67 65 2e 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 63 6b ge.</comment>');.}.elseif.($pack
10980 61 67 65 73 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 72 65 73 65 74 28 24 70 61 63 6b 61 67 ages).{.$package.=.reset($packag
109a0 65 73 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 46 6f 75 6e es);.$io->writeError('<info>Foun
109c0 64 20 61 6e 20 65 78 61 63 74 20 6d 61 74 63 68 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 d.an.exact.match.'.$package->get
109e0 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 2e 27 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c PrettyString().'.</info>');.}.el
10a00 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 43 6f 75 se.{.$io->writeError('<error>Cou
10a20 6c 64 20 6e 6f 74 20 66 69 6e 64 20 61 20 70 61 63 6b 61 67 65 20 6d 61 74 63 68 69 6e 67 20 27 ld.not.find.a.package.matching.'
10a40 2e 24 70 61 63 6b 61 67 65 4e 61 6d 65 2e 27 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 .$packageName.'.</error>');..ret
10a60 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d urn.false;.}..return.$package;.}
10a80 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
10aa0 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f mposer\Command;..use.Composer\Co
10ac0 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 mposer;.use.Composer\Console\App
10ae0 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 lication;.use.Composer\IO\IOInte
10b00 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 4e 75 6c 6c 49 4f 3b 0a 75 rface;.use.Composer\IO\NullIO;.u
10b20 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 se.Symfony\Component\Console\Inp
10b40 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 ut\InputInterface;.use.Symfony\C
10b60 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e omponent\Console\Output\OutputIn
10b80 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 terface;.use.Symfony\Component\C
10ba0 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 61 onsole\Command\Command;........a
10bc0 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 bstract.class.BaseCommand.extend
10be0 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 70 6f 73 65 72 s.Command.{....private.$composer
10c00 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ;.....private.$io;........public
10c20 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 28 24 72 65 71 75 69 72 65 64 20 .function.getComposer($required.
10c40 3d 20 74 72 75 65 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 20 3d 20 66 61 6c 73 65 29 =.true,.$disablePlugins.=.false)
10c60 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 29 .{.if.(null.===.$this->composer)
10c80 20 7b 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c .{.$application.=.$this->getAppl
10ca0 69 63 61 74 69 6f 6e 28 29 3b 0a 69 66 20 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 69 6e 73 74 ication();.if.($application.inst
10cc0 61 6e 63 65 6f 66 20 41 70 70 6c 69 63 61 74 69 6f 6e 29 20 7b 0a 0a 24 74 68 69 73 2d 3e 63 6f anceof.Application).{..$this->co
10ce0 6d 70 6f 73 65 72 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 43 6f 6d 70 6f 73 mposer.=.$application->getCompos
10d00 65 72 28 24 72 65 71 75 69 72 65 64 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 3b 0a er($required,.$disablePlugins);.
10d20 7d 20 65 6c 73 65 69 66 20 28 24 72 65 71 75 69 72 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 }.elseif.($required).{.throw.new
10d40 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 27 43 6f 75 6c 64 20 6e 6f 74 20 63 .\RuntimeException(.'Could.not.c
10d60 72 65 61 74 65 20 61 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 20 69 6e 73 74 61 6e reate.a.Composer\Composer.instan
10d80 63 65 2c 20 79 6f 75 20 6d 75 73 74 20 69 6e 6a 65 63 74 20 27 2e 0a 27 6f 6e 65 20 69 66 20 74 ce,.you.must.inject.'..'one.if.t
10da0 68 69 73 20 63 6f 6d 6d 61 6e 64 20 69 73 20 6e 6f 74 20 75 73 65 64 20 77 69 74 68 20 61 20 43 his.command.is.not.used.with.a.C
10dc0 6f 6d 70 6f 73 65 72 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 20 69 6e 73 74 omposer\Console\Application.inst
10de0 61 6e 63 65 27 0a 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 ance'.);.}.}..return.$this->comp
10e00 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 oser;.}.....public.function.setC
10e20 6f 6d 70 6f 73 65 72 28 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 29 0a 7b 0a 24 74 omposer(Composer.$composer).{.$t
10e40 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a his->composer.=.$composer;.}....
10e60 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 43 6f 6d 70 6f 73 65 72 28 29 .public.function.resetComposer()
10e80 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 .{.$this->composer.=.null;.$this
10ea0 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 2d 3e 72 65 73 65 74 43 6f 6d 70 6f 73 65 ->getApplication()->resetCompose
10ec0 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 4f r();.}.....public.function.getIO
10ee0 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 6f 29 20 7b 0a 24 ().{.if.(null.===.$this->io).{.$
10f00 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 application.=.$this->getApplicat
10f20 69 6f 6e 28 29 3b 0a 69 66 20 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 ion();.if.($application.instance
10f40 6f 66 20 41 70 70 6c 69 63 61 74 69 6f 6e 29 20 7b 0a 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 of.Application).{..$this->io.=.$
10f60 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 49 4f 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 application->getIO();.}.else.{.$
10f80 74 68 69 73 2d 3e 69 6f 20 3d 20 6e 65 77 20 4e 75 6c 6c 49 4f 28 29 3b 0a 7d 0a 7d 0a 0a 72 65 this->io.=.new.NullIO();.}.}..re
10fa0 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e turn.$this->io;.}.....public.fun
10fc0 63 74 69 6f 6e 20 73 65 74 49 4f 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 24 ction.setIO(IOInterface.$io).{.$
10fe0 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 this->io.=.$io;.}.....protected.
11000 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 function.initialize(InputInterfa
11020 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 ce.$input,.OutputInterface.$outp
11040 75 74 29 0a 7b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 ut).{.if.(true.===.$input->hasPa
11060 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 6e 6f 2d 61 6e 73 69 27 29 rameterOption(array('--no-ansi')
11080 29 20 26 26 20 24 69 6e 70 75 74 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 ).&&.$input->hasOption('no-progr
110a0 65 73 73 27 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 ess')).{.$input->setOption('no-p
110c0 72 6f 67 72 65 73 73 27 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 rogress',.true);.}..parent::init
110e0 69 61 6c 69 7a 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 ialize($input,.$output);.}.}.<?p
11100 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
11120 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e \Command;..use.Composer\Dependen
11140 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 cyResolver\Pool;.use.Composer\Pa
11160 63 6b 61 67 65 5c 4c 69 6e 6b 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 ckage\Link;.use.Composer\Package
11180 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c \PackageInterface;.use.Composer\
111a0 52 65 70 6f 73 69 74 6f 72 79 5c 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 Repository\ArrayRepository;.use.
111c0 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 Composer\Repository\CompositeRep
111e0 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 ository;.use.Composer\Repository
11200 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 \PlatformRepository;.use.Compose
11220 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3b 0a r\Repository\RepositoryFactory;.
11240 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 use.Composer\Plugin\CommandEvent
11260 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e ;.use.Composer\Plugin\PluginEven
11280 74 73 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c ts;.use.Symfony\Component\Consol
112a0 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 e\Formatter\OutputFormatterStyle
112c0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 ;.use.Composer\Package\Version\V
112e0 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e ersionParser;.use.Symfony\Compon
11300 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 54 61 62 6c 65 3b 0a 75 73 65 20 53 79 ent\Console\Helper\Table;.use.Sy
11320 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e mfony\Component\Console\Input\In
11340 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 putArgument;.use.Symfony\Compone
11360 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b nt\Console\Input\InputInterface;
11380 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 .use.Symfony\Component\Console\I
113a0 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f nput\InputOption;.use.Symfony\Co
113c0 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 mponent\Console\Output\OutputInt
113e0 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 42 61 73 65 44 65 70 65 6e 64 65 6e erface;.......class.BaseDependen
11400 63 79 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a cyCommand.extends.BaseCommand.{.
11420 63 6f 6e 73 74 20 41 52 47 55 4d 45 4e 54 5f 50 41 43 4b 41 47 45 20 3d 20 27 70 61 63 6b 61 67 const.ARGUMENT_PACKAGE.=.'packag
11440 65 27 3b 0a 63 6f 6e 73 74 20 41 52 47 55 4d 45 4e 54 5f 43 4f 4e 53 54 52 41 49 4e 54 20 3d 20 e';.const.ARGUMENT_CONSTRAINT.=.
11460 27 63 6f 6e 73 74 72 61 69 6e 74 27 3b 0a 63 6f 6e 73 74 20 4f 50 54 49 4f 4e 5f 52 45 43 55 52 'constraint';.const.OPTION_RECUR
11480 53 49 56 45 20 3d 20 27 72 65 63 75 72 73 69 76 65 27 3b 0a 63 6f 6e 73 74 20 4f 50 54 49 4f 4e SIVE.=.'recursive';.const.OPTION
114a0 5f 54 52 45 45 20 3d 20 27 74 72 65 65 27 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6c 6f _TREE.=.'tree';..protected.$colo
114c0 72 73 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 rs;.....protected.function.confi
114e0 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 gure().{.$this->setDefinition(ar
11500 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 73 65 6c 66 3a 3a 41 52 47 ray(.new.InputArgument(self::ARG
11520 55 4d 45 4e 54 5f 50 41 43 4b 41 47 45 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 52 45 UMENT_PACKAGE,.InputArgument::RE
11540 51 55 49 52 45 44 2c 20 27 50 61 63 6b 61 67 65 20 74 6f 20 69 6e 73 70 65 63 74 27 29 2c 0a 6e QUIRED,.'Package.to.inspect'),.n
11560 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 73 65 6c 66 3a 3a 41 52 47 55 4d 45 4e 54 5f ew.InputArgument(self::ARGUMENT_
11580 43 4f 4e 53 54 52 41 49 4e 54 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f CONSTRAINT,.InputArgument::OPTIO
115a0 4e 41 4c 2c 20 27 4f 70 74 69 6f 6e 61 6c 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e NAL,.'Optional.version.constrain
115c0 74 27 2c 20 27 2a 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 73 65 6c 66 3a 3a t',.'*'),.new.InputOption(self::
115e0 4f 50 54 49 4f 4e 5f 52 45 43 55 52 53 49 56 45 2c 20 27 72 27 2c 20 49 6e 70 75 74 4f 70 74 69 OPTION_RECURSIVE,.'r',.InputOpti
11600 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 52 65 63 75 72 73 69 76 65 6c 79 20 72 65 73 on::VALUE_NONE,.'Recursively.res
11620 6f 6c 76 65 73 20 75 70 20 74 6f 20 74 68 65 20 72 6f 6f 74 20 70 61 63 6b 61 67 65 27 29 2c 0a olves.up.to.the.root.package'),.
11640 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 73 65 6c 66 3a 3a 4f 50 54 49 4f 4e 5f 54 52 45 new.InputOption(self::OPTION_TRE
11660 45 2c 20 27 74 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c E,.'t',.InputOption::VALUE_NONE,
11680 20 27 50 72 69 6e 74 73 20 74 68 65 20 72 65 73 75 6c 74 73 20 61 73 20 61 20 6e 65 73 74 65 64 .'Prints.the.results.as.a.nested
116a0 20 74 72 65 65 27 29 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 .tree'),.));.}..........protecte
116c0 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 45 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 d.function.doExecute(InputInterf
116e0 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 ace.$input,.OutputInterface.$out
11700 70 75 74 2c 20 24 69 6e 76 65 72 74 65 64 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 0a 20 24 63 6f 6d put,.$inverted.=.false).{...$com
11720 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 24 63 poser.=.$this->getComposer();.$c
11740 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 50 ommandEvent.=.new.CommandEvent(P
11760 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 24 74 68 69 73 2d 3e 67 65 74 luginEvents::COMMAND,.$this->get
11780 4e 61 6d 65 28 29 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f Name(),.$input,.$output);.$compo
117a0 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 ser->getEventDispatcher()->dispa
117c0 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 tch($commandEvent->getName(),.$c
117e0 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 0a 0a 20 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 ommandEvent);....$platformOverri
11800 64 65 73 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 des.=.$composer->getConfig()->ge
11820 74 28 27 70 6c 61 74 66 6f 72 6d 27 29 20 3f 3a 20 61 72 72 61 79 28 29 3b 0a 24 72 65 70 6f 73 t('platform').?:.array();.$repos
11840 69 74 6f 72 79 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 itory.=.new.CompositeRepository(
11860 61 72 72 61 79 28 0a 6e 65 77 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 array(.new.ArrayRepository(array
11880 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 29 29 2c 0a 24 63 6f 6d ($composer->getPackage())),.$com
118a0 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 poser->getRepositoryManager()->g
118c0 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 2c 0a 6e 65 77 20 50 6c 61 74 66 6f 72 etLocalRepository(),.new.Platfor
118e0 6d 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 29 2c 20 24 70 6c 61 74 66 6f 72 6d 4f 76 mRepository(array(),.$platformOv
11900 65 72 72 69 64 65 73 29 2c 0a 29 29 3b 0a 24 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c 28 29 errides),.));.$pool.=.new.Pool()
11920 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 73 69 74 6f ;.$pool->addRepository($reposito
11940 72 79 29 3b 0a 0a 0a 20 6c 69 73 74 28 24 6e 65 65 64 6c 65 2c 20 24 74 65 78 74 43 6f 6e 73 74 ry);....list($needle,.$textConst
11960 72 61 69 6e 74 29 20 3d 20 61 72 72 61 79 5f 70 61 64 28 0a 65 78 70 6c 6f 64 65 28 27 3a 27 2c raint).=.array_pad(.explode(':',
11980 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 73 65 6c 66 3a 3a 41 52 47 55 4d .$input->getArgument(self::ARGUM
119a0 45 4e 54 5f 50 41 43 4b 41 47 45 29 29 2c 0a 32 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 ENT_PACKAGE)),.2,.$input->getArg
119c0 75 6d 65 6e 74 28 73 65 6c 66 3a 3a 41 52 47 55 4d 45 4e 54 5f 43 4f 4e 53 54 52 41 49 4e 54 29 ument(self::ARGUMENT_CONSTRAINT)
119e0 0a 29 3b 0a 0a 0a 20 24 70 61 63 6b 61 67 65 73 20 3d 20 24 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 .);....$packages.=.$pool->whatPr
11a00 6f 76 69 64 65 73 28 24 6e 65 65 64 6c 65 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 70 61 63 6b ovides($needle);.if.(empty($pack
11a20 61 67 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d ages)).{.throw.new.\InvalidArgum
11a40 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 6f 75 6c 64 20 6e 6f 74 20 entException(sprintf('Could.not.
11a60 66 69 6e 64 20 70 61 63 6b 61 67 65 20 22 25 73 22 20 69 6e 20 79 6f 75 72 20 70 72 6f 6a 65 63 find.package."%s".in.your.projec
11a80 74 27 2c 20 24 6e 65 65 64 6c 65 29 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 21 24 72 65 70 6f t',.$needle));.}......if.(!$repo
11aa0 73 69 74 6f 72 79 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 65 65 64 6c 65 2c 20 24 74 65 sitory->findPackage($needle,.$te
11ac0 78 74 43 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 24 64 65 66 61 75 6c 74 52 65 70 6f 73 20 3d xtConstraint)).{.$defaultRepos.=
11ae0 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 .new.CompositeRepository(Reposit
11b00 6f 72 79 46 61 63 74 6f 72 79 3a 3a 64 65 66 61 75 6c 74 52 65 70 6f 73 28 24 74 68 69 73 2d 3e oryFactory::defaultRepos($this->
11b20 67 65 74 49 4f 28 29 29 29 3b 0a 69 66 20 28 24 6d 61 74 63 68 20 3d 20 24 64 65 66 61 75 6c 74 getIO()));.if.($match.=.$default
11b40 52 65 70 6f 73 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 65 65 64 6c 65 2c 20 24 74 65 78 Repos->findPackage($needle,.$tex
11b60 74 43 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 61 64 64 tConstraint)).{.$repository->add
11b80 52 65 70 6f 73 69 74 6f 72 79 28 6e 65 77 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 61 Repository(new.ArrayRepository(a
11ba0 72 72 61 79 28 63 6c 6f 6e 65 20 24 6d 61 74 63 68 29 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 6e 65 rray(clone.$match)));.}.}....$ne
11bc0 65 64 6c 65 73 20 3d 20 61 72 72 61 79 28 24 6e 65 65 64 6c 65 29 3b 0a 69 66 20 28 24 69 6e 76 edles.=.array($needle);.if.($inv
11be0 65 72 74 65 64 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 erted).{.foreach.($packages.as.$
11c00 70 61 63 6b 61 67 65 29 20 7b 0a 24 6e 65 65 64 6c 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 package).{.$needles.=.array_merg
11c20 65 28 24 6e 65 65 64 6c 65 73 2c 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 e($needles,.array_map(function.(
11c40 4c 69 6e 6b 20 24 6c 69 6e 6b 29 20 7b 0a 72 65 74 75 72 6e 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 Link.$link).{.return.$link->getT
11c60 61 72 67 65 74 28 29 3b 0a 7d 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 arget();.},.$package->getReplace
11c80 73 28 29 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 27 2a 27 20 21 3d 3d 20 24 74 65 78 74 43 s()));.}.}....if.('*'.!==.$textC
11ca0 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 onstraint).{.$versionParser.=.ne
11cc0 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d w.VersionParser();.$constraint.=
11ce0 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 .$versionParser->parseConstraint
11d00 73 28 24 74 65 78 74 43 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f s($textConstraint);.}.else.{.$co
11d20 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 20 24 72 65 6e 64 65 72 54 72 65 nstraint.=.null;.}....$renderTre
11d40 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 73 65 6c 66 3a 3a 4f 50 54 49 e.=.$input->getOption(self::OPTI
11d60 4f 4e 5f 54 52 45 45 29 3b 0a 24 72 65 63 75 72 73 69 76 65 20 3d 20 24 72 65 6e 64 65 72 54 72 ON_TREE);.$recursive.=.$renderTr
11d80 65 65 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 73 65 6c 66 3a 3a 4f 50 ee.||.$input->getOption(self::OP
11da0 54 49 4f 4e 5f 52 45 43 55 52 53 49 56 45 29 3b 0a 0a 0a 20 24 72 65 73 75 6c 74 73 20 3d 20 24 TION_RECURSIVE);....$results.=.$
11dc0 72 65 70 6f 73 69 74 6f 72 79 2d 3e 67 65 74 44 65 70 65 6e 64 65 6e 74 73 28 24 6e 65 65 64 6c repository->getDependents($needl
11de0 65 73 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 69 6e 76 65 72 74 65 64 2c 20 24 72 65 63 es,.$constraint,.$inverted,.$rec
11e00 75 72 73 69 76 65 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 72 65 73 75 6c 74 73 29 29 20 7b 0a ursive);.if.(empty($results)).{.
11e20 24 65 78 74 72 61 20 3d 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 $extra.=.(null.!==.$constraint).
11e40 3f 20 73 70 72 69 6e 74 66 28 27 20 69 6e 20 76 65 72 73 69 6f 6e 73 20 25 73 6d 61 74 63 68 69 ?.sprintf('.in.versions.%smatchi
11e60 6e 67 20 25 73 27 2c 20 24 69 6e 76 65 72 74 65 64 20 3f 20 27 6e 6f 74 20 27 20 3a 20 27 27 2c ng.%s',.$inverted.?.'not.'.:.'',
11e80 20 24 74 65 78 74 43 6f 6e 73 74 72 61 69 6e 74 29 20 3a 20 27 27 3b 0a 24 74 68 69 73 2d 3e 67 .$textConstraint).:.'';.$this->g
11ea0 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 etIO()->writeError(sprintf('<inf
11ec0 6f 3e 54 68 65 72 65 20 69 73 20 6e 6f 20 69 6e 73 74 61 6c 6c 65 64 20 70 61 63 6b 61 67 65 20 o>There.is.no.installed.package.
11ee0 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 22 25 73 22 25 73 3c 2f 69 6e 66 6f 3e 27 2c 0a 24 6e 65 depending.on."%s"%s</info>',.$ne
11f00 65 64 6c 65 2c 20 24 65 78 74 72 61 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 72 65 6e 64 65 edle,.$extra));.}.elseif.($rende
11f20 72 54 72 65 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 53 74 79 6c 65 73 28 24 6f 75 74 70 rTree).{.$this->initStyles($outp
11f40 75 74 29 3b 0a 24 72 6f 6f 74 20 3d 20 24 70 61 63 6b 61 67 65 73 5b 30 5d 3b 0a 24 74 68 69 73 ut);.$root.=.$packages[0];.$this
11f60 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e ->getIO()->write(sprintf('<info>
11f80 25 73 3c 2f 69 6e 66 6f 3e 20 25 73 20 25 73 27 2c 20 24 72 6f 6f 74 2d 3e 67 65 74 50 72 65 74 %s</info>.%s.%s',.$root->getPret
11fa0 74 79 4e 61 6d 65 28 29 2c 20 24 72 6f 6f 74 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f tyName(),.$root->getPrettyVersio
11fc0 6e 28 29 2c 20 24 72 6f 6f 74 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 29 3b 0a n(),.$root->getDescription()));.
11fe0 24 74 68 69 73 2d 3e 70 72 69 6e 74 54 72 65 65 28 24 72 65 73 75 6c 74 73 29 3b 0a 7d 20 65 6c $this->printTree($results);.}.el
12000 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 54 61 62 6c 65 28 24 6f 75 74 70 75 74 2c 20 se.{.$this->printTable($output,.
12020 24 72 65 73 75 6c 74 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a $results);.}..return.0;.}.......
12040 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 54 61 62 6c 65 28 4f .protected.function.printTable(O
12060 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 72 65 73 75 6c 74 73 utputInterface.$output,.$results
12080 29 0a 7b 0a 24 74 61 62 6c 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 64 6f 75 62 6c 65 73 20 3d ).{.$table.=.array();.$doubles.=
120a0 20 61 72 72 61 79 28 29 3b 0a 64 6f 20 7b 0a 24 71 75 65 75 65 20 3d 20 61 72 72 61 79 28 29 3b .array();.do.{.$queue.=.array();
120c0 0a 24 72 6f 77 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 73 75 .$rows.=.array();.foreach.($resu
120e0 6c 74 73 20 61 73 20 24 72 65 73 75 6c 74 29 20 7b 0a 0a 0a 0a 0a 6c 69 73 74 28 24 70 61 63 6b lts.as.$result).{.....list($pack
12100 61 67 65 2c 20 24 6c 69 6e 6b 2c 20 24 63 68 69 6c 64 72 65 6e 29 20 3d 20 24 72 65 73 75 6c 74 age,.$link,.$children).=.$result
12120 3b 0a 24 75 6e 69 71 75 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6c 69 6e 6b 3b 0a 69 66 20 28 ;.$unique.=.(string).$link;.if.(
12140 69 73 73 65 74 28 24 64 6f 75 62 6c 65 73 5b 24 75 6e 69 71 75 65 5d 29 29 20 7b 0a 63 6f 6e 74 isset($doubles[$unique])).{.cont
12160 69 6e 75 65 3b 0a 7d 0a 24 64 6f 75 62 6c 65 73 5b 24 75 6e 69 71 75 65 5d 20 3d 20 74 72 75 65 inue;.}.$doubles[$unique].=.true
12180 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 70 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 ;.$version.=.(strpos($package->g
121a0 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 27 4e 6f 20 76 65 72 73 69 6f 6e 20 73 etPrettyVersion(),.'No.version.s
121c0 65 74 27 29 20 3d 3d 3d 20 30 29 20 3f 20 27 2d 27 20 3a 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 et').===.0).?.'-'.:.$package->ge
121e0 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 24 72 6f 77 73 5b 5d 20 3d 20 61 72 72 61 tPrettyVersion();.$rows[].=.arra
12200 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 20 24 76 65 y($package->getPrettyName(),.$ve
12220 72 73 69 6f 6e 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 2c 20 rsion,.$link->getDescription(),.
12240 73 70 72 69 6e 74 66 28 27 25 73 20 28 25 73 29 27 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 sprintf('%s.(%s)',.$link->getTar
12260 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e get(),.$link->getPrettyConstrain
12280 74 28 29 29 29 3b 0a 69 66 20 28 24 63 68 69 6c 64 72 65 6e 29 20 7b 0a 24 71 75 65 75 65 20 3d t()));.if.($children).{.$queue.=
122a0 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 71 75 65 75 65 2c 20 24 63 68 69 6c 64 72 65 6e 29 3b .array_merge($queue,.$children);
122c0 0a 7d 0a 7d 0a 24 72 65 73 75 6c 74 73 20 3d 20 24 71 75 65 75 65 3b 0a 24 74 61 62 6c 65 20 3d .}.}.$results.=.$queue;.$table.=
122e0 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 6f 77 73 2c 20 24 74 61 62 6c 65 29 3b 0a 7d 20 77 .array_merge($rows,.$table);.}.w
12300 68 69 6c 65 20 28 21 65 6d 70 74 79 28 24 72 65 73 75 6c 74 73 29 29 3b 0a 0a 0a 20 24 72 65 6e hile.(!empty($results));....$ren
12320 64 65 72 65 72 20 3d 20 6e 65 77 20 54 61 62 6c 65 28 24 6f 75 74 70 75 74 29 3b 0a 24 72 65 6e derer.=.new.Table($output);.$ren
12340 64 65 72 65 72 2d 3e 73 65 74 53 74 79 6c 65 28 27 63 6f 6d 70 61 63 74 27 29 3b 0a 24 72 65 6e derer->setStyle('compact');.$ren
12360 64 65 72 65 72 2d 3e 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 56 65 72 74 69 63 61 6c 42 6f derer->getStyle()->setVerticalBo
12380 72 64 65 72 43 68 61 72 28 27 27 29 3b 0a 24 72 65 6e 64 65 72 65 72 2d 3e 67 65 74 53 74 79 6c rderChar('');.$renderer->getStyl
123a0 65 28 29 2d 3e 73 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 27 25 73 e()->setCellRowContentFormat('%s
123c0 20 20 27 29 3b 0a 24 72 65 6e 64 65 72 65 72 2d 3e 73 65 74 52 6f 77 73 28 24 74 61 62 6c 65 29 ..');.$renderer->setRows($table)
123e0 2d 3e 72 65 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 ->render();.}.......protected.fu
12400 6e 63 74 69 6f 6e 20 69 6e 69 74 53 74 79 6c 65 73 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 nction.initStyles(OutputInterfac
12420 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 20 3d 20 61 72 72 e.$output).{.$this->colors.=.arr
12440 61 79 28 0a 27 67 72 65 65 6e 27 2c 0a 27 79 65 6c 6c 6f 77 27 2c 0a 27 63 79 61 6e 27 2c 0a 27 ay(.'green',.'yellow',.'cyan',.'
12460 6d 61 67 65 6e 74 61 27 2c 0a 27 62 6c 75 65 27 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 magenta',.'blue',.);..foreach.($
12480 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 20 61 73 20 24 63 6f 6c 6f 72 29 20 7b 0a 24 73 74 79 6c 65 this->colors.as.$color).{.$style
124a0 20 3d 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 24 63 6f 6c .=.new.OutputFormatterStyle($col
124c0 6f 72 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2d 3e 73 65 or);.$output->getFormatter()->se
124e0 74 53 74 79 6c 65 28 24 63 6f 6c 6f 72 2c 20 24 73 74 79 6c 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a tStyle($color,.$style);.}.}.....
12500 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 54 72 65 65 28 ...protected.function.printTree(
12520 24 72 65 73 75 6c 74 73 2c 20 24 70 72 65 66 69 78 20 3d 20 27 27 2c 20 24 6c 65 76 65 6c 20 3d $results,.$prefix.=.'',.$level.=
12540 20 31 29 0a 7b 0a 24 63 6f 75 6e 74 20 3d 20 63 6f 75 6e 74 28 24 72 65 73 75 6c 74 73 29 3b 0a .1).{.$count.=.count($results);.
12560 24 69 64 78 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 73 75 6c 74 73 20 61 73 20 24 $idx.=.0;.foreach.($results.as.$
12580 6b 65 79 20 3d 3e 20 24 72 65 73 75 6c 74 29 20 7b 0a 0a 0a 0a 0a 6c 69 73 74 28 24 70 61 63 6b key.=>.$result).{.....list($pack
125a0 61 67 65 2c 20 24 6c 69 6e 6b 2c 20 24 63 68 69 6c 64 72 65 6e 29 20 3d 20 24 72 65 73 75 6c 74 age,.$link,.$children).=.$result
125c0 3b 0a 0a 24 63 6f 6c 6f 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 5b 24 6c 65 76 65 6c ;..$color.=.$this->colors[$level
125e0 20 25 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 29 5d 3b 0a 24 70 72 65 76 43 .%.count($this->colors)];.$prevC
12600 6f 6c 6f 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 5b 28 24 6c 65 76 65 6c 20 2d 20 31 olor.=.$this->colors[($level.-.1
12620 29 20 25 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 29 5d 3b 0a 24 69 73 4c 61 ).%.count($this->colors)];.$isLa
12640 73 74 20 3d 20 28 2b 2b 24 69 64 78 20 3d 3d 20 24 63 6f 75 6e 74 29 3b 0a 24 76 65 72 73 69 6f st.=.(++$idx.==.$count);.$versio
12660 6e 54 65 78 74 20 3d 20 28 73 74 72 70 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 nText.=.(strpos($package->getPre
12680 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 27 4e 6f 20 76 65 72 73 69 6f 6e 20 73 65 74 27 29 20 ttyVersion(),.'No.version.set').
126a0 3d 3d 3d 20 30 29 20 3f 20 27 27 20 3a 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 ===.0).?.''.:.$package->getPrett
126c0 79 56 65 72 73 69 6f 6e 28 29 3b 0a 24 70 61 63 6b 61 67 65 54 65 78 74 20 3d 20 72 74 72 69 6d yVersion();.$packageText.=.rtrim
126e0 28 73 70 72 69 6e 74 66 28 27 3c 25 73 3e 25 73 3c 2f 25 31 24 73 3e 20 25 73 27 2c 20 24 63 6f (sprintf('<%s>%s</%1$s>.%s',.$co
12700 6c 6f 72 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 20 lor,.$package->getPrettyName(),.
12720 24 76 65 72 73 69 6f 6e 54 65 78 74 29 29 3b 0a 24 6c 69 6e 6b 54 65 78 74 20 3d 20 73 70 72 69 $versionText));.$linkText.=.spri
12740 6e 74 66 28 27 25 73 20 3c 25 73 3e 25 73 3c 2f 25 32 24 73 3e 20 25 73 27 2c 20 24 6c 69 6e 6b ntf('%s.<%s>%s</%2$s>.%s',.$link
12760 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 2c 20 24 70 72 65 76 43 6f 6c 6f 72 2c 20 ->getDescription(),.$prevColor,.
12780 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 $link->getTarget(),.$link->getPr
127a0 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 24 63 69 72 63 75 6c 61 72 57 61 72 6e ettyConstraint());.$circularWarn
127c0 20 3d 20 24 63 68 69 6c 64 72 65 6e 20 3d 3d 3d 20 66 61 6c 73 65 20 3f 20 27 28 63 69 72 63 75 .=.$children.===.false.?.'(circu
127e0 6c 61 72 20 64 65 70 65 6e 64 65 6e 63 79 20 61 62 6f 72 74 65 64 20 68 65 72 65 29 27 20 3a 20 lar.dependency.aborted.here)'.:.
12800 27 27 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 72 65 65 4c 69 6e 65 28 72 74 72 69 6d 28 73 '';.$this->writeTreeLine(rtrim(s
12820 70 72 69 6e 74 66 28 22 25 73 25 73 25 73 20 28 25 73 29 20 25 73 22 2c 20 24 70 72 65 66 69 78 printf("%s%s%s.(%s).%s",.$prefix
12840 2c 20 24 69 73 4c 61 73 74 20 3f 20 27 e2 94 94 e2 94 80 e2 94 80 27 20 3a 20 27 e2 94 9c e2 94 ,.$isLast.?.'.........'.:.'.....
12860 80 e2 94 80 27 2c 20 24 70 61 63 6b 61 67 65 54 65 78 74 2c 20 24 6c 69 6e 6b 54 65 78 74 2c 20 ....',.$packageText,.$linkText,.
12880 24 63 69 72 63 75 6c 61 72 57 61 72 6e 29 29 29 3b 0a 69 66 20 28 24 63 68 69 6c 64 72 65 6e 29 $circularWarn)));.if.($children)
128a0 20 7b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 54 72 65 65 28 24 63 68 69 6c 64 72 65 6e 2c 20 24 .{.$this->printTree($children,.$
128c0 70 72 65 66 69 78 20 2e 20 28 24 69 73 4c 61 73 74 20 3f 20 27 20 20 20 27 20 3a 20 27 e2 94 82 prefix...($isLast.?.'...'.:.'...
128e0 20 20 27 29 2c 20 24 6c 65 76 65 6c 20 2b 20 31 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 ..'),.$level.+.1);.}.}.}..privat
12900 65 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 54 72 65 65 4c 69 6e 65 28 24 6c 69 6e 65 29 0a e.function.writeTreeLine($line).
12920 7b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 69 66 20 28 21 24 69 6f {.$io.=.$this->getIO();.if.(!$io
12940 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 73 74 72 5f 72 ->isDecorated()).{.$line.=.str_r
12960 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 e2 94 94 27 2c 20 27 e2 94 9c 27 2c 20 27 e2 94 80 e2 eplace(array('...',.'...',.'....
12980 94 80 27 2c 20 27 e2 94 82 27 29 2c 20 61 72 72 61 79 28 27 60 2d 27 2c 20 27 7c 2d 27 2c 20 27 ..',.'...'),.array('`-',.'|-',.'
129a0 2d 27 2c 20 27 7c 27 29 2c 20 24 6c 69 6e 65 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 -',.'|'),.$line);.}..$io->write(
129c0 24 6c 69 6e 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d $line);.}.}.<?php............nam
129e0 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f espace.Composer\Command;..use.Co
12a00 6d 70 6f 73 65 72 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f mposer\Cache;.use.Composer\Facto
12a20 72 79 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c ry;.use.Symfony\Component\Consol
12a40 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 e\Input\InputInterface;.use.Symf
12a60 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 ony\Component\Console\Output\Out
12a80 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6c 65 61 72 43 61 63 putInterface;.....class.ClearCac
12aa0 68 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a heCommand.extends.BaseCommand.{.
12ac0 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b protected.function.configure().{
12ae0 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 63 6c 65 61 72 2d 63 61 63 68 65 27 29 0a .$this.->setName('clear-cache').
12b00 2d 3e 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 28 27 63 6c 65 61 72 63 61 63 68 65 27 29 ->setAliases(array('clearcache')
12b20 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 43 6c 65 61 72 73 20 63 6f 6d 70 6f ).->setDescription('Clears.compo
12b40 73 65 72 5c 27 73 20 69 6e 74 65 72 6e 61 6c 20 70 61 63 6b 61 67 65 20 63 61 63 68 65 2e 27 29 ser\'s.internal.package.cache.')
12b60 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 63 6c 65 61 .->setHelp(<<<EOT.The.<info>clea
12b80 72 2d 63 61 63 68 65 3c 2f 69 6e 66 6f 3e 20 64 65 6c 65 74 65 73 20 61 6c 6c 20 63 61 63 68 65 r-cache</info>.deletes.all.cache
12ba0 64 20 70 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 63 6f 6d 70 6f 73 65 72 27 73 0a 63 61 63 68 65 d.packages.from.composer's.cache
12bc0 20 64 69 72 65 63 74 6f 72 79 2e 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 .directory..EOT.).;.}..protected
12be0 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 .function.execute(InputInterface
12c00 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 .$input,.OutputInterface.$output
12c20 29 0a 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 43 6f 6e ).{.$config.=.Factory::createCon
12c40 66 69 67 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 24 63 fig();.$io.=.$this->getIO();..$c
12c60 61 63 68 65 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 0a 27 63 61 63 68 65 2d 64 69 72 27 20 3d achePaths.=.array(.'cache-dir'.=
12c80 3e 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 64 69 72 27 29 2c 0a 27 63 61 >.$config->get('cache-dir'),.'ca
12ca0 63 68 65 2d 66 69 6c 65 73 2d 64 69 72 27 20 3d 3e 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 che-files-dir'.=>.$config->get('
12cc0 63 61 63 68 65 2d 66 69 6c 65 73 2d 64 69 72 27 29 2c 0a 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 cache-files-dir'),.'cache-repo-d
12ce0 69 72 27 20 3d 3e 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 72 65 70 6f 2d ir'.=>.$config->get('cache-repo-
12d00 64 69 72 27 29 2c 0a 27 63 61 63 68 65 2d 76 63 73 2d 64 69 72 27 20 3d 3e 20 24 63 6f 6e 66 69 dir'),.'cache-vcs-dir'.=>.$confi
12d20 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 76 63 73 2d 64 69 72 27 29 2c 0a 29 3b 0a 0a 66 6f 72 g->get('cache-vcs-dir'),.);..for
12d40 65 61 63 68 20 28 24 63 61 63 68 65 50 61 74 68 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 63 61 each.($cachePaths.as.$key.=>.$ca
12d60 63 68 65 50 61 74 68 29 20 7b 0a 24 63 61 63 68 65 50 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 chePath).{.$cachePath.=.realpath
12d80 28 24 63 61 63 68 65 50 61 74 68 29 3b 0a 69 66 20 28 21 24 63 61 63 68 65 50 61 74 68 29 20 7b ($cachePath);.if.(!$cachePath).{
12da0 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 3c 69 6e 66 6f 3e 43 61 63 68 65 20 64 69 .$io->writeError("<info>Cache.di
12dc0 72 65 63 74 6f 72 79 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 20 28 24 6b 65 79 29 3a 20 24 rectory.does.not.exist.($key):.$
12de0 63 61 63 68 65 50 61 74 68 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d cachePath</info>");..continue;.}
12e00 0a 24 63 61 63 68 65 20 3d 20 6e 65 77 20 43 61 63 68 65 28 24 69 6f 2c 20 24 63 61 63 68 65 50 .$cache.=.new.Cache($io,.$cacheP
12e20 61 74 68 29 3b 0a 69 66 20 28 21 24 63 61 63 68 65 2d 3e 69 73 45 6e 61 62 6c 65 64 28 29 29 20 ath);.if.(!$cache->isEnabled()).
12e40 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 3c 69 6e 66 6f 3e 43 61 63 68 65 20 69 {.$io->writeError("<info>Cache.i
12e60 73 20 6e 6f 74 20 65 6e 61 62 6c 65 64 20 28 24 6b 65 79 29 3a 20 24 63 61 63 68 65 50 61 74 68 s.not.enabled.($key):.$cachePath
12e80 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 </info>");..continue;.}..$io->wr
12ea0 69 74 65 45 72 72 6f 72 28 22 3c 69 6e 66 6f 3e 43 6c 65 61 72 69 6e 67 20 63 61 63 68 65 20 28 iteError("<info>Clearing.cache.(
12ec0 24 6b 65 79 29 3a 20 24 63 61 63 68 65 50 61 74 68 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 24 63 61 63 $key):.$cachePath</info>");.$cac
12ee0 68 65 2d 3e 67 63 28 30 2c 20 30 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 he->gc(0,.0);.}..$io->writeError
12f00 28 27 3c 69 6e 66 6f 3e 41 6c 6c 20 63 61 63 68 65 73 20 63 6c 65 61 72 65 64 2e 3c 2f 69 6e 66 ('<info>All.caches.cleared.</inf
12f20 6f 3e 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 o>');.}.}.<?php............names
12f40 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 pace.Composer\Command;..use.Comp
12f60 6f 73 65 72 5c 55 74 69 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 oser\Util\Platform;.use.Composer
12f80 5c 55 74 69 6c 5c 53 69 6c 65 6e 63 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 \Util\Silencer;.use.Symfony\Comp
12fa0 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 onent\Console\Input\InputInterfa
12fc0 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c ce;.use.Symfony\Component\Consol
12fe0 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f e\Input\InputArgument;.use.Symfo
13000 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 ny\Component\Console\Input\Input
13020 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f Option;.use.Symfony\Component\Co
13040 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 nsole\Output\OutputInterface;.us
13060 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c e.Composer\Config;.use.Composer\
13080 43 6f 6e 66 69 67 5c 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 3b 0a 75 73 65 20 43 6f 6d Config\JsonConfigSource;.use.Com
130a0 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e poser\Factory;.use.Composer\Json
130c0 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 66 69 67 43 6f 6d 6d \JsonFile;......class.ConfigComm
130e0 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f and.extends.BaseCommand.{....pro
13100 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 tected.$config;.....protected.$c
13120 6f 6e 66 69 67 46 69 6c 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 onfigFile;.....protected.$config
13140 53 6f 75 72 63 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 68 43 6f 6e 66 69 Source;.....protected.$authConfi
13160 67 46 69 6c 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 68 43 6f 6e 66 69 67 gFile;.....protected.$authConfig
13180 53 6f 75 72 63 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 Source;.....protected.function.c
131a0 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 63 6f onfigure().{.$this.->setName('co
131c0 6e 66 69 67 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 65 74 20 63 6f 6e nfig').->setDescription('Set.con
131e0 66 69 67 20 6f 70 74 69 6f 6e 73 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 fig.options').->setDefinition(ar
13200 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 67 6c 6f 62 61 6c 27 2c 20 27 ray(.new.InputOption('global',.'
13220 67 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 70 g',.InputOption::VALUE_NONE,.'Ap
13240 70 6c 79 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 66 69 67 ply.command.to.the.global.config
13260 20 66 69 6c 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 65 64 69 74 6f 72 .file'),.new.InputOption('editor
13280 27 2c 20 27 65 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c ',.'e',.InputOption::VALUE_NONE,
132a0 20 27 4f 70 65 6e 20 65 64 69 74 6f 72 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e .'Open.editor'),.new.InputOption
132c0 28 27 61 75 74 68 27 2c 20 27 61 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 ('auth',.'a',.InputOption::VALUE
132e0 5f 4e 4f 4e 45 2c 20 27 41 66 66 65 63 74 20 61 75 74 68 20 63 6f 6e 66 69 67 20 66 69 6c 65 20 _NONE,.'Affect.auth.config.file.
13300 28 6f 6e 6c 79 20 75 73 65 64 20 66 6f 72 20 2d 2d 65 64 69 74 6f 72 29 27 29 2c 0a 6e 65 77 20 (only.used.for.--editor)'),.new.
13320 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 75 6e 73 65 74 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 InputOption('unset',.null,.Input
13340 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 55 6e 73 65 74 20 74 68 65 20 67 Option::VALUE_NONE,.'Unset.the.g
13360 69 76 65 6e 20 73 65 74 74 69 6e 67 2d 6b 65 79 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 iven.setting-key'),.new.InputOpt
13380 69 6f 6e 28 27 6c 69 73 74 27 2c 20 27 6c 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 ion('list',.'l',.InputOption::VA
133a0 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4c 69 73 74 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 73 65 LUE_NONE,.'List.configuration.se
133c0 74 74 69 6e 67 73 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 66 69 6c 65 27 ttings'),.new.InputOption('file'
133e0 2c 20 27 66 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 ,.'f',.InputOption::VALUE_REQUIR
13400 45 44 2c 20 27 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 63 68 6f 6f 73 65 20 61 20 64 69 66 ED,.'If.you.want.to.choose.a.dif
13420 66 65 72 65 6e 74 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 72 20 63 6f 6e 66 69 67 2e 6a ferent.composer.json.or.config.j
13440 73 6f 6e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 61 62 73 6f 6c 75 74 65 son'),.new.InputOption('absolute
13460 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 ',.null,.InputOption::VALUE_NONE
13480 2c 20 27 52 65 74 75 72 6e 73 20 61 62 73 6f 6c 75 74 65 20 70 61 74 68 73 20 77 68 65 6e 20 66 ,.'Returns.absolute.paths.when.f
134a0 65 74 63 68 69 6e 67 20 2a 2d 64 69 72 20 63 6f 6e 66 69 67 20 76 61 6c 75 65 73 20 69 6e 73 74 etching.*-dir.config.values.inst
134c0 65 61 64 20 6f 66 20 72 65 6c 61 74 69 76 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 ead.of.relative'),.new.InputArgu
134e0 6d 65 6e 74 28 27 73 65 74 74 69 6e 67 2d 6b 65 79 27 2c 20 6e 75 6c 6c 2c 20 27 53 65 74 74 69 ment('setting-key',.null,.'Setti
13500 6e 67 20 6b 65 79 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 73 65 74 ng.key'),.new.InputArgument('set
13520 74 69 6e 67 2d 76 61 6c 75 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 ting-value',.InputArgument::IS_A
13540 52 52 41 59 2c 20 27 53 65 74 74 69 6e 67 20 76 61 6c 75 65 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 RRAY,.'Setting.value'),.)).->set
13560 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 69 73 20 63 6f 6d 6d 61 6e 64 20 61 6c 6c 6f 77 73 20 Help(<<<EOT.This.command.allows.
13580 79 6f 75 20 74 6f 20 65 64 69 74 20 73 6f 6d 65 20 62 61 73 69 63 20 63 6f 6d 70 6f 73 65 72 20 you.to.edit.some.basic.composer.
135a0 73 65 74 74 69 6e 67 73 20 69 6e 20 65 69 74 68 65 72 20 74 68 65 0a 6c 6f 63 61 6c 20 63 6f 6d settings.in.either.the.local.com
135c0 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 6f 72 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f poser.json.file.or.the.global.co
135e0 6e 66 69 67 2e 6a 73 6f 6e 20 66 69 6c 65 2e 0a 0a 54 6f 20 73 65 74 20 61 20 63 6f 6e 66 69 67 nfig.json.file...To.set.a.config
13600 20 73 65 74 74 69 6e 67 3a 0a 0a 20 20 20 20 3c 63 6f 6d 6d 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 .setting:......<comment>%command
13620 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 62 69 6e 2d 64 69 72 20 62 69 6e 2f 3c 2f 63 6f 6d 6d 65 6e .full_name%.bin-dir.bin/</commen
13640 74 3e 0a 0a 54 6f 20 72 65 61 64 20 61 20 63 6f 6e 66 69 67 20 73 65 74 74 69 6e 67 3a 0a 0a 20 t>..To.read.a.config.setting:...
13660 20 20 20 3c 63 6f 6d 6d 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 ...<comment>%command.full_name%.
13680 62 69 6e 2d 64 69 72 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 20 20 20 20 4f 75 74 70 75 74 73 3a 20 3c bin-dir</comment>.....Outputs:.<
136a0 69 6e 66 6f 3e 62 69 6e 3c 2f 69 6e 66 6f 3e 0a 0a 54 6f 20 65 64 69 74 20 74 68 65 20 67 6c 6f info>bin</info>..To.edit.the.glo
136c0 62 61 6c 20 63 6f 6e 66 69 67 2e 6a 73 6f 6e 20 66 69 6c 65 3a 0a 0a 20 20 20 20 3c 63 6f 6d 6d bal.config.json.file:......<comm
136e0 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 67 6c 6f 62 61 6c ent>%command.full_name%.--global
13700 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 0a 54 6f 20 61 64 64 20 61 20 72 65 70 6f 73 69 74 6f 72 79 3a </comment>..To.add.a.repository:
13720 0a 0a 20 20 20 20 3c 63 6f 6d 6d 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d ......<comment>%command.full_nam
13740 65 25 20 72 65 70 6f 73 69 74 6f 72 69 65 73 2e 66 6f 6f 20 76 63 73 20 68 74 74 70 73 3a 2f 2f e%.repositories.foo.vcs.https://
13760 62 61 72 2e 63 6f 6d 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 0a 54 6f 20 72 65 6d 6f 76 65 20 61 20 72 bar.com</comment>..To.remove.a.r
13780 65 70 6f 73 69 74 6f 72 79 20 28 72 65 70 6f 20 69 73 20 61 20 73 68 6f 72 74 20 61 6c 69 61 73 epository.(repo.is.a.short.alias
137a0 20 66 6f 72 20 72 65 70 6f 73 69 74 6f 72 69 65 73 29 3a 0a 0a 20 20 20 20 3c 63 6f 6d 6d 65 6e .for.repositories):......<commen
137c0 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 75 6e 73 65 74 20 72 65 t>%command.full_name%.--unset.re
137e0 70 6f 2e 66 6f 6f 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 0a 54 6f 20 64 69 73 61 62 6c 65 20 70 61 63 po.foo</comment>..To.disable.pac
13800 6b 61 67 69 73 74 3a 0a 0a 20 20 20 20 3c 63 6f 6d 6d 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 kagist:......<comment>%command.f
13820 75 6c 6c 5f 6e 61 6d 65 25 20 72 65 70 6f 2e 70 61 63 6b 61 67 69 73 74 20 66 61 6c 73 65 3c 2f ull_name%.repo.packagist.false</
13840 63 6f 6d 6d 65 6e 74 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 74 65 72 20 72 65 70 6f 73 69 74 6f comment>..You.can.alter.reposito
13860 72 69 65 73 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 66 69 67 2e 6a 73 6f 6e 20 66 ries.in.the.global.config.json.f
13880 69 6c 65 20 62 79 20 70 61 73 73 69 6e 67 20 69 6e 20 74 68 65 0a 3c 69 6e 66 6f 3e 2d 2d 67 6c ile.by.passing.in.the.<info>--gl
138a0 6f 62 61 6c 3c 2f 69 6e 66 6f 3e 20 6f 70 74 69 6f 6e 2e 0a 0a 54 6f 20 65 64 69 74 20 74 68 65 obal</info>.option...To.edit.the
138c0 20 66 69 6c 65 20 69 6e 20 61 6e 20 65 78 74 65 72 6e 61 6c 20 65 64 69 74 6f 72 3a 0a 0a 20 20 .file.in.an.external.editor:....
138e0 20 20 3c 63 6f 6d 6d 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d ..<comment>%command.full_name%.-
13900 2d 65 64 69 74 6f 72 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 0a 54 6f 20 63 68 6f 6f 73 65 20 79 6f 75 -editor</comment>..To.choose.you
13920 72 20 65 64 69 74 6f 72 20 79 6f 75 20 63 61 6e 20 73 65 74 20 74 68 65 20 22 45 44 49 54 4f 52 r.editor.you.can.set.the."EDITOR
13940 22 20 65 6e 76 20 76 61 72 69 61 62 6c 65 2e 0a 0a 54 6f 20 67 65 74 20 61 20 6c 69 73 74 20 6f ".env.variable...To.get.a.list.o
13960 66 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 76 61 6c 75 65 73 20 69 6e 20 74 68 65 20 66 69 f.configuration.values.in.the.fi
13980 6c 65 3a 0a 0a 20 20 20 20 3c 63 6f 6d 6d 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f le:......<comment>%command.full_
139a0 6e 61 6d 65 25 20 2d 2d 6c 69 73 74 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 0a 59 6f 75 20 63 61 6e 20 name%.--list</comment>..You.can.
139c0 61 6c 77 61 79 73 20 70 61 73 73 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 6f 70 74 69 6f 6e always.pass.more.than.one.option
139e0 2e 20 41 73 20 61 6e 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 ..As.an.example,.if.you.want.to.
13a00 65 64 69 74 20 74 68 65 0a 67 6c 6f 62 61 6c 20 63 6f 6e 66 69 67 2e 6a 73 6f 6e 20 66 69 6c 65 edit.the.global.config.json.file
13a20 2e 0a 0a 20 20 20 20 3c 63 6f 6d 6d 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 .......<comment>%command.full_na
13a40 6d 65 25 20 2d 2d 65 64 69 74 6f 72 20 2d 2d 67 6c 6f 62 61 6c 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a me%.--editor.--global</comment>.
13a60 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e EOT.).;.}.....protected.function
13a80 20 69 6e 69 74 69 61 6c 69 7a 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 .initialize(InputInterface.$inpu
13aa0 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 70 61 t,.OutputInterface.$output).{.pa
13ac0 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 rent::initialize($input,.$output
13ae0 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 67 6c 6f 62 61 );..if.($input->getOption('globa
13b00 6c 27 29 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f l').&&.null.!==.$input->getOptio
13b20 6e 28 27 66 69 6c 65 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 n('file')).{.throw.new.\RuntimeE
13b40 78 63 65 70 74 69 6f 6e 28 27 2d 2d 66 69 6c 65 20 61 6e 64 20 2d 2d 67 6c 6f 62 61 6c 20 63 61 xception('--file.and.--global.ca
13b60 6e 20 6e 6f 74 20 62 65 20 63 6f 6d 62 69 6e 65 64 27 29 3b 0a 7d 0a 0a 24 69 6f 20 3d 20 24 74 n.not.be.combined');.}..$io.=.$t
13b80 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 46 61 his->getIO();.$this->config.=.Fa
13ba0 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 43 6f 6e 66 69 67 28 24 69 6f 29 3b 0a 0a 0a 20 0a 20 24 ctory::createConfig($io);......$
13bc0 63 6f 6e 66 69 67 46 69 6c 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 configFile.=.$input->getOption('
13be0 67 6c 6f 62 61 6c 27 29 0a 3f 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 global').?.($this->config->get('
13c00 68 6f 6d 65 27 29 20 2e 20 27 2f 63 6f 6e 66 69 67 2e 6a 73 6f 6e 27 29 0a 3a 20 28 24 69 6e 70 home')...'/config.json').:.($inp
13c20 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 66 69 6c 65 27 29 20 3f 3a 20 74 72 69 6d 28 67 65 ut->getOption('file').?:.trim(ge
13c40 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 27 29 29 20 3f 3a 20 27 63 6f 6d 70 6f 73 65 72 2e 6a tenv('COMPOSER')).?:.'composer.j
13c60 73 6f 6e 27 29 3b 0a 0a 0a 20 69 66 20 28 24 63 6f 6e 66 69 67 46 69 6c 65 20 3d 3d 3d 20 27 63 son');....if.($configFile.===.'c
13c80 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 20 26 26 20 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 63 omposer.json'.&&.!file_exists($c
13ca0 6f 6e 66 69 67 46 69 6c 65 29 20 26 26 20 72 65 61 6c 70 61 74 68 28 67 65 74 63 77 64 28 29 29 onfigFile).&&.realpath(getcwd())
13cc0 20 3d 3d 3d 20 72 65 61 6c 70 61 74 68 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 .===.realpath($this->config->get
13ce0 28 27 68 6f 6d 65 27 29 29 29 20 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 ('home'))).{.file_put_contents($
13d00 63 6f 6e 66 69 67 46 69 6c 65 2c 20 22 7b 5c 6e 7d 5c 6e 22 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d configFile,."{\n}\n");.}..$this-
13d20 3e 63 6f 6e 66 69 67 46 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 63 6f 6e 66 >configFile.=.new.JsonFile($conf
13d40 69 67 46 69 6c 65 2c 20 6e 75 6c 6c 2c 20 24 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 igFile,.null,.$io);.$this->confi
13d60 67 53 6f 75 72 63 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 24 gSource.=.new.JsonConfigSource($
13d80 74 68 69 73 2d 3e 63 6f 6e 66 69 67 46 69 6c 65 29 3b 0a 0a 24 61 75 74 68 43 6f 6e 66 69 67 46 this->configFile);..$authConfigF
13da0 69 6c 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 67 6c 6f 62 61 6c 27 ile.=.$input->getOption('global'
13dc0 29 0a 3f 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 20 ).?.($this->config->get('home').
13de0 2e 20 27 2f 61 75 74 68 2e 6a 73 6f 6e 27 29 0a 3a 20 64 69 72 6e 61 6d 65 28 72 65 61 6c 70 61 ..'/auth.json').:.dirname(realpa
13e00 74 68 28 24 63 6f 6e 66 69 67 46 69 6c 65 29 29 20 2e 20 27 2f 61 75 74 68 2e 6a 73 6f 6e 27 3b th($configFile))...'/auth.json';
13e20 0a 0a 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 20 3d 20 6e 65 77 20 4a 73 ..$this->authConfigFile.=.new.Js
13e40 6f 6e 46 69 6c 65 28 24 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 2c 20 6e 75 6c 6c 2c 20 24 69 onFile($authConfigFile,.null,.$i
13e60 6f 29 3b 0a 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 20 3d 20 6e 65 o);.$this->authConfigSource.=.ne
13e80 77 20 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 24 74 68 69 73 2d 3e 61 75 74 68 43 6f w.JsonConfigSource($this->authCo
13ea0 6e 66 69 67 46 69 6c 65 2c 20 74 72 75 65 29 3b 0a 0a 0a 20 69 66 20 28 24 69 6e 70 75 74 2d 3e nfigFile,.true);....if.($input->
13ec0 67 65 74 4f 70 74 69 6f 6e 28 27 67 6c 6f 62 61 6c 27 29 20 26 26 20 21 24 74 68 69 73 2d 3e 63 getOption('global').&&.!$this->c
13ee0 6f 6e 66 69 67 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 74 6f 75 63 68 28 24 74 68 onfigFile->exists()).{.touch($th
13f00 69 73 2d 3e 63 6f 6e 66 69 67 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 24 74 68 69 is->configFile->getPath());.$thi
13f20 73 2d 3e 63 6f 6e 66 69 67 46 69 6c 65 2d 3e 77 72 69 74 65 28 61 72 72 61 79 28 27 63 6f 6e 66 s->configFile->write(array('conf
13f40 69 67 27 20 3d 3e 20 6e 65 77 20 5c 41 72 72 61 79 4f 62 6a 65 63 74 29 29 3b 0a 53 69 6c 65 6e ig'.=>.new.\ArrayObject));.Silen
13f60 63 65 72 3a 3a 63 61 6c 6c 28 27 63 68 6d 6f 64 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 cer::call('chmod',.$this->config
13f80 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 30 36 30 30 29 3b 0a 7d 0a 69 66 20 28 24 69 File->getPath(),.0600);.}.if.($i
13fa0 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 67 6c 6f 62 61 6c 27 29 20 26 26 20 21 24 74 nput->getOption('global').&&.!$t
13fc0 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b his->authConfigFile->exists()).{
13fe0 0a 74 6f 75 63 68 28 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 2d 3e 67 65 .touch($this->authConfigFile->ge
14000 74 50 61 74 68 28 29 29 3b 0a 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 2d tPath());.$this->authConfigFile-
14020 3e 77 72 69 74 65 28 61 72 72 61 79 28 27 68 74 74 70 2d 62 61 73 69 63 27 20 3d 3e 20 6e 65 77 >write(array('http-basic'.=>.new
14040 20 5c 41 72 72 61 79 4f 62 6a 65 63 74 2c 20 27 67 69 74 68 75 62 2d 6f 61 75 74 68 27 20 3d 3e .\ArrayObject,.'github-oauth'.=>
14060 20 6e 65 77 20 5c 41 72 72 61 79 4f 62 6a 65 63 74 2c 20 27 67 69 74 6c 61 62 2d 6f 61 75 74 68 .new.\ArrayObject,.'gitlab-oauth
14080 27 20 3d 3e 20 6e 65 77 20 5c 41 72 72 61 79 4f 62 6a 65 63 74 29 29 3b 0a 53 69 6c 65 6e 63 65 '.=>.new.\ArrayObject));.Silence
140a0 72 3a 3a 63 61 6c 6c 28 27 63 68 6d 6f 64 27 2c 20 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 r::call('chmod',.$this->authConf
140c0 69 67 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 30 36 30 30 29 3b 0a 7d 0a 0a 69 66 20 igFile->getPath(),.0600);.}..if.
140e0 28 21 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b (!$this->configFile->exists()).{
14100 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 .throw.new.\RuntimeException(spr
14120 69 6e 74 66 28 27 46 69 6c 65 20 22 25 73 22 20 63 61 6e 6e 6f 74 20 62 65 20 66 6f 75 6e 64 20 intf('File."%s".cannot.be.found.
14140 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 27 2c 20 24 63 6f 6e 66 in.the.current.directory',.$conf
14160 69 67 46 69 6c 65 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 igFile));.}.}.....protected.func
14180 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 tion.execute(InputInterface.$inp
141a0 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 0a ut,.OutputInterface.$output).{..
141c0 20 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 65 64 69 74 6f 72 27 29 .if.($input->getOption('editor')
141e0 29 20 7b 0a 24 65 64 69 74 6f 72 20 3d 20 65 73 63 61 70 65 73 68 65 6c 6c 63 6d 64 28 67 65 74 ).{.$editor.=.escapeshellcmd(get
14200 65 6e 76 28 27 45 44 49 54 4f 52 27 29 29 3b 0a 69 66 20 28 21 24 65 64 69 74 6f 72 29 20 7b 0a env('EDITOR'));.if.(!$editor).{.
14220 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 24 65 64 if.(Platform::isWindows()).{.$ed
14240 69 74 6f 72 20 3d 20 27 6e 6f 74 65 70 61 64 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 61 itor.=.'notepad';.}.else.{.forea
14260 63 68 20 28 61 72 72 61 79 28 27 65 64 69 74 6f 72 27 2c 20 27 76 69 6d 27 2c 20 27 76 69 27 2c ch.(array('editor',.'vim',.'vi',
14280 20 27 6e 61 6e 6f 27 2c 20 27 70 69 63 6f 27 2c 20 27 65 64 27 29 20 61 73 20 24 63 61 6e 64 69 .'nano',.'pico',.'ed').as.$candi
142a0 64 61 74 65 29 20 7b 0a 69 66 20 28 65 78 65 63 28 27 77 68 69 63 68 20 27 2e 24 63 61 6e 64 69 date).{.if.(exec('which.'.$candi
142c0 64 61 74 65 29 29 20 7b 0a 24 65 64 69 74 6f 72 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 62 date)).{.$editor.=.$candidate;.b
142e0 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 24 66 69 6c 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 reak;.}.}.}.}..$file.=.$input->g
14300 65 74 4f 70 74 69 6f 6e 28 27 61 75 74 68 27 29 20 3f 20 24 74 68 69 73 2d 3e 61 75 74 68 43 6f etOption('auth').?.$this->authCo
14320 6e 66 69 67 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 20 3a 20 24 74 68 69 73 2d 3e 63 6f 6e nfigFile->getPath().:.$this->con
14340 66 69 67 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 3b 0a 73 79 73 74 65 6d 28 24 65 64 69 74 figFile->getPath();.system($edit
14360 6f 72 20 2e 20 27 20 27 20 2e 20 24 66 69 6c 65 20 2e 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 or...'.'...$file...(Platform::is
14380 57 69 6e 64 6f 77 73 28 29 20 3f 20 27 27 20 3a 20 27 20 3e 20 60 74 74 79 60 27 29 29 3b 0a 0a Windows().?.''.:.'.>.`tty`'));..
143a0 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 69 66 20 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 return.0;.}..if.(!$input->getOpt
143c0 69 6f 6e 28 27 67 6c 6f 62 61 6c 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e ion('global')).{.$this->config->
143e0 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 46 69 6c 65 2d 3e 72 65 61 64 28 29 29 merge($this->configFile->read())
14400 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 65 28 61 72 72 61 79 28 27 63 6f ;.$this->config->merge(array('co
14420 6e 66 69 67 27 20 3d 3e 20 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 2d 3e nfig'.=>.$this->authConfigFile->
14440 65 78 69 73 74 73 28 29 20 3f 20 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 exists().?.$this->authConfigFile
14460 2d 3e 72 65 61 64 28 29 20 3a 20 61 72 72 61 79 28 29 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 ->read().:.array()));.}....if.($
14480 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6c 69 73 74 27 29 29 20 7b 0a 24 74 68 69 input->getOption('list')).{.$thi
144a0 73 2d 3e 6c 69 73 74 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 63 6f 6e 66 s->listConfiguration($this->conf
144c0 69 67 2d 3e 61 6c 6c 28 29 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 72 61 77 28 29 2c ig->all(),.$this->config->raw(),
144e0 20 24 6f 75 74 70 75 74 29 3b 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 24 73 65 74 74 69 6e .$output);..return.0;.}..$settin
14500 67 4b 65 79 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 73 65 74 74 gKey.=.$input->getArgument('sett
14520 69 6e 67 2d 6b 65 79 27 29 3b 0a 69 66 20 28 21 24 73 65 74 74 69 6e 67 4b 65 79 29 20 7b 0a 72 ing-key');.if.(!$settingKey).{.r
14540 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 20 69 66 20 28 61 72 72 61 79 28 29 20 21 3d 3d 20 24 69 eturn.0;.}....if.(array().!==.$i
14560 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 73 65 74 74 69 6e 67 2d 76 61 6c 75 65 nput->getArgument('setting-value
14580 27 29 20 26 26 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 6e 73 65 74 27 29 ').&&.$input->getOption('unset')
145a0 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 ).{.throw.new.\RuntimeException(
145c0 27 59 6f 75 20 63 61 6e 20 6e 6f 74 20 63 6f 6d 62 69 6e 65 20 61 20 73 65 74 74 69 6e 67 20 76 'You.can.not.combine.a.setting.v
145e0 61 6c 75 65 20 77 69 74 68 20 2d 2d 75 6e 73 65 74 27 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 61 72 alue.with.--unset');.}....if.(ar
14600 72 61 79 28 29 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 73 ray().===.$input->getArgument('s
14620 65 74 74 69 6e 67 2d 76 61 6c 75 65 27 29 20 26 26 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 etting-value').&&.!$input->getOp
14640 74 69 6f 6e 28 27 75 6e 73 65 74 27 29 29 20 7b 0a 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e tion('unset')).{.$data.=.$this->
14660 63 6f 6e 66 69 67 2d 3e 61 6c 6c 28 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f config->all();.if.(preg_match('/
14680 5e 72 65 70 6f 73 3f 28 3f 3a 69 74 6f 72 69 65 73 29 3f 28 3f 3a 5c 2e 28 2e 2b 29 29 3f 2f 27 ^repos?(?:itories)?(?:\.(.+))?/'
146a0 2c 20 24 73 65 74 74 69 6e 67 4b 65 79 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 69 66 20 28 ,.$settingKey,.$matches)).{.if.(
146c0 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 69 empty($matches[1])).{.$value.=.i
146e0 73 73 65 74 28 24 64 61 74 61 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 29 20 3f 20 24 64 sset($data['repositories']).?.$d
14700 61 74 61 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 20 3a 20 61 72 72 61 79 28 29 3b 0a 7d ata['repositories'].:.array();.}
14720 20 65 6c 73 65 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 64 61 74 61 5b 27 72 65 70 6f 73 69 .else.{.if.(!isset($data['reposi
14740 74 6f 72 69 65 73 27 5d 5b 24 6d 61 74 63 68 65 73 5b 31 5d 5d 29 29 20 7b 0a 74 68 72 6f 77 20 tories'][$matches[1]])).{.throw.
14760 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 new.\InvalidArgumentException('T
14780 68 65 72 65 20 69 73 20 6e 6f 20 27 2e 24 6d 61 74 63 68 65 73 5b 31 5d 2e 27 20 72 65 70 6f 73 here.is.no.'.$matches[1].'.repos
147a0 69 74 6f 72 79 20 64 65 66 69 6e 65 64 27 29 3b 0a 7d 0a 0a 24 76 61 6c 75 65 20 3d 20 24 64 61 itory.defined');.}..$value.=.$da
147c0 74 61 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 5b 24 6d 61 74 63 68 65 73 5b 31 5d 5d 3b ta['repositories'][$matches[1]];
147e0 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 73 74 72 70 6f 73 28 24 73 65 74 74 69 6e 67 4b 65 79 2c .}.}.elseif.(strpos($settingKey,
14800 20 27 2e 27 29 29 20 7b 0a 24 62 69 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 73 .'.')).{.$bits.=.explode('.',.$s
14820 65 74 74 69 6e 67 4b 65 79 29 3b 0a 24 64 61 74 61 20 3d 20 24 64 61 74 61 5b 27 63 6f 6e 66 69 ettingKey);.$data.=.$data['confi
14840 67 27 5d 3b 0a 24 6d 61 74 63 68 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 62 g'];.$match.=.false;.foreach.($b
14860 69 74 73 20 61 73 20 24 62 69 74 29 20 7b 0a 24 6b 65 79 20 3d 20 69 73 73 65 74 28 24 6b 65 79 its.as.$bit).{.$key.=.isset($key
14880 29 20 3f 20 24 6b 65 79 2e 27 2e 27 2e 24 62 69 74 20 3a 20 24 62 69 74 3b 0a 24 6d 61 74 63 68 ).?.$key.'.'.$bit.:.$bit;.$match
148a0 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 24 6b 65 79 5d 29 .=.false;.if.(isset($data[$key])
148c0 29 20 7b 0a 24 6d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 24 64 61 74 61 20 3d 20 24 64 61 74 61 ).{.$match.=.true;.$data.=.$data
148e0 5b 24 6b 65 79 5d 3b 0a 75 6e 73 65 74 28 24 6b 65 79 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 [$key];.unset($key);.}.}..if.(!$
14900 6d 61 74 63 68 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 match).{.throw.new.\RuntimeExcep
14920 74 69 6f 6e 28 24 73 65 74 74 69 6e 67 4b 65 79 2e 27 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 tion($settingKey.'.is.not.define
14940 64 2e 27 29 3b 0a 7d 0a 0a 24 76 61 6c 75 65 20 3d 20 24 64 61 74 61 3b 0a 7d 20 65 6c 73 65 69 d.');.}..$value.=.$data;.}.elsei
14960 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 63 6f 6e 66 69 67 27 5d 5b 24 73 65 74 74 69 6e f.(isset($data['config'][$settin
14980 67 4b 65 79 5d 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 gKey])).{.$value.=.$this->config
149a0 2d 3e 67 65 74 28 24 73 65 74 74 69 6e 67 4b 65 79 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 ->get($settingKey,.$input->getOp
149c0 74 69 6f 6e 28 27 61 62 73 6f 6c 75 74 65 27 29 20 3f 20 30 20 3a 20 43 6f 6e 66 69 67 3a 3a 52 tion('absolute').?.0.:.Config::R
149e0 45 4c 41 54 49 56 45 5f 50 41 54 48 53 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e ELATIVE_PATHS);.}.else.{.throw.n
14a00 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 73 65 74 74 69 6e 67 4b 65 79 ew.\RuntimeException($settingKey
14a20 2e 27 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 27 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 61 .'.is.not.defined');.}..if.(is_a
14a40 72 72 61 79 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 6a 73 6f 6e 5f 65 6e rray($value)).{.$value.=.json_en
14a60 63 6f 64 65 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d code($value);.}..$this->getIO()-
14a80 3e 77 72 69 74 65 28 24 76 61 6c 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 24 76 >write($value);..return.0;.}..$v
14aa0 61 6c 75 65 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 73 65 74 alues.=.$input->getArgument('set
14ac0 74 69 6e 67 2d 76 61 6c 75 65 27 29 3b 20 0a 0a 24 62 6f 6f 6c 65 61 6e 56 61 6c 69 64 61 74 6f ting-value');...$booleanValidato
14ae0 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 69 6e 5f r.=.function.($val).{.return.in_
14b00 61 72 72 61 79 28 24 76 61 6c 2c 20 61 72 72 61 79 28 27 74 72 75 65 27 2c 20 27 66 61 6c 73 65 array($val,.array('true',.'false
14b20 27 2c 20 27 31 27 2c 20 27 30 27 29 2c 20 74 72 75 65 29 3b 20 7d 3b 0a 24 62 6f 6f 6c 65 61 6e ',.'1',.'0'),.true);.};.$boolean
14b40 4e 6f 72 6d 61 6c 69 7a 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 Normalizer.=.function.($val).{.r
14b60 65 74 75 72 6e 20 24 76 61 6c 20 21 3d 3d 20 27 66 61 6c 73 65 27 20 26 26 20 28 62 6f 6f 6c 29 eturn.$val.!==.'false'.&&.(bool)
14b80 20 24 76 61 6c 3b 20 7d 3b 0a 0a 0a 20 24 75 6e 69 71 75 65 43 6f 6e 66 69 67 56 61 6c 75 65 73 .$val;.};....$uniqueConfigValues
14ba0 20 3d 20 61 72 72 61 79 28 0a 27 70 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 27 20 3d 3e 20 61 .=.array(.'process-timeout'.=>.a
14bc0 72 72 61 79 28 27 69 73 5f 6e 75 6d 65 72 69 63 27 2c 20 27 69 6e 74 76 61 6c 27 29 2c 0a 27 75 rray('is_numeric',.'intval'),.'u
14be0 73 65 2d 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 20 3d 3e 20 61 72 72 61 79 28 24 62 6f 6f 6c 65 se-include-path'.=>.array($boole
14c00 61 6e 56 61 6c 69 64 61 74 6f 72 2c 20 24 62 6f 6f 6c 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 29 anValidator,.$booleanNormalizer)
14c20 2c 0a 27 70 72 65 66 65 72 72 65 64 2d 69 6e 73 74 61 6c 6c 27 20 3d 3e 20 61 72 72 61 79 28 0a ,.'preferred-install'.=>.array(.
14c40 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 69 6e 5f 61 72 72 61 function.($val).{.return.in_arra
14c60 79 28 24 76 61 6c 2c 20 61 72 72 61 79 28 27 61 75 74 6f 27 2c 20 27 73 6f 75 72 63 65 27 2c 20 y($val,.array('auto',.'source',.
14c80 27 64 69 73 74 27 29 2c 20 74 72 75 65 29 3b 20 7d 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 'dist'),.true);.},.function.($va
14ca0 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 2c 0a 29 2c 0a 27 73 74 6f 72 65 2d 61 l).{.return.$val;.},.),.'store-a
14cc0 75 74 68 73 27 20 3d 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 uths'.=>.array(.function.($val).
14ce0 7b 20 72 65 74 75 72 6e 20 69 6e 5f 61 72 72 61 79 28 24 76 61 6c 2c 20 61 72 72 61 79 28 27 74 {.return.in_array($val,.array('t
14d00 72 75 65 27 2c 20 27 66 61 6c 73 65 27 2c 20 27 70 72 6f 6d 70 74 27 29 2c 20 74 72 75 65 29 3b rue',.'false',.'prompt'),.true);
14d20 20 7d 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 0a 69 66 20 28 27 70 72 6f 6d 70 .},.function.($val).{.if.('promp
14d40 74 27 20 3d 3d 3d 20 24 76 61 6c 29 20 7b 0a 72 65 74 75 72 6e 20 27 70 72 6f 6d 70 74 27 3b 0a t'.===.$val).{.return.'prompt';.
14d60 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 20 21 3d 3d 20 27 66 61 6c 73 65 27 20 26 26 20 28 62 }..return.$val.!==.'false'.&&.(b
14d80 6f 6f 6c 29 20 24 76 61 6c 3b 0a 7d 2c 0a 29 2c 0a 27 6e 6f 74 69 66 79 2d 6f 6e 2d 69 6e 73 74 ool).$val;.},.),.'notify-on-inst
14da0 61 6c 6c 27 20 3d 3e 20 61 72 72 61 79 28 24 62 6f 6f 6c 65 61 6e 56 61 6c 69 64 61 74 6f 72 2c all'.=>.array($booleanValidator,
14dc0 20 24 62 6f 6f 6c 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 29 2c 0a 27 76 65 6e 64 6f 72 2d 64 69 .$booleanNormalizer),.'vendor-di
14de0 72 27 20 3d 3e 20 61 72 72 61 79 28 27 69 73 5f 73 74 72 69 6e 67 27 2c 20 66 75 6e 63 74 69 6f r'.=>.array('is_string',.functio
14e00 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 29 2c 0a 27 62 69 6e n.($val).{.return.$val;.}),.'bin
14e20 2d 64 69 72 27 20 3d 3e 20 61 72 72 61 79 28 27 69 73 5f 73 74 72 69 6e 67 27 2c 20 66 75 6e 63 -dir'.=>.array('is_string',.func
14e40 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 29 2c 0a 27 tion.($val).{.return.$val;.}),.'
14e60 61 72 63 68 69 76 65 2d 64 69 72 27 20 3d 3e 20 61 72 72 61 79 28 27 69 73 5f 73 74 72 69 6e 67 archive-dir'.=>.array('is_string
14e80 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c ',.function.($val).{.return.$val
14ea0 3b 20 7d 29 2c 0a 27 61 72 63 68 69 76 65 2d 66 6f 72 6d 61 74 27 20 3d 3e 20 61 72 72 61 79 28 ;.}),.'archive-format'.=>.array(
14ec0 27 69 73 5f 73 74 72 69 6e 67 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 'is_string',.function.($val).{.r
14ee0 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 29 2c 0a 27 64 61 74 61 2d 64 69 72 27 20 3d 3e 20 61 72 eturn.$val;.}),.'data-dir'.=>.ar
14f00 72 61 79 28 27 69 73 5f 73 74 72 69 6e 67 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 ray('is_string',.function.($val)
14f20 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 29 2c 0a 27 63 61 63 68 65 2d 64 69 72 27 20 .{.return.$val;.}),.'cache-dir'.
14f40 3d 3e 20 61 72 72 61 79 28 27 69 73 5f 73 74 72 69 6e 67 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 =>.array('is_string',.function.(
14f60 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 29 2c 0a 27 63 61 63 68 65 2d $val).{.return.$val;.}),.'cache-
14f80 66 69 6c 65 73 2d 64 69 72 27 20 3d 3e 20 61 72 72 61 79 28 27 69 73 5f 73 74 72 69 6e 67 27 2c files-dir'.=>.array('is_string',
14fa0 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 .function.($val).{.return.$val;.
14fc0 7d 29 2c 0a 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 20 3d 3e 20 61 72 72 61 79 28 27 69 }),.'cache-repo-dir'.=>.array('i
14fe0 73 5f 73 74 72 69 6e 67 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 s_string',.function.($val).{.ret
15000 75 72 6e 20 24 76 61 6c 3b 20 7d 29 2c 0a 27 63 61 63 68 65 2d 76 63 73 2d 64 69 72 27 20 3d 3e urn.$val;.}),.'cache-vcs-dir'.=>
15020 20 61 72 72 61 79 28 27 69 73 5f 73 74 72 69 6e 67 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 .array('is_string',.function.($v
15040 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 29 2c 0a 27 63 61 63 68 65 2d 74 74 al).{.return.$val;.}),.'cache-tt
15060 6c 27 20 3d 3e 20 61 72 72 61 79 28 27 69 73 5f 6e 75 6d 65 72 69 63 27 2c 20 27 69 6e 74 76 61 l'.=>.array('is_numeric',.'intva
15080 6c 27 29 2c 0a 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 74 74 6c 27 20 3d 3e 20 61 72 72 61 79 28 l'),.'cache-files-ttl'.=>.array(
150a0 27 69 73 5f 6e 75 6d 65 72 69 63 27 2c 20 27 69 6e 74 76 61 6c 27 29 2c 0a 27 63 61 63 68 65 2d 'is_numeric',.'intval'),.'cache-
150c0 66 69 6c 65 73 2d 6d 61 78 73 69 7a 65 27 20 3d 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 6f files-maxsize'.=>.array(.functio
150e0 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e n.($val).{.return.preg_match('/^
15100 5c 73 2a 28 5b 30 2d 39 2e 5d 2b 29 5c 73 2a 28 3f 3a 28 5b 6b 6d 67 5d 29 28 3f 3a 69 3f 62 29 \s*([0-9.]+)\s*(?:([kmg])(?:i?b)
15120 3f 29 3f 5c 73 2a 24 2f 69 27 2c 20 24 76 61 6c 29 20 3e 20 30 3b 20 7d 2c 0a 66 75 6e 63 74 69 ?)?\s*$/i',.$val).>.0;.},.functi
15140 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 2c 0a 29 2c 0a 27 on.($val).{.return.$val;.},.),.'
15160 62 69 6e 2d 63 6f 6d 70 61 74 27 20 3d 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 6f 6e 20 28 bin-compat'.=>.array(.function.(
15180 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 69 6e 5f 61 72 72 61 79 28 24 76 61 6c 2c 20 61 72 $val).{.return.in_array($val,.ar
151a0 72 61 79 28 27 61 75 74 6f 27 2c 20 27 66 75 6c 6c 27 29 29 3b 20 7d 2c 0a 66 75 6e 63 74 69 6f ray('auto',.'full'));.},.functio
151c0 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 3b 20 7d 2c 0a 29 2c 0a 27 64 n.($val).{.return.$val;.},.),.'d
151e0 69 73 63 61 72 64 2d 63 68 61 6e 67 65 73 27 20 3d 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 iscard-changes'.=>.array(.functi
15200 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 69 6e 5f 61 72 72 61 79 28 24 76 61 6c on.($val).{.return.in_array($val
15220 2c 20 61 72 72 61 79 28 27 73 74 61 73 68 27 2c 20 27 74 72 75 65 27 2c 20 27 66 61 6c 73 65 27 ,.array('stash',.'true',.'false'
15240 2c 20 27 31 27 2c 20 27 30 27 29 2c 20 74 72 75 65 29 3b 20 7d 2c 0a 66 75 6e 63 74 69 6f 6e 20 ,.'1',.'0'),.true);.},.function.
15260 28 24 76 61 6c 29 20 7b 0a 69 66 20 28 27 73 74 61 73 68 27 20 3d 3d 3d 20 24 76 61 6c 29 20 7b ($val).{.if.('stash'.===.$val).{
15280 0a 72 65 74 75 72 6e 20 27 73 74 61 73 68 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 20 .return.'stash';.}..return.$val.
152a0 21 3d 3d 20 27 66 61 6c 73 65 27 20 26 26 20 28 62 6f 6f 6c 29 20 24 76 61 6c 3b 0a 7d 2c 0a 29 !==.'false'.&&.(bool).$val;.},.)
152c0 2c 0a 27 61 75 74 6f 6c 6f 61 64 65 72 2d 73 75 66 66 69 78 27 20 3d 3e 20 61 72 72 61 79 28 27 ,.'autoloader-suffix'.=>.array('
152e0 69 73 5f 73 74 72 69 6e 67 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 is_string',.function.($val).{.re
15300 74 75 72 6e 20 24 76 61 6c 20 3d 3d 3d 20 27 6e 75 6c 6c 27 20 3f 20 6e 75 6c 6c 20 3a 20 24 76 turn.$val.===.'null'.?.null.:.$v
15320 61 6c 3b 20 7d 29 2c 0a 27 73 6f 72 74 2d 70 61 63 6b 61 67 65 73 27 20 3d 3e 20 61 72 72 61 79 al;.}),.'sort-packages'.=>.array
15340 28 24 62 6f 6f 6c 65 61 6e 56 61 6c 69 64 61 74 6f 72 2c 20 24 62 6f 6f 6c 65 61 6e 4e 6f 72 6d ($booleanValidator,.$booleanNorm
15360 61 6c 69 7a 65 72 29 2c 0a 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 20 3d alizer),.'optimize-autoloader'.=
15380 3e 20 61 72 72 61 79 28 24 62 6f 6f 6c 65 61 6e 56 61 6c 69 64 61 74 6f 72 2c 20 24 62 6f 6f 6c >.array($booleanValidator,.$bool
153a0 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 29 2c 0a 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 eanNormalizer),.'classmap-author
153c0 69 74 61 74 69 76 65 27 20 3d 3e 20 61 72 72 61 79 28 24 62 6f 6f 6c 65 61 6e 56 61 6c 69 64 61 itative'.=>.array($booleanValida
153e0 74 6f 72 2c 20 24 62 6f 6f 6c 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 29 2c 0a 27 70 72 65 70 65 tor,.$booleanNormalizer),.'prepe
15400 6e 64 2d 61 75 74 6f 6c 6f 61 64 65 72 27 20 3d 3e 20 61 72 72 61 79 28 24 62 6f 6f 6c 65 61 6e nd-autoloader'.=>.array($boolean
15420 56 61 6c 69 64 61 74 6f 72 2c 20 24 62 6f 6f 6c 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 29 2c 0a Validator,.$booleanNormalizer),.
15440 27 64 69 73 61 62 6c 65 2d 74 6c 73 27 20 3d 3e 20 61 72 72 61 79 28 24 62 6f 6f 6c 65 61 6e 56 'disable-tls'.=>.array($booleanV
15460 61 6c 69 64 61 74 6f 72 2c 20 24 62 6f 6f 6c 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 29 2c 0a 27 alidator,.$booleanNormalizer),.'
15480 73 65 63 75 72 65 2d 68 74 74 70 27 20 3d 3e 20 61 72 72 61 79 28 24 62 6f 6f 6c 65 61 6e 56 61 secure-http'.=>.array($booleanVa
154a0 6c 69 64 61 74 6f 72 2c 20 24 62 6f 6f 6c 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 29 2c 0a 27 63 lidator,.$booleanNormalizer),.'c
154c0 61 66 69 6c 65 27 20 3d 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 afile'.=>.array(.function.($val)
154e0 20 7b 20 72 65 74 75 72 6e 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 76 61 6c 29 20 26 26 20 69 .{.return.file_exists($val).&&.i
15500 73 5f 72 65 61 64 61 62 6c 65 28 24 76 61 6c 29 3b 20 7d 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 s_readable($val);.},.function.($
15520 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 61 6c 20 3d 3d 3d 20 27 6e 75 6c 6c 27 20 3f 20 val).{.return.$val.===.'null'.?.
15540 6e 75 6c 6c 20 3a 20 24 76 61 6c 3b 20 7d 2c 0a 29 2c 0a 27 63 61 70 61 74 68 27 20 3d 3e 20 61 null.:.$val;.},.),.'capath'.=>.a
15560 72 72 61 79 28 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 69 rray(.function.($val).{.return.i
15580 73 5f 64 69 72 28 24 76 61 6c 29 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 76 61 6c 29 s_dir($val).&&.is_readable($val)
155a0 3b 20 7d 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 24 76 ;.},.function.($val).{.return.$v
155c0 61 6c 20 3d 3d 3d 20 27 6e 75 6c 6c 27 20 3f 20 6e 75 6c 6c 20 3a 20 24 76 61 6c 3b 20 7d 2c 0a al.===.'null'.?.null.:.$val;.},.
155e0 29 2c 0a 27 67 69 74 68 75 62 2d 65 78 70 6f 73 65 2d 68 6f 73 74 6e 61 6d 65 27 20 3d 3e 20 61 ),.'github-expose-hostname'.=>.a
15600 72 72 61 79 28 24 62 6f 6f 6c 65 61 6e 56 61 6c 69 64 61 74 6f 72 2c 20 24 62 6f 6f 6c 65 61 6e rray($booleanValidator,.$boolean
15620 4e 6f 72 6d 61 6c 69 7a 65 72 29 2c 0a 29 3b 0a 24 6d 75 6c 74 69 43 6f 6e 66 69 67 56 61 6c 75 Normalizer),.);.$multiConfigValu
15640 65 73 20 3d 20 61 72 72 61 79 28 0a 27 67 69 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 27 20 3d es.=.array(.'github-protocols'.=
15660 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 73 29 20 7b 0a 69 66 20 28 >.array(.function.($vals).{.if.(
15680 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 61 72 72 61 !is_array($vals)).{.return.'arra
156a0 79 20 65 78 70 65 63 74 65 64 27 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 76 61 6c 73 20 61 y.expected';.}..foreach.($vals.a
156c0 73 20 24 76 61 6c 29 20 7b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 76 61 6c 2c 20 61 72 s.$val).{.if.(!in_array($val,.ar
156e0 72 61 79 28 27 67 69 74 27 2c 20 27 68 74 74 70 73 27 2c 20 27 73 73 68 27 29 29 29 20 7b 0a 72 ray('git',.'https',.'ssh'))).{.r
15700 65 74 75 72 6e 20 27 76 61 6c 69 64 20 70 72 6f 74 6f 63 6f 6c 73 20 69 6e 63 6c 75 64 65 3a 20 eturn.'valid.protocols.include:.
15720 67 69 74 2c 20 68 74 74 70 73 2c 20 73 73 68 27 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 git,.https,.ssh';.}.}..return.tr
15740 75 65 3b 0a 7d 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 73 29 20 7b 0a 72 65 74 75 72 6e ue;.},.function.($vals).{.return
15760 20 24 76 61 6c 73 3b 0a 7d 2c 0a 29 2c 0a 27 67 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 27 20 3d .$vals;.},.),.'github-domains'.=
15780 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 73 29 20 7b 0a 69 66 20 28 >.array(.function.($vals).{.if.(
157a0 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 61 72 72 61 !is_array($vals)).{.return.'arra
157c0 79 20 65 78 70 65 63 74 65 64 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 2c 0a y.expected';.}..return.true;.},.
157e0 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 61 6c 73 3b function.($vals).{.return.$vals;
15800 0a 7d 2c 0a 29 2c 0a 27 67 69 74 6c 61 62 2d 64 6f 6d 61 69 6e 73 27 20 3d 3e 20 61 72 72 61 79 .},.),.'gitlab-domains'.=>.array
15820 28 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 73 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 (.function.($vals).{.if.(!is_arr
15840 61 79 28 24 76 61 6c 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 61 72 72 61 79 20 65 78 70 65 63 ay($vals)).{.return.'array.expec
15860 74 65 64 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 2c 0a 66 75 6e 63 74 69 6f ted';.}..return.true;.},.functio
15880 6e 20 28 24 76 61 6c 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 61 6c 73 3b 0a 7d 2c 0a 29 2c 0a n.($vals).{.return.$vals;.},.),.
158a0 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 75 6e 69 71 75 65 43 6f 6e 66 69 67 56 61 6c 75 65 73 );..foreach.($uniqueConfigValues
158c0 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 61 6c 6c 62 61 63 6b 73 29 20 7b 0a 69 66 20 28 24 .as.$name.=>.$callbacks).{.if.($
158e0 73 65 74 74 69 6e 67 4b 65 79 20 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 69 66 20 28 24 69 6e 70 settingKey.===.$name).{.if.($inp
15900 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 6e 73 65 74 27 29 29 20 7b 0a 72 65 74 75 72 6e ut->getOption('unset')).{.return
15920 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 72 65 6d 6f 76 65 43 6f 6e 66 .$this->configSource->removeConf
15940 69 67 53 65 74 74 69 6e 67 28 24 73 65 74 74 69 6e 67 4b 65 79 29 3b 0a 7d 0a 0a 6c 69 73 74 28 igSetting($settingKey);.}..list(
15960 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 72 29 20 3d 20 24 63 61 6c 6c $validator,.$normalizer).=.$call
15980 62 61 63 6b 73 3b 0a 69 66 20 28 31 20 21 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 backs;.if.(1.!==.count($values))
159a0 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 .{.throw.new.\RuntimeException('
159c0 59 6f 75 20 63 61 6e 20 6f 6e 6c 79 20 70 61 73 73 20 6f 6e 65 20 76 61 6c 75 65 2e 20 45 78 61 You.can.only.pass.one.value..Exa
159e0 6d 70 6c 65 3a 20 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 63 6f 6e 66 69 67 20 70 mple:.php.composer.phar.config.p
15a00 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 20 33 30 30 27 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 rocess-timeout.300');.}..if.(tru
15a20 65 20 21 3d 3d 20 24 76 61 6c 69 64 61 74 69 6f 6e 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 28 24 e.!==.$validation.=.$validator($
15a40 76 61 6c 75 65 73 5b 30 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 values[0])).{.throw.new.\Runtime
15a60 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 22 25 73 22 20 69 73 20 61 6e 20 69 Exception(sprintf(.'"%s".is.an.i
15a80 6e 76 61 6c 69 64 20 76 61 6c 75 65 27 2e 28 24 76 61 6c 69 64 61 74 69 6f 6e 20 3f 20 27 20 28 nvalid.value'.($validation.?.'.(
15aa0 27 2e 24 76 61 6c 69 64 61 74 69 6f 6e 2e 27 29 27 20 3a 20 27 27 29 2c 0a 24 76 61 6c 75 65 73 '.$validation.')'.:.''),.$values
15ac0 5b 30 5d 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 [0].));.}..return.$this->configS
15ae0 6f 75 72 63 65 2d 3e 61 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 73 65 74 74 69 6e 67 ource->addConfigSetting($setting
15b00 4b 65 79 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 72 28 24 76 61 6c 75 65 73 5b 30 5d 29 29 3b 0a 7d Key,.$normalizer($values[0]));.}
15b20 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6d 75 6c 74 69 43 6f 6e 66 69 67 56 61 6c 75 65 73 20 .}..foreach.($multiConfigValues.
15b40 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 61 6c 6c 62 61 63 6b 73 29 20 7b 0a 69 66 20 28 24 73 as.$name.=>.$callbacks).{.if.($s
15b60 65 74 74 69 6e 67 4b 65 79 20 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 69 66 20 28 24 69 6e 70 75 ettingKey.===.$name).{.if.($inpu
15b80 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 6e 73 65 74 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 t->getOption('unset')).{.return.
15ba0 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 72 65 6d 6f 76 65 43 6f 6e 66 69 $this->configSource->removeConfi
15bc0 67 53 65 74 74 69 6e 67 28 24 73 65 74 74 69 6e 67 4b 65 79 29 3b 0a 7d 0a 0a 6c 69 73 74 28 24 gSetting($settingKey);.}..list($
15be0 76 61 6c 69 64 61 74 6f 72 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 72 29 20 3d 20 24 63 61 6c 6c 62 validator,.$normalizer).=.$callb
15c00 61 63 6b 73 3b 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 24 76 61 6c 69 64 61 74 69 6f 6e 20 3d acks;.if.(true.!==.$validation.=
15c20 20 24 76 61 6c 69 64 61 74 6f 72 28 24 76 61 6c 75 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 .$validator($values)).{.throw.ne
15c40 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 25 73 w.\RuntimeException(sprintf(.'%s
15c60 20 69 73 20 61 6e 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 27 2e 28 24 76 61 6c 69 64 61 74 69 .is.an.invalid.value'.($validati
15c80 6f 6e 20 3f 20 27 20 28 27 2e 24 76 61 6c 69 64 61 74 69 6f 6e 2e 27 29 27 20 3a 20 27 27 29 2c on.?.'.('.$validation.')'.:.''),
15ca0 0a 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 76 61 6c 75 65 73 29 0a 29 29 3b 0a 7d 0a 0a 72 65 74 .json_encode($values).));.}..ret
15cc0 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 61 64 64 43 6f 6e 66 urn.$this->configSource->addConf
15ce0 69 67 53 65 74 74 69 6e 67 28 24 73 65 74 74 69 6e 67 4b 65 79 2c 20 24 6e 6f 72 6d 61 6c 69 7a igSetting($settingKey,.$normaliz
15d00 65 72 28 24 76 61 6c 75 65 73 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 er($values));.}.}....if.(preg_ma
15d20 74 63 68 28 27 2f 5e 72 65 70 6f 73 3f 28 3f 3a 69 74 6f 72 69 65 73 29 3f 5c 2e 28 2e 2b 29 2f tch('/^repos?(?:itories)?\.(.+)/
15d40 27 2c 20 24 73 65 74 74 69 6e 67 4b 65 79 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 69 66 20 ',.$settingKey,.$matches)).{.if.
15d60 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 6e 73 65 74 27 29 29 20 7b 0a 72 ($input->getOption('unset')).{.r
15d80 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 72 65 6d 6f 76 eturn.$this->configSource->remov
15da0 65 52 65 70 6f 73 69 74 6f 72 79 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 7d 0a 0a 69 66 20 eRepository($matches[1]);.}..if.
15dc0 28 32 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 (2.===.count($values)).{.return.
15de0 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f $this->configSource->addReposito
15e00 72 79 28 24 6d 61 74 63 68 65 73 5b 31 5d 2c 20 61 72 72 61 79 28 0a 27 74 79 70 65 27 20 3d 3e ry($matches[1],.array(.'type'.=>
15e20 20 24 76 61 6c 75 65 73 5b 30 5d 2c 0a 27 75 72 6c 27 20 3d 3e 20 24 76 61 6c 75 65 73 5b 31 5d .$values[0],.'url'.=>.$values[1]
15e40 2c 0a 29 29 3b 0a 7d 0a 0a 69 66 20 28 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 ,.));.}..if.(1.===.count($values
15e60 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 76 61 6c 75 65 73 )).{.$value.=.strtolower($values
15e80 5b 30 5d 29 3b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 62 6f 6f 6c 65 61 6e 56 61 6c 69 64 [0]);.if.(true.===.$booleanValid
15ea0 61 74 6f 72 28 24 76 61 6c 75 65 29 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 62 ator($value)).{.if.(false.===.$b
15ec0 6f 6f 6c 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 28 24 76 61 6c 75 65 29 29 20 7b 0a 72 65 74 75 ooleanNormalizer($value)).{.retu
15ee0 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 61 64 64 52 65 70 6f 73 rn.$this->configSource->addRepos
15f00 69 74 6f 72 79 28 24 6d 61 74 63 68 65 73 5b 31 5d 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 20 65 itory($matches[1],.false);.}.}.e
15f20 6c 73 65 20 7b 0a 24 76 61 6c 75 65 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 lse.{.$value.=.JsonFile::parseJs
15f40 6f 6e 28 24 76 61 6c 75 65 73 5b 30 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 on($values[0]);..return.$this->c
15f60 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 6d 61 74 63 onfigSource->addRepository($matc
15f80 68 65 73 5b 31 5d 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 hes[1],.$value);.}.}..throw.new.
15fa0 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 70 61 73 73 \RuntimeException('You.must.pass
15fc0 20 74 68 65 20 74 79 70 65 20 61 6e 64 20 61 20 75 72 6c 2e 20 45 78 61 6d 70 6c 65 3a 20 70 68 .the.type.and.a.url..Example:.ph
15fe0 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 63 6f 6e 66 69 67 20 72 65 70 6f 73 69 74 6f 72 p.composer.phar.config.repositor
16000 69 65 73 2e 66 6f 6f 20 76 63 73 20 68 74 74 70 73 3a 2f 2f 62 61 72 2e 63 6f 6d 27 29 3b 0a 7d ies.foo.vcs.https://bar.com');.}
16020 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 70 6c 61 74 66 6f 72 6d 5c 2e ....if.(preg_match('/^platform\.
16040 28 2e 2b 29 2f 27 2c 20 24 73 65 74 74 69 6e 67 4b 65 79 2c 20 24 6d 61 74 63 68 65 73 29 29 20 (.+)/',.$settingKey,.$matches)).
16060 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 6e 73 65 74 27 29 {.if.($input->getOption('unset')
16080 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e ).{.return.$this->configSource->
160a0 72 65 6d 6f 76 65 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 73 65 74 74 69 6e 67 4b 65 79 29 removeConfigSetting($settingKey)
160c0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d ;.}..return.$this->configSource-
160e0 3e 61 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 73 65 74 74 69 6e 67 4b 65 79 2c 20 24 >addConfigSetting($settingKey,.$
16100 76 61 6c 75 65 73 5b 30 5d 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 values[0]);.}....if.(preg_match(
16120 27 2f 5e 28 67 69 74 68 75 62 2d 6f 61 75 74 68 7c 67 69 74 6c 61 62 2d 6f 61 75 74 68 7c 68 74 '/^(github-oauth|gitlab-oauth|ht
16140 74 70 2d 62 61 73 69 63 29 5c 2e 28 2e 2b 29 2f 27 2c 20 24 73 65 74 74 69 6e 67 4b 65 79 2c 20 tp-basic)\.(.+)/',.$settingKey,.
16160 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 $matches)).{.if.($input->getOpti
16180 6f 6e 28 27 75 6e 73 65 74 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 on('unset')).{.$this->authConfig
161a0 53 6f 75 72 63 65 2d 3e 72 65 6d 6f 76 65 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 6d 61 74 Source->removeConfigSetting($mat
161c0 63 68 65 73 5b 31 5d 2e 27 2e 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b 0a 24 74 68 69 73 2d ches[1].'.'.$matches[2]);.$this-
161e0 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 72 65 6d 6f 76 65 43 6f 6e 66 69 67 53 65 74 74 69 >configSource->removeConfigSetti
16200 6e 67 28 24 6d 61 74 63 68 65 73 5b 31 5d 2e 27 2e 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b ng($matches[1].'.'.$matches[2]);
16220 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 3d 3d 3d ..return;.}..if.($matches[1].===
16240 20 27 67 69 74 68 75 62 2d 6f 61 75 74 68 27 20 7c 7c 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 3d .'github-oauth'.||.$matches[1].=
16260 3d 3d 20 27 67 69 74 6c 61 62 2d 6f 61 75 74 68 27 29 20 7b 0a 69 66 20 28 31 20 21 3d 3d 20 63 ==.'gitlab-oauth').{.if.(1.!==.c
16280 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 ount($values)).{.throw.new.\Runt
162a0 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 imeException('Too.many.arguments
162c0 2c 20 65 78 70 65 63 74 65 64 20 6f 6e 6c 79 20 6f 6e 65 20 74 6f 6b 65 6e 27 29 3b 0a 7d 0a 24 ,.expected.only.one.token');.}.$
162e0 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 72 65 6d 6f 76 65 43 6f 6e 66 69 67 this->configSource->removeConfig
16300 53 65 74 74 69 6e 67 28 24 6d 61 74 63 68 65 73 5b 31 5d 2e 27 2e 27 2e 24 6d 61 74 63 68 65 73 Setting($matches[1].'.'.$matches
16320 5b 32 5d 29 3b 0a 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 61 [2]);.$this->authConfigSource->a
16340 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 6d 61 74 63 68 65 73 5b 31 5d 2e 27 2e 27 2e ddConfigSetting($matches[1].'.'.
16360 24 6d 61 74 63 68 65 73 5b 32 5d 2c 20 24 76 61 6c 75 65 73 5b 30 5d 29 3b 0a 7d 20 65 6c 73 65 $matches[2],.$values[0]);.}.else
16380 69 66 20 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 3d 3d 3d 20 27 68 74 74 70 2d 62 61 73 69 63 27 if.($matches[1].===.'http-basic'
163a0 29 20 7b 0a 69 66 20 28 32 20 21 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 20 7b 0a ).{.if.(2.!==.count($values)).{.
163c0 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 45 78 70 throw.new.\RuntimeException('Exp
163e0 65 63 74 65 64 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 20 28 75 73 65 72 6e 61 6d 65 2c 20 70 ected.two.arguments.(username,.p
16400 61 73 73 77 6f 72 64 29 2c 20 67 6f 74 20 27 2e 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 3b assword),.got.'.count($values));
16420 0a 7d 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 72 65 6d 6f 76 65 43 6f .}.$this->configSource->removeCo
16440 6e 66 69 67 53 65 74 74 69 6e 67 28 24 6d 61 74 63 68 65 73 5b 31 5d 2e 27 2e 27 2e 24 6d 61 74 nfigSetting($matches[1].'.'.$mat
16460 63 68 65 73 5b 32 5d 29 3b 0a 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 ches[2]);.$this->authConfigSourc
16480 65 2d 3e 61 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 6d 61 74 63 68 65 73 5b 31 5d 2e e->addConfigSetting($matches[1].
164a0 27 2e 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 2c 20 61 72 72 61 79 28 27 75 73 65 72 6e 61 6d 65 '.'.$matches[2],.array('username
164c0 27 20 3d 3e 20 24 76 61 6c 75 65 73 5b 30 5d 2c 20 27 70 61 73 73 77 6f 72 64 27 20 3d 3e 20 24 '.=>.$values[0],.'password'.=>.$
164e0 76 61 6c 75 65 73 5b 31 5d 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 74 68 72 6f 77 values[1]));.}..return;.}..throw
16500 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 .new.\InvalidArgumentException('
16520 53 65 74 74 69 6e 67 20 27 2e 24 73 65 74 74 69 6e 67 4b 65 79 2e 27 20 64 6f 65 73 20 6e 6f 74 Setting.'.$settingKey.'.does.not
16540 20 65 78 69 73 74 20 6f 72 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 .exist.or.is.not.supported.by.th
16560 69 73 20 63 6f 6d 6d 61 6e 64 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 is.command');.}..........protect
16580 65 64 20 66 75 6e 63 74 69 6f 6e 20 6c 69 73 74 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 61 72 ed.function.listConfiguration(ar
165a0 72 61 79 20 24 63 6f 6e 74 65 6e 74 73 2c 20 61 72 72 61 79 20 24 72 61 77 43 6f 6e 74 65 6e 74 ray.$contents,.array.$rawContent
165c0 73 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 6b 20 3d s,.OutputInterface.$output,.$k.=
165e0 20 6e 75 6c 6c 29 0a 7b 0a 24 6f 72 69 67 4b 20 3d 20 24 6b 3b 0a 24 69 6f 20 3d 20 24 74 68 69 .null).{.$origK.=.$k;.$io.=.$thi
16600 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 74 65 6e 74 73 20 61 s->getIO();.foreach.($contents.a
16620 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 6b 20 3d 3d 3d 20 6e s.$key.=>.$value).{.if.($k.===.n
16640 75 6c 6c 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 24 6b 65 79 2c 20 61 72 72 61 79 28 27 63 6f ull.&&.!in_array($key,.array('co
16660 6e 66 69 67 27 2c 20 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 29 29 29 20 7b 0a 63 6f 6e 74 69 nfig',.'repositories'))).{.conti
16680 6e 75 65 3b 0a 7d 0a 0a 24 72 61 77 56 61 6c 20 3d 20 69 73 73 65 74 28 24 72 61 77 43 6f 6e 74 nue;.}..$rawVal.=.isset($rawCont
166a0 65 6e 74 73 5b 24 6b 65 79 5d 29 20 3f 20 24 72 61 77 43 6f 6e 74 65 6e 74 73 5b 24 6b 65 79 5d ents[$key]).?.$rawContents[$key]
166c0 20 3a 20 6e 75 6c 6c 3b 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 20 26 .:.null;..if.(is_array($value).&
166e0 26 20 28 21 69 73 5f 6e 75 6d 65 72 69 63 28 6b 65 79 28 24 76 61 6c 75 65 29 29 20 7c 7c 20 28 &.(!is_numeric(key($value)).||.(
16700 24 6b 65 79 20 3d 3d 3d 20 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 20 26 26 20 6e 75 6c 6c 20 $key.===.'repositories'.&&.null.
16720 3d 3d 3d 20 24 6b 29 29 29 20 7b 0a 24 6b 20 2e 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 ===.$k))).{.$k..=.preg_replace('
16740 7b 5e 63 6f 6e 66 69 67 5c 2e 7d 27 2c 20 27 27 2c 20 24 6b 65 79 20 2e 20 27 2e 27 29 3b 0a 24 {^config\.}',.'',.$key...'.');.$
16760 74 68 69 73 2d 3e 6c 69 73 74 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 24 76 61 6c 75 65 2c 20 this->listConfiguration($value,.
16780 24 72 61 77 56 61 6c 2c 20 24 6f 75 74 70 75 74 2c 20 24 6b 29 3b 0a 24 6b 20 3d 20 24 6f 72 69 $rawVal,.$output,.$k);.$k.=.$ori
167a0 67 4b 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 gK;..continue;.}..if.(is_array($
167c0 76 61 6c 75 65 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e value)).{.$value.=.array_map(fun
167e0 63 74 69 6f 6e 20 28 24 76 61 6c 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 5f 61 72 72 61 79 28 24 ction.($val).{.return.is_array($
16800 76 61 6c 29 20 3f 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 76 61 6c 29 20 3a 20 24 76 61 6c 3b val).?.json_encode($val).:.$val;
16820 0a 7d 2c 20 24 76 61 6c 75 65 29 3b 0a 0a 24 76 61 6c 75 65 20 3d 20 27 5b 27 2e 69 6d 70 6c 6f .},.$value);..$value.=.'['.implo
16840 64 65 28 27 2c 20 27 2c 20 24 76 61 6c 75 65 29 2e 27 5d 27 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f de(',.',.$value).']';.}..if.(is_
16860 62 6f 6f 6c 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 76 61 72 5f 65 78 70 bool($value)).{.$value.=.var_exp
16880 6f 72 74 28 24 76 61 6c 75 65 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 73 74 72 ort($value,.true);.}..if.(is_str
168a0 69 6e 67 28 24 72 61 77 56 61 6c 29 20 26 26 20 24 72 61 77 56 61 6c 20 21 3d 20 24 76 61 6c 75 ing($rawVal).&&.$rawVal.!=.$valu
168c0 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 e).{.$io->write('[<comment>'...$
168e0 6b 20 2e 20 24 6b 65 79 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 20 3c 69 6e 66 6f 3e 27 20 k...$key...'</comment>].<info>'.
16900 2e 20 24 72 61 77 56 61 6c 20 2e 20 27 20 28 27 20 2e 20 24 76 61 6c 75 65 20 2e 20 27 29 3c 2f ..$rawVal...'.('...$value...')</
16920 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 5b 3c info>');.}.else.{.$io->write('[<
16940 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 6b 20 2e 20 24 6b 65 79 20 2e 20 27 3c 2f 63 6f 6d 6d 65 comment>'...$k...$key...'</comme
16960 6e 74 3e 5d 20 3c 69 6e 66 6f 3e 27 20 2e 20 24 76 61 6c 75 65 20 2e 20 27 3c 2f 69 6e 66 6f 3e nt>].<info>'...$value...'</info>
16980 27 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d ');.}.}.}.}.<?php............nam
169a0 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f espace.Composer\Command;..use.Co
169c0 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 mposer\Config;.use.Composer\Fact
169e0 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 ory;.use.Composer\Installer;.use
16a00 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 50 72 6f 6a 65 63 74 49 6e 73 74 61 .Composer\Installer\ProjectInsta
16a20 6c 6c 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 ller;.use.Composer\Installer\Ins
16a40 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 tallationManager;.use.Composer\I
16a60 6e 73 74 61 6c 6c 65 72 5c 53 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 nstaller\SuggestedPackagesReport
16a80 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b er;.use.Composer\IO\IOInterface;
16aa0 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 67 .use.Composer\Package\BasePackag
16ac0 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 e;.use.Composer\DependencyResolv
16ae0 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 er\Pool;.use.Composer\Dependency
16b00 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 Resolver\Operation\InstallOperat
16b20 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f ion;.use.Composer\Package\Versio
16b40 6e 5c 56 65 72 73 69 6f 6e 53 65 6c 65 63 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c n\VersionSelector;.use.Composer\
16b60 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3b 0a 75 73 Repository\RepositoryFactory;.us
16b80 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 e.Composer\Repository\CompositeR
16ba0 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f epository;.use.Composer\Reposito
16bc0 72 79 5c 49 6e 73 74 61 6c 6c 65 64 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 ry\InstalledFilesystemRepository
16be0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 53 63 72 69 70 74 45 76 65 6e ;.use.Composer\Script\ScriptEven
16c00 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 69 6c 65 6e 63 65 72 3b 0a ts;.use.Composer\Util\Silencer;.
16c20 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e use.Symfony\Component\Console\In
16c40 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 put\InputArgument;.use.Symfony\C
16c60 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 omponent\Console\Input\InputInte
16c80 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e rface;.use.Symfony\Component\Con
16ca0 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 sole\Input\InputOption;.use.Symf
16cc0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 ony\Component\Console\Output\Out
16ce0 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e putInterface;.use.Symfony\Compon
16d00 65 6e 74 5c 46 69 6e 64 65 72 5c 46 69 6e 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c ent\Finder\Finder;.use.Composer\
16d20 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 Json\JsonFile;.use.Composer\Conf
16d40 69 67 5c 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 ig\JsonConfigSource;.use.Compose
16d60 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c r\Util\Filesystem;.use.Composer\
16d80 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a Package\Version\VersionParser;..
16da0 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 72 65 61 74 65 50 72 6f 6a 65 63 74 43 6f 6d 6d 61 ........class.CreateProjectComma
16dc0 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 nd.extends.BaseCommand.{....prot
16de0 65 63 74 65 64 20 24 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 ected.$suggestedPackagesReporter
16e00 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 ;..protected.function.configure(
16e20 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 63 72 65 61 74 65 2d 70 72 6f 6a ).{.$this.->setName('create-proj
16e40 65 63 74 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 43 72 65 61 74 65 20 6e ect').->setDescription('Create.n
16e60 65 77 20 70 72 6f 6a 65 63 74 20 66 72 6f 6d 20 61 20 70 61 63 6b 61 67 65 20 69 6e 74 6f 20 67 ew.project.from.a.package.into.g
16e80 69 76 65 6e 20 64 69 72 65 63 74 6f 72 79 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f iven.directory.').->setDefinitio
16ea0 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b n(array(.new.InputArgument('pack
16ec0 61 67 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 age',.InputArgument::OPTIONAL,.'
16ee0 50 61 63 6b 61 67 65 20 6e 61 6d 65 20 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 27 29 2c 0a Package.name.to.be.installed'),.
16f00 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 64 69 72 65 63 74 6f 72 79 27 2c 20 49 new.InputArgument('directory',.I
16f20 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 44 69 72 65 63 74 6f nputArgument::OPTIONAL,.'Directo
16f40 72 79 20 77 68 65 72 65 20 74 68 65 20 66 69 6c 65 73 20 73 68 6f 75 6c 64 20 62 65 20 63 72 65 ry.where.the.files.should.be.cre
16f60 61 74 65 64 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 ated'),.new.InputArgument('versi
16f80 6f 6e 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 56 on',.InputArgument::OPTIONAL,.'V
16fa0 65 72 73 69 6f 6e 2c 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 20 74 6f 20 6c 61 74 65 73 74 27 29 ersion,.will.default.to.latest')
16fc0 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 74 79 27 2c 20 27 ,.new.InputOption('stability',.'
16fe0 73 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c s',.InputOption::VALUE_REQUIRED,
17000 20 27 4d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 20 61 6c 6c 6f 77 65 64 20 28 75 6e 6c .'Minimum-stability.allowed.(unl
17020 65 73 73 20 61 20 76 65 72 73 69 6f 6e 20 69 73 20 73 70 65 63 69 66 69 65 64 29 2e 27 29 2c 0a ess.a.version.is.specified).'),.
17040 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 2c new.InputOption('prefer-source',
17060 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 .null,.InputOption::VALUE_NONE,.
17080 27 46 6f 72 63 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 70 61 63 6b 61 67 'Forces.installation.from.packag
170a0 65 20 73 6f 75 72 63 65 73 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 63 6c 75 64 69 e.sources.when.possible,.includi
170c0 6e 67 20 56 43 53 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 ng.VCS.information.'),.new.Input
170e0 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 64 69 73 74 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 Option('prefer-dist',.null,.Inpu
17100 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 tOption::VALUE_NONE,.'Forces.ins
17120 74 61 6c 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 20 64 69 73 74 20 65 76 65 6e tallation.from.package.dist.even
17140 20 66 6f 72 20 64 65 76 20 76 65 72 73 69 6f 6e 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f .for.dev.versions.'),.new.InputO
17160 70 74 69 6f 6e 28 27 72 65 70 6f 73 69 74 6f 72 79 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f ption('repository',.null,.InputO
17180 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 50 69 63 6b 20 61 20 64 ption::VALUE_REQUIRED,.'Pick.a.d
171a0 69 66 66 65 72 65 6e 74 20 72 65 70 6f 73 69 74 6f 72 79 20 28 61 73 20 75 72 6c 20 6f 72 20 6a ifferent.repository.(as.url.or.j
171c0 73 6f 6e 20 63 6f 6e 66 69 67 29 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72 20 74 68 65 20 70 61 63 6b son.config).to.look.for.the.pack
171e0 61 67 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 65 70 6f 73 69 74 age.'),.new.InputOption('reposit
17200 6f 72 79 2d 75 72 6c 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c ory-url',.null,.InputOption::VAL
17220 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 44 45 50 52 45 43 41 54 45 44 3a 20 55 73 65 20 2d 2d UE_REQUIRED,.'DEPRECATED:.Use.--
17240 72 65 70 6f 73 69 74 6f 72 79 20 69 6e 73 74 65 61 64 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 repository.instead.'),.new.Input
17260 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a Option('dev',.null,.InputOption:
17280 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 45 6e 61 62 6c 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 :VALUE_NONE,.'Enables.installati
172a0 6f 6e 20 6f 66 20 72 65 71 75 69 72 65 2d 64 65 76 20 70 61 63 6b 61 67 65 73 20 28 65 6e 61 62 on.of.require-dev.packages.(enab
172c0 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2c 20 6f 6e 6c 79 20 70 72 65 73 65 6e 74 20 66 6f 72 led.by.default,.only.present.for
172e0 20 42 43 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 65 76 .BC).'),.new.InputOption('no-dev
17300 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 ',.null,.InputOption::VALUE_NONE
17320 2c 20 27 44 69 73 61 62 6c 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 72 65 71 75 ,.'Disables.installation.of.requ
17340 69 72 65 2d 64 65 76 20 70 61 63 6b 61 67 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 ire-dev.packages.'),.new.InputOp
17360 74 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 tion('no-plugins',.null,.InputOp
17380 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 57 68 65 74 68 65 72 20 74 6f 20 64 69 tion::VALUE_NONE,.'Whether.to.di
173a0 73 61 62 6c 65 20 70 6c 75 67 69 6e 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f sable.plugins.'),.new.InputOptio
173c0 6e 28 27 6e 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 27 2c 20 6e 75 6c 6c 2c 20 n('no-custom-installers',.null,.
173e0 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 45 50 52 45 43 InputOption::VALUE_NONE,.'DEPREC
17400 41 54 45 44 3a 20 55 73 65 20 6e 6f 2d 70 6c 75 67 69 6e 73 20 69 6e 73 74 65 61 64 2e 27 29 2c ATED:.Use.no-plugins.instead.'),
17420 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 2c 20 6e .new.InputOption('no-scripts',.n
17440 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 57 ull,.InputOption::VALUE_NONE,.'W
17460 68 65 74 68 65 72 20 74 6f 20 70 72 65 76 65 6e 74 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 hether.to.prevent.execution.of.a
17480 6c 6c 20 64 65 66 69 6e 65 64 20 73 63 72 69 70 74 73 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 70 ll.defined.scripts.in.the.root.p
174a0 61 63 6b 61 67 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 ackage.'),.new.InputOption('no-p
174c0 72 6f 67 72 65 73 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c rogress',.null,.InputOption::VAL
174e0 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 20 6e 6f 74 20 6f 75 74 70 75 74 20 64 6f 77 6e 6c 6f 61 64 UE_NONE,.'Do.not.output.download
17500 20 70 72 6f 67 72 65 73 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6b .progress.'),.new.InputOption('k
17520 65 65 70 2d 76 63 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c eep-vcs',.null,.InputOption::VAL
17540 55 45 5f 4e 4f 4e 45 2c 20 27 57 68 65 74 68 65 72 20 74 6f 20 70 72 65 76 65 6e 74 20 64 65 6c UE_NONE,.'Whether.to.prevent.del
17560 65 74 69 6f 6e 20 76 63 73 20 66 6f 6c 64 65 72 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 etion.vcs.folder.'),.new.InputOp
17580 74 69 6f 6e 28 27 6e 6f 2d 69 6e 73 74 61 6c 6c 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 tion('no-install',.null,.InputOp
175a0 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 57 68 65 74 68 65 72 20 74 6f 20 73 6b tion::VALUE_NONE,.'Whether.to.sk
175c0 69 70 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 70 61 63 6b 61 67 65 20 64 ip.installation.of.the.package.d
175e0 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 ependencies.'),.new.InputOption(
17600 27 69 67 6e 6f 72 65 2d 70 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 'ignore-platform-reqs',.null,.In
17620 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 49 67 6e 6f 72 65 20 70 putOption::VALUE_NONE,.'Ignore.p
17640 6c 61 74 66 6f 72 6d 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 28 70 68 70 20 26 20 65 78 74 2d latform.requirements.(php.&.ext-
17660 20 70 61 63 6b 61 67 65 73 29 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 .packages).'),.)).->setHelp(<<<E
17680 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 74 3c 2f 69 6e 66 OT.The.<info>create-project</inf
176a0 6f 3e 20 63 6f 6d 6d 61 6e 64 20 63 72 65 61 74 65 73 20 61 20 6e 65 77 20 70 72 6f 6a 65 63 74 o>.command.creates.a.new.project
176c0 20 66 72 6f 6d 20 61 20 67 69 76 65 6e 0a 70 61 63 6b 61 67 65 20 69 6e 74 6f 20 61 20 6e 65 77 .from.a.given.package.into.a.new
176e0 20 64 69 72 65 63 74 6f 72 79 2e 20 49 66 20 65 78 65 63 75 74 65 64 20 77 69 74 68 6f 75 74 20 .directory..If.executed.without.
17700 70 61 72 61 6d 73 20 61 6e 64 20 69 6e 20 61 20 64 69 72 65 63 74 6f 72 79 0a 77 69 74 68 20 61 params.and.in.a.directory.with.a
17720 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 69 74 20 69 6e 73 74 61 6c 6c 73 20 .composer.json.file.it.installs.
17740 74 68 65 20 70 61 63 6b 61 67 65 73 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 70 72 6f the.packages.for.the.current.pro
17760 6a 65 63 74 2e 0a 0a 59 6f 75 20 63 61 6e 20 75 73 65 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 20 ject...You.can.use.this.command.
17780 74 6f 20 62 6f 6f 74 73 74 72 61 70 20 6e 65 77 20 70 72 6f 6a 65 63 74 73 20 6f 72 20 73 65 74 to.bootstrap.new.projects.or.set
177a0 75 70 20 61 20 63 6c 65 61 6e 0a 76 65 72 73 69 6f 6e 2d 63 6f 6e 74 72 6f 6c 6c 65 64 20 69 6e up.a.clean.version-controlled.in
177c0 73 74 61 6c 6c 61 74 69 6f 6e 20 66 6f 72 20 64 65 76 65 6c 6f 70 65 72 73 20 6f 66 20 79 6f 75 stallation.for.developers.of.you
177e0 72 20 70 72 6f 6a 65 63 74 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 r.project...<info>php.composer.p
17800 68 61 72 20 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 74 20 76 65 6e 64 6f 72 2f 70 72 6f 6a 65 63 har.create-project.vendor/projec
17820 74 20 74 61 72 67 65 74 2d 64 69 72 65 63 74 6f 72 79 20 5b 76 65 72 73 69 6f 6e 5d 3c 2f 69 6e t.target-directory.[version]</in
17840 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 73 70 65 63 69 66 79 20 74 68 65 20 76 65 fo>..You.can.also.specify.the.ve
17860 72 73 69 6f 6e 20 77 69 74 68 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 75 73 69 6e rsion.with.the.package.name.usin
17880 67 20 3d 20 6f 72 20 3a 20 61 73 20 73 65 70 61 72 61 74 6f 72 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 g.=.or.:.as.separator...<info>ph
178a0 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 74 20 76 p.composer.phar.create-project.v
178c0 65 6e 64 6f 72 2f 70 72 6f 6a 65 63 74 3a 76 65 72 73 69 6f 6e 20 74 61 72 67 65 74 2d 64 69 72 endor/project:version.target-dir
178e0 65 63 74 6f 72 79 3c 2f 69 6e 66 6f 3e 0a 0a 54 6f 20 69 6e 73 74 61 6c 6c 20 75 6e 73 74 61 62 ectory</info>..To.install.unstab
17900 6c 65 20 70 61 63 6b 61 67 65 73 2c 20 65 69 74 68 65 72 20 73 70 65 63 69 66 79 20 74 68 65 20 le.packages,.either.specify.the.
17920 76 65 72 73 69 6f 6e 20 79 6f 75 20 77 61 6e 74 2c 20 6f 72 20 75 73 65 20 74 68 65 0a 2d 2d 73 version.you.want,.or.use.the.--s
17940 74 61 62 69 6c 69 74 79 3d 64 65 76 20 28 77 68 65 72 65 20 64 65 76 20 63 61 6e 20 62 65 20 6f tability=dev.(where.dev.can.be.o
17960 6e 65 20 6f 66 20 52 43 2c 20 62 65 74 61 2c 20 61 6c 70 68 61 20 6f 72 20 64 65 76 29 2e 0a 0a ne.of.RC,.beta,.alpha.or.dev)...
17980 54 6f 20 73 65 74 75 70 20 61 20 64 65 76 65 6c 6f 70 65 72 20 77 6f 72 6b 61 62 6c 65 20 76 65 To.setup.a.developer.workable.ve
179a0 72 73 69 6f 6e 20 79 6f 75 20 73 68 6f 75 6c 64 20 63 72 65 61 74 65 20 74 68 65 20 70 72 6f 6a rsion.you.should.create.the.proj
179c0 65 63 74 20 75 73 69 6e 67 20 74 68 65 20 73 6f 75 72 63 65 0a 63 6f 6e 74 72 6f 6c 6c 65 64 20 ect.using.the.source.controlled.
179e0 63 6f 64 65 20 62 79 20 61 70 70 65 6e 64 69 6e 67 20 74 68 65 20 3c 69 6e 66 6f 3e 27 2d 2d 70 code.by.appending.the.<info>'--p
17a00 72 65 66 65 72 2d 73 6f 75 72 63 65 27 3c 2f 69 6e 66 6f 3e 20 66 6c 61 67 2e 0a 0a 54 6f 20 69 refer-source'</info>.flag...To.i
17a20 6e 73 74 61 6c 6c 20 61 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 61 6e 6f 74 68 65 72 20 72 65 nstall.a.package.from.another.re
17a40 70 6f 73 69 74 6f 72 79 20 74 68 61 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 6f 6e 65 20 79 6f pository.than.the.default.one.yo
17a60 75 0a 63 61 6e 20 70 61 73 73 20 74 68 65 20 3c 69 6e 66 6f 3e 27 2d 2d 72 65 70 6f 73 69 74 6f u.can.pass.the.<info>'--reposito
17a80 72 79 3d 68 74 74 70 73 3a 2f 2f 6d 79 72 65 70 6f 73 69 74 6f 72 79 2e 6f 72 67 27 3c 2f 69 6e ry=https://myrepository.org'</in
17aa0 66 6f 3e 20 66 6c 61 67 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 fo>.flag...EOT.).;.}..protected.
17ac0 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 function.execute(InputInterface.
17ae0 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 $input,.OutputInterface.$output)
17b00 0a 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 43 6f 6e 66 .{.$config.=.Factory::createConf
17b20 69 67 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 24 74 68 ig();.$io.=.$this->getIO();..$th
17b40 69 73 2d 3e 75 70 64 61 74 65 50 72 65 66 65 72 72 65 64 4f 70 74 69 6f 6e 73 28 24 63 6f 6e 66 is->updatePreferredOptions($conf
17b60 69 67 2c 20 24 69 6e 70 75 74 2c 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 2c 20 24 70 72 65 66 ig,.$input,.$preferSource,.$pref
17b80 65 72 44 69 73 74 2c 20 74 72 75 65 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f erDist,.true);..if.($input->getO
17ba0 70 74 69 6f 6e 28 27 64 65 76 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 ption('dev')).{.$io->writeError(
17bc0 27 3c 77 61 72 6e 69 6e 67 3e 59 6f 75 20 61 72 65 20 75 73 69 6e 67 20 74 68 65 20 64 65 70 72 '<warning>You.are.using.the.depr
17be0 65 63 61 74 65 64 20 6f 70 74 69 6f 6e 20 22 64 65 76 22 2e 20 44 65 76 20 70 61 63 6b 61 67 65 ecated.option."dev"..Dev.package
17c00 73 20 61 72 65 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 20 6e 6f 77 2e 3c s.are.installed.by.default.now.<
17c20 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 /warning>');.}.if.($input->getOp
17c40 74 69 6f 6e 28 27 6e 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 27 29 29 20 7b 0a tion('no-custom-installers')).{.
17c60 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 59 6f 75 20 61 72 $io->writeError('<warning>You.ar
17c80 65 20 75 73 69 6e 67 20 74 68 65 20 64 65 70 72 65 63 61 74 65 64 20 6f 70 74 69 6f 6e 20 22 6e e.using.the.deprecated.option."n
17ca0 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 22 2e 20 55 73 65 20 22 6e 6f 2d 70 6c o-custom-installers"..Use."no-pl
17cc0 75 67 69 6e 73 22 20 69 6e 73 74 65 61 64 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 24 69 6e ugins".instead.</warning>');.$in
17ce0 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 2c 20 74 72 75 put->setOption('no-plugins',.tru
17d00 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 72 6f 6a e);.}..return.$this->installProj
17d20 65 63 74 28 0a 24 69 6f 2c 0a 24 63 6f 6e 66 69 67 2c 0a 24 69 6e 70 75 74 2c 0a 24 69 6e 70 75 ect(.$io,.$config,.$input,.$inpu
17d40 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 2c 0a 24 69 6e 70 75 t->getArgument('package'),.$inpu
17d60 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 64 69 72 65 63 74 6f 72 79 27 29 2c 0a 24 69 6e t->getArgument('directory'),.$in
17d80 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 29 2c 0a 24 69 6e put->getArgument('version'),.$in
17da0 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 74 79 27 29 2c 0a 24 70 72 put->getOption('stability'),.$pr
17dc0 65 66 65 72 53 6f 75 72 63 65 2c 0a 24 70 72 65 66 65 72 44 69 73 74 2c 0a 21 24 69 6e 70 75 74 eferSource,.$preferDist,.!$input
17de0 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 ->getOption('no-dev'),.$input->g
17e00 65 74 4f 70 74 69 6f 6e 28 27 72 65 70 6f 73 69 74 6f 72 79 27 29 20 3f 3a 20 24 69 6e 70 75 74 etOption('repository').?:.$input
17e20 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 65 70 6f 73 69 74 6f 72 79 2d 75 72 6c 27 29 2c 0a 24 ->getOption('repository-url'),.$
17e40 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 29 2c 0a input->getOption('no-plugins'),.
17e60 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 29 2c $input->getOption('no-scripts'),
17e80 0a 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6b 65 65 70 2d 76 63 73 27 29 2c 0a .$input->getOption('keep-vcs'),.
17ea0 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 27 29 $input->getOption('no-progress')
17ec0 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 69 6e 73 74 61 6c 6c 27 ,.$input->getOption('no-install'
17ee0 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 69 67 6e 6f 72 65 2d 70 6c 61 ),.$input->getOption('ignore-pla
17f00 74 66 6f 72 6d 2d 72 65 71 73 27 29 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 tform-reqs').);.}..public.functi
17f20 6f 6e 20 69 6e 73 74 61 6c 6c 50 72 6f 6a 65 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 on.installProject(IOInterface.$i
17f40 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 49 6e 70 75 74 49 6e 74 65 72 66 61 63 o,.Config.$config,.InputInterfac
17f60 65 20 24 69 6e 70 75 74 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 64 69 72 65 63 74 6f e.$input,.$packageName,.$directo
17f80 72 79 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c ry.=.null,.$packageVersion.=.nul
17fa0 6c 2c 20 24 73 74 61 62 69 6c 69 74 79 20 3d 20 27 73 74 61 62 6c 65 27 2c 20 24 70 72 65 66 65 l,.$stability.=.'stable',.$prefe
17fc0 72 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 2c 20 24 70 72 65 66 65 72 44 69 73 74 20 3d 20 66 rSource.=.false,.$preferDist.=.f
17fe0 61 6c 73 65 2c 20 24 69 6e 73 74 61 6c 6c 44 65 76 50 61 63 6b 61 67 65 73 20 3d 20 66 61 6c 73 alse,.$installDevPackages.=.fals
18000 65 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 6e 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 e,.$repository.=.null,.$disableP
18020 6c 75 67 69 6e 73 20 3d 20 66 61 6c 73 65 2c 20 24 6e 6f 53 63 72 69 70 74 73 20 3d 20 66 61 6c lugins.=.false,.$noScripts.=.fal
18040 73 65 2c 20 24 6b 65 65 70 56 63 73 20 3d 20 66 61 6c 73 65 2c 20 24 6e 6f 50 72 6f 67 72 65 73 se,.$keepVcs.=.false,.$noProgres
18060 73 20 3d 20 66 61 6c 73 65 2c 20 24 6e 6f 49 6e 73 74 61 6c 6c 20 3d 20 66 61 6c 73 65 2c 20 24 s.=.false,.$noInstall.=.false,.$
18080 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6f ignorePlatformReqs.=.false).{.$o
180a0 6c 64 43 77 64 20 3d 20 67 65 74 63 77 64 28 29 3b 0a 0a 0a 20 24 69 6f 2d 3e 6c 6f 61 64 43 6f ldCwd.=.getcwd();....$io->loadCo
180c0 6e 66 69 67 75 72 61 74 69 6f 6e 28 24 63 6f 6e 66 69 67 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 75 nfiguration($config);..$this->su
180e0 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 20 3d 20 6e 65 77 20 53 75 ggestedPackagesReporter.=.new.Su
18100 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 28 24 69 6f 29 3b 0a 0a 69 ggestedPackagesReporter($io);..i
18120 66 20 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 21 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 69 6e 73 f.($packageName.!==.null).{.$ins
18140 74 61 6c 6c 65 64 46 72 6f 6d 56 63 73 20 3d 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 52 6f talledFromVcs.=.$this->installRo
18160 6f 74 50 61 63 6b 61 67 65 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 70 61 63 6b 61 67 65 otPackage($io,.$config,.$package
18180 4e 61 6d 65 2c 20 24 64 69 72 65 63 74 6f 72 79 2c 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f Name,.$directory,.$packageVersio
181a0 6e 2c 20 24 73 74 61 62 69 6c 69 74 79 2c 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 2c 20 24 70 n,.$stability,.$preferSource,.$p
181c0 72 65 66 65 72 44 69 73 74 2c 20 24 69 6e 73 74 61 6c 6c 44 65 76 50 61 63 6b 61 67 65 73 2c 20 referDist,.$installDevPackages,.
181e0 24 72 65 70 6f 73 69 74 6f 72 79 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 2c 20 24 6e $repository,.$disablePlugins,.$n
18200 6f 53 63 72 69 70 74 73 2c 20 24 6b 65 65 70 56 63 73 2c 20 24 6e 6f 50 72 6f 67 72 65 73 73 2c oScripts,.$keepVcs,.$noProgress,
18220 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a .$ignorePlatformReqs);.}.else.{.
18240 24 69 6e 73 74 61 6c 6c 65 64 46 72 6f 6d 56 63 73 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 63 $installedFromVcs.=.false;.}..$c
18260 6f 6d 70 6f 73 65 72 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 28 24 69 6f 2c 20 6e omposer.=.Factory::create($io,.n
18280 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 ull,.$disablePlugins);.$composer
182a0 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 2d 3e 73 65 74 4f 75 74 70 75 ->getDownloadManager()->setOutpu
182c0 74 50 72 6f 67 72 65 73 73 28 21 24 6e 6f 50 72 6f 67 72 65 73 73 29 3b 0a 0a 24 66 73 20 3d 20 tProgress(!$noProgress);..$fs.=.
182e0 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 0a 69 66 20 28 24 6e 6f 53 63 72 69 70 74 new.Filesystem();..if.($noScript
18300 73 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 s.===.false).{...$composer->getE
18320 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 ventDispatcher()->dispatchScript
18340 28 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 52 4f 4f 54 5f 50 41 43 4b 41 47 45 (ScriptEvents::POST_ROOT_PACKAGE
18360 5f 49 4e 53 54 41 4c 4c 2c 20 24 69 6e 73 74 61 6c 6c 44 65 76 50 61 63 6b 61 67 65 73 29 3b 0a _INSTALL,.$installDevPackages);.
18380 7d 0a 0a 24 72 6f 6f 74 50 61 63 6b 61 67 65 43 6f 6e 66 69 67 20 3d 20 24 63 6f 6d 70 6f 73 65 }..$rootPackageConfig.=.$compose
183a0 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 3b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 50 72 65 r->getConfig();.$this->updatePre
183c0 66 65 72 72 65 64 4f 70 74 69 6f 6e 73 28 24 72 6f 6f 74 50 61 63 6b 61 67 65 43 6f 6e 66 69 67 ferredOptions($rootPackageConfig
183e0 2c 20 24 69 6e 70 75 74 2c 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 2c 20 24 70 72 65 66 65 72 ,.$input,.$preferSource,.$prefer
18400 44 69 73 74 29 3b 0a 0a 0a 20 69 66 20 28 24 6e 6f 49 6e 73 74 61 6c 6c 20 3d 3d 3d 20 66 61 6c Dist);....if.($noInstall.===.fal
18420 73 65 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 72 20 3d 20 49 6e 73 74 61 6c 6c 65 72 3a 3a 63 72 se).{.$installer.=.Installer::cr
18440 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 72 eate($io,.$composer);.$installer
18460 2d 3e 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 65 28 24 70 72 65 66 65 72 53 6f 75 72 63 65 29 ->setPreferSource($preferSource)
18480 0a 2d 3e 73 65 74 50 72 65 66 65 72 44 69 73 74 28 24 70 72 65 66 65 72 44 69 73 74 29 0a 2d 3e .->setPreferDist($preferDist).->
184a0 73 65 74 44 65 76 4d 6f 64 65 28 24 69 6e 73 74 61 6c 6c 44 65 76 50 61 63 6b 61 67 65 73 29 0a setDevMode($installDevPackages).
184c0 2d 3e 73 65 74 52 75 6e 53 63 72 69 70 74 73 28 21 24 6e 6f 53 63 72 69 70 74 73 29 0a 2d 3e 73 ->setRunScripts(!$noScripts).->s
184e0 65 74 49 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 69 67 etIgnorePlatformRequirements($ig
18500 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 0a 2d 3e 73 65 74 53 75 67 67 65 73 74 65 64 norePlatformReqs).->setSuggested
18520 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 28 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 65 PackagesReporter($this->suggeste
18540 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 29 3b 0a 0a 69 66 20 28 24 64 69 73 61 62 6c dPackagesReporter);..if.($disabl
18560 65 50 6c 75 67 69 6e 73 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 72 2d 3e 64 69 73 61 62 6c 65 50 ePlugins).{.$installer->disableP
18580 6c 75 67 69 6e 73 28 29 3b 0a 7d 0a 0a 24 73 74 61 74 75 73 20 3d 20 24 69 6e 73 74 61 6c 6c 65 lugins();.}..$status.=.$installe
185a0 72 2d 3e 72 75 6e 28 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 73 74 61 74 75 73 29 20 7b 0a 72 r->run();.if.(0.!==.$status).{.r
185c0 65 74 75 72 6e 20 24 73 74 61 74 75 73 3b 0a 7d 0a 7d 0a 0a 24 68 61 73 56 63 73 20 3d 20 24 69 eturn.$status;.}.}..$hasVcs.=.$i
185e0 6e 73 74 61 6c 6c 65 64 46 72 6f 6d 56 63 73 3b 0a 69 66 20 28 21 24 6b 65 65 70 56 63 73 20 26 nstalledFromVcs;.if.(!$keepVcs.&
18600 26 20 24 69 6e 73 74 61 6c 6c 65 64 46 72 6f 6d 56 63 73 0a 26 26 20 28 0a 21 24 69 6f 2d 3e 69 &.$installedFromVcs.&&.(.!$io->i
18620 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 0a 7c 7c 20 24 69 6f 2d 3e 61 73 6b 43 6f 6e 66 69 72 sInteractive().||.$io->askConfir
18640 6d 61 74 69 6f 6e 28 27 3c 69 6e 66 6f 3e 44 6f 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 6d mation('<info>Do.you.want.to.rem
18660 6f 76 65 20 74 68 65 20 65 78 69 73 74 69 6e 67 20 56 43 53 20 28 2e 67 69 74 2c 20 2e 73 76 6e ove.the.existing.VCS.(.git,..svn
18680 2e 2e 29 20 68 69 73 74 6f 72 79 3f 3c 2f 69 6e 66 6f 3e 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 59 2c ..).history?</info>.[<comment>Y,
186a0 6e 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3f 20 27 2c 20 74 72 75 65 29 0a 29 0a 29 20 7b 0a 24 66 69 n</comment>]?.',.true).).).{.$fi
186c0 6e 64 65 72 20 3d 20 6e 65 77 20 46 69 6e 64 65 72 28 29 3b 0a 24 66 69 6e 64 65 72 2d 3e 64 65 nder.=.new.Finder();.$finder->de
186e0 70 74 68 28 30 29 2d 3e 64 69 72 65 63 74 6f 72 69 65 73 28 29 2d 3e 69 6e 28 67 65 74 63 77 64 pth(0)->directories()->in(getcwd
18700 28 29 29 2d 3e 69 67 6e 6f 72 65 56 43 53 28 66 61 6c 73 65 29 2d 3e 69 67 6e 6f 72 65 44 6f 74 ())->ignoreVCS(false)->ignoreDot
18720 46 69 6c 65 73 28 66 61 6c 73 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 2e 73 Files(false);.foreach.(array('.s
18740 76 6e 27 2c 20 27 5f 73 76 6e 27 2c 20 27 43 56 53 27 2c 20 27 5f 64 61 72 63 73 27 2c 20 27 2e vn',.'_svn',.'CVS',.'_darcs',.'.
18760 61 72 63 68 2d 70 61 72 61 6d 73 27 2c 20 27 2e 6d 6f 6e 6f 74 6f 6e 65 27 2c 20 27 2e 62 7a 72 arch-params',.'.monotone',.'.bzr
18780 27 2c 20 27 2e 67 69 74 27 2c 20 27 2e 68 67 27 29 20 61 73 20 24 76 63 73 4e 61 6d 65 29 20 7b ',.'.git',.'.hg').as.$vcsName).{
187a0 0a 24 66 69 6e 64 65 72 2d 3e 6e 61 6d 65 28 24 76 63 73 4e 61 6d 65 29 3b 0a 7d 0a 0a 74 72 79 .$finder->name($vcsName);.}..try
187c0 20 7b 0a 24 64 69 72 73 20 3d 20 69 74 65 72 61 74 6f 72 5f 74 6f 5f 61 72 72 61 79 28 24 66 69 .{.$dirs.=.iterator_to_array($fi
187e0 6e 64 65 72 29 3b 0a 75 6e 73 65 74 28 24 66 69 6e 64 65 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 nder);.unset($finder);.foreach.(
18800 24 64 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 21 24 66 73 2d 3e 72 65 6d 6f 76 $dirs.as.$dir).{.if.(!$fs->remov
18820 65 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 eDirectory($dir)).{.throw.new.\R
18840 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 72 65 6d 6f 76 untimeException('Could.not.remov
18860 65 20 27 2e 24 64 69 72 29 3b 0a 7d 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 e.'.$dir);.}.}.}.catch.(\Excepti
18880 6f 6e 20 24 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 on.$e).{.$io->writeError('<error
188a0 3e 41 6e 20 65 72 72 6f 72 20 6f 63 63 75 72 72 65 64 20 77 68 69 6c 65 20 72 65 6d 6f 76 69 6e >An.error.occurred.while.removin
188c0 67 20 74 68 65 20 56 43 53 20 6d 65 74 61 64 61 74 61 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 g.the.VCS.metadata:.'.$e->getMes
188e0 73 61 67 65 28 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 0a 24 68 61 73 56 63 73 20 3d sage().'</error>');.}..$hasVcs.=
18900 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 68 61 73 56 63 73 29 20 7b 0a 24 70 61 .false;.}....if.(!$hasVcs).{.$pa
18920 63 6b 61 67 65 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b ckage.=.$composer->getPackage();
18940 0a 24 63 6f 6e 66 69 67 53 6f 75 72 63 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 43 6f 6e 66 69 67 53 .$configSource.=.new.JsonConfigS
18960 6f 75 72 63 65 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f ource(new.JsonFile('composer.jso
18980 6e 27 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 75 70 n'));.foreach.(BasePackage::$sup
189a0 70 6f 72 74 65 64 4c 69 6e 6b 54 79 70 65 73 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 6d 65 74 portedLinkTypes.as.$type.=>.$met
189c0 61 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 7b 27 67 65 74 27 2e 24 a).{.foreach.($package->{'get'.$
189e0 6d 65 74 61 5b 27 6d 65 74 68 6f 64 27 5d 7d 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 meta['method']}().as.$link).{.if
18a00 20 28 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 20 3d .($link->getPrettyConstraint().=
18a20 3d 3d 20 27 73 65 6c 66 2e 76 65 72 73 69 6f 6e 27 29 20 7b 0a 24 63 6f 6e 66 69 67 53 6f 75 72 ==.'self.version').{.$configSour
18a40 63 65 2d 3e 61 64 64 4c 69 6e 6b 28 24 74 79 70 65 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 ce->addLink($type,.$link->getTar
18a60 67 65 74 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f get(),.$package->getPrettyVersio
18a80 6e 28 29 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6e 6f 53 63 72 69 70 74 73 20 3d 3d n());.}.}.}.}..if.($noScripts.==
18aa0 3d 20 66 61 6c 73 65 29 20 7b 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 =.false).{...$composer->getEvent
18ac0 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 53 63 72 Dispatcher()->dispatchScript(Scr
18ae0 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 43 52 45 41 54 45 5f 50 52 4f 4a 45 43 54 5f 43 iptEvents::POST_CREATE_PROJECT_C
18b00 4d 44 2c 20 24 69 6e 73 74 61 6c 6c 44 65 76 50 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 63 68 64 MD,.$installDevPackages);.}..chd
18b20 69 72 28 24 6f 6c 64 43 77 64 29 3b 0a 24 76 65 6e 64 6f 72 43 6f 6d 70 6f 73 65 72 44 69 72 20 ir($oldCwd);.$vendorComposerDir.
18b40 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 76 =.$composer->getConfig()->get('v
18b60 65 6e 64 6f 72 2d 64 69 72 27 29 2e 27 2f 63 6f 6d 70 6f 73 65 72 27 3b 0a 69 66 20 28 69 73 5f endor-dir').'/composer';.if.(is_
18b80 64 69 72 28 24 76 65 6e 64 6f 72 43 6f 6d 70 6f 73 65 72 44 69 72 29 20 26 26 20 24 66 73 2d 3e dir($vendorComposerDir).&&.$fs->
18ba0 69 73 44 69 72 45 6d 70 74 79 28 24 76 65 6e 64 6f 72 43 6f 6d 70 6f 73 65 72 44 69 72 29 29 20 isDirEmpty($vendorComposerDir)).
18bc0 7b 0a 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 72 6d 64 69 72 27 2c 20 24 76 65 6e 64 6f {.Silencer::call('rmdir',.$vendo
18be0 72 43 6f 6d 70 6f 73 65 72 44 69 72 29 3b 0a 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 24 63 6f 6d rComposerDir);.$vendorDir.=.$com
18c00 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d poser->getConfig()->get('vendor-
18c20 64 69 72 27 29 3b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 76 65 6e 64 6f 72 44 69 72 29 20 26 26 dir');.if.(is_dir($vendorDir).&&
18c40 20 24 66 73 2d 3e 69 73 44 69 72 45 6d 70 74 79 28 24 76 65 6e 64 6f 72 44 69 72 29 29 20 7b 0a .$fs->isDirEmpty($vendorDir)).{.
18c60 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 72 6d 64 69 72 27 2c 20 24 76 65 6e 64 6f 72 44 Silencer::call('rmdir',.$vendorD
18c80 69 72 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 ir);.}.}..return.0;.}..protected
18ca0 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 52 6f 6f 74 50 61 63 6b 61 67 65 28 49 4f 49 .function.installRootPackage(IOI
18cc0 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 24 70 nterface.$io,.Config.$config,.$p
18ce0 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 64 69 72 65 63 74 6f 72 79 20 3d 20 6e 75 6c 6c 2c 20 24 ackageName,.$directory.=.null,.$
18d00 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 73 74 61 62 69 6c 69 74 packageVersion.=.null,.$stabilit
18d20 79 20 3d 20 27 73 74 61 62 6c 65 27 2c 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 66 61 y.=.'stable',.$preferSource.=.fa
18d40 6c 73 65 2c 20 24 70 72 65 66 65 72 44 69 73 74 20 3d 20 66 61 6c 73 65 2c 20 24 69 6e 73 74 61 lse,.$preferDist.=.false,.$insta
18d60 6c 6c 44 65 76 50 61 63 6b 61 67 65 73 20 3d 20 66 61 6c 73 65 2c 20 24 72 65 70 6f 73 69 74 6f llDevPackages.=.false,.$reposito
18d80 72 79 20 3d 20 6e 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 20 3d 20 66 61 6c ry.=.null,.$disablePlugins.=.fal
18da0 73 65 2c 20 24 6e 6f 53 63 72 69 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 6b 65 65 70 56 63 73 se,.$noScripts.=.false,.$keepVcs
18dc0 20 3d 20 66 61 6c 73 65 2c 20 24 6e 6f 50 72 6f 67 72 65 73 73 20 3d 20 66 61 6c 73 65 2c 20 24 .=.false,.$noProgress.=.false,.$
18de0 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 ignorePlatformReqs.=.false).{.if
18e00 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 73 6f 75 72 63 .(null.===.$repository).{.$sourc
18e20 65 52 65 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 eRepo.=.new.CompositeRepository(
18e40 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 64 65 66 61 75 6c 74 52 65 70 6f 73 28 RepositoryFactory::defaultRepos(
18e60 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 6f 75 72 63 65 $io,.$config));.}.else.{.$source
18e80 52 65 70 6f 20 3d 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 66 72 6f 6d 53 74 Repo.=.RepositoryFactory::fromSt
18ea0 72 69 6e 67 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 2c 20 ring($io,.$config,.$repository,.
18ec0 74 72 75 65 29 3b 0a 7d 0a 0a 24 70 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 true);.}..$parser.=.new.VersionP
18ee0 61 72 73 65 72 28 29 3b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 70 61 72 73 65 72 arser();.$requirements.=.$parser
18f00 2d 3e 70 61 72 73 65 4e 61 6d 65 56 65 72 73 69 6f 6e 50 61 69 72 73 28 61 72 72 61 79 28 24 70 ->parseNameVersionPairs(array($p
18f20 61 63 6b 61 67 65 4e 61 6d 65 29 29 3b 0a 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 ackageName));.$name.=.strtolower
18f40 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 5b 30 5d 5b 27 6e 61 6d 65 27 5d 29 3b 0a 69 66 20 28 ($requirements[0]['name']);.if.(
18f60 21 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 26 26 20 69 73 73 65 74 28 24 72 65 71 75 69 !$packageVersion.&&.isset($requi
18f80 72 65 6d 65 6e 74 73 5b 30 5d 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 rements[0]['version'])).{.$packa
18fa0 67 65 56 65 72 73 69 6f 6e 20 3d 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 5b 30 5d 5b 27 76 65 geVersion.=.$requirements[0]['ve
18fc0 72 73 69 6f 6e 27 5d 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 73 74 61 62 69 6c rsion'];.}..if.(null.===.$stabil
18fe0 69 74 79 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5e 2c 5c 73 5d 2a ity).{.if.(preg_match('{^[^,\s]*
19000 3f 40 28 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 42 61 73 ?@('.implode('|',.array_keys(Bas
19020 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 29 29 2e 27 29 24 7d 69 27 2c ePackage::$stabilities)).')$}i',
19040 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 73 74 .$packageVersion,.$match)).{.$st
19060 61 62 69 6c 69 74 79 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 ability.=.$match[1];.}.else.{.$s
19080 74 61 62 69 6c 69 74 79 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 65 53 tability.=.VersionParser::parseS
190a0 74 61 62 69 6c 69 74 79 28 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 7d 0a 0a tability($packageVersion);.}.}..
190c0 24 73 74 61 62 69 6c 69 74 79 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 6e 6f 72 6d $stability.=.VersionParser::norm
190e0 61 6c 69 7a 65 53 74 61 62 69 6c 69 74 79 28 24 73 74 61 62 69 6c 69 74 79 29 3b 0a 0a 69 66 20 alizeStability($stability);..if.
19100 28 21 69 73 73 65 74 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 (!isset(BasePackage::$stabilitie
19120 73 5b 24 73 74 61 62 69 6c 69 74 79 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 s[$stability])).{.throw.new.\Inv
19140 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 73 alidArgumentException('Invalid.s
19160 74 61 62 69 6c 69 74 79 20 70 72 6f 76 69 64 65 64 20 28 27 2e 24 73 74 61 62 69 6c 69 74 79 2e tability.provided.('.$stability.
19180 27 29 2c 20 6d 75 73 74 20 62 65 20 6f 6e 65 20 6f 66 3a 20 27 2e 69 6d 70 6c 6f 64 65 28 27 2c '),.must.be.one.of:.'.implode(',
191a0 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 .',.array_keys(BasePackage::$sta
191c0 62 69 6c 69 74 69 65 73 29 29 29 3b 0a 7d 0a 0a 24 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c bilities)));.}..$pool.=.new.Pool
191e0 28 24 73 74 61 62 69 6c 69 74 79 29 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f ($stability);.$pool->addReposito
19200 72 79 28 24 73 6f 75 72 63 65 52 65 70 6f 29 3b 0a 0a 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 ry($sourceRepo);..$phpVersion.=.
19220 6e 75 6c 6c 3b 0a 69 66 20 28 21 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 20 null;.if.(!$ignorePlatformReqs).
19240 7b 0a 0a 20 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 50 48 50 5f 4d 41 4a 4f 52 5f 56 45 52 53 {...$phpVersion.=.PHP_MAJOR_VERS
19260 49 4f 4e 2e 27 2e 27 2e 50 48 50 5f 4d 49 4e 4f 52 5f 56 45 52 53 49 4f 4e 2e 27 2e 27 2e 50 48 ION.'.'.PHP_MINOR_VERSION.'.'.PH
19280 50 5f 52 45 4c 45 41 53 45 5f 56 45 52 53 49 4f 4e 3b 0a 7d 0a 0a 0a 20 24 76 65 72 73 69 6f 6e P_RELEASE_VERSION;.}....$version
192a0 53 65 6c 65 63 74 6f 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 53 65 6c 65 63 74 6f 72 28 24 Selector.=.new.VersionSelector($
192c0 70 6f 6f 6c 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 76 65 72 73 69 6f 6e 53 65 6c 65 63 74 pool);.$package.=.$versionSelect
192e0 6f 72 2d 3e 66 69 6e 64 42 65 73 74 43 61 6e 64 69 64 61 74 65 28 24 6e 61 6d 65 2c 20 24 70 61 or->findBestCandidate($name,.$pa
19300 63 6b 61 67 65 56 65 72 73 69 6f 6e 2c 20 24 70 68 70 56 65 72 73 69 6f 6e 2c 20 24 73 74 61 62 ckageVersion,.$phpVersion,.$stab
19320 69 6c 69 74 79 29 3b 0a 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 20 7b 0a 74 68 72 6f 77 20 ility);..if.(!$package).{.throw.
19340 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 43 new.\InvalidArgumentException("C
19360 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 70 61 63 6b 61 67 65 20 24 6e 61 6d 65 22 20 2e 20 28 ould.not.find.package.$name"...(
19380 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3f 20 22 20 77 69 74 68 20 76 65 72 73 69 6f 6e $packageVersion.?.".with.version
193a0 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 2e 22 20 3a 20 22 20 77 69 74 68 20 73 74 61 62 .$packageVersion.".:.".with.stab
193c0 69 6c 69 74 79 20 24 73 74 61 62 69 6c 69 74 79 2e 22 29 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c ility.$stability."));.}..if.(nul
193e0 6c 20 3d 3d 3d 20 24 64 69 72 65 63 74 6f 72 79 29 20 7b 0a 24 70 61 72 74 73 20 3d 20 65 78 70 l.===.$directory).{.$parts.=.exp
19400 6c 6f 64 65 28 22 2f 22 2c 20 24 6e 61 6d 65 2c 20 32 29 3b 0a 24 64 69 72 65 63 74 6f 72 79 20 lode("/",.$name,.2);.$directory.
19420 3d 20 67 65 74 63 77 64 28 29 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 =.getcwd()...DIRECTORY_SEPARATOR
19440 20 2e 20 61 72 72 61 79 5f 70 6f 70 28 24 70 61 72 74 73 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 ...array_pop($parts);.}....if.(f
19460 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 63 6e 74 6c 5f 73 69 67 6e 61 6c 27 29 29 20 unction_exists('pcntl_signal')).
19480 7b 0a 64 65 63 6c 61 72 65 28 74 69 63 6b 73 3d 31 30 30 29 3b 0a 70 63 6e 74 6c 5f 73 69 67 6e {.declare(ticks=100);.pcntl_sign
194a0 61 6c 28 53 49 47 49 4e 54 2c 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 75 73 65 20 28 24 64 69 72 al(SIGINT,.function.().use.($dir
194c0 65 63 74 6f 72 79 29 20 7b 0a 24 66 73 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 ectory).{.$fs.=.new.Filesystem()
194e0 3b 0a 24 66 73 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 65 63 74 6f 72 ;.$fs->removeDirectory($director
19500 79 29 3b 0a 65 78 69 74 28 31 33 30 29 3b 0a 7d 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 y);.exit(130);.});.}..$io->write
19520 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 49 6e 73 74 61 6c 6c 69 6e 67 20 27 20 2e 20 24 70 61 63 Error('<info>Installing.'...$pac
19540 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e 20 27 20 28 27 20 2e 20 24 70 61 63 6b 61 67 kage->getName()...'.('...$packag
19560 65 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 66 61 6c 73 65 29 20 2e e->getFullPrettyVersion(false)..
19580 20 27 29 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 69 66 20 28 24 64 69 73 61 62 6c 65 50 6c 75 67 69 .')</info>');..if.($disablePlugi
195a0 6e 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 50 6c 75 ns).{.$io->writeError('<info>Plu
195c0 67 69 6e 73 20 68 61 76 65 20 62 65 65 6e 20 64 69 73 61 62 6c 65 64 2e 3c 2f 69 6e 66 6f 3e 27 gins.have.been.disabled.</info>'
195e0 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 70 61 63 6b 61 67 65 2d );.}..if.(0.===.strpos($package-
19600 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 27 64 65 76 2d 27 29 20 26 26 20 >getPrettyVersion(),.'dev-').&&.
19620 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 in_array($package->getSourceType
19640 28 29 2c 20 61 72 72 61 79 28 27 67 69 74 27 2c 20 27 68 67 27 29 29 29 20 7b 0a 24 70 61 63 6b (),.array('git',.'hg'))).{.$pack
19660 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 73 75 62 73 74 72 28 24 age->setSourceReference(substr($
19680 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 34 29 29 package->getPrettyVersion(),.4))
196a0 3b 0a 7d 0a 0a 24 64 6d 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 64 ;.}..$dm.=.$this->createDownload
196c0 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 24 64 6d 2d 3e 73 65 74 50 Manager($io,.$config);.$dm->setP
196e0 72 65 66 65 72 53 6f 75 72 63 65 28 24 70 72 65 66 65 72 53 6f 75 72 63 65 29 0a 2d 3e 73 65 74 referSource($preferSource).->set
19700 50 72 65 66 65 72 44 69 73 74 28 24 70 72 65 66 65 72 44 69 73 74 29 0a 2d 3e 73 65 74 4f 75 74 PreferDist($preferDist).->setOut
19720 70 75 74 50 72 6f 67 72 65 73 73 28 21 24 6e 6f 50 72 6f 67 72 65 73 73 29 3b 0a 0a 24 70 72 6f putProgress(!$noProgress);..$pro
19740 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 20 3d 20 6e 65 77 20 50 72 6f 6a 65 63 74 49 6e 73 74 61 jectInstaller.=.new.ProjectInsta
19760 6c 6c 65 72 28 24 64 69 72 65 63 74 6f 72 79 2c 20 24 64 6d 29 3b 0a 24 69 6d 20 3d 20 24 74 68 ller($directory,.$dm);.$im.=.$th
19780 69 73 2d 3e 63 72 65 61 74 65 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 3b is->createInstallationManager();
197a0 0a 24 69 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 24 70 72 6f 6a 65 63 74 49 6e 73 74 61 .$im->addInstaller($projectInsta
197c0 6c 6c 65 72 29 3b 0a 24 69 6d 2d 3e 69 6e 73 74 61 6c 6c 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 ller);.$im->install(new.Installe
197e0 64 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 28 6e 65 77 20 4a 73 6f 6e 46 69 dFilesystemRepository(new.JsonFi
19800 6c 65 28 27 70 68 70 3a 2f 2f 6d 65 6d 6f 72 79 27 29 29 2c 20 6e 65 77 20 49 6e 73 74 61 6c 6c le('php://memory')),.new.Install
19820 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 24 69 6d 2d 3e 6e 6f 74 69 66 Operation($package));.$im->notif
19840 79 49 6e 73 74 61 6c 6c 73 28 24 69 6f 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 73 75 67 67 65 73 yInstalls($io);....$this->sugges
19860 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 2d 3e 61 64 64 53 75 67 67 65 73 74 69 tedPackagesReporter->addSuggesti
19880 6f 6e 73 46 72 6f 6d 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 24 69 6e 73 74 onsFromPackage($package);..$inst
198a0 61 6c 6c 65 64 46 72 6f 6d 56 63 73 20 3d 20 27 73 6f 75 72 63 65 27 20 3d 3d 3d 20 24 70 61 63 alledFromVcs.=.'source'.===.$pac
198c0 6b 61 67 65 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 3b 0a 0a kage->getInstallationSource();..
198e0 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 43 72 65 61 74 65 64 20 70 $io->writeError('<info>Created.p
19900 72 6f 6a 65 63 74 20 69 6e 20 27 20 2e 20 24 64 69 72 65 63 74 6f 72 79 20 2e 20 27 3c 2f 69 6e roject.in.'...$directory...'</in
19920 66 6f 3e 27 29 3b 0a 63 68 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 0a 24 5f 53 45 52 fo>');.chdir($directory);..$_SER
19940 56 45 52 5b 27 43 4f 4d 50 4f 53 45 52 5f 52 4f 4f 54 5f 56 45 52 53 49 4f 4e 27 5d 20 3d 20 24 VER['COMPOSER_ROOT_VERSION'].=.$
19960 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 70 75 74 package->getPrettyVersion();.put
19980 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 52 4f 4f 54 5f 56 45 52 53 49 4f 4e 3d 27 2e 24 5f 53 env('COMPOSER_ROOT_VERSION='.$_S
199a0 45 52 56 45 52 5b 27 43 4f 4d 50 4f 53 45 52 5f 52 4f 4f 54 5f 56 45 52 53 49 4f 4e 27 5d 29 3b ERVER['COMPOSER_ROOT_VERSION']);
199c0 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 65 64 46 72 6f 6d 56 63 73 3b 0a 7d 0a 0a 70 ..return.$installedFromVcs;.}..p
199e0 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 64 rotected.function.createDownload
19a00 4d 61 6e 61 67 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 Manager(IOInterface.$io,.Config.
19a20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 46 61 63 74 6f 72 $config).{.$factory.=.new.Factor
19a40 79 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 66 61 63 74 6f 72 79 2d 3e 63 72 65 61 74 65 44 6f 77 y();..return.$factory->createDow
19a60 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 70 nloadManager($io,.$config);.}..p
19a80 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 49 6e 73 74 61 6c 6c 61 rotected.function.createInstalla
19aa0 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 49 6e 73 74 61 tionManager().{.return.new.Insta
19ac0 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 llationManager();.}.........prot
19ae0 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 50 72 65 66 65 72 72 65 64 4f 70 ected.function.updatePreferredOp
19b00 74 69 6f 6e 73 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 49 6e 70 75 74 49 6e 74 65 72 tions(Config.$config,.InputInter
19b20 66 61 63 65 20 24 69 6e 70 75 74 2c 20 26 24 70 72 65 66 65 72 53 6f 75 72 63 65 2c 20 26 24 70 face.$input,.&$preferSource,.&$p
19b40 72 65 66 65 72 44 69 73 74 2c 20 24 6b 65 65 70 56 63 73 52 65 71 75 69 72 65 73 50 72 65 66 65 referDist,.$keepVcsRequiresPrefe
19b60 72 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 70 72 65 66 65 72 53 6f 75 72 63 65 rSource.=.false).{.$preferSource
19b80 20 3d 20 66 61 6c 73 65 3b 0a 24 70 72 65 66 65 72 44 69 73 74 20 3d 20 66 61 6c 73 65 3b 0a 0a .=.false;.$preferDist.=.false;..
19ba0 73 77 69 74 63 68 20 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 70 72 65 66 65 72 72 65 64 2d switch.($config->get('preferred-
19bc0 69 6e 73 74 61 6c 6c 27 29 29 20 7b 0a 63 61 73 65 20 27 73 6f 75 72 63 65 27 3a 0a 24 70 72 65 install')).{.case.'source':.$pre
19be0 66 65 72 53 6f 75 72 63 65 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 64 ferSource.=.true;.break;.case.'d
19c00 69 73 74 27 3a 0a 24 70 72 65 66 65 72 44 69 73 74 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b ist':.$preferDist.=.true;.break;
19c20 0a 63 61 73 65 20 27 61 75 74 6f 27 3a 0a 64 65 66 61 75 6c 74 3a 0a 0a 20 62 72 65 61 6b 3b 0a .case.'auto':.default:...break;.
19c40 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 }..if.($input->getOption('prefer
19c60 2d 73 6f 75 72 63 65 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 -source').||.$input->getOption('
19c80 70 72 65 66 65 72 2d 64 69 73 74 27 29 20 7c 7c 20 28 24 6b 65 65 70 56 63 73 52 65 71 75 69 72 prefer-dist').||.($keepVcsRequir
19ca0 65 73 50 72 65 66 65 72 53 6f 75 72 63 65 20 26 26 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 esPreferSource.&&.$input->getOpt
19cc0 69 6f 6e 28 27 6b 65 65 70 2d 76 63 73 27 29 29 29 20 7b 0a 24 70 72 65 66 65 72 53 6f 75 72 63 ion('keep-vcs'))).{.$preferSourc
19ce0 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f e.=.$input->getOption('prefer-so
19d00 75 72 63 65 27 29 20 7c 7c 20 28 24 6b 65 65 70 56 63 73 52 65 71 75 69 72 65 73 50 72 65 66 65 urce').||.($keepVcsRequiresPrefe
19d20 72 53 6f 75 72 63 65 20 26 26 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6b 65 rSource.&&.$input->getOption('ke
19d40 65 70 2d 76 63 73 27 29 29 3b 0a 24 70 72 65 66 65 72 44 69 73 74 20 3d 20 24 69 6e 70 75 74 2d ep-vcs'));.$preferDist.=.$input-
19d60 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 64 69 73 74 27 29 3b 0a 7d 0a 7d 0a 7d >getOption('prefer-dist');.}.}.}
19d80 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
19da0 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f oser\Command;..use.Symfony\Compo
19dc0 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 nent\Console\Input\InputInterfac
19de0 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 e;.use.Symfony\Component\Console
19e00 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 \Output\OutputInterface;.....cla
19e20 73 73 20 44 65 70 65 6e 64 73 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 44 65 ss.DependsCommand.extends.BaseDe
19e40 70 65 6e 64 65 6e 63 79 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 pendencyCommand.{....protected.f
19e60 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 63 6f unction.configure().{.parent::co
19e80 6e 66 69 67 75 72 65 28 29 3b 0a 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 64 65 70 nfigure();..$this.->setName('dep
19ea0 65 6e 64 73 27 29 0a 2d 3e 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 28 27 77 68 79 27 29 ends').->setAliases(array('why')
19ec0 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 68 6f 77 73 20 77 68 69 63 68 20 ).->setDescription('Shows.which.
19ee0 70 61 63 6b 61 67 65 73 20 63 61 75 73 65 20 74 68 65 20 67 69 76 65 6e 20 70 61 63 6b 61 67 65 packages.cause.the.given.package
19f00 20 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 27 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c .to.be.installed').->setHelp(<<<
19f20 45 4f 54 0a 44 69 73 70 6c 61 79 73 20 64 65 74 61 69 6c 65 64 20 69 6e 66 6f 72 6d 61 74 69 6f EOT.Displays.detailed.informatio
19f40 6e 20 61 62 6f 75 74 20 77 68 65 72 65 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 72 65 66 65 72 n.about.where.a.package.is.refer
19f60 65 6e 63 65 64 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 enced...<info>php.composer.phar.
19f80 64 65 70 65 6e 64 73 20 63 6f 6d 70 6f 73 65 72 2f 63 6f 6d 70 6f 73 65 72 3c 2f 69 6e 66 6f 3e depends.composer/composer</info>
19fa0 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 ..EOT.).;.}.........protected.fu
19fc0 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 nction.execute(InputInterface.$i
19fe0 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b nput,.OutputInterface.$output).{
1a000 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 64 6f 45 78 65 63 75 74 65 28 24 69 6e 70 75 74 .return.parent::doExecute($input
1a020 2c 20 24 6f 75 74 70 75 74 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a ,.$output,.false);.}.}.<?php....
1a040 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 ........namespace.Composer\Comma
1a060 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 nd;..use.Composer\Composer;.use.
1a080 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 Composer\Factory;.use.Composer\C
1a0a0 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 onfig;.use.Composer\Downloader\T
1a0c0 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c ransportException;.use.Composer\
1a0e0 50 6c 75 67 69 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 Plugin\CommandEvent;.use.Compose
1a100 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f r\Plugin\PluginEvents;.use.Compo
1a120 73 65 72 5c 55 74 69 6c 5c 43 6f 6e 66 69 67 56 61 6c 69 64 61 74 6f 72 3b 0a 75 73 65 20 43 6f ser\Util\ConfigValidator;.use.Co
1a140 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 mposer\Util\ProcessExecutor;.use
1a160 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b .Composer\Util\RemoteFilesystem;
1a180 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 .use.Composer\Util\StreamContext
1a1a0 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6c 66 55 70 64 61 74 65 Factory;.use.Composer\SelfUpdate
1a1c0 5c 4b 65 79 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6c 66 55 70 64 61 74 65 5c 56 \Keys;.use.Composer\SelfUpdate\V
1a1e0 65 72 73 69 6f 6e 73 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 ersions;.use.Symfony\Component\C
1a200 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 onsole\Input\InputInterface;.use
1a220 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 .Symfony\Component\Console\Outpu
1a240 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 69 61 t\OutputInterface;.....class.Dia
1a260 67 6e 6f 73 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 gnoseCommand.extends.BaseCommand
1a280 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 66 73 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 .{..protected.$rfs;...protected.
1a2a0 24 70 72 6f 63 65 73 73 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 66 61 69 6c 75 72 65 73 20 $process;...protected.$failures.
1a2c0 3d 20 30 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 =.0;..protected.function.configu
1a2e0 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 64 69 61 67 6e 6f 73 65 re().{.$this.->setName('diagnose
1a300 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 44 69 61 67 6e 6f 73 65 73 20 74 ').->setDescription('Diagnoses.t
1a320 68 65 20 73 79 73 74 65 6d 20 74 6f 20 69 64 65 6e 74 69 66 79 20 63 6f 6d 6d 6f 6e 20 65 72 72 he.system.to.identify.common.err
1a340 6f 72 73 2e 27 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 ors.').->setHelp(<<<EOT.The.<inf
1a360 6f 3e 64 69 61 67 6e 6f 73 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 63 68 65 63 6b 73 o>diagnose</info>.command.checks
1a380 20 63 6f 6d 6d 6f 6e 20 65 72 72 6f 72 73 20 74 6f 20 68 65 6c 70 20 64 65 62 75 67 67 69 6e 67 .common.errors.to.help.debugging
1a3a0 20 70 72 6f 62 6c 65 6d 73 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 .problems...EOT.).;.}.....protec
1a3c0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 ted.function.execute(InputInterf
1a3e0 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 ace.$input,.OutputInterface.$out
1a400 70 75 74 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d put).{.$composer.=.$this->getCom
1a420 70 6f 73 65 72 28 66 61 6c 73 65 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f poser(false);.$io.=.$this->getIO
1a440 28 29 3b 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 45 76 ();..if.($composer).{.$commandEv
1a460 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 ent.=.new.CommandEvent(PluginEve
1a480 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 64 69 61 67 6e 6f 73 65 27 2c 20 24 69 6e 70 75 74 nts::COMMAND,.'diagnose',.$input
1a4a0 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 ,.$output);.$composer->getEventD
1a4c0 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 ispatcher()->dispatch($commandEv
1a4e0 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a ent->getName(),.$commandEvent);.
1a500 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 63 6f 6d 70 6f 73 65 72 2e 6a .$io->write('Checking.composer.j
1a520 73 6f 6e 3a 20 27 2c 20 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 son:.',.false);.$this->outputRes
1a540 75 6c 74 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 43 6f 6d 70 6f 73 65 72 53 63 68 65 6d 61 28 29 ult($this->checkComposerSchema()
1a560 29 3b 0a 7d 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 63 6f 6e 66 69 67 20 3d );.}..if.($composer).{.$config.=
1a580 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 3b 0a 7d 20 65 6c 73 65 20 .$composer->getConfig();.}.else.
1a5a0 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 43 6f 6e 66 69 {.$config.=.Factory::createConfi
1a5c0 67 28 29 3b 0a 7d 0a 0a 24 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 65 28 61 72 72 61 79 28 27 63 6f g();.}..$config->merge(array('co
1a5e0 6e 66 69 67 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 63 75 72 65 2d 68 74 74 70 27 20 3d 3e 20 nfig'.=>.array('secure-http'.=>.
1a600 66 61 6c 73 65 29 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 46 61 63 74 6f 72 79 3a false)));..$this->rfs.=.Factory:
1a620 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 69 6f 2c 20 24 63 6f :createRemoteFilesystem($io,.$co
1a640 6e 66 69 67 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 50 72 6f 63 nfig);.$this->process.=.new.Proc
1a660 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 essExecutor($io);..$io->write('C
1a680 68 65 63 6b 69 6e 67 20 70 6c 61 74 66 6f 72 6d 20 73 65 74 74 69 6e 67 73 3a 20 27 2c 20 66 61 hecking.platform.settings:.',.fa
1a6a0 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 74 68 69 73 2d lse);.$this->outputResult($this-
1a6c0 3e 63 68 65 63 6b 50 6c 61 74 66 6f 72 6d 28 29 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 >checkPlatform());..$io->write('
1a6e0 43 68 65 63 6b 69 6e 67 20 67 69 74 20 73 65 74 74 69 6e 67 73 3a 20 27 2c 20 66 61 6c 73 65 29 Checking.git.settings:.',.false)
1a700 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 74 68 69 73 2d 3e 63 68 65 ;.$this->outputResult($this->che
1a720 63 6b 47 69 74 28 29 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 ckGit());..$io->write('Checking.
1a740 68 74 74 70 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 20 74 6f 20 70 61 63 6b 61 67 69 73 74 3a 20 http.connectivity.to.packagist:.
1a760 27 2c 20 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 ',.false);.$this->outputResult($
1a780 74 68 69 73 2d 3e 63 68 65 63 6b 48 74 74 70 28 27 68 74 74 70 27 2c 20 24 63 6f 6e 66 69 67 29 this->checkHttp('http',.$config)
1a7a0 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 68 74 74 70 73 20 63 );..$io->write('Checking.https.c
1a7c0 6f 6e 6e 65 63 74 69 76 69 74 79 20 74 6f 20 70 61 63 6b 61 67 69 73 74 3a 20 27 2c 20 66 61 6c onnectivity.to.packagist:.',.fal
1a7e0 73 65 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 74 68 69 73 2d 3e se);.$this->outputResult($this->
1a800 63 68 65 63 6b 48 74 74 70 28 27 68 74 74 70 73 27 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 0a 24 checkHttp('https',.$config));..$
1a820 6f 70 74 73 20 3d 20 73 74 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f 67 65 74 5f 6f 70 74 69 6f 6e opts.=.stream_context_get_option
1a840 73 28 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 3a 3a 67 65 74 43 6f 6e 74 65 s(StreamContextFactory::getConte
1a860 78 74 28 27 68 74 74 70 3a 2f 2f 65 78 61 6d 70 6c 65 2e 6f 72 67 27 29 29 3b 0a 69 66 20 28 21 xt('http://example.org'));.if.(!
1a880 65 6d 70 74 79 28 24 6f 70 74 73 5b 27 68 74 74 70 27 5d 5b 27 70 72 6f 78 79 27 5d 29 29 20 7b empty($opts['http']['proxy'])).{
1a8a0 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 48 54 54 50 20 70 72 6f 78 79 .$io->write('Checking.HTTP.proxy
1a8c0 3a 20 27 2c 20 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 :.',.false);.$this->outputResult
1a8e0 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 48 74 74 70 50 72 6f 78 79 28 29 29 3b 0a 24 69 6f 2d 3e ($this->checkHttpProxy());.$io->
1a900 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 48 54 54 50 20 70 72 6f 78 79 20 73 75 70 70 6f write('Checking.HTTP.proxy.suppo
1a920 72 74 20 66 6f 72 20 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 72 69 3a 20 27 2c 20 66 61 6c 73 65 rt.for.request_fulluri:.',.false
1a940 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 74 68 69 73 2d 3e 63 68 );.$this->outputResult($this->ch
1a960 65 63 6b 48 74 74 70 50 72 6f 78 79 46 75 6c 6c 55 72 69 52 65 71 75 65 73 74 50 61 72 61 6d 28 eckHttpProxyFullUriRequestParam(
1a980 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 48 54 54 50 53 20 70 ));.$io->write('Checking.HTTPS.p
1a9a0 72 6f 78 79 20 73 75 70 70 6f 72 74 20 66 6f 72 20 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 72 69 roxy.support.for.request_fulluri
1a9c0 3a 20 27 2c 20 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 :.',.false);.$this->outputResult
1a9e0 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 48 74 74 70 73 50 72 6f 78 79 46 75 6c 6c 55 72 69 52 65 ($this->checkHttpsProxyFullUriRe
1aa00 71 75 65 73 74 50 61 72 61 6d 28 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 6f 61 75 74 68 20 3d 20 24 questParam());.}..if.($oauth.=.$
1aa20 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d 6f 61 75 74 68 27 29 29 20 7b 0a 66 config->get('github-oauth')).{.f
1aa40 6f 72 65 61 63 68 20 28 24 6f 61 75 74 68 20 61 73 20 24 64 6f 6d 61 69 6e 20 3d 3e 20 24 74 6f oreach.($oauth.as.$domain.=>.$to
1aa60 6b 65 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 27 2e 24 64 ken).{.$io->write('Checking.'.$d
1aa80 6f 6d 61 69 6e 2e 27 20 6f 61 75 74 68 20 61 63 63 65 73 73 3a 20 27 2c 20 66 61 6c 73 65 29 3b omain.'.oauth.access:.',.false);
1aaa0 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 74 68 69 73 2d 3e 63 68 65 63 .$this->outputResult($this->chec
1aac0 6b 47 69 74 68 75 62 4f 61 75 74 68 28 24 64 6f 6d 61 69 6e 2c 20 24 74 6f 6b 65 6e 29 29 3b 0a kGithubOauth($domain,.$token));.
1aae0 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 }.}.else.{.$io->write('Checking.
1ab00 67 69 74 68 75 62 2e 63 6f 6d 20 72 61 74 65 20 6c 69 6d 69 74 3a 20 27 2c 20 66 61 6c 73 65 29 github.com.rate.limit:.',.false)
1ab20 3b 0a 74 72 79 20 7b 0a 24 72 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 47 69 74 68 75 62 ;.try.{.$rate.=.$this->getGithub
1ab40 52 61 74 65 4c 69 6d 69 74 28 27 67 69 74 68 75 62 2e 63 6f 6d 27 29 3b 0a 24 74 68 69 73 2d 3e RateLimit('github.com');.$this->
1ab60 6f 75 74 70 75 74 52 65 73 75 6c 74 28 74 72 75 65 29 3b 0a 69 66 20 28 31 30 20 3e 20 24 72 61 outputResult(true);.if.(10.>.$ra
1ab80 74 65 5b 27 72 65 6d 61 69 6e 69 6e 67 27 5d 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c te['remaining']).{.$io->write('<
1aba0 77 61 72 6e 69 6e 67 3e 57 41 52 4e 49 4e 47 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 24 69 6f warning>WARNING</warning>');.$io
1abc0 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 0a 27 3c 63 6f 6d 6d 65 6e 74 3e 47 69 74 68 75 ->write(sprintf(.'<comment>Githu
1abe0 62 20 68 61 73 20 61 20 72 61 74 65 20 6c 69 6d 69 74 20 6f 6e 20 74 68 65 69 72 20 41 50 49 2e b.has.a.rate.limit.on.their.API.
1ac00 20 27 0a 2e 20 27 59 6f 75 20 63 75 72 72 65 6e 74 6c 79 20 68 61 76 65 20 3c 6f 70 74 69 6f 6e .'...'You.currently.have.<option
1ac20 73 3d 62 6f 6c 64 3e 25 75 3c 2f 6f 70 74 69 6f 6e 73 3d 62 6f 6c 64 3e 20 27 0a 2e 20 27 6f 75 s=bold>%u</options=bold>.'...'ou
1ac40 74 20 6f 66 20 3c 6f 70 74 69 6f 6e 73 3d 62 6f 6c 64 3e 25 75 3c 2f 6f 70 74 69 6f 6e 73 3d 62 t.of.<options=bold>%u</options=b
1ac60 6f 6c 64 3e 20 72 65 71 75 65 73 74 73 20 6c 65 66 74 2e 27 20 2e 20 50 48 50 5f 45 4f 4c 0a 2e old>.requests.left.'...PHP_EOL..
1ac80 20 27 53 65 65 20 68 74 74 70 73 3a 2f 2f 64 65 76 65 6c 6f 70 65 72 2e 67 69 74 68 75 62 2e 63 .'See.https://developer.github.c
1aca0 6f 6d 2f 76 33 2f 23 72 61 74 65 2d 6c 69 6d 69 74 69 6e 67 20 61 6e 64 20 61 6c 73 6f 27 20 2e om/v3/#rate-limiting.and.also'..
1acc0 20 50 48 50 5f 45 4f 4c 0a 2e 20 27 20 20 20 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f .PHP_EOL...'....https://getcompo
1ace0 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 61 72 74 69 63 6c 65 73 2f 74 72 6f 75 62 6c 65 73 68 6f 6f ser.org/doc/articles/troubleshoo
1ad00 74 69 6e 67 2e 6d 64 23 61 70 69 2d 72 61 74 65 2d 6c 69 6d 69 74 2d 61 6e 64 2d 6f 61 75 74 68 ting.md#api-rate-limit-and-oauth
1ad20 2d 74 6f 6b 65 6e 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 0a 24 72 61 74 65 5b 27 72 65 6d 61 69 -tokens</comment>',.$rate['remai
1ad40 6e 69 6e 67 27 5d 2c 0a 24 72 61 74 65 5b 27 6c 69 6d 69 74 27 5d 0a 29 29 3b 0a 7d 0a 7d 20 63 ning'],.$rate['limit'].));.}.}.c
1ad60 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 65 20 69 6e atch.(\Exception.$e).{.if.($e.in
1ad80 73 74 61 6e 63 65 6f 66 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 26 26 20 24 stanceof.TransportException.&&.$
1ada0 65 2d 3e 67 65 74 43 6f 64 65 28 29 20 3d 3d 3d 20 34 30 31 29 20 7b 0a 24 74 68 69 73 2d 3e 6f e->getCode().===.401).{.$this->o
1adc0 75 74 70 75 74 52 65 73 75 6c 74 28 27 3c 63 6f 6d 6d 65 6e 74 3e 54 68 65 20 6f 61 75 74 68 20 utputResult('<comment>The.oauth.
1ade0 74 6f 6b 65 6e 20 66 6f 72 20 67 69 74 68 75 62 2e 63 6f 6d 20 73 65 65 6d 73 20 69 6e 76 61 6c token.for.github.com.seems.inval
1ae00 69 64 2c 20 72 75 6e 20 22 63 6f 6d 70 6f 73 65 72 20 63 6f 6e 66 69 67 20 2d 2d 67 6c 6f 62 61 id,.run."composer.config.--globa
1ae20 6c 20 2d 2d 75 6e 73 65 74 20 67 69 74 68 75 62 2d 6f 61 75 74 68 2e 67 69 74 68 75 62 2e 63 6f l.--unset.github-oauth.github.co
1ae40 6d 22 20 74 6f 20 72 65 6d 6f 76 65 20 69 74 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 7d 20 65 m".to.remove.it</comment>');.}.e
1ae60 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 65 29 3b 0a 7d lse.{.$this->outputResult($e);.}
1ae80 0a 7d 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 43 68 65 63 6b 69 6e 67 20 64 69 73 6b 20 .}.}..$io->write('Checking.disk.
1aea0 66 72 65 65 20 73 70 61 63 65 3a 20 27 2c 20 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 free.space:.',.false);.$this->ou
1aec0 74 70 75 74 52 65 73 75 6c 74 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 44 69 73 6b 53 70 61 63 65 tputResult($this->checkDiskSpace
1aee0 28 24 63 6f 6e 66 69 67 29 29 3b 0a 0a 69 66 20 28 27 70 68 61 72 3a 27 20 3d 3d 3d 20 73 75 62 ($config));..if.('phar:'.===.sub
1af00 73 74 72 28 5f 5f 46 49 4c 45 5f 5f 2c 20 30 2c 20 35 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 str(__FILE__,.0,.5)).{.$io->writ
1af20 65 28 27 43 68 65 63 6b 69 6e 67 20 70 75 62 6b 65 79 73 3a 20 27 2c 20 66 61 6c 73 65 29 3b 0a e('Checking.pubkeys:.',.false);.
1af40 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 74 68 69 73 2d 3e 63 68 65 63 6b $this->outputResult($this->check
1af60 50 75 62 4b 65 79 73 28 24 63 6f 6e 66 69 67 29 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 PubKeys($config));..$io->write('
1af80 43 68 65 63 6b 69 6e 67 20 63 6f 6d 70 6f 73 65 72 20 76 65 72 73 69 6f 6e 3a 20 27 2c 20 66 61 Checking.composer.version:.',.fa
1afa0 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 74 68 69 73 2d lse);.$this->outputResult($this-
1afc0 3e 63 68 65 63 6b 56 65 72 73 69 6f 6e 28 24 63 6f 6e 66 69 67 29 29 3b 0a 7d 0a 0a 72 65 74 75 >checkVersion($config));.}..retu
1afe0 72 6e 20 24 74 68 69 73 2d 3e 66 61 69 6c 75 72 65 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 rn.$this->failures;.}..private.f
1b000 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 43 6f 6d 70 6f 73 65 72 53 63 68 65 6d 61 28 29 0a 7b 0a unction.checkComposerSchema().{.
1b020 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 43 6f 6e 66 69 67 56 61 6c 69 64 61 74 6f 72 $validator.=.new.ConfigValidator
1b040 28 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 29 3b 0a 6c 69 73 74 28 24 65 72 72 6f 72 73 2c 20 ($this->getIO());.list($errors,.
1b060 2c 20 24 77 61 72 6e 69 6e 67 73 29 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 2d 3e 76 61 6c 69 64 ,.$warnings).=.$validator->valid
1b080 61 74 65 28 46 61 63 74 6f 72 79 3a 3a 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 29 3b ate(Factory::getComposerFile());
1b0a0 0a 0a 69 66 20 28 24 65 72 72 6f 72 73 20 7c 7c 20 24 77 61 72 6e 69 6e 67 73 29 20 7b 0a 24 6d ..if.($errors.||.$warnings).{.$m
1b0c0 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 0a 27 65 72 72 6f 72 27 20 3d 3e 20 24 65 72 72 essages.=.array(.'error'.=>.$err
1b0e0 6f 72 73 2c 0a 27 77 61 72 6e 69 6e 67 27 20 3d 3e 20 24 77 61 72 6e 69 6e 67 73 2c 0a 29 3b 0a ors,.'warning'.=>.$warnings,.);.
1b100 0a 24 6f 75 74 70 75 74 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 .$output.=.'';.foreach.($message
1b120 73 20 61 73 20 24 73 74 79 6c 65 20 3d 3e 20 24 6d 73 67 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 s.as.$style.=>.$msgs).{.foreach.
1b140 28 24 6d 73 67 73 20 61 73 20 24 6d 73 67 29 20 7b 0a 24 6f 75 74 70 75 74 20 2e 3d 20 27 3c 27 ($msgs.as.$msg).{.$output..=.'<'
1b160 20 2e 20 24 73 74 79 6c 65 20 2e 20 27 3e 27 20 2e 20 24 6d 73 67 20 2e 20 27 3c 2f 27 20 2e 20 ...$style...'>'...$msg...'</'...
1b180 24 73 74 79 6c 65 20 2e 20 27 3e 27 20 2e 20 50 48 50 5f 45 4f 4c 3b 0a 7d 0a 7d 0a 0a 72 65 74 $style...'>'...PHP_EOL;.}.}..ret
1b1a0 75 72 6e 20 72 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 urn.rtrim($output);.}..return.tr
1b1c0 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 47 69 74 ue;.}..private.function.checkGit
1b1e0 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 ().{.$this->process->execute('gi
1b200 74 20 63 6f 6e 66 69 67 20 63 6f 6c 6f 72 2e 75 69 27 2c 20 24 6f 75 74 70 75 74 29 3b 0a 69 66 t.config.color.ui',.$output);.if
1b220 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 20 3d 3d 3d 20 .(strtolower(trim($output)).===.
1b240 27 61 6c 77 61 79 73 27 29 20 7b 0a 72 65 74 75 72 6e 20 27 3c 63 6f 6d 6d 65 6e 74 3e 59 6f 75 'always').{.return.'<comment>You
1b260 72 20 67 69 74 20 63 6f 6c 6f 72 2e 75 69 20 73 65 74 74 69 6e 67 20 69 73 20 73 65 74 20 74 6f r.git.color.ui.setting.is.set.to
1b280 20 61 6c 77 61 79 73 2c 20 74 68 69 73 20 69 73 20 6b 6e 6f 77 6e 20 74 6f 20 63 72 65 61 74 65 .always,.this.is.known.to.create
1b2a0 20 69 73 73 75 65 73 2e 20 55 73 65 20 22 67 69 74 20 63 6f 6e 66 69 67 20 2d 2d 67 6c 6f 62 61 .issues..Use."git.config.--globa
1b2c0 6c 20 63 6f 6c 6f 72 2e 75 69 20 74 72 75 65 22 20 74 6f 20 73 65 74 20 69 74 20 63 6f 72 72 65 l.color.ui.true".to.set.it.corre
1b2e0 63 74 6c 79 2e 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 ctly.</comment>';.}..return.true
1b300 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 48 74 74 70 28 ;.}..private.function.checkHttp(
1b320 24 70 72 6f 74 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 64 69 73 61 62 $proto,.Config.$config).{.$disab
1b340 6c 65 54 6c 73 20 3d 20 66 61 6c 73 65 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 leTls.=.false;.$result.=.array()
1b360 3b 0a 69 66 20 28 24 70 72 6f 74 6f 20 3d 3d 3d 20 27 68 74 74 70 73 27 20 26 26 20 24 63 6f 6e ;.if.($proto.===.'https'.&&.$con
1b380 66 69 67 2d 3e 67 65 74 28 27 64 69 73 61 62 6c 65 2d 74 6c 73 27 29 20 3d 3d 3d 20 74 72 75 65 fig->get('disable-tls').===.true
1b3a0 29 20 7b 0a 24 64 69 73 61 62 6c 65 54 6c 73 20 3d 20 74 72 75 65 3b 0a 24 72 65 73 75 6c 74 5b ).{.$disableTls.=.true;.$result[
1b3c0 5d 20 3d 20 27 3c 77 61 72 6e 69 6e 67 3e 43 6f 6d 70 6f 73 65 72 20 69 73 20 63 6f 6e 66 69 67 ].=.'<warning>Composer.is.config
1b3e0 75 72 65 64 20 74 6f 20 64 69 73 61 62 6c 65 20 53 53 4c 2f 54 4c 53 20 70 72 6f 74 65 63 74 69 ured.to.disable.SSL/TLS.protecti
1b400 6f 6e 2e 20 54 68 69 73 20 77 69 6c 6c 20 6c 65 61 76 65 20 72 65 6d 6f 74 65 20 48 54 54 50 53 on..This.will.leave.remote.HTTPS
1b420 20 72 65 71 75 65 73 74 73 20 76 75 6c 6e 65 72 61 62 6c 65 20 74 6f 20 4d 61 6e 2d 49 6e 2d 54 .requests.vulnerable.to.Man-In-T
1b440 68 65 2d 4d 69 64 64 6c 65 20 61 74 74 61 63 6b 73 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 3b 0a 7d he-Middle.attacks.</warning>';.}
1b460 0a 69 66 20 28 24 70 72 6f 74 6f 20 3d 3d 3d 20 27 68 74 74 70 73 27 20 26 26 20 21 65 78 74 65 .if.($proto.===.'https'.&&.!exte
1b480 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 20 26 26 20 21 24 64 69 73 nsion_loaded('openssl').&&.!$dis
1b4a0 61 62 6c 65 54 6c 73 29 20 7b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 43 ableTls).{.$result[].=.'<error>C
1b4c0 6f 6d 70 6f 73 65 72 20 69 73 20 63 6f 6e 66 69 67 75 72 65 64 20 74 6f 20 75 73 65 20 53 53 4c omposer.is.configured.to.use.SSL
1b4e0 2f 54 4c 53 20 70 72 6f 74 65 63 74 69 6f 6e 20 62 75 74 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 /TLS.protection.but.the.openssl.
1b500 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 2e 3c 2f 65 72 72 extension.is.not.available.</err
1b520 6f 72 3e 27 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f or>';.}..try.{.$this->rfs->getCo
1b540 6e 74 65 6e 74 73 28 27 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 20 24 70 72 6f 74 6f 20 2e ntents('packagist.org',.$proto..
1b560 20 27 3a 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 2f 70 61 63 6b 61 67 65 73 2e 6a 73 6f 6e .'://packagist.org/packages.json
1b580 27 2c 20 66 61 6c 73 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 ',.false);.}.catch.(TransportExc
1b5a0 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f eption.$e).{.if.(false.!==.strpo
1b5c0 73 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 27 63 61 66 69 6c 65 27 29 29 20 7b s($e->getMessage(),.'cafile')).{
1b5e0 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 5b 27 20 2e 20 67 65 74 5f 63 6c .$result[].=.'<error>['...get_cl
1b600 61 73 73 28 24 65 29 20 2e 20 27 5d 20 27 20 2e 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 ass($e)...'].'...$e->getMessage(
1b620 29 20 2e 20 27 3c 2f 65 72 72 6f 72 3e 27 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 27 3c 65 72 )...'</error>';.$result[].=.'<er
1b640 72 6f 72 3e 55 6e 61 62 6c 65 20 74 6f 20 6c 6f 63 61 74 65 20 61 20 76 61 6c 69 64 20 43 41 20 ror>Unable.to.locate.a.valid.CA.
1b660 63 65 72 74 69 66 69 63 61 74 65 20 66 69 6c 65 2e 20 59 6f 75 20 6d 75 73 74 20 73 65 74 20 61 certificate.file..You.must.set.a
1b680 20 76 61 6c 69 64 20 5c 27 63 61 66 69 6c 65 5c 27 20 6f 70 74 69 6f 6e 2e 3c 2f 65 72 72 6f 72 .valid.\'cafile\'.option.</error
1b6a0 3e 27 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 59 6f 75 20 63 61 6e 20 >';.$result[].=.'<error>You.can.
1b6c0 61 6c 74 65 72 6e 61 74 69 76 65 6c 79 20 64 69 73 61 62 6c 65 20 74 68 69 73 20 65 72 72 6f 72 alternatively.disable.this.error
1b6e0 2c 20 61 74 20 79 6f 75 72 20 6f 77 6e 20 72 69 73 6b 2c 20 62 79 20 65 6e 61 62 6c 69 6e 67 20 ,.at.your.own.risk,.by.enabling.
1b700 74 68 65 20 5c 27 64 69 73 61 62 6c 65 2d 74 6c 73 5c 27 20 6f 70 74 69 6f 6e 2e 3c 2f 65 72 72 the.\'disable-tls\'.option.</err
1b720 6f 72 3e 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 72 65 or>';.}.else.{.array_unshift($re
1b740 73 75 6c 74 2c 20 27 5b 27 20 2e 20 67 65 74 5f 63 6c 61 73 73 28 24 65 29 20 2e 20 27 5d 20 27 sult,.'['...get_class($e)...'].'
1b760 20 2e 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 63 ...$e->getMessage());.}.}..if.(c
1b780 6f 75 6e 74 28 24 72 65 73 75 6c 74 29 20 3e 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 73 ount($result).>.0).{.return.$res
1b7a0 75 6c 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 ult;.}..return.true;.}..private.
1b7c0 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 48 74 74 70 50 72 6f 78 79 28 29 0a 7b 0a 24 70 72 6f function.checkHttpProxy().{.$pro
1b7e0 74 6f 63 6f 6c 20 3d 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 tocol.=.extension_loaded('openss
1b800 6c 27 29 20 3f 20 27 68 74 74 70 73 27 20 3a 20 27 68 74 74 70 27 3b 0a 74 72 79 20 7b 0a 24 6a l').?.'https'.:.'http';.try.{.$j
1b820 73 6f 6e 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 son.=.json_decode($this->rfs->ge
1b840 74 43 6f 6e 74 65 6e 74 73 28 27 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 20 24 70 72 6f 74 tContents('packagist.org',.$prot
1b860 6f 63 6f 6c 20 2e 20 27 3a 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 2f 70 61 63 6b 61 67 65 ocol...'://packagist.org/package
1b880 73 2e 6a 73 6f 6e 27 2c 20 66 61 6c 73 65 29 2c 20 74 72 75 65 29 3b 0a 24 68 61 73 68 20 3d 20 s.json',.false),.true);.$hash.=.
1b8a0 72 65 73 65 74 28 24 6a 73 6f 6e 5b 27 70 72 6f 76 69 64 65 72 2d 69 6e 63 6c 75 64 65 73 27 5d reset($json['provider-includes']
1b8c0 29 3b 0a 24 68 61 73 68 20 3d 20 24 68 61 73 68 5b 27 73 68 61 32 35 36 27 5d 3b 0a 24 70 61 74 );.$hash.=.$hash['sha256'];.$pat
1b8e0 68 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 25 68 61 73 68 25 27 2c 20 24 68 61 73 68 2c h.=.str_replace('%hash%',.$hash,
1b900 20 6b 65 79 28 24 6a 73 6f 6e 5b 27 70 72 6f 76 69 64 65 72 2d 69 6e 63 6c 75 64 65 73 27 5d 29 .key($json['provider-includes'])
1b920 29 3b 0a 24 70 72 6f 76 69 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f );.$provider.=.$this->rfs->getCo
1b940 6e 74 65 6e 74 73 28 27 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 20 24 70 72 6f 74 6f 63 6f ntents('packagist.org',.$protoco
1b960 6c 20 2e 20 27 3a 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 2f 27 2e 24 70 61 74 68 2c 20 66 l...'://packagist.org/'.$path,.f
1b980 61 6c 73 65 29 3b 0a 0a 69 66 20 28 68 61 73 68 28 27 73 68 61 32 35 36 27 2c 20 24 70 72 6f 76 alse);..if.(hash('sha256',.$prov
1b9a0 69 64 65 72 29 20 21 3d 3d 20 24 68 61 73 68 29 20 7b 0a 72 65 74 75 72 6e 20 27 49 74 20 73 65 ider).!==.$hash).{.return.'It.se
1b9c0 65 6d 73 20 74 68 61 74 20 79 6f 75 72 20 70 72 6f 78 79 20 69 73 20 6d 6f 64 69 66 79 69 6e 67 ems.that.your.proxy.is.modifying
1b9e0 20 68 74 74 70 20 74 72 61 66 66 69 63 20 6f 6e 20 74 68 65 20 66 6c 79 27 3b 0a 7d 0a 7d 20 63 .http.traffic.on.the.fly';.}.}.c
1ba00 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 atch.(\Exception.$e).{.return.$e
1ba20 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 ;.}..return.true;.}.........priv
1ba40 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 48 74 74 70 50 72 6f 78 79 46 75 6c 6c 55 ate.function.checkHttpProxyFullU
1ba60 72 69 52 65 71 75 65 73 74 50 61 72 61 6d 28 29 0a 7b 0a 24 75 72 6c 20 3d 20 27 68 74 74 70 3a riRequestParam().{.$url.=.'http:
1ba80 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 2f 70 61 63 6b 61 67 65 73 2e 6a 73 6f 6e 27 3b 0a //packagist.org/packages.json';.
1baa0 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 70 try.{.$this->rfs->getContents('p
1bac0 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 29 3b 0a 7d 20 63 ackagist.org',.$url,.false);.}.c
1bae0 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 atch.(TransportException.$e).{.t
1bb00 72 79 20 7b 0a 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 70 61 ry.{.$this->rfs->getContents('pa
1bb20 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 2c 20 61 72 72 61 79 ckagist.org',.$url,.false,.array
1bb40 28 27 68 74 74 70 27 20 3d 3e 20 61 72 72 61 79 28 27 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 72 ('http'.=>.array('request_fullur
1bb60 69 27 20 3d 3e 20 66 61 6c 73 65 29 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f i'.=>.false)));.}.catch.(Transpo
1bb80 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 27 55 6e 61 62 6c 65 rtException.$e).{.return.'Unable
1bba0 20 74 6f 20 61 73 73 65 73 73 20 74 68 65 20 73 69 74 75 61 74 69 6f 6e 2c 20 6d 61 79 62 65 20 .to.assess.the.situation,.maybe.
1bbc0 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 20 69 73 20 64 6f 77 6e 20 28 27 2e 24 65 2d 3e 67 65 74 packagist.org.is.down.('.$e->get
1bbe0 4d 65 73 73 61 67 65 28 29 2e 27 29 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 49 74 20 73 65 65 Message().')';.}..return.'It.see
1bc00 6d 73 20 74 68 65 72 65 20 69 73 20 61 20 70 72 6f 62 6c 65 6d 20 77 69 74 68 20 79 6f 75 72 20 ms.there.is.a.problem.with.your.
1bc20 70 72 6f 78 79 20 73 65 72 76 65 72 2c 20 74 72 79 20 73 65 74 74 69 6e 67 20 74 68 65 20 22 48 proxy.server,.try.setting.the."H
1bc40 54 54 50 5f 50 52 4f 58 59 5f 52 45 51 55 45 53 54 5f 46 55 4c 4c 55 52 49 22 20 61 6e 64 20 22 TTP_PROXY_REQUEST_FULLURI".and."
1bc60 48 54 54 50 53 5f 50 52 4f 58 59 5f 52 45 51 55 45 53 54 5f 46 55 4c 4c 55 52 49 22 20 65 6e 76 HTTPS_PROXY_REQUEST_FULLURI".env
1bc80 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 73 20 74 6f 20 22 66 61 6c 73 65 22 27 3b 0a ironment.variables.to."false"';.
1bca0 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 }..return.true;.}.........privat
1bcc0 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 48 74 74 70 73 50 72 6f 78 79 46 75 6c 6c 55 72 e.function.checkHttpsProxyFullUr
1bce0 69 52 65 71 75 65 73 74 50 61 72 61 6d 28 29 0a 7b 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e iRequestParam().{.if.(!extension
1bd00 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 59 6f _loaded('openssl')).{.return.'Yo
1bd20 75 20 6e 65 65 64 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 69 6e 73 u.need.the.openssl.extension.ins
1bd40 74 61 6c 6c 65 64 20 66 6f 72 20 74 68 69 73 20 63 68 65 63 6b 27 3b 0a 7d 0a 0a 24 75 72 6c 20 talled.for.this.check';.}..$url.
1bd60 3d 20 27 68 74 74 70 73 3a 2f 2f 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 72 65 70 6f 73 2f =.'https://api.github.com/repos/
1bd80 53 65 6c 64 61 65 6b 2f 6a 73 6f 6e 6c 69 6e 74 2f 7a 69 70 62 61 6c 6c 2f 31 2e 30 2e 30 27 3b Seldaek/jsonlint/zipball/1.0.0';
1bda0 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 .try.{.$this->rfs->getContents('
1bdc0 67 69 74 68 75 62 2e 63 6f 6d 27 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 29 3b 0a 7d 20 63 61 74 github.com',.$url,.false);.}.cat
1bde0 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 72 79 ch.(TransportException.$e).{.try
1be00 20 7b 0a 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 67 69 74 68 .{.$this->rfs->getContents('gith
1be20 75 62 2e 63 6f 6d 27 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 2c 20 61 72 72 61 79 28 27 68 74 74 ub.com',.$url,.false,.array('htt
1be40 70 27 20 3d 3e 20 61 72 72 61 79 28 27 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 72 69 27 20 3d 3e p'.=>.array('request_fulluri'.=>
1be60 20 66 61 6c 73 65 29 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 .false)));.}.catch.(TransportExc
1be80 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 27 55 6e 61 62 6c 65 20 74 6f 20 61 eption.$e).{.return.'Unable.to.a
1bea0 73 73 65 73 73 20 74 68 65 20 73 69 74 75 61 74 69 6f 6e 2c 20 6d 61 79 62 65 20 67 69 74 68 75 ssess.the.situation,.maybe.githu
1bec0 62 20 69 73 20 64 6f 77 6e 20 28 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 b.is.down.('.$e->getMessage().')
1bee0 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 49 74 20 73 65 65 6d 73 20 74 68 65 72 65 20 69 73 20 ';.}..return.'It.seems.there.is.
1bf00 61 20 70 72 6f 62 6c 65 6d 20 77 69 74 68 20 79 6f 75 72 20 70 72 6f 78 79 20 73 65 72 76 65 72 a.problem.with.your.proxy.server
1bf20 2c 20 74 72 79 20 73 65 74 74 69 6e 67 20 74 68 65 20 22 48 54 54 50 53 5f 50 52 4f 58 59 5f 52 ,.try.setting.the."HTTPS_PROXY_R
1bf40 45 51 55 45 53 54 5f 46 55 4c 4c 55 52 49 22 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 EQUEST_FULLURI".environment.vari
1bf60 61 62 6c 65 20 74 6f 20 22 66 61 6c 73 65 22 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 able.to."false"';.}..return.true
1bf80 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 47 69 74 68 75 ;.}..private.function.checkGithu
1bfa0 62 4f 61 75 74 68 28 24 64 6f 6d 61 69 6e 2c 20 24 74 6f 6b 65 6e 29 0a 7b 0a 24 74 68 69 73 2d bOauth($domain,.$token).{.$this-
1bfc0 3e 67 65 74 49 4f 28 29 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 64 6f 6d >getIO()->setAuthentication($dom
1bfe0 61 69 6e 2c 20 24 74 6f 6b 65 6e 2c 20 27 78 2d 6f 61 75 74 68 2d 62 61 73 69 63 27 29 3b 0a 74 ain,.$token,.'x-oauth-basic');.t
1c000 72 79 20 7b 0a 24 75 72 6c 20 3d 20 24 64 6f 6d 61 69 6e 20 3d 3d 3d 20 27 67 69 74 68 75 62 2e ry.{.$url.=.$domain.===.'github.
1c020 63 6f 6d 27 20 3f 20 27 68 74 74 70 73 3a 2f 2f 61 70 69 2e 27 2e 24 64 6f 6d 61 69 6e 2e 27 2f com'.?.'https://api.'.$domain.'/
1c040 27 20 3a 20 27 68 74 74 70 73 3a 2f 2f 27 2e 24 64 6f 6d 61 69 6e 2e 27 2f 61 70 69 2f 76 33 2f '.:.'https://'.$domain.'/api/v3/
1c060 27 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e ';..return.$this->rfs->getConten
1c080 74 73 28 24 64 6f 6d 61 69 6e 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 2c 20 61 72 72 61 79 28 0a ts($domain,.$url,.false,.array(.
1c0a0 27 72 65 74 72 79 2d 61 75 74 68 2d 66 61 69 6c 75 72 65 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 29 'retry-auth-failure'.=>.false,.)
1c0c0 29 20 3f 20 74 72 75 65 20 3a 20 27 55 6e 65 78 70 65 63 74 65 64 20 65 72 72 6f 72 27 3b 0a 7d ).?.true.:.'Unexpected.error';.}
1c0e0 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 65 20 .catch.(\Exception.$e).{.if.($e.
1c100 69 6e 73 74 61 6e 63 65 6f 66 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 26 26 instanceof.TransportException.&&
1c120 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 20 3d 3d 3d 20 34 30 31 29 20 7b 0a 72 65 74 75 72 6e .$e->getCode().===.401).{.return
1c140 20 27 3c 63 6f 6d 6d 65 6e 74 3e 54 68 65 20 6f 61 75 74 68 20 74 6f 6b 65 6e 20 66 6f 72 20 27 .'<comment>The.oauth.token.for.'
1c160 2e 24 64 6f 6d 61 69 6e 2e 27 20 73 65 65 6d 73 20 69 6e 76 61 6c 69 64 2c 20 72 75 6e 20 22 63 .$domain.'.seems.invalid,.run."c
1c180 6f 6d 70 6f 73 65 72 20 63 6f 6e 66 69 67 20 2d 2d 67 6c 6f 62 61 6c 20 2d 2d 75 6e 73 65 74 20 omposer.config.--global.--unset.
1c1a0 67 69 74 68 75 62 2d 6f 61 75 74 68 2e 27 2e 24 64 6f 6d 61 69 6e 2e 27 22 20 74 6f 20 72 65 6d github-oauth.'.$domain.'".to.rem
1c1c0 6f 76 65 20 69 74 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 3b ove.it</comment>';.}..return.$e;
1c1e0 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 .}.}........private.function.get
1c200 47 69 74 68 75 62 52 61 74 65 4c 69 6d 69 74 28 24 64 6f 6d 61 69 6e 2c 20 24 74 6f 6b 65 6e 20 GithubRateLimit($domain,.$token.
1c220 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 74 6f 6b 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 67 =.null).{.if.($token).{.$this->g
1c240 65 74 49 4f 28 29 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 64 6f 6d 61 69 etIO()->setAuthentication($domai
1c260 6e 2c 20 24 74 6f 6b 65 6e 2c 20 27 78 2d 6f 61 75 74 68 2d 62 61 73 69 63 27 29 3b 0a 7d 0a 0a n,.$token,.'x-oauth-basic');.}..
1c280 24 75 72 6c 20 3d 20 24 64 6f 6d 61 69 6e 20 3d 3d 3d 20 27 67 69 74 68 75 62 2e 63 6f 6d 27 20 $url.=.$domain.===.'github.com'.
1c2a0 3f 20 27 68 74 74 70 73 3a 2f 2f 61 70 69 2e 27 2e 24 64 6f 6d 61 69 6e 2e 27 2f 72 61 74 65 5f ?.'https://api.'.$domain.'/rate_
1c2c0 6c 69 6d 69 74 27 20 3a 20 27 68 74 74 70 73 3a 2f 2f 27 2e 24 64 6f 6d 61 69 6e 2e 27 2f 61 70 limit'.:.'https://'.$domain.'/ap
1c2e0 69 2f 72 61 74 65 5f 6c 69 6d 69 74 27 3b 0a 24 6a 73 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 72 66 i/rate_limit';.$json.=.$this->rf
1c300 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 64 6f 6d 61 69 6e 2c 20 24 75 72 6c 2c 20 66 61 s->getContents($domain,.$url,.fa
1c320 6c 73 65 2c 20 61 72 72 61 79 28 27 72 65 74 72 79 2d 61 75 74 68 2d 66 61 69 6c 75 72 65 27 20 lse,.array('retry-auth-failure'.
1c340 3d 3e 20 66 61 6c 73 65 29 29 3b 0a 24 64 61 74 61 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 =>.false));.$data.=.json_decode(
1c360 24 6a 73 6f 6e 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 61 74 61 5b 27 72 65 73 $json,.true);..return.$data['res
1c380 6f 75 72 63 65 73 27 5d 5b 27 63 6f 72 65 27 5d 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e ources']['core'];.}..private.fun
1c3a0 63 74 69 6f 6e 20 63 68 65 63 6b 44 69 73 6b 53 70 61 63 65 28 24 63 6f 6e 66 69 67 29 0a 7b 0a ction.checkDiskSpace($config).{.
1c3c0 24 6d 69 6e 53 70 61 63 65 46 72 65 65 20 3d 20 31 30 32 34 20 2a 20 31 30 32 34 3b 0a 69 66 20 $minSpaceFree.=.1024.*.1024;.if.
1c3e0 28 28 28 24 64 66 20 3d 20 40 64 69 73 6b 5f 66 72 65 65 5f 73 70 61 63 65 28 24 64 69 72 20 3d ((($df.=.@disk_free_space($dir.=
1c400 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 29 29 20 21 3d 3d 20 66 61 6c 73 .$config->get('home'))).!==.fals
1c420 65 20 26 26 20 24 64 66 20 3c 20 24 6d 69 6e 53 70 61 63 65 46 72 65 65 29 0a 7c 7c 20 28 28 24 e.&&.$df.<.$minSpaceFree).||.(($
1c440 64 66 20 3d 20 40 64 69 73 6b 5f 66 72 65 65 5f 73 70 61 63 65 28 24 64 69 72 20 3d 20 24 63 6f df.=.@disk_free_space($dir.=.$co
1c460 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 29 29 20 21 3d 3d 20 66 61 nfig->get('vendor-dir'))).!==.fa
1c480 6c 73 65 20 26 26 20 24 64 66 20 3c 20 24 6d 69 6e 53 70 61 63 65 46 72 65 65 29 0a 29 20 7b 0a lse.&&.$df.<.$minSpaceFree).).{.
1c4a0 72 65 74 75 72 6e 20 27 3c 65 72 72 6f 72 3e 54 68 65 20 64 69 73 6b 20 68 6f 73 74 69 6e 67 20 return.'<error>The.disk.hosting.
1c4c0 27 2e 24 64 69 72 2e 27 20 69 73 20 66 75 6c 6c 3c 2f 65 72 72 6f 72 3e 27 3b 0a 7d 0a 0a 72 65 '.$dir.'.is.full</error>';.}..re
1c4e0 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 turn.true;.}..private.function.c
1c500 68 65 63 6b 50 75 62 4b 65 79 73 28 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 68 6f 6d 65 20 3d 20 24 heckPubKeys($config).{.$home.=.$
1c520 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 3b 0a 24 65 72 72 6f 72 73 20 3d 20 61 config->get('home');.$errors.=.a
1c540 72 72 61 79 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 69 rray();.$io.=.$this->getIO();..i
1c560 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 68 6f 6d 65 2e 27 2f 6b 65 79 73 2e 74 61 67 73 f.(file_exists($home.'/keys.tags
1c580 2e 70 75 62 27 29 20 26 26 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 68 6f 6d 65 2e 27 2f 6b 65 .pub').&&.file_exists($home.'/ke
1c5a0 79 73 2e 64 65 76 2e 70 75 62 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 27 29 3b 0a ys.dev.pub')).{.$io->write('');.
1c5c0 7d 0a 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 68 6f 6d 65 2e 27 2f 6b 65 79 73 2e }..if.(file_exists($home.'/keys.
1c5e0 74 61 67 73 2e 70 75 62 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 54 61 67 73 20 50 tags.pub')).{.$io->write('Tags.P
1c600 75 62 6c 69 63 20 4b 65 79 20 46 69 6e 67 65 72 70 72 69 6e 74 3a 20 27 20 2e 20 4b 65 79 73 3a ublic.Key.Fingerprint:.'...Keys:
1c620 3a 66 69 6e 67 65 72 70 72 69 6e 74 28 24 68 6f 6d 65 2e 27 2f 6b 65 79 73 2e 74 61 67 73 2e 70 :fingerprint($home.'/keys.tags.p
1c640 75 62 27 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 72 72 6f 72 73 5b 5d 20 3d 20 27 3c 65 72 ub'));.}.else.{.$errors[].=.'<er
1c660 72 6f 72 3e 4d 69 73 73 69 6e 67 20 70 75 62 6b 65 79 20 66 6f 72 20 74 61 67 73 20 76 65 72 69 ror>Missing.pubkey.for.tags.veri
1c680 66 69 63 61 74 69 6f 6e 3c 2f 65 72 72 6f 72 3e 27 3b 0a 7d 0a 0a 69 66 20 28 66 69 6c 65 5f 65 fication</error>';.}..if.(file_e
1c6a0 78 69 73 74 73 28 24 68 6f 6d 65 2e 27 2f 6b 65 79 73 2e 64 65 76 2e 70 75 62 27 29 29 20 7b 0a xists($home.'/keys.dev.pub')).{.
1c6c0 24 69 6f 2d 3e 77 72 69 74 65 28 27 44 65 76 20 50 75 62 6c 69 63 20 4b 65 79 20 46 69 6e 67 65 $io->write('Dev.Public.Key.Finge
1c6e0 72 70 72 69 6e 74 3a 20 27 20 2e 20 4b 65 79 73 3a 3a 66 69 6e 67 65 72 70 72 69 6e 74 28 24 68 rprint:.'...Keys::fingerprint($h
1c700 6f 6d 65 2e 27 2f 6b 65 79 73 2e 64 65 76 2e 70 75 62 27 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a ome.'/keys.dev.pub'));.}.else.{.
1c720 24 65 72 72 6f 72 73 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 4d 69 73 73 69 6e 67 20 70 75 62 6b $errors[].=.'<error>Missing.pubk
1c740 65 79 20 66 6f 72 20 64 65 76 20 76 65 72 69 66 69 63 61 74 69 6f 6e 3c 2f 65 72 72 6f 72 3e 27 ey.for.dev.verification</error>'
1c760 3b 0a 7d 0a 0a 69 66 20 28 24 65 72 72 6f 72 73 29 20 7b 0a 24 65 72 72 6f 72 73 5b 5d 20 3d 20 ;.}..if.($errors).{.$errors[].=.
1c780 27 3c 65 72 72 6f 72 3e 52 75 6e 20 63 6f 6d 70 6f 73 65 72 20 73 65 6c 66 2d 75 70 64 61 74 65 '<error>Run.composer.self-update
1c7a0 20 2d 2d 75 70 64 61 74 65 2d 6b 65 79 73 20 74 6f 20 73 65 74 20 74 68 65 6d 20 75 70 3c 2f 65 .--update-keys.to.set.them.up</e
1c7c0 72 72 6f 72 3e 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 72 72 6f 72 73 20 3f 3a 20 74 72 75 rror>';.}..return.$errors.?:.tru
1c7e0 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 56 65 72 73 e;.}..private.function.checkVers
1c800 69 6f 6e 28 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 76 65 72 73 69 6f 6e 73 55 74 69 6c 20 3d 20 6e ion($config).{.$versionsUtil.=.n
1c820 65 77 20 56 65 72 73 69 6f 6e 73 28 24 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 72 66 73 29 ew.Versions($config,.$this->rfs)
1c840 3b 0a 24 6c 61 74 65 73 74 20 3d 20 24 76 65 72 73 69 6f 6e 73 55 74 69 6c 2d 3e 67 65 74 4c 61 ;.$latest.=.$versionsUtil->getLa
1c860 74 65 73 74 28 29 3b 0a 0a 69 66 20 28 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 20 21 test();..if.(Composer::VERSION.!
1c880 3d 3d 20 24 6c 61 74 65 73 74 5b 27 76 65 72 73 69 6f 6e 27 5d 20 26 26 20 43 6f 6d 70 6f 73 65 ==.$latest['version'].&&.Compose
1c8a0 72 3a 3a 56 45 52 53 49 4f 4e 20 21 3d 3d 20 27 40 70 61 63 6b 61 67 65 5f 76 65 72 73 69 6f 6e r::VERSION.!==.'@package_version
1c8c0 40 27 29 20 7b 0a 72 65 74 75 72 6e 20 27 3c 63 6f 6d 6d 65 6e 74 3e 59 6f 75 20 61 72 65 20 6e @').{.return.'<comment>You.are.n
1c8e0 6f 74 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 6c 61 74 65 73 74 20 27 2e 24 76 65 72 73 69 6f 6e ot.running.the.latest.'.$version
1c900 73 55 74 69 6c 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 28 29 2e 27 20 76 65 72 73 69 6f 6e 2c 20 72 sUtil->getChannel().'.version,.r
1c920 75 6e 20 60 63 6f 6d 70 6f 73 65 72 20 73 65 6c 66 2d 75 70 64 61 74 65 60 20 74 6f 20 75 70 64 un.`composer.self-update`.to.upd
1c940 61 74 65 20 28 27 2e 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 2e 27 20 3d 3e 20 27 2e ate.('.Composer::VERSION.'.=>.'.
1c960 24 6c 61 74 65 73 74 5b 27 76 65 72 73 69 6f 6e 27 5d 2e 27 29 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 $latest['version'].')</comment>'
1c980 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 ;.}..return.true;.}.....private.
1c9a0 66 75 6e 63 74 69 6f 6e 20 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 72 65 73 75 6c 74 29 0a 7b function.outputResult($result).{
1c9c0 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 69 66 20 28 74 72 75 65 20 .$io.=.$this->getIO();.if.(true.
1c9e0 3d 3d 3d 20 24 72 65 73 75 6c 74 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f ===.$result).{.$io->write('<info
1ca00 3e 4f 4b 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 66 61 >OK</info>');.}.else.{.$this->fa
1ca20 69 6c 75 72 65 73 2b 2b 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 65 72 72 6f 72 3e 46 41 49 ilures++;.$io->write('<error>FAI
1ca40 4c 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 69 66 20 28 24 72 65 73 75 6c 74 20 69 6e 73 74 61 6e 63 L</error>');.if.($result.instanc
1ca60 65 6f 66 20 5c 45 78 63 65 70 74 69 6f 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 5b 27 eof.\Exception).{.$io->write('['
1ca80 2e 67 65 74 5f 63 6c 61 73 73 28 24 72 65 73 75 6c 74 29 2e 27 5d 20 27 2e 24 72 65 73 75 6c 74 .get_class($result).'].'.$result
1caa0 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 72 65 73 75 ->getMessage());.}.elseif.($resu
1cac0 6c 74 29 20 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 72 65 73 75 6c 74 29 29 20 7b 0a 66 lt).{.if.(is_array($result)).{.f
1cae0 6f 72 65 61 63 68 20 28 24 72 65 73 75 6c 74 20 61 73 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 oreach.($result.as.$message).{.$
1cb00 69 6f 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a io->write($message);.}.}.else.{.
1cb20 24 69 6f 2d 3e 77 72 69 74 65 28 24 72 65 73 75 6c 74 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 70 72 $io->write($result);.}.}.}.}..pr
1cb40 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 50 6c 61 74 66 6f 72 6d 28 29 0a 7b ivate.function.checkPlatform().{
1cb60 0a 24 6f 75 74 70 75 74 20 3d 20 27 27 3b 0a 24 6f 75 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 .$output.=.'';.$out.=.function.(
1cb80 24 6d 73 67 2c 20 24 73 74 79 6c 65 29 20 75 73 65 20 28 26 24 6f 75 74 70 75 74 29 20 7b 0a 24 $msg,.$style).use.(&$output).{.$
1cba0 6f 75 74 70 75 74 20 2e 3d 20 27 3c 27 2e 24 73 74 79 6c 65 2e 27 3e 27 2e 24 6d 73 67 2e 27 3c output..=.'<'.$style.'>'.$msg.'<
1cbc0 2f 27 2e 24 73 74 79 6c 65 2e 27 3e 27 2e 50 48 50 5f 45 4f 4c 3b 0a 7d 3b 0a 0a 0a 20 24 65 72 /'.$style.'>'.PHP_EOL;.};....$er
1cbe0 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 77 61 72 6e 69 6e 67 73 20 3d 20 61 72 72 61 rors.=.array();.$warnings.=.arra
1cc00 79 28 29 3b 0a 0a 24 69 6e 69 50 61 74 68 20 3d 20 70 68 70 5f 69 6e 69 5f 6c 6f 61 64 65 64 5f y();..$iniPath.=.php_ini_loaded_
1cc20 66 69 6c 65 28 29 3b 0a 24 64 69 73 70 6c 61 79 49 6e 69 4d 65 73 73 61 67 65 20 3d 20 66 61 6c file();.$displayIniMessage.=.fal
1cc40 73 65 3b 0a 69 66 20 28 24 69 6e 69 50 61 74 68 29 20 7b 0a 24 69 6e 69 4d 65 73 73 61 67 65 20 se;.if.($iniPath).{.$iniMessage.
1cc60 3d 20 50 48 50 5f 45 4f 4c 2e 50 48 50 5f 45 4f 4c 2e 27 54 68 65 20 70 68 70 2e 69 6e 69 20 75 =.PHP_EOL.PHP_EOL.'The.php.ini.u
1cc80 73 65 64 20 62 79 20 79 6f 75 72 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 50 48 50 20 69 73 3a sed.by.your.command-line.PHP.is:
1cca0 20 27 20 2e 20 24 69 6e 69 50 61 74 68 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6e 69 4d 65 73 73 .'...$iniPath;.}.else.{.$iniMess
1ccc0 61 67 65 20 3d 20 50 48 50 5f 45 4f 4c 2e 50 48 50 5f 45 4f 4c 2e 27 41 20 70 68 70 2e 69 6e 69 age.=.PHP_EOL.PHP_EOL.'A.php.ini
1cce0 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 20 59 6f 75 20 77 69 6c 6c 20 68 .file.does.not.exist..You.will.h
1cd00 61 76 65 20 74 6f 20 63 72 65 61 74 65 20 6f 6e 65 2e 27 3b 0a 7d 0a 24 69 6e 69 4d 65 73 73 61 ave.to.create.one.';.}.$iniMessa
1cd20 67 65 20 2e 3d 20 50 48 50 5f 45 4f 4c 2e 27 49 66 20 79 6f 75 20 63 61 6e 20 6e 6f 74 20 6d 6f ge..=.PHP_EOL.'If.you.can.not.mo
1cd40 64 69 66 79 20 74 68 65 20 69 6e 69 20 66 69 6c 65 2c 20 79 6f 75 20 63 61 6e 20 61 6c 73 6f 20 dify.the.ini.file,.you.can.also.
1cd60 72 75 6e 20 60 70 68 70 20 2d 64 20 6f 70 74 69 6f 6e 3d 76 61 6c 75 65 60 20 74 6f 20 6d 6f 64 run.`php.-d.option=value`.to.mod
1cd80 69 66 79 20 69 6e 69 20 76 61 6c 75 65 73 20 6f 6e 20 74 68 65 20 66 6c 79 2e 20 59 6f 75 20 63 ify.ini.values.on.the.fly..You.c
1cda0 61 6e 20 75 73 65 20 2d 64 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 2e 27 3b 0a 0a 69 66 20 an.use.-d.multiple.times.';..if.
1cdc0 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 6a 73 6f 6e 5f 64 65 63 6f 64 65 27 29 (!function_exists('json_decode')
1cde0 29 20 7b 0a 24 65 72 72 6f 72 73 5b 27 6a 73 6f 6e 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 ).{.$errors['json'].=.true;.}..i
1ce00 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 50 68 61 72 27 29 29 20 7b 0a f.(!extension_loaded('Phar')).{.
1ce20 24 65 72 72 6f 72 73 5b 27 70 68 61 72 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 $errors['phar'].=.true;.}..if.(!
1ce40 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 66 69 6c 74 65 72 27 29 29 20 7b 0a 24 65 extension_loaded('filter')).{.$e
1ce60 72 72 6f 72 73 5b 27 66 69 6c 74 65 72 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 rrors['filter'].=.true;.}..if.(!
1ce80 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 68 61 73 68 27 29 29 20 7b 0a 24 65 72 72 extension_loaded('hash')).{.$err
1cea0 6f 72 73 5b 27 68 61 73 68 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 65 78 74 65 ors['hash'].=.true;.}..if.(!exte
1cec0 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 69 63 6f 6e 76 27 29 20 26 26 20 21 65 78 74 65 6e 73 nsion_loaded('iconv').&&.!extens
1cee0 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6d 62 73 74 72 69 6e 67 27 29 29 20 7b 0a 24 65 72 72 6f 72 ion_loaded('mbstring')).{.$error
1cf00 73 5b 27 69 63 6f 6e 76 5f 6d 62 73 74 72 69 6e 67 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 s['iconv_mbstring'].=.true;.}..i
1cf20 66 20 28 21 69 6e 69 5f 67 65 74 28 27 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e 27 29 29 20 f.(!ini_get('allow_url_fopen')).
1cf40 7b 0a 24 65 72 72 6f 72 73 5b 27 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e 27 5d 20 3d 20 74 {.$errors['allow_url_fopen'].=.t
1cf60 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 69 6f rue;.}..if.(extension_loaded('io
1cf80 6e 43 75 62 65 20 4c 6f 61 64 65 72 27 29 20 26 26 20 69 6f 6e 63 75 62 65 5f 6c 6f 61 64 65 72 nCube.Loader').&&.ioncube_loader
1cfa0 5f 69 76 65 72 73 69 6f 6e 28 29 20 3c 20 34 30 30 30 39 29 20 7b 0a 24 65 72 72 6f 72 73 5b 27 _iversion().<.40009).{.$errors['
1cfc0 69 6f 6e 63 75 62 65 27 5d 20 3d 20 69 6f 6e 63 75 62 65 5f 6c 6f 61 64 65 72 5f 76 65 72 73 69 ioncube'].=.ioncube_loader_versi
1cfe0 6f 6e 28 29 3b 0a 7d 0a 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 on();.}..if.(PHP_VERSION_ID.<.50
1d000 33 30 32 29 20 7b 0a 24 65 72 72 6f 72 73 5b 27 70 68 70 27 5d 20 3d 20 50 48 50 5f 56 45 52 53 302).{.$errors['php'].=.PHP_VERS
1d020 49 4f 4e 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 65 72 72 6f 72 73 5b 27 70 68 70 27 ION;.}..if.(!isset($errors['php'
1d040 5d 29 20 26 26 20 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 33 30 34 29 20 7b 0a ]).&&.PHP_VERSION_ID.<.50304).{.
1d060 24 77 61 72 6e 69 6e 67 73 5b 27 70 68 70 27 5d 20 3d 20 50 48 50 5f 56 45 52 53 49 4f 4e 3b 0a $warnings['php'].=.PHP_VERSION;.
1d080 7d 0a 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 }..if.(!extension_loaded('openss
1d0a0 6c 27 29 29 20 7b 0a 24 65 72 72 6f 72 73 5b 27 6f 70 65 6e 73 73 6c 27 5d 20 3d 20 74 72 75 65 l')).{.$errors['openssl'].=.true
1d0c0 3b 0a 7d 0a 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 ;.}..if.(extension_loaded('opens
1d0e0 73 6c 27 29 20 26 26 20 4f 50 45 4e 53 53 4c 5f 56 45 52 53 49 4f 4e 5f 4e 55 4d 42 45 52 20 3c sl').&&.OPENSSL_VERSION_NUMBER.<
1d100 20 30 78 31 30 30 30 31 30 30 66 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 27 6f 70 65 6e 73 73 .0x1000100f).{.$warnings['openss
1d120 6c 5f 76 65 72 73 69 6f 6e 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 64 65 66 69 l_version'].=.true;.}..if.(!defi
1d140 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 20 26 26 20 21 65 78 74 65 6e 73 69 6f ned('HHVM_VERSION').&&.!extensio
1d160 6e 5f 6c 6f 61 64 65 64 28 27 61 70 63 75 27 29 20 26 26 20 69 6e 69 5f 67 65 74 28 27 61 70 63 n_loaded('apcu').&&.ini_get('apc
1d180 2e 65 6e 61 62 6c 65 5f 63 6c 69 27 29 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 27 61 70 63 5f .enable_cli')).{.$warnings['apc_
1d1a0 63 6c 69 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 6f 62 5f 73 74 61 72 74 28 29 3b 0a 70 68 70 cli'].=.true;.}..ob_start();.php
1d1c0 69 6e 66 6f 28 49 4e 46 4f 5f 47 45 4e 45 52 41 4c 29 3b 0a 24 70 68 70 69 6e 66 6f 20 3d 20 6f info(INFO_GENERAL);.$phpinfo.=.o
1d1e0 62 5f 67 65 74 5f 63 6c 65 61 6e 28 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b b_get_clean();.if.(preg_match('{
1d200 43 6f 6e 66 69 67 75 72 65 20 43 6f 6d 6d 61 6e 64 28 3f 3a 20 2a 3c 2f 74 64 3e 3c 74 64 20 63 Configure.Command(?:.*</td><td.c
1d220 6c 61 73 73 3d 22 76 22 3e 7c 20 2a 3d 3e 20 2a 29 28 2e 2a 3f 29 28 3f 3a 3c 2f 74 64 3e 7c 24 lass="v">|.*=>.*)(.*?)(?:</td>|$
1d240 29 7d 6d 27 2c 20 24 70 68 70 69 6e 66 6f 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 6f 6e 66 )}m',.$phpinfo,.$match)).{.$conf
1d260 69 67 75 72 65 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d igure.=.$match[1];..if.(false.!=
1d280 3d 20 73 74 72 70 6f 73 28 24 63 6f 6e 66 69 67 75 72 65 2c 20 27 2d 2d 65 6e 61 62 6c 65 2d 73 =.strpos($configure,.'--enable-s
1d2a0 69 67 63 68 69 6c 64 27 29 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 27 73 69 67 63 68 69 6c 64 igchild')).{.$warnings['sigchild
1d2c0 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 '].=.true;.}..if.(false.!==.strp
1d2e0 6f 73 28 24 63 6f 6e 66 69 67 75 72 65 2c 20 27 2d 2d 77 69 74 68 2d 63 75 72 6c 77 72 61 70 70 os($configure,.'--with-curlwrapp
1d300 65 72 73 27 29 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 27 63 75 72 6c 77 72 61 70 70 65 72 73 ers')).{.$warnings['curlwrappers
1d320 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 6e 69 5f 67 65 74 28 27 78 64 65 '].=.true;.}.}..if.(ini_get('xde
1d340 62 75 67 2e 70 72 6f 66 69 6c 65 72 5f 65 6e 61 62 6c 65 64 27 29 29 20 7b 0a 24 77 61 72 6e 69 bug.profiler_enabled')).{.$warni
1d360 6e 67 73 5b 27 78 64 65 62 75 67 5f 70 72 6f 66 69 6c 65 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 20 ngs['xdebug_profile'].=.true;.}.
1d380 65 6c 73 65 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 78 64 65 62 75 67 elseif.(extension_loaded('xdebug
1d3a0 27 29 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 27 78 64 65 62 75 67 5f 6c 6f 61 64 65 64 27 5d ')).{.$warnings['xdebug_loaded']
1d3c0 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 65 72 72 6f 72 73 29 29 .=.true;.}..if.(!empty($errors))
1d3e0 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 65 72 72 6f 72 73 20 61 73 20 24 65 72 72 6f 72 20 3d 3e .{.foreach.($errors.as.$error.=>
1d400 20 24 63 75 72 72 65 6e 74 29 20 7b 0a 73 77 69 74 63 68 20 28 24 65 72 72 6f 72 29 20 7b 0a 63 .$current).{.switch.($error).{.c
1d420 61 73 65 20 27 6a 73 6f 6e 27 3a 0a 24 74 65 78 74 20 3d 20 50 48 50 5f 45 4f 4c 2e 22 54 68 65 ase.'json':.$text.=.PHP_EOL."The
1d440 20 6a 73 6f 6e 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2e 22 2e 50 48 50 .json.extension.is.missing.".PHP
1d460 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 49 6e 73 74 61 6c 6c 20 69 74 20 6f 72 20 72 65 _EOL;.$text..=."Install.it.or.re
1d480 63 6f 6d 70 69 6c 65 20 70 68 70 20 77 69 74 68 6f 75 74 20 2d 2d 64 69 73 61 62 6c 65 2d 6a 73 compile.php.without.--disable-js
1d4a0 6f 6e 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 70 68 61 72 27 3a 0a 24 74 65 78 74 20 on";.break;..case.'phar':.$text.
1d4c0 3d 20 50 48 50 5f 45 4f 4c 2e 22 54 68 65 20 70 68 61 72 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 =.PHP_EOL."The.phar.extension.is
1d4e0 20 6d 69 73 73 69 6e 67 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 49 6e .missing.".PHP_EOL;.$text..=."In
1d500 73 74 61 6c 6c 20 69 74 20 6f 72 20 72 65 63 6f 6d 70 69 6c 65 20 70 68 70 20 77 69 74 68 6f 75 stall.it.or.recompile.php.withou
1d520 74 20 2d 2d 64 69 73 61 62 6c 65 2d 70 68 61 72 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 t.--disable-phar";.break;..case.
1d540 27 66 69 6c 74 65 72 27 3a 0a 24 74 65 78 74 20 3d 20 50 48 50 5f 45 4f 4c 2e 22 54 68 65 20 66 'filter':.$text.=.PHP_EOL."The.f
1d560 69 6c 74 65 72 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2e 22 2e 50 48 50 ilter.extension.is.missing.".PHP
1d580 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 49 6e 73 74 61 6c 6c 20 69 74 20 6f 72 20 72 65 _EOL;.$text..=."Install.it.or.re
1d5a0 63 6f 6d 70 69 6c 65 20 70 68 70 20 77 69 74 68 6f 75 74 20 2d 2d 64 69 73 61 62 6c 65 2d 66 69 compile.php.without.--disable-fi
1d5c0 6c 74 65 72 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 68 61 73 68 27 3a 0a 24 74 65 78 lter";.break;..case.'hash':.$tex
1d5e0 74 20 3d 20 50 48 50 5f 45 4f 4c 2e 22 54 68 65 20 68 61 73 68 20 65 78 74 65 6e 73 69 6f 6e 20 t.=.PHP_EOL."The.hash.extension.
1d600 69 73 20 6d 69 73 73 69 6e 67 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 is.missing.".PHP_EOL;.$text..=."
1d620 49 6e 73 74 61 6c 6c 20 69 74 20 6f 72 20 72 65 63 6f 6d 70 69 6c 65 20 70 68 70 20 77 69 74 68 Install.it.or.recompile.php.with
1d640 6f 75 74 20 2d 2d 64 69 73 61 62 6c 65 2d 68 61 73 68 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 out.--disable-hash";.break;..cas
1d660 65 20 27 69 63 6f 6e 76 5f 6d 62 73 74 72 69 6e 67 27 3a 0a 24 74 65 78 74 20 3d 20 50 48 50 5f e.'iconv_mbstring':.$text.=.PHP_
1d680 45 4f 4c 2e 22 54 68 65 20 69 63 6f 6e 76 20 4f 52 20 6d 62 73 74 72 69 6e 67 20 65 78 74 65 6e EOL."The.iconv.OR.mbstring.exten
1d6a0 73 69 6f 6e 20 69 73 20 72 65 71 75 69 72 65 64 20 61 6e 64 20 62 6f 74 68 20 61 72 65 20 6d 69 sion.is.required.and.both.are.mi
1d6c0 73 73 69 6e 67 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 49 6e 73 74 61 ssing.".PHP_EOL;.$text..=."Insta
1d6e0 6c 6c 20 65 69 74 68 65 72 20 6f 66 20 74 68 65 6d 20 6f 72 20 72 65 63 6f 6d 70 69 6c 65 20 70 ll.either.of.them.or.recompile.p
1d700 68 70 20 77 69 74 68 6f 75 74 20 2d 2d 64 69 73 61 62 6c 65 2d 69 63 6f 6e 76 22 3b 0a 62 72 65 hp.without.--disable-iconv";.bre
1d720 61 6b 3b 0a 0a 63 61 73 65 20 27 75 6e 69 63 6f 64 65 27 3a 0a 24 74 65 78 74 20 3d 20 50 48 50 ak;..case.'unicode':.$text.=.PHP
1d740 5f 45 4f 4c 2e 22 54 68 65 20 64 65 74 65 63 74 5f 75 6e 69 63 6f 64 65 20 73 65 74 74 69 6e 67 _EOL."The.detect_unicode.setting
1d760 20 6d 75 73 74 20 62 65 20 64 69 73 61 62 6c 65 64 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 .must.be.disabled.".PHP_EOL;.$te
1d780 78 74 20 2e 3d 20 22 41 64 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 6f 20 74 68 65 20 xt..=."Add.the.following.to.the.
1d7a0 65 6e 64 20 6f 66 20 79 6f 75 72 20 60 70 68 70 2e 69 6e 69 60 3a 22 2e 50 48 50 5f 45 4f 4c 3b end.of.your.`php.ini`:".PHP_EOL;
1d7c0 0a 24 74 65 78 74 20 2e 3d 20 22 20 20 20 20 64 65 74 65 63 74 5f 75 6e 69 63 6f 64 65 20 3d 20 .$text..=."....detect_unicode.=.
1d7e0 4f 66 66 22 3b 0a 24 64 69 73 70 6c 61 79 49 6e 69 4d 65 73 73 61 67 65 20 3d 20 74 72 75 65 3b Off";.$displayIniMessage.=.true;
1d800 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 73 75 68 6f 73 69 6e 27 3a 0a 24 74 65 78 74 20 3d .break;..case.'suhosin':.$text.=
1d820 20 50 48 50 5f 45 4f 4c 2e 22 54 68 65 20 73 75 68 6f 73 69 6e 2e 65 78 65 63 75 74 6f 72 2e 69 .PHP_EOL."The.suhosin.executor.i
1d840 6e 63 6c 75 64 65 2e 77 68 69 74 65 6c 69 73 74 20 73 65 74 74 69 6e 67 20 69 73 20 69 6e 63 6f nclude.whitelist.setting.is.inco
1d860 72 72 65 63 74 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 41 64 64 20 74 rrect.".PHP_EOL;.$text..=."Add.t
1d880 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 6f 20 74 68 65 20 65 6e 64 20 6f 66 20 79 6f 75 72 20 he.following.to.the.end.of.your.
1d8a0 60 70 68 70 2e 69 6e 69 60 20 6f 72 20 73 75 68 6f 73 69 6e 2e 69 6e 69 20 28 45 78 61 6d 70 6c `php.ini`.or.suhosin.ini.(Exampl
1d8c0 65 20 70 61 74 68 20 5b 66 6f 72 20 44 65 62 69 61 6e 5d 3a 20 2f 65 74 63 2f 70 68 70 35 2f 63 e.path.[for.Debian]:./etc/php5/c
1d8e0 6c 69 2f 63 6f 6e 66 2e 64 2f 73 75 68 6f 73 69 6e 2e 69 6e 69 29 3a 22 2e 50 48 50 5f 45 4f 4c li/conf.d/suhosin.ini):".PHP_EOL
1d900 3b 0a 24 74 65 78 74 20 2e 3d 20 22 20 20 20 20 73 75 68 6f 73 69 6e 2e 65 78 65 63 75 74 6f 72 ;.$text..=."....suhosin.executor
1d920 2e 69 6e 63 6c 75 64 65 2e 77 68 69 74 65 6c 69 73 74 20 3d 20 70 68 61 72 20 22 2e 24 63 75 72 .include.whitelist.=.phar.".$cur
1d940 72 65 6e 74 3b 0a 24 64 69 73 70 6c 61 79 49 6e 69 4d 65 73 73 61 67 65 20 3d 20 74 72 75 65 3b rent;.$displayIniMessage.=.true;
1d960 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 70 68 70 27 3a 0a 24 74 65 78 74 20 3d 20 50 48 50 .break;..case.'php':.$text.=.PHP
1d980 5f 45 4f 4c 2e 22 59 6f 75 72 20 50 48 50 20 28 7b 24 63 75 72 72 65 6e 74 7d 29 20 69 73 20 74 _EOL."Your.PHP.({$current}).is.t
1d9a0 6f 6f 20 6f 6c 64 2c 20 79 6f 75 20 6d 75 73 74 20 75 70 67 72 61 64 65 20 74 6f 20 50 48 50 20 oo.old,.you.must.upgrade.to.PHP.
1d9c0 35 2e 33 2e 32 20 6f 72 20 68 69 67 68 65 72 2e 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 5.3.2.or.higher.";.break;..case.
1d9e0 27 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e 27 3a 0a 24 74 65 78 74 20 3d 20 50 48 50 5f 45 'allow_url_fopen':.$text.=.PHP_E
1da00 4f 4c 2e 22 54 68 65 20 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e 20 73 65 74 74 69 6e 67 20 OL."The.allow_url_fopen.setting.
1da20 69 73 20 69 6e 63 6f 72 72 65 63 74 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d is.incorrect.".PHP_EOL;.$text..=
1da40 20 22 41 64 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 6f 20 74 68 65 20 65 6e 64 20 6f ."Add.the.following.to.the.end.o
1da60 66 20 79 6f 75 72 20 60 70 68 70 2e 69 6e 69 60 3a 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 f.your.`php.ini`:".PHP_EOL;.$tex
1da80 74 20 2e 3d 20 22 20 20 20 20 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e 20 3d 20 4f 6e 22 3b t..=."....allow_url_fopen.=.On";
1daa0 0a 24 64 69 73 70 6c 61 79 49 6e 69 4d 65 73 73 61 67 65 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 .$displayIniMessage.=.true;.brea
1dac0 6b 3b 0a 0a 63 61 73 65 20 27 69 6f 6e 63 75 62 65 27 3a 0a 24 74 65 78 74 20 3d 20 50 48 50 5f k;..case.'ioncube':.$text.=.PHP_
1dae0 45 4f 4c 2e 22 59 6f 75 72 20 69 6f 6e 43 75 62 65 20 4c 6f 61 64 65 72 20 65 78 74 65 6e 73 69 EOL."Your.ionCube.Loader.extensi
1db00 6f 6e 20 28 24 63 75 72 72 65 6e 74 29 20 69 73 20 69 6e 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 on.($current).is.incompatible.wi
1db20 74 68 20 50 68 61 72 20 66 69 6c 65 73 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e th.Phar.files.".PHP_EOL;.$text..
1db40 3d 20 22 55 70 67 72 61 64 65 20 74 6f 20 69 6f 6e 43 75 62 65 20 34 2e 30 2e 39 20 6f 72 20 68 =."Upgrade.to.ionCube.4.0.9.or.h
1db60 69 67 68 65 72 20 6f 72 20 72 65 6d 6f 76 65 20 74 68 69 73 20 6c 69 6e 65 20 28 70 61 74 68 20 igher.or.remove.this.line.(path.
1db80 6d 61 79 20 62 65 20 64 69 66 66 65 72 65 6e 74 29 20 66 72 6f 6d 20 79 6f 75 72 20 60 70 68 70 may.be.different).from.your.`php
1dba0 2e 69 6e 69 60 20 74 6f 20 64 69 73 61 62 6c 65 20 69 74 3a 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 .ini`.to.disable.it:".PHP_EOL;.$
1dbc0 74 65 78 74 20 2e 3d 20 22 20 20 20 20 7a 65 6e 64 5f 65 78 74 65 6e 73 69 6f 6e 20 3d 20 2f 75 text..=."....zend_extension.=./u
1dbe0 73 72 2f 6c 69 62 2f 70 68 70 35 2f 32 30 30 39 30 36 32 36 2b 6c 66 73 2f 69 6f 6e 63 75 62 65 sr/lib/php5/20090626+lfs/ioncube
1dc00 5f 6c 6f 61 64 65 72 5f 6c 69 6e 5f 35 2e 33 2e 73 6f 22 3b 0a 24 64 69 73 70 6c 61 79 49 6e 69 _loader_lin_5.3.so";.$displayIni
1dc20 4d 65 73 73 61 67 65 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 6f 70 Message.=.true;.break;..case.'op
1dc40 65 6e 73 73 6c 27 3a 0a 24 74 65 78 74 20 3d 20 50 48 50 5f 45 4f 4c 2e 22 54 68 65 20 6f 70 65 enssl':.$text.=.PHP_EOL."The.ope
1dc60 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2c 20 77 68 69 63 68 nssl.extension.is.missing,.which
1dc80 20 6d 65 61 6e 73 20 74 68 61 74 20 73 65 63 75 72 65 20 48 54 54 50 53 20 74 72 61 6e 73 66 65 .means.that.secure.HTTPS.transfe
1dca0 72 73 20 61 72 65 20 69 6d 70 6f 73 73 69 62 6c 65 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 rs.are.impossible.".PHP_EOL;.$te
1dcc0 78 74 20 2e 3d 20 22 49 66 20 70 6f 73 73 69 62 6c 65 20 79 6f 75 20 73 68 6f 75 6c 64 20 65 6e xt..=."If.possible.you.should.en
1dce0 61 62 6c 65 20 69 74 20 6f 72 20 72 65 63 6f 6d 70 69 6c 65 20 70 68 70 20 77 69 74 68 20 2d 2d able.it.or.recompile.php.with.--
1dd00 77 69 74 68 2d 6f 70 65 6e 73 73 6c 22 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 24 6f 75 74 28 24 74 65 with-openssl";.break;.}.$out($te
1dd20 78 74 2c 20 27 65 72 72 6f 72 27 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 20 2e 3d 20 50 48 50 5f xt,.'error');.}..$output..=.PHP_
1dd40 45 4f 4c 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 77 61 72 6e 69 6e 67 73 29 29 20 7b EOL;.}..if.(!empty($warnings)).{
1dd60 0a 66 6f 72 65 61 63 68 20 28 24 77 61 72 6e 69 6e 67 73 20 61 73 20 24 77 61 72 6e 69 6e 67 20 .foreach.($warnings.as.$warning.
1dd80 3d 3e 20 24 63 75 72 72 65 6e 74 29 20 7b 0a 73 77 69 74 63 68 20 28 24 77 61 72 6e 69 6e 67 29 =>.$current).{.switch.($warning)
1dda0 20 7b 0a 63 61 73 65 20 27 61 70 63 5f 63 6c 69 27 3a 0a 24 74 65 78 74 20 3d 20 22 54 68 65 20 .{.case.'apc_cli':.$text.=."The.
1ddc0 61 70 63 2e 65 6e 61 62 6c 65 5f 63 6c 69 20 73 65 74 74 69 6e 67 20 69 73 20 69 6e 63 6f 72 72 apc.enable_cli.setting.is.incorr
1dde0 65 63 74 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 41 64 64 20 74 68 65 ect.".PHP_EOL;.$text..=."Add.the
1de00 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 6f 20 74 68 65 20 65 6e 64 20 6f 66 20 79 6f 75 72 20 60 70 .following.to.the.end.of.your.`p
1de20 68 70 2e 69 6e 69 60 3a 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 20 20 61 hp.ini`:".PHP_EOL;.$text..=."..a
1de40 70 63 2e 65 6e 61 62 6c 65 5f 63 6c 69 20 3d 20 4f 66 66 22 3b 0a 24 64 69 73 70 6c 61 79 49 6e pc.enable_cli.=.Off";.$displayIn
1de60 69 4d 65 73 73 61 67 65 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 73 iMessage.=.true;.break;..case.'s
1de80 69 67 63 68 69 6c 64 27 3a 0a 24 74 65 78 74 20 3d 20 22 50 48 50 20 77 61 73 20 63 6f 6d 70 69 igchild':.$text.=."PHP.was.compi
1dea0 6c 65 64 20 77 69 74 68 20 2d 2d 65 6e 61 62 6c 65 2d 73 69 67 63 68 69 6c 64 20 77 68 69 63 68 led.with.--enable-sigchild.which
1dec0 20 63 61 6e 20 63 61 75 73 65 20 69 73 73 75 65 73 20 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f .can.cause.issues.on.some.platfo
1dee0 72 6d 73 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 52 65 63 6f 6d 70 69 rms.".PHP_EOL;.$text..=."Recompi
1df00 6c 65 20 69 74 20 77 69 74 68 6f 75 74 20 74 68 69 73 20 66 6c 61 67 20 69 66 20 70 6f 73 73 69 le.it.without.this.flag.if.possi
1df20 62 6c 65 2c 20 73 65 65 20 61 6c 73 6f 3a 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e ble,.see.also:".PHP_EOL;.$text..
1df40 3d 20 22 20 20 68 74 74 70 73 3a 2f 2f 62 75 67 73 2e 70 68 70 2e 6e 65 74 2f 62 75 67 2e 70 68 =."..https://bugs.php.net/bug.ph
1df60 70 3f 69 64 3d 32 32 39 39 39 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 63 75 72 6c 77 p?id=22999";.break;..case.'curlw
1df80 72 61 70 70 65 72 73 27 3a 0a 24 74 65 78 74 20 3d 20 22 50 48 50 20 77 61 73 20 63 6f 6d 70 69 rappers':.$text.=."PHP.was.compi
1dfa0 6c 65 64 20 77 69 74 68 20 2d 2d 77 69 74 68 2d 63 75 72 6c 77 72 61 70 70 65 72 73 20 77 68 69 led.with.--with-curlwrappers.whi
1dfc0 63 68 20 77 69 6c 6c 20 63 61 75 73 65 20 69 73 73 75 65 73 20 77 69 74 68 20 48 54 54 50 20 61 ch.will.cause.issues.with.HTTP.a
1dfe0 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 20 61 6e 64 20 47 69 74 48 75 62 2e 22 2e 50 48 50 5f 45 uthentication.and.GitHub.".PHP_E
1e000 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 20 52 65 63 6f 6d 70 69 6c 65 20 69 74 20 77 69 74 68 OL;.$text..=.".Recompile.it.with
1e020 6f 75 74 20 74 68 69 73 20 66 6c 61 67 20 69 66 20 70 6f 73 73 69 62 6c 65 22 3b 0a 62 72 65 61 out.this.flag.if.possible";.brea
1e040 6b 3b 0a 0a 63 61 73 65 20 27 70 68 70 27 3a 0a 24 74 65 78 74 20 3d 20 22 59 6f 75 72 20 50 48 k;..case.'php':.$text.=."Your.PH
1e060 50 20 28 7b 24 63 75 72 72 65 6e 74 7d 29 20 69 73 20 71 75 69 74 65 20 6f 6c 64 2c 20 75 70 67 P.({$current}).is.quite.old,.upg
1e080 72 61 64 69 6e 67 20 74 6f 20 50 48 50 20 35 2e 33 2e 34 20 6f 72 20 68 69 67 68 65 72 20 69 73 rading.to.PHP.5.3.4.or.higher.is
1e0a0 20 72 65 63 6f 6d 6d 65 6e 64 65 64 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d .recommended.".PHP_EOL;.$text..=
1e0c0 20 22 20 43 6f 6d 70 6f 73 65 72 20 77 6f 72 6b 73 20 77 69 74 68 20 35 2e 33 2e 32 2b 20 66 6f .".Composer.works.with.5.3.2+.fo
1e0e0 72 20 6d 6f 73 74 20 70 65 6f 70 6c 65 2c 20 62 75 74 20 74 68 65 72 65 20 6d 69 67 68 74 20 62 r.most.people,.but.there.might.b
1e100 65 20 65 64 67 65 20 63 61 73 65 20 69 73 73 75 65 73 2e 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 e.edge.case.issues.";.break;..ca
1e120 73 65 20 27 6f 70 65 6e 73 73 6c 5f 76 65 72 73 69 6f 6e 27 3a 0a 0a 20 24 6f 70 65 6e 73 73 6c se.'openssl_version':...$openssl
1e140 56 65 72 73 69 6f 6e 20 3d 20 73 74 72 73 74 72 28 74 72 69 6d 28 73 74 72 73 74 72 28 4f 50 45 Version.=.strstr(trim(strstr(OPE
1e160 4e 53 53 4c 5f 56 45 52 53 49 4f 4e 5f 54 45 58 54 2c 20 27 20 27 29 29 2c 20 27 20 27 2c 20 74 NSSL_VERSION_TEXT,.'.')),.'.',.t
1e180 72 75 65 29 3b 0a 24 6f 70 65 6e 73 73 6c 56 65 72 73 69 6f 6e 20 3d 20 24 6f 70 65 6e 73 73 6c rue);.$opensslVersion.=.$openssl
1e1a0 56 65 72 73 69 6f 6e 20 3f 3a 20 4f 50 45 4e 53 53 4c 5f 56 45 52 53 49 4f 4e 5f 54 45 58 54 3b Version.?:.OPENSSL_VERSION_TEXT;
1e1c0 0a 0a 24 74 65 78 74 20 3d 20 22 54 68 65 20 4f 70 65 6e 53 53 4c 20 6c 69 62 72 61 72 79 20 28 ..$text.=."The.OpenSSL.library.(
1e1e0 7b 24 6f 70 65 6e 73 73 6c 56 65 72 73 69 6f 6e 7d 29 20 75 73 65 64 20 62 79 20 50 48 50 20 64 {$opensslVersion}).used.by.PHP.d
1e200 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 54 4c 53 76 31 2e 32 20 6f 72 20 54 4c 53 76 31 oes.not.support.TLSv1.2.or.TLSv1
1e220 2e 31 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 49 66 20 70 6f 73 73 69 .1.".PHP_EOL;.$text..=."If.possi
1e240 62 6c 65 20 79 6f 75 20 73 68 6f 75 6c 64 20 75 70 67 72 61 64 65 20 4f 70 65 6e 53 53 4c 20 74 ble.you.should.upgrade.OpenSSL.t
1e260 6f 20 76 65 72 73 69 6f 6e 20 31 2e 30 2e 31 20 6f 72 20 61 62 6f 76 65 2e 22 3b 0a 62 72 65 61 o.version.1.0.1.or.above.";.brea
1e280 6b 3b 0a 0a 63 61 73 65 20 27 78 64 65 62 75 67 5f 6c 6f 61 64 65 64 27 3a 0a 24 74 65 78 74 20 k;..case.'xdebug_loaded':.$text.
1e2a0 3d 20 22 54 68 65 20 78 64 65 62 75 67 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6c 6f 61 64 65 =."The.xdebug.extension.is.loade
1e2c0 64 2c 20 74 68 69 73 20 63 61 6e 20 73 6c 6f 77 20 64 6f 77 6e 20 43 6f 6d 70 6f 73 65 72 20 61 d,.this.can.slow.down.Composer.a
1e2e0 20 6c 69 74 74 6c 65 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 20 44 69 .little.".PHP_EOL;.$text..=.".Di
1e300 73 61 62 6c 69 6e 67 20 69 74 20 77 68 65 6e 20 75 73 69 6e 67 20 43 6f 6d 70 6f 73 65 72 20 69 sabling.it.when.using.Composer.i
1e320 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 2e 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 78 s.recommended.";.break;..case.'x
1e340 64 65 62 75 67 5f 70 72 6f 66 69 6c 65 27 3a 0a 24 74 65 78 74 20 3d 20 22 54 68 65 20 78 64 65 debug_profile':.$text.=."The.xde
1e360 62 75 67 2e 70 72 6f 66 69 6c 65 72 5f 65 6e 61 62 6c 65 64 20 73 65 74 74 69 6e 67 20 69 73 20 bug.profiler_enabled.setting.is.
1e380 65 6e 61 62 6c 65 64 2c 20 74 68 69 73 20 63 61 6e 20 73 6c 6f 77 20 64 6f 77 6e 20 43 6f 6d 70 enabled,.this.can.slow.down.Comp
1e3a0 6f 73 65 72 20 61 20 6c 6f 74 2e 22 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 oser.a.lot.".PHP_EOL;.$text..=."
1e3c0 41 64 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 6f 20 74 68 65 20 65 6e 64 20 6f 66 20 Add.the.following.to.the.end.of.
1e3e0 79 6f 75 72 20 60 70 68 70 2e 69 6e 69 60 20 74 6f 20 64 69 73 61 62 6c 65 20 69 74 3a 22 2e 50 your.`php.ini`.to.disable.it:".P
1e400 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 20 20 78 64 65 62 75 67 2e 70 72 6f 66 69 HP_EOL;.$text..=."..xdebug.profi
1e420 6c 65 72 5f 65 6e 61 62 6c 65 64 20 3d 20 30 22 3b 0a 24 64 69 73 70 6c 61 79 49 6e 69 4d 65 73 ler_enabled.=.0";.$displayIniMes
1e440 73 61 67 65 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 24 6f 75 74 28 24 74 65 78 74 sage.=.true;.break;.}.$out($text
1e460 2c 20 27 63 6f 6d 6d 65 6e 74 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 64 69 73 70 6c 61 79 49 ,.'comment');.}.}..if.($displayI
1e480 6e 69 4d 65 73 73 61 67 65 29 20 7b 0a 24 6f 75 74 28 24 69 6e 69 4d 65 73 73 61 67 65 2c 20 27 niMessage).{.$out($iniMessage,.'
1e4a0 63 6f 6d 6d 65 6e 74 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 21 24 77 61 72 6e 69 6e 67 73 20 comment');.}..return.!$warnings.
1e4c0 26 26 20 21 24 65 72 72 6f 72 73 20 3f 20 74 72 75 65 20 3a 20 24 6f 75 74 70 75 74 3b 0a 7d 0a &&.!$errors.?.true.:.$output;.}.
1e4e0 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d }.<?php............namespace.Com
1e500 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 poser\Command;..use.Composer\Plu
1e520 67 69 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 gin\CommandEvent;.use.Composer\P
1e540 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c lugin\PluginEvents;.use.Symfony\
1e560 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 Component\Console\Input\InputInt
1e580 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f erface;.use.Symfony\Component\Co
1e5a0 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d nsole\Input\InputOption;.use.Sym
1e5c0 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 fony\Component\Console\Output\Ou
1e5e0 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 75 6d 70 41 75 74 tputInterface;.....class.DumpAut
1e600 6f 6c 6f 61 64 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 oloadCommand.extends.BaseCommand
1e620 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 .{.protected.function.configure(
1e640 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 64 75 6d 70 2d 61 75 74 6f 6c 6f ).{.$this.->setName('dump-autolo
1e660 61 64 27 29 0a 2d 3e 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 28 27 64 75 6d 70 61 75 74 ad').->setAliases(array('dumpaut
1e680 6f 6c 6f 61 64 27 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 44 75 6d 70 73 oload')).->setDescription('Dumps
1e6a0 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f .the.autoloader').->setDefinitio
1e6c0 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 n(array(.new.InputOption('no-scr
1e6e0 69 70 74 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f ipts',.null,.InputOption::VALUE_
1e700 4e 4f 4e 45 2c 20 27 53 6b 69 70 73 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 6c NONE,.'Skips.the.execution.of.al
1e720 6c 20 73 63 72 69 70 74 73 20 64 65 66 69 6e 65 64 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 l.scripts.defined.in.composer.js
1e740 6f 6e 20 66 69 6c 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6f 70 74 on.file.'),.new.InputOption('opt
1e760 69 6d 69 7a 65 27 2c 20 27 6f 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f imize',.'o',.InputOption::VALUE_
1e780 4e 4f 4e 45 2c 20 27 4f 70 74 69 6d 69 7a 65 73 20 50 53 52 30 20 61 6e 64 20 50 53 52 34 20 70 NONE,.'Optimizes.PSR0.and.PSR4.p
1e7a0 61 63 6b 61 67 65 73 20 74 6f 20 62 65 20 6c 6f 61 64 65 64 20 77 69 74 68 20 63 6c 61 73 73 6d ackages.to.be.loaded.with.classm
1e7c0 61 70 73 20 74 6f 6f 2c 20 67 6f 6f 64 20 66 6f 72 20 70 72 6f 64 75 63 74 69 6f 6e 2e 27 29 2c aps.too,.good.for.production.'),
1e7e0 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f .new.InputOption('classmap-autho
1e800 72 69 74 61 74 69 76 65 27 2c 20 27 61 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c ritative',.'a',.InputOption::VAL
1e820 55 45 5f 4e 4f 4e 45 2c 20 27 41 75 74 6f 6c 6f 61 64 20 63 6c 61 73 73 65 73 20 66 72 6f 6d 20 UE_NONE,.'Autoload.classes.from.
1e840 74 68 65 20 63 6c 61 73 73 6d 61 70 20 6f 6e 6c 79 2e 20 49 6d 70 6c 69 63 69 74 6c 79 20 65 6e the.classmap.only..Implicitly.en
1e860 61 62 6c 65 73 20 60 2d 2d 6f 70 74 69 6d 69 7a 65 60 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 ables.`--optimize`.'),.new.Input
1e880 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 Option('no-dev',.null,.InputOpti
1e8a0 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 61 75 74 6f 6c 6f on::VALUE_NONE,.'Disables.autolo
1e8c0 61 64 2d 64 65 76 20 72 75 6c 65 73 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c ad-dev.rules.'),.)).->setHelp(<<
1e8e0 3c 45 4f 54 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 64 75 6d <EOT.<info>php.composer.phar.dum
1e900 70 2d 61 75 74 6f 6c 6f 61 64 3c 2f 69 6e 66 6f 3e 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f p-autoload</info>.EOT.).;.}..pro
1e920 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 tected.function.execute(InputInt
1e940 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 erface.$input,.OutputInterface.$
1e960 6f 75 74 70 75 74 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 output).{.$composer.=.$this->get
1e980 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 Composer();..$commandEvent.=.new
1e9a0 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d .CommandEvent(PluginEvents::COMM
1e9c0 41 4e 44 2c 20 27 64 75 6d 70 2d 61 75 74 6f 6c 6f 61 64 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f AND,.'dump-autoload',.$input,.$o
1e9e0 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 utput);.$composer->getEventDispa
1ea00 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d tcher()->dispatch($commandEvent-
1ea20 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 0a 24 69 6e >getName(),.$commandEvent);..$in
1ea40 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 stallationManager.=.$composer->g
1ea60 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 3b 0a 24 6c 6f 63 61 6c 52 etInstallationManager();.$localR
1ea80 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 epo.=.$composer->getRepositoryMa
1eaa0 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 24 nager()->getLocalRepository();.$
1eac0 70 61 63 6b 61 67 65 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 package.=.$composer->getPackage(
1eae0 29 3b 0a 24 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 );.$config.=.$composer->getConfi
1eb00 67 28 29 3b 0a 0a 24 6f 70 74 69 6d 69 7a 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 g();..$optimize.=.$input->getOpt
1eb20 69 6f 6e 28 27 6f 70 74 69 6d 69 7a 65 27 29 20 7c 7c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 ion('optimize').||.$config->get(
1eb40 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 3b 0a 24 61 75 74 68 6f 72 69 'optimize-autoloader');.$authori
1eb60 74 61 74 69 76 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 63 6c 61 73 tative.=.$input->getOption('clas
1eb80 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 29 20 7c 7c 20 24 63 6f 6e 66 69 67 2d smap-authoritative').||.$config-
1eba0 3e 67 65 74 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 29 3b 0a >get('classmap-authoritative');.
1ebc0 0a 69 66 20 28 24 6f 70 74 69 6d 69 7a 65 20 7c 7c 20 24 61 75 74 68 6f 72 69 74 61 74 69 76 65 .if.($optimize.||.$authoritative
1ebe0 29 20 7b 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 ).{.$this->getIO()->writeError('
1ec00 3c 69 6e 66 6f 3e 47 65 6e 65 72 61 74 69 6e 67 20 6f 70 74 69 6d 69 7a 65 64 20 61 75 74 6f 6c <info>Generating.optimized.autol
1ec20 6f 61 64 20 66 69 6c 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 oad.files</info>');.}.else.{.$th
1ec40 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 47 is->getIO()->writeError('<info>G
1ec60 65 6e 65 72 61 74 69 6e 67 20 61 75 74 6f 6c 6f 61 64 20 66 69 6c 65 73 3c 2f 69 6e 66 6f 3e 27 enerating.autoload.files</info>'
1ec80 29 3b 0a 7d 0a 0a 24 67 65 6e 65 72 61 74 6f 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 );.}..$generator.=.$composer->ge
1eca0 74 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 28 29 3b 0a 24 67 65 6e 65 72 61 74 6f 72 tAutoloadGenerator();.$generator
1ecc0 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 ->setDevMode(!$input->getOption(
1ece0 27 6e 6f 2d 64 65 76 27 29 29 3b 0a 24 67 65 6e 65 72 61 74 6f 72 2d 3e 73 65 74 43 6c 61 73 73 'no-dev'));.$generator->setClass
1ed00 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 61 75 74 68 6f 72 69 74 61 74 69 76 65 29 MapAuthoritative($authoritative)
1ed20 3b 0a 24 67 65 6e 65 72 61 74 6f 72 2d 3e 73 65 74 52 75 6e 53 63 72 69 70 74 73 28 21 24 69 6e ;.$generator->setRunScripts(!$in
1ed40 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 29 29 3b 0a 24 put->getOption('no-scripts'));.$
1ed60 67 65 6e 65 72 61 74 6f 72 2d 3e 64 75 6d 70 28 24 63 6f 6e 66 69 67 2c 20 24 6c 6f 63 61 6c 52 generator->dump($config,.$localR
1ed80 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 epo,.$package,.$installationMana
1eda0 67 65 72 2c 20 27 63 6f 6d 70 6f 73 65 72 27 2c 20 24 6f 70 74 69 6d 69 7a 65 29 3b 0a 7d 0a 7d ger,.'composer',.$optimize);.}.}
1edc0 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
1ede0 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f oser\Command;..use.Symfony\Compo
1ee00 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 nent\Console\Input\InputInterfac
1ee20 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 e;.use.Symfony\Component\Console
1ee40 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c \Input\InputOption;.use.Symfony\
1ee60 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 Component\Console\Output\OutputI
1ee80 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c nterface;.use.Symfony\Component\
1eea0 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 0a 0a 0a Console\Input\InputArgument;....
1eec0 0a 63 6c 61 73 73 20 45 78 65 63 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 .class.ExecCommand.extends.BaseC
1eee0 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 ommand.{.protected.function.conf
1ef00 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 65 78 65 63 27 igure().{.$this.->setName('exec'
1ef20 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 45 78 65 63 75 74 65 20 61 20 76 65 ).->setDescription('Execute.a.ve
1ef40 6e 64 6f 72 65 64 20 62 69 6e 61 72 79 2f 73 63 72 69 70 74 27 29 0a 2d 3e 73 65 74 44 65 66 69 ndored.binary/script').->setDefi
1ef60 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6c nition(array(.new.InputOption('l
1ef80 69 73 74 27 2c 20 27 6c 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f ist',.'l',.InputOption::VALUE_NO
1efa0 4e 45 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 62 69 6e 61 72 79 27 2c NE),.new.InputArgument('binary',
1efc0 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 54 68 65 20 62 .InputArgument::OPTIONAL,.'The.b
1efe0 69 6e 61 72 79 20 74 6f 20 72 75 6e 2c 20 65 2e 67 2e 20 70 68 70 75 6e 69 74 27 29 2c 0a 6e 65 inary.to.run,.e.g..phpunit'),.ne
1f000 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 0a 27 61 72 67 73 27 2c 0a 49 6e 70 75 74 41 72 w.InputArgument(.'args',.InputAr
1f020 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 gument::IS_ARRAY.|.InputArgument
1f040 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 0a 27 41 72 67 75 6d 65 6e 74 73 20 74 6f 20 70 61 73 73 20 74 ::OPTIONAL,.'Arguments.to.pass.t
1f060 6f 20 74 68 65 20 62 69 6e 61 72 79 2e 20 55 73 65 20 3c 69 6e 66 6f 3e 2d 2d 3c 2f 69 6e 66 6f o.the.binary..Use.<info>--</info
1f080 3e 20 74 6f 20 73 65 70 61 72 61 74 65 20 66 72 6f 6d 20 63 6f 6d 70 6f 73 65 72 20 61 72 67 75 >.to.separate.from.composer.argu
1f0a0 6d 65 6e 74 73 27 0a 29 2c 0a 29 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 ments'.),.)).;.}..protected.func
1f0c0 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 tion.execute(InputInterface.$inp
1f0e0 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 ut,.OutputInterface.$output).{.$
1f100 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b composer.=.$this->getComposer();
1f120 0a 24 62 69 6e 44 69 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 .$binDir.=.$composer->getConfig(
1f140 29 2d 3e 67 65 74 28 27 62 69 6e 2d 64 69 72 27 29 3b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 )->get('bin-dir');.if.($input->g
1f160 65 74 4f 70 74 69 6f 6e 28 27 6c 69 73 74 27 29 20 7c 7c 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 etOption('list').||.!$input->get
1f180 41 72 67 75 6d 65 6e 74 28 27 62 69 6e 61 72 79 27 29 29 20 7b 0a 24 62 69 6e 73 20 3d 20 67 6c Argument('binary')).{.$bins.=.gl
1f1a0 6f 62 28 24 62 69 6e 44 69 72 20 2e 20 27 2f 2a 27 29 3b 0a 0a 69 66 20 28 21 24 62 69 6e 73 29 ob($binDir...'/*');..if.(!$bins)
1f1c0 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 22 .{.throw.new.\RuntimeException("
1f1e0 4e 6f 20 62 69 6e 61 72 69 65 73 20 66 6f 75 6e 64 20 69 6e 20 62 69 6e 2d 64 69 72 20 28 24 62 No.binaries.found.in.bin-dir.($b
1f200 69 6e 44 69 72 29 22 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 inDir)");.}..$this->getIO()->wri
1f220 74 65 28 3c 3c 3c 45 4f 54 0a 3c 63 6f 6d 6d 65 6e 74 3e 41 76 61 69 6c 61 62 6c 65 20 62 69 6e te(<<<EOT.<comment>Available.bin
1f240 61 72 69 65 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 45 4f 54 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 aries:</comment>.EOT.);..foreach
1f260 20 28 24 62 69 6e 73 20 61 73 20 24 62 69 6e 29 20 7b 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 .($bins.as.$bin).{...if.(isset($
1f280 70 72 65 76 69 6f 75 73 42 69 6e 29 20 26 26 20 24 62 69 6e 20 3d 3d 3d 20 24 70 72 65 76 69 6f previousBin).&&.$bin.===.$previo
1f2a0 75 73 42 69 6e 2e 27 2e 62 61 74 27 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 72 usBin.'.bat').{.continue;.}..$pr
1f2c0 65 76 69 6f 75 73 42 69 6e 20 3d 20 24 62 69 6e 3b 0a 24 62 69 6e 20 3d 20 62 61 73 65 6e 61 6d eviousBin.=.$bin;.$bin.=.basenam
1f2e0 65 28 24 62 69 6e 29 3b 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 28 3c e($bin);.$this->getIO()->write(<
1f300 3c 3c 45 4f 54 0a 3c 69 6e 66 6f 3e 2d 20 24 62 69 6e 3c 2f 69 6e 66 6f 3e 0a 45 4f 54 0a 29 3b <<EOT.<info>-.$bin</info>.EOT.);
1f320 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 62 69 6e 61 72 79 20 3d 20 24 69 6e 70 75 74 2d .}..return;.}..$binary.=.$input-
1f340 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 62 69 6e 61 72 79 27 29 3b 0a 0a 24 64 69 73 70 61 74 >getArgument('binary');..$dispat
1f360 63 68 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 cher.=.$composer->getEventDispat
1f380 63 68 65 72 28 29 3b 0a 24 64 69 73 70 61 74 63 68 65 72 2d 3e 61 64 64 4c 69 73 74 65 6e 65 72 cher();.$dispatcher->addListener
1f3a0 28 27 5f 5f 65 78 65 63 5f 63 6f 6d 6d 61 6e 64 27 2c 20 24 62 69 6e 61 72 79 29 3b 0a 69 66 20 ('__exec_command',.$binary);.if.
1f3c0 28 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 20 3d 3d 3d 20 4f 75 74 ($output->getVerbosity().===.Out
1f3e0 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 29 20 putInterface::VERBOSITY_NORMAL).
1f400 7b 0a 24 6f 75 74 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 4f 75 74 70 75 74 49 6e {.$output->setVerbosity(OutputIn
1f420 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 7d 0a 0a 72 65 terface::VERBOSITY_QUIET);.}..re
1f440 74 75 72 6e 20 24 64 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 turn.$dispatcher->dispatchScript
1f460 28 27 5f 5f 65 78 65 63 5f 63 6f 6d 6d 61 6e 64 27 2c 20 74 72 75 65 2c 20 24 69 6e 70 75 74 2d ('__exec_command',.true,.$input-
1f480 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 61 72 67 73 27 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 >getArgument('args'));.}.}.<?php
1f4a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 ............namespace.Composer\C
1f4c0 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 ommand;..use.Composer\Factory;.u
1f4e0 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 se.Symfony\Component\Console\Inp
1f500 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 ut\InputInterface;.use.Symfony\C
1f520 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 omponent\Console\Input\InputArgu
1f540 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 ment;.use.Symfony\Component\Cons
1f560 6f 6c 65 5c 49 6e 70 75 74 5c 53 74 72 69 6e 67 49 6e 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f ole\Input\StringInput;.use.Symfo
1f580 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 ny\Component\Console\Output\Outp
1f5a0 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 6c 6f 62 61 6c 43 6f 6d utInterface;.....class.GlobalCom
1f5c0 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 mand.extends.BaseCommand.{.prote
1f5e0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 cted.function.configure().{.$thi
1f600 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 67 6c 6f 62 61 6c 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 s.->setName('global').->setDescr
1f620 69 70 74 69 6f 6e 28 27 41 6c 6c 6f 77 73 20 72 75 6e 6e 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 20 iption('Allows.running.commands.
1f640 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6d 70 6f 73 65 72 20 64 69 72 20 28 24 43 4f 4d in.the.global.composer.dir.($COM
1f660 50 4f 53 45 52 5f 48 4f 4d 45 29 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 POSER_HOME).').->setDefinition(a
1f680 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 rray(.new.InputArgument('command
1f6a0 2d 6e 61 6d 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 52 45 51 55 49 52 45 44 2c -name',.InputArgument::REQUIRED,
1f6c0 20 27 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 61 72 67 73 27 2c 20 .''),.new.InputArgument('args',.
1f6e0 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 InputArgument::IS_ARRAY.|.InputA
1f700 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 rgument::OPTIONAL,.''),.)).->set
1f720 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 55 73 65 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 20 61 73 20 Help(<<<EOT.Use.this.command.as.
1f740 61 20 77 72 61 70 70 65 72 20 74 6f 20 72 75 6e 20 6f 74 68 65 72 20 43 6f 6d 70 6f 73 65 72 20 a.wrapper.to.run.other.Composer.
1f760 63 6f 6d 6d 61 6e 64 73 0a 77 69 74 68 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 74 65 commands.within.the.global.conte
1f780 78 74 20 6f 66 20 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d 45 2e 0a 0a 59 6f 75 20 63 61 6e 20 75 73 xt.of.COMPOSER_HOME...You.can.us
1f7a0 65 20 74 68 69 73 20 74 6f 20 69 6e 73 74 61 6c 6c 20 43 4c 49 20 75 74 69 6c 69 74 69 65 73 20 e.this.to.install.CLI.utilities.
1f7c0 67 6c 6f 62 61 6c 6c 79 2c 20 61 6c 6c 20 79 6f 75 20 6e 65 65 64 0a 69 73 20 74 6f 20 61 64 64 globally,.all.you.need.is.to.add
1f7e0 20 74 68 65 20 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d 45 2f 76 65 6e 64 6f 72 2f 62 69 6e 20 64 69 .the.COMPOSER_HOME/vendor/bin.di
1f800 72 20 74 6f 20 79 6f 75 72 20 50 41 54 48 20 65 6e 76 20 76 61 72 2e 0a 0a 43 4f 4d 50 4f 53 45 r.to.your.PATH.env.var...COMPOSE
1f820 52 5f 48 4f 4d 45 20 69 73 20 63 3a 5c 55 73 65 72 73 5c 3c 75 73 65 72 3e 5c 41 70 70 44 61 74 R_HOME.is.c:\Users\<user>\AppDat
1f840 61 5c 52 6f 61 6d 69 6e 67 5c 43 6f 6d 70 6f 73 65 72 20 6f 6e 20 57 69 6e 64 6f 77 73 0a 61 6e a\Roaming\Composer.on.Windows.an
1f860 64 20 2f 68 6f 6d 65 2f 3c 75 73 65 72 3e 2f 2e 63 6f 6d 70 6f 73 65 72 20 6f 6e 20 75 6e 69 78 d./home/<user>/.composer.on.unix
1f880 20 73 79 73 74 65 6d 73 2e 0a 0a 4e 6f 74 65 3a 20 54 68 69 73 20 70 61 74 68 20 6d 61 79 20 76 .systems...Note:.This.path.may.v
1f8a0 61 72 79 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 63 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 73 20 ary.depending.on.customizations.
1f8c0 74 6f 20 62 69 6e 2d 64 69 72 20 69 6e 0a 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 72 20 74 to.bin-dir.in.composer.json.or.t
1f8e0 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 76 61 72 69 61 62 6c 65 20 43 4f 4d 50 4f 53 he.environmental.variable.COMPOS
1f900 45 52 5f 42 49 4e 5f 44 49 52 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 ER_BIN_DIR...EOT.).;.}..public.f
1f920 75 6e 63 74 69 6f 6e 20 72 75 6e 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 unction.run(InputInterface.$inpu
1f940 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 0a 20 t,.OutputInterface.$output).{...
1f960 24 74 6f 6b 65 6e 73 20 3d 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 73 2b 7d 27 2c 20 24 69 $tokens.=.preg_split('{\s+}',.$i
1f980 6e 70 75 74 2d 3e 5f 5f 74 6f 53 74 72 69 6e 67 28 29 29 3b 0a 24 61 72 67 73 20 3d 20 61 72 72 nput->__toString());.$args.=.arr
1f9a0 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 6f 6b 65 6e 73 20 61 73 20 24 74 6f 6b 65 6e ay();.foreach.($tokens.as.$token
1f9c0 29 20 7b 0a 69 66 20 28 24 74 6f 6b 65 6e 20 26 26 20 24 74 6f 6b 65 6e 5b 30 5d 20 21 3d 3d 20 ).{.if.($token.&&.$token[0].!==.
1f9e0 27 2d 27 29 20 7b 0a 24 61 72 67 73 5b 5d 20 3d 20 24 74 6f 6b 65 6e 3b 0a 69 66 20 28 63 6f 75 '-').{.$args[].=.$token;.if.(cou
1fa00 6e 74 28 24 61 72 67 73 29 20 3e 3d 20 32 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a nt($args).>=.2).{.break;.}.}.}..
1fa20 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 61 72 67 73 29 20 3c 20 32 29 20 7b 0a 72 65 74 75 72 6e ..if.(count($args).<.2).{.return
1fa40 20 70 61 72 65 6e 74 3a 3a 72 75 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d .parent::run($input,.$output);.}
1fa60 0a 0a 0a 20 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 43 6f 6e ....$config.=.Factory::createCon
1fa80 66 69 67 28 29 3b 0a 63 68 64 69 72 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 fig();.chdir($config->get('home'
1faa0 29 29 3b 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 ));.$this->getIO()->writeError('
1fac0 3c 69 6e 66 6f 3e 43 68 61 6e 67 65 64 20 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 20 <info>Changed.current.directory.
1fae0 74 6f 20 27 2e 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2e 27 3c 2f 69 6e 66 to.'.$config->get('home').'</inf
1fb00 6f 3e 27 29 3b 0a 0a 0a 20 24 69 6e 70 75 74 20 3d 20 6e 65 77 20 53 74 72 69 6e 67 49 6e 70 75 o>');....$input.=.new.StringInpu
1fb20 74 28 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5c 62 67 28 3f 3a 6c 28 3f 3a 6f 28 3f 3a 62 t(preg_replace('{\bg(?:l(?:o(?:b
1fb40 28 3f 3a 61 28 3f 3a 6c 29 3f 29 3f 29 3f 29 3f 29 3f 5c 62 7d 27 2c 20 27 27 2c 20 24 69 6e 70 (?:a(?:l)?)?)?)?)?\b}',.'',.$inp
1fb60 75 74 2d 3e 5f 5f 74 6f 53 74 72 69 6e 67 28 29 2c 20 31 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 ut->__toString(),.1));..return.$
1fb80 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 2d 3e 72 75 6e 28 24 69 6e 70 this->getApplication()->run($inp
1fba0 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a ut,.$output);.}.}.<?php.........
1fbc0 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a ...namespace.Composer\Command;..
1fbe0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 use.Composer\Package\CompletePac
1fc00 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f kageInterface;.use.Composer\Repo
1fc20 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 sitory\RepositoryInterface;.use.
1fc40 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 41 72 72 61 79 52 65 70 6f 73 69 74 Composer\Repository\ArrayReposit
1fc60 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 ory;.use.Composer\Repository\Rep
1fc80 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 ositoryFactory;.use.Composer\Uti
1fca0 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 l\Platform;.use.Composer\Util\Pr
1fcc0 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f ocessExecutor;.use.Symfony\Compo
1fce0 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 nent\Console\Input\InputArgument
1fd00 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c ;.use.Symfony\Component\Console\
1fd20 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 Input\InputOption;.use.Symfony\C
1fd40 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 omponent\Console\Input\InputInte
1fd60 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e rface;.use.Symfony\Component\Con
1fd80 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a sole\Output\OutputInterface;....
1fda0 0a 63 6c 61 73 73 20 48 6f 6d 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 .class.HomeCommand.extends.BaseC
1fdc0 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 ommand.{....protected.function.c
1fde0 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 62 72 onfigure().{.$this.->setName('br
1fe00 6f 77 73 65 27 29 0a 2d 3e 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 28 27 68 6f 6d 65 27 owse').->setAliases(array('home'
1fe20 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 4f 70 65 6e 73 20 74 68 65 20 70 )).->setDescription('Opens.the.p
1fe40 61 63 6b 61 67 65 5c 27 73 20 72 65 70 6f 73 69 74 6f 72 79 20 55 52 4c 20 6f 72 20 68 6f 6d 65 ackage\'s.repository.URL.or.home
1fe60 70 61 67 65 20 69 6e 20 79 6f 75 72 20 62 72 6f 77 73 65 72 2e 27 29 0a 2d 3e 73 65 74 44 65 66 page.in.your.browser.').->setDef
1fe80 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 inition(array(.new.InputArgument
1fea0 28 27 70 61 63 6b 61 67 65 73 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 ('packages',.InputArgument::IS_A
1fec0 52 52 41 59 20 7c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 52 45 51 55 49 52 45 44 2c 20 RRAY.|.InputArgument::REQUIRED,.
1fee0 27 50 61 63 6b 61 67 65 28 73 29 20 74 6f 20 62 72 6f 77 73 65 20 74 6f 2e 27 29 2c 0a 6e 65 77 'Package(s).to.browse.to.'),.new
1ff00 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 68 6f 6d 65 70 61 67 65 27 2c 20 27 48 27 2c 20 49 6e .InputOption('homepage',.'H',.In
1ff20 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4f 70 65 6e 20 74 68 65 putOption::VALUE_NONE,.'Open.the
1ff40 20 68 6f 6d 65 70 61 67 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 72 65 70 6f 73 69 74 .homepage.instead.of.the.reposit
1ff60 6f 72 79 20 55 52 4c 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 73 68 6f ory.URL.'),.new.InputOption('sho
1ff80 77 27 2c 20 27 73 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 w',.'s',.InputOption::VALUE_NONE
1ffa0 2c 20 27 4f 6e 6c 79 20 73 68 6f 77 20 74 68 65 20 68 6f 6d 65 70 61 67 65 20 6f 72 20 72 65 70 ,.'Only.show.the.homepage.or.rep
1ffc0 6f 73 69 74 6f 72 79 20 55 52 4c 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c ository.URL.'),.)).->setHelp(<<<
1ffe0 45 4f 54 0a 54 68 65 20 68 6f 6d 65 20 63 6f 6d 6d 61 6e 64 20 6f 70 65 6e 73 20 6f 72 20 73 68 EOT.The.home.command.opens.or.sh
20000 6f 77 73 20 61 20 70 61 63 6b 61 67 65 27 73 20 72 65 70 6f 73 69 74 6f 72 79 20 55 52 4c 20 6f ows.a.package's.repository.URL.o
20020 72 0a 68 6f 6d 65 70 61 67 65 20 69 6e 20 79 6f 75 72 20 64 65 66 61 75 6c 74 20 62 72 6f 77 73 r.homepage.in.your.default.brows
20040 65 72 2e 0a 0a 54 6f 20 6f 70 65 6e 20 74 68 65 20 68 6f 6d 65 70 61 67 65 20 62 79 20 64 65 66 er...To.open.the.homepage.by.def
20060 61 75 6c 74 2c 20 75 73 65 20 2d 48 20 6f 72 20 2d 2d 68 6f 6d 65 70 61 67 65 2e 0a 54 6f 20 73 ault,.use.-H.or.--homepage..To.s
20080 68 6f 77 20 69 6e 73 74 65 61 64 20 6f 66 20 6f 70 65 6e 20 74 68 65 20 72 65 70 6f 73 69 74 6f how.instead.of.open.the.reposito
200a0 72 79 20 6f 72 20 68 6f 6d 65 70 61 67 65 20 55 52 4c 2c 20 75 73 65 20 2d 73 20 6f 72 20 2d 2d ry.or.homepage.URL,.use.-s.or.--
200c0 73 68 6f 77 2e 0a 45 4f 54 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e show..EOT.);.}.....protected.fun
200e0 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e ction.execute(InputInterface.$in
20100 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a put,.OutputInterface.$output).{.
20120 24 72 65 70 6f 73 20 3d 20 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 52 65 70 6f 73 28 $repos.=.$this->initializeRepos(
20140 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 24 72 65 74 75 72 6e );.$io.=.$this->getIO();.$return
20160 20 3d 20 30 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d .=.0;..foreach.($input->getArgum
20180 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 29 20 61 73 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 ent('packages').as.$packageName)
201a0 20 7b 0a 24 68 61 6e 64 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 24 70 61 63 6b 61 67 65 45 78 69 .{.$handled.=.false;.$packageExi
201c0 73 74 73 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 20 61 73 20 sts.=.false;.foreach.($repos.as.
201e0 24 72 65 70 6f 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 2d 3e 66 69 6e 64 50 61 63 $repo).{.foreach.($repo->findPac
20200 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 kages($packageName).as.$package)
20220 20 7b 0a 24 70 61 63 6b 61 67 65 45 78 69 73 74 73 20 3d 20 74 72 75 65 3b 0a 69 66 20 28 24 74 .{.$packageExists.=.true;.if.($t
20240 68 69 73 2d 3e 68 61 6e 64 6c 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 24 69 6e his->handlePackage($package,.$in
20260 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 68 6f 6d 65 70 61 67 65 27 29 2c 20 24 69 6e 70 put->getOption('homepage'),.$inp
20280 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 73 68 6f 77 27 29 29 29 20 7b 0a 24 68 61 6e 64 6c ut->getOption('show'))).{.$handl
202a0 65 64 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 20 32 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 21 ed.=.true;.break.2;.}.}.}..if.(!
202c0 24 70 61 63 6b 61 67 65 45 78 69 73 74 73 29 20 7b 0a 24 72 65 74 75 72 6e 20 3d 20 31 3b 0a 24 $packageExists).{.$return.=.1;.$
202e0 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 50 61 63 6b 61 67 65 io->writeError('<warning>Package
20300 20 27 2e 24 70 61 63 6b 61 67 65 4e 61 6d 65 2e 27 20 6e 6f 74 20 66 6f 75 6e 64 3c 2f 77 61 72 .'.$packageName.'.not.found</war
20320 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 68 61 6e 64 6c 65 64 29 20 7b 0a 24 72 65 ning>');.}..if.(!$handled).{.$re
20340 74 75 72 6e 20 3d 20 31 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e turn.=.1;.$io->writeError('<warn
20360 69 6e 67 3e 27 2e 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 68 6f 6d 65 70 61 ing>'.($input->getOption('homepa
20380 67 65 27 29 20 3f 20 27 49 6e 76 61 6c 69 64 20 6f 72 20 6d 69 73 73 69 6e 67 20 68 6f 6d 65 70 ge').?.'Invalid.or.missing.homep
203a0 61 67 65 27 20 3a 20 27 49 6e 76 61 6c 69 64 20 6f 72 20 6d 69 73 73 69 6e 67 20 72 65 70 6f 73 age'.:.'Invalid.or.missing.repos
203c0 69 74 6f 72 79 20 55 52 4c 27 29 2e 27 20 66 6f 72 20 27 2e 24 70 61 63 6b 61 67 65 4e 61 6d 65 itory.URL').'.for.'.$packageName
203e0 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 74 .'</warning>');.}.}..return.$ret
20400 75 72 6e 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 68 61 6e 64 6c 65 50 urn;.}..private.function.handleP
20420 61 63 6b 61 67 65 28 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 ackage(CompletePackageInterface.
20440 24 70 61 63 6b 61 67 65 2c 20 24 73 68 6f 77 48 6f 6d 65 70 61 67 65 2c 20 24 73 68 6f 77 4f 6e $package,.$showHomepage,.$showOn
20460 6c 79 29 0a 7b 0a 24 73 75 70 70 6f 72 74 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 ly).{.$support.=.$package->getSu
20480 70 70 6f 72 74 28 29 3b 0a 24 75 72 6c 20 3d 20 69 73 73 65 74 28 24 73 75 70 70 6f 72 74 5b 27 pport();.$url.=.isset($support['
204a0 73 6f 75 72 63 65 27 5d 29 20 3f 20 24 73 75 70 70 6f 72 74 5b 27 73 6f 75 72 63 65 27 5d 20 3a source']).?.$support['source'].:
204c0 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 69 66 20 28 21 .$package->getSourceUrl();.if.(!
204e0 24 75 72 6c 20 7c 7c 20 24 73 68 6f 77 48 6f 6d 65 70 61 67 65 29 20 7b 0a 24 75 72 6c 20 3d 20 $url.||.$showHomepage).{.$url.=.
20500 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 48 6f 6d 65 70 61 67 65 28 29 3b 0a 7d 0a 0a 69 66 20 28 $package->getHomepage();.}..if.(
20520 21 24 75 72 6c 20 7c 7c 20 21 66 69 6c 74 65 72 5f 76 61 72 28 24 75 72 6c 2c 20 46 49 4c 54 45 !$url.||.!filter_var($url,.FILTE
20540 52 5f 56 41 4c 49 44 41 54 45 5f 55 52 4c 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b R_VALIDATE_URL)).{.return.false;
20560 0a 7d 0a 0a 69 66 20 28 24 73 68 6f 77 4f 6e 6c 79 29 20 7b 0a 24 74 68 69 73 2d 3e 67 65 74 49 .}..if.($showOnly).{.$this->getI
20580 4f 28 29 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e O()->write(sprintf('<info>%s</in
205a0 66 6f 3e 27 2c 20 24 75 72 6c 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 fo>',.$url));.}.else.{.$this->op
205c0 65 6e 42 72 6f 77 73 65 72 28 24 75 72 6c 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b enBrowser($url);.}..return.true;
205e0 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6f 70 65 6e 42 72 .}.......private.function.openBr
20600 6f 77 73 65 72 28 24 75 72 6c 29 0a 7b 0a 24 75 72 6c 20 3d 20 50 72 6f 63 65 73 73 45 78 65 63 owser($url).{.$url.=.ProcessExec
20620 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 3b 0a 0a 69 66 20 28 50 6c 61 74 66 6f 72 utor::escape($url);..if.(Platfor
20640 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 70 61 73 73 74 68 72 m::isWindows()).{.return.passthr
20660 75 28 27 73 74 61 72 74 20 22 77 65 62 22 20 65 78 70 6c 6f 72 65 72 20 22 27 20 2e 20 24 75 72 u('start."web".explorer."'...$ur
20680 6c 20 2e 20 27 22 27 29 3b 0a 7d 0a 0a 70 61 73 73 74 68 72 75 28 27 77 68 69 63 68 20 78 64 67 l...'"');.}..passthru('which.xdg
206a0 2d 6f 70 65 6e 27 2c 20 24 6c 69 6e 75 78 29 3b 0a 70 61 73 73 74 68 72 75 28 27 77 68 69 63 68 -open',.$linux);.passthru('which
206c0 20 6f 70 65 6e 27 2c 20 24 6f 73 78 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6c 69 6e 75 78 .open',.$osx);..if.(0.===.$linux
206e0 29 20 7b 0a 70 61 73 73 74 68 72 75 28 27 78 64 67 2d 6f 70 65 6e 20 27 20 2e 20 24 75 72 6c 29 ).{.passthru('xdg-open.'...$url)
20700 3b 0a 7d 20 65 6c 73 65 69 66 20 28 30 20 3d 3d 3d 20 24 6f 73 78 29 20 7b 0a 70 61 73 73 74 68 ;.}.elseif.(0.===.$osx).{.passth
20720 72 75 28 27 6f 70 65 6e 20 27 20 2e 20 24 75 72 6c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 ru('open.'...$url);.}.else.{.$th
20740 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 6e 6f 20 73 75 69 74 is->getIO()->writeError('no.suit
20760 61 62 6c 65 20 62 72 6f 77 73 65 72 20 6f 70 65 6e 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 66 6f 75 able.browser.opening.command.fou
20780 6e 64 2c 20 6f 70 65 6e 20 79 6f 75 72 73 65 6c 66 3a 20 27 20 2e 20 24 75 72 6c 29 3b 0a 7d 0a nd,.open.yourself:.'...$url);.}.
207a0 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 }.........private.function.initi
207c0 61 6c 69 7a 65 52 65 70 6f 73 28 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 alizeRepos().{.$composer.=.$this
207e0 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 66 61 6c 73 65 29 3b 0a 0a 69 66 20 28 24 63 6f 6d 70 ->getComposer(false);..if.($comp
20800 6f 73 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 61 72 72 61 oser).{.return.array_merge(.arra
20820 79 28 6e 65 77 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 63 6f 6d y(new.ArrayRepository(array($com
20840 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 29 29 29 2c 20 0a 20 61 72 72 61 79 28 poser->getPackage()))),...array(
20860 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 $composer->getRepositoryManager(
20880 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 29 2c 20 0a 20 24 63 6f 6d )->getLocalRepository()),...$com
208a0 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 poser->getRepositoryManager()->g
208c0 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 20 0a 20 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 etRepositories()...);.}..return.
208e0 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 64 65 66 61 75 6c 74 52 65 70 6f 73 28 RepositoryFactory::defaultRepos(
20900 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a $this->getIO());.}.}.<?php......
20920 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 ......namespace.Composer\Command
20940 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 ;..use.Composer\DependencyResolv
20960 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 er\Pool;.use.Composer\Json\JsonF
20980 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 ile;.use.Composer\Factory;.use.C
209a0 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 46 61 63 omposer\Repository\RepositoryFac
209c0 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 50 tory;.use.Composer\Package\BaseP
209e0 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 ackage;.use.Composer\Package\Ver
20a00 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 sion\VersionParser;.use.Composer
20a20 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 53 65 6c 65 63 74 6f 72 \Package\Version\VersionSelector
20a40 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 ;.use.Composer\Repository\Compos
20a60 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f iteRepository;.use.Composer\Repo
20a80 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 sitory\PlatformRepository;.use.C
20aa0 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 omposer\Util\ProcessExecutor;.us
20ac0 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 e.Symfony\Component\Console\Inpu
20ae0 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f t\InputInterface;.use.Symfony\Co
20b00 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f mponent\Console\Input\InputOptio
20b20 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 n;.use.Symfony\Component\Console
20b40 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d \Output\OutputInterface;.use.Sym
20b60 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 3b 0a fony\Component\Process\Process;.
20b80 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 use.Symfony\Component\Process\Ex
20ba0 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 69 74 43 ecutableFinder;......class.InitC
20bc0 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 70 72 ommand.extends.BaseCommand.{..pr
20be0 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 3b 0a 0a 0a 70 72 69 76 61 74 65 20 24 67 69 74 43 6f otected.$repos;...private.$gitCo
20c00 6e 66 69 67 3b 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 6f 6f 6c 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 nfig;...private.$pool;.....prote
20c20 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 cted.function.configure().{.$thi
20c40 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 69 6e 69 74 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 s.->setName('init').->setDescrip
20c60 74 69 6f 6e 28 27 43 72 65 61 74 65 73 20 61 20 62 61 73 69 63 20 63 6f 6d 70 6f 73 65 72 2e 6a tion('Creates.a.basic.composer.j
20c80 73 6f 6e 20 66 69 6c 65 20 69 6e 20 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2e 27 29 son.file.in.current.directory.')
20ca0 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 .->setDefinition(array(.new.Inpu
20cc0 74 4f 70 74 69 6f 6e 28 27 6e 61 6d 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f tOption('name',.null,.InputOptio
20ce0 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 4e 61 6d 65 20 6f 66 20 74 68 65 20 n::VALUE_REQUIRED,.'Name.of.the.
20d00 70 61 63 6b 61 67 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 73 63 package'),.new.InputOption('desc
20d20 72 69 70 74 69 6f 6e 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c ription',.null,.InputOption::VAL
20d40 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 44 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 70 61 63 UE_REQUIRED,.'Description.of.pac
20d60 6b 61 67 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 61 75 74 68 6f 72 27 kage'),.new.InputOption('author'
20d80 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 ,.null,.InputOption::VALUE_REQUI
20da0 52 45 44 2c 20 27 41 75 74 68 6f 72 20 6e 61 6d 65 20 6f 66 20 70 61 63 6b 61 67 65 27 29 2c 0a RED,.'Author.name.of.package'),.
20dc0 0a 20 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 74 79 70 65 27 2c 20 6e 75 6c 6c 2c 20 ..new.InputOption('type',.null,.
20de0 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4f 50 54 49 4f 4e 41 4c 2c 20 27 54 79 InputOption::VALUE_OPTIONAL,.'Ty
20e00 70 65 20 6f 66 20 70 61 63 6b 61 67 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e pe.of.package'),.new.InputOption
20e20 28 27 68 6f 6d 65 70 61 67 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a ('homepage',.null,.InputOption::
20e40 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 48 6f 6d 65 70 61 67 65 20 6f 66 20 70 61 63 VALUE_REQUIRED,.'Homepage.of.pac
20e60 6b 61 67 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 kage'),.new.InputOption('require
20e80 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 ',.null,.InputOption::VALUE_IS_A
20ea0 52 52 41 59 20 7c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 RRAY.|.InputOption::VALUE_REQUIR
20ec0 45 44 2c 20 27 50 61 63 6b 61 67 65 20 74 6f 20 72 65 71 75 69 72 65 20 77 69 74 68 20 61 20 76 ED,.'Package.to.require.with.a.v
20ee0 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 2c 20 65 2e 67 2e 20 66 6f 6f 2f 62 61 72 3a ersion.constraint,.e.g..foo/bar:
20f00 31 2e 30 2e 30 20 6f 72 20 66 6f 6f 2f 62 61 72 3d 31 2e 30 2e 30 20 6f 72 20 22 66 6f 6f 2f 62 1.0.0.or.foo/bar=1.0.0.or."foo/b
20f20 61 72 20 31 2e 30 2e 30 22 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 65 ar.1.0.0"'),.new.InputOption('re
20f40 71 75 69 72 65 2d 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 quire-dev',.null,.InputOption::V
20f60 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c ALUE_IS_ARRAY.|.InputOption::VAL
20f80 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 50 61 63 6b 61 67 65 20 74 6f 20 72 65 71 75 69 72 65 UE_REQUIRED,.'Package.to.require
20fa0 20 66 6f 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 77 69 74 68 20 61 20 76 65 72 73 69 6f 6e 20 .for.development.with.a.version.
20fc0 63 6f 6e 73 74 72 61 69 6e 74 2c 20 65 2e 67 2e 20 66 6f 6f 2f 62 61 72 3a 31 2e 30 2e 30 20 6f constraint,.e.g..foo/bar:1.0.0.o
20fe0 72 20 66 6f 6f 2f 62 61 72 3d 31 2e 30 2e 30 20 6f 72 20 22 66 6f 6f 2f 62 61 72 20 31 2e 30 2e r.foo/bar=1.0.0.or."foo/bar.1.0.
21000 30 22 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 74 79 0"'),.new.InputOption('stability
21020 27 2c 20 27 73 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 ',.'s',.InputOption::VALUE_REQUI
21040 52 45 44 2c 20 27 4d 69 6e 69 6d 75 6d 20 73 74 61 62 69 6c 69 74 79 20 28 65 6d 70 74 79 20 6f RED,.'Minimum.stability.(empty.o
21060 72 20 6f 6e 65 20 6f 66 3a 20 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f r.one.of:.'.implode(',.',.array_
21080 6b 65 79 73 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 29 29 keys(BasePackage::$stabilities))
210a0 2e 27 29 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6c 69 63 65 6e 73 65 27 .')'),.new.InputOption('license'
210c0 2c 20 27 6c 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 ,.'l',.InputOption::VALUE_REQUIR
210e0 45 44 2c 20 27 4c 69 63 65 6e 73 65 20 6f 66 20 70 61 63 6b 61 67 65 27 29 2c 0a 6e 65 77 20 49 ED,.'License.of.package'),.new.I
21100 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 65 70 6f 73 69 74 6f 72 79 27 2c 20 6e 75 6c 6c 2c 20 49 nputOption('repository',.null,.I
21120 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 7c 20 49 6e 70 nputOption::VALUE_REQUIRED.|.Inp
21140 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 2c 20 27 41 64 64 20 63 utOption::VALUE_IS_ARRAY,.'Add.c
21160 75 73 74 6f 6d 20 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 65 69 74 68 65 72 20 62 79 20 55 52 ustom.repositories,.either.by.UR
21180 4c 20 6f 72 20 75 73 69 6e 67 20 4a 53 4f 4e 20 61 72 72 61 79 73 27 29 2c 0a 29 29 0a 2d 3e 73 L.or.using.JSON.arrays'),.)).->s
211a0 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 69 6e 69 74 3c 2f 69 6e etHelp(<<<EOT.The.<info>init</in
211c0 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 63 72 65 61 74 65 73 20 61 20 62 61 73 69 63 20 63 6f 6d 70 fo>.command.creates.a.basic.comp
211e0 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 0a 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 oser.json.file.in.the.current.di
21200 72 65 63 74 6f 72 79 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 rectory...<info>php.composer.pha
21220 72 20 69 6e 69 74 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f r.init</info>..EOT.).;.}.....pro
21240 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 tected.function.execute(InputInt
21260 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 erface.$input,.OutputInterface.$
21280 6f 75 74 70 75 74 29 0a 7b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a output).{.$io.=.$this->getIO();.
212a0 0a 24 77 68 69 74 65 6c 69 73 74 20 3d 20 61 72 72 61 79 28 27 6e 61 6d 65 27 2c 20 27 64 65 73 .$whitelist.=.array('name',.'des
212c0 63 72 69 70 74 69 6f 6e 27 2c 20 27 61 75 74 68 6f 72 27 2c 20 27 74 79 70 65 27 2c 20 27 68 6f cription',.'author',.'type',.'ho
212e0 6d 65 70 61 67 65 27 2c 20 27 72 65 71 75 69 72 65 27 2c 20 27 72 65 71 75 69 72 65 2d 64 65 76 mepage',.'require',.'require-dev
21300 27 2c 20 27 73 74 61 62 69 6c 69 74 79 27 2c 20 27 6c 69 63 65 6e 73 65 27 29 3b 0a 24 6f 70 74 ',.'stability',.'license');.$opt
21320 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 61 72 72 61 79 5f 69 6e 74 65 72 73 ions.=.array_filter(array_inters
21340 65 63 74 5f 6b 65 79 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 2c 20 61 72 ect_key($input->getOptions(),.ar
21360 72 61 79 5f 66 6c 69 70 28 24 77 68 69 74 65 6c 69 73 74 29 29 29 3b 0a 0a 69 66 20 28 69 73 73 ray_flip($whitelist)));..if.(iss
21380 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 68 6f 72 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f et($options['author'])).{.$optio
213a0 6e 73 5b 27 61 75 74 68 6f 72 73 27 5d 20 3d 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 41 75 74 ns['authors'].=.$this->formatAut
213c0 68 6f 72 73 28 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 68 6f 72 27 5d 29 3b 0a 75 6e 73 65 74 28 hors($options['author']);.unset(
213e0 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 68 6f 72 27 5d 29 3b 0a 7d 0a 0a 24 72 65 70 6f 73 69 74 $options['author']);.}..$reposit
21400 6f 72 69 65 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 65 70 6f 73 ories.=.$input->getOption('repos
21420 69 74 6f 72 79 27 29 3b 0a 69 66 20 28 24 72 65 70 6f 73 69 74 6f 72 69 65 73 29 20 7b 0a 24 63 itory');.if.($repositories).{.$c
21440 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 43 6f 6e 66 69 67 28 24 69 onfig.=.Factory::createConfig($i
21460 6f 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 o);.foreach.($repositories.as.$r
21480 65 70 6f 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 5b epo).{.$options['repositories'][
214a0 5d 20 3d 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 63 6f 6e 66 69 67 46 72 6f ].=.RepositoryFactory::configFro
214c0 6d 53 74 72 69 6e 67 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 72 65 70 6f 29 3b 0a 7d 0a mString($io,.$config,.$repo);.}.
214e0 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 73 74 61 62 69 6c 69 74 79 }..if.(isset($options['stability
21500 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 '])).{.$options['minimum-stabili
21520 74 79 27 5d 20 3d 20 24 6f 70 74 69 6f 6e 73 5b 27 73 74 61 62 69 6c 69 74 79 27 5d 3b 0a 75 6e ty'].=.$options['stability'];.un
21540 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 73 74 61 62 69 6c 69 74 79 27 5d 29 3b 0a 7d 0a 0a 24 set($options['stability']);.}..$
21560 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 72 65 27 5d 20 3d 20 69 73 73 65 74 28 24 6f 70 74 69 options['require'].=.isset($opti
21580 6f 6e 73 5b 27 72 65 71 75 69 72 65 27 5d 29 20 3f 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 52 ons['require']).?.$this->formatR
215a0 65 71 75 69 72 65 6d 65 6e 74 73 28 24 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 72 65 27 5d 29 equirements($options['require'])
215c0 20 3a 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 3b 0a 69 66 20 28 61 72 72 61 79 28 29 20 3d 3d .:.new.\stdClass;.if.(array().==
215e0 3d 20 24 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 72 65 27 5d 29 20 7b 0a 24 6f 70 74 69 6f 6e =.$options['require']).{.$option
21600 73 5b 27 72 65 71 75 69 72 65 27 5d 20 3d 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 3b 0a 7d 0a s['require'].=.new.\stdClass;.}.
21620 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 72 65 2d 64 65 76 .if.(isset($options['require-dev
21640 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 72 65 2d 64 65 76 27 5d 20 3d '])).{.$options['require-dev'].=
21660 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 6f 70 74 69 .$this->formatRequirements($opti
21680 6f 6e 73 5b 27 72 65 71 75 69 72 65 2d 64 65 76 27 5d 29 3b 0a 69 66 20 28 61 72 72 61 79 28 29 ons['require-dev']);.if.(array()
216a0 20 3d 3d 3d 20 24 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 72 65 2d 64 65 76 27 5d 29 20 7b 0a .===.$options['require-dev']).{.
216c0 24 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 72 65 2d 64 65 76 27 5d 20 3d 20 6e 65 77 20 5c 73 $options['require-dev'].=.new.\s
216e0 74 64 43 6c 61 73 73 3b 0a 7d 0a 7d 0a 0a 24 66 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 tdClass;.}.}..$file.=.new.JsonFi
21700 6c 65 28 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 3b 0a 24 6a 73 6f 6e 20 3d 20 24 66 69 le('composer.json');.$json.=.$fi
21720 6c 65 2d 3e 65 6e 63 6f 64 65 28 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 le->encode($options);..if.($inpu
21740 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 t->isInteractive()).{.$io->write
21760 45 72 72 6f 72 28 61 72 72 61 79 28 27 27 2c 20 24 6a 73 6f 6e 2c 20 27 27 29 29 3b 0a 69 66 20 Error(array('',.$json,.''));.if.
21780 28 21 24 69 6f 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 27 44 6f 20 79 6f 75 20 63 (!$io->askConfirmation('Do.you.c
217a0 6f 6e 66 69 72 6d 20 67 65 6e 65 72 61 74 69 6f 6e 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 79 65 73 3c onfirm.generation.[<comment>yes<
217c0 2f 63 6f 6d 6d 65 6e 74 3e 5d 3f 20 27 2c 20 74 72 75 65 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 /comment>]?.',.true)).{.$io->wri
217e0 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 43 6f 6d 6d 61 6e 64 20 61 62 6f 72 74 65 64 3c teError('<error>Command.aborted<
21800 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 7d 0a 0a 24 66 69 6c 65 /error>');..return.1;.}.}..$file
21820 2d 3e 77 72 69 74 65 28 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e ->write($options);..if.($input->
21840 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 20 26 26 20 69 73 5f 64 69 72 28 27 2e 67 69 74 27 isInteractive().&&.is_dir('.git'
21860 29 29 20 7b 0a 24 69 67 6e 6f 72 65 46 69 6c 65 20 3d 20 72 65 61 6c 70 61 74 68 28 27 2e 67 69 )).{.$ignoreFile.=.realpath('.gi
21880 74 69 67 6e 6f 72 65 27 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 69 67 6e 6f 72 tignore');..if.(false.===.$ignor
218a0 65 46 69 6c 65 29 20 7b 0a 24 69 67 6e 6f 72 65 46 69 6c 65 20 3d 20 72 65 61 6c 70 61 74 68 28 eFile).{.$ignoreFile.=.realpath(
218c0 27 2e 27 29 20 2e 20 27 2f 2e 67 69 74 69 67 6e 6f 72 65 27 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 '.')...'/.gitignore';.}..if.(!$t
218e0 68 69 73 2d 3e 68 61 73 56 65 6e 64 6f 72 49 67 6e 6f 72 65 28 24 69 67 6e 6f 72 65 46 69 6c 65 his->hasVendorIgnore($ignoreFile
21900 29 29 20 7b 0a 24 71 75 65 73 74 69 6f 6e 20 3d 20 27 57 6f 75 6c 64 20 79 6f 75 20 6c 69 6b 65 )).{.$question.=.'Would.you.like
21920 20 74 68 65 20 3c 69 6e 66 6f 3e 76 65 6e 64 6f 72 3c 2f 69 6e 66 6f 3e 20 64 69 72 65 63 74 6f .the.<info>vendor</info>.directo
21940 72 79 20 61 64 64 65 64 20 74 6f 20 79 6f 75 72 20 3c 69 6e 66 6f 3e 2e 67 69 74 69 67 6e 6f 72 ry.added.to.your.<info>.gitignor
21960 65 3c 2f 69 6e 66 6f 3e 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 79 65 73 3c 2f 63 6f 6d 6d 65 6e 74 3e e</info>.[<comment>yes</comment>
21980 5d 3f 20 27 3b 0a 0a 69 66 20 28 24 69 6f 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 ]?.';..if.($io->askConfirmation(
219a0 24 71 75 65 73 74 69 6f 6e 2c 20 74 72 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 56 65 $question,.true)).{.$this->addVe
219c0 6e 64 6f 72 49 67 6e 6f 72 65 28 24 69 67 6e 6f 72 65 46 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d ndorIgnore($ignoreFile);.}.}.}.}
219e0 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 74 65 72 61 63 74 .....protected.function.interact
21a00 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e (InputInterface.$input,.OutputIn
21a20 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 67 69 74 20 3d 20 24 74 68 69 73 2d terface.$output).{.$git.=.$this-
21a40 3e 67 65 74 47 69 74 43 6f 6e 66 69 67 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 >getGitConfig();.$io.=.$this->ge
21a60 74 49 4f 28 29 3b 0a 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 48 65 tIO();.$formatter.=.$this->getHe
21a80 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 66 6f 72 6d 61 74 74 65 72 27 29 3b 0a 0a 0a 20 lperSet()->get('formatter');....
21aa0 24 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f $repositories.=.$input->getOptio
21ac0 6e 28 27 72 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 69 66 20 28 24 72 65 70 6f 73 69 74 6f 72 69 n('repository');.if.($repositori
21ae0 65 73 29 20 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 43 es).{.$config.=.Factory::createC
21b00 6f 6e 66 69 67 28 24 69 6f 29 3b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 6e 65 77 20 50 onfig($io);.$repos.=.array(new.P
21b20 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 latformRepository);.foreach.($re
21b40 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 24 72 65 70 6f 73 5b 5d 20 positories.as.$repo).{.$repos[].
21b60 3d 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 66 72 6f 6d 53 74 72 69 6e 67 28 =.RepositoryFactory::fromString(
21b80 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 72 65 70 6f 29 3b 0a 7d 0a 24 72 65 70 6f 73 5b 5d $io,.$config,.$repo);.}.$repos[]
21ba0 20 3d 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 70 6f .=.RepositoryFactory::createRepo
21bc0 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 61 72 72 61 79 28 0a 27 74 79 70 65 27 20 3d 3e 20 ($io,.$config,.array(.'type'.=>.
21be0 27 63 6f 6d 70 6f 73 65 72 27 2c 0a 27 75 72 6c 27 20 3d 3e 20 27 68 74 74 70 73 3a 2f 2f 70 61 'composer',.'url'.=>.'https://pa
21c00 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 0a 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 20 ckagist.org',.));..$this->repos.
21c20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 73 =.new.CompositeRepository($repos
21c40 29 3b 0a 75 6e 73 65 74 28 24 72 65 70 6f 73 2c 20 24 63 6f 6e 66 69 67 2c 20 24 72 65 70 6f 73 );.unset($repos,.$config,.$repos
21c60 69 74 6f 72 69 65 73 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 itories);.}..$io->writeError(arr
21c80 61 79 28 0a 27 27 2c 0a 24 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 42 6c 6f 63 6b 28 ay(.'',.$formatter->formatBlock(
21ca0 27 57 65 6c 63 6f 6d 65 20 74 6f 20 74 68 65 20 43 6f 6d 70 6f 73 65 72 20 63 6f 6e 66 69 67 20 'Welcome.to.the.Composer.config.
21cc0 67 65 6e 65 72 61 74 6f 72 27 2c 20 27 62 67 3d 62 6c 75 65 3b 66 67 3d 77 68 69 74 65 27 2c 20 generator',.'bg=blue;fg=white',.
21ce0 74 72 75 65 29 2c 0a 27 27 2c 0a 29 29 3b 0a 0a 0a 20 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f true),.'',.));....$io->writeErro
21d00 72 28 61 72 72 61 79 28 0a 27 27 2c 0a 27 54 68 69 73 20 63 6f 6d 6d 61 6e 64 20 77 69 6c 6c 20 r(array(.'',.'This.command.will.
21d20 67 75 69 64 65 20 79 6f 75 20 74 68 72 6f 75 67 68 20 63 72 65 61 74 69 6e 67 20 79 6f 75 72 20 guide.you.through.creating.your.
21d40 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 63 6f 6e 66 69 67 2e 27 2c 0a 27 27 2c 0a 29 29 3b 0a composer.json.config.',.'',.));.
21d60 0a 24 63 77 64 20 3d 20 72 65 61 6c 70 61 74 68 28 22 2e 22 29 3b 0a 0a 69 66 20 28 21 24 6e 61 .$cwd.=.realpath(".");..if.(!$na
21d80 6d 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 61 6d 65 27 29 29 20 me.=.$input->getOption('name')).
21da0 7b 0a 24 6e 61 6d 65 20 3d 20 62 61 73 65 6e 61 6d 65 28 24 63 77 64 29 3b 0a 24 6e 61 6d 65 20 {.$name.=.basename($cwd);.$name.
21dc0 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 3f 3a 28 5b 61 2d 7a 5d 29 28 5b 41 2d 5a =.preg_replace('{(?:([a-z])([A-Z
21de0 5d 29 7c 28 5b 41 2d 5a 5d 29 28 5b 41 2d 5a 5d 5b 61 2d 7a 5d 29 29 7d 27 2c 20 27 5c 5c 31 5c ])|([A-Z])([A-Z][a-z]))}',.'\\1\
21e00 5c 33 2d 5c 5c 32 5c 5c 34 27 2c 20 24 6e 61 6d 65 29 3b 0a 24 6e 61 6d 65 20 3d 20 73 74 72 74 \3-\\2\\4',.$name);.$name.=.strt
21e20 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 67 69 74 5b 27 67 olower($name);.if.(isset($git['g
21e40 69 74 68 75 62 2e 75 73 65 72 27 5d 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 67 69 74 5b 27 67 ithub.user'])).{.$name.=.$git['g
21e60 69 74 68 75 62 2e 75 73 65 72 27 5d 20 2e 20 27 2f 27 20 2e 20 24 6e 61 6d 65 3b 0a 7d 20 65 6c ithub.user']...'/'...$name;.}.el
21e80 73 65 69 66 20 28 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 55 53 45 52 4e 41 4d 45 27 seif.(!empty($_SERVER['USERNAME'
21ea0 5d 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 5f 53 45 52 56 45 52 5b 27 55 53 45 52 4e 41 4d 45 ])).{.$name.=.$_SERVER['USERNAME
21ec0 27 5d 20 2e 20 27 2f 27 20 2e 20 24 6e 61 6d 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 67 65 74 5f ']...'/'...$name;.}.elseif.(get_
21ee0 63 75 72 72 65 6e 74 5f 75 73 65 72 28 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 67 65 74 5f 63 75 current_user()).{.$name.=.get_cu
21f00 72 72 65 6e 74 5f 75 73 65 72 28 29 20 2e 20 27 2f 27 20 2e 20 24 6e 61 6d 65 3b 0a 7d 20 65 6c rrent_user()...'/'...$name;.}.el
21f20 73 65 20 7b 0a 0a 20 24 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 20 2e 20 27 2f 27 20 2e 20 24 6e 61 se.{...$name.=.$name...'/'...$na
21f40 6d 65 3b 0a 7d 0a 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b me;.}.$name.=.strtolower($name);
21f60 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d .}.else.{.if.(!preg_match('{^[a-
21f80 7a 30 2d 39 5f 2e 2d 5d 2b 2f 5b 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 24 7d 27 2c 20 24 6e 61 6d 65 z0-9_.-]+/[a-z0-9_.-]+$}',.$name
21fa0 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 )).{.throw.new.\InvalidArgumentE
21fc0 78 63 65 70 74 69 6f 6e 28 0a 27 54 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 27 2e 24 6e xception(.'The.package.name.'.$n
21fe0 61 6d 65 2e 27 20 69 73 20 69 6e 76 61 6c 69 64 2c 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 6c ame.'.is.invalid,.it.should.be.l
22000 6f 77 65 72 63 61 73 65 20 61 6e 64 20 68 61 76 65 20 61 20 76 65 6e 64 6f 72 20 6e 61 6d 65 2c owercase.and.have.a.vendor.name,
22020 20 61 20 66 6f 72 77 61 72 64 20 73 6c 61 73 68 2c 20 61 6e 64 20 61 20 70 61 63 6b 61 67 65 20 .a.forward.slash,.and.a.package.
22040 6e 61 6d 65 2c 20 6d 61 74 63 68 69 6e 67 3a 20 5b 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 2f 5b 61 2d name,.matching:.[a-z0-9_.-]+/[a-
22060 7a 30 2d 39 5f 2e 2d 5d 2b 27 0a 29 3b 0a 7d 0a 7d 0a 0a 24 6e 61 6d 65 20 3d 20 24 69 6f 2d 3e z0-9_.-]+'.);.}.}..$name.=.$io->
22080 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 0a 27 50 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 3c askAndValidate(.'Package.name.(<
220a0 76 65 6e 64 6f 72 3e 2f 3c 6e 61 6d 65 3e 29 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 6e 61 6d vendor>/<name>).[<comment>'.$nam
220c0 65 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 20 27 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 e.'</comment>]:.',.function.($va
220e0 6c 75 65 29 20 75 73 65 20 28 24 6e 61 6d 65 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 lue).use.($name).{.if.(null.===.
22100 24 76 61 6c 75 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 6e 61 6d 65 3b 0a 7d 0a 0a 69 66 20 28 21 $value).{.return.$name;.}..if.(!
22120 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 2f 5b 61 2d 7a 30 preg_match('{^[a-z0-9_.-]+/[a-z0
22140 2d 39 5f 2e 2d 5d 2b 24 7d 27 2c 20 24 76 61 6c 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 -9_.-]+$}',.$value)).{.throw.new
22160 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 0a 27 54 68 65 .\InvalidArgumentException(.'The
22180 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 27 2e 24 76 61 6c 75 65 2e 27 20 69 73 20 69 6e 76 61 .package.name.'.$value.'.is.inva
221a0 6c 69 64 2c 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 6c 6f 77 65 72 63 61 73 65 20 61 6e 64 20 lid,.it.should.be.lowercase.and.
221c0 68 61 76 65 20 61 20 76 65 6e 64 6f 72 20 6e 61 6d 65 2c 20 61 20 66 6f 72 77 61 72 64 20 73 6c have.a.vendor.name,.a.forward.sl
221e0 61 73 68 2c 20 61 6e 64 20 61 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 2c 20 6d 61 74 63 68 69 6e ash,.and.a.package.name,.matchin
22200 67 3a 20 5b 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 2f 5b 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 27 0a 29 3b g:.[a-z0-9_.-]+/[a-z0-9_.-]+'.);
22220 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 2c 0a 6e 75 6c 6c 2c 0a 24 6e 61 6d .}..return.$value;.},.null,.$nam
22240 65 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 6e 61 6d 65 27 2c 20 24 e.);.$input->setOption('name',.$
22260 6e 61 6d 65 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 69 6e 70 75 74 2d 3e 67 name);..$description.=.$input->g
22280 65 74 4f 70 74 69 6f 6e 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 29 20 3f 3a 20 66 61 6c 73 65 etOption('description').?:.false
222a0 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 69 6f 2d 3e 61 73 6b 28 0a 27 44 65 73 63 ;.$description.=.$io->ask(.'Desc
222c0 72 69 70 74 69 6f 6e 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 64 65 73 63 72 69 70 74 69 6f 6e ription.[<comment>'.$description
222e0 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 20 27 2c 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 0a 29 .'</comment>]:.',.$description.)
22300 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 64 65 73 63 72 69 70 74 69 6f 6e ;.$input->setOption('description
22320 27 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 ',.$description);..if.(null.===.
22340 24 61 75 74 68 6f 72 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 75 74 $author.=.$input->getOption('aut
22360 68 6f 72 27 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 67 69 74 5b 27 75 73 65 72 2e 6e 61 hor')).{.if.(isset($git['user.na
22380 6d 65 27 5d 29 20 26 26 20 69 73 73 65 74 28 24 67 69 74 5b 27 75 73 65 72 2e 65 6d 61 69 6c 27 me']).&&.isset($git['user.email'
223a0 5d 29 29 20 7b 0a 24 61 75 74 68 6f 72 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 20 3c 25 73 3e ])).{.$author.=.sprintf('%s.<%s>
223c0 27 2c 20 24 67 69 74 5b 27 75 73 65 72 2e 6e 61 6d 65 27 5d 2c 20 24 67 69 74 5b 27 75 73 65 72 ',.$git['user.name'],.$git['user
223e0 2e 65 6d 61 69 6c 27 5d 29 3b 0a 7d 0a 7d 0a 0a 24 73 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 24 .email']);.}.}..$self.=.$this;.$
22400 61 75 74 68 6f 72 20 3d 20 24 69 6f 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 0a 27 41 author.=.$io->askAndValidate(.'A
22420 75 74 68 6f 72 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 61 75 74 68 6f 72 2e 27 3c 2f 63 6f 6d uthor.[<comment>'.$author.'</com
22440 6d 65 6e 74 3e 2c 20 6e 20 74 6f 20 73 6b 69 70 5d 3a 20 27 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 ment>,.n.to.skip]:.',.function.(
22460 24 76 61 6c 75 65 29 20 75 73 65 20 28 24 73 65 6c 66 2c 20 24 61 75 74 68 6f 72 29 20 7b 0a 69 $value).use.($self,.$author).{.i
22480 66 20 28 24 76 61 6c 75 65 20 3d 3d 3d 20 27 6e 27 20 7c 7c 20 24 76 61 6c 75 65 20 3d 3d 3d 20 f.($value.===.'n'.||.$value.===.
224a0 27 6e 6f 27 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 76 61 6c 75 65 20 3d 20 24 76 61 6c 75 'no').{.return;.}.$value.=.$valu
224c0 65 20 3f 3a 20 24 61 75 74 68 6f 72 3b 0a 24 61 75 74 68 6f 72 20 3d 20 24 73 65 6c 66 2d 3e 70 e.?:.$author;.$author.=.$self->p
224e0 61 72 73 65 41 75 74 68 6f 72 53 74 72 69 6e 67 28 24 76 61 6c 75 65 29 3b 0a 0a 72 65 74 75 72 arseAuthorString($value);..retur
22500 6e 20 73 70 72 69 6e 74 66 28 27 25 73 20 3c 25 73 3e 27 2c 20 24 61 75 74 68 6f 72 5b 27 6e 61 n.sprintf('%s.<%s>',.$author['na
22520 6d 65 27 5d 2c 20 24 61 75 74 68 6f 72 5b 27 65 6d 61 69 6c 27 5d 29 3b 0a 7d 2c 0a 6e 75 6c 6c me'],.$author['email']);.},.null
22540 2c 0a 24 61 75 74 68 6f 72 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 ,.$author.);.$input->setOption('
22560 61 75 74 68 6f 72 27 2c 20 24 61 75 74 68 6f 72 29 3b 0a 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 author',.$author);..$minimumStab
22580 69 6c 69 74 79 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 ility.=.$input->getOption('stabi
225a0 6c 69 74 79 27 29 20 3f 3a 20 6e 75 6c 6c 3b 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 lity').?:.null;.$minimumStabilit
225c0 79 20 3d 20 24 69 6f 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 0a 27 4d 69 6e 69 6d 75 y.=.$io->askAndValidate(.'Minimu
225e0 6d 20 53 74 61 62 69 6c 69 74 79 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 6d 69 6e 69 6d 75 6d m.Stability.[<comment>'.$minimum
22600 53 74 61 62 69 6c 69 74 79 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 20 27 2c 0a 66 75 6e 63 74 Stability.'</comment>]:.',.funct
22620 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 75 73 65 20 28 24 73 65 6c 66 2c 20 24 6d 69 6e 69 6d 75 ion.($value).use.($self,.$minimu
22640 6d 53 74 61 62 69 6c 69 74 79 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 mStability).{.if.(null.===.$valu
22660 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 3b 0a 7d e).{.return.$minimumStability;.}
22680 0a 0a 69 66 20 28 21 69 73 73 65 74 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 ..if.(!isset(BasePackage::$stabi
226a0 6c 69 74 69 65 73 5b 24 76 61 6c 75 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e lities[$value])).{.throw.new.\In
226c0 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 0a 27 49 6e 76 61 6c 69 64 validArgumentException(.'Invalid
226e0 20 6d 69 6e 69 6d 75 6d 20 73 74 61 62 69 6c 69 74 79 20 22 27 2e 24 76 61 6c 75 65 2e 27 22 2e .minimum.stability."'.$value.'".
22700 20 4d 75 73 74 20 62 65 20 65 6d 70 74 79 20 6f 72 20 6f 6e 65 20 6f 66 3a 20 27 2e 0a 69 6d 70 .Must.be.empty.or.one.of:.'..imp
22720 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 42 61 73 65 50 61 63 6b 61 67 lode(',.',.array_keys(BasePackag
22740 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 29 29 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 e::$stabilities)).);.}..return.$
22760 76 61 6c 75 65 3b 0a 7d 2c 0a 6e 75 6c 6c 2c 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 value;.},.null,.$minimumStabilit
22780 79 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 74 y.);.$input->setOption('stabilit
227a0 79 27 2c 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 29 3b 0a 0a 24 74 79 70 65 20 3d y',.$minimumStability);..$type.=
227c0 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 74 79 70 65 27 29 20 3f 3a 20 66 61 .$input->getOption('type').?:.fa
227e0 6c 73 65 3b 0a 24 74 79 70 65 20 3d 20 24 69 6f 2d 3e 61 73 6b 28 0a 27 50 61 63 6b 61 67 65 20 lse;.$type.=.$io->ask(.'Package.
22800 54 79 70 65 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 74 79 70 65 2e 27 3c 2f 63 6f 6d 6d 65 6e Type.[<comment>'.$type.'</commen
22820 74 3e 5d 3a 20 27 2c 0a 24 74 79 70 65 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 t>]:.',.$type.);.$input->setOpti
22840 6f 6e 28 27 74 79 70 65 27 2c 20 24 74 79 70 65 29 3b 0a 0a 24 6c 69 63 65 6e 73 65 20 3d 20 24 on('type',.$type);..$license.=.$
22860 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6c 69 63 65 6e 73 65 27 29 20 3f 3a 20 66 input->getOption('license').?:.f
22880 61 6c 73 65 3b 0a 24 6c 69 63 65 6e 73 65 20 3d 20 24 69 6f 2d 3e 61 73 6b 28 0a 27 4c 69 63 65 alse;.$license.=.$io->ask(.'Lice
228a0 6e 73 65 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 6c 69 63 65 6e 73 65 2e 27 3c 2f 63 6f 6d 6d nse.[<comment>'.$license.'</comm
228c0 65 6e 74 3e 5d 3a 20 27 2c 0a 24 6c 69 63 65 6e 73 65 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 ent>]:.',.$license.);.$input->se
228e0 74 4f 70 74 69 6f 6e 28 27 6c 69 63 65 6e 73 65 27 2c 20 24 6c 69 63 65 6e 73 65 29 3b 0a 0a 24 tOption('license',.$license);..$
22900 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 28 27 27 2c 20 27 44 65 66 69 6e 65 io->writeError(array('',.'Define
22920 20 79 6f 75 72 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 2c 20 27 27 29 29 3b 0a 0a 24 71 75 .your.dependencies.',.''));..$qu
22940 65 73 74 69 6f 6e 20 3d 20 27 57 6f 75 6c 64 20 79 6f 75 20 6c 69 6b 65 20 74 6f 20 64 65 66 69 estion.=.'Would.you.like.to.defi
22960 6e 65 20 79 6f 75 72 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 28 72 65 71 75 69 72 65 29 20 69 ne.your.dependencies.(require).i
22980 6e 74 65 72 61 63 74 69 76 65 6c 79 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 79 65 73 3c 2f 63 6f 6d 6d nteractively.[<comment>yes</comm
229a0 65 6e 74 3e 5d 3f 20 27 3b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 ent>]?.';.$requirements.=.array(
229c0 29 3b 0a 69 66 20 28 24 69 6f 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 24 71 75 65 );.if.($io->askConfirmation($que
229e0 73 74 69 6f 6e 2c 20 74 72 75 65 29 29 20 7b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 stion,.true)).{.$requirements.=.
22a00 24 74 68 69 73 2d 3e 64 65 74 65 72 6d 69 6e 65 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e $this->determineRequirements($in
22a20 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 put,.$output,.$input->getOption(
22a40 27 72 65 71 75 69 72 65 27 29 29 3b 0a 7d 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 'require'));.}.$input->setOption
22a60 28 27 72 65 71 75 69 72 65 27 2c 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 0a 24 71 75 ('require',.$requirements);..$qu
22a80 65 73 74 69 6f 6e 20 3d 20 27 57 6f 75 6c 64 20 79 6f 75 20 6c 69 6b 65 20 74 6f 20 64 65 66 69 estion.=.'Would.you.like.to.defi
22aa0 6e 65 20 79 6f 75 72 20 64 65 76 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 28 72 65 71 75 69 72 ne.your.dev.dependencies.(requir
22ac0 65 2d 64 65 76 29 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 79 e-dev).interactively.[<comment>y
22ae0 65 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3f 20 27 3b 0a 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e es</comment>]?.';.$devRequiremen
22b00 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 69 6f 2d 3e 61 73 6b 43 6f 6e 66 69 72 ts.=.array();.if.($io->askConfir
22b20 6d 61 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 74 72 75 65 29 29 20 7b 0a 24 64 65 76 52 mation($question,.true)).{.$devR
22b40 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 64 65 74 65 72 6d 69 6e 65 52 65 equirements.=.$this->determineRe
22b60 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 69 6e 70 quirements($input,.$output,.$inp
22b80 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 2d 64 65 76 27 29 29 3b 0a 7d ut->getOption('require-dev'));.}
22ba0 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 2d 64 65 76 27 .$input->setOption('require-dev'
22bc0 2c 20 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 ,.$devRequirements);.}.......pub
22be0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 41 75 74 68 6f 72 53 74 72 69 6e 67 28 24 lic.function.parseAuthorString($
22c00 61 75 74 68 6f 72 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 3f 50 3c author).{.if.(preg_match('/^(?P<
22c20 6e 61 6d 65 3e 5b 2d 20 5c 2e 2c 5c 70 7b 4c 7d 5c 70 7b 4e 7d 5c 27 e2 80 99 5d 2b 29 20 3c 28 name>[-.\.,\p{L}\p{N}\'...]+).<(
22c40 3f 50 3c 65 6d 61 69 6c 3e 2e 2b 3f 29 3e 24 2f 75 27 2c 20 24 61 75 74 68 6f 72 2c 20 24 6d 61 ?P<email>.+?)>$/u',.$author,.$ma
22c60 74 63 68 29 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 56 61 6c 69 64 45 6d 61 69 6c 28 tch)).{.if.($this->isValidEmail(
22c80 24 6d 61 74 63 68 5b 27 65 6d 61 69 6c 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 $match['email'])).{.return.array
22ca0 28 0a 27 6e 61 6d 65 27 20 3d 3e 20 74 72 69 6d 28 24 6d 61 74 63 68 5b 27 6e 61 6d 65 27 5d 29 (.'name'.=>.trim($match['name'])
22cc0 2c 0a 27 65 6d 61 69 6c 27 20 3d 3e 20 24 6d 61 74 63 68 5b 27 65 6d 61 69 6c 27 5d 2c 0a 29 3b ,.'email'.=>.$match['email'],.);
22ce0 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 .}.}..throw.new.\InvalidArgument
22d00 45 78 63 65 70 74 69 6f 6e 28 0a 27 49 6e 76 61 6c 69 64 20 61 75 74 68 6f 72 20 73 74 72 69 6e Exception(.'Invalid.author.strin
22d20 67 2e 20 20 4d 75 73 74 20 62 65 20 69 6e 20 74 68 65 20 66 6f 72 6d 61 74 3a 20 27 2e 0a 27 4a g...Must.be.in.the.format:.'..'J
22d40 6f 68 6e 20 53 6d 69 74 68 20 3c 6a 6f 68 6e 40 65 78 61 6d 70 6c 65 2e 63 6f 6d 3e 27 0a 29 3b ohn.Smith.<john@example.com>'.);
22d60 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 .}..protected.function.findPacka
22d80 67 65 73 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 52 65 ges($name).{.return.$this->getRe
22da0 70 6f 73 28 29 2d 3e 73 65 61 72 63 68 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 pos()->search($name);.}..protect
22dc0 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 28 29 0a 7b 0a 69 66 20 28 21 24 74 ed.function.getRepos().{.if.(!$t
22de0 68 69 73 2d 3e 72 65 70 6f 73 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 20 3d 20 6e 65 77 his->repos).{.$this->repos.=.new
22e00 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 5f 6d 65 72 67 65 .CompositeRepository(array_merge
22e20 28 0a 61 72 72 61 79 28 6e 65 77 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 29 2c (.array(new.PlatformRepository),
22e40 0a 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 64 65 66 61 75 6c 74 52 65 70 6f 73 .RepositoryFactory::defaultRepos
22e60 28 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 29 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ($this->getIO()).));.}..return.$
22e80 74 68 69 73 2d 3e 72 65 70 6f 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 this->repos;.}..protected.functi
22ea0 6f 6e 20 64 65 74 65 72 6d 69 6e 65 52 65 71 75 69 72 65 6d 65 6e 74 73 28 49 6e 70 75 74 49 6e on.determineRequirements(InputIn
22ec0 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 terface.$input,.OutputInterface.
22ee0 24 6f 75 74 70 75 74 2c 20 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 2c 20 24 70 $output,.$requires.=.array(),.$p
22f00 68 70 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 72 65 71 75 69 72 65 hpVersion.=.null).{.if.($require
22f20 73 29 20 7b 0a 24 72 65 71 75 69 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a s).{.$requires.=.$this->normaliz
22f40 65 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 72 65 71 75 69 72 65 73 29 3b 0a 24 72 65 73 75 6c eRequirements($requires);.$resul
22f60 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 t.=.array();.$io.=.$this->getIO(
22f80 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 );..foreach.($requires.as.$requi
22fa0 72 65 6d 65 6e 74 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 72 65 71 75 69 72 65 6d 65 6e rement).{.if.(!isset($requiremen
22fc0 74 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 0a 20 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 t['version'])).{...$version.=.$t
22fe0 68 69 73 2d 3e 66 69 6e 64 42 65 73 74 56 65 72 73 69 6f 6e 46 6f 72 50 61 63 6b 61 67 65 28 24 his->findBestVersionForPackage($
23000 69 6e 70 75 74 2c 20 24 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 6e 61 6d 65 27 5d 2c 20 24 70 68 input,.$requirement['name'],.$ph
23020 70 56 65 72 73 69 6f 6e 29 3b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 76 65 72 73 69 6f 6e pVersion);.$requirement['version
23040 27 5d 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 '].=.$version;..$io->writeError(
23060 73 70 72 69 6e 74 66 28 0a 27 55 73 69 6e 67 20 76 65 72 73 69 6f 6e 20 3c 69 6e 66 6f 3e 25 73 sprintf(.'Using.version.<info>%s
23080 3c 2f 69 6e 66 6f 3e 20 66 6f 72 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 0a 24 72 </info>.for.<info>%s</info>',.$r
230a0 65 71 75 69 72 65 6d 65 6e 74 5b 27 76 65 72 73 69 6f 6e 27 5d 2c 0a 24 72 65 71 75 69 72 65 6d equirement['version'],.$requirem
230c0 65 6e 74 5b 27 6e 61 6d 65 27 5d 0a 29 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 24 ent['name'].));.}..$result[].=.$
230e0 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 6e 61 6d 65 27 5d 20 2e 20 27 20 27 20 2e 20 24 72 65 71 requirement['name']...'.'...$req
23100 75 69 72 65 6d 65 6e 74 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 uirement['version'];.}..return.$
23120 72 65 73 75 6c 74 3b 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 result;.}..$versionParser.=.new.
23140 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 VersionParser();.$io.=.$this->ge
23160 74 49 4f 28 29 3b 0a 77 68 69 6c 65 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 20 tIO();.while.(null.!==.$package.
23180 3d 20 24 69 6f 2d 3e 61 73 6b 28 27 53 65 61 72 63 68 20 66 6f 72 20 61 20 70 61 63 6b 61 67 65 =.$io->ask('Search.for.a.package
231a0 3a 20 27 29 29 20 7b 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 50 61 :.')).{.$matches.=.$this->findPa
231c0 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 6d 61 ckages($package);..if.(count($ma
231e0 74 63 68 65 73 29 29 20 7b 0a 24 65 78 61 63 74 4d 61 74 63 68 20 3d 20 6e 75 6c 6c 3b 0a 24 63 tches)).{.$exactMatch.=.null;.$c
23200 68 6f 69 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 hoices.=.array();.foreach.($matc
23220 68 65 73 20 61 73 20 24 70 6f 73 69 74 69 6f 6e 20 3d 3e 20 24 66 6f 75 6e 64 50 61 63 6b 61 67 hes.as.$position.=>.$foundPackag
23240 65 29 20 7b 0a 24 63 68 6f 69 63 65 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 20 3c 69 6e 66 e).{.$choices[].=.sprintf('.<inf
23260 6f 3e 25 35 73 3c 2f 69 6e 66 6f 3e 20 25 73 27 2c 20 22 5b 24 70 6f 73 69 74 69 6f 6e 5d 22 2c o>%5s</info>.%s',."[$position]",
23280 20 24 66 6f 75 6e 64 50 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 29 3b 0a 69 66 20 28 24 66 6f .$foundPackage['name']);.if.($fo
232a0 75 6e 64 50 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 undPackage['name'].===.$package)
232c0 20 7b 0a 24 65 78 61 63 74 4d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a .{.$exactMatch.=.true;.break;.}.
232e0 7d 0a 0a 0a 20 69 66 20 28 21 24 65 78 61 63 74 4d 61 74 63 68 29 20 7b 0a 24 69 6f 2d 3e 77 72 }....if.(!$exactMatch).{.$io->wr
23300 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 28 0a 27 27 2c 0a 73 70 72 69 6e 74 66 28 27 46 6f 75 iteError(array(.'',.sprintf('Fou
23320 6e 64 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 70 61 63 6b 61 67 65 73 20 6d 61 74 63 nd.<info>%s</info>.packages.matc
23340 68 69 6e 67 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 63 6f 75 6e 74 28 24 6d 61 hing.<info>%s</info>',.count($ma
23360 74 63 68 65 73 29 2c 20 24 70 61 63 6b 61 67 65 29 2c 0a 27 27 2c 0a 29 29 3b 0a 0a 24 69 6f 2d tches),.$package),.'',.));..$io-
23380 3e 77 72 69 74 65 45 72 72 6f 72 28 24 63 68 6f 69 63 65 73 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 >writeError($choices);.$io->writ
233a0 65 45 72 72 6f 72 28 27 27 29 3b 0a 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 66 75 6e 63 74 69 eError('');..$validator.=.functi
233c0 6f 6e 20 28 24 73 65 6c 65 63 74 69 6f 6e 29 20 75 73 65 20 28 24 6d 61 74 63 68 65 73 2c 20 24 on.($selection).use.($matches,.$
233e0 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 20 7b 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 73 65 6c versionParser).{.if.(''.===.$sel
23400 65 63 74 69 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 69 ection).{.return.false;.}..if.(i
23420 73 5f 6e 75 6d 65 72 69 63 28 24 73 65 6c 65 63 74 69 6f 6e 29 20 26 26 20 69 73 73 65 74 28 24 s_numeric($selection).&&.isset($
23440 6d 61 74 63 68 65 73 5b 28 69 6e 74 29 20 24 73 65 6c 65 63 74 69 6f 6e 5d 29 29 20 7b 0a 24 70 matches[(int).$selection])).{.$p
23460 61 63 6b 61 67 65 20 3d 20 24 6d 61 74 63 68 65 73 5b 28 69 6e 74 29 20 24 73 65 6c 65 63 74 69 ackage.=.$matches[(int).$selecti
23480 6f 6e 5d 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 3b 0a 7d on];..return.$package['name'];.}
234a0 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2a 28 3f 50 3c 6e 61 6d 65 3e ..if.(preg_match('{^\s*(?P<name>
234c0 5b 5c 53 2f 5d 2b 29 28 3f 3a 5c 73 2b 28 3f 50 3c 76 65 72 73 69 6f 6e 3e 5c 53 2b 29 29 3f 5c [\S/]+)(?:\s+(?P<version>\S+))?\
234e0 73 2a 24 7d 27 2c 20 24 73 65 6c 65 63 74 69 6f 6e 2c 20 24 70 61 63 6b 61 67 65 4d 61 74 63 68 s*$}',.$selection,.$packageMatch
23500 65 73 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 4d 61 74 63 68 65 73 es)).{.if.(isset($packageMatches
23520 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 0a 0a 0a 20 24 76 65 72 73 69 6f 6e 50 61 72 73 ['version'])).{.....$versionPars
23540 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 70 61 63 6b 61 67 65 4d 61 74 er->parseConstraints($packageMat
23560 63 68 65 73 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 ches['version']);..return.$packa
23580 67 65 4d 61 74 63 68 65 73 5b 27 6e 61 6d 65 27 5d 2e 27 20 27 2e 24 70 61 63 6b 61 67 65 4d 61 geMatches['name'].'.'.$packageMa
235a0 74 63 68 65 73 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 24 70 tches['version'];.}....return.$p
235c0 61 63 6b 61 67 65 4d 61 74 63 68 65 73 5b 27 6e 61 6d 65 27 5d 3b 0a 7d 0a 0a 74 68 72 6f 77 20 ackageMatches['name'];.}..throw.
235e0 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 27 4e 6f 74 20 61 20 76 61 6c 69 64 20 73 65 6c 65 new.\Exception('Not.a.valid.sele
23600 63 74 69 6f 6e 27 29 3b 0a 7d 3b 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 69 6f 2d 3e 61 73 6b ction');.};..$package.=.$io->ask
23620 41 6e 64 56 61 6c 69 64 61 74 65 28 0a 27 45 6e 74 65 72 20 70 61 63 6b 61 67 65 20 23 20 74 6f AndValidate(.'Enter.package.#.to
23640 20 61 64 64 2c 20 6f 72 20 74 68 65 20 63 6f 6d 70 6c 65 74 65 20 70 61 63 6b 61 67 65 20 6e 61 .add,.or.the.complete.package.na
23660 6d 65 20 69 66 20 69 74 20 69 73 20 6e 6f 74 20 6c 69 73 74 65 64 3a 20 27 2c 0a 24 76 61 6c 69 me.if.it.is.not.listed:.',.$vali
23680 64 61 74 6f 72 2c 0a 33 2c 0a 66 61 6c 73 65 0a 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 dator,.3,.false.);.}....if.(fals
236a0 65 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 e.!==.$package.&&.false.===.strp
236c0 6f 73 28 24 70 61 63 6b 61 67 65 2c 20 27 20 27 29 29 20 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 os($package,.'.')).{.$validator.
236e0 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 69 6e 70 75 74 29 20 7b 0a 24 69 6e 70 75 74 20 3d 20 74 =.function.($input).{.$input.=.t
23700 72 69 6d 28 24 69 6e 70 75 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 69 6e 70 75 74 20 3f 3a 20 66 rim($input);..return.$input.?:.f
23720 61 6c 73 65 3b 0a 7d 3b 0a 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 69 6f 2d 3e 61 73 6b alse;.};..$constraint.=.$io->ask
23740 41 6e 64 56 61 6c 69 64 61 74 65 28 0a 27 45 6e 74 65 72 20 74 68 65 20 76 65 72 73 69 6f 6e 20 AndValidate(.'Enter.the.version.
23760 63 6f 6e 73 74 72 61 69 6e 74 20 74 6f 20 72 65 71 75 69 72 65 20 28 6f 72 20 6c 65 61 76 65 20 constraint.to.require.(or.leave.
23780 62 6c 61 6e 6b 20 74 6f 20 75 73 65 20 74 68 65 20 6c 61 74 65 73 74 20 76 65 72 73 69 6f 6e 29 blank.to.use.the.latest.version)
237a0 3a 20 27 2c 0a 24 76 61 6c 69 64 61 74 6f 72 2c 0a 33 2c 0a 66 61 6c 73 65 0a 29 3b 0a 0a 69 66 :.',.$validator,.3,.false.);..if
237c0 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 63 6f 6e 73 .(false.===.$constraint).{.$cons
237e0 74 72 61 69 6e 74 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 42 65 73 74 56 65 72 73 69 6f 6e 46 traint.=.$this->findBestVersionF
23800 6f 72 50 61 63 6b 61 67 65 28 24 69 6e 70 75 74 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 70 68 70 orPackage($input,.$package,.$php
23820 56 65 72 73 69 6f 6e 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e Version);..$io->writeError(sprin
23840 74 66 28 0a 27 55 73 69 6e 67 20 76 65 72 73 69 6f 6e 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 tf(.'Using.version.<info>%s</inf
23860 6f 3e 20 66 6f 72 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 0a 24 63 6f 6e 73 74 72 o>.for.<info>%s</info>',.$constr
23880 61 69 6e 74 2c 0a 24 70 61 63 6b 61 67 65 0a 29 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 2e aint,.$package.));.}..$package..
238a0 3d 20 27 20 27 2e 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 =.'.'.$constraint;.}..if.(false.
238c0 21 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 72 65 71 75 69 72 65 73 5b 5d 20 3d 20 24 70 !==.$package).{.$requires[].=.$p
238e0 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 73 3b ackage;.}.}.}..return.$requires;
23900 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 41 75 74 .}..protected.function.formatAut
23920 68 6f 72 73 28 24 61 75 74 68 6f 72 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 74 68 hors($author).{.return.array($th
23940 69 73 2d 3e 70 61 72 73 65 41 75 74 68 6f 72 53 74 72 69 6e 67 28 24 61 75 74 68 6f 72 29 29 3b is->parseAuthorString($author));
23960 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 52 65 71 .}..protected.function.formatReq
23980 75 69 72 65 6d 65 6e 74 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 0a 7b uirements(array.$requirements).{
239a0 0a 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 71 75 69 72 65 6d 65 .$requires.=.array();.$requireme
239c0 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 52 65 71 75 69 72 65 6d 65 6e nts.=.$this->normalizeRequiremen
239e0 74 73 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 ts($requirements);.foreach.($req
23a00 75 69 72 65 6d 65 6e 74 73 20 61 73 20 24 72 65 71 75 69 72 65 6d 65 6e 74 29 20 7b 0a 24 72 65 uirements.as.$requirement).{.$re
23a20 71 75 69 72 65 73 5b 24 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 6e 61 6d 65 27 5d 5d 20 3d 20 24 quires[$requirement['name']].=.$
23a40 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 requirement['version'];.}..retur
23a60 6e 20 24 72 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 n.$requires;.}..protected.functi
23a80 6f 6e 20 67 65 74 47 69 74 43 6f 6e 66 69 67 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d on.getGitConfig().{.if.(null.!==
23aa0 20 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 .$this->gitConfig).{.return.$thi
23ac0 73 2d 3e 67 69 74 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 24 66 69 6e 64 65 72 20 3d 20 6e 65 77 20 45 s->gitConfig;.}..$finder.=.new.E
23ae0 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 28 29 3b 0a 24 67 69 74 42 69 6e 20 3d 20 24 66 69 xecutableFinder();.$gitBin.=.$fi
23b00 6e 64 65 72 2d 3e 66 69 6e 64 28 27 67 69 74 27 29 3b 0a 0a 24 63 6d 64 20 3d 20 6e 65 77 20 50 nder->find('git');..$cmd.=.new.P
23b20 72 6f 63 65 73 73 28 73 70 72 69 6e 74 66 28 27 25 73 20 63 6f 6e 66 69 67 20 2d 6c 27 2c 20 50 rocess(sprintf('%s.config.-l',.P
23b40 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 67 69 74 42 69 6e 29 29 rocessExecutor::escape($gitBin))
23b60 29 3b 0a 24 63 6d 64 2d 3e 72 75 6e 28 29 3b 0a 0a 69 66 20 28 24 63 6d 64 2d 3e 69 73 53 75 63 );.$cmd->run();..if.($cmd->isSuc
23b80 63 65 73 73 66 75 6c 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 20 3d 20 cessful()).{.$this->gitConfig.=.
23ba0 61 72 72 61 79 28 29 3b 0a 70 72 65 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 27 7b 5e 28 5b 5e 3d 5d array();.preg_match_all('{^([^=]
23bc0 2b 29 3d 28 2e 2a 29 24 7d 6d 27 2c 20 24 63 6d 64 2d 3e 67 65 74 4f 75 74 70 75 74 28 29 2c 20 +)=(.*)$}m',.$cmd->getOutput(),.
23be0 24 6d 61 74 63 68 65 73 2c 20 50 52 45 47 5f 53 45 54 5f 4f 52 44 45 52 29 3b 0a 66 6f 72 65 61 $matches,.PREG_SET_ORDER);.forea
23c00 63 68 20 28 24 6d 61 74 63 68 65 73 20 61 73 20 24 6d 61 74 63 68 29 20 7b 0a 24 74 68 69 73 2d ch.($matches.as.$match).{.$this-
23c20 3e 67 69 74 43 6f 6e 66 69 67 5b 24 6d 61 74 63 68 5b 31 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 32 >gitConfig[$match[1]].=.$match[2
23c40 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 3b 0a 7d ];.}..return.$this->gitConfig;.}
23c60 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 20 3d 20 61 72 72 61 ..return.$this->gitConfig.=.arra
23c80 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 y();.}..................protecte
23ca0 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 56 65 6e 64 6f 72 49 67 6e 6f 72 65 28 24 69 67 6e 6f d.function.hasVendorIgnore($igno
23cc0 72 65 46 69 6c 65 2c 20 24 76 65 6e 64 6f 72 20 3d 20 27 76 65 6e 64 6f 72 27 29 0a 7b 0a 69 66 reFile,.$vendor.=.'vendor').{.if
23ce0 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 29 29 20 7b 0a 72 .(!file_exists($ignoreFile)).{.r
23d00 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 61 74 74 65 72 6e 20 3d 20 73 70 72 69 6e eturn.false;.}..$pattern.=.sprin
23d20 74 66 28 27 7b 5e 2f 3f 25 73 28 2f 5c 2a 3f 29 3f 24 7d 27 2c 20 70 72 65 67 5f 71 75 6f 74 65 tf('{^/?%s(/\*?)?$}',.preg_quote
23d40 28 24 76 65 6e 64 6f 72 29 29 3b 0a 0a 24 6c 69 6e 65 73 20 3d 20 66 69 6c 65 28 24 69 67 6e 6f ($vendor));..$lines.=.file($igno
23d60 72 65 46 69 6c 65 2c 20 46 49 4c 45 5f 49 47 4e 4f 52 45 5f 4e 45 57 5f 4c 49 4e 45 53 29 3b 0a reFile,.FILE_IGNORE_NEW_LINES);.
23d80 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 69 66 20 28 foreach.($lines.as.$line).{.if.(
23da0 70 72 65 67 5f 6d 61 74 63 68 28 24 70 61 74 74 65 72 6e 2c 20 24 6c 69 6e 65 29 29 20 7b 0a 72 preg_match($pattern,.$line)).{.r
23dc0 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d eturn.true;.}.}..return.false;.}
23de0 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 52 65 ..protected.function.normalizeRe
23e00 71 75 69 72 65 6d 65 6e 74 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 0a quirements(array.$requirements).
23e20 7b 0a 24 70 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b {.$parser.=.new.VersionParser();
23e40 0a 0a 72 65 74 75 72 6e 20 24 70 61 72 73 65 72 2d 3e 70 61 72 73 65 4e 61 6d 65 56 65 72 73 69 ..return.$parser->parseNameVersi
23e60 6f 6e 50 61 69 72 73 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 70 72 6f 74 65 onPairs($requirements);.}..prote
23e80 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 56 65 6e 64 6f 72 49 67 6e 6f 72 65 28 24 69 cted.function.addVendorIgnore($i
23ea0 67 6e 6f 72 65 46 69 6c 65 2c 20 24 76 65 6e 64 6f 72 20 3d 20 27 2f 76 65 6e 64 6f 72 2f 27 29 gnoreFile,.$vendor.=.'/vendor/')
23ec0 0a 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 22 22 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 .{.$contents.=."";.if.(file_exis
23ee0 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 29 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 66 ts($ignoreFile)).{.$contents.=.f
23f00 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 29 3b 0a 0a ile_get_contents($ignoreFile);..
23f20 69 66 20 28 22 5c 6e 22 20 21 3d 3d 20 73 75 62 73 74 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 30 if.("\n".!==.substr($contents,.0
23f40 2c 20 2d 31 29 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 2e 3d 20 22 5c 6e 22 3b 0a 7d 0a 7d 0a ,.-1)).{.$contents..=."\n";.}.}.
23f60 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 2c 20 .file_put_contents($ignoreFile,.
23f80 24 63 6f 6e 74 65 6e 74 73 20 2e 20 24 76 65 6e 64 6f 72 2e 20 22 5c 6e 22 29 3b 0a 7d 0a 0a 70 $contents...$vendor.."\n");.}..p
23fa0 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 45 6d 61 69 6c 28 24 rotected.function.isValidEmail($
23fc0 65 6d 61 69 6c 29 0a 7b 0a 0a 20 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 email).{...if.(!function_exists(
23fe0 27 66 69 6c 74 65 72 5f 76 61 72 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 'filter_var')).{.return.true;.}.
24000 0a 0a 20 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 33 30 33 29 20 7b ...if.(PHP_VERSION_ID.<.50303).{
24020 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d .return.true;.}..return.false.!=
24040 3d 20 66 69 6c 74 65 72 5f 76 61 72 28 24 65 6d 61 69 6c 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 =.filter_var($email,.FILTER_VALI
24060 44 41 54 45 5f 45 4d 41 49 4c 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e DATE_EMAIL);.}..private.function
24080 20 67 65 74 50 6f 6f 6c 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 29 0a .getPool(InputInterface.$input).
240a0 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 70 6f 6f 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 70 6f 6f {.if.(!$this->pool).{.$this->poo
240c0 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c 28 24 74 68 69 73 2d 3e 67 65 74 4d 69 6e 69 6d 75 6d 53 74 l.=.new.Pool($this->getMinimumSt
240e0 61 62 69 6c 69 74 79 28 24 69 6e 70 75 74 29 29 3b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 61 ability($input));.$this->pool->a
24100 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6f 73 28 29 29 3b ddRepository($this->getRepos());
24120 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 3b 0a 7d 0a 0a 70 72 69 76 61 .}..return.$this->pool;.}..priva
24140 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 te.function.getMinimumStability(
24160 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 29 0a 7b 0a 69 66 20 28 24 69 6e InputInterface.$input).{.if.($in
24180 70 75 74 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 74 79 27 29 29 20 7b 0a 72 put->hasOption('stability')).{.r
241a0 65 74 75 72 6e 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 eturn.$input->getOption('stabili
241c0 74 79 27 29 20 3f 3a 20 27 73 74 61 62 6c 65 27 3b 0a 7d 0a 0a 24 66 69 6c 65 20 3d 20 46 61 63 ty').?:.'stable';.}..$file.=.Fac
241e0 74 6f 72 79 3a 3a 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 3b 0a 69 66 20 28 69 73 5f tory::getComposerFile();.if.(is_
24200 66 69 6c 65 28 24 66 69 6c 65 29 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 66 69 6c 65 file($file).&&.is_readable($file
24220 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6d 70 6f 73 65 72 20 3d 20 6a 73 6f 6e 5f 64 ).&&.is_array($composer.=.json_d
24240 65 63 6f 64 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 29 2c 20 ecode(file_get_contents($file),.
24260 74 72 75 65 29 29 29 20 7b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6d 70 6f 73 65 72 5b 27 true))).{.if.(!empty($composer['
24280 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 minimum-stability'])).{.return.$
242a0 63 6f 6d 70 6f 73 65 72 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 3b 0a 7d composer['minimum-stability'];.}
242c0 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 73 74 61 62 6c 65 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .}..return.'stable';.}..........
242e0 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 42 65 73 74 56 65 72 73 ...private.function.findBestVers
24300 69 6f 6e 46 6f 72 50 61 63 6b 61 67 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e ionForPackage(InputInterface.$in
24320 70 75 74 2c 20 24 6e 61 6d 65 2c 20 24 70 68 70 56 65 72 73 69 6f 6e 29 0a 7b 0a 0a 20 24 76 65 put,.$name,.$phpVersion).{...$ve
24340 72 73 69 6f 6e 53 65 6c 65 63 74 6f 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 53 65 6c 65 63 rsionSelector.=.new.VersionSelec
24360 74 6f 72 28 24 74 68 69 73 2d 3e 67 65 74 50 6f 6f 6c 28 24 69 6e 70 75 74 29 29 3b 0a 24 70 61 tor($this->getPool($input));.$pa
24380 63 6b 61 67 65 20 3d 20 24 76 65 72 73 69 6f 6e 53 65 6c 65 63 74 6f 72 2d 3e 66 69 6e 64 42 65 ckage.=.$versionSelector->findBe
243a0 73 74 43 61 6e 64 69 64 61 74 65 28 24 6e 61 6d 65 2c 20 6e 75 6c 6c 2c 20 24 70 68 70 56 65 72 stCandidate($name,.null,.$phpVer
243c0 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 20 7b 0a 0a 20 69 66 20 28 24 sion);..if.(!$package).{...if.($
243e0 70 68 70 56 65 72 73 69 6f 6e 20 26 26 20 24 76 65 72 73 69 6f 6e 53 65 6c 65 63 74 6f 72 2d 3e phpVersion.&&.$versionSelector->
24400 66 69 6e 64 42 65 73 74 43 61 6e 64 69 64 61 74 65 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f findBestCandidate($name)).{.thro
24420 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 w.new.\InvalidArgumentException(
24440 73 70 72 69 6e 74 66 28 0a 27 43 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 70 61 63 6b 61 67 65 sprintf(.'Could.not.find.package
24460 20 25 73 20 61 74 20 61 6e 79 20 76 65 72 73 69 6f 6e 20 6d 61 74 63 68 69 6e 67 20 79 6f 75 72 .%s.at.any.version.matching.your
24480 20 50 48 50 20 76 65 72 73 69 6f 6e 20 25 73 27 2c 20 24 6e 61 6d 65 2c 20 24 70 68 70 56 65 72 .PHP.version.%s',.$name,.$phpVer
244a0 73 69 6f 6e 0a 29 29 3b 0a 7d 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 sion.));.}.throw.new.\InvalidArg
244c0 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 43 6f 75 6c 64 20 6e umentException(sprintf(.'Could.n
244e0 6f 74 20 66 69 6e 64 20 70 61 63 6b 61 67 65 20 25 73 20 61 74 20 61 6e 79 20 76 65 72 73 69 6f ot.find.package.%s.at.any.versio
24500 6e 20 66 6f 72 20 79 6f 75 72 20 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 20 28 25 73 n.for.your.minimum-stability.(%s
24520 29 2e 20 43 68 65 63 6b 20 74 68 65 20 70 61 63 6b 61 67 65 20 73 70 65 6c 6c 69 6e 67 20 6f 72 )..Check.the.package.spelling.or
24540 20 79 6f 75 72 20 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 2c 0a 24 6e 61 6d 65 2c .your.minimum-stability',.$name,
24560 0a 24 74 68 69 73 2d 3e 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 24 69 6e 70 .$this->getMinimumStability($inp
24580 75 74 29 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 53 65 6c 65 63 74 ut).));.}..return.$versionSelect
245a0 6f 72 2d 3e 66 69 6e 64 52 65 63 6f 6d 6d 65 6e 64 65 64 52 65 71 75 69 72 65 56 65 72 73 69 6f or->findRecommendedRequireVersio
245c0 6e 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a n($package);.}.}.<?php..........
245e0 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 ..namespace.Composer\Command;..u
24600 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f se.Composer\Installer;.use.Compo
24620 73 65 72 5c 50 6c 75 67 69 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d ser\Plugin\CommandEvent;.use.Com
24640 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 53 poser\Plugin\PluginEvents;.use.S
24660 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 ymfony\Component\Console\Input\I
24680 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f nputInterface;.use.Symfony\Compo
246a0 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a nent\Console\Input\InputOption;.
246c0 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e use.Symfony\Component\Console\In
246e0 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 put\InputArgument;.use.Symfony\C
24700 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e omponent\Console\Output\OutputIn
24720 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 43 6f 6d terface;........class.InstallCom
24740 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 mand.extends.BaseCommand.{.prote
24760 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 cted.function.configure().{.$thi
24780 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 69 6e 73 74 61 6c 6c 27 29 0a 2d 3e 73 65 74 44 65 73 63 s.->setName('install').->setDesc
247a0 72 69 70 74 69 6f 6e 28 27 49 6e 73 74 61 6c 6c 73 20 74 68 65 20 70 72 6f 6a 65 63 74 20 64 65 ription('Installs.the.project.de
247c0 70 65 6e 64 65 6e 63 69 65 73 20 66 72 6f 6d 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 2e 6c 6f 63 pendencies.from.the.composer.loc
247e0 6b 20 66 69 6c 65 20 69 66 20 70 72 65 73 65 6e 74 2c 20 6f 72 20 66 61 6c 6c 73 20 62 61 63 6b k.file.if.present,.or.falls.back
24800 20 6f 6e 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2e 27 29 0a 2d 3e 73 65 74 44 65 .on.the.composer.json.').->setDe
24820 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 finition(array(.new.InputOption(
24840 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 'prefer-source',.null,.InputOpti
24860 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 74 61 6c 6c 61 on::VALUE_NONE,.'Forces.installa
24880 74 69 6f 6e 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 20 73 6f 75 72 63 65 73 20 77 68 65 6e 20 70 tion.from.package.sources.when.p
248a0 6f 73 73 69 62 6c 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 56 43 53 20 69 6e 66 6f 72 6d 61 74 69 ossible,.including.VCS.informati
248c0 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 64 on.'),.new.InputOption('prefer-d
248e0 69 73 74 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e ist',.null,.InputOption::VALUE_N
24900 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 70 ONE,.'Forces.installation.from.p
24920 61 63 6b 61 67 65 20 64 69 73 74 20 65 76 65 6e 20 66 6f 72 20 64 65 76 20 76 65 72 73 69 6f 6e ackage.dist.even.for.dev.version
24940 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 72 79 2d 72 75 6e 27 2c s.'),.new.InputOption('dry-run',
24960 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 .null,.InputOption::VALUE_NONE,.
24980 27 4f 75 74 70 75 74 73 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 62 75 74 20 77 69 6c 6c 'Outputs.the.operations.but.will
249a0 20 6e 6f 74 20 65 78 65 63 75 74 65 20 61 6e 79 74 68 69 6e 67 20 28 69 6d 70 6c 69 63 69 74 6c .not.execute.anything.(implicitl
249c0 79 20 65 6e 61 62 6c 65 73 20 2d 2d 76 65 72 62 6f 73 65 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 y.enables.--verbose).'),.new.Inp
249e0 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f utOption('dev',.null,.InputOptio
24a00 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 45 6e 61 62 6c 65 73 20 69 6e 73 74 61 6c 6c 61 n::VALUE_NONE,.'Enables.installa
24a20 74 69 6f 6e 20 6f 66 20 72 65 71 75 69 72 65 2d 64 65 76 20 70 61 63 6b 61 67 65 73 20 28 65 6e tion.of.require-dev.packages.(en
24a40 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2c 20 6f 6e 6c 79 20 70 72 65 73 65 6e 74 20 66 abled.by.default,.only.present.f
24a60 6f 72 20 42 43 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 or.BC).'),.new.InputOption('no-d
24a80 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f ev',.null,.InputOption::VALUE_NO
24aa0 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 72 65 NE,.'Disables.installation.of.re
24ac0 71 75 69 72 65 2d 64 65 76 20 70 61 63 6b 61 67 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 quire-dev.packages.'),.new.Input
24ae0 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 Option('no-plugins',.null,.Input
24b00 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 61 6c Option::VALUE_NONE,.'Disables.al
24b20 6c 20 70 6c 75 67 69 6e 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e l.plugins.'),.new.InputOption('n
24b40 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 o-custom-installers',.null,.Inpu
24b60 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 45 50 52 45 43 41 54 45 44 tOption::VALUE_NONE,.'DEPRECATED
24b80 3a 20 55 73 65 20 6e 6f 2d 70 6c 75 67 69 6e 73 20 69 6e 73 74 65 61 64 2e 27 29 2c 0a 6e 65 77 :.Use.no-plugins.instead.'),.new
24ba0 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 61 75 74 6f 6c 6f 61 64 65 72 27 2c 20 6e 75 .InputOption('no-autoloader',.nu
24bc0 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 6b ll,.InputOption::VALUE_NONE,.'Sk
24be0 69 70 73 20 61 75 74 6f 6c 6f 61 64 65 72 20 67 65 6e 65 72 61 74 69 6f 6e 27 29 2c 0a 6e 65 77 ips.autoloader.generation'),.new
24c00 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 2c 20 6e 75 6c 6c 2c .InputOption('no-scripts',.null,
24c20 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 6b 69 70 73 .InputOption::VALUE_NONE,.'Skips
24c40 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 6c 6c 20 73 63 72 69 70 74 73 20 64 65 .the.execution.of.all.scripts.de
24c60 66 69 6e 65 64 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 2e 27 29 2c 0a fined.in.composer.json.file.'),.
24c80 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 27 2c 20 6e new.InputOption('no-progress',.n
24ca0 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 ull,.InputOption::VALUE_NONE,.'D
24cc0 6f 20 6e 6f 74 20 6f 75 74 70 75 74 20 64 6f 77 6e 6c 6f 61 64 20 70 72 6f 67 72 65 73 73 2e 27 o.not.output.download.progress.'
24ce0 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 2c 20 27 76 ),.new.InputOption('verbose',.'v
24d00 7c 76 76 7c 76 76 76 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e |vv|vvv',.InputOption::VALUE_NON
24d20 45 2c 20 27 53 68 6f 77 73 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 20 69 6e 63 6c 75 64 69 6e 67 E,.'Shows.more.details.including
24d40 20 6e 65 77 20 63 6f 6d 6d 69 74 73 20 70 75 6c 6c 65 64 20 69 6e 20 77 68 65 6e 20 75 70 64 61 .new.commits.pulled.in.when.upda
24d60 74 69 6e 67 20 70 61 63 6b 61 67 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f ting.packages.'),.new.InputOptio
24d80 6e 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 2c 20 27 6f 27 2c 20 49 6e n('optimize-autoloader',.'o',.In
24da0 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4f 70 74 69 6d 69 7a 65 putOption::VALUE_NONE,.'Optimize
24dc0 20 61 75 74 6f 6c 6f 61 64 65 72 20 64 75 72 69 6e 67 20 61 75 74 6f 6c 6f 61 64 65 72 20 64 75 .autoloader.during.autoloader.du
24de0 6d 70 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 63 6c 61 73 73 6d 61 70 2d mp'),.new.InputOption('classmap-
24e00 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 2c 20 27 61 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e authoritative',.'a',.InputOption
24e20 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 75 74 6f 6c 6f 61 64 20 63 6c 61 73 73 65 73 20 ::VALUE_NONE,.'Autoload.classes.
24e40 66 72 6f 6d 20 74 68 65 20 63 6c 61 73 73 6d 61 70 20 6f 6e 6c 79 2e 20 49 6d 70 6c 69 63 69 74 from.the.classmap.only..Implicit
24e60 6c 79 20 65 6e 61 62 6c 65 73 20 60 2d 2d 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 ly.enables.`--optimize-autoloade
24e80 72 60 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 69 67 6e 6f 72 65 2d 70 r`.'),.new.InputOption('ignore-p
24ea0 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e latform-reqs',.null,.InputOption
24ec0 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 49 67 6e 6f 72 65 20 70 6c 61 74 66 6f 72 6d 20 72 ::VALUE_NONE,.'Ignore.platform.r
24ee0 65 71 75 69 72 65 6d 65 6e 74 73 20 28 70 68 70 20 26 20 65 78 74 2d 20 70 61 63 6b 61 67 65 73 equirements.(php.&.ext-.packages
24f00 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 ).'),.new.InputArgument('package
24f20 73 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e s',.InputArgument::IS_ARRAY.|.In
24f40 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 53 68 6f 75 6c 64 20 6e putArgument::OPTIONAL,.'Should.n
24f60 6f 74 20 62 65 20 70 72 6f 76 69 64 65 64 2c 20 75 73 65 20 63 6f 6d 70 6f 73 65 72 20 72 65 71 ot.be.provided,.use.composer.req
24f80 75 69 72 65 20 69 6e 73 74 65 61 64 20 74 6f 20 61 64 64 20 61 20 67 69 76 65 6e 20 70 61 63 6b uire.instead.to.add.a.given.pack
24fa0 61 67 65 20 74 6f 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 age.to.composer.json.'),.)).->se
24fc0 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 69 6e 73 74 61 6c 6c 3c 2f tHelp(<<<EOT.The.<info>install</
24fe0 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 72 65 61 64 73 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 info>.command.reads.the.composer
25000 2e 6c 6f 63 6b 20 66 69 6c 65 20 66 72 6f 6d 0a 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 65 .lock.file.from.the.current.dire
25020 63 74 6f 72 79 2c 20 70 72 6f 63 65 73 73 65 73 20 69 74 2c 20 61 6e 64 20 64 6f 77 6e 6c 6f 61 ctory,.processes.it,.and.downloa
25040 64 73 20 61 6e 64 20 69 6e 73 74 61 6c 6c 73 20 61 6c 6c 20 74 68 65 0a 6c 69 62 72 61 72 69 65 ds.and.installs.all.the.librarie
25060 73 20 61 6e 64 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 6f 75 74 6c 69 6e 65 64 20 69 6e 20 74 s.and.dependencies.outlined.in.t
25080 68 61 74 20 66 69 6c 65 2e 20 49 66 20 74 68 65 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f 74 0a 65 hat.file..If.the.file.does.not.e
250a0 78 69 73 74 20 69 74 20 77 69 6c 6c 20 6c 6f 6f 6b 20 66 6f 72 20 63 6f 6d 70 6f 73 65 72 2e 6a xist.it.will.look.for.composer.j
250c0 73 6f 6e 20 61 6e 64 20 64 6f 20 74 68 65 20 73 61 6d 65 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 son.and.do.the.same...<info>php.
250e0 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 69 6e 73 74 61 6c 6c 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f composer.phar.install</info>..EO
25100 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 T.).;.}..protected.function.exec
25120 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 ute(InputInterface.$input,.Outpu
25140 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 69 6f 20 3d 20 24 74 68 69 tInterface.$output).{.$io.=.$thi
25160 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 69 66 20 28 24 61 72 67 73 20 3d 20 24 69 6e 70 75 74 2d 3e s->getIO();.if.($args.=.$input->
25180 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 29 29 20 7b 0a 24 69 6f 2d 3e getArgument('packages')).{.$io->
251a0 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 49 6e 76 61 6c 69 64 20 61 72 67 75 6d writeError('<error>Invalid.argum
251c0 65 6e 74 20 27 2e 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 24 61 72 67 73 29 2e 27 2e 20 55 73 65 ent.'.implode('.',.$args).'..Use
251e0 20 22 63 6f 6d 70 6f 73 65 72 20 72 65 71 75 69 72 65 20 27 2e 69 6d 70 6c 6f 64 65 28 27 20 27 ."composer.require.'.implode('.'
25200 2c 20 24 61 72 67 73 29 2e 27 22 20 69 6e 73 74 65 61 64 20 74 6f 20 61 64 64 20 70 61 63 6b 61 ,.$args).'".instead.to.add.packa
25220 67 65 73 20 74 6f 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2e 3c 2f 65 72 72 6f ges.to.your.composer.json.</erro
25240 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e r>');..return.1;.}..if.($input->
25260 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 27 getOption('no-custom-installers'
25280 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 59 )).{.$io->writeError('<warning>Y
252a0 6f 75 20 61 72 65 20 75 73 69 6e 67 20 74 68 65 20 64 65 70 72 65 63 61 74 65 64 20 6f 70 74 69 ou.are.using.the.deprecated.opti
252c0 6f 6e 20 22 6e 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 22 2e 20 55 73 65 20 22 on."no-custom-installers"..Use."
252e0 6e 6f 2d 70 6c 75 67 69 6e 73 22 20 69 6e 73 74 65 61 64 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 no-plugins".instead.</warning>')
25300 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 ;.$input->setOption('no-plugins'
25320 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f ,.true);.}..if.($input->getOptio
25340 6e 28 27 64 65 76 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 n('dev')).{.$io->writeError('<wa
25360 72 6e 69 6e 67 3e 59 6f 75 20 61 72 65 20 75 73 69 6e 67 20 74 68 65 20 64 65 70 72 65 63 61 74 rning>You.are.using.the.deprecat
25380 65 64 20 6f 70 74 69 6f 6e 20 22 64 65 76 22 2e 20 44 65 76 20 70 61 63 6b 61 67 65 73 20 61 72 ed.option."dev"..Dev.packages.ar
253a0 65 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 20 6e 6f 77 2e 3c 2f 77 61 72 e.installed.by.default.now.</war
253c0 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 ning>');.}..$composer.=.$this->g
253e0 65 74 43 6f 6d 70 6f 73 65 72 28 74 72 75 65 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 etComposer(true,.$input->getOpti
25400 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 29 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 on('no-plugins'));.$composer->ge
25420 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 2d 3e 73 65 74 4f 75 74 70 75 74 50 72 6f tDownloadManager()->setOutputPro
25440 67 72 65 73 73 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f gress(!$input->getOption('no-pro
25460 67 72 65 73 73 27 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 43 gress'));..$commandEvent.=.new.C
25480 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e ommandEvent(PluginEvents::COMMAN
254a0 44 2c 20 27 69 6e 73 74 61 6c 6c 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a D,.'install',.$input,.$output);.
254c0 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d $composer->getEventDispatcher()-
254e0 3e 64 69 73 70 61 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 >dispatch($commandEvent->getName
25500 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 20 3d 20 (),.$commandEvent);..$install.=.
25520 49 6e 73 74 61 6c 6c 65 72 3a 3a 63 72 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 Installer::create($io,.$composer
25540 29 3b 0a 0a 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 3b 0a 24 70 72 65 66 );..$preferSource.=.false;.$pref
25560 65 72 44 69 73 74 20 3d 20 66 61 6c 73 65 3b 0a 0a 24 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6d 70 erDist.=.false;..$config.=.$comp
25580 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 3b 0a 0a 73 77 69 74 63 68 20 28 24 63 6f 6e oser->getConfig();..switch.($con
255a0 66 69 67 2d 3e 67 65 74 28 27 70 72 65 66 65 72 72 65 64 2d 69 6e 73 74 61 6c 6c 27 29 29 20 7b fig->get('preferred-install')).{
255c0 0a 63 61 73 65 20 27 73 6f 75 72 63 65 27 3a 0a 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 .case.'source':.$preferSource.=.
255e0 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 64 69 73 74 27 3a 0a 24 70 72 65 66 65 true;.break;.case.'dist':.$prefe
25600 72 44 69 73 74 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 61 75 74 6f 27 rDist.=.true;.break;.case.'auto'
25620 3a 0a 64 65 66 61 75 6c 74 3a 0a 0a 20 62 72 65 61 6b 3b 0a 7d 0a 69 66 20 28 24 69 6e 70 75 74 :.default:...break;.}.if.($input
25640 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 29 20 7c 7c 20 ->getOption('prefer-source').||.
25660 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 64 69 73 74 27 29 $input->getOption('prefer-dist')
25680 29 20 7b 0a 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f ).{.$preferSource.=.$input->getO
256a0 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 29 3b 0a 24 70 72 65 66 65 72 44 ption('prefer-source');.$preferD
256c0 69 73 74 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d ist.=.$input->getOption('prefer-
256e0 64 69 73 74 27 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6d 69 7a 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 dist');.}..$optimize.=.$input->g
25700 65 74 4f 70 74 69 6f 6e 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 20 etOption('optimize-autoloader').
25720 7c 7c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f ||.$config->get('optimize-autolo
25740 61 64 65 72 27 29 3b 0a 24 61 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 24 69 6e 70 75 74 2d ader');.$authoritative.=.$input-
25760 3e 67 65 74 4f 70 74 69 6f 6e 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 >getOption('classmap-authoritati
25780 76 65 27 29 20 7c 7c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 6c 61 73 73 6d 61 70 2d 61 ve').||.$config->get('classmap-a
257a0 75 74 68 6f 72 69 74 61 74 69 76 65 27 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 0a 2d 3e 73 65 74 44 uthoritative');..$install.->setD
257c0 72 79 52 75 6e 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 72 79 2d 72 75 6e ryRun($input->getOption('dry-run
257e0 27 29 29 0a 2d 3e 73 65 74 56 65 72 62 6f 73 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 ')).->setVerbose($input->getOpti
25800 6f 6e 28 27 76 65 72 62 6f 73 65 27 29 29 0a 2d 3e 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 65 on('verbose')).->setPreferSource
25820 28 24 70 72 65 66 65 72 53 6f 75 72 63 65 29 0a 2d 3e 73 65 74 50 72 65 66 65 72 44 69 73 74 28 ($preferSource).->setPreferDist(
25840 24 70 72 65 66 65 72 44 69 73 74 29 0a 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 21 24 69 6e 70 75 $preferDist).->setDevMode(!$inpu
25860 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 29 29 0a 2d 3e 73 65 74 44 75 6d t->getOption('no-dev')).->setDum
25880 70 41 75 74 6f 6c 6f 61 64 65 72 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 pAutoloader(!$input->getOption('
258a0 6e 6f 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 29 0a 2d 3e 73 65 74 52 75 6e 53 63 72 69 70 74 73 no-autoloader')).->setRunScripts
258c0 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 (!$input->getOption('no-scripts'
258e0 29 29 0a 2d 3e 73 65 74 4f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 28 24 6f 70 74 69 )).->setOptimizeAutoloader($opti
25900 6d 69 7a 65 29 0a 2d 3e 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 mize).->setClassMapAuthoritative
25920 28 24 61 75 74 68 6f 72 69 74 61 74 69 76 65 29 0a 2d 3e 73 65 74 49 67 6e 6f 72 65 50 6c 61 74 ($authoritative).->setIgnorePlat
25940 66 6f 72 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 formRequirements($input->getOpti
25960 6f 6e 28 27 69 67 6e 6f 72 65 2d 70 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 29 29 0a 3b 0a 0a 69 on('ignore-platform-reqs')).;..i
25980 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 f.($input->getOption('no-plugins
259a0 27 29 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 2d 3e 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 28 29 ')).{.$install->disablePlugins()
259c0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 2d 3e 72 75 6e 28 29 3b 0a 7d 0a 7d ;.}..return.$install->run();.}.}
259e0 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
25a00 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e oser\Command;..use.Composer\Json
25a20 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 \JsonFile;.use.Composer\Plugin\C
25a40 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e ommandEvent;.use.Composer\Plugin
25a60 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b \PluginEvents;.use.Composer\Pack
25a80 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 age\PackageInterface;.use.Compos
25aa0 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 er\Repository\RepositoryInterfac
25ac0 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 e;.use.Symfony\Component\Console
25ae0 5c 48 65 6c 70 65 72 5c 54 61 62 6c 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f \Helper\Table;.use.Symfony\Compo
25b00 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 nent\Console\Input\InputInterfac
25b20 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 e;.use.Symfony\Component\Console
25b40 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c \Input\InputOption;.use.Symfony\
25b60 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 Component\Console\Output\OutputI
25b80 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 69 63 65 6e 73 65 73 43 6f 6d 6d nterface;.....class.LicensesComm
25ba0 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 and.extends.BaseCommand.{.protec
25bc0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 ted.function.configure().{.$this
25be0 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 6c 69 63 65 6e 73 65 73 27 29 0a 2d 3e 73 65 74 44 65 73 63 .->setName('licenses').->setDesc
25c00 72 69 70 74 69 6f 6e 28 27 53 68 6f 77 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 ription('Show.information.about.
25c20 6c 69 63 65 6e 73 65 73 20 6f 66 20 64 65 70 65 6e 64 65 6e 63 69 65 73 27 29 0a 2d 3e 73 65 74 licenses.of.dependencies').->set
25c40 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f Definition(array(.new.InputOptio
25c60 6e 28 27 66 6f 72 6d 61 74 27 2c 20 27 66 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 n('format',.'f',.InputOption::VA
25c80 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 46 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 6f 75 74 LUE_REQUIRED,.'Format.of.the.out
25ca0 70 75 74 3a 20 74 65 78 74 20 6f 72 20 6a 73 6f 6e 27 2c 20 27 74 65 78 74 27 29 2c 0a 6e 65 77 put:.text.or.json',.'text'),.new
25cc0 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 .InputOption('no-dev',.null,.Inp
25ce0 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 utOption::VALUE_NONE,.'Disables.
25d00 73 65 61 72 63 68 20 69 6e 20 72 65 71 75 69 72 65 2d 64 65 76 20 70 61 63 6b 61 67 65 73 2e 27 search.in.require-dev.packages.'
25d20 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 6c 69 63 65 6e ),.)).->setHelp(<<<EOT.The.licen
25d40 73 65 20 63 6f 6d 6d 61 6e 64 20 64 69 73 70 6c 61 79 73 20 64 65 74 61 69 6c 65 64 20 69 6e 66 se.command.displays.detailed.inf
25d60 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 6c 69 63 65 6e 73 65 73 20 6f 66 0a 74 ormation.about.the.licenses.of.t
25d80 68 65 20 69 6e 73 74 61 6c 6c 65 64 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 0a 0a 45 4f 54 0a he.installed.dependencies...EOT.
25da0 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 ).;.}..protected.function.execut
25dc0 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 e(InputInterface.$input,.OutputI
25de0 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 nterface.$output).{.$composer.=.
25e00 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 45 $this->getComposer();..$commandE
25e20 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 vent.=.new.CommandEvent(PluginEv
25e40 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 6c 69 63 65 6e 73 65 73 27 2c 20 24 69 6e 70 75 ents::COMMAND,.'licenses',.$inpu
25e60 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 t,.$output);.$composer->getEvent
25e80 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 Dispatcher()->dispatch($commandE
25ea0 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b vent->getName(),.$commandEvent);
25ec0 0a 0a 24 72 6f 6f 74 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 ..$root.=.$composer->getPackage(
25ee0 29 3b 0a 24 72 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 );.$repo.=.$composer->getReposit
25f00 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 oryManager()->getLocalRepository
25f20 28 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 ();..if.($input->getOption('no-d
25f40 65 76 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 74 65 ev')).{.$packages.=.$this->filte
25f60 72 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 73 28 24 72 65 70 6f 2c 20 24 72 6f 6f 74 29 3b rRequiredPackages($repo,.$root);
25f80 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 .}.else.{.$packages.=.$this->app
25fa0 65 6e 64 50 61 63 6b 61 67 65 73 28 24 72 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 endPackages($repo->getPackages()
25fc0 2c 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 0a 6b 73 6f 72 74 28 24 70 61 63 6b 61 67 65 73 29 3b ,.array());.}..ksort($packages);
25fe0 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 73 77 69 74 63 68 20 28 .$io.=.$this->getIO();..switch.(
26000 24 66 6f 72 6d 61 74 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 $format.=.$input->getOption('for
26020 6d 61 74 27 29 29 20 7b 0a 63 61 73 65 20 27 74 65 78 74 27 3a 0a 24 69 6f 2d 3e 77 72 69 74 65 mat')).{.case.'text':.$io->write
26040 28 27 4e 61 6d 65 3a 20 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 72 6f 6f 74 2d 3e 67 65 74 50 72 65 ('Name:.<comment>'.$root->getPre
26060 74 74 79 4e 61 6d 65 28 29 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 ttyName().'</comment>');.$io->wr
26080 69 74 65 28 27 56 65 72 73 69 6f 6e 3a 20 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 72 6f 6f 74 2d 3e ite('Version:.<comment>'.$root->
260a0 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2e 27 3c 2f 63 6f 6d 6d 65 6e getFullPrettyVersion().'</commen
260c0 74 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 4c 69 63 65 6e 73 65 73 3a 20 3c 63 6f 6d t>');.$io->write('Licenses:.<com
260e0 6d 65 6e 74 3e 27 2e 28 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 72 6f 6f 74 2d 3e 67 65 74 ment>'.(implode(',.',.$root->get
26100 4c 69 63 65 6e 73 65 28 29 29 20 3f 3a 20 27 6e 6f 6e 65 27 29 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 License()).?:.'none').'</comment
26120 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 44 65 70 65 6e 64 65 6e 63 69 65 73 3a 27 29 >');.$io->write('Dependencies:')
26140 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 27 29 3b 0a 0a 24 74 61 62 6c 65 20 3d 20 6e 65 77 20 ;.$io->write('');..$table.=.new.
26160 54 61 62 6c 65 28 24 6f 75 74 70 75 74 29 3b 0a 24 74 61 62 6c 65 2d 3e 73 65 74 53 74 79 6c 65 Table($output);.$table->setStyle
26180 28 27 63 6f 6d 70 61 63 74 27 29 3b 0a 24 74 61 62 6c 65 2d 3e 67 65 74 53 74 79 6c 65 28 29 2d ('compact');.$table->getStyle()-
261a0 3e 73 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 28 27 27 29 3b 0a 24 74 61 62 >setVerticalBorderChar('');.$tab
261c0 6c 65 2d 3e 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e le->getStyle()->setCellRowConten
261e0 74 46 6f 72 6d 61 74 28 27 25 73 20 20 27 29 3b 0a 24 74 61 62 6c 65 2d 3e 73 65 74 48 65 61 64 tFormat('%s..');.$table->setHead
26200 65 72 73 28 61 72 72 61 79 28 27 4e 61 6d 65 27 2c 20 27 56 65 72 73 69 6f 6e 27 2c 20 27 4c 69 ers(array('Name',.'Version',.'Li
26220 63 65 6e 73 65 27 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 cense'));.foreach.($packages.as.
26240 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 61 62 6c 65 2d 3e 61 64 64 52 6f 77 28 61 72 72 61 79 $package).{.$table->addRow(array
26260 28 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 0a 24 70 61 (.$package->getPrettyName(),.$pa
26280 63 6b 61 67 65 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 69 ckage->getFullPrettyVersion(),.i
262a0 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4c 69 63 65 6e 73 mplode(',.',.$package->getLicens
262c0 65 28 29 29 20 3f 3a 20 27 6e 6f 6e 65 27 2c 0a 29 29 3b 0a 7d 0a 24 74 61 62 6c 65 2d 3e 72 65 e()).?:.'none',.));.}.$table->re
262e0 6e 64 65 72 28 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 6a 73 6f 6e 27 3a 0a 24 64 65 nder();.break;..case.'json':.$de
26300 70 65 6e 64 65 6e 63 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 pendencies.=.array();.foreach.($
26320 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 64 65 70 65 6e 64 65 packages.as.$package).{.$depende
26340 6e 63 69 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 5d ncies[$package->getPrettyName()]
26360 20 3d 20 61 72 72 61 79 28 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2d .=.array(.'version'.=>.$package-
26380 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 27 6c 69 63 65 6e 73 >getFullPrettyVersion(),.'licens
263a0 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4c 69 63 65 6e 73 65 28 29 2c 0a 29 3b e'.=>.$package->getLicense(),.);
263c0 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 .}..$io->write(JsonFile::encode(
263e0 61 72 72 61 79 28 0a 27 6e 61 6d 65 27 20 3d 3e 20 24 72 6f 6f 74 2d 3e 67 65 74 50 72 65 74 74 array(.'name'.=>.$root->getPrett
26400 79 4e 61 6d 65 28 29 2c 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 72 6f 6f 74 2d 3e 67 65 74 yName(),.'version'.=>.$root->get
26420 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 27 6c 69 63 65 6e 73 65 27 20 3d FullPrettyVersion(),.'license'.=
26440 3e 20 24 72 6f 6f 74 2d 3e 67 65 74 4c 69 63 65 6e 73 65 28 29 2c 0a 27 64 65 70 65 6e 64 65 6e >.$root->getLicense(),.'dependen
26460 63 69 65 73 27 20 3d 3e 20 24 64 65 70 65 6e 64 65 6e 63 69 65 73 2c 0a 29 29 29 3b 0a 62 72 65 cies'.=>.$dependencies,.)));.bre
26480 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 ak;..default:.throw.new.\Runtime
264a0 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 73 75 70 70 6f 72 74 65 64 20 66 Exception(sprintf('Unsupported.f
264c0 6f 72 6d 61 74 20 22 25 73 22 2e 20 20 53 65 65 20 68 65 6c 70 20 66 6f 72 20 73 75 70 70 6f 72 ormat."%s"...See.help.for.suppor
264e0 74 65 64 20 66 6f 72 6d 61 74 73 2e 27 2c 20 24 66 6f 72 6d 61 74 29 29 3b 0a 7d 0a 7d 0a 0a 0a ted.formats.',.$format));.}.}...
26500 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 74 65 72 52 65 71 75 .....private.function.filterRequ
26520 69 72 65 64 50 61 63 6b 61 67 65 73 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 iredPackages(RepositoryInterface
26540 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 .$repo,.PackageInterface.$packag
26560 65 2c 20 24 62 75 63 6b 65 74 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 72 65 71 75 69 72 65 e,.$bucket.=.array()).{.$require
26580 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 s.=.array_keys($package->getRequ
265a0 69 72 65 73 28 29 29 3b 0a 0a 24 70 61 63 6b 61 67 65 4c 69 73 74 4e 61 6d 65 73 20 3d 20 61 72 ires());..$packageListNames.=.ar
265c0 72 61 79 5f 6b 65 79 73 28 24 62 75 63 6b 65 74 29 3b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 ray_keys($bucket);.$packages.=.a
265e0 72 72 61 79 5f 66 69 6c 74 65 72 28 0a 24 72 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 rray_filter(.$repo->getPackages(
26600 29 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 70 61 63 6b 61 67 65 29 20 75 73 65 20 28 24 72 65 71 ),.function.($package).use.($req
26620 75 69 72 65 73 2c 20 24 70 61 63 6b 61 67 65 4c 69 73 74 4e 61 6d 65 73 29 20 7b 0a 72 65 74 75 uires,.$packageListNames).{.retu
26640 72 6e 20 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c rn.in_array($package->getName(),
26660 20 24 72 65 71 75 69 72 65 73 29 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 .$requires).&&.!in_array($packag
26680 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 70 61 63 6b 61 67 65 4c 69 73 74 4e 61 6d 65 73 29 e->getName(),.$packageListNames)
266a0 3b 0a 7d 0a 29 3b 0a 0a 24 62 75 63 6b 65 74 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 65 6e 64 50 ;.}.);..$bucket.=.$this->appendP
266c0 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 73 2c 20 24 62 75 63 6b 65 74 29 3b 0a 0a 66 6f ackages($packages,.$bucket);..fo
266e0 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a reach.($packages.as.$package).{.
26700 24 62 75 63 6b 65 74 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 52 65 71 75 69 72 65 64 50 $bucket.=.$this->filterRequiredP
26720 61 63 6b 61 67 65 73 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 62 75 63 6b 65 74 ackages($repo,.$package,.$bucket
26740 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 62 75 63 6b 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a );.}..return.$bucket;.}.........
26760 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 50 61 63 6b 61 67 65 73 28 61 public.function.appendPackages(a
26780 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 2c 20 61 72 72 61 79 20 24 62 75 63 6b 65 74 29 0a 7b rray.$packages,.array.$bucket).{
267a0 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 .foreach.($packages.as.$package)
267c0 20 7b 0a 24 62 75 63 6b 65 74 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 .{.$bucket[$package->getName()].
267e0 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 62 75 63 6b 65 74 3b 0a 7d =.$package;.}..return.$bucket;.}
26800 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
26820 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d mposer\Command;..use.Symfony\Com
26840 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 ponent\Console\Input\InputInterf
26860 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f ace;.use.Symfony\Component\Conso
26880 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 le\Output\OutputInterface;.....c
268a0 6c 61 73 73 20 50 72 6f 68 69 62 69 74 73 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 lass.ProhibitsCommand.extends.Ba
268c0 73 65 44 65 70 65 6e 64 65 6e 63 79 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 seDependencyCommand.{....protect
268e0 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 70 61 72 65 6e 74 ed.function.configure().{.parent
26900 3a 3a 63 6f 6e 66 69 67 75 72 65 28 29 3b 0a 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 ::configure();..$this.->setName(
26920 27 70 72 6f 68 69 62 69 74 73 27 29 0a 2d 3e 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 28 'prohibits').->setAliases(array(
26940 27 77 68 79 2d 6e 6f 74 27 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 68 'why-not')).->setDescription('Sh
26960 6f 77 73 20 77 68 69 63 68 20 70 61 63 6b 61 67 65 73 20 70 72 65 76 65 6e 74 20 74 68 65 20 67 ows.which.packages.prevent.the.g
26980 69 76 65 6e 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 62 65 69 6e 67 20 69 6e 73 74 61 6c 6c 65 iven.package.from.being.installe
269a0 64 27 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 44 69 73 70 6c 61 79 73 20 64 65 d').->setHelp(<<<EOT.Displays.de
269c0 74 61 69 6c 65 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 77 68 79 20 61 20 70 tailed.information.about.why.a.p
269e0 61 63 6b 61 67 65 20 63 61 6e 6e 6f 74 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 2e 0a 0a 3c 69 6e ackage.cannot.be.installed...<in
26a00 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 70 72 6f 68 69 62 69 74 73 20 63 fo>php.composer.phar.prohibits.c
26a20 6f 6d 70 6f 73 65 72 2f 63 6f 6d 70 6f 73 65 72 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a 29 0a 3b omposer/composer</info>..EOT.).;
26a40 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 .}.........protected.function.ex
26a60 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 ecute(InputInterface.$input,.Out
26a80 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 72 65 74 75 72 6e 20 70 putInterface.$output).{.return.p
26aa0 61 72 65 6e 74 3a 3a 64 6f 45 78 65 63 75 74 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 arent::doExecute($input,.$output
26ac0 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 ,.true);.}.}.<?php............na
26ae0 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 mespace.Composer\Command;..use.C
26b00 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 5c 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 3b omposer\Config\JsonConfigSource;
26b20 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 43 6f 6d .use.Composer\Installer;.use.Com
26b40 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 poser\Plugin\CommandEvent;.use.C
26b60 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 omposer\Plugin\PluginEvents;.use
26b80 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d .Composer\Json\JsonFile;.use.Com
26ba0 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f poser\Factory;.use.Symfony\Compo
26bc0 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 nent\Console\Input\InputInterfac
26be0 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 e;.use.Symfony\Component\Console
26c00 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c \Input\InputOption;.use.Symfony\
26c20 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 Component\Console\Input\InputArg
26c40 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e ument;.use.Symfony\Component\Con
26c60 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a sole\Output\OutputInterface;....
26c80 0a 0a 63 6c 61 73 73 20 52 65 6d 6f 76 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 ..class.RemoveCommand.extends.Ba
26ca0 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 seCommand.{.protected.function.c
26cc0 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 72 65 onfigure().{.$this.->setName('re
26ce0 6d 6f 76 65 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 52 65 6d 6f 76 65 73 move').->setDescription('Removes
26d00 20 61 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 74 68 65 20 72 65 71 75 69 72 65 20 6f 72 20 72 .a.package.from.the.require.or.r
26d20 65 71 75 69 72 65 2d 64 65 76 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 equire-dev').->setDefinition(arr
26d40 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 ay(.new.InputArgument('packages'
26d60 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 2c 20 27 50 61 63 6b ,.InputArgument::IS_ARRAY,.'Pack
26d80 61 67 65 73 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 72 65 6d 6f 76 65 64 2e 27 29 2c 0a ages.that.should.be.removed.'),.
26da0 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 new.InputOption('dev',.null,.Inp
26dc0 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 52 65 6d 6f 76 65 73 20 61 utOption::VALUE_NONE,.'Removes.a
26de0 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 74 68 65 20 72 65 71 75 69 72 65 2d 64 65 76 20 73 65 .package.from.the.require-dev.se
26e00 63 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 6c ction.'),.new.InputOption('no-pl
26e20 75 67 69 6e 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 ugins',.null,.InputOption::VALUE
26e40 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 61 6c 6c 20 70 6c 75 67 69 6e 73 2e 27 29 2c _NONE,.'Disables.all.plugins.'),
26e60 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 27 2c 20 .new.InputOption('no-progress',.
26e80 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 null,.InputOption::VALUE_NONE,.'
26ea0 44 6f 20 6e 6f 74 20 6f 75 74 70 75 74 20 64 6f 77 6e 6c 6f 61 64 20 70 72 6f 67 72 65 73 73 2e Do.not.output.download.progress.
26ec0 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 75 70 64 61 74 65 27 2c '),.new.InputOption('no-update',
26ee0 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 .null,.InputOption::VALUE_NONE,.
26f00 27 44 69 73 61 62 6c 65 73 20 74 68 65 20 61 75 74 6f 6d 61 74 69 63 20 75 70 64 61 74 65 20 6f 'Disables.the.automatic.update.o
26f20 66 20 74 68 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 f.the.dependencies.'),.new.Input
26f40 4f 70 74 69 6f 6e 28 27 75 70 64 61 74 65 2d 6e 6f 2d 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e Option('update-no-dev',.null,.In
26f60 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 52 75 6e 20 74 68 65 20 putOption::VALUE_NONE,.'Run.the.
26f80 64 65 70 65 6e 64 65 6e 63 79 20 75 70 64 61 74 65 20 77 69 74 68 20 74 68 65 20 2d 2d 6e 6f 2d dependency.update.with.the.--no-
26fa0 64 65 76 20 6f 70 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 dev.option.'),.new.InputOption('
26fc0 75 70 64 61 74 65 2d 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2c 20 6e 75 6c 6c 2c update-with-dependencies',.null,
26fe0 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 6c 6c 6f 77 .InputOption::VALUE_NONE,.'Allow
27000 73 20 69 6e 68 65 72 69 74 65 64 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 74 6f 20 62 65 20 75 s.inherited.dependencies.to.be.u
27020 70 64 61 74 65 64 20 77 69 74 68 20 65 78 70 6c 69 63 69 74 20 64 65 70 65 6e 64 65 6e 63 69 65 pdated.with.explicit.dependencie
27040 73 2e 20 28 44 65 70 72 65 63 72 61 74 65 64 2c 20 69 73 20 6e 6f 77 20 64 65 66 61 75 6c 74 20 s..(Deprecrated,.is.now.default.
27060 62 65 68 61 76 69 6f 72 29 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f behavior)'),.new.InputOption('no
27080 2d 75 70 64 61 74 65 2d 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2c 20 6e 75 6c 6c -update-with-dependencies',.null
270a0 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 65 73 ,.InputOption::VALUE_NONE,.'Does
270c0 20 6e 6f 74 20 61 6c 6c 6f 77 20 69 6e 68 65 72 69 74 65 64 20 64 65 70 65 6e 64 65 6e 63 69 65 .not.allow.inherited.dependencie
270e0 73 20 74 6f 20 62 65 20 75 70 64 61 74 65 64 20 77 69 74 68 20 65 78 70 6c 69 63 69 74 20 64 65 s.to.be.updated.with.explicit.de
27100 70 65 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 pendencies.'),.new.InputOption('
27120 69 67 6e 6f 72 65 2d 70 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 ignore-platform-reqs',.null,.Inp
27140 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 49 67 6e 6f 72 65 20 70 6c utOption::VALUE_NONE,.'Ignore.pl
27160 61 74 66 6f 72 6d 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 28 70 68 70 20 26 20 65 78 74 2d 20 atform.requirements.(php.&.ext-.
27180 70 61 63 6b 61 67 65 73 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6f packages).'),.new.InputOption('o
271a0 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 2c 20 27 6f 27 2c 20 49 6e 70 75 74 4f ptimize-autoloader',.'o',.InputO
271c0 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4f 70 74 69 6d 69 7a 65 20 61 75 74 ption::VALUE_NONE,.'Optimize.aut
271e0 6f 6c 6f 61 64 65 72 20 64 75 72 69 6e 67 20 61 75 74 6f 6c 6f 61 64 65 72 20 64 75 6d 70 27 29 oloader.during.autoloader.dump')
27200 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 ,.new.InputOption('classmap-auth
27220 6f 72 69 74 61 74 69 76 65 27 2c 20 27 61 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 oritative',.'a',.InputOption::VA
27240 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 75 74 6f 6c 6f 61 64 20 63 6c 61 73 73 65 73 20 66 72 6f 6d LUE_NONE,.'Autoload.classes.from
27260 20 74 68 65 20 63 6c 61 73 73 6d 61 70 20 6f 6e 6c 79 2e 20 49 6d 70 6c 69 63 69 74 6c 79 20 65 .the.classmap.only..Implicitly.e
27280 6e 61 62 6c 65 73 20 60 2d 2d 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 60 2e 27 nables.`--optimize-autoloader`.'
272a0 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f ),.)).->setHelp(<<<EOT.The.<info
272c0 3e 72 65 6d 6f 76 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 72 65 6d 6f 76 65 73 20 61 >remove</info>.command.removes.a
272e0 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 0a 6c 69 73 74 20 6f .package.from.the.current.list.o
27300 66 20 69 6e 73 74 61 6c 6c 65 64 20 70 61 63 6b 61 67 65 73 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 f.installed.packages..<info>php.
27320 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 72 65 6d 6f 76 65 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 composer.phar.remove</info>..EOT
27340 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 .).;.}..protected.function.execu
27360 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 te(InputInterface.$input,.Output
27380 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d Interface.$output).{.$packages.=
273a0 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 29 .$input->getArgument('packages')
273c0 3b 0a 0a 24 66 69 6c 65 20 3d 20 46 61 63 74 6f 72 79 3a 3a 67 65 74 43 6f 6d 70 6f 73 65 72 46 ;..$file.=.Factory::getComposerF
273e0 69 6c 65 28 29 3b 0a 0a 24 6a 73 6f 6e 46 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 ile();..$jsonFile.=.new.JsonFile
27400 28 24 66 69 6c 65 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 6a 73 6f 6e 46 69 6c 65 2d 3e ($file);.$composer.=.$jsonFile->
27420 72 65 61 64 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 42 61 63 6b 75 70 20 3d 20 66 69 6c 65 5f 67 read();.$composerBackup.=.file_g
27440 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6a 73 6f 6e 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 et_contents($jsonFile->getPath()
27460 29 3b 0a 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 );..$json.=.new.JsonConfigSource
27480 28 24 6a 73 6f 6e 46 69 6c 65 29 3b 0a 0a 24 74 79 70 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 ($jsonFile);..$type.=.$input->ge
274a0 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 20 3f 20 27 72 65 71 75 69 72 65 2d 64 65 76 27 20 3a tOption('dev').?.'require-dev'.:
274c0 20 27 72 65 71 75 69 72 65 27 3b 0a 24 61 6c 74 54 79 70 65 20 3d 20 21 24 69 6e 70 75 74 2d 3e .'require';.$altType.=.!$input->
274e0 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 20 3f 20 27 72 65 71 75 69 72 65 2d 64 65 76 27 getOption('dev').?.'require-dev'
27500 20 3a 20 27 72 65 71 75 69 72 65 27 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f .:.'require';.$io.=.$this->getIO
27520 28 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 70 64 61 ();..if.($input->getOption('upda
27540 74 65 2d 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 te-with-dependencies')).{.$io->w
27560 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 59 6f 75 20 61 72 65 20 75 73 69 6e riteError('<warning>You.are.usin
27580 67 20 74 68 65 20 64 65 70 72 65 63 61 74 65 64 20 6f 70 74 69 6f 6e 20 22 75 70 64 61 74 65 2d g.the.deprecated.option."update-
275a0 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 22 2e 20 54 68 69 73 20 69 73 20 6e 6f 77 20 with-dependencies"..This.is.now.
275c0 64 65 66 61 75 6c 74 20 62 65 68 61 76 69 6f 75 72 2e 20 54 68 65 20 2d 2d 6e 6f 2d 75 70 64 61 default.behaviour..The.--no-upda
275e0 74 65 2d 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 20 6f 70 74 69 6f 6e 20 63 61 6e 20 te-with-dependencies.option.can.
27600 62 65 20 75 73 65 64 20 74 6f 20 72 65 6d 6f 76 65 20 61 20 70 61 63 6b 61 67 65 20 77 69 74 68 be.used.to.remove.a.package.with
27620 6f 75 74 20 69 74 73 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 out.its.dependencies.</warning>'
27640 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 );.}..foreach.($packages.as.$pac
27660 6b 61 67 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 24 74 79 70 kage).{.if.(isset($composer[$typ
27680 65 5d 5b 24 70 61 63 6b 61 67 65 5d 29 29 20 7b 0a 24 6a 73 6f 6e 2d 3e 72 65 6d 6f 76 65 4c 69 e][$package])).{.$json->removeLi
276a0 6e 6b 28 24 74 79 70 65 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 nk($type,.$package);.}.elseif.(i
276c0 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 24 61 6c 74 54 79 70 65 5d 5b 24 70 61 63 6b 61 67 sset($composer[$altType][$packag
276e0 65 5d 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 e])).{.$io->writeError('<warning
27700 3e 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 >'.$package.'.could.not.be.found
27720 20 69 6e 20 27 2e 24 74 79 70 65 2e 27 20 62 75 74 20 69 74 20 69 73 20 70 72 65 73 65 6e 74 20 .in.'.$type.'.but.it.is.present.
27740 69 6e 20 27 2e 24 61 6c 74 54 79 70 65 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 69 66 20 in.'.$altType.'</warning>');.if.
27760 28 24 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 69 66 20 28 24 69 6f ($io->isInteractive()).{.if.($io
27780 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 27 44 6f 20 79 6f 75 20 77 61 6e 74 20 74 ->askConfirmation('Do.you.want.t
277a0 6f 20 72 65 6d 6f 76 65 20 69 74 20 66 72 6f 6d 20 27 2e 24 61 6c 74 54 79 70 65 2e 27 20 5b 3c o.remove.it.from.'.$altType.'.[<
277c0 63 6f 6d 6d 65 6e 74 3e 79 65 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3f 20 27 2c 20 74 72 75 65 29 comment>yes</comment>]?.',.true)
277e0 29 20 7b 0a 24 6a 73 6f 6e 2d 3e 72 65 6d 6f 76 65 4c 69 6e 6b 28 24 61 6c 74 54 79 70 65 2c 20 ).{.$json->removeLink($altType,.
27800 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 $package);.}.}.}.else.{.$io->wri
27820 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 69 teError('<warning>'.$package.'.i
27840 73 20 6e 6f 74 20 72 65 71 75 69 72 65 64 20 69 6e 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e s.not.required.in.your.composer.
27860 6a 73 6f 6e 20 61 6e 64 20 68 61 73 20 6e 6f 74 20 62 65 65 6e 20 72 65 6d 6f 76 65 64 3c 2f 77 json.and.has.not.been.removed</w
27880 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f arning>');.}.}..if.($input->getO
278a0 70 74 69 6f 6e 28 27 6e 6f 2d 75 70 64 61 74 65 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 30 3b 0a ption('no-update')).{.return.0;.
278c0 7d 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f }....$composer.=.$this->getCompo
278e0 73 65 72 28 74 72 75 65 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d ser(true,.$input->getOption('no-
27900 70 6c 75 67 69 6e 73 27 29 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 44 6f 77 6e 6c 6f plugins'));.$composer->getDownlo
27920 61 64 4d 61 6e 61 67 65 72 28 29 2d 3e 73 65 74 4f 75 74 70 75 74 50 72 6f 67 72 65 73 73 28 21 adManager()->setOutputProgress(!
27940 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 27 29 $input->getOption('no-progress')
27960 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 );..$commandEvent.=.new.CommandE
27980 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 72 65 6d vent(PluginEvents::COMMAND,.'rem
279a0 6f 76 65 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f 73 65 ove',.$input,.$output);.$compose
279c0 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 r->getEventDispatcher()->dispatc
279e0 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6d h($commandEvent->getName(),.$com
27a00 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 20 3d 20 49 6e 73 74 61 6c 6c 65 mandEvent);..$install.=.Installe
27a20 72 3a 3a 63 72 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 0a 24 75 70 64 r::create($io,.$composer);..$upd
27a40 61 74 65 44 65 76 4d 6f 64 65 20 3d 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 ateDevMode.=.!$input->getOption(
27a60 27 75 70 64 61 74 65 2d 6e 6f 2d 64 65 76 27 29 3b 0a 24 6f 70 74 69 6d 69 7a 65 20 3d 20 24 69 'update-no-dev');.$optimize.=.$i
27a80 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f nput->getOption('optimize-autolo
27aa0 61 64 65 72 27 29 20 7c 7c 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 ader').||.$composer->getConfig()
27ac0 2d 3e 67 65 74 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 3b 0a 24 61 ->get('optimize-autoloader');.$a
27ae0 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e uthoritative.=.$input->getOption
27b00 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 29 20 7c 7c 20 24 63 ('classmap-authoritative').||.$c
27b20 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 63 6c 61 73 73 omposer->getConfig()->get('class
27b40 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 0a 2d map-authoritative');..$install.-
27b60 3e 73 65 74 56 65 72 62 6f 73 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 76 >setVerbose($input->getOption('v
27b80 65 72 62 6f 73 65 27 29 29 0a 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 24 75 70 64 61 74 65 44 65 erbose')).->setDevMode($updateDe
27ba0 76 4d 6f 64 65 29 0a 2d 3e 73 65 74 4f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 28 24 vMode).->setOptimizeAutoloader($
27bc0 6f 70 74 69 6d 69 7a 65 29 0a 2d 3e 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 optimize).->setClassMapAuthorita
27be0 74 69 76 65 28 24 61 75 74 68 6f 72 69 74 61 74 69 76 65 29 0a 2d 3e 73 65 74 55 70 64 61 74 65 tive($authoritative).->setUpdate
27c00 28 74 72 75 65 29 0a 2d 3e 73 65 74 55 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 28 24 70 61 63 (true).->setUpdateWhitelist($pac
27c20 6b 61 67 65 73 29 0a 2d 3e 73 65 74 57 68 69 74 65 6c 69 73 74 44 65 70 65 6e 64 65 6e 63 69 65 kages).->setWhitelistDependencie
27c40 73 28 20 21 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 75 70 64 61 74 s(.!.$input->getOption('no-updat
27c60 65 2d 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 29 29 0a 2d 3e 73 65 74 49 67 6e 6f e-with-dependencies')).->setIgno
27c80 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e 70 75 74 2d 3e 67 rePlatformRequirements($input->g
27ca0 65 74 4f 70 74 69 6f 6e 28 27 69 67 6e 6f 72 65 2d 70 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 29 etOption('ignore-platform-reqs')
27cc0 29 0a 3b 0a 0a 24 65 78 63 65 70 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 74 72 79 20 7b 0a 24 73 ).;..$exception.=.null;.try.{.$s
27ce0 74 61 74 75 73 20 3d 20 24 69 6e 73 74 61 6c 6c 2d 3e 72 75 6e 28 29 3b 0a 7d 20 63 61 74 63 68 tatus.=.$install->run();.}.catch
27d00 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 24 73 74 61 74 .(\Exception.$exception).{.$stat
27d20 75 73 20 3d 20 31 3b 0a 7d 0a 69 66 20 28 24 73 74 61 74 75 73 20 21 3d 3d 20 30 29 20 7b 0a 24 us.=.1;.}.if.($status.!==.0).{.$
27d40 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 5c 6e 22 2e 27 3c 65 72 72 6f 72 3e 52 65 6d 6f io->writeError("\n".'<error>Remo
27d60 76 61 6c 20 66 61 69 6c 65 64 2c 20 72 65 76 65 72 74 69 6e 67 20 27 2e 24 66 69 6c 65 2e 27 20 val.failed,.reverting.'.$file.'.
27d80 74 6f 20 69 74 73 20 6f 72 69 67 69 6e 61 6c 20 63 6f 6e 74 65 6e 74 2e 3c 2f 65 72 72 6f 72 3e to.its.original.content.</error>
27da0 27 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6a 73 6f 6e 46 69 6c 65 2d ');.file_put_contents($jsonFile-
27dc0 3e 67 65 74 50 61 74 68 28 29 2c 20 24 63 6f 6d 70 6f 73 65 72 42 61 63 6b 75 70 29 3b 0a 7d 0a >getPath(),.$composerBackup);.}.
27de0 69 66 20 28 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 24 65 78 63 65 70 74 69 if.($exception).{.throw.$excepti
27e00 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 74 75 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 on;.}..return.$status;.}.}.<?php
27e20 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 ............namespace.Composer\C
27e40 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 ommand;..use.Symfony\Component\C
27e60 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 onsole\Input\InputInterface;.use
27e80 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 .Symfony\Component\Console\Input
27ea0 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 \InputArgument;.use.Symfony\Comp
27ec0 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b onent\Console\Input\InputOption;
27ee0 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f .use.Symfony\Component\Console\O
27f00 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f utput\OutputInterface;.use.Compo
27f20 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c ser\Factory;.use.Composer\Instal
27f40 6c 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b ler;.use.Composer\Json\JsonFile;
27f60 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 .use.Composer\Json\JsonManipulat
27f80 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e or;.use.Composer\Package\Version
27fa0 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 \VersionParser;.use.Composer\Plu
27fc0 67 69 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 gin\CommandEvent;.use.Composer\P
27fe0 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 lugin\PluginEvents;.use.Composer
28000 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b \Repository\CompositeRepository;
28020 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 .use.Composer\Repository\Platfor
28040 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 71 75 69 72 65 43 mRepository;......class.RequireC
28060 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 49 6e 69 74 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f ommand.extends.InitCommand.{.pro
28080 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 tected.function.configure().{.$t
280a0 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 72 65 71 75 69 72 65 27 29 0a 2d 3e 73 65 74 44 65 his.->setName('require').->setDe
280c0 73 63 72 69 70 74 69 6f 6e 28 27 41 64 64 73 20 72 65 71 75 69 72 65 64 20 70 61 63 6b 61 67 65 scription('Adds.required.package
280e0 73 20 74 6f 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 61 6e 64 20 69 6e 73 74 s.to.your.composer.json.and.inst
28100 61 6c 6c 73 20 74 68 65 6d 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 alls.them').->setDefinition(arra
28120 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 2c y(.new.InputArgument('packages',
28140 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 .InputArgument::IS_ARRAY.|.Input
28160 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 52 65 71 75 69 72 65 64 20 70 61 Argument::OPTIONAL,.'Required.pa
28180 63 6b 61 67 65 20 6e 61 6d 65 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 69 6e 63 6c 75 64 69 6e 67 20 ckage.name.optionally.including.
281a0 61 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 2c 20 65 2e 67 2e 20 66 6f 6f 2f 62 a.version.constraint,.e.g..foo/b
281c0 61 72 20 6f 72 20 66 6f 6f 2f 62 61 72 3a 31 2e 30 2e 30 20 6f 72 20 66 6f 6f 2f 62 61 72 3d 31 ar.or.foo/bar:1.0.0.or.foo/bar=1
281e0 2e 30 2e 30 20 6f 72 20 22 66 6f 6f 2f 62 61 72 20 31 2e 30 2e 30 22 27 29 2c 0a 6e 65 77 20 49 .0.0.or."foo/bar.1.0.0"'),.new.I
28200 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 nputOption('dev',.null,.InputOpt
28220 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 64 64 20 72 65 71 75 69 72 65 6d 65 6e ion::VALUE_NONE,.'Add.requiremen
28240 74 20 74 6f 20 72 65 71 75 69 72 65 2d 64 65 76 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 t.to.require-dev.'),.new.InputOp
28260 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 tion('prefer-source',.null,.Inpu
28280 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 tOption::VALUE_NONE,.'Forces.ins
282a0 74 61 6c 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 20 73 6f 75 72 63 65 73 20 77 tallation.from.package.sources.w
282c0 68 65 6e 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 56 43 53 20 69 6e 66 6f hen.possible,.including.VCS.info
282e0 72 6d 61 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 65 rmation.'),.new.InputOption('pre
28300 66 65 72 2d 64 69 73 74 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 fer-dist',.null,.InputOption::VA
28320 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 LUE_NONE,.'Forces.installation.f
28340 72 6f 6d 20 70 61 63 6b 61 67 65 20 64 69 73 74 20 65 76 65 6e 20 66 6f 72 20 64 65 76 20 76 65 rom.package.dist.even.for.dev.ve
28360 72 73 69 6f 6e 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 rsions.'),.new.InputOption('no-p
28380 6c 75 67 69 6e 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 lugins',.null,.InputOption::VALU
283a0 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 61 6c 6c 20 70 6c 75 67 69 6e 73 2e 27 29 E_NONE,.'Disables.all.plugins.')
283c0 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 27 2c ,.new.InputOption('no-progress',
283e0 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 .null,.InputOption::VALUE_NONE,.
28400 27 44 6f 20 6e 6f 74 20 6f 75 74 70 75 74 20 64 6f 77 6e 6c 6f 61 64 20 70 72 6f 67 72 65 73 73 'Do.not.output.download.progress
28420 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 75 70 64 61 74 65 27 .'),.new.InputOption('no-update'
28440 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c ,.null,.InputOption::VALUE_NONE,
28460 20 27 44 69 73 61 62 6c 65 73 20 74 68 65 20 61 75 74 6f 6d 61 74 69 63 20 75 70 64 61 74 65 20 .'Disables.the.automatic.update.
28480 6f 66 20 74 68 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 of.the.dependencies.'),.new.Inpu
284a0 74 4f 70 74 69 6f 6e 28 27 75 70 64 61 74 65 2d 6e 6f 2d 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 tOption('update-no-dev',.null,.I
284c0 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 52 75 6e 20 74 68 65 nputOption::VALUE_NONE,.'Run.the
284e0 20 64 65 70 65 6e 64 65 6e 63 79 20 75 70 64 61 74 65 20 77 69 74 68 20 74 68 65 20 2d 2d 6e 6f .dependency.update.with.the.--no
28500 2d 64 65 76 20 6f 70 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 -dev.option.'),.new.InputOption(
28520 27 75 70 64 61 74 65 2d 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2c 20 6e 75 6c 6c 'update-with-dependencies',.null
28540 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 6c 6c 6f ,.InputOption::VALUE_NONE,.'Allo
28560 77 73 20 69 6e 68 65 72 69 74 65 64 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 74 6f 20 62 65 20 ws.inherited.dependencies.to.be.
28580 75 70 64 61 74 65 64 20 77 69 74 68 20 65 78 70 6c 69 63 69 74 20 64 65 70 65 6e 64 65 6e 63 69 updated.with.explicit.dependenci
285a0 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 69 67 6e 6f 72 65 2d 70 es.'),.new.InputOption('ignore-p
285c0 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e latform-reqs',.null,.InputOption
285e0 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 49 67 6e 6f 72 65 20 70 6c 61 74 66 6f 72 6d 20 72 ::VALUE_NONE,.'Ignore.platform.r
28600 65 71 75 69 72 65 6d 65 6e 74 73 20 28 70 68 70 20 26 20 65 78 74 2d 20 70 61 63 6b 61 67 65 73 equirements.(php.&.ext-.packages
28620 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 73 6f 72 74 2d 70 61 63 6b ).'),.new.InputOption('sort-pack
28640 61 67 65 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f ages',.null,.InputOption::VALUE_
28660 4e 4f 4e 45 2c 20 27 53 6f 72 74 73 20 70 61 63 6b 61 67 65 73 20 77 68 65 6e 20 61 64 64 69 6e NONE,.'Sorts.packages.when.addin
28680 67 2f 75 70 64 61 74 69 6e 67 20 61 20 6e 65 77 20 64 65 70 65 6e 64 65 6e 63 79 27 29 2c 0a 6e g/updating.a.new.dependency'),.n
286a0 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 ew.InputOption('optimize-autoloa
286c0 64 65 72 27 2c 20 27 6f 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f der',.'o',.InputOption::VALUE_NO
286e0 4e 45 2c 20 27 4f 70 74 69 6d 69 7a 65 20 61 75 74 6f 6c 6f 61 64 65 72 20 64 75 72 69 6e 67 20 NE,.'Optimize.autoloader.during.
28700 61 75 74 6f 6c 6f 61 64 65 72 20 64 75 6d 70 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 autoloader.dump'),.new.InputOpti
28720 6f 6e 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 2c 20 27 61 27 on('classmap-authoritative',.'a'
28740 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 75 74 6f ,.InputOption::VALUE_NONE,.'Auto
28760 6c 6f 61 64 20 63 6c 61 73 73 65 73 20 66 72 6f 6d 20 74 68 65 20 63 6c 61 73 73 6d 61 70 20 6f load.classes.from.the.classmap.o
28780 6e 6c 79 2e 20 49 6d 70 6c 69 63 69 74 6c 79 20 65 6e 61 62 6c 65 73 20 60 2d 2d 6f 70 74 69 6d nly..Implicitly.enables.`--optim
287a0 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 60 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 ize-autoloader`.'),.)).->setHelp
287c0 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 72 65 71 75 69 72 65 20 63 6f 6d 6d 61 6e 64 20 61 64 64 73 (<<<EOT.The.require.command.adds
287e0 20 72 65 71 75 69 72 65 64 20 70 61 63 6b 61 67 65 73 20 74 6f 20 79 6f 75 72 20 63 6f 6d 70 6f .required.packages.to.your.compo
28800 73 65 72 2e 6a 73 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 73 20 74 68 65 6d 2e 0a 0a 49 66 20 ser.json.and.installs.them...If.
28820 79 6f 75 20 64 6f 20 6e 6f 74 20 73 70 65 63 69 66 79 20 61 20 76 65 72 73 69 6f 6e 20 63 6f 6e you.do.not.specify.a.version.con
28840 73 74 72 61 69 6e 74 2c 20 63 6f 6d 70 6f 73 65 72 20 77 69 6c 6c 20 63 68 6f 6f 73 65 20 61 20 straint,.composer.will.choose.a.
28860 73 75 69 74 61 62 6c 65 20 6f 6e 65 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 61 76 61 69 6c 61 suitable.one.based.on.the.availa
28880 62 6c 65 20 70 61 63 6b 61 67 65 20 76 65 72 73 69 6f 6e 73 2e 0a 0a 49 66 20 79 6f 75 20 64 6f ble.package.versions...If.you.do
288a0 20 6e 6f 74 20 77 61 6e 74 20 74 6f 20 69 6e 73 74 61 6c 6c 20 74 68 65 20 6e 65 77 20 64 65 70 .not.want.to.install.the.new.dep
288c0 65 6e 64 65 6e 63 69 65 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 79 6f 75 20 63 61 6e 20 63 61 endencies.immediately.you.can.ca
288e0 6c 6c 20 69 74 20 77 69 74 68 20 2d 2d 6e 6f 2d 75 70 64 61 74 65 0a 0a 45 4f 54 0a 29 0a 3b 0a ll.it.with.--no-update..EOT.).;.
28900 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e }..protected.function.execute(In
28920 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 putInterface.$input,.OutputInter
28940 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 46 61 63 74 6f 72 79 3a face.$output).{.$file.=.Factory:
28960 3a 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d :getComposerFile();.$io.=.$this-
28980 3e 67 65 74 49 4f 28 29 3b 0a 0a 24 6e 65 77 6c 79 43 72 65 61 74 65 64 20 3d 20 21 66 69 6c 65 >getIO();..$newlyCreated.=.!file
289a0 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 3b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 _exists($file);.if.(!file_exists
289c0 28 24 66 69 6c 65 29 20 26 26 20 21 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 ($file).&&.!file_put_contents($f
289e0 69 6c 65 2c 20 22 7b 5c 6e 7d 5c 6e 22 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f ile,."{\n}\n")).{.$io->writeErro
28a00 72 28 27 3c 65 72 72 6f 72 3e 27 2e 24 66 69 6c 65 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 r('<error>'.$file.'.could.not.be
28a20 20 63 72 65 61 74 65 64 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a .created.</error>');..return.1;.
28a40 7d 0a 69 66 20 28 21 69 73 5f 72 65 61 64 61 62 6c 65 28 24 66 69 6c 65 29 29 20 7b 0a 24 69 6f }.if.(!is_readable($file)).{.$io
28a60 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 27 2e 24 66 69 6c 65 2e 27 20 69 ->writeError('<error>'.$file.'.i
28a80 73 20 6e 6f 74 20 72 65 61 64 61 62 6c 65 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 s.not.readable.</error>');..retu
28aa0 72 6e 20 31 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 77 72 69 74 61 62 6c 65 28 24 66 69 6c 65 29 29 rn.1;.}.if.(!is_writable($file))
28ac0 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 27 2e 24 66 69 .{.$io->writeError('<error>'.$fi
28ae0 6c 65 2e 27 20 69 73 20 6e 6f 74 20 77 72 69 74 61 62 6c 65 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b le.'.is.not.writable.</error>');
28b00 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 69 66 20 28 66 69 6c 65 73 69 7a 65 28 24 66 69 6c ..return.1;.}..if.(filesize($fil
28b20 65 29 20 3d 3d 3d 20 30 29 20 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 e).===.0).{.file_put_contents($f
28b40 69 6c 65 2c 20 22 7b 5c 6e 7d 5c 6e 22 29 3b 0a 7d 0a 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a ile,."{\n}\n");.}..$json.=.new.J
28b60 73 6f 6e 46 69 6c 65 28 24 66 69 6c 65 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e 69 74 sonFile($file);.$composerDefinit
28b80 69 6f 6e 20 3d 20 24 6a 73 6f 6e 2d 3e 72 65 61 64 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 42 61 ion.=.$json->read();.$composerBa
28ba0 63 6b 75 70 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6a 73 6f 6e 2d 3e ckup.=.file_get_contents($json->
28bc0 67 65 74 50 61 74 68 28 29 29 3b 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e getPath());..$composer.=.$this->
28be0 67 65 74 43 6f 6d 70 6f 73 65 72 28 74 72 75 65 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 getComposer(true,.$input->getOpt
28c00 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 29 29 3b 0a 24 72 65 70 6f 73 20 3d 20 24 63 6f ion('no-plugins'));.$repos.=.$co
28c20 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e mposer->getRepositoryManager()->
28c40 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 0a 24 70 6c 61 74 66 6f 72 6d 4f 76 65 getRepositories();..$platformOve
28c60 72 72 69 64 65 73 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d rrides.=.$composer->getConfig()-
28c80 3e 67 65 74 28 27 70 6c 61 74 66 6f 72 6d 27 29 20 3f 3a 20 61 72 72 61 79 28 29 3b 0a 0a 20 24 >get('platform').?:.array();...$
28ca0 74 68 69 73 2d 3e 72 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 this->repos.=.new.CompositeRepos
28cc0 69 74 6f 72 79 28 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 61 72 72 61 79 28 6e 65 77 20 50 6c 61 itory(array_merge(.array(new.Pla
28ce0 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 29 2c 20 24 70 6c 61 74 66 6f tformRepository(array(),.$platfo
28d00 72 6d 4f 76 65 72 72 69 64 65 73 29 29 2c 0a 24 72 65 70 6f 73 0a 29 29 3b 0a 0a 24 70 68 70 56 rmOverrides)),.$repos.));..$phpV
28d20 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 2d 3e 66 69 6e 64 50 61 63 6b 61 ersion.=.$this->repos->findPacka
28d40 67 65 28 27 70 68 70 27 2c 20 27 2a 27 29 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 24 72 ge('php',.'*')->getVersion();.$r
28d60 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 64 65 74 65 72 6d 69 6e 65 52 65 equirements.=.$this->determineRe
28d80 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 69 6e 70 quirements($input,.$output,.$inp
28da0 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 29 2c 20 24 70 68 ut->getArgument('packages'),.$ph
28dc0 70 56 65 72 73 69 6f 6e 29 3b 0a 0a 24 72 65 71 75 69 72 65 4b 65 79 20 3d 20 24 69 6e 70 75 74 pVersion);..$requireKey.=.$input
28de0 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 20 3f 20 27 72 65 71 75 69 72 65 2d 64 65 ->getOption('dev').?.'require-de
28e00 76 27 20 3a 20 27 72 65 71 75 69 72 65 27 3b 0a 24 72 65 6d 6f 76 65 4b 65 79 20 3d 20 24 69 6e v'.:.'require';.$removeKey.=.$in
28e20 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 20 3f 20 27 72 65 71 75 69 72 65 put->getOption('dev').?.'require
28e40 27 20 3a 20 27 72 65 71 75 69 72 65 2d 64 65 76 27 3b 0a 24 62 61 73 65 52 65 71 75 69 72 65 6d '.:.'require-dev';.$baseRequirem
28e60 65 6e 74 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 72 65 71 75 69 72 65 ents.=.array_key_exists($require
28e80 4b 65 79 2c 20 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e 69 74 69 6f 6e 29 20 3f 20 24 63 6f 6d Key,.$composerDefinition).?.$com
28ea0 70 6f 73 65 72 44 65 66 69 6e 69 74 69 6f 6e 5b 24 72 65 71 75 69 72 65 4b 65 79 5d 20 3a 20 61 poserDefinition[$requireKey].:.a
28ec0 72 72 61 79 28 29 3b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 66 rray();.$requirements.=.$this->f
28ee0 6f 72 6d 61 74 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 ormatRequirements($requirements)
28f00 3b 0a 0a 0a 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f ;....$versionParser.=.new.Versio
28f20 6e 50 61 72 73 65 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 6d 65 6e 74 nParser();.foreach.($requirement
28f40 73 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 s.as.$constraint).{.$versionPars
28f60 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 er->parseConstraints($constraint
28f80 29 3b 0a 7d 0a 0a 24 73 6f 72 74 50 61 63 6b 61 67 65 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 );.}..$sortPackages.=.$input->ge
28fa0 74 4f 70 74 69 6f 6e 28 27 73 6f 72 74 2d 70 61 63 6b 61 67 65 73 27 29 20 7c 7c 20 24 63 6f 6d tOption('sort-packages').||.$com
28fc0 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 73 6f 72 74 2d 70 61 poser->getConfig()->get('sort-pa
28fe0 63 6b 61 67 65 73 27 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 46 69 6c ckages');..if.(!$this->updateFil
29000 65 43 6c 65 61 6e 6c 79 28 24 6a 73 6f 6e 2c 20 24 62 61 73 65 52 65 71 75 69 72 65 6d 65 6e 74 eCleanly($json,.$baseRequirement
29020 73 2c 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 24 72 65 71 75 69 72 65 4b 65 79 2c 20 24 s,.$requirements,.$requireKey,.$
29040 72 65 6d 6f 76 65 4b 65 79 2c 20 24 73 6f 72 74 50 61 63 6b 61 67 65 73 29 29 20 7b 0a 66 6f 72 removeKey,.$sortPackages)).{.for
29060 65 61 63 68 20 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 73 20 24 70 61 63 6b 61 67 65 20 each.($requirements.as.$package.
29080 3d 3e 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 62 61 73 65 52 65 71 75 69 72 65 6d 65 6e 74 73 =>.$version).{.$baseRequirements
290a0 5b 24 70 61 63 6b 61 67 65 5d 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 0a 69 66 20 28 69 73 73 65 [$package].=.$version;..if.(isse
290c0 74 28 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e 69 74 69 6f 6e 5b 24 72 65 6d 6f 76 65 4b 65 79 t($composerDefinition[$removeKey
290e0 5d 5b 24 70 61 63 6b 61 67 65 5d 29 29 20 7b 0a 75 6e 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 44 ][$package])).{.unset($composerD
29100 65 66 69 6e 69 74 69 6f 6e 5b 24 72 65 6d 6f 76 65 4b 65 79 5d 5b 24 70 61 63 6b 61 67 65 5d 29 efinition[$removeKey][$package])
29120 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e 69 74 69 6f 6e 5b 24 72 65 71 75 ;.}.}..$composerDefinition[$requ
29140 69 72 65 4b 65 79 5d 20 3d 20 24 62 61 73 65 52 65 71 75 69 72 65 6d 65 6e 74 73 3b 0a 24 6a 73 ireKey].=.$baseRequirements;.$js
29160 6f 6e 2d 3e 77 72 69 74 65 28 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e 69 74 69 6f 6e 29 3b 0a on->write($composerDefinition);.
29180 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 27 2e 24 66 69 6c }..$io->writeError('<info>'.$fil
291a0 65 2e 27 20 68 61 73 20 62 65 65 6e 20 27 2e 28 24 6e 65 77 6c 79 43 72 65 61 74 65 64 20 3f 20 e.'.has.been.'.($newlyCreated.?.
291c0 27 63 72 65 61 74 65 64 27 20 3a 20 27 75 70 64 61 74 65 64 27 29 2e 27 3c 2f 69 6e 66 6f 3e 27 'created'.:.'updated').'</info>'
291e0 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 75 70 );..if.($input->getOption('no-up
29200 64 61 74 65 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 24 75 70 64 61 74 65 44 65 76 date')).{.return.0;.}.$updateDev
29220 4d 6f 64 65 20 3d 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 70 64 61 74 Mode.=.!$input->getOption('updat
29240 65 2d 6e 6f 2d 64 65 76 27 29 3b 0a 24 6f 70 74 69 6d 69 7a 65 20 3d 20 24 69 6e 70 75 74 2d 3e e-no-dev');.$optimize.=.$input->
29260 67 65 74 4f 70 74 69 6f 6e 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 getOption('optimize-autoloader')
29280 20 7c 7c 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 .||.$composer->getConfig()->get(
292a0 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 3b 0a 24 61 75 74 68 6f 72 69 'optimize-autoloader');.$authori
292c0 74 61 74 69 76 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 63 6c 61 73 tative.=.$input->getOption('clas
292e0 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 29 20 7c 7c 20 24 63 6f 6d 70 6f 73 65 smap-authoritative').||.$compose
29300 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 r->getConfig()->get('classmap-au
29320 74 68 6f 72 69 74 61 74 69 76 65 27 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 72 65 73 65 74 43 6f thoritative');....$this->resetCo
29340 6d 70 6f 73 65 72 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 mposer();.$composer.=.$this->get
29360 43 6f 6d 70 6f 73 65 72 28 74 72 75 65 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e Composer(true,.$input->getOption
29380 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 29 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 44 ('no-plugins'));.$composer->getD
293a0 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 2d 3e 73 65 74 4f 75 74 70 75 74 50 72 6f 67 72 ownloadManager()->setOutputProgr
293c0 65 73 73 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 ess(!$input->getOption('no-progr
293e0 65 73 73 27 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d ess'));..$commandEvent.=.new.Com
29400 6d 61 6e 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c mandEvent(PluginEvents::COMMAND,
29420 20 27 72 65 71 75 69 72 65 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 .'require',.$input,.$output);.$c
29440 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 omposer->getEventDispatcher()->d
29460 69 73 70 61 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 ispatch($commandEvent->getName()
29480 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 20 3d 20 49 6e ,.$commandEvent);..$install.=.In
294a0 73 74 61 6c 6c 65 72 3a 3a 63 72 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b staller::create($io,.$composer);
294c0 0a 0a 24 69 6e 73 74 61 6c 6c 0a 2d 3e 73 65 74 56 65 72 62 6f 73 65 28 24 69 6e 70 75 74 2d 3e ..$install.->setVerbose($input->
294e0 67 65 74 4f 70 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 29 29 0a 2d 3e 73 65 74 50 72 65 66 65 getOption('verbose')).->setPrefe
29500 72 53 6f 75 72 63 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 rSource($input->getOption('prefe
29520 72 2d 73 6f 75 72 63 65 27 29 29 0a 2d 3e 73 65 74 50 72 65 66 65 72 44 69 73 74 28 24 69 6e 70 r-source')).->setPreferDist($inp
29540 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 64 69 73 74 27 29 29 0a 2d 3e ut->getOption('prefer-dist')).->
29560 73 65 74 44 65 76 4d 6f 64 65 28 24 75 70 64 61 74 65 44 65 76 4d 6f 64 65 29 0a 2d 3e 73 65 74 setDevMode($updateDevMode).->set
29580 4f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 28 24 6f 70 74 69 6d 69 7a 65 29 0a 2d 3e OptimizeAutoloader($optimize).->
295a0 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 61 75 74 68 6f 72 setClassMapAuthoritative($author
295c0 69 74 61 74 69 76 65 29 0a 2d 3e 73 65 74 55 70 64 61 74 65 28 74 72 75 65 29 0a 2d 3e 73 65 74 itative).->setUpdate(true).->set
295e0 55 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 28 61 72 72 61 79 5f 6b 65 79 73 28 24 72 65 71 75 UpdateWhitelist(array_keys($requ
29600 69 72 65 6d 65 6e 74 73 29 29 0a 2d 3e 73 65 74 57 68 69 74 65 6c 69 73 74 44 65 70 65 6e 64 65 irements)).->setWhitelistDepende
29620 6e 63 69 65 73 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 70 64 61 74 65 2d ncies($input->getOption('update-
29640 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 29 29 0a 2d 3e 73 65 74 49 67 6e 6f 72 65 with-dependencies')).->setIgnore
29660 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e 70 75 74 2d 3e 67 65 74 PlatformRequirements($input->get
29680 4f 70 74 69 6f 6e 28 27 69 67 6e 6f 72 65 2d 70 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 29 29 0a Option('ignore-platform-reqs')).
296a0 3b 0a 0a 24 65 78 63 65 70 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 74 72 79 20 7b 0a 24 73 74 61 ;..$exception.=.null;.try.{.$sta
296c0 74 75 73 20 3d 20 24 69 6e 73 74 61 6c 6c 2d 3e 72 75 6e 28 29 3b 0a 7d 20 63 61 74 63 68 20 28 tus.=.$install->run();.}.catch.(
296e0 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 24 73 74 61 74 75 73 \Exception.$exception).{.$status
29700 20 3d 20 31 3b 0a 7d 0a 69 66 20 28 24 73 74 61 74 75 73 20 21 3d 3d 20 30 29 20 7b 0a 69 66 20 .=.1;.}.if.($status.!==.0).{.if.
29720 28 24 6e 65 77 6c 79 43 72 65 61 74 65 64 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f ($newlyCreated).{.$io->writeErro
29740 72 28 22 5c 6e 22 2e 27 3c 65 72 72 6f 72 3e 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 61 69 6c r("\n".'<error>Installation.fail
29760 65 64 2c 20 64 65 6c 65 74 69 6e 67 20 27 2e 24 66 69 6c 65 2e 27 2e 3c 2f 65 72 72 6f 72 3e 27 ed,.deleting.'.$file.'.</error>'
29780 29 3b 0a 75 6e 6c 69 6e 6b 28 24 6a 73 6f 6e 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 7d 20 65 );.unlink($json->getPath());.}.e
297a0 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 5c 6e 22 2e 27 3c 65 72 72 lse.{.$io->writeError("\n".'<err
297c0 6f 72 3e 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 61 69 6c 65 64 2c 20 72 65 76 65 72 74 69 6e or>Installation.failed,.revertin
297e0 67 20 27 2e 24 66 69 6c 65 2e 27 20 74 6f 20 69 74 73 20 6f 72 69 67 69 6e 61 6c 20 63 6f 6e 74 g.'.$file.'.to.its.original.cont
29800 65 6e 74 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 ent.</error>');.file_put_content
29820 73 28 24 6a 73 6f 6e 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 24 63 6f 6d 70 6f 73 65 72 42 61 63 s($json->getPath(),.$composerBac
29840 6b 75 70 29 3b 0a 7d 0a 7d 0a 69 66 20 28 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f kup);.}.}.if.($exception).{.thro
29860 77 20 24 65 78 63 65 70 74 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 74 75 73 3b w.$exception;.}..return.$status;
29880 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 46 69 6c 65 43 .}..private.function.updateFileC
298a0 6c 65 61 6e 6c 79 28 24 6a 73 6f 6e 2c 20 61 72 72 61 79 20 24 62 61 73 65 2c 20 61 72 72 61 79 leanly($json,.array.$base,.array
298c0 20 24 6e 65 77 2c 20 24 72 65 71 75 69 72 65 4b 65 79 2c 20 24 72 65 6d 6f 76 65 4b 65 79 2c 20 .$new,.$requireKey,.$removeKey,.
298e0 24 73 6f 72 74 50 61 63 6b 61 67 65 73 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 66 69 6c $sortPackages).{.$contents.=.fil
29900 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6a 73 6f 6e 2d 3e 67 65 74 50 61 74 68 28 29 29 e_get_contents($json->getPath())
29920 3b 0a 0a 24 6d 61 6e 69 70 75 6c 61 74 6f 72 20 3d 20 6e 65 77 20 4a 73 6f 6e 4d 61 6e 69 70 75 ;..$manipulator.=.new.JsonManipu
29940 6c 61 74 6f 72 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 65 77 lator($contents);..foreach.($new
29960 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 .as.$package.=>.$constraint).{.i
29980 66 20 28 21 24 6d 61 6e 69 70 75 6c 61 74 6f 72 2d 3e 61 64 64 4c 69 6e 6b 28 24 72 65 71 75 69 f.(!$manipulator->addLink($requi
299a0 72 65 4b 65 79 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 73 reKey,.$package,.$constraint,.$s
299c0 6f 72 74 50 61 63 6b 61 67 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a ortPackages)).{.return.false;.}.
299e0 69 66 20 28 21 24 6d 61 6e 69 70 75 6c 61 74 6f 72 2d 3e 72 65 6d 6f 76 65 53 75 62 4e 6f 64 65 if.(!$manipulator->removeSubNode
29a00 28 24 72 65 6d 6f 76 65 4b 65 79 2c 20 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 72 65 74 75 72 6e ($removeKey,.$package)).{.return
29a20 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 .false;.}.}..file_put_contents($
29a40 6a 73 6f 6e 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 24 6d 61 6e 69 70 75 6c 61 74 6f 72 2d 3e 67 json->getPath(),.$manipulator->g
29a60 65 74 43 6f 6e 74 65 6e 74 73 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a etContents());..return.true;.}..
29a80 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 74 65 72 61 63 74 28 49 6e 70 75 protected.function.interact(Inpu
29aa0 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 tInterface.$input,.OutputInterfa
29ac0 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a ce.$output).{.return;.}.}.<?php.
29ae0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f ...........namespace.Composer\Co
29b00 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 43 6f 6d 6d mmand;..use.Composer\Script\Comm
29b20 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 53 63 andEvent;.use.Composer\Script\Sc
29b40 72 69 70 74 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 riptEvents;.use.Composer\Util\Pr
29b60 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f ocessExecutor;.use.Symfony\Compo
29b80 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 nent\Console\Input\InputInterfac
29ba0 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 e;.use.Symfony\Component\Console
29bc0 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c \Input\InputOption;.use.Symfony\
29be0 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 Component\Console\Input\InputArg
29c00 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e ument;.use.Symfony\Component\Con
29c20 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a sole\Output\OutputInterface;....
29c40 0a 63 6c 61 73 73 20 52 75 6e 53 63 72 69 70 74 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 .class.RunScriptCommand.extends.
29c60 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 63 72 69 BaseCommand.{....protected.$scri
29c80 70 74 45 76 65 6e 74 73 20 3d 20 61 72 72 61 79 28 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a ptEvents.=.array(.ScriptEvents::
29ca0 50 52 45 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 PRE_INSTALL_CMD,.ScriptEvents::P
29cc0 4f 53 54 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 OST_INSTALL_CMD,.ScriptEvents::P
29ce0 52 45 5f 55 50 44 41 54 45 5f 43 4d 44 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 RE_UPDATE_CMD,.ScriptEvents::POS
29d00 54 5f 55 50 44 41 54 45 5f 43 4d 44 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f T_UPDATE_CMD,.ScriptEvents::PRE_
29d20 53 54 41 54 55 53 5f 43 4d 44 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 53 STATUS_CMD,.ScriptEvents::POST_S
29d40 54 41 54 55 53 5f 43 4d 44 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 52 4f TATUS_CMD,.ScriptEvents::POST_RO
29d60 4f 54 5f 50 41 43 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 OT_PACKAGE_INSTALL,.ScriptEvents
29d80 3a 3a 50 4f 53 54 5f 43 52 45 41 54 45 5f 50 52 4f 4a 45 43 54 5f 43 4d 44 2c 0a 53 63 72 69 70 ::POST_CREATE_PROJECT_CMD,.Scrip
29da0 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 41 52 43 48 49 56 45 5f 43 4d 44 2c 0a 53 63 72 69 70 74 tEvents::PRE_ARCHIVE_CMD,.Script
29dc0 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 41 52 43 48 49 56 45 5f 43 4d 44 2c 0a 53 63 72 69 70 74 Events::POST_ARCHIVE_CMD,.Script
29de0 45 76 65 6e 74 73 3a 3a 50 52 45 5f 41 55 54 4f 4c 4f 41 44 5f 44 55 4d 50 2c 0a 53 63 72 69 70 Events::PRE_AUTOLOAD_DUMP,.Scrip
29e00 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 41 55 54 4f 4c 4f 41 44 5f 44 55 4d 50 2c 0a 29 3b 0a tEvents::POST_AUTOLOAD_DUMP,.);.
29e20 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a .protected.function.configure().
29e40 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 72 75 6e 2d 73 63 72 69 70 74 27 29 0a {.$this.->setName('run-script').
29e60 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 52 75 6e 20 74 68 65 20 73 63 72 69 70 74 ->setDescription('Run.the.script
29e80 73 20 64 65 66 69 6e 65 64 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2e 27 29 0a 2d 3e s.defined.in.composer.json.').->
29ea0 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 setDefinition(array(.new.InputAr
29ec0 67 75 6d 65 6e 74 28 27 73 63 72 69 70 74 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a gument('script',.InputArgument::
29ee0 4f 50 54 49 4f 4e 41 4c 2c 20 27 53 63 72 69 70 74 20 6e 61 6d 65 20 74 6f 20 72 75 6e 2e 27 29 OPTIONAL,.'Script.name.to.run.')
29f00 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 61 72 67 73 27 2c 20 49 6e 70 75 ,.new.InputArgument('args',.Inpu
29f20 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 72 67 75 6d tArgument::IS_ARRAY.|.InputArgum
29f40 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 ent::OPTIONAL,.''),.new.InputOpt
29f60 69 6f 6e 28 27 74 69 6d 65 6f 75 74 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e ion('timeout',.null,.InputOption
29f80 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 53 65 74 73 20 73 63 72 69 70 74 20 74 ::VALUE_REQUIRED,.'Sets.script.t
29fa0 69 6d 65 6f 75 74 20 69 6e 20 73 65 63 6f 6e 64 73 2c 20 6f 72 20 30 20 66 6f 72 20 6e 65 76 65 imeout.in.seconds,.or.0.for.neve
29fc0 72 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c r.'),.new.InputOption('dev',.nul
29fe0 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 65 74 l,.InputOption::VALUE_NONE,.'Set
2a000 73 20 74 68 65 20 64 65 76 20 6d 6f 64 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 s.the.dev.mode.'),.new.InputOpti
2a020 6f 6e 28 27 6e 6f 2d 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a on('no-dev',.null,.InputOption::
2a040 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 74 68 65 20 64 65 76 20 6d 6f VALUE_NONE,.'Disables.the.dev.mo
2a060 64 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6c 69 73 74 27 2c 20 27 de.'),.new.InputOption('list',.'
2a080 6c 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4c 69 l',.InputOption::VALUE_NONE,.'Li
2a0a0 73 74 20 73 63 72 69 70 74 73 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 st.scripts.'),.)).->setHelp(<<<E
2a0c0 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 72 75 6e 2d 73 63 72 69 70 74 3c 2f 69 6e 66 6f 3e 20 63 OT.The.<info>run-script</info>.c
2a0e0 6f 6d 6d 61 6e 64 20 72 75 6e 73 20 73 63 72 69 70 74 73 20 64 65 66 69 6e 65 64 20 69 6e 20 63 ommand.runs.scripts.defined.in.c
2a100 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 3a 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 omposer.json:..<info>php.compose
2a120 72 2e 70 68 61 72 20 72 75 6e 2d 73 63 72 69 70 74 20 70 6f 73 74 2d 75 70 64 61 74 65 2d 63 6d r.phar.run-script.post-update-cm
2a140 64 3c 2f 69 6e 66 6f 3e 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 d</info>.EOT.).;.}..protected.fu
2a160 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 nction.execute(InputInterface.$i
2a180 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b nput,.OutputInterface.$output).{
2a1a0 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6c 69 73 74 27 29 29 20 .if.($input->getOption('list')).
2a1c0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 69 73 74 53 63 72 69 70 74 73 28 29 3b 0a 7d {.return.$this->listScripts();.}
2a1e0 20 65 6c 73 65 69 66 20 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 73 .elseif.(!$input->getArgument('s
2a200 63 72 69 70 74 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 54 69 6d 65 45 78 63 cript')).{.throw.new.\RunTimeExc
2a220 65 70 74 69 6f 6e 28 27 4d 69 73 73 69 6e 67 20 72 65 71 75 69 72 65 64 20 61 72 67 75 6d 65 6e eption('Missing.required.argumen
2a240 74 20 22 73 63 72 69 70 74 22 27 29 3b 0a 7d 0a 0a 24 73 63 72 69 70 74 20 3d 20 24 69 6e 70 75 t."script"');.}..$script.=.$inpu
2a260 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 73 63 72 69 70 74 27 29 3b 0a 69 66 20 28 21 69 t->getArgument('script');.if.(!i
2a280 6e 5f 61 72 72 61 79 28 24 73 63 72 69 70 74 2c 20 24 74 68 69 73 2d 3e 73 63 72 69 70 74 45 76 n_array($script,.$this->scriptEv
2a2a0 65 6e 74 73 29 29 20 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 43 6f 6d 70 6f 73 65 72 5c 53 ents)).{.if.(defined('Composer\S
2a2c0 63 72 69 70 74 5c 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 27 2e 73 74 72 5f 72 65 70 6c 61 63 cript\ScriptEvents::'.str_replac
2a2e0 65 28 27 2d 27 2c 20 27 5f 27 2c 20 73 74 72 74 6f 75 70 70 65 72 28 24 73 63 72 69 70 74 29 29 e('-',.'_',.strtoupper($script))
2a300 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 )).{.throw.new.\InvalidArgumentE
2a320 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 53 63 72 69 70 74 20 22 25 73 22 20 63 61 xception(sprintf('Script."%s".ca
2a340 6e 6e 6f 74 20 62 65 20 72 75 6e 20 77 69 74 68 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 27 2c 20 nnot.be.run.with.this.command',.
2a360 24 73 63 72 69 70 74 29 29 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 $script));.}.}..$composer.=.$thi
2a380 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 24 68 61 73 4c 69 73 74 65 6e 65 72 73 20 s->getComposer();.$hasListeners.
2a3a0 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 =.$composer->getEventDispatcher(
2a3c0 29 2d 3e 68 61 73 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 73 28 6e 65 77 20 43 6f 6d 6d 61 6e 64 )->hasEventListeners(new.Command
2a3e0 45 76 65 6e 74 28 24 73 63 72 69 70 74 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 68 69 73 2d Event($script,.$composer,.$this-
2a400 3e 67 65 74 49 4f 28 29 29 29 3b 0a 69 66 20 28 21 24 68 61 73 4c 69 73 74 65 6e 65 72 73 29 20 >getIO()));.if.(!$hasListeners).
2a420 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 {.throw.new.\InvalidArgumentExce
2a440 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 53 63 72 69 70 74 20 22 25 73 22 20 69 73 20 6e 6f ption(sprintf('Script."%s".is.no
2a460 74 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 69 73 20 70 61 63 6b 61 67 65 27 2c 20 24 73 63 72 t.defined.in.this.package',.$scr
2a480 69 70 74 29 29 3b 0a 7d 0a 0a 24 61 72 67 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 ipt));.}..$args.=.$input->getArg
2a4a0 75 6d 65 6e 74 28 27 61 72 67 73 27 29 3b 0a 0a 69 66 20 28 21 69 73 5f 6e 75 6c 6c 28 24 74 69 ument('args');..if.(!is_null($ti
2a4c0 6d 65 6f 75 74 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 74 69 6d 65 6f meout.=.$input->getOption('timeo
2a4e0 75 74 27 29 29 29 20 7b 0a 69 66 20 28 21 63 74 79 70 65 5f 64 69 67 69 74 28 24 74 69 6d 65 6f ut'))).{.if.(!ctype_digit($timeo
2a500 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 ut)).{.throw.new.\RuntimeExcepti
2a520 6f 6e 28 27 54 69 6d 65 6f 75 74 20 76 61 6c 75 65 20 6d 75 73 74 20 62 65 20 6e 75 6d 65 72 69 on('Timeout.value.must.be.numeri
2a540 63 20 61 6e 64 20 70 6f 73 69 74 69 76 65 20 69 66 20 64 65 66 69 6e 65 64 2c 20 6f 72 20 30 20 c.and.positive.if.defined,.or.0.
2a560 66 6f 72 20 66 6f 72 65 76 65 72 27 29 3b 0a 7d 0a 0a 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 for.forever');.}...ProcessExecut
2a580 6f 72 3a 3a 73 65 74 54 69 6d 65 6f 75 74 28 28 69 6e 74 29 20 24 74 69 6d 65 6f 75 74 29 3b 0a or::setTimeout((int).$timeout);.
2a5a0 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 }..return.$composer->getEventDis
2a5c0 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 24 73 63 72 69 70 patcher()->dispatchScript($scrip
2a5e0 74 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 20 7c 7c 20 21 t,.$input->getOption('dev').||.!
2a600 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 29 2c 20 24 61 72 $input->getOption('no-dev'),.$ar
2a620 67 73 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6c 69 73 74 53 gs);.}..protected.function.listS
2a640 63 72 69 70 74 73 28 29 0a 7b 0a 24 73 63 72 69 70 74 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 cripts().{.$scripts.=.$this->get
2a660 43 6f 6d 70 6f 73 65 72 28 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 53 63 72 Composer()->getPackage()->getScr
2a680 69 70 74 73 28 29 3b 0a 0a 69 66 20 28 21 63 6f 75 6e 74 28 24 73 63 72 69 70 74 73 29 29 20 7b ipts();..if.(!count($scripts)).{
2a6a0 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f .return.0;.}..$io.=.$this->getIO
2a6c0 28 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 73 63 72 69 70 ();.$io->writeError('<info>scrip
2a6e0 74 73 3a 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 73 63 72 69 70 74 73 20 ts:</info>');.foreach.($scripts.
2a700 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 73 63 72 69 70 74 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 as.$name.=>.$script).{.$io->writ
2a720 65 28 27 20 20 27 20 2e 20 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a e('..'...$name);.}..return.0;.}.
2a740 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d }.<?php............namespace.Com
2a760 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 poser\Command;..use.Symfony\Comp
2a780 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 onent\Console\Input\InputInterfa
2a7a0 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c ce;.use.Symfony\Component\Consol
2a7c0 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 e\Input\InputOption;.use.Symfony
2a7e0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 \Component\Console\Input\InputAr
2a800 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f gument;.use.Symfony\Component\Co
2a820 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a nsole\Output\OutputInterface;...
2a840 0a 0a 63 6c 61 73 73 20 53 63 72 69 70 74 41 6c 69 61 73 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e ..class.ScriptAliasCommand.exten
2a860 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 69 76 61 74 65 20 24 73 63 72 69 70 74 ds.BaseCommand.{.private.$script
2a880 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 ;..public.function.__construct($
2a8a0 73 63 72 69 70 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 63 72 69 70 74 20 3d 20 24 73 63 72 69 70 script).{.$this->script.=.$scrip
2a8c0 74 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 3b 0a 7d 0a 0a 70 72 t;..parent::__construct();.}..pr
2a8e0 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 otected.function.configure().{.$
2a900 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 24 74 68 69 73 2d 3e 73 63 72 69 70 74 29 0a 2d 3e this.->setName($this->script).->
2a920 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 52 75 6e 20 74 68 65 20 27 2e 24 74 68 69 73 2d setDescription('Run.the.'.$this-
2a940 3e 73 63 72 69 70 74 2e 27 20 73 63 72 69 70 74 20 61 73 20 64 65 66 69 6e 65 64 20 69 6e 20 63 >script.'.script.as.defined.in.c
2a960 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 omposer.json.').->setDefinition(
2a980 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 array(.new.InputOption('dev',.nu
2a9a0 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 65 ll,.InputOption::VALUE_NONE,.'Se
2a9c0 74 73 20 74 68 65 20 64 65 76 20 6d 6f 64 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 ts.the.dev.mode.'),.new.InputOpt
2a9e0 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a ion('no-dev',.null,.InputOption:
2aa00 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 74 68 65 20 64 65 76 20 6d :VALUE_NONE,.'Disables.the.dev.m
2aa20 6f 64 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 61 72 67 73 27 ode.'),.new.InputArgument('args'
2aa40 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 ,.InputArgument::IS_ARRAY.|.Inpu
2aa60 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 27 29 2c 0a 29 29 0a 2d 3e 73 tArgument::OPTIONAL,.''),.)).->s
2aa80 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 72 75 6e 2d 73 63 72 69 etHelp(<<<EOT.The.<info>run-scri
2aaa0 70 74 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 72 75 6e 73 20 73 63 72 69 70 74 73 20 64 pt</info>.command.runs.scripts.d
2aac0 65 66 69 6e 65 64 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 3a 0a 0a 3c 69 6e 66 6f 3e efined.in.composer.json:..<info>
2aae0 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 72 75 6e 2d 73 63 72 69 70 74 20 70 6f 73 php.composer.phar.run-script.pos
2ab00 74 2d 75 70 64 61 74 65 2d 63 6d 64 3c 2f 69 6e 66 6f 3e 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 t-update-cmd</info>.EOT.).;.}..p
2ab20 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 rotected.function.execute(InputI
2ab40 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 nterface.$input,.OutputInterface
2ab60 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 .$output).{.$composer.=.$this->g
2ab80 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 0a 24 61 72 67 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 etComposer();..$args.=.$input->g
2aba0 65 74 41 72 67 75 6d 65 6e 74 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 73 65 72 etArguments();..return.$composer
2abc0 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 ->getEventDispatcher()->dispatch
2abe0 53 63 72 69 70 74 28 24 74 68 69 73 2d 3e 73 63 72 69 70 74 2c 20 24 69 6e 70 75 74 2d 3e 67 65 Script($this->script,.$input->ge
2ac00 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 20 7c 7c 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 tOption('dev').||.!$input->getOp
2ac20 74 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 29 2c 20 24 61 72 67 73 5b 27 61 72 67 73 27 5d 29 3b 0a tion('no-dev'),.$args['args']);.
2ac40 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 }.}.<?php............namespace.C
2ac60 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 omposer\Command;..use.Composer\F
2ac80 61 63 74 6f 72 79 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f actory;.use.Symfony\Component\Co
2aca0 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 nsole\Input\InputInterface;.use.
2acc0 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c Symfony\Component\Console\Input\
2ace0 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f InputArgument;.use.Symfony\Compo
2ad00 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a nent\Console\Input\InputOption;.
2ad20 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 use.Symfony\Component\Console\Ou
2ad40 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 tput\OutputInterface;.use.Compos
2ad60 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 er\Repository\CompositeRepositor
2ad80 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 y;.use.Composer\Repository\Platf
2ada0 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f ormRepository;.use.Composer\Repo
2adc0 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f sitory\RepositoryFactory;.use.Co
2ade0 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 mposer\Repository\RepositoryInte
2ae00 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 6f 6d 6d 61 rface;.use.Composer\Plugin\Comma
2ae20 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 ndEvent;.use.Composer\Plugin\Plu
2ae40 67 69 6e 45 76 65 6e 74 73 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 65 61 72 63 68 43 6f 6d 6d 61 ginEvents;.....class.SearchComma
2ae60 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 nd.extends.BaseCommand.{.protect
2ae80 65 64 20 24 6d 61 74 63 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 77 4d 61 74 63 68 ed.$matches;.protected.$lowMatch
2aea0 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 6f 6b 65 6e 73 3b es.=.array();.protected.$tokens;
2aec0 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 75 74 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f .protected.$output;.protected.$o
2aee0 6e 6c 79 4e 61 6d 65 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e nlyName;..protected.function.con
2af00 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 73 65 61 72 figure().{.$this.->setName('sear
2af20 63 68 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 65 61 72 63 68 20 66 6f ch').->setDescription('Search.fo
2af40 72 20 70 61 63 6b 61 67 65 73 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 r.packages').->setDefinition(arr
2af60 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6f 6e 6c 79 2d 6e 61 6d 65 27 2c ay(.new.InputOption('only-name',
2af80 20 27 4e 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 .'N',.InputOption::VALUE_NONE,.'
2afa0 53 65 61 72 63 68 20 6f 6e 6c 79 20 69 6e 20 6e 61 6d 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 Search.only.in.name'),.new.Input
2afc0 41 72 67 75 6d 65 6e 74 28 27 74 6f 6b 65 6e 73 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 Argument('tokens',.InputArgument
2afe0 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 52 45 51 55 ::IS_ARRAY.|.InputArgument::REQU
2b000 49 52 45 44 2c 20 27 74 6f 6b 65 6e 73 20 74 6f 20 73 65 61 72 63 68 20 66 6f 72 27 29 2c 0a 29 IRED,.'tokens.to.search.for'),.)
2b020 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 73 65 61 72 63 68 20 63 6f ).->setHelp(<<<EOT.The.search.co
2b040 6d 6d 61 6e 64 20 73 65 61 72 63 68 65 73 20 66 6f 72 20 70 61 63 6b 61 67 65 73 20 62 79 20 69 mmand.searches.for.packages.by.i
2b060 74 73 20 6e 61 6d 65 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 ts.name.<info>php.composer.phar.
2b080 73 65 61 72 63 68 20 73 79 6d 66 6f 6e 79 20 63 6f 6d 70 6f 73 65 72 3c 2f 69 6e 66 6f 3e 0a 0a search.symfony.composer</info>..
2b0a0 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 EOT.).;.}..protected.function.ex
2b0c0 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 ecute(InputInterface.$input,.Out
2b0e0 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 0a 20 24 70 6c 61 74 66 putInterface.$output).{...$platf
2b100 6f 72 6d 52 65 70 6f 20 3d 20 6e 65 77 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 ormRepo.=.new.PlatformRepository
2b120 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 69 66 20 28 21 28 24 63 ;.$io.=.$this->getIO();.if.(!($c
2b140 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 66 61 6c omposer.=.$this->getComposer(fal
2b160 73 65 29 29 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 se))).{.$composer.=.Factory::cre
2b180 61 74 65 28 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2c 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a ate($this->getIO(),.array());.}.
2b1a0 24 6c 6f 63 61 6c 52 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 $localRepo.=.$composer->getRepos
2b1c0 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f itoryManager()->getLocalReposito
2b1e0 72 79 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f ry();.$installedRepo.=.new.Compo
2b200 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 6c 6f 63 61 6c 52 65 70 6f 2c siteRepository(array($localRepo,
2b220 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 29 29 3b 0a 24 72 65 70 6f 73 20 3d 20 6e 65 77 20 43 .$platformRepo));.$repos.=.new.C
2b240 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 5f 6d 65 72 67 65 28 61 ompositeRepository(array_merge(a
2b260 72 72 61 79 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 2c 20 24 63 6f 6d 70 6f 73 65 72 2d rray($installedRepo),.$composer-
2b280 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 52 65 70 6f >getRepositoryManager()->getRepo
2b2a0 73 69 74 6f 72 69 65 73 28 29 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e sitories()));..$commandEvent.=.n
2b2c0 65 77 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f ew.CommandEvent(PluginEvents::CO
2b2e0 4d 4d 41 4e 44 2c 20 27 73 65 61 72 63 68 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 MMAND,.'search',.$input,.$output
2b300 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 );.$composer->getEventDispatcher
2b320 28 29 2d 3e 64 69 73 70 61 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e ()->dispatch($commandEvent->getN
2b340 61 6d 65 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 0a 24 6f 6e 6c 79 4e 61 6d ame(),.$commandEvent);..$onlyNam
2b360 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6f 6e 6c 79 2d 6e 61 6d 65 e.=.$input->getOption('only-name
2b380 27 29 3b 0a 0a 24 66 6c 61 67 73 20 3d 20 24 6f 6e 6c 79 4e 61 6d 65 20 3f 20 52 65 70 6f 73 69 ');..$flags.=.$onlyName.?.Reposi
2b3a0 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3a 3a 53 45 41 52 43 48 5f 4e 41 4d 45 20 3a 20 52 65 70 toryInterface::SEARCH_NAME.:.Rep
2b3c0 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3a 3a 53 45 41 52 43 48 5f 46 55 4c 4c 54 45 58 ositoryInterface::SEARCH_FULLTEX
2b3e0 54 3b 0a 24 72 65 73 75 6c 74 73 20 3d 20 24 72 65 70 6f 73 2d 3e 73 65 61 72 63 68 28 69 6d 70 T;.$results.=.$repos->search(imp
2b400 6c 6f 64 65 28 27 20 27 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 74 lode('.',.$input->getArgument('t
2b420 6f 6b 65 6e 73 27 29 29 2c 20 24 66 6c 61 67 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 okens')),.$flags);..foreach.($re
2b440 73 75 6c 74 73 20 61 73 20 24 72 65 73 75 6c 74 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 sults.as.$result).{.$io->write($
2b460 72 65 73 75 6c 74 5b 27 6e 61 6d 65 27 5d 20 2e 20 28 69 73 73 65 74 28 24 72 65 73 75 6c 74 5b result['name']...(isset($result[
2b480 27 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 29 20 3f 20 27 20 27 2e 20 24 72 65 73 75 6c 74 5b 27 'description']).?.'.'..$result['
2b4a0 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 20 3a 20 27 27 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 description'].:.''));.}.}.}.<?ph
2b4c0 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c p............namespace.Composer\
2b4e0 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b Command;..use.Composer\Composer;
2b500 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f .use.Composer\Factory;.use.Compo
2b520 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 ser\Config;.use.Composer\Util\Fi
2b540 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6c 66 55 70 64 61 74 lesystem;.use.Composer\SelfUpdat
2b560 65 5c 4b 65 79 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6c 66 55 70 64 61 74 65 5c e\Keys;.use.Composer\SelfUpdate\
2b580 56 65 72 73 69 6f 6e 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 Versions;.use.Composer\IO\IOInte
2b5a0 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 46 rface;.use.Composer\Downloader\F
2b5c0 69 6c 65 73 79 73 74 65 6d 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c ilesystemException;.use.Symfony\
2b5e0 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 Component\Console\Input\InputInt
2b600 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f erface;.use.Symfony\Component\Co
2b620 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d nsole\Input\InputOption;.use.Sym
2b640 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 fony\Component\Console\Input\Inp
2b660 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e utArgument;.use.Symfony\Componen
2b680 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 t\Console\Output\OutputInterface
2b6a0 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 46 ;.use.Symfony\Component\Finder\F
2b6c0 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 65 6c 66 55 70 64 61 74 65 43 6f 6d inder;.......class.SelfUpdateCom
2b6e0 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 63 6f 6e 73 74 mand.extends.BaseCommand.{.const
2b700 20 48 4f 4d 45 50 41 47 45 20 3d 20 27 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 27 3b 0a 63 .HOMEPAGE.=.'getcomposer.org';.c
2b720 6f 6e 73 74 20 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 54 20 3d 20 27 2d 6f 6c 64 2e 70 68 61 onst.OLD_INSTALL_EXT.=.'-old.pha
2b740 72 27 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 r';..protected.function.configur
2b760 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 73 65 6c 66 2d 75 70 64 61 e().{.$this.->setName('self-upda
2b780 74 65 27 29 0a 2d 3e 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 28 27 73 65 6c 66 75 70 64 te').->setAliases(array('selfupd
2b7a0 61 74 65 27 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 55 70 64 61 74 65 73 ate')).->setDescription('Updates
2b7c0 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 74 6f 20 74 68 65 20 6c 61 74 65 73 74 20 76 65 72 .composer.phar.to.the.latest.ver
2b7e0 73 69 6f 6e 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e sion.').->setDefinition(array(.n
2b800 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 6f 6c 6c 62 61 63 6b 27 2c 20 27 72 27 2c 20 ew.InputOption('rollback',.'r',.
2b820 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 52 65 76 65 72 74 InputOption::VALUE_NONE,.'Revert
2b840 20 74 6f 20 61 6e 20 6f 6c 64 65 72 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 63 6f 6d .to.an.older.installation.of.com
2b860 70 6f 73 65 72 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 63 6c 65 61 6e 2d poser'),.new.InputOption('clean-
2b880 62 61 63 6b 75 70 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c backups',.null,.InputOption::VAL
2b8a0 55 45 5f 4e 4f 4e 45 2c 20 27 44 65 6c 65 74 65 20 6f 6c 64 20 62 61 63 6b 75 70 73 20 64 75 72 UE_NONE,.'Delete.old.backups.dur
2b8c0 69 6e 67 20 61 6e 20 75 70 64 61 74 65 2e 20 54 68 69 73 20 6d 61 6b 65 73 20 74 68 65 20 63 75 ing.an.update..This.makes.the.cu
2b8e0 72 72 65 6e 74 20 76 65 72 73 69 6f 6e 20 6f 66 20 63 6f 6d 70 6f 73 65 72 20 74 68 65 20 6f 6e rrent.version.of.composer.the.on
2b900 6c 79 20 62 61 63 6b 75 70 20 61 76 61 69 6c 61 62 6c 65 20 61 66 74 65 72 20 74 68 65 20 75 70 ly.backup.available.after.the.up
2b920 64 61 74 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 date'),.new.InputArgument('versi
2b940 6f 6e 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 54 on',.InputArgument::OPTIONAL,.'T
2b960 68 65 20 76 65 72 73 69 6f 6e 20 74 6f 20 75 70 64 61 74 65 20 74 6f 27 29 2c 0a 6e 65 77 20 49 he.version.to.update.to'),.new.I
2b980 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 27 2c 20 6e 75 6c 6c 2c 20 nputOption('no-progress',.null,.
2b9a0 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 20 6e 6f 74 InputOption::VALUE_NONE,.'Do.not
2b9c0 20 6f 75 74 70 75 74 20 64 6f 77 6e 6c 6f 61 64 20 70 72 6f 67 72 65 73 73 2e 27 29 2c 0a 6e 65 .output.download.progress.'),.ne
2b9e0 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 75 70 64 61 74 65 2d 6b 65 79 73 27 2c 20 6e 75 6c w.InputOption('update-keys',.nul
2ba00 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 50 72 6f l,.InputOption::VALUE_NONE,.'Pro
2ba20 6d 70 74 20 75 73 65 72 20 66 6f 72 20 61 20 6b 65 79 20 75 70 64 61 74 65 27 29 2c 0a 6e 65 77 mpt.user.for.a.key.update'),.new
2ba40 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 6c 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 .InputOption('stable',.null,.Inp
2ba60 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 20 61 6e 20 utOption::VALUE_NONE,.'Force.an.
2ba80 75 70 64 61 74 65 20 74 6f 20 74 68 65 20 73 74 61 62 6c 65 20 63 68 61 6e 6e 65 6c 27 29 2c 0a update.to.the.stable.channel'),.
2baa0 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 65 76 69 65 77 27 2c 20 6e 75 6c 6c 2c new.InputOption('preview',.null,
2bac0 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 .InputOption::VALUE_NONE,.'Force
2bae0 20 61 6e 20 75 70 64 61 74 65 20 74 6f 20 74 68 65 20 70 72 65 76 69 65 77 20 63 68 61 6e 6e 65 .an.update.to.the.preview.channe
2bb00 6c 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 73 6e 61 70 73 68 6f 74 27 2c l'),.new.InputOption('snapshot',
2bb20 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 .null,.InputOption::VALUE_NONE,.
2bb40 27 46 6f 72 63 65 20 61 6e 20 75 70 64 61 74 65 20 74 6f 20 74 68 65 20 73 6e 61 70 73 68 6f 74 'Force.an.update.to.the.snapshot
2bb60 20 63 68 61 6e 6e 65 6c 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a .channel'),.)).->setHelp(<<<EOT.
2bb80 54 68 65 20 3c 69 6e 66 6f 3e 73 65 6c 66 2d 75 70 64 61 74 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d The.<info>self-update</info>.com
2bba0 6d 61 6e 64 20 63 68 65 63 6b 73 20 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 20 66 6f 72 20 mand.checks.getcomposer.org.for.
2bbc0 6e 65 77 65 72 0a 76 65 72 73 69 6f 6e 73 20 6f 66 20 63 6f 6d 70 6f 73 65 72 20 61 6e 64 20 69 newer.versions.of.composer.and.i
2bbe0 66 20 66 6f 75 6e 64 2c 20 69 6e 73 74 61 6c 6c 73 20 74 68 65 20 6c 61 74 65 73 74 2e 0a 0a 3c f.found,.installs.the.latest...<
2bc00 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 73 65 6c 66 2d 75 70 64 61 info>php.composer.phar.self-upda
2bc20 74 65 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 te</info>..EOT.).;.}..protected.
2bc40 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 function.execute(InputInterface.
2bc60 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 $input,.OutputInterface.$output)
2bc80 0a 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 43 6f 6e 66 .{.$config.=.Factory::createConf
2bca0 69 67 28 29 3b 0a 0a 69 66 20 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 64 69 73 61 62 6c 65 ig();..if.($config->get('disable
2bcc0 2d 74 6c 73 27 29 20 3d 3d 3d 20 74 72 75 65 29 20 7b 0a 24 62 61 73 65 55 72 6c 20 3d 20 27 68 -tls').===.true).{.$baseUrl.=.'h
2bce0 74 74 70 3a 2f 2f 27 20 2e 20 73 65 6c 66 3a 3a 48 4f 4d 45 50 41 47 45 3b 0a 7d 20 65 6c 73 65 ttp://'...self::HOMEPAGE;.}.else
2bd00 20 7b 0a 24 62 61 73 65 55 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 27 20 2e 20 73 65 6c 66 3a .{.$baseUrl.=.'https://'...self:
2bd20 3a 48 4f 4d 45 50 41 47 45 3b 0a 7d 0a 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f :HOMEPAGE;.}..$io.=.$this->getIO
2bd40 28 29 3b 0a 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3d 20 46 61 63 74 6f 72 79 3a ();.$remoteFilesystem.=.Factory:
2bd60 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 69 6f 2c 20 24 63 6f :createRemoteFilesystem($io,.$co
2bd80 6e 66 69 67 29 3b 0a 0a 24 76 65 72 73 69 6f 6e 73 55 74 69 6c 20 3d 20 6e 65 77 20 56 65 72 73 nfig);..$versionsUtil.=.new.Vers
2bda0 69 6f 6e 73 28 24 63 6f 6e 66 69 67 2c 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 29 ions($config,.$remoteFilesystem)
2bdc0 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 73 74 61 62 6c 65 27 2c 20 27 70 ;....foreach.(array('stable',.'p
2bde0 72 65 76 69 65 77 27 2c 20 27 73 6e 61 70 73 68 6f 74 27 29 20 61 73 20 24 63 68 61 6e 6e 65 6c review',.'snapshot').as.$channel
2be00 29 20 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 24 63 68 61 6e 6e ).{.if.($input->getOption($chann
2be20 65 6c 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 73 55 74 69 6c 2d 3e 73 65 74 43 68 61 6e 6e 65 6c el)).{.$versionsUtil->setChannel
2be40 28 24 63 68 61 6e 6e 65 6c 29 3b 0a 7d 0a 7d 0a 0a 24 63 61 63 68 65 44 69 72 20 3d 20 24 63 6f ($channel);.}.}..$cacheDir.=.$co
2be60 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 64 69 72 27 29 3b 0a 24 72 6f 6c 6c 62 61 63 nfig->get('cache-dir');.$rollbac
2be80 6b 44 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 64 61 74 61 2d 64 69 72 27 29 3b kDir.=.$config->get('data-dir');
2bea0 0a 24 68 6f 6d 65 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 3b 0a 24 .$home.=.$config->get('home');.$
2bec0 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 20 3d 20 72 65 61 6c 70 61 74 68 28 24 5f 53 45 52 56 45 localFilename.=.realpath($_SERVE
2bee0 52 5b 27 61 72 67 76 27 5d 5b 30 5d 29 20 3f 3a 20 24 5f 53 45 52 56 45 52 5b 27 61 72 67 76 27 R['argv'][0]).?:.$_SERVER['argv'
2bf00 5d 5b 30 5d 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 75 70 ][0];..if.($input->getOption('up
2bf20 64 61 74 65 2d 6b 65 79 73 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 65 74 date-keys')).{.return.$this->fet
2bf40 63 68 4b 65 79 73 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 0a 20 24 74 6d 70 44 chKeys($io,.$config);.}....$tmpD
2bf60 69 72 20 3d 20 69 73 5f 77 72 69 74 61 62 6c 65 28 64 69 72 6e 61 6d 65 28 24 6c 6f 63 61 6c 46 ir.=.is_writable(dirname($localF
2bf80 69 6c 65 6e 61 6d 65 29 29 20 3f 20 64 69 72 6e 61 6d 65 28 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 ilename)).?.dirname($localFilena
2bfa0 6d 65 29 20 3a 20 24 63 61 63 68 65 44 69 72 3b 0a 0a 0a 20 69 66 20 28 21 69 73 5f 77 72 69 74 me).:.$cacheDir;....if.(!is_writ
2bfc0 61 62 6c 65 28 24 74 6d 70 44 69 72 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 46 69 6c 65 73 able($tmpDir)).{.throw.new.Files
2bfe0 79 73 74 65 6d 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 6d 70 6f 73 65 72 20 75 70 64 61 74 65 20 ystemException('Composer.update.
2c000 66 61 69 6c 65 64 3a 20 74 68 65 20 22 27 2e 24 74 6d 70 44 69 72 2e 27 22 20 64 69 72 65 63 74 failed:.the."'.$tmpDir.'".direct
2c020 6f 72 79 20 75 73 65 64 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 74 68 65 20 74 65 6d 70 20 66 69 ory.used.to.download.the.temp.fi
2c040 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 77 72 69 74 74 65 6e 27 29 3b 0a 7d 0a 0a 69 66 le.could.not.be.written');.}..if
2c060 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 6f 6c 6c 62 61 63 6b 27 29 29 .($input->getOption('rollback'))
2c080 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6c 6c 62 61 63 6b 28 24 6f 75 74 70 75 .{.return.$this->rollback($outpu
2c0a0 74 2c 20 24 72 6f 6c 6c 62 61 63 6b 44 69 72 2c 20 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 29 t,.$rollbackDir,.$localFilename)
2c0c0 3b 0a 7d 0a 0a 24 6c 61 74 65 73 74 20 3d 20 24 76 65 72 73 69 6f 6e 73 55 74 69 6c 2d 3e 67 65 ;.}..$latest.=.$versionsUtil->ge
2c0e0 74 4c 61 74 65 73 74 28 29 3b 0a 24 6c 61 74 65 73 74 56 65 72 73 69 6f 6e 20 3d 20 24 6c 61 74 tLatest();.$latestVersion.=.$lat
2c100 65 73 74 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 24 75 70 64 61 74 65 56 65 72 73 69 6f 6e 20 3d est['version'];.$updateVersion.=
2c120 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 29 20 .$input->getArgument('version').
2c140 3f 3a 20 24 6c 61 74 65 73 74 56 65 72 73 69 6f 6e 3b 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 ?:.$latestVersion;..if.(preg_mat
2c160 63 68 28 27 7b 5e 5b 30 2d 39 61 2d 66 5d 7b 34 30 7d 24 7d 27 2c 20 24 75 70 64 61 74 65 56 65 ch('{^[0-9a-f]{40}$}',.$updateVe
2c180 72 73 69 6f 6e 29 20 26 26 20 24 75 70 64 61 74 65 56 65 72 73 69 6f 6e 20 21 3d 3d 20 24 6c 61 rsion).&&.$updateVersion.!==.$la
2c1a0 74 65 73 74 56 65 72 73 69 6f 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 testVersion).{.$io->writeError('
2c1c0 3c 65 72 72 6f 72 3e 59 6f 75 20 63 61 6e 20 6e 6f 74 20 75 70 64 61 74 65 20 74 6f 20 61 20 73 <error>You.can.not.update.to.a.s
2c1e0 70 65 63 69 66 69 63 20 53 48 41 2d 31 20 61 73 20 74 68 6f 73 65 20 70 68 61 72 73 20 61 72 65 pecific.SHA-1.as.those.phars.are
2c200 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 64 6f 77 6e 6c 6f 61 64 3c 2f 65 72 72 .not.available.for.download</err
2c220 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 69 66 20 28 43 6f 6d 70 6f 73 65 or>');..return.1;.}..if.(Compose
2c240 72 3a 3a 56 45 52 53 49 4f 4e 20 3d 3d 3d 20 24 75 70 64 61 74 65 56 65 72 73 69 6f 6e 29 20 7b r::VERSION.===.$updateVersion).{
2c260 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 59 6f 75 20 61 72 65 20 .$io->writeError('<info>You.are.
2c280 61 6c 72 65 61 64 79 20 75 73 69 6e 67 20 63 6f 6d 70 6f 73 65 72 20 76 65 72 73 69 6f 6e 20 27 already.using.composer.version.'
2c2a0 2e 24 75 70 64 61 74 65 56 65 72 73 69 6f 6e 2e 27 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 0a 20 .$updateVersion.'.</info>');....
2c2c0 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 63 6c 65 61 6e 2d 62 61 63 if.($input->getOption('clean-bac
2c2e0 6b 75 70 73 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6c 65 61 6e 42 61 63 6b 75 70 73 28 24 72 kups')).{.$this->cleanBackups($r
2c300 6f 6c 6c 62 61 63 6b 44 69 72 2c 20 24 74 68 69 73 2d 3e 67 65 74 4c 61 73 74 42 61 63 6b 75 70 ollbackDir,.$this->getLastBackup
2c320 56 65 72 73 69 6f 6e 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 Version($rollbackDir));.}..retur
2c340 6e 20 30 3b 0a 7d 0a 0a 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 20 3d 20 24 74 6d 70 44 69 72 20 n.0;.}..$tempFilename.=.$tmpDir.
2c360 2e 20 27 2f 27 20 2e 20 62 61 73 65 6e 61 6d 65 28 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 2c ..'/'...basename($localFilename,
2c380 20 27 2e 70 68 61 72 27 29 2e 27 2d 74 65 6d 70 2e 70 68 61 72 27 3b 0a 24 62 61 63 6b 75 70 46 .'.phar').'-temp.phar';.$backupF
2c3a0 69 6c 65 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 25 73 2f 25 73 2d 25 73 25 73 27 2c 0a 24 72 6f ile.=.sprintf(.'%s/%s-%s%s',.$ro
2c3c0 6c 6c 62 61 63 6b 44 69 72 2c 0a 73 74 72 74 72 28 43 6f 6d 70 6f 73 65 72 3a 3a 52 45 4c 45 41 llbackDir,.strtr(Composer::RELEA
2c3e0 53 45 5f 44 41 54 45 2c 20 27 20 3a 27 2c 20 27 5f 2d 27 29 2c 0a 70 72 65 67 5f 72 65 70 6c 61 SE_DATE,.'.:',.'_-'),.preg_repla
2c400 63 65 28 27 7b 5e 28 5b 30 2d 39 61 2d 66 5d 7b 37 7d 29 5b 30 2d 39 61 2d 66 5d 7b 33 33 7d 24 ce('{^([0-9a-f]{7})[0-9a-f]{33}$
2c420 7d 27 2c 20 27 24 31 27 2c 20 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 29 2c 0a 73 65 }',.'$1',.Composer::VERSION),.se
2c440 6c 66 3a 3a 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 54 0a 29 3b 0a 0a 24 75 70 64 61 74 69 6e lf::OLD_INSTALL_EXT.);..$updatin
2c460 67 54 6f 54 61 67 20 3d 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 30 2d 39 61 2d 66 5d gToTag.=.!preg_match('{^[0-9a-f]
2c480 7b 34 30 7d 24 7d 27 2c 20 24 75 70 64 61 74 65 56 65 72 73 69 6f 6e 29 3b 0a 0a 24 69 6f 2d 3e {40}$}',.$updateVersion);..$io->
2c4a0 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 22 55 70 64 61 74 69 6e 67 20 74 6f 20 76 65 72 73 69 write(sprintf("Updating.to.versi
2c4c0 6f 6e 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 2e 22 2c 20 24 75 70 64 61 74 65 56 65 72 on.<info>%s</info>.",.$updateVer
2c4e0 73 69 6f 6e 29 29 3b 0a 24 72 65 6d 6f 74 65 46 69 6c 65 6e 61 6d 65 20 3d 20 24 62 61 73 65 55 sion));.$remoteFilename.=.$baseU
2c500 72 6c 20 2e 20 28 24 75 70 64 61 74 69 6e 67 54 6f 54 61 67 20 3f 20 22 2f 64 6f 77 6e 6c 6f 61 rl...($updatingToTag.?."/downloa
2c520 64 2f 7b 24 75 70 64 61 74 65 56 65 72 73 69 6f 6e 7d 2f 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 d/{$updateVersion}/composer.phar
2c540 22 20 3a 20 27 2f 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 27 29 3b 0a 24 73 69 67 6e 61 74 75 72 ".:.'/composer.phar');.$signatur
2c560 65 20 3d 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 2d 3e 67 65 74 43 6f 6e 74 65 6e e.=.$remoteFilesystem->getConten
2c580 74 73 28 73 65 6c 66 3a 3a 48 4f 4d 45 50 41 47 45 2c 20 24 72 65 6d 6f 74 65 46 69 6c 65 6e 61 ts(self::HOMEPAGE,.$remoteFilena
2c5a0 6d 65 2e 27 2e 73 69 67 27 2c 20 66 61 6c 73 65 29 3b 0a 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 me.'.sig',.false);.$remoteFilesy
2c5c0 73 74 65 6d 2d 3e 63 6f 70 79 28 73 65 6c 66 3a 3a 48 4f 4d 45 50 41 47 45 2c 20 24 72 65 6d 6f stem->copy(self::HOMEPAGE,.$remo
2c5e0 74 65 46 69 6c 65 6e 61 6d 65 2c 20 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 2c 20 21 24 69 6e 70 teFilename,.$tempFilename,.!$inp
2c600 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 27 29 29 3b 0a 69 ut->getOption('no-progress'));.i
2c620 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 29 20 7c f.(!file_exists($tempFilename).|
2c640 7c 20 21 24 73 69 67 6e 61 74 75 72 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 |.!$signature).{.$io->writeError
2c660 28 27 3c 65 72 72 6f 72 3e 54 68 65 20 64 6f 77 6e 6c 6f 61 64 20 6f 66 20 74 68 65 20 6e 65 77 ('<error>The.download.of.the.new
2c680 20 63 6f 6d 70 6f 73 65 72 20 76 65 72 73 69 6f 6e 20 66 61 69 6c 65 64 20 66 6f 72 20 61 6e 20 .composer.version.failed.for.an.
2c6a0 75 6e 65 78 70 65 63 74 65 64 20 72 65 61 73 6f 6e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 unexpected.reason</error>');..re
2c6c0 74 75 72 6e 20 31 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 turn.1;.}....if.(!extension_load
2c6e0 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 20 26 26 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 64 ed('openssl').&&.$config->get('d
2c700 69 73 61 62 6c 65 2d 74 6c 73 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 isable-tls')).{.$io->writeError(
2c720 27 3c 77 61 72 6e 69 6e 67 3e 53 6b 69 70 70 69 6e 67 20 70 68 61 72 20 73 69 67 6e 61 74 75 72 '<warning>Skipping.phar.signatur
2c740 65 20 76 65 72 69 66 69 63 61 74 69 6f 6e 20 61 73 20 79 6f 75 20 68 61 76 65 20 64 69 73 61 62 e.verification.as.you.have.disab
2c760 6c 65 64 20 4f 70 65 6e 53 53 4c 20 76 69 61 20 63 6f 6e 66 69 67 2e 64 69 73 61 62 6c 65 2d 74 led.OpenSSL.via.config.disable-t
2c780 6c 73 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 21 65 78 ls</warning>');.}.else.{.if.(!ex
2c7a0 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 74 68 72 tension_loaded('openssl')).{.thr
2c7c0 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 6f 70 ow.new.\RuntimeException('The.op
2c7e0 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 enssl.extension.is.required.for.
2c800 70 68 61 72 20 73 69 67 6e 61 74 75 72 65 73 20 74 6f 20 62 65 20 76 65 72 69 66 69 65 64 20 62 phar.signatures.to.be.verified.b
2c820 75 74 20 69 74 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 2e 20 27 0a 2e 20 27 49 66 20 ut.it.is.not.available..'...'If.
2c840 79 6f 75 20 63 61 6e 20 6e 6f 74 20 65 6e 61 62 6c 65 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 65 you.can.not.enable.the.openssl.e
2c860 78 74 65 6e 73 69 6f 6e 2c 20 79 6f 75 20 63 61 6e 20 64 69 73 61 62 6c 65 20 74 68 69 73 20 65 xtension,.you.can.disable.this.e
2c880 72 72 6f 72 2c 20 61 74 20 79 6f 75 72 20 6f 77 6e 20 72 69 73 6b 2c 20 62 79 20 73 65 74 74 69 rror,.at.your.own.risk,.by.setti
2c8a0 6e 67 20 74 68 65 20 5c 27 64 69 73 61 62 6c 65 2d 74 6c 73 5c 27 20 6f 70 74 69 6f 6e 20 74 6f ng.the.\'disable-tls\'.option.to
2c8c0 20 74 72 75 65 2e 27 29 3b 0a 7d 0a 0a 24 73 69 67 46 69 6c 65 20 3d 20 27 66 69 6c 65 3a 2f 2f .true.');.}..$sigFile.=.'file://
2c8e0 27 2e 24 68 6f 6d 65 2e 27 2f 27 20 2e 20 28 24 75 70 64 61 74 69 6e 67 54 6f 54 61 67 20 3f 20 '.$home.'/'...($updatingToTag.?.
2c900 27 6b 65 79 73 2e 74 61 67 73 2e 70 75 62 27 20 3a 20 27 6b 65 79 73 2e 64 65 76 2e 70 75 62 27 'keys.tags.pub'.:.'keys.dev.pub'
2c920 29 3b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 73 69 67 46 69 6c 65 29 29 20 7b );.if.(!file_exists($sigFile)).{
2c940 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 68 6f 6d 65 2e 27 2f 6b 65 79 73 2e .file_put_contents($home.'/keys.
2c960 64 65 76 2e 70 75 62 27 2c 20 3c 3c 3c 44 45 56 50 55 42 4b 45 59 0a 2d 2d 2d 2d 2d 42 45 47 49 dev.pub',.<<<DEVPUBKEY.-----BEGI
2c980 4e 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 0a 4d 49 49 43 49 6a 41 4e 42 67 6b 71 68 6b N.PUBLIC.KEY-----.MIICIjANBgkqhk
2c9a0 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 45 41 6e 42 iG9w0BAQEFAAOCAg8AMIICCgKCAgEAnB
2c9c0 44 48 6a 5a 53 36 65 30 5a 4d 6f 4b 33 78 54 44 37 66 0a 46 4e 43 7a 6c 58 6a 58 2f 41 69 65 32 DHjZS6e0ZMoK3xTD7f.FNCzlXjX/Aie2
2c9e0 64 69 74 38 51 58 41 30 33 70 53 72 4f 54 62 61 4d 6e 78 4f 4e 33 68 55 4c 34 37 4c 7a 33 67 31 dit8QXA03pSrOTbaMnxON3hUL47Lz3g1
2ca00 53 43 36 59 4a 45 4d 56 48 72 30 7a 59 71 34 65 6c 57 69 0a 69 33 65 63 46 45 67 7a 4c 63 6a 2b SC6YJEMVHr0zYq4elWi.i3ecFEgzLcj+
2ca20 70 5a 4d 35 58 36 71 57 75 32 4f 7a 7a 34 76 57 78 33 4a 59 6f 31 2f 61 2f 48 59 64 4f 75 57 39 pZM5X6qWu2Ozz4vWx3JYo1/a/HYdOuW9
2ca40 65 33 6c 77 53 38 56 74 53 30 41 56 4a 41 2b 55 38 58 30 41 0a 68 5a 6e 42 6d 47 70 6c 74 48 68 e3lwS8VtS0AVJA+U8X0A.hZnBmGpltHh
2ca60 4f 38 68 50 4b 48 67 6b 4a 74 6b 54 55 78 43 68 65 54 63 62 71 6e 34 77 47 48 6c 38 5a 32 53 65 O8hPKHgkJtkTUxCheTcbqn4wGHl8Z2Se
2ca80 64 69 44 63 50 54 4c 77 71 65 7a 57 4b 55 66 72 59 7a 75 31 66 0a 6f 2f 6a 33 57 46 77 46 73 36 diDcPTLwqezWKUfrYzu1f.o/j3WFwFs6
2caa0 47 74 4b 34 77 64 59 74 69 58 72 2b 79 73 70 42 5a 48 4f 33 79 31 75 64 66 38 65 46 46 47 63 62 GtK4wdYtiXr+yspBZHO3y1udf8eFFGcb
2cac0 32 56 33 45 61 4c 4f 72 74 66 75 72 36 58 51 56 69 7a 6a 4f 75 6b 0a 38 6c 77 35 7a 7a 73 65 31 2V3EaLOrtfur6XQVizjOuk.8lw5zzse1
2cae0 51 70 2f 6b 6c 48 71 62 44 52 73 6a 53 7a 4a 36 69 4c 36 46 34 61 79 6e 42 63 36 45 75 71 74 2f Qp/klHqbDRsjSzJ6iL6F4aynBc6Euqt/
2cb00 38 63 63 4e 41 49 7a 30 72 4c 6a 4c 68 4f 72 61 65 79 6a 34 65 4e 6e 0a 38 69 6f 6b 77 4d 4b 69 8ccNAIz0rLjLhOraeyj4eNn.8iokwMKi
2cb20 58 70 63 72 51 4c 54 4b 48 2b 52 48 31 4a 43 75 4f 56 78 51 34 33 36 62 4a 77 62 53 73 70 31 56 XpcrQLTKH+RH1JCuOVxQ436bJwbSsp1V
2cb40 77 69 71 66 74 50 51 69 65 4e 2b 74 7a 71 79 2b 45 69 48 4a 4a 6d 47 66 0a 54 42 41 62 57 63 6e wiqftPQieN+tzqy+EiHJJmGf.TBAbWcn
2cb60 63 69 63 43 6b 39 71 32 6d 64 2b 41 6d 68 4e 62 76 48 4f 34 50 57 62 62 7a 39 54 7a 43 37 48 4a cicCk9q2md+AmhNbvHO4PWbbz9TzC7HJ
2cb80 62 34 36 30 6a 79 57 65 75 4d 45 76 77 33 67 4e 49 70 45 6f 32 6a 59 61 39 0a 70 4d 56 36 63 56 b460jyWeuMEvw3gNIpEo2jYa9.pMV6cV
2cba0 71 6e 53 61 2b 77 4f 63 30 44 37 70 43 39 61 36 62 6e 65 30 62 76 4c 63 6d 33 53 2b 77 36 49 35 qnSa+wOc0D7pC9a6bne0bvLcm3S+w6I5
2cbc0 69 44 42 33 6c 5a 73 62 33 41 39 55 74 52 69 53 50 37 61 47 53 6f 37 44 37 32 0a 38 74 43 38 2b iDB3lZsb3A9UtRiSP7aGSo7D72.8tC8+
2cbe0 63 49 67 5a 63 49 37 6b 39 76 6a 76 4f 71 48 2b 64 37 73 64 4f 55 32 79 50 43 6e 52 59 36 77 46 cIgZcI7k9vjvOqH+d7sdOU2yPCnRY6wF
2cc00 68 36 32 2f 67 38 62 44 6e 55 70 72 35 36 6e 5a 4e 31 47 38 39 47 77 4d 34 64 34 0a 72 2f 54 55 h62/g8bDnUpr56nZN1G89GwM4d4.r/TU
2cc20 37 42 51 51 49 7a 73 5a 67 41 69 71 4f 47 58 76 56 6b 6c 49 67 41 4d 69 56 30 69 75 63 67 66 33 7BQQIzsZgAiqOGXvVklIgAMiV0iucgf3
2cc40 72 4e 42 4c 6a 6a 65 4e 45 77 4e 53 54 54 47 39 46 30 43 74 51 2b 37 4a 4c 77 61 45 0a 77 53 45 rNBLjjeNEwNSTTG9F0CtQ+7JLwaE.wSE
2cc60 75 41 75 52 6d 2b 70 52 71 69 38 42 52 6e 51 2f 47 4b 55 63 43 41 77 45 41 41 51 3d 3d 0a 2d 2d uAuRm+pRqi8BRnQ/GKUcCAwEAAQ==.--
2cc80 2d 2d 2d 45 4e 44 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 0a 44 45 56 50 55 42 4b 45 59 ---END.PUBLIC.KEY-----.DEVPUBKEY
2cca0 0a 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 68 6f 6d 65 2e 27 2f 6b 65 .);.file_put_contents($home.'/ke
2ccc0 79 73 2e 74 61 67 73 2e 70 75 62 27 2c 20 3c 3c 3c 54 41 47 53 50 55 42 4b 45 59 0a 2d 2d 2d 2d ys.tags.pub',.<<<TAGSPUBKEY.----
2cce0 2d 42 45 47 49 4e 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 0a 4d 49 49 43 49 6a 41 4e 42 -BEGIN.PUBLIC.KEY-----.MIICIjANB
2cd00 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 gkqhkiG9w0BAQEFAAOCAg8AMIICCgKCA
2cd20 67 45 41 30 56 69 2f 32 4b 36 61 70 43 56 6a 37 36 6e 43 6e 43 6c 32 0a 4d 51 55 50 64 4b 2b 41 gEA0Vi/2K6apCVj76nCnCl2.MQUPdK+A
2cd40 39 65 71 6b 59 42 61 63 58 6f 32 77 51 42 59 6d 79 56 6c 58 6d 32 2f 6e 2f 5a 73 58 36 70 43 4c 9eqkYBacXo2wQBYmyVlXm2/n/ZsX6pCL
2cd60 59 50 51 54 48 79 72 35 6a 58 62 6b 51 7a 42 77 38 53 4b 71 50 64 6c 68 0a 76 41 37 4e 70 62 4d YPQTHyr5jXbkQzBw8SKqPdlh.vA7NpbM
2cd80 65 4e 43 7a 37 77 50 2f 41 6f 62 76 55 58 4d 38 78 51 75 58 4b 62 4d 44 54 59 32 75 5a 34 4f 37 eNCz7wP/AobvUXM8xQuXKbMDTY2uZ4O7
2cda0 73 4d 2b 50 66 47 62 70 74 4b 50 42 47 4c 65 38 5a 38 64 32 73 55 6e 54 4f 0a 62 58 74 58 36 4c sM+PfGbptKPBGLe8Z8d2sUnTO.bXtX6L
2cdc0 72 6a 31 33 77 6b 52 74 6f 37 73 74 2f 77 2f 59 70 33 33 52 48 65 39 53 6c 71 6b 69 69 53 34 4d rj13wkRto7st/w/Yp33RHe9SlqkiiS4M
2cde0 73 48 31 6a 42 6b 63 49 6b 45 48 73 52 61 76 65 5a 7a 65 64 55 61 78 59 30 4d 0a 6d 62 61 30 75 sH1jBkcIkEHsRaveZzedUaxY0M.mba0u
2ce00 50 68 47 55 49 6e 70 50 7a 45 48 77 72 59 71 42 42 45 74 57 76 50 39 37 74 32 76 74 66 78 38 49 PhGUInpPzEHwrYqBBEtWvP97t2vtfx8I
2ce20 35 71 76 32 38 6b 68 30 59 36 74 2b 6a 6e 6a 4c 31 55 72 69 64 32 69 75 51 5a 66 0a 6e 6f 43 4d 5qv28kh0Y6t+jnjL1Urid2iuQZf.noCM
2ce40 46 49 4f 75 34 76 6b 73 4b 35 48 78 4a 78 78 72 4e 30 47 4f 6d 47 6d 77 56 51 6a 4f 4f 74 78 6b FIOu4vksK5HxJxxrN0GOmGmwVQjOOtxk
2ce60 77 69 6b 4e 69 6f 74 5a 47 50 52 34 4b 73 56 6a 38 4e 6e 42 72 4c 58 37 6f 47 75 4d 0a 6e 51 76 wikNiotZGPR4KsVj8NnBrLX7oGuM.nQv
2ce80 47 63 69 69 75 2b 4b 6f 43 32 72 33 48 44 42 72 70 44 65 42 56 64 4f 57 78 44 7a 54 35 52 34 69 Gciiu+KoC2r3HDBrpDeBVdOWxDzT5R4i
2cea0 49 30 4b 6f 4c 7a 46 68 32 70 4b 71 77 62 59 2b 6f 62 4e 50 53 32 62 6a 2b 32 64 67 4a 0a 72 56 I0KoLzFh2pKqwbY+obNPS2bj+2dgJ.rV
2cec0 33 56 35 4a 6a 72 79 34 32 51 4f 43 42 4e 33 63 38 38 77 55 31 50 4b 66 74 4f 4c 6a 32 45 43 70 3V5Jjry42QOCBN3c88wU1PKftOLj2ECp
2cee0 65 77 59 36 76 6e 45 34 37 38 49 69 70 69 45 75 37 45 41 64 4b 38 5a 77 6a 32 4c 6d 54 72 0a 52 ewY6vnE478IipiEu7EAdK8Zwj2LmTr.R
2cf00 4b 51 55 53 61 39 6b 37 67 67 42 6b 59 5a 57 41 65 4f 2f 32 41 67 30 65 79 33 67 32 62 67 37 65 KQUSa9k7ggBkYZWAeO/2Ag0ey3g2bg7e
2cf20 71 6b 2b 73 48 45 71 35 79 6e 49 58 64 35 6c 68 76 36 74 43 35 50 42 64 48 6c 57 69 70 44 4b 0a qk+sHEq5ynIXd5lhv6tC5PBdHlWipDK.
2cf40 74 6c 32 49 78 69 45 6e 65 6a 6e 4f 6d 41 7a 47 56 69 76 45 31 59 47 64 75 59 42 6a 4e 2b 6d 6a tl2IxiEnejnOmAzGVivE1YGduYBjN+mj
2cf60 78 44 56 79 38 4b 47 42 72 6a 6e 7a 31 4a 50 67 41 76 67 64 77 4a 32 64 59 77 34 52 73 63 2f 65 xDVy8KGBrjnz1JPgAvgdwJ2dYw4Rsc/e
2cf80 0a 54 7a 43 46 57 47 6b 2f 48 4d 36 61 34 66 30 49 7a 42 57 62 4a 35 6f 74 30 50 49 69 34 61 6d .TzCFWGk/HM6a4f0IzBWbJ5ot0PIi4am
2cfa0 6b 30 37 49 6f 74 42 58 44 57 77 71 44 69 51 54 77 79 75 47 43 79 6d 35 45 71 57 51 32 42 44 39 k07IotBXDWwqDiQTwyuGCym5EqWQ2BD9
2cfc0 35 0a 52 47 76 38 39 42 50 44 2b 32 44 4c 6e 4a 79 73 6e 67 73 76 56 61 55 43 41 77 45 41 41 51 5.RGv89BPD+2DLnJysngsvVaUCAwEAAQ
2cfe0 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 0a 54 41 47 53 ==.-----END.PUBLIC.KEY-----.TAGS
2d000 50 55 42 4b 45 59 0a 29 3b 0a 7d 0a 0a 24 70 75 62 6b 65 79 69 64 20 3d 20 6f 70 65 6e 73 73 6c PUBKEY.);.}..$pubkeyid.=.openssl
2d020 5f 70 6b 65 79 5f 67 65 74 5f 70 75 62 6c 69 63 28 24 73 69 67 46 69 6c 65 29 3b 0a 24 61 6c 67 _pkey_get_public($sigFile);.$alg
2d040 6f 20 3d 20 64 65 66 69 6e 65 64 28 27 4f 50 45 4e 53 53 4c 5f 41 4c 47 4f 5f 53 48 41 33 38 34 o.=.defined('OPENSSL_ALGO_SHA384
2d060 27 29 20 3f 20 4f 50 45 4e 53 53 4c 5f 41 4c 47 4f 5f 53 48 41 33 38 34 20 3a 20 27 53 48 41 33 ').?.OPENSSL_ALGO_SHA384.:.'SHA3
2d080 38 34 27 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 27 53 48 41 33 38 34 27 2c 20 6f 70 65 84';.if.(!in_array('SHA384',.ope
2d0a0 6e 73 73 6c 5f 67 65 74 5f 6d 64 5f 6d 65 74 68 6f 64 73 28 29 29 29 20 7b 0a 74 68 72 6f 77 20 nssl_get_md_methods())).{.throw.
2d0c0 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 53 48 41 33 38 34 20 69 73 new.\RuntimeException('SHA384.is
2d0e0 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 79 6f 75 72 20 6f 70 65 6e 73 73 6c 20 65 .not.supported.by.your.openssl.e
2d100 78 74 65 6e 73 69 6f 6e 2c 20 63 6f 75 6c 64 20 6e 6f 74 20 76 65 72 69 66 79 20 74 68 65 20 70 xtension,.could.not.verify.the.p
2d120 68 61 72 20 66 69 6c 65 20 69 6e 74 65 67 72 69 74 79 27 29 3b 0a 7d 0a 24 73 69 67 6e 61 74 75 har.file.integrity');.}.$signatu
2d140 72 65 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 73 69 67 6e 61 74 75 72 65 2c 20 74 72 75 re.=.json_decode($signature,.tru
2d160 65 29 3b 0a 24 73 69 67 6e 61 74 75 72 65 20 3d 20 62 61 73 65 36 34 5f 64 65 63 6f 64 65 28 24 e);.$signature.=.base64_decode($
2d180 73 69 67 6e 61 74 75 72 65 5b 27 73 68 61 33 38 34 27 5d 29 3b 0a 24 76 65 72 69 66 69 65 64 20 signature['sha384']);.$verified.
2d1a0 3d 20 31 20 3d 3d 3d 20 6f 70 65 6e 73 73 6c 5f 76 65 72 69 66 79 28 66 69 6c 65 5f 67 65 74 5f =.1.===.openssl_verify(file_get_
2d1c0 63 6f 6e 74 65 6e 74 73 28 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 29 2c 20 24 73 69 67 6e 61 74 contents($tempFilename),.$signat
2d1e0 75 72 65 2c 20 24 70 75 62 6b 65 79 69 64 2c 20 24 61 6c 67 6f 29 3b 0a 6f 70 65 6e 73 73 6c 5f ure,.$pubkeyid,.$algo);.openssl_
2d200 66 72 65 65 5f 6b 65 79 28 24 70 75 62 6b 65 79 69 64 29 3b 0a 69 66 20 28 21 24 76 65 72 69 66 free_key($pubkeyid);.if.(!$verif
2d220 69 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 ied).{.throw.new.\RuntimeExcepti
2d240 6f 6e 28 27 54 68 65 20 70 68 61 72 20 73 69 67 6e 61 74 75 72 65 20 64 69 64 20 6e 6f 74 20 6d on('The.phar.signature.did.not.m
2d260 61 74 63 68 20 74 68 65 20 66 69 6c 65 20 79 6f 75 20 64 6f 77 6e 6c 6f 61 64 65 64 2c 20 74 68 atch.the.file.you.downloaded,.th
2d280 69 73 20 6d 65 61 6e 73 20 79 6f 75 72 20 70 75 62 6c 69 63 20 6b 65 79 73 20 61 72 65 20 6f 75 is.means.your.public.keys.are.ou
2d2a0 74 64 61 74 65 64 20 6f 72 20 74 68 61 74 20 74 68 65 20 70 68 61 72 20 66 69 6c 65 20 69 73 20 tdated.or.that.the.phar.file.is.
2d2c0 63 6f 72 72 75 70 74 2f 68 61 73 20 62 65 65 6e 20 6d 6f 64 69 66 69 65 64 27 29 3b 0a 7d 0a 7d corrupt/has.been.modified');.}.}
2d2e0 0a 0a 0a 20 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 63 6c 65 61 6e ....if.($input->getOption('clean
2d300 2d 62 61 63 6b 75 70 73 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6c 65 61 6e 42 61 63 6b 75 70 -backups')).{.$this->cleanBackup
2d320 73 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 3b 0a 7d 0a 0a 69 66 20 28 24 65 72 72 20 3d 20 24 s($rollbackDir);.}..if.($err.=.$
2d340 74 68 69 73 2d 3e 73 65 74 4c 6f 63 61 6c 50 68 61 72 28 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d this->setLocalPhar($localFilenam
2d360 65 2c 20 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 2c 20 24 62 61 63 6b 75 70 46 69 6c 65 29 29 20 e,.$tempFilename,.$backupFile)).
2d380 7b 0a 40 75 6e 6c 69 6e 6b 28 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 29 3b 0a 24 69 6f 2d 3e 77 {.@unlink($tempFilename);.$io->w
2d3a0 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 54 68 65 20 66 69 6c 65 20 69 73 20 63 6f riteError('<error>The.file.is.co
2d3c0 72 72 75 70 74 65 64 20 28 27 2e 24 65 72 72 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 rrupted.('.$err->getMessage().')
2d3e0 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 .</error>');.$io->writeError('<e
2d400 72 72 6f 72 3e 50 6c 65 61 73 65 20 72 65 2d 72 75 6e 20 74 68 65 20 73 65 6c 66 2d 75 70 64 61 rror>Please.re-run.the.self-upda
2d420 74 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 74 72 79 20 61 67 61 69 6e 2e 3c 2f 65 72 72 6f 72 3e te.command.to.try.again.</error>
2d440 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 ');..return.1;.}..if.(file_exist
2d460 73 28 24 62 61 63 6b 75 70 46 69 6c 65 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f s($backupFile)).{.$io->writeErro
2d480 72 28 27 55 73 65 20 3c 69 6e 66 6f 3e 63 6f 6d 70 6f 73 65 72 20 73 65 6c 66 2d 75 70 64 61 74 r('Use.<info>composer.self-updat
2d4a0 65 20 2d 2d 72 6f 6c 6c 62 61 63 6b 3c 2f 69 6e 66 6f 3e 20 74 6f 20 72 65 74 75 72 6e 20 74 6f e.--rollback</info>.to.return.to
2d4c0 20 76 65 72 73 69 6f 6e 20 27 2e 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 29 3b 0a 7d .version.'.Composer::VERSION);.}
2d4e0 20 65 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e .else.{.$io->writeError('<warnin
2d500 67 3e 41 20 62 61 63 6b 75 70 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 76 65 72 73 69 6f g>A.backup.of.the.current.versio
2d520 6e 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 77 72 69 74 74 65 6e 20 74 6f 20 27 2e 24 62 61 63 n.could.not.be.written.to.'.$bac
2d540 6b 75 70 46 69 6c 65 2e 27 2c 20 6e 6f 20 72 6f 6c 6c 62 61 63 6b 20 70 6f 73 73 69 62 6c 65 3c kupFile.',.no.rollback.possible<
2d560 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 /warning>');.}.}..protected.func
2d580 74 69 6f 6e 20 66 65 74 63 68 4b 65 79 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 tion.fetchKeys(IOInterface.$io,.
2d5a0 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 21 24 69 6f 2d 3e 69 73 49 6e Config.$config).{.if.(!$io->isIn
2d5c0 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d teractive()).{.throw.new.\Runtim
2d5e0 65 45 78 63 65 70 74 69 6f 6e 28 27 50 75 62 6c 69 63 20 6b 65 79 73 20 63 61 6e 20 6e 6f 74 20 eException('Public.keys.can.not.
2d600 62 65 20 66 65 74 63 68 65 64 20 69 6e 20 6e 6f 6e 2d 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f be.fetched.in.non-interactive.mo
2d620 64 65 2c 20 70 6c 65 61 73 65 20 72 75 6e 20 43 6f 6d 70 6f 73 65 72 20 69 6e 74 65 72 61 63 74 de,.please.run.Composer.interact
2d640 69 76 65 6c 79 27 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 4f 70 65 6e 20 3c 69 6e ively');.}..$io->write('Open.<in
2d660 66 6f 3e 68 74 74 70 73 3a 2f 2f 63 6f 6d 70 6f 73 65 72 2e 67 69 74 68 75 62 2e 69 6f 2f 70 75 fo>https://composer.github.io/pu
2d680 62 6b 65 79 73 2e 68 74 6d 6c 3c 2f 69 6e 66 6f 3e 20 74 6f 20 66 69 6e 64 20 74 68 65 20 6c 61 bkeys.html</info>.to.find.the.la
2d6a0 74 65 73 74 20 6b 65 79 73 27 29 3b 0a 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 66 75 6e 63 74 test.keys');..$validator.=.funct
2d6c0 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 ion.($value).{.if.(!preg_match('
2d6e0 7b 5e 2d 2d 2d 2d 2d 42 45 47 49 4e 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 24 7d 27 2c {^-----BEGIN.PUBLIC.KEY-----$}',
2d700 20 74 72 69 6d 28 24 76 61 6c 75 65 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 .trim($value))).{.throw.new.\Une
2d720 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 69 xpectedValueException('Invalid.i
2d740 6e 70 75 74 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 69 6d 28 24 76 61 6c 75 65 29 2e 22 nput');.}..return.trim($value)."
2d760 5c 6e 22 3b 0a 7d 3b 0a 0a 24 64 65 76 4b 65 79 20 3d 20 27 27 3b 0a 77 68 69 6c 65 20 28 21 70 \n";.};..$devKey.=.'';.while.(!p
2d780 72 65 67 5f 6d 61 74 63 68 28 27 7b 28 2d 2d 2d 2d 2d 42 45 47 49 4e 20 50 55 42 4c 49 43 20 4b reg_match('{(-----BEGIN.PUBLIC.K
2d7a0 45 59 2d 2d 2d 2d 2d 2e 2b 3f 2d 2d 2d 2d 2d 45 4e 44 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d EY-----.+?-----END.PUBLIC.KEY---
2d7c0 2d 2d 29 7d 73 27 2c 20 24 64 65 76 4b 65 79 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 64 65 76 --)}s',.$devKey,.$match)).{.$dev
2d7e0 4b 65 79 20 3d 20 24 69 6f 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 27 45 6e 74 65 72 Key.=.$io->askAndValidate('Enter
2d800 20 44 65 76 20 2f 20 53 6e 61 70 73 68 6f 74 20 50 75 62 6c 69 63 20 4b 65 79 20 28 69 6e 63 6c .Dev./.Snapshot.Public.Key.(incl
2d820 75 64 69 6e 67 20 6c 69 6e 65 73 20 77 69 74 68 20 2d 2d 2d 2d 2d 29 3a 20 27 2c 20 24 76 61 6c uding.lines.with.-----):.',.$val
2d840 69 64 61 74 6f 72 29 3b 0a 77 68 69 6c 65 20 28 24 6c 69 6e 65 20 3d 20 24 69 6f 2d 3e 61 73 6b idator);.while.($line.=.$io->ask
2d860 28 27 27 29 29 20 7b 0a 24 64 65 76 4b 65 79 20 2e 3d 20 74 72 69 6d 28 24 6c 69 6e 65 29 2e 22 ('')).{.$devKey..=.trim($line)."
2d880 5c 6e 22 3b 0a 69 66 20 28 74 72 69 6d 28 24 6c 69 6e 65 29 20 3d 3d 3d 20 27 2d 2d 2d 2d 2d 45 \n";.if.(trim($line).===.'-----E
2d8a0 4e 44 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 27 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a ND.PUBLIC.KEY-----').{.break;.}.
2d8c0 7d 0a 7d 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6b 65 79 50 61 74 68 20 3d }.}.file_put_contents($keyPath.=
2d8e0 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2e 27 2f 6b 65 79 73 2e 64 65 76 .$config->get('home').'/keys.dev
2d900 2e 70 75 62 27 2c 20 24 6d 61 74 63 68 5b 30 5d 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 53 .pub',.$match[0]);.$io->write('S
2d920 74 6f 72 65 64 20 6b 65 79 20 77 69 74 68 20 66 69 6e 67 65 72 70 72 69 6e 74 3a 20 27 20 2e 20 tored.key.with.fingerprint:.'...
2d940 4b 65 79 73 3a 3a 66 69 6e 67 65 72 70 72 69 6e 74 28 24 6b 65 79 50 61 74 68 29 29 3b 0a 0a 24 Keys::fingerprint($keyPath));..$
2d960 74 61 67 73 4b 65 79 20 3d 20 27 27 3b 0a 77 68 69 6c 65 20 28 21 70 72 65 67 5f 6d 61 74 63 68 tagsKey.=.'';.while.(!preg_match
2d980 28 27 7b 28 2d 2d 2d 2d 2d 42 45 47 49 4e 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 2e 2b ('{(-----BEGIN.PUBLIC.KEY-----.+
2d9a0 3f 2d 2d 2d 2d 2d 45 4e 44 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 29 7d 73 27 2c 20 24 ?-----END.PUBLIC.KEY-----)}s',.$
2d9c0 74 61 67 73 4b 65 79 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 61 67 73 4b 65 79 20 3d 20 24 tagsKey,.$match)).{.$tagsKey.=.$
2d9e0 69 6f 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 27 45 6e 74 65 72 20 54 61 67 73 20 50 io->askAndValidate('Enter.Tags.P
2da00 75 62 6c 69 63 20 4b 65 79 20 28 69 6e 63 6c 75 64 69 6e 67 20 6c 69 6e 65 73 20 77 69 74 68 20 ublic.Key.(including.lines.with.
2da20 2d 2d 2d 2d 2d 29 3a 20 27 2c 20 24 76 61 6c 69 64 61 74 6f 72 29 3b 0a 77 68 69 6c 65 20 28 24 -----):.',.$validator);.while.($
2da40 6c 69 6e 65 20 3d 20 24 69 6f 2d 3e 61 73 6b 28 27 27 29 29 20 7b 0a 24 74 61 67 73 4b 65 79 20 line.=.$io->ask('')).{.$tagsKey.
2da60 2e 3d 20 74 72 69 6d 28 24 6c 69 6e 65 29 2e 22 5c 6e 22 3b 0a 69 66 20 28 74 72 69 6d 28 24 6c .=.trim($line)."\n";.if.(trim($l
2da80 69 6e 65 29 20 3d 3d 3d 20 27 2d 2d 2d 2d 2d 45 4e 44 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d ine).===.'-----END.PUBLIC.KEY---
2daa0 2d 2d 27 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e --').{.break;.}.}.}.file_put_con
2dac0 74 65 6e 74 73 28 24 6b 65 79 50 61 74 68 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 tents($keyPath.=.$config->get('h
2dae0 6f 6d 65 27 29 2e 27 2f 6b 65 79 73 2e 74 61 67 73 2e 70 75 62 27 2c 20 24 6d 61 74 63 68 5b 30 ome').'/keys.tags.pub',.$match[0
2db00 5d 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 53 74 6f 72 65 64 20 6b 65 79 20 77 69 74 68 20 ]);.$io->write('Stored.key.with.
2db20 66 69 6e 67 65 72 70 72 69 6e 74 3a 20 27 20 2e 20 4b 65 79 73 3a 3a 66 69 6e 67 65 72 70 72 69 fingerprint:.'...Keys::fingerpri
2db40 6e 74 28 24 6b 65 79 50 61 74 68 29 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 50 75 62 6c nt($keyPath));..$io->write('Publ
2db60 69 63 20 6b 65 79 73 20 73 74 6f 72 65 64 20 69 6e 20 27 2e 24 63 6f 6e 66 69 67 2d 3e 67 65 74 ic.keys.stored.in.'.$config->get
2db80 28 27 68 6f 6d 65 27 29 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e ('home'));.}..protected.function
2dba0 20 72 6f 6c 6c 62 61 63 6b 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 .rollback(OutputInterface.$outpu
2dbc0 74 2c 20 24 72 6f 6c 6c 62 61 63 6b 44 69 72 2c 20 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 29 t,.$rollbackDir,.$localFilename)
2dbe0 0a 7b 0a 24 72 6f 6c 6c 62 61 63 6b 56 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 .{.$rollbackVersion.=.$this->get
2dc00 4c 61 73 74 42 61 63 6b 75 70 56 65 72 73 69 6f 6e 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 3b LastBackupVersion($rollbackDir);
2dc20 0a 69 66 20 28 21 24 72 6f 6c 6c 62 61 63 6b 56 65 72 73 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 .if.(!$rollbackVersion).{.throw.
2dc40 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 43 new.\UnexpectedValueException('C
2dc60 6f 6d 70 6f 73 65 72 20 72 6f 6c 6c 62 61 63 6b 20 66 61 69 6c 65 64 3a 20 6e 6f 20 69 6e 73 74 omposer.rollback.failed:.no.inst
2dc80 61 6c 6c 61 74 69 6f 6e 20 74 6f 20 72 6f 6c 6c 20 62 61 63 6b 20 74 6f 20 69 6e 20 22 27 2e 24 allation.to.roll.back.to.in."'.$
2dca0 72 6f 6c 6c 62 61 63 6b 44 69 72 2e 27 22 27 29 3b 0a 7d 0a 0a 24 6f 6c 64 46 69 6c 65 20 3d 20 rollbackDir.'"');.}..$oldFile.=.
2dcc0 24 72 6f 6c 6c 62 61 63 6b 44 69 72 20 2e 20 27 2f 27 20 2e 20 24 72 6f 6c 6c 62 61 63 6b 56 65 $rollbackDir...'/'...$rollbackVe
2dce0 72 73 69 6f 6e 20 2e 20 73 65 6c 66 3a 3a 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 54 3b 0a 0a rsion...self::OLD_INSTALL_EXT;..
2dd00 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 6f 6c 64 46 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 if.(!is_file($oldFile)).{.throw.
2dd20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 6d 70 6f 73 65 new.FilesystemException('Compose
2dd40 72 20 72 6f 6c 6c 62 61 63 6b 20 66 61 69 6c 65 64 3a 20 22 27 2e 24 6f 6c 64 46 69 6c 65 2e 27 r.rollback.failed:."'.$oldFile.'
2dd60 22 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 27 29 3b 0a 7d 0a 69 66 20 28 21 69 ".could.not.be.found');.}.if.(!i
2dd80 73 5f 72 65 61 64 61 62 6c 65 28 24 6f 6c 64 46 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 s_readable($oldFile)).{.throw.ne
2dda0 77 20 46 69 6c 65 73 79 73 74 65 6d 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 6d 70 6f 73 65 72 20 w.FilesystemException('Composer.
2ddc0 72 6f 6c 6c 62 61 63 6b 20 66 61 69 6c 65 64 3a 20 22 27 2e 24 6f 6c 64 46 69 6c 65 2e 27 22 20 rollback.failed:."'.$oldFile.'".
2dde0 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 72 65 61 64 27 29 3b 0a 7d 0a 0a 24 69 6f 20 3d 20 24 74 could.not.be.read');.}..$io.=.$t
2de00 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 his->getIO();.$io->writeError(sp
2de20 72 69 6e 74 66 28 22 52 6f 6c 6c 69 6e 67 20 62 61 63 6b 20 74 6f 20 76 65 72 73 69 6f 6e 20 3c rintf("Rolling.back.to.version.<
2de40 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 2e 22 2c 20 24 72 6f 6c 6c 62 61 63 6b 56 65 72 73 69 info>%s</info>.",.$rollbackVersi
2de60 6f 6e 29 29 3b 0a 69 66 20 28 24 65 72 72 20 3d 20 24 74 68 69 73 2d 3e 73 65 74 4c 6f 63 61 6c on));.if.($err.=.$this->setLocal
2de80 50 68 61 72 28 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 2c 20 24 6f 6c 64 46 69 6c 65 29 29 20 Phar($localFilename,.$oldFile)).
2dea0 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 54 68 65 20 62 61 {.$io->writeError('<error>The.ba
2dec0 63 6b 75 70 20 66 69 6c 65 20 77 61 73 20 63 6f 72 72 75 70 74 65 64 20 28 27 2e 24 65 72 72 2d ckup.file.was.corrupted.('.$err-
2dee0 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 >getMessage().').</error>');..re
2df00 74 75 72 6e 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f turn.1;.}..return.0;.}.......pro
2df20 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 6f 63 61 6c 50 68 61 72 28 24 6c 6f tected.function.setLocalPhar($lo
2df40 63 61 6c 46 69 6c 65 6e 61 6d 65 2c 20 24 6e 65 77 46 69 6c 65 6e 61 6d 65 2c 20 24 62 61 63 6b calFilename,.$newFilename,.$back
2df60 75 70 54 61 72 67 65 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 74 72 79 20 7b 0a 40 63 68 6d 6f 64 28 upTarget.=.null).{.try.{.@chmod(
2df80 24 6e 65 77 46 69 6c 65 6e 61 6d 65 2c 20 66 69 6c 65 70 65 72 6d 73 28 24 6c 6f 63 61 6c 46 69 $newFilename,.fileperms($localFi
2dfa0 6c 65 6e 61 6d 65 29 29 3b 0a 69 66 20 28 21 69 6e 69 5f 67 65 74 28 27 70 68 61 72 2e 72 65 61 lename));.if.(!ini_get('phar.rea
2dfc0 64 6f 6e 6c 79 27 29 29 20 7b 0a 0a 20 24 70 68 61 72 20 3d 20 6e 65 77 20 5c 50 68 61 72 28 24 donly')).{...$phar.=.new.\Phar($
2dfe0 6e 65 77 46 69 6c 65 6e 61 6d 65 29 3b 0a 0a 20 75 6e 73 65 74 28 24 70 68 61 72 29 3b 0a 7d 0a newFilename);...unset($phar);.}.
2e000 0a 0a 20 69 66 20 28 24 62 61 63 6b 75 70 54 61 72 67 65 74 20 26 26 20 66 69 6c 65 5f 65 78 69 ...if.($backupTarget.&&.file_exi
2e020 73 74 73 28 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 29 29 20 7b 0a 40 63 6f 70 79 28 24 6c 6f sts($localFilename)).{.@copy($lo
2e040 63 61 6c 46 69 6c 65 6e 61 6d 65 2c 20 24 62 61 63 6b 75 70 54 61 72 67 65 74 29 3b 0a 7d 0a 0a calFilename,.$backupTarget);.}..
2e060 72 65 6e 61 6d 65 28 24 6e 65 77 46 69 6c 65 6e 61 6d 65 2c 20 24 6c 6f 63 61 6c 46 69 6c 65 6e rename($newFilename,.$localFilen
2e080 61 6d 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a ame);.}.catch.(\Exception.$e).{.
2e0a0 69 66 20 28 21 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 if.(!$e.instanceof.\UnexpectedVa
2e0c0 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 26 26 20 21 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c lueException.&&.!$e.instanceof.\
2e0e0 50 68 61 72 45 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 72 65 PharException).{.throw.$e;.}..re
2e100 74 75 72 6e 20 24 65 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e turn.$e;.}.}..protected.function
2e120 20 63 6c 65 61 6e 42 61 63 6b 75 70 73 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 2c 20 24 65 78 63 .cleanBackups($rollbackDir,.$exc
2e140 65 70 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 66 69 6e 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 ept.=.null).{.$finder.=.$this->g
2e160 65 74 4f 6c 64 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 46 69 6e 64 65 72 28 24 72 6f 6c 6c 62 61 63 etOldInstallationFinder($rollbac
2e180 6b 44 69 72 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 24 66 73 kDir);.$io.=.$this->getIO();.$fs
2e1a0 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 66 69 .=.new.Filesystem;..foreach.($fi
2e1c0 6e 64 65 72 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 24 65 78 63 65 70 74 20 26 26 20 nder.as.$file).{.if.($except.&&.
2e1e0 24 66 69 6c 65 2d 3e 67 65 74 42 61 73 65 6e 61 6d 65 28 73 65 6c 66 3a 3a 4f 4c 44 5f 49 4e 53 $file->getBasename(self::OLD_INS
2e200 54 41 4c 4c 5f 45 58 54 29 20 3d 3d 3d 20 24 65 78 63 65 70 74 29 20 7b 0a 63 6f 6e 74 69 6e 75 TALL_EXT).===.$except).{.continu
2e220 65 3b 0a 7d 0a 24 66 69 6c 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 66 69 6c 65 3b 0a 24 69 6f e;.}.$file.=.(string).$file;.$io
2e240 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 52 65 6d 6f 76 69 6e 67 3a 20 27 2e ->writeError('<info>Removing:.'.
2e260 24 66 69 6c 65 2e 27 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 24 66 73 2d 3e 72 65 6d 6f 76 65 28 24 66 $file.'</info>');.$fs->remove($f
2e280 69 6c 65 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 ile);.}.}..protected.function.ge
2e2a0 74 4c 61 73 74 42 61 63 6b 75 70 56 65 72 73 69 6f 6e 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 tLastBackupVersion($rollbackDir)
2e2c0 0a 7b 0a 24 66 69 6e 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4f 6c 64 49 6e 73 74 61 6c .{.$finder.=.$this->getOldInstal
2e2e0 6c 61 74 69 6f 6e 46 69 6e 64 65 72 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 3b 0a 24 66 69 6e lationFinder($rollbackDir);.$fin
2e300 64 65 72 2d 3e 73 6f 72 74 42 79 4e 61 6d 65 28 29 3b 0a 24 66 69 6c 65 73 20 3d 20 69 74 65 72 der->sortByName();.$files.=.iter
2e320 61 74 6f 72 5f 74 6f 5f 61 72 72 61 79 28 24 66 69 6e 64 65 72 29 3b 0a 0a 69 66 20 28 63 6f 75 ator_to_array($finder);..if.(cou
2e340 6e 74 28 24 66 69 6c 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 62 61 73 65 6e 61 6d 65 28 65 6e nt($files)).{.return.basename(en
2e360 64 28 24 66 69 6c 65 73 29 2c 20 73 65 6c 66 3a 3a 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 54 d($files),.self::OLD_INSTALL_EXT
2e380 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 );.}..return.false;.}..protected
2e3a0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 6c 64 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 46 69 6e 64 .function.getOldInstallationFind
2e3c0 65 72 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 0a 7b 0a 24 66 69 6e 64 65 72 20 3d 20 46 69 6e er($rollbackDir).{.$finder.=.Fin
2e3e0 64 65 72 3a 3a 63 72 65 61 74 65 28 29 0a 2d 3e 64 65 70 74 68 28 30 29 0a 2d 3e 66 69 6c 65 73 der::create().->depth(0).->files
2e400 28 29 0a 2d 3e 6e 61 6d 65 28 27 2a 27 20 2e 20 73 65 6c 66 3a 3a 4f 4c 44 5f 49 4e 53 54 41 4c ().->name('*'...self::OLD_INSTAL
2e420 4c 5f 45 58 54 29 0a 2d 3e 69 6e 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 3b 0a 0a 72 65 74 75 L_EXT).->in($rollbackDir);..retu
2e440 72 6e 20 24 66 69 6e 64 65 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a rn.$finder;.}.}.<?php...........
2e460 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 .namespace.Composer\Command;..us
2e480 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f e.Composer\DependencyResolver\Po
2e4a0 6f 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c ol;.use.Composer\DependencyResol
2e4c0 76 65 72 5c 44 65 66 61 75 6c 74 50 6f 6c 69 63 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c ver\DefaultPolicy;.use.Composer\
2e4e0 50 61 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 Package\CompletePackageInterface
2e500 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 ;.use.Composer\Package\Version\V
2e520 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 ersionParser;.use.Composer\Plugi
2e540 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 n\CommandEvent;.use.Composer\Plu
2e560 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 gin\PluginEvents;.use.Composer\P
2e580 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d ackage\PackageInterface;.use.Com
2e5a0 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 poser\Semver\Constraint\Constrai
2e5c0 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 ntInterface;.use.Composer\Util\P
2e5e0 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 latform;.use.Symfony\Component\C
2e600 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 onsole\Formatter\OutputFormatter
2e620 53 74 79 6c 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e Style;.use.Symfony\Component\Con
2e640 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 sole\Input\InputInterface;.use.S
2e660 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 ymfony\Component\Console\Input\I
2e680 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e nputArgument;.use.Symfony\Compon
2e6a0 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 ent\Console\Input\InputOption;.u
2e6c0 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 se.Symfony\Component\Console\Out
2e6e0 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 put\OutputInterface;.use.Compose
2e700 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 r\Repository\ArrayRepository;.us
2e720 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 e.Composer\Repository\CompositeR
2e740 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f epository;.use.Composer\Reposito
2e760 72 79 5c 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f ry\ComposerRepository;.use.Compo
2e780 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 ser\Repository\PlatformRepositor
2e7a0 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 y;.use.Composer\Repository\Repos
2e7c0 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 itoryInterface;.use.Composer\Rep
2e7e0 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 ository\RepositoryFactory;.use.C
2e800 6f 6d 70 6f 73 65 72 5c 53 70 64 78 5c 53 70 64 78 4c 69 63 65 6e 73 65 73 3b 0a 0a 0a 0a 0a 0a omposer\Spdx\SpdxLicenses;......
2e820 0a 63 6c 61 73 73 20 53 68 6f 77 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 .class.ShowCommand.extends.BaseC
2e840 6f 6d 6d 61 6e 64 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 73 69 6f 6e 50 61 72 73 ommand.{..protected.$versionPars
2e860 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6c 6f 72 73 3b 0a 0a 70 72 6f 74 65 63 74 65 er;.protected.$colors;..protecte
2e880 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d d.function.configure().{.$this.-
2e8a0 3e 73 65 74 4e 61 6d 65 28 27 73 68 6f 77 27 29 0a 2d 3e 73 65 74 41 6c 69 61 73 65 73 28 61 72 >setName('show').->setAliases(ar
2e8c0 72 61 79 28 27 69 6e 66 6f 27 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 ray('info')).->setDescription('S
2e8e0 68 6f 77 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 70 61 63 6b 61 67 65 73 27 29 how.information.about.packages')
2e900 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 .->setDefinition(array(.new.Inpu
2e920 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 tArgument('package',.InputArgume
2e940 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 50 61 63 6b 61 67 65 20 74 6f 20 69 6e 73 70 65 63 nt::OPTIONAL,.'Package.to.inspec
2e960 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 t'),.new.InputArgument('version'
2e980 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 56 65 72 73 ,.InputArgument::OPTIONAL,.'Vers
2e9a0 69 6f 6e 20 6f 72 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 20 74 6f 20 69 6e 73 ion.or.version.constraint.to.ins
2e9c0 70 65 63 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 61 6c 6c 27 2c 20 6e pect'),.new.InputOption('all',.n
2e9e0 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4c ull,.InputOption::VALUE_NONE,.'L
2ea00 69 73 74 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 ist.all.packages'),.new.InputOpt
2ea20 69 6f 6e 28 27 69 6e 73 74 61 6c 6c 65 64 27 2c 20 27 69 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f ion('installed',.'i',.InputOptio
2ea40 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4c 69 73 74 20 69 6e 73 74 61 6c 6c 65 64 20 70 n::VALUE_NONE,.'List.installed.p
2ea60 61 63 6b 61 67 65 73 20 6f 6e 6c 79 20 28 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 ackages.only.(enabled.by.default
2ea80 2c 20 6f 6e 6c 79 20 70 72 65 73 65 6e 74 20 66 6f 72 20 42 43 29 2e 27 29 2c 0a 6e 65 77 20 49 ,.only.present.for.BC).'),.new.I
2eaa0 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 6c 61 74 66 6f 72 6d 27 2c 20 27 70 27 2c 20 49 6e 70 75 nputOption('platform',.'p',.Inpu
2eac0 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4c 69 73 74 20 70 6c 61 74 66 tOption::VALUE_NONE,.'List.platf
2eae0 6f 72 6d 20 70 61 63 6b 61 67 65 73 20 6f 6e 6c 79 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 orm.packages.only'),.new.InputOp
2eb00 74 69 6f 6e 28 27 61 76 61 69 6c 61 62 6c 65 27 2c 20 27 61 27 2c 20 49 6e 70 75 74 4f 70 74 69 tion('available',.'a',.InputOpti
2eb20 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4c 69 73 74 20 61 76 61 69 6c 61 62 6c 65 20 on::VALUE_NONE,.'List.available.
2eb40 70 61 63 6b 61 67 65 73 20 6f 6e 6c 79 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e packages.only'),.new.InputOption
2eb60 28 27 73 65 6c 66 27 2c 20 27 73 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 ('self',.'s',.InputOption::VALUE
2eb80 5f 4e 4f 4e 45 2c 20 27 53 68 6f 77 20 74 68 65 20 72 6f 6f 74 20 70 61 63 6b 61 67 65 20 69 6e _NONE,.'Show.the.root.package.in
2eba0 66 6f 72 6d 61 74 69 6f 6e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 61 formation'),.new.InputOption('na
2ebc0 6d 65 2d 6f 6e 6c 79 27 2c 20 27 4e 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 me-only',.'N',.InputOption::VALU
2ebe0 45 5f 4e 4f 4e 45 2c 20 27 4c 69 73 74 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 73 20 6f 6e 6c 79 E_NONE,.'List.package.names.only
2ec00 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 61 74 68 27 2c 20 27 50 27 2c '),.new.InputOption('path',.'P',
2ec20 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 68 6f 77 20 .InputOption::VALUE_NONE,.'Show.
2ec40 70 61 63 6b 61 67 65 20 70 61 74 68 73 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e package.paths'),.new.InputOption
2ec60 28 27 74 72 65 65 27 2c 20 27 74 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 ('tree',.'t',.InputOption::VALUE
2ec80 5f 4e 4f 4e 45 2c 20 27 4c 69 73 74 20 74 68 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 61 73 _NONE,.'List.the.dependencies.as
2eca0 20 61 20 74 72 65 65 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 .a.tree'),.)).->setHelp(<<<EOT.T
2ecc0 68 65 20 73 68 6f 77 20 63 6f 6d 6d 61 6e 64 20 64 69 73 70 6c 61 79 73 20 64 65 74 61 69 6c 65 he.show.command.displays.detaile
2ece0 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 61 20 70 61 63 6b 61 67 65 2c 20 6f d.information.about.a.package,.o
2ed00 72 0a 6c 69 73 74 73 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 20 61 76 61 69 6c 61 62 6c 65 2e 0a r.lists.all.packages.available..
2ed20 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 .EOT.).;.}..protected.function.e
2ed40 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 xecute(InputInterface.$input,.Ou
2ed60 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e tputInterface.$output).{.$this->
2ed80 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 versionParser.=.new.VersionParse
2eda0 72 3b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 74 72 65 65 27 29 r;.if.($input->getOption('tree')
2edc0 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 53 74 79 6c 65 73 28 24 6f 75 74 70 75 74 29 3b 0a ).{.$this->initStyles($output);.
2ede0 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 }..$composer.=.$this->getCompose
2ee00 72 28 66 61 6c 73 65 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a r(false);.$io.=.$this->getIO();.
2ee20 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 69 6e 73 74 61 6c 6c 65 .if.($input->getOption('installe
2ee40 64 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 d')).{.$io->writeError('<warning
2ee60 3e 59 6f 75 20 61 72 65 20 75 73 69 6e 67 20 74 68 65 20 64 65 70 72 65 63 61 74 65 64 20 6f 70 >You.are.using.the.deprecated.op
2ee80 74 69 6f 6e 20 22 69 6e 73 74 61 6c 6c 65 64 22 2e 20 4f 6e 6c 79 20 69 6e 73 74 61 6c 6c 65 64 tion."installed"..Only.installed
2eea0 20 70 61 63 6b 61 67 65 73 20 61 72 65 20 73 68 6f 77 6e 20 62 79 20 64 65 66 61 75 6c 74 20 6e .packages.are.shown.by.default.n
2eec0 6f 77 2e 20 54 68 65 20 2d 2d 61 6c 6c 20 6f 70 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 ow..The.--all.option.can.be.used
2eee0 20 74 6f 20 73 68 6f 77 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 2e 3c 2f 77 61 72 6e 69 6e 67 3e .to.show.all.packages.</warning>
2ef00 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 74 72 ');.}..if.($input->getOption('tr
2ef20 65 65 27 29 20 26 26 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 6c 6c 27 ee').&&.($input->getOption('all'
2ef40 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 76 61 69 6c 61 62 6c ).||.$input->getOption('availabl
2ef60 65 27 29 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 54 68 65 20 2d 2d 74 e'))).{.$io->writeError('The.--t
2ef80 72 65 65 20 28 2d 74 29 20 6f 70 74 69 6f 6e 20 69 73 20 6e 6f 74 20 75 73 61 62 6c 65 20 69 6e ree.(-t).option.is.not.usable.in
2efa0 20 63 6f 6d 62 69 6e 61 74 69 6f 6e 20 77 69 74 68 20 2d 2d 61 6c 6c 20 6f 72 20 2d 2d 61 76 61 .combination.with.--all.or.--ava
2efc0 69 6c 61 62 6c 65 20 28 2d 61 29 27 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 24 70 6c ilable.(-a)');..return;.}....$pl
2efe0 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 atformOverrides.=.array();.if.($
2f000 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 20 3d composer).{.$platformOverrides.=
2f020 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 70 6c .$composer->getConfig()->get('pl
2f040 61 74 66 6f 72 6d 27 29 20 3f 3a 20 61 72 72 61 79 28 29 3b 0a 7d 0a 24 70 6c 61 74 66 6f 72 6d atform').?:.array();.}.$platform
2f060 52 65 70 6f 20 3d 20 6e 65 77 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 28 61 72 Repo.=.new.PlatformRepository(ar
2f080 72 61 79 28 29 2c 20 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 29 3b 0a 0a 69 66 20 ray(),.$platformOverrides);..if.
2f0a0 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 73 65 6c 66 27 29 29 20 7b 0a 24 70 ($input->getOption('self')).{.$p
2f0c0 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d 3e 67 ackage.=.$this->getComposer()->g
2f0e0 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 72 65 70 6f 73 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 etPackage();.$repos.=.$installed
2f100 52 65 70 6f 20 3d 20 6e 65 77 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 Repo.=.new.ArrayRepository(array
2f120 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 ($package));.}.elseif.($input->g
2f140 65 74 4f 70 74 69 6f 6e 28 27 70 6c 61 74 66 6f 72 6d 27 29 29 20 7b 0a 24 72 65 70 6f 73 20 3d etOption('platform')).{.$repos.=
2f160 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 3b .$installedRepo.=.$platformRepo;
2f180 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 76 .}.elseif.($input->getOption('av
2f1a0 61 69 6c 61 62 6c 65 27 29 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 70 ailable')).{.$installedRepo.=.$p
2f1c0 6c 61 74 66 6f 72 6d 52 65 70 6f 3b 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 72 latformRepo;.if.($composer).{.$r
2f1e0 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 24 epos.=.new.CompositeRepository($
2f200 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 composer->getRepositoryManager()
2f220 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 ->getRepositories());.}.else.{.$
2f240 64 65 66 61 75 6c 74 52 65 70 6f 73 20 3d 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 defaultRepos.=.RepositoryFactory
2f260 3a 3a 64 65 66 61 75 6c 74 52 65 70 6f 73 28 24 69 6f 29 3b 0a 24 72 65 70 6f 73 20 3d 20 6e 65 ::defaultRepos($io);.$repos.=.ne
2f280 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 24 64 65 66 61 75 6c 74 52 65 w.CompositeRepository($defaultRe
2f2a0 70 6f 73 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 4e 6f 20 63 6f 6d 70 6f 73 pos);.$io->writeError('No.compos
2f2c0 65 72 2e 6a 73 6f 6e 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 er.json.found.in.the.current.dir
2f2e0 65 63 74 6f 72 79 2c 20 73 68 6f 77 69 6e 67 20 61 76 61 69 6c 61 62 6c 65 20 70 61 63 6b 61 67 ectory,.showing.available.packag
2f300 65 73 20 66 72 6f 6d 20 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f es.from.'...implode(',.',.array_
2f320 6b 65 79 73 28 24 64 65 66 61 75 6c 74 52 65 70 6f 73 29 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 keys($defaultRepos)));.}.}.elsei
2f340 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 6c 6c 27 29 20 26 26 20 24 f.($input->getOption('all').&&.$
2f360 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 6c 6f 63 61 6c 52 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 composer).{.$localRepo.=.$compos
2f380 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c er->getRepositoryManager()->getL
2f3a0 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f ocalRepository();.$installedRepo
2f3c0 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 .=.new.CompositeRepository(array
2f3e0 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 29 29 3b 0a 24 72 ($localRepo,.$platformRepo));.$r
2f400 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 epos.=.new.CompositeRepository(a
2f420 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 rray_merge(array($installedRepo)
2f440 2c 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 ,.$composer->getRepositoryManage
2f460 72 28 29 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 29 29 3b 0a 7d 20 65 6c 73 65 r()->getRepositories()));.}.else
2f480 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 6c 6c 27 29 29 20 7b 0a if.($input->getOption('all')).{.
2f4a0 24 64 65 66 61 75 6c 74 52 65 70 6f 73 20 3d 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 $defaultRepos.=.RepositoryFactor
2f4c0 79 3a 3a 64 65 66 61 75 6c 74 52 65 70 6f 73 28 24 69 6f 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 y::defaultRepos($io);.$io->write
2f4e0 45 72 72 6f 72 28 27 4e 6f 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 6f 75 6e 64 20 69 6e Error('No.composer.json.found.in
2f500 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 73 68 6f 77 69 6e 67 20 .the.current.directory,.showing.
2f520 61 76 61 69 6c 61 62 6c 65 20 70 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 27 20 2e 20 69 6d 70 6c available.packages.from.'...impl
2f540 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 64 65 66 61 75 6c 74 52 65 70 ode(',.',.array_keys($defaultRep
2f560 6f 73 29 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 70 6c 61 74 66 6f 72 os)));.$installedRepo.=.$platfor
2f580 6d 52 65 70 6f 3b 0a 24 72 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 mRepo;.$repos.=.new.CompositeRep
2f5a0 6f 73 69 74 6f 72 79 28 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 69 6e 73 74 61 ository(array_merge(array($insta
2f5c0 6c 6c 65 64 52 65 70 6f 29 2c 20 24 64 65 66 61 75 6c 74 52 65 70 6f 73 29 29 3b 0a 7d 20 65 6c lledRepo),.$defaultRepos));.}.el
2f5e0 73 65 20 7b 0a 24 72 65 70 6f 73 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 se.{.$repos.=.$installedRepo.=.$
2f600 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f this->getComposer()->getReposito
2f620 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 ryManager()->getLocalRepository(
2f640 29 3b 0a 7d 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 45 );.}..if.($composer).{.$commandE
2f660 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 vent.=.new.CommandEvent(PluginEv
2f680 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 73 68 6f 77 27 2c 20 24 69 6e 70 75 74 2c 20 24 ents::COMMAND,.'show',.$input,.$
2f6a0 6f 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 output);.$composer->getEventDisp
2f6c0 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 atcher()->dispatch($commandEvent
2f6e0 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 7d 0a 0a ->getName(),.$commandEvent);.}..
2f700 0a 20 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 ..if.($input->getArgument('packa
2f720 67 65 27 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 69 66 20 28 ge').||.!empty($package)).{.if.(
2f740 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 6c 69 73 74 28 24 70 61 63 6b 61 67 65 empty($package)).{.list($package
2f760 2c 20 24 76 65 72 73 69 6f 6e 73 29 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 ,.$versions).=.$this->getPackage
2f780 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 70 6f 73 2c 20 24 69 6e 70 75 74 2d ($installedRepo,.$repos,.$input-
2f7a0 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 2c 20 24 69 6e 70 75 74 2d >getArgument('package'),.$input-
2f7c0 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 29 29 3b 0a 0a 69 66 20 28 21 >getArgument('version'));..if.(!
2f7e0 24 70 61 63 6b 61 67 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 $package).{.throw.new.\InvalidAr
2f800 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e 24 69 6e 70 75 gumentException('Package.'.$inpu
2f820 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 2e 27 20 6e 6f 74 20 t->getArgument('package').'.not.
2f840 66 6f 75 6e 64 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 found');.}.}.else.{.$versions.=.
2f860 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e array($package->getPrettyVersion
2f880 28 29 20 3d 3e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 7d ().=>.$package->getVersion());.}
2f8a0 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 74 72 65 65 27 29 29 ..if.($input->getOption('tree'))
2f8c0 20 7b 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 50 61 63 6b 61 67 65 54 72 65 65 28 24 70 61 .{.$this->displayPackageTree($pa
2f8e0 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 70 6f 73 29 3b 0a ckage,.$installedRepo,.$repos);.
2f900 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4d 65 74 61 28 24 70 61 63 6b 61 }.else.{.$this->printMeta($packa
2f920 67 65 2c 20 24 76 65 72 73 69 6f 6e 73 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 3b 0a ge,.$versions,.$installedRepo);.
2f940 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 6e 6b 73 28 24 70 61 63 6b 61 67 65 2c 20 27 72 65 71 $this->printLinks($package,.'req
2f960 75 69 72 65 73 27 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 6e 6b 73 28 24 70 61 63 6b uires');.$this->printLinks($pack
2f980 61 67 65 2c 20 27 64 65 76 52 65 71 75 69 72 65 73 27 2c 20 27 72 65 71 75 69 72 65 73 20 28 64 age,.'devRequires',.'requires.(d
2f9a0 65 76 29 27 29 3b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 67 67 65 73 74 73 ev)');.if.($package->getSuggests
2f9c0 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 22 5c 6e 3c 69 6e 66 6f 3e 73 75 67 67 65 73 ()).{.$io->write("\n<info>sugges
2f9e0 74 73 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e ts</info>");.foreach.($package->
2fa00 67 65 74 53 75 67 67 65 73 74 73 28 29 20 61 73 20 24 73 75 67 67 65 73 74 65 64 20 3d 3e 20 24 getSuggests().as.$suggested.=>.$
2fa20 72 65 61 73 6f 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 73 75 67 67 65 73 74 65 64 20 reason).{.$io->write($suggested.
2fa40 2e 20 27 20 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 72 65 61 73 6f 6e 20 2e 20 27 3c 2f 63 6f ..'.<comment>'...$reason...'</co
2fa60 6d 6d 65 6e 74 3e 27 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 6e 6b 73 28 mment>');.}.}.$this->printLinks(
2fa80 24 70 61 63 6b 61 67 65 2c 20 27 70 72 6f 76 69 64 65 73 27 29 3b 0a 24 74 68 69 73 2d 3e 70 72 $package,.'provides');.$this->pr
2faa0 69 6e 74 4c 69 6e 6b 73 28 24 70 61 63 6b 61 67 65 2c 20 27 63 6f 6e 66 6c 69 63 74 73 27 29 3b intLinks($package,.'conflicts');
2fac0 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 6e 6b 73 28 24 70 61 63 6b 61 67 65 2c 20 27 72 65 .$this->printLinks($package,.'re
2fae0 70 6c 61 63 65 73 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 69 places');.}..return;.}....if.($i
2fb00 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 74 72 65 65 27 29 29 20 7b 0a 24 72 6f 6f 74 nput->getOption('tree')).{.$root
2fb20 50 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d 3e Package.=.$this->getComposer()->
2fb40 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 72 6f 6f 74 52 65 71 75 69 72 65 73 20 3d 20 61 72 getPackage();.$rootRequires.=.ar
2fb60 72 61 79 5f 6d 61 70 28 0a 27 73 74 72 74 6f 6c 6f 77 65 72 27 2c 0a 61 72 72 61 79 5f 6b 65 79 ray_map(.'strtolower',.array_key
2fb80 73 28 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 67 65 74 52 s(array_merge($rootPackage->getR
2fba0 65 71 75 69 72 65 73 28 29 2c 20 24 72 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 equires(),.$rootPackage->getDevR
2fbc0 65 71 75 69 72 65 73 28 29 29 29 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 69 6e 73 74 61 6c equires())).);..foreach.($instal
2fbe0 6c 65 64 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 ledRepo->getPackages().as.$packa
2fc00 67 65 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 ge).{.if.(in_array($package->get
2fc20 4e 61 6d 65 28 29 2c 20 24 72 6f 6f 74 52 65 71 75 69 72 65 73 2c 20 74 72 75 65 29 29 20 7b 0a Name(),.$rootRequires,.true)).{.
2fc40 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 50 61 63 6b 61 67 65 54 72 65 65 28 24 70 61 63 6b 61 $this->displayPackageTree($packa
2fc60 67 65 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 70 6f 73 29 3b 0a 7d 0a 7d ge,.$installedRepo,.$repos);.}.}
2fc80 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 69 66 20 28 24 72 65 70 6f 73 20 69 6e 73 74 61 6e ..return.0;.}..if.($repos.instan
2fca0 63 65 6f 66 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 72 65 70 ceof.CompositeRepository).{.$rep
2fcc0 6f 73 20 3d 20 24 72 65 70 6f 73 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a os.=.$repos->getRepositories();.
2fce0 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 72 65 70 6f 73 29 29 20 7b 0a 24 }.elseif.(!is_array($repos)).{.$
2fd00 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 24 72 65 70 6f 73 29 3b 0a 7d 0a 0a 0a 20 24 70 61 63 repos.=.array($repos);.}....$pac
2fd20 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f kages.=.array();..foreach.($repo
2fd40 73 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 69 66 20 28 24 72 65 70 6f 20 3d 3d 3d 20 24 70 6c 61 s.as.$repo).{.if.($repo.===.$pla
2fd60 74 66 6f 72 6d 52 65 70 6f 29 20 7b 0a 24 74 79 70 65 20 3d 20 27 3c 69 6e 66 6f 3e 70 6c 61 74 tformRepo).{.$type.=.'<info>plat
2fd80 66 6f 72 6d 3c 2f 69 6e 66 6f 3e 3a 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 0a 24 72 65 70 6f 20 form</info>:';.}.elseif.(.$repo.
2fda0 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 0a 7c 7c 20 28 24 69 6e 73 74 61 6c 6c 65 ===.$installedRepo.||.($installe
2fdc0 64 52 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 dRepo.instanceof.CompositeReposi
2fde0 74 6f 72 79 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 72 65 70 6f 2c 20 24 69 6e 73 74 61 6c 6c tory.&&.in_array($repo,.$install
2fe00 65 64 52 65 70 6f 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 2c 20 74 72 75 65 29 edRepo->getRepositories(),.true)
2fe20 29 0a 29 20 7b 0a 24 74 79 70 65 20 3d 20 27 3c 69 6e 66 6f 3e 69 6e 73 74 61 6c 6c 65 64 3c 2f ).).{.$type.=.'<info>installed</
2fe40 69 6e 66 6f 3e 3a 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 79 70 65 20 3d 20 27 3c 63 6f 6d 6d info>:';.}.else.{.$type.=.'<comm
2fe60 65 6e 74 3e 61 76 61 69 6c 61 62 6c 65 3c 2f 63 6f 6d 6d 65 6e 74 3e 3a 27 3b 0a 7d 0a 69 66 20 ent>available</comment>:';.}.if.
2fe80 28 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 ($repo.instanceof.ComposerReposi
2fea0 74 6f 72 79 20 26 26 20 24 72 65 70 6f 2d 3e 68 61 73 50 72 6f 76 69 64 65 72 73 28 29 29 20 7b tory.&&.$repo->hasProviders()).{
2fec0 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 2d 3e 67 65 74 50 72 6f 76 69 64 65 72 4e 61 6d 65 .foreach.($repo->getProviderName
2fee0 73 28 29 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d s().as.$name).{.$packages[$type]
2ff00 5b 24 6e 61 6d 65 5d 20 3d 20 24 6e 61 6d 65 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 [$name].=.$name;.}.}.else.{.fore
2ff20 61 63 68 20 28 24 72 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 ach.($repo->getPackages().as.$pa
2ff40 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 73 5b 24 74 ckage).{.if.(!isset($packages[$t
2ff60 79 70 65 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 0a 7c 7c 20 21 69 ype][$package->getName()]).||.!i
2ff80 73 5f 6f 62 6a 65 63 74 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 5b 24 70 61 63 6b 61 s_object($packages[$type][$packa
2ffa0 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 0a 7c 7c 20 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 ge->getName()]).||.version_compa
2ffc0 72 65 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 re($packages[$type][$package->ge
2ffe0 74 4e 61 6d 65 28 29 5d 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 24 70 61 63 6b 61 67 65 tName()]->getVersion(),.$package
30000 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 27 3c 27 29 0a 29 20 7b 0a 24 70 61 63 6b 61 67 ->getVersion(),.'<').).{.$packag
30020 65 73 5b 24 74 79 70 65 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d es[$type][$package->getName()].=
30040 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 24 73 68 6f 77 41 6c 6c 54 79 70 65 .$package;.}.}.}.}..$showAllType
30060 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 6c 6c 27 29 3b 0a 24 69 s.=.$input->getOption('all');.$i
30080 6e 64 65 6e 74 20 3d 20 24 73 68 6f 77 41 6c 6c 54 79 70 65 73 20 3f 20 27 20 20 27 20 3a 20 27 ndent.=.$showAllTypes.?.'..'.:.'
300a0 27 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 3c 69 6e 66 6f 3e 70 6c 61 74 66 6f 72 ';.foreach.(array('<info>platfor
300c0 6d 3c 2f 69 6e 66 6f 3e 3a 27 20 3d 3e 20 74 72 75 65 2c 20 27 3c 63 6f 6d 6d 65 6e 74 3e 61 76 m</info>:'.=>.true,.'<comment>av
300e0 61 69 6c 61 62 6c 65 3c 2f 63 6f 6d 6d 65 6e 74 3e 3a 27 20 3d 3e 20 66 61 6c 73 65 2c 20 27 3c ailable</comment>:'.=>.false,.'<
30100 69 6e 66 6f 3e 69 6e 73 74 61 6c 6c 65 64 3c 2f 69 6e 66 6f 3e 3a 27 20 3d 3e 20 74 72 75 65 29 info>installed</info>:'.=>.true)
30120 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 73 68 6f 77 56 65 72 73 69 6f 6e 29 20 7b 0a 69 66 20 .as.$type.=>.$showVersion).{.if.
30140 28 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 69 66 20 28 (isset($packages[$type])).{.if.(
30160 24 73 68 6f 77 41 6c 6c 54 79 70 65 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 74 79 70 $showAllTypes).{.$io->write($typ
30180 65 29 3b 0a 7d 0a 6b 73 6f 72 74 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 29 3b 0a 0a e);.}.ksort($packages[$type]);..
301a0 24 6e 61 6d 65 4c 65 6e 67 74 68 20 3d 20 24 76 65 72 73 69 6f 6e 4c 65 6e 67 74 68 20 3d 20 30 $nameLength.=.$versionLength.=.0
301c0 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 20 61 73 20 24 ;.foreach.($packages[$type].as.$
301e0 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 70 61 63 6b 61 67 package).{.if.(is_object($packag
30200 65 29 29 20 7b 0a 24 6e 61 6d 65 4c 65 6e 67 74 68 20 3d 20 6d 61 78 28 24 6e 61 6d 65 4c 65 6e e)).{.$nameLength.=.max($nameLen
30220 67 74 68 2c 20 73 74 72 6c 65 6e 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e gth,.strlen($package->getPrettyN
30240 61 6d 65 28 29 29 29 3b 0a 24 76 65 72 73 69 6f 6e 4c 65 6e 67 74 68 20 3d 20 6d 61 78 28 24 76 ame()));.$versionLength.=.max($v
30260 65 72 73 69 6f 6e 4c 65 6e 67 74 68 2c 20 73 74 72 6c 65 6e 28 24 70 61 63 6b 61 67 65 2d 3e 67 ersionLength,.strlen($package->g
30280 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 29 29 3b 0a 7d 20 65 6c 73 65 20 etFullPrettyVersion()));.}.else.
302a0 7b 0a 24 6e 61 6d 65 4c 65 6e 67 74 68 20 3d 20 6d 61 78 28 24 6e 61 6d 65 4c 65 6e 67 74 68 2c {.$nameLength.=.max($nameLength,
302c0 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 6c 69 73 74 28 24 77 69 64 74 68 29 20 3d 20 24 .$package);.}.}.list($width).=.$
302e0 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 2d 3e 67 65 74 54 65 72 6d 69 this->getApplication()->getTermi
30300 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 28 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 77 nalDimensions();.if.(null.===.$w
30320 69 64 74 68 29 20 7b 0a 0a 20 0a 20 24 77 69 64 74 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 idth).{.....$width.=.PHP_INT_MAX
30340 3b 0a 7d 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b ;.}.if.(Platform::isWindows()).{
30360 0a 24 77 69 64 74 68 2d 2d 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 .$width--;.}..if.($input->getOpt
30380 69 6f 6e 28 27 70 61 74 68 27 29 20 26 26 20 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6d 70 6f 73 65 ion('path').&&.null.===.$compose
303a0 72 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 4e 6f 20 63 6f 6d 70 6f 73 65 r).{.$io->writeError('No.compose
303c0 72 2e 6a 73 6f 6e 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 65 r.json.found.in.the.current.dire
303e0 63 74 6f 72 79 2c 20 64 69 73 61 62 6c 69 6e 67 20 22 70 61 74 68 22 20 6f 70 74 69 6f 6e 27 29 ctory,.disabling."path".option')
30400 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 70 61 74 68 27 2c 20 66 61 6c 73 ;.$input->setOption('path',.fals
30420 65 29 3b 0a 7d 0a 0a 24 77 72 69 74 65 50 61 74 68 20 3d 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 e);.}..$writePath.=.!$input->get
30440 4f 70 74 69 6f 6e 28 27 6e 61 6d 65 2d 6f 6e 6c 79 27 29 20 26 26 20 24 69 6e 70 75 74 2d 3e 67 Option('name-only').&&.$input->g
30460 65 74 4f 70 74 69 6f 6e 28 27 70 61 74 68 27 29 3b 0a 24 77 72 69 74 65 56 65 72 73 69 6f 6e 20 etOption('path');.$writeVersion.
30480 3d 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 61 6d 65 2d 6f 6e 6c 79 27 =.!$input->getOption('name-only'
304a0 29 20 26 26 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 61 74 68 27 29 20 ).&&.!$input->getOption('path').
304c0 26 26 20 24 73 68 6f 77 56 65 72 73 69 6f 6e 20 26 26 20 28 24 6e 61 6d 65 4c 65 6e 67 74 68 20 &&.$showVersion.&&.($nameLength.
304e0 2b 20 24 76 65 72 73 69 6f 6e 4c 65 6e 67 74 68 20 2b 20 33 20 3c 3d 20 24 77 69 64 74 68 29 3b +.$versionLength.+.3.<=.$width);
30500 0a 24 77 72 69 74 65 44 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 21 24 69 6e 70 75 74 2d 3e 67 65 .$writeDescription.=.!$input->ge
30520 74 4f 70 74 69 6f 6e 28 27 6e 61 6d 65 2d 6f 6e 6c 79 27 29 20 26 26 20 21 24 69 6e 70 75 74 2d tOption('name-only').&&.!$input-
30540 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 61 74 68 27 29 20 26 26 20 28 24 6e 61 6d 65 4c 65 6e 67 >getOption('path').&&.($nameLeng
30560 74 68 20 2b 20 28 24 73 68 6f 77 56 65 72 73 69 6f 6e 20 3f 20 24 76 65 72 73 69 6f 6e 4c 65 6e th.+.($showVersion.?.$versionLen
30580 67 74 68 20 3a 20 30 29 20 2b 20 32 34 20 3c 3d 20 24 77 69 64 74 68 29 3b 0a 66 6f 72 65 61 63 gth.:.0).+.24.<=.$width);.foreac
305a0 68 20 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 20 61 73 20 24 70 61 63 6b 61 67 65 29 h.($packages[$type].as.$package)
305c0 20 7b 0a 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 69 .{.if.(is_object($package)).{.$i
305e0 6f 2d 3e 77 72 69 74 65 28 24 69 6e 64 65 6e 74 20 2e 20 73 74 72 5f 70 61 64 28 24 70 61 63 6b o->write($indent...str_pad($pack
30600 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 20 24 6e 61 6d 65 4c 65 6e 67 74 age->getPrettyName(),.$nameLengt
30620 68 2c 20 27 20 27 29 2c 20 66 61 6c 73 65 29 3b 0a 0a 69 66 20 28 24 77 72 69 74 65 56 65 72 73 h,.'.'),.false);..if.($writeVers
30640 69 6f 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 20 27 20 2e 20 73 74 72 5f 70 61 64 28 ion).{.$io->write('.'...str_pad(
30660 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 $package->getFullPrettyVersion()
30680 2c 20 24 76 65 72 73 69 6f 6e 4c 65 6e 67 74 68 2c 20 27 20 27 29 2c 20 66 61 6c 73 65 29 3b 0a ,.$versionLength,.'.'),.false);.
306a0 7d 0a 0a 69 66 20 28 24 77 72 69 74 65 44 65 73 63 72 69 70 74 69 6f 6e 29 20 7b 0a 24 64 65 73 }..if.($writeDescription).{.$des
306c0 63 72 69 70 74 69 6f 6e 20 3d 20 73 74 72 74 6f 6b 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 cription.=.strtok($package->getD
306e0 65 73 63 72 69 70 74 69 6f 6e 28 29 2c 20 22 5c 72 5c 6e 22 29 3b 0a 24 72 65 6d 61 69 6e 69 6e escription(),."\r\n");.$remainin
30700 67 20 3d 20 24 77 69 64 74 68 20 2d 20 24 6e 61 6d 65 4c 65 6e 67 74 68 20 2d 20 24 76 65 72 73 g.=.$width.-.$nameLength.-.$vers
30720 69 6f 6e 4c 65 6e 67 74 68 20 2d 20 34 3b 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 64 65 73 63 72 ionLength.-.4;.if.(strlen($descr
30740 69 70 74 69 6f 6e 29 20 3e 20 24 72 65 6d 61 69 6e 69 6e 67 29 20 7b 0a 24 64 65 73 63 72 69 70 iption).>.$remaining).{.$descrip
30760 74 69 6f 6e 20 3d 20 73 75 62 73 74 72 28 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 30 2c 20 24 tion.=.substr($description,.0,.$
30780 72 65 6d 61 69 6e 69 6e 67 20 2d 20 33 29 20 2e 20 27 2e 2e 2e 27 3b 0a 7d 0a 24 69 6f 2d 3e 77 remaining.-.3)...'...';.}.$io->w
307a0 72 69 74 65 28 27 20 27 20 2e 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 66 61 6c 73 65 29 3b rite('.'...$description,.false);
307c0 0a 7d 0a 0a 69 66 20 28 24 77 72 69 74 65 50 61 74 68 29 20 7b 0a 24 70 61 74 68 20 3d 20 73 74 .}..if.($writePath).{.$path.=.st
307e0 72 74 6f 6b 28 72 65 61 6c 70 61 74 68 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 rtok(realpath($composer->getInst
30800 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 allationManager()->getInstallPat
30820 68 28 24 70 61 63 6b 61 67 65 29 29 2c 20 22 5c 72 5c 6e 22 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 h($package)),."\r\n");.$io->writ
30840 65 28 27 20 27 20 2e 20 24 70 61 74 68 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 e('.'...$path,.false);.}.}.else.
30860 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 69 6e 64 65 6e 74 20 2e 20 24 70 61 63 6b 61 67 65 2c {.$io->write($indent...$package,
30880 20 66 61 6c 73 65 29 3b 0a 7d 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 27 29 3b 0a 7d 0a 69 66 20 .false);.}.$io->write('');.}.if.
308a0 28 24 73 68 6f 77 41 6c 6c 54 79 70 65 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 27 29 ($showAllTypes).{.$io->write('')
308c0 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 ;.}.}.}.}............protected.f
308e0 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 unction.getPackage(RepositoryInt
30900 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 70 6f 73 69 74 6f 72 erface.$installedRepo,.Repositor
30920 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 2c 20 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 yInterface.$repos,.$name,.$versi
30940 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 on.=.null).{.$name.=.strtolower(
30960 24 6e 61 6d 65 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 69 73 5f 73 74 72 69 6e 67 28 $name);.$constraint.=.is_string(
30980 24 76 65 72 73 69 6f 6e 29 20 3f 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 $version).?.$this->versionParser
309a0 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 76 65 72 73 69 6f 6e 29 20 3a 20 24 ->parseConstraints($version).:.$
309c0 76 65 72 73 69 6f 6e 3b 0a 0a 24 70 6f 6c 69 63 79 20 3d 20 6e 65 77 20 44 65 66 61 75 6c 74 50 version;..$policy.=.new.DefaultP
309e0 6f 6c 69 63 79 28 29 3b 0a 24 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c 28 27 64 65 76 27 29 olicy();.$pool.=.new.Pool('dev')
30a00 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 73 29 3b 0a ;.$pool->addRepository($repos);.
30a20 0a 24 6d 61 74 63 68 65 64 50 61 63 6b 61 67 65 20 3d 20 6e 75 6c 6c 3b 0a 24 76 65 72 73 69 6f .$matchedPackage.=.null;.$versio
30a40 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 70 6f 6f 6c 2d 3e ns.=.array();.$matches.=.$pool->
30a60 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 whatProvides($name,.$constraint)
30a80 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 68 65 73 20 61 73 20 24 69 6e 64 65 78 20 3d 3e ;.foreach.($matches.as.$index.=>
30aa0 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 0a 20 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 .$package).{...if.($package->get
30ac0 4e 61 6d 65 28 29 20 21 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 75 6e 73 65 74 28 24 6d 61 74 63 68 Name().!==.$name).{.unset($match
30ae0 65 73 5b 24 69 6e 64 65 78 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 es[$index]);.continue;.}....if.(
30b00 6e 75 6c 6c 20 3d 3d 3d 20 24 76 65 72 73 69 6f 6e 20 26 26 20 24 69 6e 73 74 61 6c 6c 65 64 52 null.===.$version.&&.$installedR
30b20 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 6d 61 epo->hasPackage($package)).{.$ma
30b40 74 63 68 65 64 50 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 24 76 65 72 tchedPackage.=.$package;.}..$ver
30b60 73 69 6f 6e 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e sions[$package->getPrettyVersion
30b80 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 24 6d ()].=.$package->getVersion();.$m
30ba0 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 atches[$index].=.$package->getId
30bc0 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 6d 61 74 63 68 65 64 50 61 63 6b 61 67 65 20 26 26 ();.}....if.(!$matchedPackage.&&
30be0 20 24 6d 61 74 63 68 65 73 20 26 26 20 24 70 72 65 66 65 72 72 65 64 20 3d 20 24 70 6f 6c 69 63 .$matches.&&.$preferred.=.$polic
30c00 79 2d 3e 73 65 6c 65 63 74 50 72 65 66 65 72 72 65 64 50 61 63 6b 61 67 65 73 28 24 70 6f 6f 6c y->selectPreferredPackages($pool
30c20 2c 20 61 72 72 61 79 28 29 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 24 6d 61 74 63 68 65 64 ,.array(),.$matches)).{.$matched
30c40 50 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 Package.=.$pool->literalToPackag
30c60 65 28 24 70 72 65 66 65 72 72 65 64 5b 30 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 e($preferred[0]);.}..return.arra
30c80 79 28 24 6d 61 74 63 68 65 64 50 61 63 6b 61 67 65 2c 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 7d y($matchedPackage,.$versions);.}
30ca0 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 4d 65 74 .....protected.function.printMet
30cc0 61 28 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b a(CompletePackageInterface.$pack
30ce0 61 67 65 2c 20 61 72 72 61 79 20 24 76 65 72 73 69 6f 6e 73 2c 20 52 65 70 6f 73 69 74 6f 72 79 age,.array.$versions,.Repository
30d00 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 0a 7b 0a 24 69 6f 20 Interface.$installedRepo).{.$io.
30d20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 =.$this->getIO();.$io->write('<i
30d40 6e 66 6f 3e 6e 61 6d 65 3c 2f 69 6e 66 6f 3e 20 20 20 20 20 3a 20 27 20 2e 20 24 70 61 63 6b 61 nfo>name</info>.....:.'...$packa
30d60 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 ge->getPrettyName());.$io->write
30d80 28 27 3c 69 6e 66 6f 3e 64 65 73 63 72 69 70 2e 3c 2f 69 6e 66 6f 3e 20 3a 20 27 20 2e 20 24 70 ('<info>descrip.</info>.:.'...$p
30da0 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 3b 0a 24 69 6f 2d 3e ackage->getDescription());.$io->
30dc0 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 6b 65 79 77 6f 72 64 73 3c 2f 69 6e 66 6f 3e 20 3a 20 27 write('<info>keywords</info>.:.'
30de0 20 2e 20 6a 6f 69 6e 28 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4b 65 79 77 6f ...join(',.',.$package->getKeywo
30e00 72 64 73 28 29 20 3f 3a 20 61 72 72 61 79 28 29 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 rds().?:.array()));.$this->print
30e20 56 65 72 73 69 6f 6e 73 28 24 70 61 63 6b 61 67 65 2c 20 24 76 65 72 73 69 6f 6e 73 2c 20 24 69 Versions($package,.$versions,.$i
30e40 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f nstalledRepo);.$io->write('<info
30e60 3e 74 79 70 65 3c 2f 69 6e 66 6f 3e 20 20 20 20 20 3a 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d >type</info>.....:.'...$package-
30e80 3e 67 65 74 54 79 70 65 28 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 63 65 6e 73 65 >getType());.$this->printLicense
30ea0 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 73 s($package);.$io->write('<info>s
30ec0 6f 75 72 63 65 3c 2f 69 6e 66 6f 3e 20 20 20 3a 20 27 20 2e 20 73 70 72 69 6e 74 66 28 27 5b 25 ource</info>...:.'...sprintf('[%
30ee0 73 5d 20 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 25 73 27 2c 20 24 70 s].<comment>%s</comment>.%s',.$p
30f00 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 2c 20 24 70 61 63 6b 61 67 ackage->getSourceType(),.$packag
30f20 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 e->getSourceUrl(),.$package->get
30f40 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 SourceReference()));.$io->write(
30f60 27 3c 69 6e 66 6f 3e 64 69 73 74 3c 2f 69 6e 66 6f 3e 20 20 20 20 20 3a 20 27 20 2e 20 73 70 72 '<info>dist</info>.....:.'...spr
30f80 69 6e 74 66 28 27 5b 25 73 5d 20 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e intf('[%s].<comment>%s</comment>
30fa0 20 25 73 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 2c 20 24 .%s',.$package->getDistType(),.$
30fc0 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 2c 20 24 70 61 63 6b 61 67 65 2d package->getDistUrl(),.$package-
30fe0 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 >getDistReference()));.$io->writ
31000 65 28 27 3c 69 6e 66 6f 3e 6e 61 6d 65 73 3c 2f 69 6e 66 6f 3e 20 20 20 20 3a 20 27 20 2e 20 69 e('<info>names</info>....:.'...i
31020 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 28 mplode(',.',.$package->getNames(
31040 29 29 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 69 73 41 62 61 6e 64 6f 6e 65 64 28 )));..if.($package->isAbandoned(
31060 29 29 20 7b 0a 24 72 65 70 6c 61 63 65 6d 65 6e 74 20 3d 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 )).{.$replacement.=.($package->g
31080 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 20 21 3d 3d 20 6e 75 6c 6c 29 etReplacementPackage().!==.null)
310a0 0a 3f 20 27 20 54 68 65 20 61 75 74 68 6f 72 20 73 75 67 67 65 73 74 73 20 75 73 69 6e 67 20 74 .?.'.The.author.suggests.using.t
310c0 68 65 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 he.'...$package->getReplacementP
310e0 61 63 6b 61 67 65 28 29 2e 20 27 20 70 61 63 6b 61 67 65 20 69 6e 73 74 65 61 64 2e 27 0a 3a 20 ackage()..'.package.instead.'.:.
31100 6e 75 6c 6c 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 0a 73 70 72 69 6e 74 66 28 null;..$io->writeError(.sprintf(
31120 27 3c 77 61 72 6e 69 6e 67 3e 41 74 74 65 6e 74 69 6f 6e 3a 20 54 68 69 73 20 70 61 63 6b 61 67 '<warning>Attention:.This.packag
31140 65 20 69 73 20 61 62 61 6e 64 6f 6e 65 64 20 61 6e 64 20 6e 6f 20 6c 6f 6e 67 65 72 20 6d 61 69 e.is.abandoned.and.no.longer.mai
31160 6e 74 61 69 6e 65 64 2e 25 73 3c 2f 77 61 72 6e 69 6e 67 3e 27 2c 20 24 72 65 70 6c 61 63 65 6d ntained.%s</warning>',.$replacem
31180 65 6e 74 29 0a 29 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 70 70 ent).);.}..if.($package->getSupp
311a0 6f 72 74 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 22 5c 6e 3c 69 6e 66 6f 3e 73 75 70 ort()).{.$io->write("\n<info>sup
311c0 70 6f 72 74 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 port</info>");.foreach.($package
311e0 2d 3e 67 65 74 53 75 70 70 6f 72 74 28 29 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 76 61 6c 75 ->getSupport().as.$type.=>.$valu
31200 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 74 e).{.$io->write('<comment>'...$t
31220 79 70 65 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 3a 20 27 2e 24 76 61 6c 75 65 29 3b 0a 7d ype...'</comment>.:.'.$value);.}
31240 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 29 .}..if.($package->getAutoload())
31260 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 22 5c 6e 3c 69 6e 66 6f 3e 61 75 74 6f 6c 6f 61 64 3c .{.$io->write("\n<info>autoload<
31280 2f 69 6e 66 6f 3e 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 /info>");.foreach.($package->get
312a0 41 75 74 6f 6c 6f 61 64 28 29 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 61 75 74 6f 6c 6f 61 64 Autoload().as.$type.=>.$autoload
312c0 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 74 s).{.$io->write('<comment>'...$t
312e0 79 70 65 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 0a 69 66 20 28 24 74 79 70 65 20 ype...'</comment>');..if.($type.
31300 3d 3d 3d 20 27 70 73 72 2d 30 27 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 ===.'psr-0').{.foreach.($autoloa
31320 64 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 ds.as.$name.=>.$path).{.$io->wri
31340 74 65 28 28 24 6e 61 6d 65 20 3f 3a 20 27 2a 27 29 20 2e 20 27 20 3d 3e 20 27 20 2e 20 28 69 73 te(($name.?:.'*')...'.=>.'...(is
31360 5f 61 72 72 61 79 28 24 70 61 74 68 29 20 3f 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 _array($path).?.implode(',.',.$p
31380 61 74 68 29 20 3a 20 28 24 70 61 74 68 20 3f 3a 20 27 2e 27 29 29 29 3b 0a 7d 0a 7d 20 65 6c 73 ath).:.($path.?:.'.')));.}.}.els
313a0 65 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 70 73 72 2d 34 27 29 20 7b 0a 66 6f 72 65 61 63 eif.($type.===.'psr-4').{.foreac
313c0 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 70 61 74 68 29 h.($autoloads.as.$name.=>.$path)
313e0 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 28 24 6e 61 6d 65 20 3f 3a 20 27 2a 27 29 20 2e 20 27 .{.$io->write(($name.?:.'*')...'
31400 20 3d 3e 20 27 20 2e 20 28 69 73 5f 61 72 72 61 79 28 24 70 61 74 68 29 20 3f 20 69 6d 70 6c 6f .=>.'...(is_array($path).?.implo
31420 64 65 28 27 2c 20 27 2c 20 24 70 61 74 68 29 20 3a 20 28 24 70 61 74 68 20 3f 3a 20 27 2e 27 29 de(',.',.$path).:.($path.?:.'.')
31440 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 63 6c 61 73 73 ));.}.}.elseif.($type.===.'class
31460 6d 61 70 27 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c map').{.$io->write(implode(',.',
31480 20 24 61 75 74 6f 6c 6f 61 64 73 29 29 3b 0a 7d 0a 7d 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d .$autoloads));.}.}.if.($package-
314a0 3e 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 >getIncludePaths()).{.$io->write
314c0 28 27 3c 63 6f 6d 6d 65 6e 74 3e 69 6e 63 6c 75 64 65 2d 70 61 74 68 3c 2f 63 6f 6d 6d 65 6e 74 ('<comment>include-path</comment
314e0 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 >');.$io->write(implode(',.',.$p
31500 61 63 6b 61 67 65 2d 3e 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 29 29 3b 0a 7d 0a 7d ackage->getIncludePaths()));.}.}
31520 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 56 .}.....protected.function.printV
31540 65 72 73 69 6f 6e 73 28 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 ersions(CompletePackageInterface
31560 20 24 70 61 63 6b 61 67 65 2c 20 61 72 72 61 79 20 24 76 65 72 73 69 6f 6e 73 2c 20 52 65 70 6f .$package,.array.$versions,.Repo
31580 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 0a sitoryInterface.$installedRepo).
315a0 7b 0a 75 61 73 6f 72 74 28 24 76 65 72 73 69 6f 6e 73 2c 20 27 76 65 72 73 69 6f 6e 5f 63 6f 6d {.uasort($versions,.'version_com
315c0 70 61 72 65 27 29 3b 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 61 pare');.$versions.=.array_keys(a
315e0 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 76 65 72 73 69 6f 6e 73 29 29 3b 0a 0a 0a 20 69 66 20 rray_reverse($versions));....if.
31600 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 ($installedRepo->hasPackage($pac
31620 6b 61 67 65 29 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 56 65 72 73 69 6f 6e 20 3d 20 24 70 61 kage)).{.$installedVersion.=.$pa
31640 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 24 6b 65 79 20 ckage->getPrettyVersion();.$key.
31660 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 6e 73 74 61 6c 6c 65 64 56 65 72 73 69 6f 6e =.array_search($installedVersion
31680 2c 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 6b 65 79 ,.$versions);.if.(false.!==.$key
316a0 29 20 7b 0a 24 76 65 72 73 69 6f 6e 73 5b 24 6b 65 79 5d 20 3d 20 27 3c 69 6e 66 6f 3e 2a 20 27 ).{.$versions[$key].=.'<info>*.'
316c0 20 2e 20 24 69 6e 73 74 61 6c 6c 65 64 56 65 72 73 69 6f 6e 20 2e 20 27 3c 2f 69 6e 66 6f 3e 27 ...$installedVersion...'</info>'
316e0 3b 0a 7d 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c ;.}.}..$versions.=.implode(',.',
31700 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 .$versions);..$this->getIO()->wr
31720 69 74 65 28 27 3c 69 6e 66 6f 3e 76 65 72 73 69 6f 6e 73 3c 2f 69 6e 66 6f 3e 20 3a 20 27 20 2e ite('<info>versions</info>.:.'..
31740 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 .$versions);.}.........protected
31760 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 4c 69 6e 6b 73 28 43 6f 6d 70 6c 65 74 65 50 61 63 .function.printLinks(CompletePac
31780 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 6c 69 6e 6b 54 79 70 kageInterface.$package,.$linkTyp
317a0 65 2c 20 24 74 69 74 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 69 74 6c 65 20 3d 20 24 74 69 e,.$title.=.null).{.$title.=.$ti
317c0 74 6c 65 20 3f 3a 20 24 6c 69 6e 6b 54 79 70 65 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 tle.?:.$linkType;.$io.=.$this->g
317e0 65 74 49 4f 28 29 3b 0a 69 66 20 28 24 6c 69 6e 6b 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 7b etIO();.if.($links.=.$package->{
31800 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 6c 69 6e 6b 54 79 70 65 29 7d 28 29 29 20 7b 0a 24 'get'.ucfirst($linkType)}()).{.$
31820 69 6f 2d 3e 77 72 69 74 65 28 22 5c 6e 3c 69 6e 66 6f 3e 22 20 2e 20 24 74 69 74 6c 65 20 2e 20 io->write("\n<info>"...$title...
31840 22 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 "</info>");..foreach.($links.as.
31860 24 6c 69 6e 6b 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 $link).{.$io->write($link->getTa
31880 72 67 65 74 28 29 20 2e 20 27 20 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 6c 69 6e 6b 2d 3e 67 rget()...'.<comment>'...$link->g
318a0 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e etPrettyConstraint()...'</commen
318c0 74 3e 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 t>');.}.}.}.......protected.func
318e0 74 69 6f 6e 20 70 72 69 6e 74 4c 69 63 65 6e 73 65 73 28 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 tion.printLicenses(CompletePacka
31900 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 73 70 64 78 4c 69 63 geInterface.$package).{.$spdxLic
31920 65 6e 73 65 73 20 3d 20 6e 65 77 20 53 70 64 78 4c 69 63 65 6e 73 65 73 28 29 3b 0a 0a 24 6c 69 enses.=.new.SpdxLicenses();..$li
31940 63 65 6e 73 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4c 69 63 65 6e 73 65 28 29 3b censes.=.$package->getLicense();
31960 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 .$io.=.$this->getIO();..foreach.
31980 28 24 6c 69 63 65 6e 73 65 73 20 61 73 20 24 6c 69 63 65 6e 73 65 49 64 29 20 7b 0a 24 6c 69 63 ($licenses.as.$licenseId).{.$lic
319a0 65 6e 73 65 20 3d 20 24 73 70 64 78 4c 69 63 65 6e 73 65 73 2d 3e 67 65 74 4c 69 63 65 6e 73 65 ense.=.$spdxLicenses->getLicense
319c0 42 79 49 64 65 6e 74 69 66 69 65 72 28 24 6c 69 63 65 6e 73 65 49 64 29 3b 20 0a 0a 69 66 20 28 ByIdentifier($licenseId);...if.(
319e0 21 24 6c 69 63 65 6e 73 65 29 20 7b 0a 24 6f 75 74 20 3d 20 24 6c 69 63 65 6e 73 65 49 64 3b 0a !$license).{.$out.=.$licenseId;.
31a00 7d 20 65 6c 73 65 20 7b 0a 0a 20 69 66 20 28 24 6c 69 63 65 6e 73 65 5b 31 5d 20 3d 3d 3d 20 74 }.else.{...if.($license[1].===.t
31a20 72 75 65 29 20 7b 0a 24 6f 75 74 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 20 28 25 73 29 20 28 rue).{.$out.=.sprintf('%s.(%s).(
31a40 4f 53 49 20 61 70 70 72 6f 76 65 64 29 20 25 73 27 2c 20 24 6c 69 63 65 6e 73 65 5b 30 5d 2c 20 OSI.approved).%s',.$license[0],.
31a60 24 6c 69 63 65 6e 73 65 49 64 2c 20 24 6c 69 63 65 6e 73 65 5b 32 5d 29 3b 0a 7d 20 65 6c 73 65 $licenseId,.$license[2]);.}.else
31a80 20 7b 0a 24 6f 75 74 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 20 28 25 73 29 20 25 73 27 2c 20 .{.$out.=.sprintf('%s.(%s).%s',.
31aa0 24 6c 69 63 65 6e 73 65 5b 30 5d 2c 20 24 6c 69 63 65 6e 73 65 49 64 2c 20 24 6c 69 63 65 6e 73 $license[0],.$licenseId,.$licens
31ac0 65 5b 32 5d 29 3b 0a 7d 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 6c 69 e[2]);.}.}..$io->write('<info>li
31ae0 63 65 6e 73 65 3c 2f 69 6e 66 6f 3e 20 20 3a 20 27 20 2e 20 24 6f 75 74 29 3b 0a 7d 0a 7d 0a 0a cense</info>..:.'...$out);.}.}..
31b00 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 53 74 79 6c .....protected.function.initStyl
31b20 65 73 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 74 es(OutputInterface.$output).{.$t
31b40 68 69 73 2d 3e 63 6f 6c 6f 72 73 20 3d 20 61 72 72 61 79 28 0a 27 67 72 65 65 6e 27 2c 0a 27 79 his->colors.=.array(.'green',.'y
31b60 65 6c 6c 6f 77 27 2c 0a 27 63 79 61 6e 27 2c 0a 27 6d 61 67 65 6e 74 61 27 2c 0a 27 62 6c 75 65 ellow',.'cyan',.'magenta',.'blue
31b80 27 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 20 61 73 ',.);..foreach.($this->colors.as
31ba0 20 24 63 6f 6c 6f 72 29 20 7b 0a 24 73 74 79 6c 65 20 3d 20 6e 65 77 20 4f 75 74 70 75 74 46 6f .$color).{.$style.=.new.OutputFo
31bc0 72 6d 61 74 74 65 72 53 74 79 6c 65 28 24 63 6f 6c 6f 72 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 67 rmatterStyle($color);.$output->g
31be0 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2d 3e 73 65 74 53 74 79 6c 65 28 24 63 6f 6c 6f 72 2c 20 etFormatter()->setStyle($color,.
31c00 24 73 74 79 6c 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 $style);.}.}.........protected.f
31c20 75 6e 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 50 61 63 6b 61 67 65 54 72 65 65 28 50 61 63 6b 61 unction.displayPackageTree(Packa
31c40 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 52 65 70 6f 73 69 74 6f 72 79 geInterface.$package,.Repository
31c60 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 70 6f 73 69 Interface.$installedRepo,.Reposi
31c80 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 64 69 73 74 61 6e 74 52 65 70 6f 73 29 0a 7b 0a 24 toryInterface.$distantRepos).{.$
31ca0 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 io.=.$this->getIO();.$io->write(
31cc0 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 24 70 61 63 6b sprintf('<info>%s</info>',.$pack
31ce0 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 29 2c 20 66 61 6c 73 65 29 3b 0a 24 age->getPrettyName()),.false);.$
31d00 69 6f 2d 3e 77 72 69 74 65 28 27 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 io->write('.'...$package->getPre
31d20 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 66 61 6c 73 65 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 ttyVersion(),.false);.$io->write
31d40 28 27 20 27 20 2e 20 73 74 72 74 6f 6b 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 72 ('.'...strtok($package->getDescr
31d60 69 70 74 69 6f 6e 28 29 2c 20 22 5c 72 5c 6e 22 29 29 3b 0a 0a 69 66 20 28 69 73 5f 6f 62 6a 65 iption(),."\r\n"));..if.(is_obje
31d80 63 74 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 72 65 71 75 69 72 65 73 20 3d 20 24 70 61 63 ct($package)).{.$requires.=.$pac
31da0 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 24 74 72 65 65 42 61 72 20 3d 20 kage->getRequires();.$treeBar.=.
31dc0 27 e2 94 9c 27 3b 0a 24 6a 20 3d 20 30 3b 0a 24 74 6f 74 61 6c 20 3d 20 63 6f 75 6e 74 28 24 72 '...';.$j.=.0;.$total.=.count($r
31de0 65 71 75 69 72 65 73 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 equires);.foreach.($requires.as.
31e00 24 72 65 71 75 69 72 65 4e 61 6d 65 20 3d 3e 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 6a 2b 2b $requireName.=>.$require).{.$j++
31e20 3b 0a 69 66 20 28 24 6a 20 3d 3d 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 72 65 ;.if.($j.==.0).{.$this->writeTre
31e40 65 4c 69 6e 65 28 24 74 72 65 65 42 61 72 29 3b 0a 7d 0a 69 66 20 28 24 6a 20 3d 3d 20 24 74 6f eLine($treeBar);.}.if.($j.==.$to
31e60 74 61 6c 29 20 7b 0a 24 74 72 65 65 42 61 72 20 3d 20 27 e2 94 94 27 3b 0a 7d 0a 24 6c 65 76 65 tal).{.$treeBar.=.'...';.}.$leve
31e80 6c 20 3d 20 31 3b 0a 24 63 6f 6c 6f 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 5b 24 6c l.=.1;.$color.=.$this->colors[$l
31ea0 65 76 65 6c 5d 3b 0a 24 69 6e 66 6f 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 e2 94 80 e2 94 80 evel];.$info.=.sprintf('%s......
31ec0 3c 25 73 3e 25 73 3c 2f 25 73 3e 20 25 73 27 2c 20 24 74 72 65 65 42 61 72 2c 20 24 63 6f 6c 6f <%s>%s</%s>.%s',.$treeBar,.$colo
31ee0 72 2c 20 24 72 65 71 75 69 72 65 4e 61 6d 65 2c 20 24 63 6f 6c 6f 72 2c 20 24 72 65 71 75 69 72 r,.$requireName,.$color,.$requir
31f00 65 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 24 74 68 69 73 e->getPrettyConstraint());.$this
31f20 2d 3e 77 72 69 74 65 54 72 65 65 4c 69 6e 65 28 24 69 6e 66 6f 29 3b 0a 0a 24 74 72 65 65 42 61 ->writeTreeLine($info);..$treeBa
31f40 72 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 e2 94 94 27 2c 20 27 20 27 2c 20 24 74 72 65 r.=.str_replace('...',.'.',.$tre
31f60 65 42 61 72 29 3b 0a 24 70 61 63 6b 61 67 65 73 49 6e 54 72 65 65 20 3d 20 61 72 72 61 79 28 24 eBar);.$packagesInTree.=.array($
31f80 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 72 65 71 75 69 72 65 4e 61 6d 65 package->getName(),.$requireName
31fa0 29 3b 0a 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 54 72 65 65 28 24 72 65 71 75 69 72 65 4e );..$this->displayTree($requireN
31fc0 61 6d 65 2c 20 24 72 65 71 75 69 72 65 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 ame,.$require,.$installedRepo,.$
31fe0 64 69 73 74 61 6e 74 52 65 70 6f 73 2c 20 24 70 61 63 6b 61 67 65 73 49 6e 54 72 65 65 2c 20 24 distantRepos,.$packagesInTree,.$
32000 74 72 65 65 42 61 72 2c 20 24 6c 65 76 65 6c 20 2b 20 31 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a treeBar,.$level.+.1);.}.}.}.....
32020 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 6c ........protected.function.displ
32040 61 79 54 72 65 65 28 24 6e 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 2c 20 52 65 70 6f 73 69 74 6f ayTree($name,.$package,.Reposito
32060 72 79 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 70 6f ryInterface.$installedRepo,.Repo
32080 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 64 69 73 74 61 6e 74 52 65 70 6f 73 2c 20 61 sitoryInterface.$distantRepos,.a
320a0 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 49 6e 54 72 65 65 2c 20 24 70 72 65 76 69 6f 75 73 54 rray.$packagesInTree,.$previousT
320c0 72 65 65 42 61 72 20 3d 20 27 e2 94 9c 27 2c 20 24 6c 65 76 65 6c 20 3d 20 31 29 0a 7b 0a 24 70 reeBar.=.'...',.$level.=.1).{.$p
320e0 72 65 76 69 6f 75 73 54 72 65 65 42 61 72 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 e2 94 reviousTreeBar.=.str_replace('..
32100 9c 27 2c 20 27 e2 94 82 27 2c 20 24 70 72 65 76 69 6f 75 73 54 72 65 65 42 61 72 29 3b 0a 6c 69 .',.'...',.$previousTreeBar);.li
32120 73 74 28 24 70 61 63 6b 61 67 65 2c 20 24 76 65 72 73 69 6f 6e 73 29 20 3d 20 24 74 68 69 73 2d st($package,.$versions).=.$this-
32140 3e 67 65 74 50 61 63 6b 61 67 65 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 64 69 73 >getPackage($installedRepo,.$dis
32160 74 61 6e 74 52 65 70 6f 73 2c 20 24 6e 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 tantRepos,.$name,.$package->getP
32180 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 20 3d 3d 3d 20 27 73 65 6c 66 2e 76 65 72 73 rettyConstraint().===.'self.vers
321a0 69 6f 6e 27 20 3f 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 ion'.?.$package->getConstraint()
321c0 20 3a 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 .:.$package->getPrettyConstraint
321e0 28 29 29 3b 0a 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a ());.if.(is_object($package)).{.
32200 24 72 65 71 75 69 72 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 $requires.=.$package->getRequire
32220 73 28 29 3b 0a 24 74 72 65 65 42 61 72 20 3d 20 24 70 72 65 76 69 6f 75 73 54 72 65 65 42 61 72 s();.$treeBar.=.$previousTreeBar
32240 20 2e 20 27 20 20 e2 94 9c 27 3b 0a 24 69 20 3d 20 30 3b 0a 24 74 6f 74 61 6c 20 3d 20 63 6f 75 ...'.....';.$i.=.0;.$total.=.cou
32260 6e 74 28 24 72 65 71 75 69 72 65 73 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 nt($requires);.foreach.($require
32280 73 20 61 73 20 24 72 65 71 75 69 72 65 4e 61 6d 65 20 3d 3e 20 24 72 65 71 75 69 72 65 29 20 7b s.as.$requireName.=>.$require).{
322a0 0a 24 63 75 72 72 65 6e 74 54 72 65 65 20 3d 20 24 70 61 63 6b 61 67 65 73 49 6e 54 72 65 65 3b .$currentTree.=.$packagesInTree;
322c0 0a 24 69 2b 2b 3b 0a 69 66 20 28 24 69 20 3d 3d 20 24 74 6f 74 61 6c 29 20 7b 0a 24 74 72 65 65 .$i++;.if.($i.==.$total).{.$tree
322e0 42 61 72 20 3d 20 24 70 72 65 76 69 6f 75 73 54 72 65 65 42 61 72 20 2e 20 27 20 20 e2 94 94 27 Bar.=.$previousTreeBar...'.....'
32300 3b 0a 7d 0a 24 63 6f 6c 6f 72 49 64 65 6e 74 20 3d 20 24 6c 65 76 65 6c 20 25 20 63 6f 75 6e 74 ;.}.$colorIdent.=.$level.%.count
32320 28 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 29 3b 0a 24 63 6f 6c 6f 72 20 3d 20 24 74 68 69 73 2d ($this->colors);.$color.=.$this-
32340 3e 63 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 49 64 65 6e 74 5d 3b 0a 0a 24 63 69 72 63 75 6c 61 72 >colors[$colorIdent];..$circular
32360 57 61 72 6e 20 3d 20 69 6e 5f 61 72 72 61 79 28 24 72 65 71 75 69 72 65 4e 61 6d 65 2c 20 24 63 Warn.=.in_array($requireName,.$c
32380 75 72 72 65 6e 74 54 72 65 65 29 20 3f 20 27 28 63 69 72 63 75 6c 61 72 20 64 65 70 65 6e 64 65 urrentTree).?.'(circular.depende
323a0 6e 63 79 20 61 62 6f 72 74 65 64 20 68 65 72 65 29 27 20 3a 20 27 27 3b 0a 24 69 6e 66 6f 20 3d ncy.aborted.here)'.:.'';.$info.=
323c0 20 72 74 72 69 6d 28 73 70 72 69 6e 74 66 28 27 25 73 e2 94 80 e2 94 80 3c 25 73 3e 25 73 3c 2f .rtrim(sprintf('%s......<%s>%s</
323e0 25 73 3e 20 25 73 20 25 73 27 2c 20 24 74 72 65 65 42 61 72 2c 20 24 63 6f 6c 6f 72 2c 20 24 72 %s>.%s.%s',.$treeBar,.$color,.$r
32400 65 71 75 69 72 65 4e 61 6d 65 2c 20 24 63 6f 6c 6f 72 2c 20 24 72 65 71 75 69 72 65 2d 3e 67 65 equireName,.$color,.$require->ge
32420 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 2c 20 24 63 69 72 63 75 6c 61 72 57 61 tPrettyConstraint(),.$circularWa
32440 72 6e 29 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 72 65 65 4c 69 6e 65 28 24 69 6e 66 6f rn));.$this->writeTreeLine($info
32460 29 3b 0a 0a 24 74 72 65 65 42 61 72 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 e2 94 94 27 );..$treeBar.=.str_replace('...'
32480 2c 20 27 20 27 2c 20 24 74 72 65 65 42 61 72 29 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 ,.'.',.$treeBar);.if.(!in_array(
324a0 24 72 65 71 75 69 72 65 4e 61 6d 65 2c 20 24 63 75 72 72 65 6e 74 54 72 65 65 29 29 20 7b 0a 24 $requireName,.$currentTree)).{.$
324c0 63 75 72 72 65 6e 74 54 72 65 65 5b 5d 20 3d 20 24 72 65 71 75 69 72 65 4e 61 6d 65 3b 0a 24 74 currentTree[].=.$requireName;.$t
324e0 68 69 73 2d 3e 64 69 73 70 6c 61 79 54 72 65 65 28 24 72 65 71 75 69 72 65 4e 61 6d 65 2c 20 24 his->displayTree($requireName,.$
32500 72 65 71 75 69 72 65 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 64 69 73 74 61 6e require,.$installedRepo,.$distan
32520 74 52 65 70 6f 73 2c 20 24 63 75 72 72 65 6e 74 54 72 65 65 2c 20 24 74 72 65 65 42 61 72 2c 20 tRepos,.$currentTree,.$treeBar,.
32540 24 6c 65 76 65 6c 20 2b 20 31 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 $level.+.1);.}.}.}.}..private.fu
32560 6e 63 74 69 6f 6e 20 77 72 69 74 65 54 72 65 65 4c 69 6e 65 28 24 6c 69 6e 65 29 0a 7b 0a 24 69 nction.writeTreeLine($line).{.$i
32580 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 69 66 20 28 21 24 69 6f 2d 3e 69 73 o.=.$this->getIO();.if.(!$io->is
325a0 44 65 63 6f 72 61 74 65 64 28 29 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 Decorated()).{.$line.=.str_repla
325c0 63 65 28 61 72 72 61 79 28 27 e2 94 94 27 2c 20 27 e2 94 9c 27 2c 20 27 e2 94 80 e2 94 80 27 2c ce(array('...',.'...',.'......',
325e0 20 27 e2 94 82 27 29 2c 20 61 72 72 61 79 28 27 60 2d 27 2c 20 27 7c 2d 27 2c 20 27 2d 27 2c 20 .'...'),.array('`-',.'|-',.'-',.
32600 27 7c 27 29 2c 20 24 6c 69 6e 65 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 6c 69 6e '|'),.$line);.}..$io->write($lin
32620 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 e);.}.}.<?php............namespa
32640 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e ce.Composer\Command;..use.Symfon
32660 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 y\Component\Console\Input\InputI
32680 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c nterface;.use.Symfony\Component\
326a0 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 Console\Input\InputOption;.use.S
326c0 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c ymfony\Component\Console\Output\
326e0 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f OutputInterface;.use.Composer\Do
32700 77 6e 6c 6f 61 64 65 72 5c 43 68 61 6e 67 65 52 65 70 6f 72 74 49 6e 74 65 72 66 61 63 65 3b 0a wnloader\ChangeReportInterface;.
32720 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 use.Composer\Plugin\CommandEvent
32740 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e ;.use.Composer\Plugin\PluginEven
32760 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 53 63 72 69 70 74 45 76 ts;.use.Composer\Script\ScriptEv
32780 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 76 ents;.use.Composer\Downloader\Dv
327a0 63 73 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 csDownloaderInterface;......clas
327c0 73 20 53 74 61 74 75 73 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d s.StatusCommand.extends.BaseComm
327e0 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 and.{.protected.function.configu
32800 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 73 74 61 74 75 73 27 29 re().{.$this.->setName('status')
32820 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 68 6f 77 20 61 20 6c 69 73 74 20 6f .->setDescription('Show.a.list.o
32840 66 20 6c 6f 63 61 6c 6c 79 20 6d 6f 64 69 66 69 65 64 20 70 61 63 6b 61 67 65 73 27 29 0a 2d 3e f.locally.modified.packages').->
32860 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 setDefinition(array(.new.InputOp
32880 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 2c 20 27 76 7c 76 76 7c 76 76 76 27 2c 20 49 6e 70 75 tion('verbose',.'v|vv|vvv',.Inpu
328a0 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 68 6f 77 20 6d 6f 64 69 66 tOption::VALUE_NONE,.'Show.modif
328c0 69 65 64 20 66 69 6c 65 73 20 66 6f 72 20 65 61 63 68 20 64 69 72 65 63 74 6f 72 79 20 74 68 61 ied.files.for.each.directory.tha
328e0 74 20 63 6f 6e 74 61 69 6e 73 20 63 68 61 6e 67 65 73 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 t.contains.changes.'),.)).->setH
32900 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 73 74 61 74 75 73 20 63 6f 6d 6d 61 6e 64 20 64 69 elp(<<<EOT.The.status.command.di
32920 73 70 6c 61 79 73 20 61 20 6c 69 73 74 20 6f 66 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 74 68 splays.a.list.of.dependencies.th
32940 61 74 20 68 61 76 65 0a 62 65 65 6e 20 6d 6f 64 69 66 69 65 64 20 6c 6f 63 61 6c 6c 79 2e 0a 0a at.have.been.modified.locally...
32960 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 EOT.).;.}..protected.function.ex
32980 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 ecute(InputInterface.$input,.Out
329a0 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 0a 20 24 63 6f 6d 70 6f putInterface.$output).{...$compo
329c0 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 0a 24 63 6f ser.=.$this->getComposer();..$co
329e0 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 50 6c mmandEvent.=.new.CommandEvent(Pl
32a00 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 73 74 61 74 75 73 27 2c 20 24 uginEvents::COMMAND,.'status',.$
32a20 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 input,.$output);.$composer->getE
32a40 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 28 24 63 6f 6d 6d ventDispatcher()->dispatch($comm
32a60 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 andEvent->getName(),.$commandEve
32a80 6e 74 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 65 72 nt);..$installedRepo.=.$composer
32aa0 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 ->getRepositoryManager()->getLoc
32ac0 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 0a 24 64 6d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 alRepository();..$dm.=.$composer
32ae0 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 3b 0a 24 69 6d 20 3d 20 24 63 ->getDownloadManager();.$im.=.$c
32b00 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 omposer->getInstallationManager(
32b20 29 3b 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 );....$composer->getEventDispatc
32b40 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 53 63 72 69 70 74 45 76 65 6e her()->dispatchScript(ScriptEven
32b60 74 73 3a 3a 50 52 45 5f 53 54 41 54 55 53 5f 43 4d 44 2c 20 74 72 75 65 29 3b 0a 0a 24 65 72 72 ts::PRE_STATUS_CMD,.true);..$err
32b80 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 ors.=.array();.$io.=.$this->getI
32ba0 4f 28 29 3b 0a 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b O();.$unpushedChanges.=.array();
32bc0 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 67 65 74 ....foreach.($installedRepo->get
32be0 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 CanonicalPackages().as.$package)
32c00 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 64 6d 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 .{.$downloader.=.$dm->getDownloa
32c20 64 65 72 46 6f 72 49 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 derForInstalledPackage($package)
32c40 3b 0a 0a 69 66 20 28 24 64 6f 77 6e 6c 6f 61 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 68 ;..if.($downloader.instanceof.Ch
32c60 61 6e 67 65 52 65 70 6f 72 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 74 61 72 67 65 74 44 69 angeReportInterface).{.$targetDi
32c80 72 20 3d 20 24 69 6d 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 r.=.$im->getInstallPath($package
32ca0 29 3b 0a 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 74 61 72 67 65 74 44 69 72 29 29 20 7b 0a 24 );..if.(is_link($targetDir)).{.$
32cc0 65 72 72 6f 72 73 5b 24 74 61 72 67 65 74 44 69 72 5d 20 3d 20 24 74 61 72 67 65 74 44 69 72 20 errors[$targetDir].=.$targetDir.
32ce0 2e 20 27 20 69 73 20 61 20 73 79 6d 62 6f 6c 69 63 20 6c 69 6e 6b 2e 27 3b 0a 7d 0a 0a 69 66 20 ..'.is.a.symbolic.link.';.}..if.
32d00 28 24 63 68 61 6e 67 65 73 20 3d 20 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 67 65 74 4c 6f 63 61 ($changes.=.$downloader->getLoca
32d20 6c 43 68 61 6e 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 74 61 72 67 65 74 44 69 72 29 29 20 lChanges($package,.$targetDir)).
32d40 7b 0a 24 65 72 72 6f 72 73 5b 24 74 61 72 67 65 74 44 69 72 5d 20 3d 20 24 63 68 61 6e 67 65 73 {.$errors[$targetDir].=.$changes
32d60 3b 0a 7d 0a 0a 69 66 20 28 24 64 6f 77 6e 6c 6f 61 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 ;.}..if.($downloader.instanceof.
32d80 44 76 63 73 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 69 66 20 28 24 DvcsDownloaderInterface).{.if.($
32da0 75 6e 70 75 73 68 65 64 20 3d 20 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 67 65 74 55 6e 70 75 73 unpushed.=.$downloader->getUnpus
32dc0 68 65 64 43 68 61 6e 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 74 61 72 67 65 74 44 69 72 29 hedChanges($package,.$targetDir)
32de0 29 20 7b 0a 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 5b 24 74 61 72 67 65 74 44 69 72 5d ).{.$unpushedChanges[$targetDir]
32e00 20 3d 20 24 75 6e 70 75 73 68 65 64 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 65 .=.$unpushed;.}.}.}.}....if.(!$e
32e20 72 72 6f 72 73 20 26 26 20 21 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 29 20 7b 0a 24 69 rrors.&&.!$unpushedChanges).{.$i
32e40 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 4e 6f 20 6c 6f 63 61 6c 20 63 68 o->writeError('<info>No.local.ch
32e60 61 6e 67 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 65 72 72 6f 72 anges</info>');.}.elseif.($error
32e80 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 59 6f 75 s).{.$io->writeError('<error>You
32ea0 20 68 61 76 65 20 63 68 61 6e 67 65 73 20 69 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 .have.changes.in.the.following.d
32ec0 65 70 65 6e 64 65 6e 63 69 65 73 3a 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 ependencies:</error>');.}..forea
32ee0 63 68 20 28 24 65 72 72 6f 72 73 20 61 73 20 24 70 61 74 68 20 3d 3e 20 24 63 68 61 6e 67 65 73 ch.($errors.as.$path.=>.$changes
32f00 29 20 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 76 65 72 62 6f ).{.if.($input->getOption('verbo
32f20 73 65 27 29 29 20 7b 0a 24 69 6e 64 65 6e 74 65 64 43 68 61 6e 67 65 73 20 3d 20 69 6d 70 6c 6f se')).{.$indentedChanges.=.implo
32f40 64 65 28 22 5c 6e 22 2c 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 6c 69 de("\n",.array_map(function.($li
32f60 6e 65 29 20 7b 0a 72 65 74 75 72 6e 20 27 20 20 20 20 27 20 2e 20 6c 74 72 69 6d 28 24 6c 69 6e ne).{.return.'....'...ltrim($lin
32f80 65 29 3b 0a 7d 2c 20 65 78 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 63 68 61 6e 67 65 73 29 29 29 e);.},.explode("\n",.$changes)))
32fa0 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 27 2e 24 70 61 74 68 2e 27 3c 2f 69 ;.$io->write('<info>'.$path.'</i
32fc0 6e 66 6f 3e 3a 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 69 6e 64 65 6e 74 65 64 43 68 61 nfo>:');.$io->write($indentedCha
32fe0 6e 67 65 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 70 61 74 68 nges);.}.else.{.$io->write($path
33000 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 29 20 7b 0a );.}.}..if.($unpushedChanges).{.
33020 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 59 6f 75 20 68 61 $io->writeError('<warning>You.ha
33040 76 65 20 75 6e 70 75 73 68 65 64 20 63 68 61 6e 67 65 73 20 6f 6e 20 74 68 65 20 63 75 72 72 65 ve.unpushed.changes.on.the.curre
33060 6e 74 20 62 72 61 6e 63 68 20 69 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 65 70 65 6e nt.branch.in.the.following.depen
33080 64 65 6e 63 69 65 73 3a 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 dencies:</warning>');..foreach.(
330a0 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 20 61 73 20 24 70 61 74 68 20 3d 3e 20 24 63 68 $unpushedChanges.as.$path.=>.$ch
330c0 61 6e 67 65 73 29 20 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 anges).{.if.($input->getOption('
330e0 76 65 72 62 6f 73 65 27 29 29 20 7b 0a 24 69 6e 64 65 6e 74 65 64 43 68 61 6e 67 65 73 20 3d 20 verbose')).{.$indentedChanges.=.
33100 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e implode("\n",.array_map(function
33120 20 28 24 6c 69 6e 65 29 20 7b 0a 72 65 74 75 72 6e 20 27 20 20 20 20 27 20 2e 20 6c 74 72 69 6d .($line).{.return.'....'...ltrim
33140 28 24 6c 69 6e 65 29 3b 0a 7d 2c 20 65 78 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 63 68 61 6e 67 ($line);.},.explode("\n",.$chang
33160 65 73 29 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 27 2e 24 70 61 74 68 es)));.$io->write('<info>'.$path
33180 2e 27 3c 2f 69 6e 66 6f 3e 3a 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 69 6e 64 65 6e 74 .'</info>:');.$io->write($indent
331a0 65 64 43 68 61 6e 67 65 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 edChanges);.}.else.{.$io->write(
331c0 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 28 24 65 72 72 6f 72 73 20 7c 7c 20 24 $path);.}.}.}..if.(($errors.||.$
331e0 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 29 20 26 26 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 unpushedChanges).&&.!$input->get
33200 4f 70 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 Option('verbose')).{.$io->writeE
33220 72 72 6f 72 28 27 55 73 65 20 2d 2d 76 65 72 62 6f 73 65 20 28 2d 76 29 20 74 6f 20 73 65 65 20 rror('Use.--verbose.(-v).to.see.
33240 61 20 6c 69 73 74 20 6f 66 20 66 69 6c 65 73 27 29 3b 0a 7d 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 a.list.of.files');.}....$compose
33260 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 74 63 r->getEventDispatcher()->dispatc
33280 68 53 63 72 69 70 74 28 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 53 54 41 54 55 hScript(ScriptEvents::POST_STATU
332a0 53 5f 43 4d 44 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 28 24 65 72 72 6f 72 73 20 3f S_CMD,.true);..return.($errors.?
332c0 20 31 20 3a 20 30 29 20 2b 20 28 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 20 3f 20 32 20 .1.:.0).+.($unpushedChanges.?.2.
332e0 3a 20 30 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 :.0);.}.}.<?php............names
33300 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 pace.Composer\Command;..use.Comp
33320 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f oser\Repository\PlatformReposito
33340 72 79 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c ry;.use.Symfony\Component\Consol
33360 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f e\Input\InputArgument;.use.Symfo
33380 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 ny\Component\Console\Input\Input
333a0 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 Interface;.use.Symfony\Component
333c0 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 \Console\Input\InputOption;.use.
333e0 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 Symfony\Component\Console\Output
33400 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 63 6c 61 73 73 20 53 75 67 67 65 73 74 \OutputInterface;..class.Suggest
33420 73 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 sCommand.extends.BaseCommand.{.p
33440 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a rotected.function.configure().{.
33460 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 73 75 67 67 65 73 74 73 27 29 0a 2d 3e 73 65 $this.->setName('suggests').->se
33480 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 68 6f 77 20 70 61 63 6b 61 67 65 20 73 75 67 67 65 tDescription('Show.package.sugge
334a0 73 74 69 6f 6e 73 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a stions').->setDefinition(array(.
334c0 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 62 79 2d 70 61 63 6b 61 67 65 27 2c 20 6e 75 new.InputOption('by-package',.nu
334e0 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 47 72 ll,.InputOption::VALUE_NONE,.'Gr
33500 6f 75 70 73 20 6f 75 74 70 75 74 20 62 79 20 73 75 67 67 65 73 74 69 6e 67 20 70 61 63 6b 61 67 oups.output.by.suggesting.packag
33520 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 62 79 2d 73 75 67 67 65 73 74 e'),.new.InputOption('by-suggest
33540 69 6f 6e 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e ion',.null,.InputOption::VALUE_N
33560 4f 4e 45 2c 20 27 47 72 6f 75 70 73 20 6f 75 74 70 75 74 20 62 79 20 73 75 67 67 65 73 74 65 64 ONE,.'Groups.output.by.suggested
33580 20 70 61 63 6b 61 67 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d .package'),.new.InputOption('no-
335a0 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e dev',.null,.InputOption::VALUE_N
335c0 4f 4e 45 2c 20 27 45 78 63 6c 75 64 65 20 73 75 67 67 65 73 74 69 6f 6e 73 20 66 72 6f 6d 20 72 ONE,.'Exclude.suggestions.from.r
335e0 65 71 75 69 72 65 2d 64 65 76 20 70 61 63 6b 61 67 65 73 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 equire-dev.packages'),.new.Input
33600 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 Argument('packages',.InputArgume
33620 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 nt::IS_ARRAY.|.InputArgument::OP
33640 54 49 4f 4e 41 4c 2c 20 27 50 61 63 6b 61 67 65 73 20 74 68 61 74 20 79 6f 75 20 77 61 6e 74 20 TIONAL,.'Packages.that.you.want.
33660 74 6f 20 6c 69 73 74 20 73 75 67 67 65 73 74 69 6f 6e 73 20 66 72 6f 6d 2e 27 29 2c 0a 29 29 0a to.list.suggestions.from.'),.)).
33680 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 0a 54 68 65 20 3c 69 6e 66 6f 3e 25 63 6f 6d ->setHelp(<<<EOT..The.<info>%com
336a0 6d 61 6e 64 2e 6e 61 6d 65 25 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 73 68 6f 77 73 20 mand.name%</info>.command.shows.
336c0 61 20 73 6f 72 74 65 64 20 6c 69 73 74 20 6f 66 20 73 75 67 67 65 73 74 65 64 20 70 61 63 6b 61 a.sorted.list.of.suggested.packa
336e0 67 65 73 2e 0a 0a 45 6e 61 62 6c 69 6e 67 20 3c 69 6e 66 6f 3e 2d 76 3c 2f 69 6e 66 6f 3e 20 69 ges...Enabling.<info>-v</info>.i
33700 6d 70 6c 69 65 73 20 3c 69 6e 66 6f 3e 2d 2d 62 79 2d 70 61 63 6b 61 67 65 20 2d 2d 62 79 2d 73 mplies.<info>--by-package.--by-s
33720 75 67 67 65 73 74 69 6f 6e 3c 2f 69 6e 66 6f 3e 2c 20 73 68 6f 77 69 6e 67 20 62 6f 74 68 20 6c uggestion</info>,.showing.both.l
33740 69 73 74 73 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 ists...EOT.).;.}..protected.func
33760 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 tion.execute(InputInterface.$inp
33780 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 ut,.OutputInterface.$output).{.$
337a0 6c 6f 63 6b 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d 3e 67 65 74 lock.=.$this->getComposer()->get
337c0 4c 6f 63 6b 65 72 28 29 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 69 66 20 28 65 6d Locker()->getLockData();..if.(em
337e0 70 74 79 28 24 6c 6f 63 6b 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 pty($lock)).{.throw.new.\Runtime
33800 45 78 63 65 70 74 69 6f 6e 28 27 4c 6f 63 6b 66 69 6c 65 20 73 65 65 6d 73 20 74 6f 20 62 65 20 Exception('Lockfile.seems.to.be.
33820 65 6d 70 74 79 3f 27 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 6c 6f 63 6b 5b 27 empty?');.}..$packages.=.$lock['
33840 70 61 63 6b 61 67 65 73 27 5d 3b 0a 0a 69 66 20 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 packages'];..if.(!$input->getOpt
33860 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 2b 3d 20 24 6c ion('no-dev')).{.$packages.+=.$l
33880 6f 63 6b 5b 27 70 61 63 6b 61 67 65 73 2d 64 65 76 27 5d 3b 0a 7d 0a 0a 24 66 69 6c 74 65 72 20 ock['packages-dev'];.}..$filter.
338a0 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 =.$input->getArgument('packages'
338c0 29 3b 0a 0a 0a 20 24 69 6e 73 74 61 6c 6c 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 );....$installed.=.array();.fore
338e0 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 69 ach.($packages.as.$package).{.$i
33900 6e 73 74 61 6c 6c 65 64 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 3b 0a 0a nstalled[].=.$package['name'];..
33920 69 66 20 28 21 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 5b 27 70 72 6f 76 69 64 65 27 5d 29 29 if.(!empty($package['provide']))
33940 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 69 6e 73 .{.$installed.=.array_merge($ins
33960 74 61 6c 6c 65 64 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 70 61 63 6b 61 67 65 5b 27 70 72 6f talled,.array_keys($package['pro
33980 76 69 64 65 27 5d 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 vide']));.}..if.(!empty($package
339a0 5b 27 72 65 70 6c 61 63 65 27 5d 29 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 20 3d 20 61 72 72 ['replace'])).{.$installed.=.arr
339c0 61 79 5f 6d 65 72 67 65 28 24 69 6e 73 74 61 6c 6c 65 64 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 ay_merge($installed,.array_keys(
339e0 24 70 61 63 6b 61 67 65 5b 27 72 65 70 6c 61 63 65 27 5d 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 69 $package['replace']));.}.}....$i
33a00 6e 73 74 61 6c 6c 65 64 20 3d 20 61 72 72 61 79 5f 66 6c 69 70 28 24 69 6e 73 74 61 6c 6c 65 64 nstalled.=.array_flip($installed
33a20 29 3b 0a 6b 73 6f 72 74 28 24 69 6e 73 74 61 6c 6c 65 64 29 3b 0a 0a 0a 20 24 70 6c 61 74 66 6f );.ksort($installed);....$platfo
33a40 72 6d 20 3d 20 6e 65 77 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 rm.=.new.PlatformRepository(arra
33a60 79 28 29 2c 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d 3e 67 65 74 43 6f y(),.$this->getComposer()->getCo
33a80 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 70 6c 61 74 66 6f 72 6d 27 29 20 3f 3a 20 61 72 72 61 79 nfig()->get('platform').?:.array
33aa0 28 29 29 3b 0a 0a 0a 20 24 73 75 67 67 65 73 74 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 ());....$suggesters.=.array();.$
33ac0 73 75 67 67 65 73 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 suggested.=.array();.foreach.($p
33ae0 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 4e ackages.as.$package).{.$packageN
33b00 61 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 3b 0a 69 66 20 28 28 21 65 6d ame.=.$package['name'];.if.((!em
33b20 70 74 79 28 24 66 69 6c 74 65 72 29 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 pty($filter).&&.!in_array($packa
33b40 67 65 4e 61 6d 65 2c 20 24 66 69 6c 74 65 72 29 29 20 7c 7c 20 65 6d 70 74 79 28 24 70 61 63 6b geName,.$filter)).||.empty($pack
33b60 61 67 65 5b 27 73 75 67 67 65 73 74 27 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 66 age['suggest'])).{.continue;.}.f
33b80 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 5b 27 73 75 67 67 65 73 74 27 5d 20 61 73 20 24 oreach.($package['suggest'].as.$
33ba0 73 75 67 67 65 73 74 69 6f 6e 20 3d 3e 20 24 72 65 61 73 6f 6e 29 20 7b 0a 69 66 20 28 66 61 6c suggestion.=>.$reason).{.if.(fal
33bc0 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 27 2f 27 2c 20 24 73 75 67 67 65 73 74 69 6f 6e 29 20 se.===.strpos('/',.$suggestion).
33be0 26 26 20 21 69 73 5f 6e 75 6c 6c 28 24 70 6c 61 74 66 6f 72 6d 2d 3e 66 69 6e 64 50 61 63 6b 61 &&.!is_null($platform->findPacka
33c00 67 65 28 24 73 75 67 67 65 73 74 69 6f 6e 2c 20 27 2a 27 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 ge($suggestion,.'*'))).{.continu
33c20 65 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 5b 24 73 75 67 67 e;.}.if.(!isset($installed[$sugg
33c40 65 73 74 69 6f 6e 5d 29 29 20 7b 0a 24 73 75 67 67 65 73 74 65 72 73 5b 24 70 61 63 6b 61 67 65 estion])).{.$suggesters[$package
33c60 4e 61 6d 65 5d 5b 24 73 75 67 67 65 73 74 69 6f 6e 5d 20 3d 20 24 72 65 61 73 6f 6e 3b 0a 24 73 Name][$suggestion].=.$reason;.$s
33c80 75 67 67 65 73 74 65 64 5b 24 73 75 67 67 65 73 74 69 6f 6e 5d 5b 24 70 61 63 6b 61 67 65 4e 61 uggested[$suggestion][$packageNa
33ca0 6d 65 5d 20 3d 20 24 72 65 61 73 6f 6e 3b 0a 7d 0a 7d 0a 7d 0a 6b 73 6f 72 74 28 24 73 75 67 67 me].=.$reason;.}.}.}.ksort($sugg
33cc0 65 73 74 65 72 73 29 3b 0a 6b 73 6f 72 74 28 24 73 75 67 67 65 73 74 65 64 29 3b 0a 0a 0a 20 24 esters);.ksort($suggested);....$
33ce0 6d 6f 64 65 20 3d 20 30 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a mode.=.0;.$io.=.$this->getIO();.
33d00 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 62 79 2d 70 61 63 6b 61 67 if.($input->getOption('by-packag
33d20 65 27 29 20 7c 7c 20 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 6d 6f 64 65 e').||.$io->isVerbose()).{.$mode
33d40 20 7c 3d 20 31 3b 0a 7d 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 .|=.1;.}.if.($input->getOption('
33d60 62 79 2d 73 75 67 67 65 73 74 69 6f 6e 27 29 29 20 7b 0a 24 6d 6f 64 65 20 7c 3d 20 32 3b 0a 7d by-suggestion')).{.$mode.|=.2;.}
33d80 0a 0a 0a 20 69 66 20 28 24 6d 6f 64 65 20 3d 3d 3d 20 30 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 ....if.($mode.===.0).{.foreach.(
33da0 61 72 72 61 79 5f 6b 65 79 73 28 24 73 75 67 67 65 73 74 65 64 29 20 61 73 20 24 73 75 67 67 65 array_keys($suggested).as.$sugge
33dc0 73 74 69 6f 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 27 3c 69 6e stion).{.$io->write(sprintf('<in
33de0 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 24 73 75 67 67 65 73 74 69 6f 6e 29 29 3b 0a 7d 0a fo>%s</info>',.$suggestion));.}.
33e00 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 6d 6f 64 65 20 26 20 31 29 20 7b 0a 66 .return;.}....if.($mode.&.1).{.f
33e20 6f 72 65 61 63 68 20 28 24 73 75 67 67 65 73 74 65 72 73 20 61 73 20 24 73 75 67 67 65 73 74 65 oreach.($suggesters.as.$suggeste
33e40 72 20 3d 3e 20 24 73 75 67 67 65 73 74 69 6f 6e 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 r.=>.$suggestions).{.$io->write(
33e60 73 70 72 69 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 73 sprintf('<comment>%s</comment>.s
33e80 75 67 67 65 73 74 73 3a 27 2c 20 24 73 75 67 67 65 73 74 65 72 29 29 3b 0a 0a 66 6f 72 65 61 63 uggests:',.$suggester));..foreac
33ea0 68 20 28 24 73 75 67 67 65 73 74 69 6f 6e 73 20 61 73 20 24 73 75 67 67 65 73 74 69 6f 6e 20 3d h.($suggestions.as.$suggestion.=
33ec0 3e 20 24 72 65 61 73 6f 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 >.$reason).{.$io->write(sprintf(
33ee0 27 20 2d 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 3a 20 25 73 27 2c 20 24 73 75 67 67 65 '.-.<info>%s</info>:.%s',.$sugge
33f00 73 74 69 6f 6e 2c 20 24 72 65 61 73 6f 6e 20 3f 3a 20 27 2a 27 29 29 3b 0a 7d 0a 24 69 6f 2d 3e stion,.$reason.?:.'*'));.}.$io->
33f20 77 72 69 74 65 28 27 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 6d 6f 64 65 20 26 20 32 29 write('');.}.}....if.($mode.&.2)
33f40 20 7b 0a 0a 20 69 66 20 28 24 6d 6f 64 65 20 26 20 31 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 .{...if.($mode.&.1).{.$io->write
33f60 28 73 74 72 5f 72 65 70 65 61 74 28 27 2d 27 2c 20 37 38 29 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 (str_repeat('-',.78));.}.foreach
33f80 20 28 24 73 75 67 67 65 73 74 65 64 20 61 73 20 24 73 75 67 67 65 73 74 69 6f 6e 20 3d 3e 20 24 .($suggested.as.$suggestion.=>.$
33fa0 73 75 67 67 65 73 74 65 72 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 suggesters).{.$io->write(sprintf
33fc0 28 27 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 69 73 20 73 75 67 67 65 ('<comment>%s</comment>.is.sugge
33fe0 73 74 65 64 20 62 79 3a 27 2c 20 24 73 75 67 67 65 73 74 69 6f 6e 29 29 3b 0a 0a 66 6f 72 65 61 sted.by:',.$suggestion));..forea
34000 63 68 20 28 24 73 75 67 67 65 73 74 65 72 73 20 61 73 20 24 73 75 67 67 65 73 74 65 72 20 3d 3e ch.($suggesters.as.$suggester.=>
34020 20 24 72 65 61 73 6f 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 27 .$reason).{.$io->write(sprintf('
34040 20 2d 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 3a 20 25 73 27 2c 20 24 73 75 67 67 65 73 .-.<info>%s</info>:.%s',.$sugges
34060 74 65 72 2c 20 24 72 65 61 73 6f 6e 20 3f 3a 20 27 2a 27 29 29 3b 0a 7d 0a 24 69 6f 2d 3e 77 72 ter,.$reason.?:.'*'));.}.$io->wr
34080 69 74 65 28 27 27 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ite('');.}.}.}.}.<?php..........
340a0 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 ..namespace.Composer\Command;..u
340c0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 se.Composer\Composer;.use.Compos
340e0 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f er\Installer;.use.Composer\IO\IO
34100 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 Interface;.use.Composer\Plugin\C
34120 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e ommandEvent;.use.Composer\Plugin
34140 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f \PluginEvents;.use.Symfony\Compo
34160 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 54 61 62 6c 65 3b 0a 75 73 65 20 53 nent\Console\Helper\Table;.use.S
34180 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 ymfony\Component\Console\Input\I
341a0 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f nputInterface;.use.Symfony\Compo
341c0 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a nent\Console\Input\InputOption;.
341e0 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e use.Symfony\Component\Console\In
34200 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 put\InputArgument;.use.Symfony\C
34220 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e omponent\Console\Output\OutputIn
34240 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 terface;.use.Symfony\Component\C
34260 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 51 75 65 73 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 63 onsole\Question\Question;......c
34280 6c 61 73 73 20 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 lass.UpdateCommand.extends.BaseC
342a0 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 ommand.{.protected.function.conf
342c0 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 75 70 64 61 74 igure().{.$this.->setName('updat
342e0 65 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 55 70 64 61 74 65 73 20 79 6f e').->setDescription('Updates.yo
34300 75 72 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 74 6f 20 74 68 65 20 6c 61 74 65 73 74 20 76 65 ur.dependencies.to.the.latest.ve
34320 72 73 69 6f 6e 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e rsion.according.to.composer.json
34340 2c 20 61 6e 64 20 75 70 64 61 74 65 73 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 2e 6c 6f 63 6b 20 ,.and.updates.the.composer.lock.
34360 66 69 6c 65 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e file.').->setDefinition(array(.n
34380 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 2c 20 49 6e 70 ew.InputArgument('packages',.Inp
343a0 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 72 67 75 utArgument::IS_ARRAY.|.InputArgu
343c0 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 50 61 63 6b 61 67 65 73 20 74 68 61 74 20 73 ment::OPTIONAL,.'Packages.that.s
343e0 68 6f 75 6c 64 20 62 65 20 75 70 64 61 74 65 64 2c 20 69 66 20 6e 6f 74 20 70 72 6f 76 69 64 65 hould.be.updated,.if.not.provide
34400 64 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 20 61 72 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 d.all.packages.are.'),.new.Input
34420 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e Option('prefer-source',.null,.In
34440 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 putOption::VALUE_NONE,.'Forces.i
34460 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 20 73 6f 75 72 63 65 73 nstallation.from.package.sources
34480 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 56 43 53 20 69 6e .when.possible,.including.VCS.in
344a0 66 6f 72 6d 61 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 formation.'),.new.InputOption('p
344c0 72 65 66 65 72 2d 64 69 73 74 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a refer-dist',.null,.InputOption::
344e0 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e VALUE_NONE,.'Forces.installation
34500 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 20 64 69 73 74 20 65 76 65 6e 20 66 6f 72 20 64 65 76 20 .from.package.dist.even.for.dev.
34520 76 65 72 73 69 6f 6e 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 72 versions.'),.new.InputOption('dr
34540 79 2d 72 75 6e 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 y-run',.null,.InputOption::VALUE
34560 5f 4e 4f 4e 45 2c 20 27 4f 75 74 70 75 74 73 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 62 _NONE,.'Outputs.the.operations.b
34580 75 74 20 77 69 6c 6c 20 6e 6f 74 20 65 78 65 63 75 74 65 20 61 6e 79 74 68 69 6e 67 20 28 69 6d ut.will.not.execute.anything.(im
345a0 70 6c 69 63 69 74 6c 79 20 65 6e 61 62 6c 65 73 20 2d 2d 76 65 72 62 6f 73 65 29 2e 27 29 2c 0a plicitly.enables.--verbose).'),.
345c0 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 new.InputOption('dev',.null,.Inp
345e0 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 45 6e 61 62 6c 65 73 20 69 utOption::VALUE_NONE,.'Enables.i
34600 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 72 65 71 75 69 72 65 2d 64 65 76 20 70 61 63 6b 61 nstallation.of.require-dev.packa
34620 67 65 73 20 28 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2c 20 6f 6e 6c 79 20 70 72 ges.(enabled.by.default,.only.pr
34640 65 73 65 6e 74 20 66 6f 72 20 42 43 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f esent.for.BC).'),.new.InputOptio
34660 6e 28 27 6e 6f 2d 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 n('no-dev',.null,.InputOption::V
34680 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f ALUE_NONE,.'Disables.installatio
346a0 6e 20 6f 66 20 72 65 71 75 69 72 65 2d 64 65 76 20 70 61 63 6b 61 67 65 73 2e 27 29 2c 0a 6e 65 n.of.require-dev.packages.'),.ne
346c0 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6c 6f 63 6b 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 w.InputOption('lock',.null,.Inpu
346e0 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4f 6e 6c 79 20 75 70 64 61 74 tOption::VALUE_NONE,.'Only.updat
34700 65 73 20 74 68 65 20 6c 6f 63 6b 20 66 69 6c 65 20 68 61 73 68 20 74 6f 20 73 75 70 70 72 65 73 es.the.lock.file.hash.to.suppres
34720 73 20 77 61 72 6e 69 6e 67 20 61 62 6f 75 74 20 74 68 65 20 6c 6f 63 6b 20 66 69 6c 65 20 62 65 s.warning.about.the.lock.file.be
34740 69 6e 67 20 6f 75 74 20 6f 66 20 64 61 74 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 ing.out.of.date.'),.new.InputOpt
34760 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 ion('no-plugins',.null,.InputOpt
34780 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 20 61 6c 6c 20 70 ion::VALUE_NONE,.'Disables.all.p
347a0 6c 75 67 69 6e 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 63 lugins.'),.new.InputOption('no-c
347c0 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 ustom-installers',.null,.InputOp
347e0 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 45 50 52 45 43 41 54 45 44 3a 20 55 tion::VALUE_NONE,.'DEPRECATED:.U
34800 73 65 20 6e 6f 2d 70 6c 75 67 69 6e 73 20 69 6e 73 74 65 61 64 2e 27 29 2c 0a 6e 65 77 20 49 6e se.no-plugins.instead.'),.new.In
34820 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 61 75 74 6f 6c 6f 61 64 65 72 27 2c 20 6e 75 6c 6c 2c putOption('no-autoloader',.null,
34840 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 6b 69 70 73 .InputOption::VALUE_NONE,.'Skips
34860 20 61 75 74 6f 6c 6f 61 64 65 72 20 67 65 6e 65 72 61 74 69 6f 6e 27 29 2c 0a 6e 65 77 20 49 6e .autoloader.generation'),.new.In
34880 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e putOption('no-scripts',.null,.In
348a0 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 6b 69 70 73 20 74 68 putOption::VALUE_NONE,.'Skips.th
348c0 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 6c 6c 20 73 63 72 69 70 74 73 20 64 65 66 69 6e e.execution.of.all.scripts.defin
348e0 65 64 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 2e 27 29 2c 0a 6e 65 77 ed.in.composer.json.file.'),.new
34900 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 27 2c 20 6e 75 6c 6c .InputOption('no-progress',.null
34920 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 20 6e ,.InputOption::VALUE_NONE,.'Do.n
34940 6f 74 20 6f 75 74 70 75 74 20 64 6f 77 6e 6c 6f 61 64 20 70 72 6f 67 72 65 73 73 2e 27 29 2c 0a ot.output.download.progress.'),.
34960 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 77 69 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 new.InputOption('with-dependenci
34980 65 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f es',.null,.InputOption::VALUE_NO
349a0 4e 45 2c 20 27 41 64 64 20 61 6c 73 6f 20 61 6c 6c 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 6f NE,.'Add.also.all.dependencies.o
349c0 66 20 77 68 69 74 65 6c 69 73 74 65 64 20 70 61 63 6b 61 67 65 73 20 74 6f 20 74 68 65 20 77 68 f.whitelisted.packages.to.the.wh
349e0 69 74 65 6c 69 73 74 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 76 65 72 itelist.'),.new.InputOption('ver
34a00 62 6f 73 65 27 2c 20 27 76 7c 76 76 7c 76 76 76 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a bose',.'v|vv|vvv',.InputOption::
34a20 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 68 6f 77 73 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 20 VALUE_NONE,.'Shows.more.details.
34a40 69 6e 63 6c 75 64 69 6e 67 20 6e 65 77 20 63 6f 6d 6d 69 74 73 20 70 75 6c 6c 65 64 20 69 6e 20 including.new.commits.pulled.in.
34a60 77 68 65 6e 20 75 70 64 61 74 69 6e 67 20 70 61 63 6b 61 67 65 73 2e 27 29 2c 0a 6e 65 77 20 49 when.updating.packages.'),.new.I
34a80 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 nputOption('optimize-autoloader'
34aa0 2c 20 27 6f 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 ,.'o',.InputOption::VALUE_NONE,.
34ac0 27 4f 70 74 69 6d 69 7a 65 20 61 75 74 6f 6c 6f 61 64 65 72 20 64 75 72 69 6e 67 20 61 75 74 6f 'Optimize.autoloader.during.auto
34ae0 6c 6f 61 64 65 72 20 64 75 6d 70 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 loader.dump.'),.new.InputOption(
34b00 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 2c 20 27 61 27 2c 20 49 'classmap-authoritative',.'a',.I
34b20 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 75 74 6f 6c 6f 61 nputOption::VALUE_NONE,.'Autoloa
34b40 64 20 63 6c 61 73 73 65 73 20 66 72 6f 6d 20 74 68 65 20 63 6c 61 73 73 6d 61 70 20 6f 6e 6c 79 d.classes.from.the.classmap.only
34b60 2e 20 49 6d 70 6c 69 63 69 74 6c 79 20 65 6e 61 62 6c 65 73 20 60 2d 2d 6f 70 74 69 6d 69 7a 65 ..Implicitly.enables.`--optimize
34b80 2d 61 75 74 6f 6c 6f 61 64 65 72 60 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e -autoloader`.'),.new.InputOption
34ba0 28 27 69 67 6e 6f 72 65 2d 70 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 2c 20 6e 75 6c 6c 2c 20 49 ('ignore-platform-reqs',.null,.I
34bc0 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 49 67 6e 6f 72 65 20 nputOption::VALUE_NONE,.'Ignore.
34be0 70 6c 61 74 66 6f 72 6d 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 28 70 68 70 20 26 20 65 78 74 platform.requirements.(php.&.ext
34c00 2d 20 70 61 63 6b 61 67 65 73 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 -.packages).'),.new.InputOption(
34c20 27 70 72 65 66 65 72 2d 73 74 61 62 6c 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 'prefer-stable',.null,.InputOpti
34c40 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 50 72 65 66 65 72 20 73 74 61 62 6c 65 20 76 on::VALUE_NONE,.'Prefer.stable.v
34c60 65 72 73 69 6f 6e 73 20 6f 66 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 6e 65 77 20 ersions.of.dependencies.'),.new.
34c80 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 6c 6f 77 65 73 74 27 2c 20 6e 75 6c InputOption('prefer-lowest',.nul
34ca0 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 50 72 65 l,.InputOption::VALUE_NONE,.'Pre
34cc0 66 65 72 20 6c 6f 77 65 73 74 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 64 65 70 65 6e 64 65 6e 63 fer.lowest.versions.of.dependenc
34ce0 69 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 69 6e 74 65 72 61 63 ies.'),.new.InputOption('interac
34d00 74 69 76 65 27 2c 20 27 69 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e tive',.'i',.InputOption::VALUE_N
34d20 4f 4e 45 2c 20 27 49 6e 74 65 72 61 63 74 69 76 65 20 69 6e 74 65 72 66 61 63 65 20 77 69 74 68 ONE,.'Interactive.interface.with
34d40 20 61 75 74 6f 63 6f 6d 70 6c 65 74 69 6f 6e 20 74 6f 20 73 65 6c 65 63 74 20 74 68 65 20 70 61 .autocompletion.to.select.the.pa
34d60 63 6b 61 67 65 73 20 74 6f 20 75 70 64 61 74 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 ckages.to.update.'),.new.InputOp
34d80 74 69 6f 6e 28 27 72 6f 6f 74 2d 72 65 71 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 tion('root-reqs',.null,.InputOpt
34da0 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 52 65 73 74 72 69 63 74 73 20 74 68 65 20 ion::VALUE_NONE,.'Restricts.the.
34dc0 75 70 64 61 74 65 20 74 6f 20 79 6f 75 72 20 66 69 72 73 74 20 64 65 67 72 65 65 20 64 65 70 65 update.to.your.first.degree.depe
34de0 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 ndencies.'),.)).->setHelp(<<<EOT
34e00 0a 54 68 65 20 3c 69 6e 66 6f 3e 75 70 64 61 74 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 .The.<info>update</info>.command
34e20 20 72 65 61 64 73 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 66 72 .reads.the.composer.json.file.fr
34e40 6f 6d 20 74 68 65 0a 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 70 72 6f 63 65 73 om.the.current.directory,.proces
34e60 73 65 73 20 69 74 2c 20 61 6e 64 20 75 70 64 61 74 65 73 2c 20 72 65 6d 6f 76 65 73 20 6f 72 20 ses.it,.and.updates,.removes.or.
34e80 69 6e 73 74 61 6c 6c 73 20 61 6c 6c 20 74 68 65 0a 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 0a 0a installs.all.the.dependencies...
34ea0 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 75 70 64 61 74 65 3c 2f <info>php.composer.phar.update</
34ec0 69 6e 66 6f 3e 0a 0a 54 6f 20 6c 69 6d 69 74 20 74 68 65 20 75 70 64 61 74 65 20 6f 70 65 72 61 info>..To.limit.the.update.opera
34ee0 74 69 6f 6e 20 74 6f 20 61 20 66 65 77 20 70 61 63 6b 61 67 65 73 2c 20 79 6f 75 20 63 61 6e 20 tion.to.a.few.packages,.you.can.
34f00 6c 69 73 74 20 74 68 65 20 70 61 63 6b 61 67 65 28 73 29 0a 79 6f 75 20 77 61 6e 74 20 74 6f 20 list.the.package(s).you.want.to.
34f20 75 70 64 61 74 65 20 61 73 20 73 75 63 68 3a 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f update.as.such:..<info>php.compo
34f40 73 65 72 2e 70 68 61 72 20 75 70 64 61 74 65 20 76 65 6e 64 6f 72 2f 70 61 63 6b 61 67 65 31 20 ser.phar.update.vendor/package1.
34f60 66 6f 6f 2f 6d 79 70 61 63 6b 61 67 65 20 5b 2e 2e 2e 5d 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 foo/mypackage.[...]</info>..You.
34f80 6d 61 79 20 61 6c 73 6f 20 75 73 65 20 61 6e 20 61 73 74 65 72 69 73 6b 20 28 2a 29 20 70 61 74 may.also.use.an.asterisk.(*).pat
34fa0 74 65 72 6e 20 74 6f 20 6c 69 6d 69 74 20 74 68 65 20 75 70 64 61 74 65 20 6f 70 65 72 61 74 69 tern.to.limit.the.update.operati
34fc0 6f 6e 20 74 6f 20 70 61 63 6b 61 67 65 28 73 29 0a 66 72 6f 6d 20 61 20 73 70 65 63 69 66 69 63 on.to.package(s).from.a.specific
34fe0 20 76 65 6e 64 6f 72 3a 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 .vendor:..<info>php.composer.pha
35000 72 20 75 70 64 61 74 65 20 76 65 6e 64 6f 72 2f 70 61 63 6b 61 67 65 31 20 66 6f 6f 2f 2a 20 5b r.update.vendor/package1.foo/*.[
35020 2e 2e 2e 5d 3c 2f 69 6e 66 6f 3e 0a 0a 54 6f 20 73 65 6c 65 63 74 20 70 61 63 6b 61 67 65 73 20 ...]</info>..To.select.packages.
35040 6e 61 6d 65 73 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 20 77 69 74 68 20 61 75 74 6f 2d 63 6f names.interactively.with.auto-co
35060 6d 70 6c 65 74 69 6f 6e 20 75 73 65 20 3c 69 6e 66 6f 3e 2d 69 3c 2f 69 6e 66 6f 3e 2e 0a 0a 45 mpletion.use.<info>-i</info>...E
35080 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 OT.).;.}..protected.function.exe
350a0 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 cute(InputInterface.$input,.Outp
350c0 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 69 6f 20 3d 20 24 74 68 utInterface.$output).{.$io.=.$th
350e0 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 is->getIO();.if.($input->getOpti
35100 6f 6e 28 27 6e 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 27 29 29 20 7b 0a 24 69 on('no-custom-installers')).{.$i
35120 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 59 6f 75 20 61 72 65 20 o->writeError('<warning>You.are.
35140 75 73 69 6e 67 20 74 68 65 20 64 65 70 72 65 63 61 74 65 64 20 6f 70 74 69 6f 6e 20 22 6e 6f 2d using.the.deprecated.option."no-
35160 63 75 73 74 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 22 2e 20 55 73 65 20 22 6e 6f 2d 70 6c 75 67 custom-installers"..Use."no-plug
35180 69 6e 73 22 20 69 6e 73 74 65 61 64 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 24 69 6e 70 75 ins".instead.</warning>');.$inpu
351a0 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 2c 20 74 72 75 65 29 t->setOption('no-plugins',.true)
351c0 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 ;.}..if.($input->getOption('dev'
351e0 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 59 )).{.$io->writeError('<warning>Y
35200 6f 75 20 61 72 65 20 75 73 69 6e 67 20 74 68 65 20 64 65 70 72 65 63 61 74 65 64 20 6f 70 74 69 ou.are.using.the.deprecated.opti
35220 6f 6e 20 22 64 65 76 22 2e 20 44 65 76 20 70 61 63 6b 61 67 65 73 20 61 72 65 20 69 6e 73 74 61 on."dev"..Dev.packages.are.insta
35240 6c 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 20 6e 6f 77 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 lled.by.default.now.</warning>')
35260 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f ;.}..$composer.=.$this->getCompo
35280 73 65 72 28 74 72 75 65 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d ser(true,.$input->getOption('no-
352a0 70 6c 75 67 69 6e 73 27 29 29 3b 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 69 6e 70 75 74 2d plugins'));..$packages.=.$input-
352c0 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 29 3b 0a 0a 69 66 20 28 24 >getArgument('packages');..if.($
352e0 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 69 6e 74 65 72 61 63 74 69 76 65 27 29 29 input->getOption('interactive'))
35300 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 .{.$packages.=.$this->getPackage
35320 73 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 24 69 6f 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 sInteractively($io,.$input,.$out
35340 70 75 74 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 70 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 69 put,.$composer,.$packages);.}..i
35360 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 6f 6f 74 2d 72 65 71 73 27 f.($input->getOption('root-reqs'
35380 29 29 20 7b 0a 24 72 65 71 75 69 72 65 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 63 6f 6d 70 )).{.$require.=.array_keys($comp
353a0 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 oser->getPackage()->getRequires(
353c0 29 29 3b 0a 69 66 20 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 ));.if.(!$input->getOption('no-d
353e0 65 76 27 29 29 20 7b 0a 24 72 65 71 75 69 72 65 44 65 76 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 ev')).{.$requireDev.=.array_keys
35400 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 44 65 76 ($composer->getPackage()->getDev
35420 52 65 71 75 69 72 65 73 28 29 29 3b 0a 24 72 65 71 75 69 72 65 20 3d 20 61 72 72 61 79 5f 6d 65 Requires());.$require.=.array_me
35440 72 67 65 28 24 72 65 71 75 69 72 65 2c 20 24 72 65 71 75 69 72 65 44 65 76 29 3b 0a 7d 0a 0a 69 rge($require,.$requireDev);.}..i
35460 66 20 28 21 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 73 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 f.(!empty($packages)).{.$package
35480 73 20 3d 20 61 72 72 61 79 5f 69 6e 74 65 72 73 65 63 74 28 24 70 61 63 6b 61 67 65 73 2c 20 24 s.=.array_intersect($packages,.$
354a0 72 65 71 75 69 72 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 require);.}.else.{.$packages.=.$
354c0 72 65 71 75 69 72 65 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 44 6f 77 6e require;.}.}..$composer->getDown
354e0 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 2d 3e 73 65 74 4f 75 74 70 75 74 50 72 6f 67 72 65 73 73 loadManager()->setOutputProgress
35500 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 72 6f 67 72 65 73 73 (!$input->getOption('no-progress
35520 27 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e '));..$commandEvent.=.new.Comman
35540 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 75 dEvent(PluginEvents::COMMAND,.'u
35560 70 64 61 74 65 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 6f 6d 70 6f pdate',.$input,.$output);.$compo
35580 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 64 69 73 70 61 ser->getEventDispatcher()->dispa
355a0 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 tch($commandEvent->getName(),.$c
355c0 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 20 3d 20 49 6e 73 74 61 6c ommandEvent);..$install.=.Instal
355e0 6c 65 72 3a 3a 63 72 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 0a 24 70 ler::create($io,.$composer);..$p
35600 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 3b 0a 24 70 72 65 66 65 72 44 69 73 74 referSource.=.false;.$preferDist
35620 20 3d 20 66 61 6c 73 65 3b 0a 0a 24 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e .=.false;..$config.=.$composer->
35640 67 65 74 43 6f 6e 66 69 67 28 29 3b 0a 0a 73 77 69 74 63 68 20 28 24 63 6f 6e 66 69 67 2d 3e 67 getConfig();..switch.($config->g
35660 65 74 28 27 70 72 65 66 65 72 72 65 64 2d 69 6e 73 74 61 6c 6c 27 29 29 20 7b 0a 63 61 73 65 20 et('preferred-install')).{.case.
35680 27 73 6f 75 72 63 65 27 3a 0a 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 74 72 75 65 3b 0a 'source':.$preferSource.=.true;.
356a0 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 64 69 73 74 27 3a 0a 24 70 72 65 66 65 72 44 69 73 74 20 break;.case.'dist':.$preferDist.
356c0 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 61 75 74 6f 27 3a 0a 64 65 66 61 =.true;.break;.case.'auto':.defa
356e0 75 6c 74 3a 0a 0a 20 62 72 65 61 6b 3b 0a 7d 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f ult:...break;.}.if.($input->getO
35700 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 29 20 7c 7c 20 24 69 6e 70 75 74 ption('prefer-source').||.$input
35720 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 64 69 73 74 27 29 29 20 7b 0a 24 70 ->getOption('prefer-dist')).{.$p
35740 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 referSource.=.$input->getOption(
35760 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 29 3b 0a 24 70 72 65 66 65 72 44 69 73 74 20 3d 20 'prefer-source');.$preferDist.=.
35780 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 64 69 73 74 27 29 $input->getOption('prefer-dist')
357a0 3b 0a 7d 0a 0a 24 6f 70 74 69 6d 69 7a 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 ;.}..$optimize.=.$input->getOpti
357c0 6f 6e 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 20 7c 7c 20 24 63 6f on('optimize-autoloader').||.$co
357e0 6e 66 69 67 2d 3e 67 65 74 28 27 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 nfig->get('optimize-autoloader')
35800 3b 0a 24 61 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 ;.$authoritative.=.$input->getOp
35820 74 69 6f 6e 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 29 20 7c tion('classmap-authoritative').|
35840 7c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 |.$config->get('classmap-authori
35860 74 61 74 69 76 65 27 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 0a 2d 3e 73 65 74 44 72 79 52 75 6e 28 tative');..$install.->setDryRun(
35880 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 72 79 2d 72 75 6e 27 29 29 0a 2d 3e $input->getOption('dry-run')).->
358a0 73 65 74 56 65 72 62 6f 73 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 76 65 setVerbose($input->getOption('ve
358c0 72 62 6f 73 65 27 29 29 0a 2d 3e 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 65 28 24 70 72 65 66 rbose')).->setPreferSource($pref
358e0 65 72 53 6f 75 72 63 65 29 0a 2d 3e 73 65 74 50 72 65 66 65 72 44 69 73 74 28 24 70 72 65 66 65 erSource).->setPreferDist($prefe
35900 72 44 69 73 74 29 0a 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 rDist).->setDevMode(!$input->get
35920 4f 70 74 69 6f 6e 28 27 6e 6f 2d 64 65 76 27 29 29 0a 2d 3e 73 65 74 44 75 6d 70 41 75 74 6f 6c Option('no-dev')).->setDumpAutol
35940 6f 61 64 65 72 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 61 75 74 oader(!$input->getOption('no-aut
35960 6f 6c 6f 61 64 65 72 27 29 29 0a 2d 3e 73 65 74 52 75 6e 53 63 72 69 70 74 73 28 21 24 69 6e 70 oloader')).->setRunScripts(!$inp
35980 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 29 29 0a 2d 3e 73 ut->getOption('no-scripts')).->s
359a0 65 74 4f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 28 24 6f 70 74 69 6d 69 7a 65 29 0a etOptimizeAutoloader($optimize).
359c0 2d 3e 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 61 75 74 68 ->setClassMapAuthoritative($auth
359e0 6f 72 69 74 61 74 69 76 65 29 0a 2d 3e 73 65 74 55 70 64 61 74 65 28 74 72 75 65 29 0a 2d 3e 73 oritative).->setUpdate(true).->s
35a00 65 74 55 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 etUpdateWhitelist($input->getOpt
35a20 69 6f 6e 28 27 6c 6f 63 6b 27 29 20 3f 20 61 72 72 61 79 28 27 6c 6f 63 6b 27 29 20 3a 20 24 70 ion('lock').?.array('lock').:.$p
35a40 61 63 6b 61 67 65 73 29 0a 2d 3e 73 65 74 57 68 69 74 65 6c 69 73 74 44 65 70 65 6e 64 65 6e 63 ackages).->setWhitelistDependenc
35a60 69 65 73 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 77 69 74 68 2d 64 65 70 65 ies($input->getOption('with-depe
35a80 6e 64 65 6e 63 69 65 73 27 29 29 0a 2d 3e 73 65 74 49 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 ndencies')).->setIgnorePlatformR
35aa0 65 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 69 equirements($input->getOption('i
35ac0 67 6e 6f 72 65 2d 70 6c 61 74 66 6f 72 6d 2d 72 65 71 73 27 29 29 0a 2d 3e 73 65 74 50 72 65 66 gnore-platform-reqs')).->setPref
35ae0 65 72 53 74 61 62 6c 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 erStable($input->getOption('pref
35b00 65 72 2d 73 74 61 62 6c 65 27 29 29 0a 2d 3e 73 65 74 50 72 65 66 65 72 4c 6f 77 65 73 74 28 24 er-stable')).->setPreferLowest($
35b20 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 6c 6f 77 65 73 74 27 input->getOption('prefer-lowest'
35b40 29 29 0a 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d )).;..if.($input->getOption('no-
35b60 70 6c 75 67 69 6e 73 27 29 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 2d 3e 64 69 73 61 62 6c 65 50 6c plugins')).{.$install->disablePl
35b80 75 67 69 6e 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 2d 3e 72 75 6e ugins();.}..return.$install->run
35ba0 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 ();.}..private.function.getPacka
35bc0 67 65 73 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f gesInteractively(IOInterface.$io
35be0 2c 20 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 ,.InputInterface.$input,.OutputI
35c00 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 nterface.$output,.Composer.$comp
35c20 6f 73 65 72 2c 20 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 69 66 20 28 21 24 69 oser,.array.$packages).{.if.(!$i
35c40 6e 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e nput->isInteractive()).{.throw.n
35c60 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 2d 2d ew.\InvalidArgumentException('--
35c80 69 6e 74 65 72 61 63 74 69 76 65 20 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 64 20 69 6e 20 6e 6f interactive.cannot.be.used.in.no
35ca0 6e 2d 69 6e 74 65 72 61 63 74 69 76 65 20 74 65 72 6d 69 6e 61 6c 73 2e 27 29 3b 0a 7d 0a 0a 24 n-interactive.terminals.');.}..$
35cc0 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 24 63 6f 6d 70 6f 73 65 requires.=.array_merge(.$compose
35ce0 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 2c 0a r->getPackage()->getRequires(),.
35d00 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 44 65 76 52 $composer->getPackage()->getDevR
35d20 65 71 75 69 72 65 73 28 29 0a 29 3b 0a 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 equires().);.$autocompleterValue
35d40 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 s.=.array();.foreach.($requires.
35d60 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c as.$require).{.$autocompleterVal
35d80 75 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 75 69 72 65 2d 3e 67 65 74 54 61 72 67 ues[strtolower($require->getTarg
35da0 65 74 28 29 29 5d 20 3d 20 24 72 65 71 75 69 72 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a et())].=.$require->getTarget();.
35dc0 7d 0a 0a 24 69 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 73 20 3d 20 24 63 6f 6d 70 6f 73 65 }..$installedPackages.=.$compose
35de0 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f r->getRepositoryManager()->getLo
35e00 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a calRepository()->getPackages();.
35e20 66 6f 72 65 61 63 68 20 28 24 69 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 73 20 61 73 20 24 foreach.($installedPackages.as.$
35e40 70 61 63 6b 61 67 65 29 20 7b 0a 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 5b package).{.$autocompleterValues[
35e60 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d $package->getName()].=.$package-
35e80 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 7d 0a 0a 24 68 65 6c 70 65 72 20 3d 20 24 >getPrettyName();.}..$helper.=.$
35ea0 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 28 27 71 75 65 73 74 69 6f 6e 27 29 3b 0a 24 71 75 this->getHelper('question');.$qu
35ec0 65 73 74 69 6f 6e 20 3d 20 6e 65 77 20 51 75 65 73 74 69 6f 6e 28 27 3c 63 6f 6d 6d 65 6e 74 3e estion.=.new.Question('<comment>
35ee0 45 6e 74 65 72 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 3a 20 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c Enter.package.name:.</comment>',
35f00 20 6e 75 6c 6c 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e .null);..$io->writeError('<info>
35f20 50 72 65 73 73 20 65 6e 74 65 72 20 77 69 74 68 6f 75 74 20 76 61 6c 75 65 20 74 6f 20 65 6e 64 Press.enter.without.value.to.end
35f40 20 73 75 62 6d 69 73 73 69 6f 6e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 64 6f 20 7b 0a 24 61 75 74 .submission</info>');..do.{.$aut
35f60 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 20 3d 20 61 72 72 61 79 5f 64 69 66 66 28 24 61 ocompleterValues.=.array_diff($a
35f80 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 2c 20 24 70 61 63 6b 61 67 65 73 29 3b 0a utocompleterValues,.$packages);.
35fa0 24 71 75 65 73 74 69 6f 6e 2d 3e 73 65 74 41 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 $question->setAutocompleterValue
35fc0 73 28 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 29 3b 0a 24 61 64 64 65 64 50 s($autocompleterValues);.$addedP
35fe0 61 63 6b 61 67 65 20 3d 20 24 68 65 6c 70 65 72 2d 3e 61 73 6b 28 24 69 6e 70 75 74 2c 20 24 6f ackage.=.$helper->ask($input,.$o
36000 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 0a 69 66 20 28 21 69 73 5f 73 74 72 69 utput,.$question);..if.(!is_stri
36020 6e 67 28 24 61 64 64 65 64 50 61 63 6b 61 67 65 29 20 7c 7c 20 65 6d 70 74 79 28 24 61 64 64 65 ng($addedPackage).||.empty($adde
36040 64 50 61 63 6b 61 67 65 29 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 61 64 64 65 64 50 61 63 dPackage)).{.break;.}..$addedPac
36060 6b 61 67 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 61 64 64 65 64 50 61 63 6b 61 67 65 29 kage.=.strtolower($addedPackage)
36080 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 61 64 64 65 64 50 61 63 6b 61 67 65 2c 20 24 ;.if.(!in_array($addedPackage,.$
360a0 70 61 63 6b 61 67 65 73 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 61 64 64 65 packages)).{.$packages[].=.$adde
360c0 64 50 61 63 6b 61 67 65 3b 0a 7d 0a 7d 20 77 68 69 6c 65 20 28 74 72 75 65 29 3b 0a 0a 24 70 61 dPackage;.}.}.while.(true);..$pa
360e0 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 70 61 63 6b 61 67 65 73 29 ckages.=.array_filter($packages)
36100 3b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 ;.if.(!$packages).{.throw.new.\I
36120 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 nvalidArgumentException('You.mus
36140 74 20 65 6e 74 65 72 20 6d 69 6e 69 6d 75 6d 20 6f 6e 65 20 70 61 63 6b 61 67 65 2e 27 29 3b 0a t.enter.minimum.one.package.');.
36160 7d 0a 0a 24 74 61 62 6c 65 20 3d 20 6e 65 77 20 54 61 62 6c 65 28 24 6f 75 74 70 75 74 29 3b 0a }..$table.=.new.Table($output);.
36180 24 74 61 62 6c 65 2d 3e 73 65 74 48 65 61 64 65 72 73 28 61 72 72 61 79 28 27 53 65 6c 65 63 74 $table->setHeaders(array('Select
361a0 65 64 20 70 61 63 6b 61 67 65 73 27 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 ed.packages'));.foreach.($packag
361c0 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 61 62 6c 65 2d 3e 61 64 64 52 6f 77 es.as.$package).{.$table->addRow
361e0 28 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 0a 24 74 61 62 6c 65 2d 3e 72 65 6e (array($package));.}.$table->ren
36200 64 65 72 28 29 3b 0a 0a 69 66 20 28 24 69 6f 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e der();..if.($io->askConfirmation
36220 28 73 70 72 69 6e 74 66 28 0a 27 57 6f 75 6c 64 20 79 6f 75 20 6c 69 6b 65 20 74 6f 20 63 6f 6e (sprintf(.'Would.you.like.to.con
36240 74 69 6e 75 65 20 61 6e 64 20 75 70 64 61 74 65 20 74 68 65 20 61 62 6f 76 65 20 70 61 63 6b 61 tinue.and.update.the.above.packa
36260 67 65 25 73 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 79 65 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3f 20 27 ge%s.[<comment>yes</comment>]?.'
36280 2c 0a 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 70 61 63 6b 61 67 65 73 29 20 3f 20 27 27 20 3a 20 ,.1.===.count($packages).?.''.:.
362a0 27 73 27 0a 29 2c 20 74 72 75 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 's'.),.true)).{.return.$packages
362c0 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e ;.}..throw.new.\RuntimeException
362e0 28 27 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 61 62 6f 72 74 65 64 2e 27 29 3b 0a 7d 0a 7d 0a 3c ('Installation.aborted.');.}.}.<
36300 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 ?php............namespace.Compos
36320 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 er\Command;..use.Composer\Factor
36340 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 56 y;.use.Composer\Package\Loader\V
36360 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 alidatingArrayLoader;.use.Compos
36380 65 72 5c 50 6c 75 67 69 6e 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 er\Plugin\CommandEvent;.use.Comp
363a0 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f oser\Plugin\PluginEvents;.use.Co
363c0 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 43 6f 6e 66 69 67 56 61 6c 69 64 61 74 6f 72 3b 0a 75 73 65 mposer\Util\ConfigValidator;.use
363e0 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 .Symfony\Component\Console\Input
36400 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 \InputArgument;.use.Symfony\Comp
36420 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 onent\Console\Input\InputInterfa
36440 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c ce;.use.Symfony\Component\Consol
36460 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 e\Input\InputOption;.use.Symfony
36480 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 \Component\Console\Output\Output
364a0 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 61 6c 69 64 61 74 65 Interface;........class.Validate
364c0 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a Command.extends.BaseCommand.{...
364e0 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a .protected.function.configure().
36500 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 76 61 6c 69 64 61 74 65 27 29 0a 2d 3e {.$this.->setName('validate').->
36520 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 56 61 6c 69 64 61 74 65 73 20 61 20 63 6f 6d 70 setDescription('Validates.a.comp
36540 6f 73 65 72 2e 6a 73 6f 6e 20 61 6e 64 20 63 6f 6d 70 6f 73 65 72 2e 6c 6f 63 6b 27 29 0a 2d 3e oser.json.and.composer.lock').->
36560 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 setDefinition(array(.new.InputOp
36580 74 69 6f 6e 28 27 6e 6f 2d 63 68 65 63 6b 2d 61 6c 6c 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 tion('no-check-all',.null,.Input
365a0 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 20 6e 6f 74 20 6d 61 6b 65 Option::VALUE_NONE,.'Do.not.make
365c0 20 61 20 63 6f 6d 70 6c 65 74 65 20 76 61 6c 69 64 61 74 69 6f 6e 27 29 2c 0a 6e 65 77 20 49 6e .a.complete.validation'),.new.In
365e0 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 63 68 65 63 6b 2d 6c 6f 63 6b 27 2c 20 6e 75 6c 6c 2c putOption('no-check-lock',.null,
36600 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 20 6e 6f .InputOption::VALUE_NONE,.'Do.no
36620 74 20 63 68 65 63 6b 20 69 66 20 6c 6f 63 6b 20 66 69 6c 65 20 69 73 20 75 70 20 74 6f 20 64 61 t.check.if.lock.file.is.up.to.da
36640 74 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 63 68 65 63 6b 2d te'),.new.InputOption('no-check-
36660 70 75 62 6c 69 73 68 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c publish',.null,.InputOption::VAL
36680 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 20 6e 6f 74 20 63 68 65 63 6b 20 66 6f 72 20 70 75 62 6c 69 UE_NONE,.'Do.not.check.for.publi
366a0 73 68 20 65 72 72 6f 72 73 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 77 69 sh.errors'),.new.InputOption('wi
366c0 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2c 20 27 41 27 2c 20 49 6e 70 75 74 4f 70 74 69 th-dependencies',.'A',.InputOpti
366e0 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 6c 73 6f 20 76 61 6c 69 64 61 74 65 20 74 on::VALUE_NONE,.'Also.validate.t
36700 68 65 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 66 20 61 6c 6c 20 69 6e 73 74 61 6c 6c 65 he.composer.json.of.all.installe
36720 64 20 64 65 70 65 6e 64 65 6e 63 69 65 73 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f d.dependencies'),.new.InputOptio
36740 6e 28 27 73 74 72 69 63 74 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 n('strict',.null,.InputOption::V
36760 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 52 65 74 75 72 6e 20 61 20 6e 6f 6e 2d 7a 65 72 6f 20 65 78 ALUE_NONE,.'Return.a.non-zero.ex
36780 69 74 20 63 6f 64 65 20 66 6f 72 20 77 61 72 6e 69 6e 67 73 20 61 73 20 77 65 6c 6c 20 61 73 20 it.code.for.warnings.as.well.as.
367a0 65 72 72 6f 72 73 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 66 69 6c errors'),.new.InputArgument('fil
367c0 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 70 61 e',.InputArgument::OPTIONAL,.'pa
367e0 74 68 20 74 6f 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 27 2c 20 27 2e 2f 63 6f th.to.composer.json.file',.'./co
36800 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 mposer.json'),.)).->setHelp(<<<E
36820 4f 54 0a 54 68 65 20 76 61 6c 69 64 61 74 65 20 63 6f 6d 6d 61 6e 64 20 76 61 6c 69 64 61 74 65 OT.The.validate.command.validate
36840 73 20 61 20 67 69 76 65 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 61 6e 64 20 63 6f 6d 70 s.a.given.composer.json.and.comp
36860 6f 73 65 72 2e 6c 6f 63 6b 0a 0a 45 78 69 74 20 63 6f 64 65 73 20 69 6e 20 63 61 73 65 20 6f 66 oser.lock..Exit.codes.in.case.of
36880 20 65 72 72 6f 72 73 20 61 72 65 3a 0a 31 20 76 61 6c 69 64 61 74 69 6f 6e 20 77 61 72 6e 69 6e .errors.are:.1.validation.warnin
368a0 67 28 73 29 2c 20 6f 6e 6c 79 20 77 68 65 6e 20 2d 2d 73 74 72 69 63 74 20 69 73 20 67 69 76 65 g(s),.only.when.--strict.is.give
368c0 6e 0a 32 20 76 61 6c 69 64 61 74 69 6f 6e 20 65 72 72 6f 72 28 73 29 0a 33 20 66 69 6c 65 20 75 n.2.validation.error(s).3.file.u
368e0 6e 72 65 61 64 61 62 6c 65 20 6f 72 20 6d 69 73 73 69 6e 67 0a 0a 45 4f 54 0a 29 3b 0a 7d 0a 0a nreadable.or.missing..EOT.);.}..
36900 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 ......protected.function.execute
36920 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e (InputInterface.$input,.OutputIn
36940 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 24 69 6e 70 75 terface.$output).{.$file.=.$inpu
36960 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 66 69 6c 65 27 29 3b 0a 24 69 6f 20 3d 20 24 74 t->getArgument('file');.$io.=.$t
36980 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 his->getIO();..if.(!file_exists(
369a0 24 66 69 6c 65 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f $file)).{.$io->writeError('<erro
369c0 72 3e 27 20 2e 20 24 66 69 6c 65 20 2e 20 27 20 6e 6f 74 20 66 6f 75 6e 64 2e 3c 2f 65 72 72 6f r>'...$file...'.not.found.</erro
369e0 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 33 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 72 65 61 64 61 r>');..return.3;.}.if.(!is_reada
36a00 62 6c 65 28 24 66 69 6c 65 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c ble($file)).{.$io->writeError('<
36a20 65 72 72 6f 72 3e 27 20 2e 20 24 66 69 6c 65 20 2e 20 27 20 69 73 20 6e 6f 74 20 72 65 61 64 61 error>'...$file...'.is.not.reada
36a40 62 6c 65 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 33 3b 0a 7d 0a 0a 24 76 ble.</error>');..return.3;.}..$v
36a60 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 43 6f 6e 66 69 67 56 61 6c 69 64 61 74 6f 72 28 24 alidator.=.new.ConfigValidator($
36a80 69 6f 29 3b 0a 24 63 68 65 63 6b 41 6c 6c 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 io);.$checkAll.=.$input->getOpti
36aa0 6f 6e 28 27 6e 6f 2d 63 68 65 63 6b 2d 61 6c 6c 27 29 20 3f 20 30 20 3a 20 56 61 6c 69 64 61 74 on('no-check-all').?.0.:.Validat
36ac0 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 3a 3a 43 48 45 43 4b 5f 41 4c 4c 3b 0a 24 63 68 65 63 ingArrayLoader::CHECK_ALL;.$chec
36ae0 6b 50 75 62 6c 69 73 68 20 3d 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e kPublish.=.!$input->getOption('n
36b00 6f 2d 63 68 65 63 6b 2d 70 75 62 6c 69 73 68 27 29 3b 0a 24 63 68 65 63 6b 4c 6f 63 6b 20 3d 20 o-check-publish');.$checkLock.=.
36b20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 63 68 65 63 6b 2d 6c 6f 63 !$input->getOption('no-check-loc
36b40 6b 27 29 3b 0a 24 69 73 53 74 72 69 63 74 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 k');.$isStrict.=.$input->getOpti
36b60 6f 6e 28 27 73 74 72 69 63 74 27 29 3b 0a 6c 69 73 74 28 24 65 72 72 6f 72 73 2c 20 24 70 75 62 on('strict');.list($errors,.$pub
36b80 6c 69 73 68 45 72 72 6f 72 73 2c 20 24 77 61 72 6e 69 6e 67 73 29 20 3d 20 24 76 61 6c 69 64 61 lishErrors,.$warnings).=.$valida
36ba0 74 6f 72 2d 3e 76 61 6c 69 64 61 74 65 28 24 66 69 6c 65 2c 20 24 63 68 65 63 6b 41 6c 6c 29 3b tor->validate($file,.$checkAll);
36bc0 0a 0a 24 6c 6f 63 6b 45 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 63 6f 6d 70 6f 73 ..$lockErrors.=.array();.$compos
36be0 65 72 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 28 24 69 6f 2c 20 24 66 69 6c 65 29 er.=.Factory::create($io,.$file)
36c00 3b 0a 24 6c 6f 63 6b 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 4c 6f 63 6b 65 72 ;.$locker.=.$composer->getLocker
36c20 28 29 3b 0a 69 66 20 28 24 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 20 26 26 20 21 ();.if.($locker->isLocked().&&.!
36c40 24 6c 6f 63 6b 65 72 2d 3e 69 73 46 72 65 73 68 28 29 29 20 7b 0a 24 6c 6f 63 6b 45 72 72 6f 72 $locker->isFresh()).{.$lockError
36c60 73 5b 5d 20 3d 20 27 54 68 65 20 6c 6f 63 6b 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 75 70 20 74 s[].=.'The.lock.file.is.not.up.t
36c80 6f 20 64 61 74 65 20 77 69 74 68 20 74 68 65 20 6c 61 74 65 73 74 20 63 68 61 6e 67 65 73 20 69 o.date.with.the.latest.changes.i
36ca0 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 n.composer.json,.it.is.recommend
36cc0 65 64 20 74 68 61 74 20 79 6f 75 20 72 75 6e 20 60 63 6f 6d 70 6f 73 65 72 20 75 70 64 61 74 65 ed.that.you.run.`composer.update
36ce0 60 2e 27 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 69 6f 2c `.';.}..$this->outputResult($io,
36d00 20 24 66 69 6c 65 2c 20 24 65 72 72 6f 72 73 2c 20 24 77 61 72 6e 69 6e 67 73 2c 20 24 63 68 65 .$file,.$errors,.$warnings,.$che
36d20 63 6b 50 75 62 6c 69 73 68 2c 20 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 2c 20 24 63 68 65 63 ckPublish,.$publishErrors,.$chec
36d40 6b 4c 6f 63 6b 2c 20 24 6c 6f 63 6b 45 72 72 6f 72 73 2c 20 74 72 75 65 29 3b 0a 0a 24 65 78 69 kLock,.$lockErrors,.true);..$exi
36d60 74 43 6f 64 65 20 3d 20 24 65 72 72 6f 72 73 20 7c 7c 20 28 24 70 75 62 6c 69 73 68 45 72 72 6f tCode.=.$errors.||.($publishErro
36d80 72 73 20 26 26 20 24 63 68 65 63 6b 50 75 62 6c 69 73 68 29 20 7c 7c 20 28 24 6c 6f 63 6b 45 72 rs.&&.$checkPublish).||.($lockEr
36da0 72 6f 72 73 20 26 26 20 24 63 68 65 63 6b 4c 6f 63 6b 29 20 3f 20 32 20 3a 20 28 24 69 73 53 74 rors.&&.$checkLock).?.2.:.($isSt
36dc0 72 69 63 74 20 26 26 20 24 77 61 72 6e 69 6e 67 73 20 3f 20 31 20 3a 20 30 29 3b 0a 0a 69 66 20 rict.&&.$warnings.?.1.:.0);..if.
36de0 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 77 69 74 68 2d 64 65 70 65 6e 64 65 ($input->getOption('with-depende
36e00 6e 63 69 65 73 27 29 29 20 7b 0a 24 6c 6f 63 61 6c 52 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 65 ncies')).{.$localRepo.=.$compose
36e20 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f r->getRepositoryManager()->getLo
36e40 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 61 6c calRepository();.foreach.($local
36e60 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 Repo->getPackages().as.$package)
36e80 20 7b 0a 24 70 61 74 68 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c .{.$path.=.$composer->getInstall
36ea0 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 ationManager()->getInstallPath($
36ec0 70 61 63 6b 61 67 65 29 3b 0a 24 66 69 6c 65 20 3d 20 24 70 61 74 68 20 2e 20 27 2f 63 6f 6d 70 package);.$file.=.$path...'/comp
36ee0 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 70 61 74 68 29 20 26 26 oser.json';.if.(is_dir($path).&&
36f00 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 29 20 7b 0a 6c 69 73 74 28 24 65 72 72 .file_exists($file)).{.list($err
36f20 6f 72 73 2c 20 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 2c 20 24 77 61 72 6e 69 6e 67 73 29 20 ors,.$publishErrors,.$warnings).
36f40 3d 20 24 76 61 6c 69 64 61 74 6f 72 2d 3e 76 61 6c 69 64 61 74 65 28 24 66 69 6c 65 2c 20 24 63 =.$validator->validate($file,.$c
36f60 68 65 63 6b 41 6c 6c 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 69 heckAll);.$this->outputResult($i
36f80 6f 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 20 24 65 o,.$package->getPrettyName(),.$e
36fa0 72 72 6f 72 73 2c 20 24 77 61 72 6e 69 6e 67 73 2c 20 24 63 68 65 63 6b 50 75 62 6c 69 73 68 2c rrors,.$warnings,.$checkPublish,
36fc0 20 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 29 3b 0a 0a 24 64 65 70 43 6f 64 65 20 3d 20 24 65 .$publishErrors);..$depCode.=.$e
36fe0 72 72 6f 72 73 20 7c 7c 20 28 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 20 26 26 20 24 63 68 65 rrors.||.($publishErrors.&&.$che
37000 63 6b 50 75 62 6c 69 73 68 29 20 3f 20 32 20 3a 20 28 24 69 73 53 74 72 69 63 74 20 26 26 20 24 ckPublish).?.2.:.($isStrict.&&.$
37020 77 61 72 6e 69 6e 67 73 20 3f 20 31 20 3a 20 30 29 3b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 6d warnings.?.1.:.0);.$exitCode.=.m
37040 61 78 28 24 64 65 70 43 6f 64 65 2c 20 24 65 78 69 74 43 6f 64 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a ax($depCode,.$exitCode);.}.}.}..
37060 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 $commandEvent.=.new.CommandEvent
37080 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 76 61 6c 69 64 61 74 (PluginEvents::COMMAND,.'validat
370a0 65 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 65 76 65 6e 74 43 6f 64 65 e',.$input,.$output);.$eventCode
370c0 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 .=.$composer->getEventDispatcher
370e0 28 29 2d 3e 64 69 73 70 61 74 63 68 28 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 2d 3e 67 65 74 4e ()->dispatch($commandEvent->getN
37100 61 6d 65 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 24 65 78 69 74 43 6f 64 65 ame(),.$commandEvent);.$exitCode
37120 20 3d 20 6d 61 78 28 24 65 76 65 6e 74 43 6f 64 65 2c 20 24 65 78 69 74 43 6f 64 65 29 3b 0a 0a .=.max($eventCode,.$exitCode);..
37140 72 65 74 75 72 6e 20 24 65 78 69 74 43 6f 64 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e return.$exitCode;.}..private.fun
37160 63 74 69 6f 6e 20 6f 75 74 70 75 74 52 65 73 75 6c 74 28 24 69 6f 2c 20 24 6e 61 6d 65 2c 20 26 ction.outputResult($io,.$name,.&
37180 24 65 72 72 6f 72 73 2c 20 26 24 77 61 72 6e 69 6e 67 73 2c 20 24 63 68 65 63 6b 50 75 62 6c 69 $errors,.&$warnings,.$checkPubli
371a0 73 68 20 3d 20 66 61 6c 73 65 2c 20 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 20 3d 20 61 72 72 sh.=.false,.$publishErrors.=.arr
371c0 61 79 28 29 2c 20 24 63 68 65 63 6b 4c 6f 63 6b 20 3d 20 66 61 6c 73 65 2c 20 24 6c 6f 63 6b 45 ay(),.$checkLock.=.false,.$lockE
371e0 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 2c 20 24 70 72 69 6e 74 53 63 68 65 6d 61 55 72 6c rrors.=.array(),.$printSchemaUrl
37200 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 65 72 72 6f 72 73 20 26 26 20 21 24 70 75 .=.false).{.if.(!$errors.&&.!$pu
37220 62 6c 69 73 68 45 72 72 6f 72 73 20 26 26 20 21 24 77 61 72 6e 69 6e 67 73 29 20 7b 0a 24 69 6f blishErrors.&&.!$warnings).{.$io
37240 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 27 20 2e 20 24 6e 61 6d 65 20 2e 20 27 20 69 73 20 ->write('<info>'...$name...'.is.
37260 76 61 6c 69 64 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 65 72 72 6f valid</info>');.}.elseif.(!$erro
37280 72 73 20 26 26 20 21 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 rs.&&.!$publishErrors).{.$io->wr
372a0 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 27 20 2e 20 24 6e 61 6d 65 20 2e 20 27 20 69 73 iteError('<info>'...$name...'.is
372c0 20 76 61 6c 69 64 2c 20 62 75 74 20 77 69 74 68 20 61 20 66 65 77 20 77 61 72 6e 69 6e 67 73 3c .valid,.but.with.a.few.warnings<
372e0 2f 69 6e 66 6f 3e 27 29 3b 0a 69 66 20 28 24 70 72 69 6e 74 53 63 68 65 6d 61 55 72 6c 29 20 7b /info>');.if.($printSchemaUrl).{
37300 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 53 65 65 20 68 .$io->writeError('<warning>See.h
37320 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 30 34 2d 73 63 ttps://getcomposer.org/doc/04-sc
37340 68 65 6d 61 2e 6d 64 20 66 6f 72 20 64 65 74 61 69 6c 73 20 6f 6e 20 74 68 65 20 73 63 68 65 6d hema.md.for.details.on.the.schem
37360 61 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 65 72 72 a</warning>');.}.}.elseif.(!$err
37380 6f 72 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 27 20 ors).{.$io->writeError('<info>'.
373a0 2e 20 24 6e 61 6d 65 20 2e 20 27 20 69 73 20 76 61 6c 69 64 20 66 6f 72 20 73 69 6d 70 6c 65 20 ..$name...'.is.valid.for.simple.
373c0 75 73 61 67 65 20 77 69 74 68 20 63 6f 6d 70 6f 73 65 72 20 62 75 74 20 68 61 73 3c 2f 69 6e 66 usage.with.composer.but.has</inf
373e0 6f 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 73 74 72 o>');.$io->writeError('<info>str
37400 69 63 74 20 65 72 72 6f 72 73 20 74 68 61 74 20 6d 61 6b 65 20 69 74 20 75 6e 61 62 6c 65 20 74 ict.errors.that.make.it.unable.t
37420 6f 20 62 65 20 70 75 62 6c 69 73 68 65 64 20 61 73 20 61 20 70 61 63 6b 61 67 65 3a 3c 2f 69 6e o.be.published.as.a.package:</in
37440 66 6f 3e 27 29 3b 0a 69 66 20 28 24 70 72 69 6e 74 53 63 68 65 6d 61 55 72 6c 29 20 7b 0a 24 69 fo>');.if.($printSchemaUrl).{.$i
37460 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 53 65 65 20 68 74 74 70 o->writeError('<warning>See.http
37480 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 30 34 2d 73 63 68 65 6d s://getcomposer.org/doc/04-schem
374a0 61 2e 6d 64 20 66 6f 72 20 64 65 74 61 69 6c 73 20 6f 6e 20 74 68 65 20 73 63 68 65 6d 61 3c 2f a.md.for.details.on.the.schema</
374c0 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 warning>');.}.}.else.{.$io->writ
374e0 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 27 20 2e 20 24 6e 61 6d 65 20 2e 20 27 20 69 73 20 eError('<error>'...$name...'.is.
37500 69 6e 76 61 6c 69 64 2c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 72 72 6f 72 73 2f 77 61 invalid,.the.following.errors/wa
37520 72 6e 69 6e 67 73 20 77 65 72 65 20 66 6f 75 6e 64 3a 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a rnings.were.found:</error>');.}.
37540 0a 0a 20 69 66 20 28 24 63 68 65 63 6b 50 75 62 6c 69 73 68 29 20 7b 0a 24 65 72 72 6f 72 73 20 ...if.($checkPublish).{.$errors.
37560 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 65 72 72 6f 72 73 2c 20 24 70 75 62 6c 69 73 68 45 =.array_merge($errors,.$publishE
37580 72 72 6f 72 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 77 61 72 6e 69 6e 67 73 20 3d 20 61 72 72 rrors);.}.else.{.$warnings.=.arr
375a0 61 79 5f 6d 65 72 67 65 28 24 77 61 72 6e 69 6e 67 73 2c 20 24 70 75 62 6c 69 73 68 45 72 72 6f ay_merge($warnings,.$publishErro
375c0 72 73 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 63 68 65 63 6b 4c 6f 63 6b 29 20 7b 0a 24 65 72 72 rs);.}....if.($checkLock).{.$err
375e0 6f 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 65 72 72 6f 72 73 2c 20 24 6c 6f 63 6b ors.=.array_merge($errors,.$lock
37600 45 72 72 6f 72 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 77 61 72 6e 69 6e 67 73 20 3d 20 61 72 Errors);.}.else.{.$warnings.=.ar
37620 72 61 79 5f 6d 65 72 67 65 28 24 77 61 72 6e 69 6e 67 73 2c 20 24 6c 6f 63 6b 45 72 72 6f 72 73 ray_merge($warnings,.$lockErrors
37640 29 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 0a 27 65 72 72 6f 72 27 );.}..$messages.=.array(.'error'
37660 20 3d 3e 20 24 65 72 72 6f 72 73 2c 0a 27 77 61 72 6e 69 6e 67 27 20 3d 3e 20 24 77 61 72 6e 69 .=>.$errors,.'warning'.=>.$warni
37680 6e 67 73 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 24 ngs,.);..foreach.($messages.as.$
376a0 73 74 79 6c 65 20 3d 3e 20 24 6d 73 67 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6d 73 67 73 style.=>.$msgs).{.foreach.($msgs
376c0 20 61 73 20 24 6d 73 67 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 27 20 .as.$msg).{.$io->writeError('<'.
376e0 2e 20 24 73 74 79 6c 65 20 2e 20 27 3e 27 20 2e 20 24 6d 73 67 20 2e 20 27 3c 2f 27 20 2e 20 24 ..$style...'>'...$msg...'</'...$
37700 73 74 79 6c 65 20 2e 20 27 3e 27 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a style...'>');.}.}.}.}.<?php.....
37720 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a 0a 75 73 65 20 .......namespace.Composer;..use.
37740 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 Composer\Package\RootPackageInte
37760 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 63 6b rface;.use.Composer\Package\Lock
37780 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f er;.use.Composer\Repository\Repo
377a0 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 sitoryManager;.use.Composer\Inst
377c0 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 aller\InstallationManager;.use.C
377e0 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 3b 0a 75 73 omposer\Plugin\PluginManager;.us
37800 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 e.Composer\Downloader\DownloadMa
37820 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 nager;.use.Composer\EventDispatc
37840 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 her\EventDispatcher;.use.Compose
37860 72 5c 41 75 74 6f 6c 6f 61 64 5c 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 0a 0a r\Autoload\AutoloadGenerator;...
37880 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6f 73 65 72 0a 7b 0a 63 6f 6e 73 74 20 56 45 52 53 49 ....class.Composer.{.const.VERSI
378a0 4f 4e 20 3d 20 27 31 2e 30 2e 30 2d 62 65 74 61 32 27 3b 0a 63 6f 6e 73 74 20 42 52 41 4e 43 48 ON.=.'1.0.0-beta2';.const.BRANCH
378c0 5f 41 4c 49 41 53 5f 56 45 52 53 49 4f 4e 20 3d 20 27 27 3b 0a 63 6f 6e 73 74 20 52 45 4c 45 41 _ALIAS_VERSION.=.'';.const.RELEA
378e0 53 45 5f 44 41 54 45 20 3d 20 27 32 30 31 36 2d 30 33 2d 32 37 20 31 36 3a 30 30 3a 33 34 27 3b SE_DATE.=.'2016-03-27.16:00:34';
37900 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 .....private.$package;.....priva
37920 74 65 20 24 6c 6f 63 6b 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 73 69 74 te.$locker;.....private.$reposit
37940 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 64 6f 77 6e 6c 6f 61 oryManager;.....private.$downloa
37960 64 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 6e 73 74 61 6c 6c 61 74 dManager;.....private.$installat
37980 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 6c 75 67 69 6e 4d ionManager;.....private.$pluginM
379a0 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 0a 0a 0a anager;.....private.$config;....
379c0 0a 70 72 69 76 61 74 65 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 0a 0a 0a 0a 70 .private.$eventDispatcher;.....p
379e0 72 69 76 61 74 65 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a rivate.$autoloadGenerator;......
37a00 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 61 63 6b 61 67 65 28 52 6f 6f 74 50 public.function.setPackage(RootP
37a20 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 74 68 69 ackageInterface.$package).{.$thi
37a40 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 s->package.=.$package;.}.....pub
37a60 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 lic.function.getPackage().{.retu
37a80 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 rn.$this->package;.}.....public.
37aa0 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6e 66 69 67 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 function.setConfig(Config.$confi
37ac0 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 7d 0a g).{.$this->config.=.$config;.}.
37ae0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 66 69 67 28 29 0a ....public.function.getConfig().
37b00 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a 0a 70 75 {.return.$this->config;.}.....pu
37b20 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 6f 63 6b 65 72 28 4c 6f 63 6b 65 72 20 24 blic.function.setLocker(Locker.$
37b40 6c 6f 63 6b 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 20 3d 20 24 6c 6f 63 6b 65 locker).{.$this->locker.=.$locke
37b60 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 6b r;.}.....public.function.getLock
37b80 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 3b 0a 7d 0a 0a er().{.return.$this->locker;.}..
37ba0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 74 6f 72 79 ...public.function.setRepository
37bc0 4d 61 6e 61 67 65 72 28 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 6d 61 6e 61 67 Manager(RepositoryManager.$manag
37be0 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 3d er).{.$this->repositoryManager.=
37c00 20 24 6d 61 6e 61 67 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e .$manager;.}.....public.function
37c20 20 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e .getRepositoryManager().{.return
37c40 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 7d 0a 0a 0a 0a .$this->repositoryManager;.}....
37c60 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 .public.function.setDownloadMana
37c80 67 65 72 28 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 24 6d 61 6e 61 67 65 72 29 0a 7b 0a ger(DownloadManager.$manager).{.
37ca0 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 6d 61 6e 61 67 65 $this->downloadManager.=.$manage
37cc0 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 6f 77 6e r;.}.....public.function.getDown
37ce0 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f loadManager().{.return.$this->do
37d00 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 wnloadManager;.}.....public.func
37d20 74 69 6f 6e 20 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 49 6e 73 74 tion.setInstallationManager(Inst
37d40 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 6d 61 6e 61 67 65 72 29 0a 7b 0a 24 74 68 69 allationManager.$manager).{.$thi
37d60 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 3d 20 24 6d 61 6e 61 67 65 s->installationManager.=.$manage
37d80 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 r;.}.....public.function.getInst
37da0 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 allationManager().{.return.$this
37dc0 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 ->installationManager;.}.....pub
37de0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 50 6c lic.function.setPluginManager(Pl
37e00 75 67 69 6e 4d 61 6e 61 67 65 72 20 24 6d 61 6e 61 67 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 uginManager.$manager).{.$this->p
37e20 6c 75 67 69 6e 4d 61 6e 61 67 65 72 20 3d 20 24 6d 61 6e 61 67 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 luginManager.=.$manager;.}.....p
37e40 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 ublic.function.getPluginManager(
37e60 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 6c 75 67 69 6e 4d 61 6e 61 67 65 72 3b ).{.return.$this->pluginManager;
37e80 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 76 65 6e 74 44 .}.....public.function.setEventD
37ea0 69 73 70 61 74 63 68 65 72 28 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 24 65 76 65 6e 74 ispatcher(EventDispatcher.$event
37ec0 44 69 73 70 61 74 63 68 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 Dispatcher).{.$this->eventDispat
37ee0 63 68 65 72 20 3d 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 cher.=.$eventDispatcher;.}.....p
37f00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 ublic.function.getEventDispatche
37f20 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 r().{.return.$this->eventDispatc
37f40 68 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 her;.}.....public.function.setAu
37f60 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 28 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f toloadGenerator(AutoloadGenerato
37f80 72 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 r.$autoloadGenerator).{.$this->a
37fa0 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 20 3d 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 utoloadGenerator.=.$autoloadGene
37fc0 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 rator;.}.....public.function.get
37fe0 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 AutoloadGenerator().{.return.$th
38000 69 73 2d 3e 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 is->autoloadGenerator;.}.}.<?php
38020 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a ............namespace.Composer;.
38040 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 5c 43 6f 6e 66 69 67 53 6f 75 72 63 .use.Composer\Config\ConfigSourc
38060 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 66 69 67 0a 7b 0a 63 eInterface;.....class.Config.{.c
38080 6f 6e 73 74 20 52 45 4c 41 54 49 56 45 5f 50 41 54 48 53 20 3d 20 31 3b 0a 0a 70 75 62 6c 69 63 onst.RELATIVE_PATHS.=.1;..public
380a0 20 73 74 61 74 69 63 20 24 64 65 66 61 75 6c 74 43 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 0a .static.$defaultConfig.=.array(.
380c0 27 70 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 27 20 3d 3e 20 33 30 30 2c 0a 27 75 73 65 2d 69 'process-timeout'.=>.300,.'use-i
380e0 6e 63 6c 75 64 65 2d 70 61 74 68 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 27 70 72 65 66 65 72 72 65 nclude-path'.=>.false,.'preferre
38100 64 2d 69 6e 73 74 61 6c 6c 27 20 3d 3e 20 27 61 75 74 6f 27 2c 0a 27 6e 6f 74 69 66 79 2d 6f 6e d-install'.=>.'auto',.'notify-on
38120 2d 69 6e 73 74 61 6c 6c 27 20 3d 3e 20 74 72 75 65 2c 0a 27 67 69 74 68 75 62 2d 70 72 6f 74 6f -install'.=>.true,.'github-proto
38140 63 6f 6c 73 27 20 3d 3e 20 61 72 72 61 79 28 27 68 74 74 70 73 27 2c 20 27 73 73 68 27 2c 20 27 cols'.=>.array('https',.'ssh',.'
38160 67 69 74 27 29 2c 0a 27 76 65 6e 64 6f 72 2d 64 69 72 27 20 3d 3e 20 27 76 65 6e 64 6f 72 27 2c git'),.'vendor-dir'.=>.'vendor',
38180 0a 27 62 69 6e 2d 64 69 72 27 20 3d 3e 20 27 7b 24 76 65 6e 64 6f 72 2d 64 69 72 7d 2f 62 69 6e .'bin-dir'.=>.'{$vendor-dir}/bin
381a0 27 2c 0a 27 63 61 63 68 65 2d 64 69 72 27 20 3d 3e 20 27 7b 24 68 6f 6d 65 7d 2f 63 61 63 68 65 ',.'cache-dir'.=>.'{$home}/cache
381c0 27 2c 0a 27 64 61 74 61 2d 64 69 72 27 20 3d 3e 20 27 7b 24 68 6f 6d 65 7d 27 2c 0a 27 63 61 63 ',.'data-dir'.=>.'{$home}',.'cac
381e0 68 65 2d 66 69 6c 65 73 2d 64 69 72 27 20 3d 3e 20 27 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 66 he-files-dir'.=>.'{$cache-dir}/f
38200 69 6c 65 73 27 2c 0a 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 20 3d 3e 20 27 7b 24 63 61 iles',.'cache-repo-dir'.=>.'{$ca
38220 63 68 65 2d 64 69 72 7d 2f 72 65 70 6f 27 2c 0a 27 63 61 63 68 65 2d 76 63 73 2d 64 69 72 27 20 che-dir}/repo',.'cache-vcs-dir'.
38240 3d 3e 20 27 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 76 63 73 27 2c 0a 27 63 61 63 68 65 2d 74 74 =>.'{$cache-dir}/vcs',.'cache-tt
38260 6c 27 20 3d 3e 20 31 35 35 35 32 30 30 30 2c 20 0a 20 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 74 l'.=>.15552000,...'cache-files-t
38280 74 6c 27 20 3d 3e 20 6e 75 6c 6c 2c 20 0a 20 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 6d 61 78 73 tl'.=>.null,...'cache-files-maxs
382a0 69 7a 65 27 20 3d 3e 20 27 33 30 30 4d 69 42 27 2c 0a 27 62 69 6e 2d 63 6f 6d 70 61 74 27 20 3d ize'.=>.'300MiB',.'bin-compat'.=
382c0 3e 20 27 61 75 74 6f 27 2c 0a 27 64 69 73 63 61 72 64 2d 63 68 61 6e 67 65 73 27 20 3d 3e 20 66 >.'auto',.'discard-changes'.=>.f
382e0 61 6c 73 65 2c 0a 27 61 75 74 6f 6c 6f 61 64 65 72 2d 73 75 66 66 69 78 27 20 3d 3e 20 6e 75 6c alse,.'autoloader-suffix'.=>.nul
38300 6c 2c 0a 27 73 6f 72 74 2d 70 61 63 6b 61 67 65 73 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 27 6f 70 l,.'sort-packages'.=>.false,.'op
38320 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 27 63 6c timize-autoloader'.=>.false,.'cl
38340 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 20 3d 3e 20 66 61 6c 73 65 2c 0a assmap-authoritative'.=>.false,.
38360 27 70 72 65 70 65 6e 64 2d 61 75 74 6f 6c 6f 61 64 65 72 27 20 3d 3e 20 74 72 75 65 2c 0a 27 67 'prepend-autoloader'.=>.true,.'g
38380 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 27 20 3d 3e 20 61 72 72 61 79 28 27 67 69 74 68 75 62 2e ithub-domains'.=>.array('github.
383a0 63 6f 6d 27 29 2c 0a 27 64 69 73 61 62 6c 65 2d 74 6c 73 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 27 com'),.'disable-tls'.=>.false,.'
383c0 73 65 63 75 72 65 2d 68 74 74 70 27 20 3d 3e 20 74 72 75 65 2c 0a 27 63 61 66 69 6c 65 27 20 3d secure-http'.=>.true,.'cafile'.=
383e0 3e 20 6e 75 6c 6c 2c 0a 27 63 61 70 61 74 68 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 67 69 74 68 75 >.null,.'capath'.=>.null,.'githu
38400 62 2d 65 78 70 6f 73 65 2d 68 6f 73 74 6e 61 6d 65 27 20 3d 3e 20 74 72 75 65 2c 0a 27 67 69 74 b-expose-hostname'.=>.true,.'git
38420 6c 61 62 2d 64 6f 6d 61 69 6e 73 27 20 3d 3e 20 61 72 72 61 79 28 27 67 69 74 6c 61 62 2e 63 6f lab-domains'.=>.array('gitlab.co
38440 6d 27 29 2c 0a 27 73 74 6f 72 65 2d 61 75 74 68 73 27 20 3d 3e 20 27 70 72 6f 6d 70 74 27 2c 0a m'),.'store-auths'.=>.'prompt',.
38460 27 70 6c 61 74 66 6f 72 6d 27 20 3d 3e 20 61 72 72 61 79 28 29 2c 0a 27 61 72 63 68 69 76 65 2d 'platform'.=>.array(),.'archive-
38480 66 6f 72 6d 61 74 27 20 3d 3e 20 27 74 61 72 27 2c 0a 27 61 72 63 68 69 76 65 2d 64 69 72 27 20 format'.=>.'tar',.'archive-dir'.
384a0 3d 3e 20 27 2e 27 2c 0a 0a 20 0a 20 0a 20 0a 20 29 3b 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 =>.'.',.........);..public.stati
384c0 63 20 24 64 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 28 0a c.$defaultRepositories.=.array(.
384e0 27 70 61 63 6b 61 67 69 73 74 27 20 3d 3e 20 61 72 72 61 79 28 0a 27 74 79 70 65 27 20 3d 3e 20 'packagist'.=>.array(.'type'.=>.
38500 27 63 6f 6d 70 6f 73 65 72 27 2c 0a 27 75 72 6c 27 20 3d 3e 20 27 68 74 74 70 73 3f 3a 2f 2f 70 'composer',.'url'.=>.'https?://p
38520 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 0a 27 61 6c 6c 6f 77 5f 73 73 6c 5f 64 6f 77 6e 67 72 ackagist.org',.'allow_ssl_downgr
38540 61 64 65 27 20 3d 3e 20 74 72 75 65 2c 0a 29 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6f ade'.=>.true,.),.);..private.$co
38560 6e 66 69 67 3b 0a 70 72 69 76 61 74 65 20 24 62 61 73 65 44 69 72 3b 0a 70 72 69 76 61 74 65 20 nfig;.private.$baseDir;.private.
38580 24 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 53 6f $repositories;.private.$configSo
385a0 75 72 63 65 3b 0a 70 72 69 76 61 74 65 20 24 61 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 3b urce;.private.$authConfigSource;
385c0 0a 70 72 69 76 61 74 65 20 24 75 73 65 45 6e 76 69 72 6f 6e 6d 65 6e 74 3b 0a 0a 0a 0a 0a 70 75 .private.$useEnvironment;.....pu
385e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 75 73 65 45 6e blic.function.__construct($useEn
38600 76 69 72 6f 6e 6d 65 6e 74 20 3d 20 74 72 75 65 2c 20 24 62 61 73 65 44 69 72 20 3d 20 6e 75 6c vironment.=.true,.$baseDir.=.nul
38620 6c 29 0a 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 73 74 61 74 69 63 3a 3a 24 l).{...$this->config.=.static::$
38640 64 65 66 61 75 6c 74 43 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 defaultConfig;.$this->repositori
38660 65 73 20 3d 20 73 74 61 74 69 63 3a 3a 24 64 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 es.=.static::$defaultRepositorie
38680 73 3b 0a 24 74 68 69 73 2d 3e 75 73 65 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 3d 20 28 62 6f 6f 6c s;.$this->useEnvironment.=.(bool
386a0 29 20 24 75 73 65 45 6e 76 69 72 6f 6e 6d 65 6e 74 3b 0a 24 74 68 69 73 2d 3e 62 61 73 65 44 69 ).$useEnvironment;.$this->baseDi
386c0 72 20 3d 20 24 62 61 73 65 44 69 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e r.=.$baseDir;.}..public.function
386e0 20 73 65 74 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 43 6f 6e 66 69 67 53 6f 75 72 63 65 49 6e 74 .setConfigSource(ConfigSourceInt
38700 65 72 66 61 63 65 20 24 73 6f 75 72 63 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 erface.$source).{.$this->configS
38720 6f 75 72 63 65 20 3d 20 24 73 6f 75 72 63 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ource.=.$source;.}..public.funct
38740 69 6f 6e 20 67 65 74 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 ion.getConfigSource().{.return.$
38760 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 this->configSource;.}..public.fu
38780 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 43 6f 6e 66 69 nction.setAuthConfigSource(Confi
387a0 67 53 6f 75 72 63 65 49 6e 74 65 72 66 61 63 65 20 24 73 6f 75 72 63 65 29 0a 7b 0a 24 74 68 69 gSourceInterface.$source).{.$thi
387c0 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 20 3d 20 24 73 6f 75 72 63 65 3b 0a 7d s->authConfigSource.=.$source;.}
387e0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 43 6f 6e 66 69 67 53 ..public.function.getAuthConfigS
38800 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 ource().{.return.$this->authConf
38820 69 67 53 6f 75 72 63 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f igSource;.}.......public.functio
38840 6e 20 6d 65 72 67 65 28 24 63 6f 6e 66 69 67 29 0a 7b 0a 0a 20 69 66 20 28 21 65 6d 70 74 79 28 n.merge($config).{...if.(!empty(
38860 24 63 6f 6e 66 69 67 5b 27 63 6f 6e 66 69 67 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 $config['config']).&&.is_array($
38880 63 6f 6e 66 69 67 5b 27 63 6f 6e 66 69 67 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 config['config'])).{.foreach.($c
388a0 6f 6e 66 69 67 5b 27 63 6f 6e 66 69 67 27 5d 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 29 onfig['config'].as.$key.=>.$val)
388c0 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6b 65 79 2c 20 61 72 72 61 79 28 27 67 69 74 .{.if.(in_array($key,.array('git
388e0 68 75 62 2d 6f 61 75 74 68 27 2c 20 27 67 69 74 6c 61 62 2d 6f 61 75 74 68 27 2c 20 27 68 74 74 hub-oauth',.'gitlab-oauth',.'htt
38900 70 2d 62 61 73 69 63 27 29 29 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 p-basic')).&&.isset($this->confi
38920 67 5b 24 6b 65 79 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 20 g[$key])).{.$this->config[$key].
38940 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 =.array_merge($this->config[$key
38960 5d 2c 20 24 76 61 6c 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 70 72 65 66 65 72 72 65 64 2d 69 ],.$val);.}.elseif.('preferred-i
38980 6e 73 74 61 6c 6c 27 20 3d 3d 3d 20 24 6b 65 79 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d nstall'.===.$key.&&.isset($this-
389a0 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 29 20 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 >config[$key])).{.if.(is_array($
389c0 76 61 6c 29 20 7c 7c 20 69 73 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 val).||.is_array($this->config[$
389e0 6b 65 79 5d 29 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 29 29 20 7b 0a key])).{.if.(is_string($val)).{.
38a00 24 76 61 6c 20 3d 20 61 72 72 61 79 28 27 2a 27 20 3d 3e 20 24 76 61 6c 29 3b 0a 7d 0a 69 66 20 $val.=.array('*'.=>.$val);.}.if.
38a20 28 69 73 5f 73 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 29 (is_string($this->config[$key]))
38a40 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 20 3d 20 61 72 72 61 79 28 27 .{.$this->config[$key].=.array('
38a60 2a 27 20 3d 3e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 3b 0a 7d 0a 24 74 *'.=>.$this->config[$key]);.}.$t
38a80 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 his->config[$key].=.array_merge(
38aa0 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 2c 20 24 76 61 6c 29 3b 0a 0a 20 69 66 $this->config[$key],.$val);...if
38ac0 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 5b 27 2a 27 5d .(isset($this->config[$key]['*']
38ae0 29 29 20 7b 0a 24 77 69 6c 64 63 61 72 64 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 )).{.$wildcard.=.$this->config[$
38b00 6b 65 79 5d 5b 27 2a 27 5d 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 key]['*'];.unset($this->config[$
38b20 6b 65 79 5d 5b 27 2a 27 5d 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 5b key]['*']);.$this->config[$key][
38b40 27 2a 27 5d 20 3d 20 24 77 69 6c 64 63 61 72 64 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 '*'].=.$wildcard;.}.}.else.{.$th
38b60 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 20 3d 20 24 76 61 6c 3b 0a 7d 0a 7d 20 65 6c 73 is->config[$key].=.$val;.}.}.els
38b80 65 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 20 3d 20 24 76 61 6c 3b 0a e.{.$this->config[$key].=.$val;.
38ba0 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 72 65 70 6f 73 }.}.}..if.(!empty($config['repos
38bc0 69 74 6f 72 69 65 73 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 itories']).&&.is_array($config['
38be0 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 repositories'])).{.$this->reposi
38c00 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 74 68 69 73 2d 3e 72 65 tories.=.array_reverse($this->re
38c20 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 29 3b 0a 24 6e 65 77 52 65 70 6f 73 20 3d 20 61 positories,.true);.$newRepos.=.a
38c40 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 63 6f 6e 66 69 67 5b 27 72 65 70 6f 73 69 74 6f 72 69 rray_reverse($config['repositori
38c60 65 73 27 5d 2c 20 74 72 75 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6e 65 77 52 65 70 6f 73 20 es'],.true);.foreach.($newRepos.
38c80 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 20 69 66 20 as.$name.=>.$repository).{...if.
38ca0 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 75 6e 73 65 74 28 (false.===.$repository).{.unset(
38cc0 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 24 6e 61 6d 65 5d 29 3b 0a 63 6f 6e $this->repositories[$name]);.con
38ce0 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 72 65 70 6f 73 69 tinue;.}....if.(is_array($reposi
38d00 74 6f 72 79 29 20 26 26 20 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 72 65 70 6f 73 69 74 6f 72 79 tory).&&.1.===.count($repository
38d20 29 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 63 75 72 72 65 6e 74 28 24 72 65 70 6f 73 69 74 6f ).&&.false.===.current($reposito
38d40 72 79 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 ry)).{.unset($this->repositories
38d60 5b 6b 65 79 28 24 72 65 70 6f 73 69 74 6f 72 79 29 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d [key($repository)]);.continue;.}
38d80 0a 0a 0a 20 69 66 20 28 69 73 5f 69 6e 74 28 24 6e 61 6d 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e ....if.(is_int($name)).{.$this->
38da0 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 20 repositories[].=.$repository;.}.
38dc0 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 24 6e 61 6d 65 else.{.$this->repositories[$name
38de0 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 72 65 70 6f ].=.$repository;.}.}.$this->repo
38e00 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 74 68 69 73 2d 3e sitories.=.array_reverse($this->
38e20 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 repositories,.true);.}.}.....pub
38e40 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 0a 7b lic.function.getRepositories().{
38e60 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d 0a 0a .return.$this->repositories;.}..
38e80 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 28 24 6b 65 79 ........public.function.get($key
38ea0 2c 20 24 66 6c 61 67 73 20 3d 20 30 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6b 65 79 29 20 7b 0a ,.$flags.=.0).{.switch.($key).{.
38ec0 63 61 73 65 20 27 76 65 6e 64 6f 72 2d 64 69 72 27 3a 0a 63 61 73 65 20 27 62 69 6e 2d 64 69 72 case.'vendor-dir':.case.'bin-dir
38ee0 27 3a 0a 63 61 73 65 20 27 70 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 27 3a 0a 63 61 73 65 20 ':.case.'process-timeout':.case.
38f00 27 64 61 74 61 2d 64 69 72 27 3a 0a 63 61 73 65 20 27 63 61 63 68 65 2d 64 69 72 27 3a 0a 63 61 'data-dir':.case.'cache-dir':.ca
38f20 73 65 20 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 64 69 72 27 3a 0a 63 61 73 65 20 27 63 61 63 68 se.'cache-files-dir':.case.'cach
38f40 65 2d 72 65 70 6f 2d 64 69 72 27 3a 0a 63 61 73 65 20 27 63 61 63 68 65 2d 76 63 73 2d 64 69 72 e-repo-dir':.case.'cache-vcs-dir
38f60 27 3a 0a 63 61 73 65 20 27 63 61 66 69 6c 65 27 3a 0a 63 61 73 65 20 27 63 61 70 61 74 68 27 3a ':.case.'cafile':.case.'capath':
38f80 0a 0a 20 24 65 6e 76 20 3d 20 27 43 4f 4d 50 4f 53 45 52 5f 27 20 2e 20 73 74 72 74 6f 75 70 70 ...$env.=.'COMPOSER_'...strtoupp
38fa0 65 72 28 73 74 72 74 72 28 24 6b 65 79 2c 20 27 2d 27 2c 20 27 5f 27 29 29 3b 0a 0a 24 76 61 6c er(strtr($key,.'-',.'_'));..$val
38fc0 20 3d 20 72 74 72 69 6d 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 28 24 74 68 69 73 2d 3e 67 .=.rtrim($this->process($this->g
38fe0 65 74 43 6f 6d 70 6f 73 65 72 45 6e 76 28 24 65 6e 76 29 20 3f 3a 20 24 74 68 69 73 2d 3e 63 6f etComposerEnv($env).?:.$this->co
39000 6e 66 69 67 5b 24 6b 65 79 5d 2c 20 24 66 6c 61 67 73 29 2c 20 27 2f 5c 5c 27 29 3b 0a 24 76 61 nfig[$key],.$flags),.'/\\');.$va
39020 6c 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 23 5e 28 5c 24 48 4f 4d 45 7c 7e 29 28 2f l.=.preg_replace('#^(\$HOME|~)(/
39040 7c 24 29 23 27 2c 20 72 74 72 69 6d 28 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 29 20 3f 3a 20 67 |$)#',.rtrim(getenv('HOME').?:.g
39060 65 74 65 6e 76 28 27 55 53 45 52 50 52 4f 46 49 4c 45 27 29 2c 20 27 2f 5c 5c 27 29 20 2e 20 27 etenv('USERPROFILE'),.'/\\')...'
39080 2f 27 2c 20 24 76 61 6c 29 3b 0a 0a 69 66 20 28 73 75 62 73 74 72 28 24 6b 65 79 2c 20 2d 34 29 /',.$val);..if.(substr($key,.-4)
390a0 20 21 3d 3d 20 27 2d 64 69 72 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 61 6c 3b 0a 7d 0a 0a 72 .!==.'-dir').{.return.$val;.}..r
390c0 65 74 75 72 6e 20 28 28 24 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 52 45 4c 41 54 49 56 45 5f eturn.(($flags.&.self::RELATIVE_
390e0 50 41 54 48 53 29 20 3d 3d 20 73 65 6c 66 3a 3a 52 45 4c 41 54 49 56 45 5f 50 41 54 48 53 29 20 PATHS).==.self::RELATIVE_PATHS).
39100 3f 20 24 76 61 6c 20 3a 20 24 74 68 69 73 2d 3e 72 65 61 6c 70 61 74 68 28 24 76 61 6c 29 3b 0a ?.$val.:.$this->realpath($val);.
39120 0a 63 61 73 65 20 27 63 61 63 68 65 2d 74 74 6c 27 3a 0a 72 65 74 75 72 6e 20 28 69 6e 74 29 20 .case.'cache-ttl':.return.(int).
39140 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 3b 0a 0a 63 61 73 65 20 27 63 61 63 68 $this->config[$key];..case.'cach
39160 65 2d 66 69 6c 65 73 2d 6d 61 78 73 69 7a 65 27 3a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 e-files-maxsize':.if.(!preg_matc
39180 68 28 27 2f 5e 5c 73 2a 28 5b 30 2d 39 2e 5d 2b 29 5c 73 2a 28 3f 3a 28 5b 6b 6d 67 5d 29 28 3f h('/^\s*([0-9.]+)\s*(?:([kmg])(?
391a0 3a 69 3f 62 29 3f 29 3f 5c 73 2a 24 2f 69 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 :i?b)?)?\s*$/i',.$this->config[$
391c0 6b 65 79 5d 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 key],.$matches)).{.throw.new.\Ru
391e0 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 22 43 6f 75 6c 64 20 6e 6f 74 20 70 61 72 73 65 ntimeException(."Could.not.parse
39200 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 6d 61 78 73 69 .the.value.of.'cache-files-maxsi
39220 7a 65 27 3a 20 7b 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 7d 22 0a 29 3b 0a 7d ze':.{$this->config[$key]}".);.}
39240 0a 24 73 69 7a 65 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 3b 0a 69 66 20 28 69 73 73 65 74 28 .$size.=.$matches[1];.if.(isset(
39260 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a 73 77 69 74 63 68 20 28 73 74 72 74 6f 6c 6f 77 $matches[2])).{.switch.(strtolow
39280 65 72 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a 63 61 73 65 20 27 67 27 3a 0a 24 73 69 er($matches[2])).{.case.'g':.$si
392a0 7a 65 20 2a 3d 20 31 30 32 34 3b 0a 0a 20 63 61 73 65 20 27 6d 27 3a 0a 24 73 69 7a 65 20 2a 3d ze.*=.1024;...case.'m':.$size.*=
392c0 20 31 30 32 34 3b 0a 0a 20 63 61 73 65 20 27 6b 27 3a 0a 24 73 69 7a 65 20 2a 3d 20 31 30 32 34 .1024;...case.'k':.$size.*=.1024
392e0 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 69 7a 65 3b 0a 0a 63 61 73 ;.break;.}.}..return.$size;..cas
39300 65 20 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 74 74 6c 27 3a 0a 69 66 20 28 69 73 73 65 74 28 24 e.'cache-files-ttl':.if.(isset($
39320 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 28 69 this->config[$key])).{.return.(i
39340 6e 74 29 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 3b 0a 7d 0a 0a 72 65 74 75 nt).$this->config[$key];.}..retu
39360 72 6e 20 28 69 6e 74 29 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 63 61 63 68 65 2d 74 74 rn.(int).$this->config['cache-tt
39380 6c 27 5d 3b 0a 0a 63 61 73 65 20 27 68 6f 6d 65 27 3a 0a 24 76 61 6c 20 3d 20 70 72 65 67 5f 72 l'];..case.'home':.$val.=.preg_r
393a0 65 70 6c 61 63 65 28 27 23 5e 28 5c 24 48 4f 4d 45 7c 7e 29 28 2f 7c 24 29 23 27 2c 20 72 74 72 eplace('#^(\$HOME|~)(/|$)#',.rtr
393c0 69 6d 28 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 29 20 3f 3a 20 67 65 74 65 6e 76 28 27 55 53 45 im(getenv('HOME').?:.getenv('USE
393e0 52 50 52 4f 46 49 4c 45 27 29 2c 20 27 2f 5c 5c 27 29 20 2e 20 27 2f 27 2c 20 24 74 68 69 73 2d RPROFILE'),.'/\\')...'/',.$this-
39400 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 72 74 72 69 6d 28 24 74 >config[$key]);..return.rtrim($t
39420 68 69 73 2d 3e 70 72 6f 63 65 73 73 28 24 76 61 6c 2c 20 24 66 6c 61 67 73 29 2c 20 27 2f 5c 5c his->process($val,.$flags),.'/\\
39440 27 29 3b 0a 0a 63 61 73 65 20 27 62 69 6e 2d 63 6f 6d 70 61 74 27 3a 0a 24 76 61 6c 75 65 20 3d ');..case.'bin-compat':.$value.=
39460 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 45 6e 76 28 27 43 4f 4d 50 4f 53 45 52 .$this->getComposerEnv('COMPOSER
39480 5f 42 49 4e 5f 43 4f 4d 50 41 54 27 29 20 3f 3a 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 _BIN_COMPAT').?:.$this->config[$
394a0 6b 65 79 5d 3b 0a 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 76 61 6c 75 65 2c 20 61 72 72 key];..if.(!in_array($value,.arr
394c0 61 79 28 27 61 75 74 6f 27 2c 20 27 66 75 6c 6c 27 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 ay('auto',.'full'))).{.throw.new
394e0 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 22 49 6e 76 61 6c 69 64 20 76 61 6c .\RuntimeException(."Invalid.val
39500 75 65 20 66 6f 72 20 27 62 69 6e 2d 63 6f 6d 70 61 74 27 3a 20 7b 24 76 61 6c 75 65 7d 2e 20 45 ue.for.'bin-compat':.{$value}..E
39520 78 70 65 63 74 65 64 20 61 75 74 6f 2c 20 66 75 6c 6c 22 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e xpected.auto,.full".);.}..return
39540 20 24 76 61 6c 75 65 3b 0a 0a 63 61 73 65 20 27 64 69 73 63 61 72 64 2d 63 68 61 6e 67 65 73 27 .$value;..case.'discard-changes'
39560 3a 0a 69 66 20 28 24 65 6e 76 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 45 :.if.($env.=.$this->getComposerE
39580 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 44 49 53 43 41 52 44 5f 43 48 41 4e 47 45 53 27 29 29 20 nv('COMPOSER_DISCARD_CHANGES')).
395a0 7b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 65 6e 76 2c 20 61 72 72 61 79 28 27 73 74 61 {.if.(!in_array($env,.array('sta
395c0 73 68 27 2c 20 27 74 72 75 65 27 2c 20 27 66 61 6c 73 65 27 2c 20 27 31 27 2c 20 27 30 27 29 2c sh',.'true',.'false',.'1',.'0'),
395e0 20 74 72 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 .true)).{.throw.new.\RuntimeExce
39600 70 74 69 6f 6e 28 0a 22 49 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 66 6f 72 20 43 4f 4d 50 4f 53 ption(."Invalid.value.for.COMPOS
39620 45 52 5f 44 49 53 43 41 52 44 5f 43 48 41 4e 47 45 53 3a 20 7b 24 65 6e 76 7d 2e 20 45 78 70 65 ER_DISCARD_CHANGES:.{$env}..Expe
39640 63 74 65 64 20 31 2c 20 30 2c 20 74 72 75 65 2c 20 66 61 6c 73 65 20 6f 72 20 73 74 61 73 68 22 cted.1,.0,.true,.false.or.stash"
39660 0a 29 3b 0a 7d 0a 69 66 20 28 27 73 74 61 73 68 27 20 3d 3d 3d 20 24 65 6e 76 29 20 7b 0a 72 65 .);.}.if.('stash'.===.$env).{.re
39680 74 75 72 6e 20 27 73 74 61 73 68 27 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 24 65 6e 76 20 21 turn.'stash';.}....return.$env.!
396a0 3d 3d 20 27 66 61 6c 73 65 27 20 26 26 20 28 62 6f 6f 6c 29 20 24 65 6e 76 3b 0a 7d 0a 0a 69 66 ==.'false'.&&.(bool).$env;.}..if
396c0 20 28 21 69 6e 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 2c .(!in_array($this->config[$key],
396e0 20 61 72 72 61 79 28 74 72 75 65 2c 20 66 61 6c 73 65 2c 20 27 73 74 61 73 68 27 29 2c 20 74 72 .array(true,.false,.'stash'),.tr
39700 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 ue)).{.throw.new.\RuntimeExcepti
39720 6f 6e 28 0a 22 49 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 66 6f 72 20 27 64 69 73 63 61 72 64 2d on(."Invalid.value.for.'discard-
39740 63 68 61 6e 67 65 73 27 3a 20 7b 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 7d 2e changes':.{$this->config[$key]}.
39760 20 45 78 70 65 63 74 65 64 20 74 72 75 65 2c 20 66 61 6c 73 65 20 6f 72 20 73 74 61 73 68 22 0a .Expected.true,.false.or.stash".
39780 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d );.}..return.$this->config[$key]
397a0 3b 0a 0a 63 61 73 65 20 27 67 69 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 27 3a 0a 24 70 72 6f ;..case.'github-protocols':.$pro
397c0 74 6f 73 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 67 69 74 68 75 62 2d 70 72 6f 74 tos.=.$this->config['github-prot
397e0 6f 63 6f 6c 73 27 5d 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 65 63 75 ocols'];.if.($this->config['secu
39800 72 65 2d 68 74 74 70 27 5d 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 28 24 69 6e 64 65 78 20 3d re-http'].&&.false.!==.($index.=
39820 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 27 67 69 74 27 2c 20 24 70 72 6f 74 6f 73 29 29 29 20 .array_search('git',.$protos))).
39840 7b 0a 75 6e 73 65 74 28 24 70 72 6f 74 6f 73 5b 24 69 6e 64 65 78 5d 29 3b 0a 7d 0a 69 66 20 28 {.unset($protos[$index]);.}.if.(
39860 72 65 73 65 74 28 24 70 72 6f 74 6f 73 29 20 3d 3d 3d 20 27 68 74 74 70 27 29 20 7b 0a 74 68 72 reset($protos).===.'http').{.thr
39880 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 68 74 ow.new.\RuntimeException('The.ht
398a0 74 70 20 70 72 6f 74 6f 63 6f 6c 20 66 6f 72 20 67 69 74 68 75 62 20 69 73 20 6e 6f 74 20 61 76 tp.protocol.for.github.is.not.av
398c0 61 69 6c 61 62 6c 65 20 61 6e 79 6d 6f 72 65 2c 20 75 70 64 61 74 65 20 79 6f 75 72 20 63 6f 6e ailable.anymore,.update.your.con
398e0 66 69 67 5c 27 73 20 67 69 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 20 74 6f 20 75 73 65 20 22 fig\'s.github-protocols.to.use."
39900 68 74 74 70 73 22 2c 20 22 67 69 74 22 20 6f 72 20 22 73 73 68 22 27 29 3b 0a 7d 0a 0a 72 65 74 https",."git".or."ssh"');.}..ret
39920 75 72 6e 20 24 70 72 6f 74 6f 73 3b 0a 0a 63 61 73 65 20 27 64 69 73 61 62 6c 65 2d 74 6c 73 27 urn.$protos;..case.'disable-tls'
39940 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 20 21 3d 3d :.return.$this->config[$key].!==
39960 20 27 66 61 6c 73 65 27 20 26 26 20 28 62 6f 6f 6c 29 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 .'false'.&&.(bool).$this->config
39980 5b 24 6b 65 79 5d 3b 0a 0a 63 61 73 65 20 27 73 65 63 75 72 65 2d 68 74 74 70 27 3a 0a 72 65 74 [$key];..case.'secure-http':.ret
399a0 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 20 21 3d 3d 20 27 66 61 6c urn.$this->config[$key].!==.'fal
399c0 73 65 27 20 26 26 20 28 62 6f 6f 6c 29 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 se'.&&.(bool).$this->config[$key
399e0 5d 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 ];..default:.if.(!isset($this->c
39a00 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a onfig[$key])).{.return.null;.}..
39a20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 28 24 74 68 69 73 2d 3e 63 6f 6e return.$this->process($this->con
39a40 66 69 67 5b 24 6b 65 79 5d 2c 20 24 66 6c 61 67 73 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 fig[$key],.$flags);.}.}..public.
39a60 66 75 6e 63 74 69 6f 6e 20 61 6c 6c 28 24 66 6c 61 67 73 20 3d 20 30 29 0a 7b 0a 24 61 6c 6c 20 function.all($flags.=.0).{.$all.
39a80 3d 20 61 72 72 61 79 28 0a 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 20 3d 3e 20 24 74 68 69 73 =.array(.'repositories'.=>.$this
39aa0 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 2c 0a 29 3b 0a 66 6f 72 65 61 63 68 20 ->getRepositories(),.);.foreach.
39ac0 28 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 20 61 73 20 24 6b (array_keys($this->config).as.$k
39ae0 65 79 29 20 7b 0a 24 61 6c 6c 5b 27 63 6f 6e 66 69 67 27 5d 5b 24 6b 65 79 5d 20 3d 20 24 74 68 ey).{.$all['config'][$key].=.$th
39b00 69 73 2d 3e 67 65 74 28 24 6b 65 79 2c 20 24 66 6c 61 67 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e is->get($key,.$flags);.}..return
39b20 20 24 61 6c 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 61 77 28 29 0a .$all;.}..public.function.raw().
39b40 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 20 3d {.return.array(.'repositories'.=
39b60 3e 20 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 2c 0a 27 63 6f 6e >.$this->getRepositories(),.'con
39b80 66 69 67 27 20 3d 3e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a fig'.=>.$this->config,.);.}.....
39ba0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 28 24 6b 65 79 29 0a 7b 0a 72 ...public.function.has($key).{.r
39bc0 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 6b 65 79 2c 20 24 74 68 eturn.array_key_exists($key,.$th
39be0 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 is->config);.}.........private.f
39c00 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 28 24 76 61 6c 75 65 2c 20 24 66 6c 61 67 73 29 0a unction.process($value,.$flags).
39c20 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 24 74 68 69 73 3b 0a 0a 69 66 20 28 21 69 73 5f 73 74 72 69 {.$config.=.$this;..if.(!is_stri
39c40 6e 67 28 24 76 61 6c 75 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a ng($value)).{.return.$value;.}..
39c60 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 23 5c return.preg_replace_callback('#\
39c80 7b 5c 24 28 2e 2b 29 5c 7d 23 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 68 29 20 75 {\$(.+)\}#',.function.($match).u
39ca0 73 65 20 28 24 63 6f 6e 66 69 67 2c 20 24 66 6c 61 67 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 se.($config,.$flags).{.return.$c
39cc0 6f 6e 66 69 67 2d 3e 67 65 74 28 24 6d 61 74 63 68 5b 31 5d 2c 20 24 66 6c 61 67 73 29 3b 0a 7d onfig->get($match[1],.$flags);.}
39ce0 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 ,.$value);.}..........private.fu
39d00 6e 63 74 69 6f 6e 20 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 70 72 65 nction.realpath($path).{.if.(pre
39d20 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 2f 7c 5b 61 2d 7a 5d 3a 7c 5b 61 2d 7a 30 2d 39 2e 5d g_match('{^(?:/|[a-z]:|[a-z0-9.]
39d40 2b 3a 2f 2f 29 7d 69 27 2c 20 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 74 68 +://)}i',.$path)).{.return.$path
39d60 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 61 73 65 44 69 72 20 2e 20 27 2f 27 ;.}..return.$this->baseDir...'/'
39d80 20 2e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 ...$path;.}...........private.fu
39da0 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 45 6e 76 28 24 76 61 72 29 0a 7b 0a 69 66 nction.getComposerEnv($var).{.if
39dc0 20 28 24 74 68 69 73 2d 3e 75 73 65 45 6e 76 69 72 6f 6e 6d 65 6e 74 29 20 7b 0a 72 65 74 75 72 .($this->useEnvironment).{.retur
39de0 6e 20 67 65 74 65 6e 76 28 24 76 61 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b n.getenv($var);.}..return.false;
39e00 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 .}.}.<?php............namespace.
39e20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 Composer\Config;........interfac
39e40 65 20 43 6f 6e 66 69 67 53 6f 75 72 63 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a e.ConfigSourceInterface.{.......
39e60 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 6e public.function.addRepository($n
39e80 61 6d 65 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ame,.$config);.......public.func
39ea0 74 69 6f 6e 20 72 65 6d 6f 76 65 52 65 70 6f 73 69 74 6f 72 79 28 24 6e 61 6d 65 29 3b 0a 0a 0a tion.removeRepository($name);...
39ec0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 43 6f 6e 66 69 67 53 65 .....public.function.addConfigSe
39ee0 74 74 69 6e 67 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c tting($name,.$value);.......publ
39f00 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 ic.function.removeConfigSetting(
39f20 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 $name);.........public.function.
39f40 61 64 64 4c 69 6e 6b 28 24 74 79 70 65 2c 20 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 3b 0a 0a addLink($type,.$name,.$value);..
39f60 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 4c 69 6e 6b ......public.function.removeLink
39f80 28 24 74 79 70 65 2c 20 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ($type,.$name);.......public.fun
39fa0 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a ction.getName();.}.<?php........
39fc0 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a ....namespace.Composer\Config;..
39fe0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 use.Composer\Json\JsonFile;.use.
3a000 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 3b 0a 75 Composer\Json\JsonManipulator;.u
3a020 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 69 6c 65 6e 63 65 72 3b 0a 0a 0a 0a 0a 0a se.Composer\Util\Silencer;......
3a040 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 20 69 6d 70 6c 65 6d 65 ..class.JsonConfigSource.impleme
3a060 6e 74 73 20 43 6f 6e 66 69 67 53 6f 75 72 63 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 nts.ConfigSourceInterface.{....p
3a080 72 69 76 61 74 65 20 24 66 69 6c 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 61 75 74 68 43 rivate.$file;.....private.$authC
3a0a0 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f onfig;........public.function.__
3a0c0 63 6f 6e 73 74 72 75 63 74 28 4a 73 6f 6e 46 69 6c 65 20 24 66 69 6c 65 2c 20 24 61 75 74 68 43 construct(JsonFile.$file,.$authC
3a0e0 6f 6e 66 69 67 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 20 3d 20 24 onfig.=.false).{.$this->file.=.$
3a100 66 69 6c 65 3b 0a 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 20 3d 20 24 61 75 74 68 43 file;.$this->authConfig.=.$authC
3a120 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 onfig;.}.....public.function.get
3a140 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 67 65 74 Name().{.return.$this->file->get
3a160 50 61 74 68 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 Path();.}.....public.function.ad
3a180 64 52 65 70 6f 73 69 74 6f 72 79 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 dRepository($name,.$config).{.$t
3a1a0 68 69 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 4a 73 6f 6e 28 27 61 64 64 52 65 70 6f 73 69 74 6f his->manipulateJson('addReposito
3a1c0 72 79 27 2c 20 24 6e 61 6d 65 2c 20 24 63 6f 6e 66 69 67 2c 20 66 75 6e 63 74 69 6f 6e 20 28 26 ry',.$name,.$config,.function.(&
3a1e0 24 63 6f 6e 66 69 67 2c 20 24 72 65 70 6f 2c 20 24 72 65 70 6f 43 6f 6e 66 69 67 29 20 7b 0a 24 $config,.$repo,.$repoConfig).{.$
3a200 63 6f 6e 66 69 67 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 5b 24 72 65 70 6f 5d 20 3d 20 config['repositories'][$repo].=.
3a220 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 $repoConfig;.});.}.....public.fu
3a240 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 52 65 70 6f 73 69 74 6f 72 79 28 24 6e 61 6d 65 29 0a 7b nction.removeRepository($name).{
3a260 0a 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 4a 73 6f 6e 28 27 72 65 6d 6f 76 65 52 65 .$this->manipulateJson('removeRe
3a280 70 6f 73 69 74 6f 72 79 27 2c 20 24 6e 61 6d 65 2c 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 63 6f pository',.$name,.function.(&$co
3a2a0 6e 66 69 67 2c 20 24 72 65 70 6f 29 20 7b 0a 75 6e 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 72 65 nfig,.$repo).{.unset($config['re
3a2c0 70 6f 73 69 74 6f 72 69 65 73 27 5d 5b 24 72 65 70 6f 5d 29 3b 0a 7d 29 3b 0a 7d 0a 0a 0a 0a 0a positories'][$repo]);.});.}.....
3a2e0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 public.function.addConfigSetting
3a300 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 24 61 75 74 68 43 6f 6e 66 69 67 20 3d 20 ($name,.$value).{.$authConfig.=.
3a320 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 $this->authConfig;.$this->manipu
3a340 6c 61 74 65 4a 73 6f 6e 28 27 61 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 27 2c 20 24 6e 61 lateJson('addConfigSetting',.$na
3a360 6d 65 2c 20 24 76 61 6c 75 65 2c 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 63 6f 6e 66 69 67 2c 20 me,.$value,.function.(&$config,.
3a380 24 6b 65 79 2c 20 24 76 61 6c 29 20 75 73 65 20 28 24 61 75 74 68 43 6f 6e 66 69 67 29 20 7b 0a $key,.$val).use.($authConfig).{.
3a3a0 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 67 69 74 68 75 62 2d 6f 61 75 74 68 7c if.(preg_match('{^(github-oauth|
3a3c0 67 69 74 6c 61 62 2d 6f 61 75 74 68 7c 68 74 74 70 2d 62 61 73 69 63 7c 70 6c 61 74 66 6f 72 6d gitlab-oauth|http-basic|platform
3a3e0 29 5c 2e 7d 27 2c 20 24 6b 65 79 29 29 20 7b 0a 6c 69 73 74 28 24 6b 65 79 2c 20 24 68 6f 73 74 )\.}',.$key)).{.list($key,.$host
3a400 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 6b 65 79 2c 20 32 29 3b 0a 69 66 20 28 24 ).=.explode('.',.$key,.2);.if.($
3a420 61 75 74 68 43 6f 6e 66 69 67 29 20 7b 0a 24 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 5b 24 68 6f 73 authConfig).{.$config[$key][$hos
3a440 74 5d 20 3d 20 24 76 61 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6e 66 69 67 5b 27 63 6f 6e t].=.$val;.}.else.{.$config['con
3a460 66 69 67 27 5d 5b 24 6b 65 79 5d 5b 24 68 6f 73 74 5d 20 3d 20 24 76 61 6c 3b 0a 7d 0a 7d 20 65 fig'][$key][$host].=.$val;.}.}.e
3a480 6c 73 65 20 7b 0a 24 63 6f 6e 66 69 67 5b 27 63 6f 6e 66 69 67 27 5d 5b 24 6b 65 79 5d 20 3d 20 lse.{.$config['config'][$key].=.
3a4a0 24 76 61 6c 3b 0a 7d 0a 7d 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f $val;.}.});.}.....public.functio
3a4c0 6e 20 72 65 6d 6f 76 65 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 6e 61 6d 65 29 0a 7b 0a 24 n.removeConfigSetting($name).{.$
3a4e0 61 75 74 68 43 6f 6e 66 69 67 20 3d 20 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 3b 0a authConfig.=.$this->authConfig;.
3a500 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 4a 73 6f 6e 28 27 72 65 6d 6f 76 65 43 6f 6e $this->manipulateJson('removeCon
3a520 66 69 67 53 65 74 74 69 6e 67 27 2c 20 24 6e 61 6d 65 2c 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 figSetting',.$name,.function.(&$
3a540 63 6f 6e 66 69 67 2c 20 24 6b 65 79 29 20 75 73 65 20 28 24 61 75 74 68 43 6f 6e 66 69 67 29 20 config,.$key).use.($authConfig).
3a560 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 67 69 74 68 75 62 2d 6f 61 75 74 {.if.(preg_match('{^(github-oaut
3a580 68 7c 67 69 74 6c 61 62 2d 6f 61 75 74 68 7c 68 74 74 70 2d 62 61 73 69 63 7c 70 6c 61 74 66 6f h|gitlab-oauth|http-basic|platfo
3a5a0 72 6d 29 5c 2e 7d 27 2c 20 24 6b 65 79 29 29 20 7b 0a 6c 69 73 74 28 24 6b 65 79 2c 20 24 68 6f rm)\.}',.$key)).{.list($key,.$ho
3a5c0 73 74 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 6b 65 79 2c 20 32 29 3b 0a 69 66 20 st).=.explode('.',.$key,.2);.if.
3a5e0 28 24 61 75 74 68 43 6f 6e 66 69 67 29 20 7b 0a 75 6e 73 65 74 28 24 63 6f 6e 66 69 67 5b 24 6b ($authConfig).{.unset($config[$k
3a600 65 79 5d 5b 24 68 6f 73 74 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 75 6e 73 65 74 28 24 63 6f 6e ey][$host]);.}.else.{.unset($con
3a620 66 69 67 5b 27 63 6f 6e 66 69 67 27 5d 5b 24 6b 65 79 5d 5b 24 68 6f 73 74 5d 29 3b 0a 7d 0a 7d fig['config'][$key][$host]);.}.}
3a640 20 65 6c 73 65 20 7b 0a 75 6e 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 63 6f 6e 66 69 67 27 5d 5b .else.{.unset($config['config'][
3a660 24 6b 65 79 5d 29 3b 0a 7d 0a 7d 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 $key]);.}.});.}.....public.funct
3a680 69 6f 6e 20 61 64 64 4c 69 6e 6b 28 24 74 79 70 65 2c 20 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 ion.addLink($type,.$name,.$value
3a6a0 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 4a 73 6f 6e 28 27 61 64 64 4c 69 ).{.$this->manipulateJson('addLi
3a6c0 6e 6b 27 2c 20 24 74 79 70 65 2c 20 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 2c 20 66 75 6e 63 74 nk',.$type,.$name,.$value,.funct
3a6e0 69 6f 6e 20 28 26 24 63 6f 6e 66 69 67 2c 20 24 74 79 70 65 2c 20 24 6e 61 6d 65 2c 20 24 76 61 ion.(&$config,.$type,.$name,.$va
3a700 6c 75 65 29 20 7b 0a 24 63 6f 6e 66 69 67 5b 24 74 79 70 65 5d 5b 24 6e 61 6d 65 5d 20 3d 20 24 lue).{.$config[$type][$name].=.$
3a720 76 61 6c 75 65 3b 0a 7d 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e value;.});.}.....public.function
3a740 20 72 65 6d 6f 76 65 4c 69 6e 6b 28 24 74 79 70 65 2c 20 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 .removeLink($type,.$name).{.$thi
3a760 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 4a 73 6f 6e 28 27 72 65 6d 6f 76 65 53 75 62 4e 6f 64 65 s->manipulateJson('removeSubNode
3a780 27 2c 20 24 74 79 70 65 2c 20 24 6e 61 6d 65 2c 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 63 6f 6e ',.$type,.$name,.function.(&$con
3a7a0 66 69 67 2c 20 24 74 79 70 65 2c 20 24 6e 61 6d 65 29 20 7b 0a 75 6e 73 65 74 28 24 63 6f 6e 66 fig,.$type,.$name).{.unset($conf
3a7c0 69 67 5b 24 74 79 70 65 5d 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 ig[$type][$name]);.});.}..protec
3a7e0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6d 61 6e 69 70 75 6c 61 74 65 4a 73 6f 6e 28 24 6d 65 74 ted.function.manipulateJson($met
3a800 68 6f 64 2c 20 24 61 72 67 73 2c 20 24 66 61 6c 6c 62 61 63 6b 29 0a 7b 0a 24 61 72 67 73 20 3d hod,.$args,.$fallback).{.$args.=
3a820 20 66 75 6e 63 5f 67 65 74 5f 61 72 67 73 28 29 3b 0a 0a 20 61 72 72 61 79 5f 73 68 69 66 74 28 .func_get_args();...array_shift(
3a840 24 61 72 67 73 29 3b 0a 24 66 61 6c 6c 62 61 63 6b 20 3d 20 61 72 72 61 79 5f 70 6f 70 28 24 61 $args);.$fallback.=.array_pop($a
3a860 72 67 73 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 rgs);..if.($this->file->exists()
3a880 29 20 7b 0a 69 66 20 28 21 69 73 5f 77 72 69 74 61 62 6c 65 28 24 74 68 69 73 2d 3e 66 69 6c 65 ).{.if.(!is_writable($this->file
3a8a0 2d 3e 67 65 74 50 61 74 68 28 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 ->getPath())).{.throw.new.\Runti
3a8c0 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 66 69 6c 65 20 22 25 meException(sprintf('The.file."%
3a8e0 73 22 20 69 73 20 6e 6f 74 20 77 72 69 74 61 62 6c 65 2e 27 2c 20 24 74 68 69 73 2d 3e 66 69 6c s".is.not.writable.',.$this->fil
3a900 65 2d 3e 67 65 74 50 61 74 68 28 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 72 65 61 64 61 e->getPath()));.}..if.(!is_reada
3a920 62 6c 65 28 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 29 20 7b 0a 74 ble($this->file->getPath())).{.t
3a940 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e hrow.new.\RuntimeException(sprin
3a960 74 66 28 27 54 68 65 20 66 69 6c 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 72 65 61 64 61 62 6c tf('The.file."%s".is.not.readabl
3a980 65 2e 27 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 29 3b 0a 7d e.',.$this->file->getPath()));.}
3a9a0 0a 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 ..$contents.=.file_get_contents(
3a9c0 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 7d 20 65 6c 73 65 69 $this->file->getPath());.}.elsei
3a9e0 66 20 28 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 f.($this->authConfig).{.$content
3aa00 73 20 3d 20 22 7b 5c 6e 7d 5c 6e 22 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 s.=."{\n}\n";.}.else.{.$contents
3aa20 20 3d 20 22 7b 5c 6e 20 20 20 20 5c 22 63 6f 6e 66 69 67 5c 22 3a 20 7b 5c 6e 20 20 20 20 7d 5c .=."{\n....\"config\":.{\n....}\
3aa40 6e 7d 5c 6e 22 3b 0a 7d 0a 0a 24 6d 61 6e 69 70 75 6c 61 74 6f 72 20 3d 20 6e 65 77 20 4a 73 6f n}\n";.}..$manipulator.=.new.Jso
3aa60 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 24 6e 65 77 46 69 nManipulator($contents);..$newFi
3aa80 6c 65 20 3d 20 21 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 3b 0a 0a 0a 20 le.=.!$this->file->exists();....
3aaa0 69 66 20 28 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 20 26 26 20 24 6d 65 74 68 6f 64 if.($this->authConfig.&&.$method
3aac0 20 3d 3d 3d 20 27 61 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 27 29 20 7b 0a 24 6d 65 74 68 .===.'addConfigSetting').{.$meth
3aae0 6f 64 20 3d 20 27 61 64 64 53 75 62 4e 6f 64 65 27 3b 0a 6c 69 73 74 28 24 6d 61 69 6e 4e 6f 64 od.=.'addSubNode';.list($mainNod
3ab00 65 2c 20 24 6e 61 6d 65 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 61 72 67 73 5b 30 e,.$name).=.explode('.',.$args[0
3ab20 5d 2c 20 32 29 3b 0a 24 61 72 67 73 20 3d 20 61 72 72 61 79 28 24 6d 61 69 6e 4e 6f 64 65 2c 20 ],.2);.$args.=.array($mainNode,.
3ab40 24 6e 61 6d 65 2c 20 24 61 72 67 73 5b 31 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 $name,.$args[1]);.}.elseif.($thi
3ab60 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 20 26 26 20 24 6d 65 74 68 6f 64 20 3d 3d 3d 20 27 72 65 s->authConfig.&&.$method.===.'re
3ab80 6d 6f 76 65 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 27 29 20 7b 0a 24 6d 65 74 68 6f 64 20 3d 20 moveConfigSetting').{.$method.=.
3aba0 27 72 65 6d 6f 76 65 53 75 62 4e 6f 64 65 27 3b 0a 6c 69 73 74 28 24 6d 61 69 6e 4e 6f 64 65 2c 'removeSubNode';.list($mainNode,
3abc0 20 24 6e 61 6d 65 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 61 72 67 73 5b 30 5d 2c .$name).=.explode('.',.$args[0],
3abe0 20 32 29 3b 0a 24 61 72 67 73 20 3d 20 61 72 72 61 79 28 24 6d 61 69 6e 4e 6f 64 65 2c 20 24 6e .2);.$args.=.array($mainNode,.$n
3ac00 61 6d 65 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 ame);.}....if.(call_user_func_ar
3ac20 72 61 79 28 61 72 72 61 79 28 24 6d 61 6e 69 70 75 6c 61 74 6f 72 2c 20 24 6d 65 74 68 6f 64 29 ray(array($manipulator,.$method)
3ac40 2c 20 24 61 72 67 73 29 29 20 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 ,.$args)).{.file_put_contents($t
3ac60 68 69 73 2d 3e 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 24 6d 61 6e 69 70 75 6c 61 74 his->file->getPath(),.$manipulat
3ac80 6f 72 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 or->getContents());.}.else.{...$
3aca0 63 6f 6e 66 69 67 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 24 74 config.=.$this->file->read();.$t
3acc0 68 69 73 2d 3e 61 72 72 61 79 55 6e 73 68 69 66 74 52 65 66 28 24 61 72 67 73 2c 20 24 63 6f 6e his->arrayUnshiftRef($args,.$con
3ace0 66 69 67 29 3b 0a 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 24 66 61 6c 6c fig);.call_user_func_array($fall
3ad00 62 61 63 6b 2c 20 24 61 72 67 73 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 77 72 69 74 65 back,.$args);.$this->file->write
3ad20 28 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 69 66 20 28 24 6e 65 77 46 69 6c 65 29 20 7b 0a 53 69 ($config);.}..if.($newFile).{.Si
3ad40 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 63 68 6d 6f 64 27 2c 20 24 74 68 69 73 2d 3e 66 69 6c lencer::call('chmod',.$this->fil
3ad60 65 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 30 36 30 30 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a e->getPath(),.0600);.}.}........
3ad80 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 72 72 61 79 55 6e 73 68 69 66 74 52 65 .private.function.arrayUnshiftRe
3ada0 66 28 26 24 61 72 72 61 79 2c 20 26 24 76 61 6c 75 65 29 0a 7b 0a 24 72 65 74 75 72 6e 20 3d 20 f(&$array,.&$value).{.$return.=.
3adc0 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 61 72 72 61 79 2c 20 27 27 29 3b 0a 24 61 72 72 61 array_unshift($array,.'');.$arra
3ade0 79 5b 30 5d 20 3d 20 26 24 76 61 6c 75 65 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 74 75 72 6e 3b y[0].=.&$value;..return.$return;
3ae00 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 .}.}.<?php............namespace.
3ae20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 73 6f 6c 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c Composer\Console;..use.Composer\
3ae40 55 74 69 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c Util\Platform;.use.Composer\Util
3ae60 5c 53 69 6c 65 6e 63 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 \Silencer;.use.Symfony\Component
3ae80 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 20 61 73 20 42 61 73 65 41 70 70 6c \Console\Application.as.BaseAppl
3aea0 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 ication;.use.Symfony\Component\C
3aec0 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 onsole\Input\InputInterface;.use
3aee0 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 .Symfony\Component\Console\Input
3af00 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e \InputOption;.use.Symfony\Compon
3af20 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 ent\Console\Output\OutputInterfa
3af40 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c ce;.use.Symfony\Component\Consol
3af60 65 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 e\Output\ConsoleOutput;.use.Symf
3af80 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c ony\Component\Console\Formatter\
3afa0 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f OutputFormatter;.use.Composer\Co
3afc0 6d 6d 61 6e 64 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 mmand;.use.Composer\Composer;.us
3afe0 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 e.Composer\Factory;.use.Composer
3b000 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f \IO\IOInterface;.use.Composer\IO
3b020 5c 43 6f 6e 73 6f 6c 65 49 4f 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 \ConsoleIO;.use.Composer\Json\Js
3b040 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f onValidationException;.use.Compo
3b060 73 65 72 5c 55 74 69 6c 5c 45 72 72 6f 72 48 61 6e 64 6c 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 ser\Util\ErrorHandler;.........c
3b080 6c 61 73 73 20 41 70 70 6c 69 63 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 42 61 73 65 41 70 70 lass.Application.extends.BaseApp
3b0a0 6c 69 63 61 74 69 6f 6e 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6d 70 6f 73 65 lication.{....protected.$compose
3b0c0 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 70 72 69 76 61 74 65 20 73 r;.....protected.$io;..private.s
3b0e0 74 61 74 69 63 20 24 6c 6f 67 6f 20 3d 20 27 20 20 20 5f 5f 5f 5f 5f 5f 0a 20 20 2f 20 5f 5f 5f tatic.$logo.=.'...______.../.___
3b100 5f 2f 5f 5f 5f 20 20 5f 5f 5f 5f 20 5f 5f 5f 20 20 5f 5f 5f 5f 20 20 5f 5f 5f 5f 20 20 5f 5f 5f _/___..____.___..____..____..___
3b120 5f 5f 5f 5f 5f 20 20 5f 5f 5f 5f 5f 0a 20 2f 20 2f 20 20 20 2f 20 5f 5f 20 5c 2f 20 5f 5f 20 60 _____.._____.././.../.__.\/.__.`
3b140 5f 5f 20 5c 2f 20 5f 5f 20 5c 2f 20 5f 5f 20 5c 2f 20 5f 5f 5f 2f 20 5f 20 5c 2f 20 5f 5f 5f 2f __.\/.__.\/.__.\/.___/._.\/.___/
3b160 0a 2f 20 2f 5f 5f 5f 2f 20 2f 5f 2f 20 2f 20 2f 20 2f 20 2f 20 2f 20 2f 20 2f 5f 2f 20 2f 20 2f ././___/./_/./././././././_/././
3b180 5f 2f 20 28 5f 5f 20 20 29 20 20 5f 5f 2f 20 2f 0a 5c 5f 5f 5f 5f 2f 5c 5f 5f 5f 5f 2f 5f 2f 20 _/.(__..)..__/./.\____/\____/_/.
3b1a0 2f 5f 2f 20 2f 5f 2f 20 2e 5f 5f 5f 2f 5c 5f 5f 5f 5f 2f 5f 5f 5f 5f 2f 5c 5f 5f 5f 2f 5f 2f 0a /_/./_/..___/\____/____/\___/_/.
3b1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 5f 2f 0a 27 3b 0a 0a 70 75 62 6c ..................../_/.';..publ
3b1e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 73 74 61 74 ic.function.__construct().{.stat
3b200 69 63 20 24 73 68 75 74 64 6f 77 6e 52 65 67 69 73 74 65 72 65 64 20 3d 20 66 61 6c 73 65 3b 0a ic.$shutdownRegistered.=.false;.
3b220 0a 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 69 6e 69 5f 73 65 74 27 29 20 .if.(function_exists('ini_set').
3b240 26 26 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 78 64 65 62 75 67 27 29 29 20 7b &&.extension_loaded('xdebug')).{
3b260 0a 69 6e 69 5f 73 65 74 28 27 78 64 65 62 75 67 2e 73 68 6f 77 5f 65 78 63 65 70 74 69 6f 6e 5f .ini_set('xdebug.show_exception_
3b280 74 72 61 63 65 27 2c 20 66 61 6c 73 65 29 3b 0a 69 6e 69 5f 73 65 74 28 27 78 64 65 62 75 67 2e trace',.false);.ini_set('xdebug.
3b2a0 73 63 72 65 61 6d 27 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 66 75 6e 63 74 69 6f 6e scream',.false);.}..if.(function
3b2c0 5f 65 78 69 73 74 73 28 27 64 61 74 65 5f 64 65 66 61 75 6c 74 5f 74 69 6d 65 7a 6f 6e 65 5f 73 _exists('date_default_timezone_s
3b2e0 65 74 27 29 20 26 26 20 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 64 61 74 65 5f 64 65 et').&&.function_exists('date_de
3b300 66 61 75 6c 74 5f 74 69 6d 65 7a 6f 6e 65 5f 67 65 74 27 29 29 20 7b 0a 64 61 74 65 5f 64 65 66 fault_timezone_get')).{.date_def
3b320 61 75 6c 74 5f 74 69 6d 65 7a 6f 6e 65 5f 73 65 74 28 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c ault_timezone_set(Silencer::call
3b340 28 27 64 61 74 65 5f 64 65 66 61 75 6c 74 5f 74 69 6d 65 7a 6f 6e 65 5f 67 65 74 27 29 29 3b 0a ('date_default_timezone_get'));.
3b360 7d 0a 0a 69 66 20 28 21 24 73 68 75 74 64 6f 77 6e 52 65 67 69 73 74 65 72 65 64 29 20 7b 0a 24 }..if.(!$shutdownRegistered).{.$
3b380 73 68 75 74 64 6f 77 6e 52 65 67 69 73 74 65 72 65 64 20 3d 20 74 72 75 65 3b 0a 0a 72 65 67 69 shutdownRegistered.=.true;..regi
3b3a0 73 74 65 72 5f 73 68 75 74 64 6f 77 6e 5f 66 75 6e 63 74 69 6f 6e 28 66 75 6e 63 74 69 6f 6e 20 ster_shutdown_function(function.
3b3c0 28 29 20 7b 0a 24 6c 61 73 74 45 72 72 6f 72 20 3d 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 74 ().{.$lastError.=.error_get_last
3b3e0 28 29 3b 0a 0a 69 66 20 28 24 6c 61 73 74 45 72 72 6f 72 20 26 26 20 24 6c 61 73 74 45 72 72 6f ();..if.($lastError.&&.$lastErro
3b400 72 5b 27 6d 65 73 73 61 67 65 27 5d 20 26 26 0a 28 73 74 72 70 6f 73 28 24 6c 61 73 74 45 72 72 r['message'].&&.(strpos($lastErr
3b420 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 2c 20 27 41 6c 6c 6f 77 65 64 20 6d 65 6d 6f 72 79 27 29 or['message'],.'Allowed.memory')
3b440 20 21 3d 3d 20 66 61 6c 73 65 20 20 7c 7c 0a 73 74 72 70 6f 73 28 24 6c 61 73 74 45 72 72 6f 72 .!==.false..||.strpos($lastError
3b460 5b 27 6d 65 73 73 61 67 65 27 5d 2c 20 27 65 78 63 65 65 64 65 64 20 6d 65 6d 6f 72 79 27 29 20 ['message'],.'exceeded.memory').
3b480 21 3d 3d 20 66 61 6c 73 65 20 29 29 20 7b 0a 65 63 68 6f 20 22 5c 6e 22 2e 20 27 43 68 65 63 6b !==.false.)).{.echo."\n"..'Check
3b4a0 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 61 72 74 .https://getcomposer.org/doc/art
3b4c0 69 63 6c 65 73 2f 74 72 6f 75 62 6c 65 73 68 6f 6f 74 69 6e 67 2e 6d 64 23 6d 65 6d 6f 72 79 2d icles/troubleshooting.md#memory-
3b4e0 6c 69 6d 69 74 2d 65 72 72 6f 72 73 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 20 6f 6e 20 68 6f limit-errors.for.more.info.on.ho
3b500 77 20 74 6f 20 68 61 6e 64 6c 65 20 6f 75 74 20 6f 66 20 6d 65 6d 6f 72 79 20 65 72 72 6f 72 73 w.to.handle.out.of.memory.errors
3b520 2e 27 3b 0a 7d 0a 7d 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 .';.}.});.}..parent::__construct
3b540 28 27 43 6f 6d 70 6f 73 65 72 27 2c 20 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 29 3b ('Composer',.Composer::VERSION);
3b560 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 49 6e 70 75 74 .}.....public.function.run(Input
3b580 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 20 3d 20 6e 75 6c 6c 2c 20 4f 75 74 70 75 74 49 Interface.$input.=.null,.OutputI
3b5a0 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e nterface.$output.=.null).{.if.(n
3b5c0 75 6c 6c 20 3d 3d 3d 20 24 6f 75 74 70 75 74 29 20 7b 0a 24 73 74 79 6c 65 73 20 3d 20 46 61 63 ull.===.$output).{.$styles.=.Fac
3b5e0 74 6f 72 79 3a 3a 63 72 65 61 74 65 41 64 64 69 74 69 6f 6e 61 6c 53 74 79 6c 65 73 28 29 3b 0a tory::createAdditionalStyles();.
3b600 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 $formatter.=.new.OutputFormatter
3b620 28 6e 75 6c 6c 2c 20 24 73 74 79 6c 65 73 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 43 (null,.$styles);.$output.=.new.C
3b640 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 28 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 3a 3a 56 45 52 42 onsoleOutput(ConsoleOutput::VERB
3b660 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 6e 75 6c 6c 2c 20 24 66 6f 72 6d 61 74 74 65 72 29 3b OSITY_NORMAL,.null,.$formatter);
3b680 0a 7d 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 72 75 6e 28 24 69 6e 70 75 74 2c 20 24 .}..return.parent::run($input,.$
3b6a0 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 output);.}.....public.function.d
3b6c0 6f 52 75 6e 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 oRun(InputInterface.$input,.Outp
3b6e0 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 69 6f 20 3d 20 24 74 68 utInterface.$output).{.$io.=.$th
3b700 69 73 2d 3e 69 6f 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 49 4f 28 24 69 6e 70 75 74 2c 20 24 is->io.=.new.ConsoleIO($input,.$
3b720 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 29 3b 0a output,.$this->getHelperSet());.
3b740 45 72 72 6f 72 48 61 6e 64 6c 65 72 3a 3a 72 65 67 69 73 74 65 72 28 24 69 6f 29 3b 0a 0a 0a 20 ErrorHandler::register($io);....
3b760 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 20 3d 20 27 27 3b 0a 69 66 20 28 24 6e 61 6d 65 20 3d 20 24 $commandName.=.'';.if.($name.=.$
3b780 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 4e 61 6d 65 28 24 69 6e 70 75 74 29 29 20 7b 0a this->getCommandName($input)).{.
3b7a0 74 72 79 20 7b 0a 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 try.{.$commandName.=.$this->find
3b7c0 28 24 6e 61 6d 65 29 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 49 6e ($name)->getName();.}.catch.(\In
3b7e0 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 7d validArgumentException.$e).{.}.}
3b800 0a 0a 69 66 20 28 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 20 21 3d 3d 20 27 67 6c 6f 62 61 6c 27 29 ..if.($commandName.!==.'global')
3b820 20 7b 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 33 30 32 29 20 7b .{.if.(PHP_VERSION_ID.<.50302).{
3b840 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 43 6f 6d 70 6f .$io->writeError('<warning>Compo
3b860 73 65 72 20 6f 6e 6c 79 20 6f 66 66 69 63 69 61 6c 6c 79 20 73 75 70 70 6f 72 74 73 20 50 48 50 ser.only.officially.supports.PHP
3b880 20 35 2e 33 2e 32 20 61 6e 64 20 61 62 6f 76 65 2c 20 79 6f 75 20 77 69 6c 6c 20 6d 6f 73 74 20 .5.3.2.and.above,.you.will.most.
3b8a0 6c 69 6b 65 6c 79 20 65 6e 63 6f 75 6e 74 65 72 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 79 likely.encounter.problems.with.y
3b8c0 6f 75 72 20 50 48 50 20 27 2e 50 48 50 5f 56 45 52 53 49 4f 4e 2e 27 2c 20 75 70 67 72 61 64 69 our.PHP.'.PHP_VERSION.',.upgradi
3b8e0 6e 67 20 69 73 20 73 74 72 6f 6e 67 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 2e 3c 2f 77 61 72 ng.is.strongly.recommended.</war
3b900 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 ning>');.}..if.(extension_loaded
3b920 28 27 78 64 65 62 75 67 27 29 20 26 26 20 21 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f ('xdebug').&&.!getenv('COMPOSER_
3b940 44 49 53 41 42 4c 45 5f 58 44 45 42 55 47 5f 57 41 52 4e 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 DISABLE_XDEBUG_WARN')).{.$io->wr
3b960 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 59 6f 75 20 61 72 65 20 72 75 6e 6e 69 iteError('<warning>You.are.runni
3b980 6e 67 20 63 6f 6d 70 6f 73 65 72 20 77 69 74 68 20 78 64 65 62 75 67 20 65 6e 61 62 6c 65 64 2e ng.composer.with.xdebug.enabled.
3b9a0 20 54 68 69 73 20 68 61 73 20 61 20 6d 61 6a 6f 72 20 69 6d 70 61 63 74 20 6f 6e 20 72 75 6e 74 .This.has.a.major.impact.on.runt
3b9c0 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 20 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 74 ime.performance..See.https://get
3b9e0 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 78 64 65 62 75 67 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b composer.org/xdebug</warning>');
3ba00 0a 7d 0a 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 43 4f 4d 50 4f 53 45 52 5f 44 45 56 5f 57 41 .}..if.(defined('COMPOSER_DEV_WA
3ba20 52 4e 49 4e 47 5f 54 49 4d 45 27 29 20 26 26 20 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 20 21 3d 3d RNING_TIME').&&.$commandName.!==
3ba40 20 27 73 65 6c 66 2d 75 70 64 61 74 65 27 20 26 26 20 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 20 21 .'self-update'.&&.$commandName.!
3ba60 3d 3d 20 27 73 65 6c 66 75 70 64 61 74 65 27 20 26 26 20 74 69 6d 65 28 29 20 3e 20 43 4f 4d 50 ==.'selfupdate'.&&.time().>.COMP
3ba80 4f 53 45 52 5f 44 45 56 5f 57 41 52 4e 49 4e 47 5f 54 49 4d 45 29 20 7b 0a 24 69 6f 2d 3e 77 72 OSER_DEV_WARNING_TIME).{.$io->wr
3baa0 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 3c 77 61 72 6e 69 6e 67 3e 57 61 72 6e 69 iteError(sprintf('<warning>Warni
3bac0 6e 67 3a 20 54 68 69 73 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 62 75 69 6c 64 20 6f 66 20 63 6f ng:.This.development.build.of.co
3bae0 6d 70 6f 73 65 72 20 69 73 20 6f 76 65 72 20 36 30 20 64 61 79 73 20 6f 6c 64 2e 20 49 74 20 69 mposer.is.over.60.days.old..It.i
3bb00 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 70 64 61 74 65 20 69 74 20 62 79 20 72 75 s.recommended.to.update.it.by.ru
3bb20 6e 6e 69 6e 67 20 22 25 73 20 73 65 6c 66 2d 75 70 64 61 74 65 22 20 74 6f 20 67 65 74 20 74 68 nning."%s.self-update".to.get.th
3bb40 65 20 6c 61 74 65 73 74 20 76 65 72 73 69 6f 6e 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 2c 20 24 5f e.latest.version.</warning>',.$_
3bb60 53 45 52 56 45 52 5b 27 50 48 50 5f 53 45 4c 46 27 5d 29 29 3b 0a 7d 0a 0a 69 66 20 28 67 65 74 SERVER['PHP_SELF']));.}..if.(get
3bb80 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 4e 4f 5f 49 4e 54 45 52 41 43 54 49 4f 4e 27 29 29 20 env('COMPOSER_NO_INTERACTION')).
3bba0 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 66 61 6c 73 65 29 3b {.$input->setInteractive(false);
3bbc0 0a 7d 0a 0a 0a 20 69 66 20 28 24 6e 65 77 57 6f 72 6b 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 67 .}....if.($newWorkDir.=.$this->g
3bbe0 65 74 4e 65 77 57 6f 72 6b 69 6e 67 44 69 72 28 24 69 6e 70 75 74 29 29 20 7b 0a 24 6f 6c 64 57 etNewWorkingDir($input)).{.$oldW
3bc00 6f 72 6b 69 6e 67 44 69 72 20 3d 20 67 65 74 63 77 64 28 29 3b 0a 63 68 64 69 72 28 24 6e 65 77 orkingDir.=.getcwd();.chdir($new
3bc20 57 6f 72 6b 44 69 72 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 43 68 61 6e 67 WorkDir);.$io->writeError('Chang
3bc40 65 64 20 43 57 44 20 74 6f 20 27 20 2e 20 67 65 74 63 77 64 28 29 2c 20 74 72 75 65 2c 20 49 4f ed.CWD.to.'...getcwd(),.true,.IO
3bc60 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 7d 0a 0a 0a 20 24 66 69 6c 65 20 3d 20 Interface::DEBUG);.}....$file.=.
3bc80 46 61 63 74 6f 72 79 3a 3a 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 3b 0a 69 66 20 28 Factory::getComposerFile();.if.(
3bca0 69 73 5f 66 69 6c 65 28 24 66 69 6c 65 29 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 66 is_file($file).&&.is_readable($f
3bcc0 69 6c 65 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6d 70 6f 73 65 72 20 3d 20 6a 73 6f ile).&&.is_array($composer.=.jso
3bce0 6e 5f 64 65 63 6f 64 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 n_decode(file_get_contents($file
3bd00 29 2c 20 74 72 75 65 29 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 ),.true))).{.if.(isset($composer
3bd20 5b 27 73 63 72 69 70 74 73 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6d 70 6f 73 ['scripts']).&&.is_array($compos
3bd40 65 72 5b 27 73 63 72 69 70 74 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 70 er['scripts'])).{.foreach.($comp
3bd60 6f 73 65 72 5b 27 73 63 72 69 70 74 73 27 5d 20 61 73 20 24 73 63 72 69 70 74 20 3d 3e 20 24 64 oser['scripts'].as.$script.=>.$d
3bd80 75 6d 6d 79 29 20 7b 0a 69 66 20 28 21 64 65 66 69 6e 65 64 28 27 43 6f 6d 70 6f 73 65 72 5c 53 ummy).{.if.(!defined('Composer\S
3bda0 63 72 69 70 74 5c 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 27 2e 73 74 72 5f 72 65 70 6c 61 63 cript\ScriptEvents::'.str_replac
3bdc0 65 28 27 2d 27 2c 20 27 5f 27 2c 20 73 74 72 74 6f 75 70 70 65 72 28 24 73 63 72 69 70 74 29 29 e('-',.'_',.strtoupper($script))
3bde0 29 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 28 24 73 63 72 69 70 74 29 29 20 7b 0a )).{.if.($this->has($script)).{.
3be00 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 41 20 73 63 72 69 $io->writeError('<warning>A.scri
3be20 70 74 20 6e 61 6d 65 64 20 27 2e 24 73 63 72 69 70 74 2e 27 20 77 6f 75 6c 64 20 6f 76 65 72 72 pt.named.'.$script.'.would.overr
3be40 69 64 65 20 61 20 6e 61 74 69 76 65 20 43 6f 6d 70 6f 73 65 72 20 66 75 6e 63 74 69 6f 6e 20 61 ide.a.native.Composer.function.a
3be60 6e 64 20 68 61 73 20 62 65 65 6e 20 73 6b 69 70 70 65 64 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b nd.has.been.skipped</warning>');
3be80 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 28 6e 65 77 20 43 6f 6d 6d 61 6e 64 .}.else.{.$this->add(new.Command
3bea0 5c 53 63 72 69 70 74 41 6c 69 61 73 43 6f 6d 6d 61 6e 64 28 24 73 63 72 69 70 74 29 29 3b 0a 7d \ScriptAliasCommand($script));.}
3bec0 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 68 61 .}.}.}.}.}..try.{.if.($input->ha
3bee0 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d 2d 70 72 6f 66 69 6c 65 27 29 29 20 7b sParameterOption('--profile')).{
3bf00 0a 24 73 74 61 72 74 54 69 6d 65 20 3d 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 3b 0a 24 .$startTime.=.microtime(true);.$
3bf20 74 68 69 73 2d 3e 69 6f 2d 3e 65 6e 61 62 6c 65 44 65 62 75 67 67 69 6e 67 28 24 73 74 61 72 74 this->io->enableDebugging($start
3bf40 54 69 6d 65 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 70 61 72 65 6e 74 3a 3a 64 6f 52 75 Time);.}..$result.=.parent::doRu
3bf60 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 n($input,.$output);..if.(isset($
3bf80 6f 6c 64 57 6f 72 6b 69 6e 67 44 69 72 29 29 20 7b 0a 63 68 64 69 72 28 24 6f 6c 64 57 6f 72 6b oldWorkingDir)).{.chdir($oldWork
3bfa0 69 6e 67 44 69 72 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 74 61 72 74 54 69 6d 65 ingDir);.}..if.(isset($startTime
3bfc0 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 4d 65 6d 6f )).{.$io->writeError('<info>Memo
3bfe0 72 79 20 75 73 61 67 65 3a 20 27 2e 72 6f 75 6e 64 28 6d 65 6d 6f 72 79 5f 67 65 74 5f 75 73 61 ry.usage:.'.round(memory_get_usa
3c000 67 65 28 29 20 2f 20 31 30 32 34 20 2f 20 31 30 32 34 2c 20 32 29 2e 27 4d 42 20 28 70 65 61 6b ge()./.1024./.1024,.2).'MB.(peak
3c020 3a 20 27 2e 72 6f 75 6e 64 28 6d 65 6d 6f 72 79 5f 67 65 74 5f 70 65 61 6b 5f 75 73 61 67 65 28 :.'.round(memory_get_peak_usage(
3c040 29 20 2f 20 31 30 32 34 20 2f 20 31 30 32 34 2c 20 32 29 2e 27 4d 42 29 2c 20 74 69 6d 65 3a 20 )./.1024./.1024,.2).'MB),.time:.
3c060 27 2e 72 6f 75 6e 64 28 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 20 2d 20 24 73 74 61 72 74 '.round(microtime(true).-.$start
3c080 54 69 6d 65 2c 20 32 29 2e 27 73 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 Time,.2).'s');.}..return.$result
3c0a0 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 ;.}.catch.(\Exception.$e).{.$thi
3c0c0 73 2d 3e 68 69 6e 74 43 6f 6d 6d 6f 6e 45 72 72 6f 72 73 28 24 65 29 3b 0a 74 68 72 6f 77 20 24 s->hintCommonErrors($e);.throw.$
3c0e0 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 e;.}.}.......private.function.ge
3c100 74 4e 65 77 57 6f 72 6b 69 6e 67 44 69 72 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 tNewWorkingDir(InputInterface.$i
3c120 6e 70 75 74 29 0a 7b 0a 24 77 6f 72 6b 69 6e 67 44 69 72 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 nput).{.$workingDir.=.$input->ge
3c140 74 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 77 6f 72 6b 69 6e tParameterOption(array('--workin
3c160 67 2d 64 69 72 27 2c 20 27 2d 64 27 29 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 77 g-dir',.'-d'));.if.(false.!==.$w
3c180 6f 72 6b 69 6e 67 44 69 72 20 26 26 20 21 69 73 5f 64 69 72 28 24 77 6f 72 6b 69 6e 67 44 69 72 orkingDir.&&.!is_dir($workingDir
3c1a0 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e )).{.throw.new.\RuntimeException
3c1c0 28 27 49 6e 76 61 6c 69 64 20 77 6f 72 6b 69 6e 67 20 64 69 72 65 63 74 6f 72 79 20 73 70 65 63 ('Invalid.working.directory.spec
3c1e0 69 66 69 65 64 2c 20 27 2e 24 77 6f 72 6b 69 6e 67 44 69 72 2e 27 20 64 6f 65 73 20 6e 6f 74 20 ified,.'.$workingDir.'.does.not.
3c200 65 78 69 73 74 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 77 6f 72 6b 69 6e 67 44 69 72 3b exist.');.}..return.$workingDir;
3c220 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 68 69 6e 74 43 6f 6d 6d .}.....private.function.hintComm
3c240 6f 6e 45 72 72 6f 72 73 28 24 65 78 63 65 70 74 69 6f 6e 29 0a 7b 0a 24 69 6f 20 3d 20 24 74 68 onErrors($exception).{.$io.=.$th
3c260 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 53 69 6c 65 6e 63 65 72 3a 3a 73 75 70 70 72 65 73 73 is->getIO();..Silencer::suppress
3c280 28 29 3b 0a 74 72 79 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 ();.try.{.$composer.=.$this->get
3c2a0 43 6f 6d 70 6f 73 65 72 28 66 61 6c 73 65 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 24 63 6f 6d 70 Composer(false,.true);.if.($comp
3c2c0 6f 73 65 72 29 20 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 oser).{.$config.=.$composer->get
3c2e0 43 6f 6e 66 69 67 28 29 3b 0a 0a 24 6d 69 6e 53 70 61 63 65 46 72 65 65 20 3d 20 31 30 32 34 20 Config();..$minSpaceFree.=.1024.
3c300 2a 20 31 30 32 34 3b 0a 69 66 20 28 28 28 24 64 66 20 3d 20 64 69 73 6b 5f 66 72 65 65 5f 73 70 *.1024;.if.((($df.=.disk_free_sp
3c320 61 63 65 28 24 64 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 29 ace($dir.=.$config->get('home'))
3c340 29 20 21 3d 3d 20 66 61 6c 73 65 20 26 26 20 24 64 66 20 3c 20 24 6d 69 6e 53 70 61 63 65 46 72 ).!==.false.&&.$df.<.$minSpaceFr
3c360 65 65 29 0a 7c 7c 20 28 28 24 64 66 20 3d 20 64 69 73 6b 5f 66 72 65 65 5f 73 70 61 63 65 28 24 ee).||.(($df.=.disk_free_space($
3c380 64 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 dir.=.$config->get('vendor-dir')
3c3a0 29 29 20 21 3d 3d 20 66 61 6c 73 65 20 26 26 20 24 64 66 20 3c 20 24 6d 69 6e 53 70 61 63 65 46 )).!==.false.&&.$df.<.$minSpaceF
3c3c0 72 65 65 29 0a 7c 7c 20 28 28 24 64 66 20 3d 20 64 69 73 6b 5f 66 72 65 65 5f 73 70 61 63 65 28 ree).||.(($df.=.disk_free_space(
3c3e0 24 64 69 72 20 3d 20 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 28 29 29 29 20 21 3d 3d 20 $dir.=.sys_get_temp_dir())).!==.
3c400 66 61 6c 73 65 20 26 26 20 24 64 66 20 3c 20 24 6d 69 6e 53 70 61 63 65 46 72 65 65 29 0a 29 20 false.&&.$df.<.$minSpaceFree).).
3c420 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 54 68 65 20 64 69 {.$io->writeError('<error>The.di
3c440 73 6b 20 68 6f 73 74 69 6e 67 20 27 2e 24 64 69 72 2e 27 20 69 73 20 66 75 6c 6c 2c 20 74 68 69 sk.hosting.'.$dir.'.is.full,.thi
3c460 73 20 6d 61 79 20 62 65 20 74 68 65 20 63 61 75 73 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 s.may.be.the.cause.of.the.follow
3c480 69 6e 67 20 65 78 63 65 70 74 69 6f 6e 3c 2f 65 72 72 6f 72 3e 27 2c 20 74 72 75 65 2c 20 49 4f ing.exception</error>',.true,.IO
3c4a0 49 6e 74 65 72 66 61 63 65 3a 3a 51 55 49 45 54 29 3b 0a 7d 0a 7d 0a 7d 20 63 61 74 63 68 20 28 Interface::QUIET);.}.}.}.catch.(
3c4c0 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 53 69 6c 65 6e 63 65 72 3a 3a 72 65 73 \Exception.$e).{.}.Silencer::res
3c4e0 74 6f 72 65 28 29 3b 0a 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 tore();..if.(Platform::isWindows
3c500 28 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 65 78 63 65 70 74 69 6f ().&&.false.!==.strpos($exceptio
3c520 6e 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 27 54 68 65 20 73 79 73 74 65 6d 20 63 61 6e n->getMessage(),.'The.system.can
3c540 6e 6f 74 20 66 69 6e 64 20 74 68 65 20 70 61 74 68 20 73 70 65 63 69 66 69 65 64 27 29 29 20 7b not.find.the.path.specified')).{
3c560 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 54 68 65 20 66 6f 6c .$io->writeError('<error>The.fol
3c580 6c 6f 77 69 6e 67 20 65 78 63 65 70 74 69 6f 6e 20 6d 61 79 20 62 65 20 63 61 75 73 65 64 20 62 lowing.exception.may.be.caused.b
3c5a0 79 20 61 20 73 74 61 6c 65 20 65 6e 74 72 79 20 69 6e 20 79 6f 75 72 20 63 6d 64 2e 65 78 65 20 y.a.stale.entry.in.your.cmd.exe.
3c5c0 41 75 74 6f 52 75 6e 3c 2f 65 72 72 6f 72 3e 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 AutoRun</error>',.true,.IOInterf
3c5e0 61 63 65 3a 3a 51 55 49 45 54 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 ace::QUIET);.$io->writeError('<e
3c600 72 72 6f 72 3e 43 68 65 63 6b 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f rror>Check.https://getcomposer.o
3c620 72 67 2f 64 6f 63 2f 61 72 74 69 63 6c 65 73 2f 74 72 6f 75 62 6c 65 73 68 6f 6f 74 69 6e 67 2e rg/doc/articles/troubleshooting.
3c640 6d 64 23 2d 74 68 65 2d 73 79 73 74 65 6d 2d 63 61 6e 6e 6f 74 2d 66 69 6e 64 2d 74 68 65 2d 70 md#-the-system-cannot-find-the-p
3c660 61 74 68 2d 73 70 65 63 69 66 69 65 64 2d 77 69 6e 64 6f 77 73 2d 20 66 6f 72 20 64 65 74 61 69 ath-specified-windows-.for.detai
3c680 6c 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a ls</error>',.true,.IOInterface::
3c6a0 51 55 49 45 54 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 QUIET);.}..if.(false.!==.strpos(
3c6c0 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 27 66 6f 72 6b 20 $exception->getMessage(),.'fork.
3c6e0 66 61 69 6c 65 64 20 2d 20 43 61 6e 6e 6f 74 20 61 6c 6c 6f 63 61 74 65 20 6d 65 6d 6f 72 79 27 failed.-.Cannot.allocate.memory'
3c700 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 54 68 65 )).{.$io->writeError('<error>The
3c720 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 78 63 65 70 74 69 6f 6e 20 69 73 20 63 61 75 73 65 64 20 62 .following.exception.is.caused.b
3c740 79 20 61 20 6c 61 63 6b 20 6f 66 20 6d 65 6d 6f 72 79 20 61 6e 64 20 6e 6f 74 20 68 61 76 69 6e y.a.lack.of.memory.and.not.havin
3c760 67 20 73 77 61 70 20 63 6f 6e 66 69 67 75 72 65 64 3c 2f 65 72 72 6f 72 3e 27 2c 20 74 72 75 65 g.swap.configured</error>',.true
3c780 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 51 55 49 45 54 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 ,.IOInterface::QUIET);.$io->writ
3c7a0 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 43 68 65 63 6b 20 68 74 74 70 73 3a 2f 2f 67 65 74 eError('<error>Check.https://get
3c7c0 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 61 72 74 69 63 6c 65 73 2f 74 72 6f 75 62 6c composer.org/doc/articles/troubl
3c7e0 65 73 68 6f 6f 74 69 6e 67 2e 6d 64 23 70 72 6f 63 2d 6f 70 65 6e 2d 66 6f 72 6b 2d 66 61 69 6c eshooting.md#proc-open-fork-fail
3c800 65 64 2d 65 72 72 6f 72 73 20 66 6f 72 20 64 65 74 61 69 6c 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 ed-errors.for.details</error>',.
3c820 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 51 55 49 45 54 29 3b 0a 7d 0a 7d 0a 0a true,.IOInterface::QUIET);.}.}..
3c840 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 ......public.function.getCompose
3c860 72 28 24 72 65 71 75 69 72 65 64 20 3d 20 74 72 75 65 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 r($required.=.true,.$disablePlug
3c880 69 6e 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 ins.=.false).{.if.(null.===.$thi
3c8a0 73 2d 3e 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 s->composer).{.try.{.$this->comp
3c8c0 6f 73 65 72 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 28 24 74 68 69 73 2d 3e 69 6f oser.=.Factory::create($this->io
3c8e0 2c 20 6e 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 3b 0a 7d 20 63 61 74 63 ,.null,.$disablePlugins);.}.catc
3c900 68 20 28 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 h.(\InvalidArgumentException.$e)
3c920 20 7b 0a 69 66 20 28 24 72 65 71 75 69 72 65 64 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 .{.if.($required).{.$this->io->w
3c940 72 69 74 65 45 72 72 6f 72 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 65 78 69 riteError($e->getMessage());.exi
3c960 74 28 31 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 t(1);.}.}.catch.(JsonValidationE
3c980 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 65 72 72 6f 72 73 20 3d 20 27 20 2d 20 27 20 2e xception.$e).{.$errors.=.'.-.'..
3c9a0 20 69 6d 70 6c 6f 64 65 28 50 48 50 5f 45 4f 4c 20 2e 20 27 20 2d 20 27 2c 20 24 65 2d 3e 67 65 .implode(PHP_EOL...'.-.',.$e->ge
3c9c0 74 45 72 72 6f 72 73 28 29 29 3b 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 65 2d 3e 67 65 74 4d 65 tErrors());.$message.=.$e->getMe
3c9e0 73 73 61 67 65 28 29 20 2e 20 27 3a 27 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 24 65 72 72 6f 72 ssage()...':'...PHP_EOL...$error
3ca00 73 3b 0a 74 68 72 6f 77 20 6e 65 77 20 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 s;.throw.new.JsonValidationExcep
3ca20 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 tion($message);.}.}..return.$thi
3ca40 73 2d 3e 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 s->composer;.}.....public.functi
3ca60 6f 6e 20 72 65 73 65 74 43 6f 6d 70 6f 73 65 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 on.resetComposer().{.$this->comp
3ca80 6f 73 65 72 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 oser.=.null;.}.....public.functi
3caa0 6f 6e 20 67 65 74 49 4f 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6f 3b 0a 7d on.getIO().{.return.$this->io;.}
3cac0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 28 29 0a 7b 0a 72 65 ..public.function.getHelp().{.re
3cae0 74 75 72 6e 20 73 65 6c 66 3a 3a 24 6c 6f 67 6f 20 2e 20 70 61 72 65 6e 74 3a 3a 67 65 74 48 65 turn.self::$logo...parent::getHe
3cb00 6c 70 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 lp();.}.....protected.function.g
3cb20 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 73 28 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 73 20 etDefaultCommands().{.$commands.
3cb40 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 70 61 72 65 6e 74 3a 3a 67 65 74 44 65 66 61 75 6c 74 =.array_merge(parent::getDefault
3cb60 43 6f 6d 6d 61 6e 64 73 28 29 2c 20 61 72 72 61 79 28 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 41 Commands(),.array(.new.Command\A
3cb80 62 6f 75 74 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 43 6f 6e 66 69 boutCommand(),.new.Command\Confi
3cba0 67 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 44 65 70 65 6e 64 73 43 gCommand(),.new.Command\DependsC
3cbc0 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 50 72 6f 68 69 62 69 74 73 43 ommand(),.new.Command\ProhibitsC
3cbe0 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 49 6e 69 74 43 6f 6d 6d 61 6e ommand(),.new.Command\InitComman
3cc00 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 49 6e 73 74 61 6c 6c 43 6f 6d 6d 61 6e 64 28 d(),.new.Command\InstallCommand(
3cc20 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 43 72 65 61 74 65 50 72 6f 6a 65 63 74 43 6f 6d 6d ),.new.Command\CreateProjectComm
3cc40 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 and(),.new.Command\UpdateCommand
3cc60 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 53 65 61 72 63 68 43 6f 6d 6d 61 6e 64 28 29 2c (),.new.Command\SearchCommand(),
3cc80 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 56 61 6c 69 64 61 74 65 43 6f 6d 6d 61 6e 64 28 29 2c 0a .new.Command\ValidateCommand(),.
3cca0 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 53 68 6f 77 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 new.Command\ShowCommand(),.new.C
3ccc0 6f 6d 6d 61 6e 64 5c 53 75 67 67 65 73 74 73 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f ommand\SuggestsCommand(),.new.Co
3cce0 6d 6d 61 6e 64 5c 52 65 71 75 69 72 65 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d mmand\RequireCommand(),.new.Comm
3cd00 61 6e 64 5c 44 75 6d 70 41 75 74 6f 6c 6f 61 64 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 and\DumpAutoloadCommand(),.new.C
3cd20 6f 6d 6d 61 6e 64 5c 53 74 61 74 75 73 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d ommand\StatusCommand(),.new.Comm
3cd40 61 6e 64 5c 41 72 63 68 69 76 65 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e and\ArchiveCommand(),.new.Comman
3cd60 64 5c 44 69 61 67 6e 6f 73 65 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 d\DiagnoseCommand(),.new.Command
3cd80 5c 52 75 6e 53 63 72 69 70 74 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 \RunScriptCommand(),.new.Command
3cda0 5c 4c 69 63 65 6e 73 65 73 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c \LicensesCommand(),.new.Command\
3cdc0 47 6c 6f 62 61 6c 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 43 6c 65 GlobalCommand(),.new.Command\Cle
3cde0 61 72 43 61 63 68 65 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 52 65 arCacheCommand(),.new.Command\Re
3ce00 6d 6f 76 65 43 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 48 6f 6d 65 43 moveCommand(),.new.Command\HomeC
3ce20 6f 6d 6d 61 6e 64 28 29 2c 0a 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 45 78 65 63 43 6f 6d 6d 61 6e ommand(),.new.Command\ExecComman
3ce40 64 28 29 2c 0a 29 29 3b 0a 0a 69 66 20 28 27 70 68 61 72 3a 27 20 3d 3d 3d 20 73 75 62 73 74 72 d(),.));..if.('phar:'.===.substr
3ce60 28 5f 5f 46 49 4c 45 5f 5f 2c 20 30 2c 20 35 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 (__FILE__,.0,.5)).{.$commands[].
3ce80 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 53 65 6c 66 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 28 =.new.Command\SelfUpdateCommand(
3cea0 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 );.}..return.$commands;.}.....pu
3cec0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f 6e 28 29 0a 7b blic.function.getLongVersion().{
3cee0 0a 69 66 20 28 43 6f 6d 70 6f 73 65 72 3a 3a 42 52 41 4e 43 48 5f 41 4c 49 41 53 5f 56 45 52 53 .if.(Composer::BRANCH_ALIAS_VERS
3cf00 49 4f 4e 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 0a 27 3c 69 6e 66 6f 3e 25 73 ION).{.return.sprintf(.'<info>%s
3cf20 3c 2f 69 6e 66 6f 3e 20 76 65 72 73 69 6f 6e 20 3c 63 6f 6d 6d 65 6e 74 3e 25 73 20 28 25 73 29 </info>.version.<comment>%s.(%s)
3cf40 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 25 73 27 2c 0a 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 </comment>.%s',.$this->getName()
3cf60 2c 0a 43 6f 6d 70 6f 73 65 72 3a 3a 42 52 41 4e 43 48 5f 41 4c 49 41 53 5f 56 45 52 53 49 4f 4e ,.Composer::BRANCH_ALIAS_VERSION
3cf80 2c 0a 24 74 68 69 73 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 0a 43 6f 6d 70 6f 73 65 72 3a ,.$this->getVersion(),.Composer:
3cfa0 3a 52 45 4c 45 41 53 45 5f 44 41 54 45 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e :RELEASE_DATE.);.}..return.paren
3cfc0 74 3a 3a 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f 6e 28 29 20 2e 20 27 20 27 20 2e 20 43 6f 6d 70 t::getLongVersion()...'.'...Comp
3cfe0 6f 73 65 72 3a 3a 52 45 4c 45 41 53 45 5f 44 41 54 45 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 oser::RELEASE_DATE;.}.....protec
3d000 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 49 6e 70 75 74 44 65 66 69 ted.function.getDefaultInputDefi
3d020 6e 69 74 69 6f 6e 28 29 0a 7b 0a 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 70 61 72 65 6e 74 3a nition().{.$definition.=.parent:
3d040 3a 67 65 74 44 65 66 61 75 6c 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 24 64 :getDefaultInputDefinition();.$d
3d060 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 4f 70 74 69 6f 6e 28 6e 65 77 20 49 6e 70 75 74 4f 70 efinition->addOption(new.InputOp
3d080 74 69 6f 6e 28 27 2d 2d 70 72 6f 66 69 6c 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 tion('--profile',.null,.InputOpt
3d0a0 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 70 6c 61 79 20 74 69 6d 69 6e 67 ion::VALUE_NONE,.'Display.timing
3d0c0 20 61 6e 64 20 6d 65 6d 6f 72 79 20 75 73 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 29 .and.memory.usage.information'))
3d0e0 3b 0a 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 4f 70 74 69 6f 6e 28 6e 65 77 20 49 6e 70 ;.$definition->addOption(new.Inp
3d100 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 77 6f 72 6b 69 6e 67 2d 64 69 72 27 2c 20 27 2d 64 27 2c 20 utOption('--working-dir',.'-d',.
3d120 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 49 66 InputOption::VALUE_REQUIRED,.'If
3d140 20 73 70 65 63 69 66 69 65 64 2c 20 75 73 65 20 74 68 65 20 67 69 76 65 6e 20 64 69 72 65 63 74 .specified,.use.the.given.direct
3d160 6f 72 79 20 61 73 20 77 6f 72 6b 69 6e 67 20 64 69 72 65 63 74 6f 72 79 2e 27 29 29 3b 0a 0a 72 ory.as.working.directory.'));..r
3d180 65 74 75 72 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a eturn.$definition;.}.}.<?php....
3d1a0 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 73 6f ........namespace.Composer\Conso
3d1c0 6c 65 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f le;..use.Symfony\Component\Conso
3d1e0 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a le\Formatter\OutputFormatter;...
3d200 0a 0a 63 6c 61 73 73 20 48 74 6d 6c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 20 65 78 74 65 ..class.HtmlOutputFormatter.exte
3d220 6e 64 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 nds.OutputFormatter.{.private.st
3d240 61 74 69 63 20 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 20 atic.$availableForegroundColors.
3d260 3d 20 61 72 72 61 79 28 0a 33 30 20 3d 3e 20 27 62 6c 61 63 6b 27 2c 0a 33 31 20 3d 3e 20 27 72 =.array(.30.=>.'black',.31.=>.'r
3d280 65 64 27 2c 0a 33 32 20 3d 3e 20 27 67 72 65 65 6e 27 2c 0a 33 33 20 3d 3e 20 27 79 65 6c 6c 6f ed',.32.=>.'green',.33.=>.'yello
3d2a0 77 27 2c 0a 33 34 20 3d 3e 20 27 62 6c 75 65 27 2c 0a 33 35 20 3d 3e 20 27 6d 61 67 65 6e 74 61 w',.34.=>.'blue',.35.=>.'magenta
3d2c0 27 2c 0a 33 36 20 3d 3e 20 27 63 79 61 6e 27 2c 0a 33 37 20 3d 3e 20 27 77 68 69 74 65 27 2c 0a ',.36.=>.'cyan',.37.=>.'white',.
3d2e0 29 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 61 76 61 69 6c 61 62 6c 65 42 61 63 6b );.private.static.$availableBack
3d300 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 20 3d 20 61 72 72 61 79 28 0a 34 30 20 3d 3e 20 27 62 6c 61 groundColors.=.array(.40.=>.'bla
3d320 63 6b 27 2c 0a 34 31 20 3d 3e 20 27 72 65 64 27 2c 0a 34 32 20 3d 3e 20 27 67 72 65 65 6e 27 2c ck',.41.=>.'red',.42.=>.'green',
3d340 0a 34 33 20 3d 3e 20 27 79 65 6c 6c 6f 77 27 2c 0a 34 34 20 3d 3e 20 27 62 6c 75 65 27 2c 0a 34 .43.=>.'yellow',.44.=>.'blue',.4
3d360 35 20 3d 3e 20 27 6d 61 67 65 6e 74 61 27 2c 0a 34 36 20 3d 3e 20 27 63 79 61 6e 27 2c 0a 34 37 5.=>.'magenta',.46.=>.'cyan',.47
3d380 20 3d 3e 20 27 77 68 69 74 65 27 2c 0a 29 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 .=>.'white',.);.private.static.$
3d3a0 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 0a 31 20 3d 3e 20 27 availableOptions.=.array(.1.=>.'
3d3c0 62 6f 6c 64 27 2c 0a 34 20 3d 3e 20 27 75 6e 64 65 72 73 63 6f 72 65 27 2c 0a 0a 20 0a 20 0a 20 bold',.4.=>.'underscore',.......
3d3e0 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 );.....public.function.__constru
3d400 63 74 28 61 72 72 61 79 20 24 73 74 79 6c 65 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 70 61 ct(array.$styles.=.array()).{.pa
3d420 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 74 72 75 65 2c 20 24 73 74 79 6c 65 73 29 rent::__construct(true,.$styles)
3d440 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 28 24 6d 65 73 ;.}..public.function.format($mes
3d460 73 61 67 65 29 0a 7b 0a 24 66 6f 72 6d 61 74 74 65 64 20 3d 20 70 61 72 65 6e 74 3a 3a 66 6f 72 sage).{.$formatted.=.parent::for
3d480 6d 61 74 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 24 63 6c 65 61 72 45 73 63 61 70 65 43 6f 64 65 mat($message);..$clearEscapeCode
3d4a0 73 20 3d 20 27 28 3f 3a 33 39 7c 34 39 7c 30 7c 32 32 7c 32 34 7c 32 35 7c 32 37 7c 32 38 29 27 s.=.'(?:39|49|0|22|24|25|27|28)'
3d4c0 3b 0a 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 ;..return.preg_replace_callback(
3d4e0 22 7b 5c 30 33 33 5c 5b 28 5b 30 2d 39 3b 5d 2b 29 6d 28 2e 2a 3f 29 5c 30 33 33 5c 5b 28 3f 3a "{\033\[([0-9;]+)m(.*?)\033\[(?:
3d500 22 2e 24 63 6c 65 61 72 45 73 63 61 70 65 43 6f 64 65 73 2e 22 3b 29 2a 3f 22 2e 24 63 6c 65 61 ".$clearEscapeCodes.";)*?".$clea
3d520 72 45 73 63 61 70 65 43 6f 64 65 73 2e 22 6d 7d 73 22 2c 20 61 72 72 61 79 28 24 74 68 69 73 2c rEscapeCodes."m}s",.array($this,
3d540 20 27 66 6f 72 6d 61 74 48 74 6d 6c 27 29 2c 20 24 66 6f 72 6d 61 74 74 65 64 29 3b 0a 7d 0a 0a .'formatHtml'),.$formatted);.}..
3d560 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 48 74 6d 6c 28 24 6d 61 74 private.function.formatHtml($mat
3d580 63 68 65 73 29 0a 7b 0a 24 6f 75 74 20 3d 20 27 3c 73 70 61 6e 20 73 74 79 6c 65 3d 22 27 3b 0a ches).{.$out.=.'<span.style="';.
3d5a0 66 6f 72 65 61 63 68 20 28 65 78 70 6c 6f 64 65 28 27 3b 27 2c 20 24 6d 61 74 63 68 65 73 5b 31 foreach.(explode(';',.$matches[1
3d5c0 5d 29 20 61 73 20 24 63 6f 64 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 ]).as.$code).{.if.(isset(self::$
3d5e0 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 64 65 5d availableForegroundColors[$code]
3d600 29 29 20 7b 0a 24 6f 75 74 20 2e 3d 20 27 63 6f 6c 6f 72 3a 27 2e 73 65 6c 66 3a 3a 24 61 76 61 )).{.$out..=.'color:'.self::$ava
3d620 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 64 65 5d 2e 27 3b ilableForegroundColors[$code].';
3d640 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 61 76 61 69 6c 61 ';.}.elseif.(isset(self::$availa
3d660 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 64 65 5d 29 29 20 7b 0a 24 bleBackgroundColors[$code])).{.$
3d680 6f 75 74 20 2e 3d 20 27 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 27 2e 73 65 6c 66 3a out..=.'background-color:'.self:
3d6a0 3a 24 61 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 64 :$availableBackgroundColors[$cod
3d6c0 65 5d 2e 27 3b 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 61 e].';';.}.elseif.(isset(self::$a
3d6e0 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 63 6f 64 65 5d 29 29 20 7b 0a 73 77 69 74 63 vailableOptions[$code])).{.switc
3d700 68 20 28 73 65 6c 66 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 63 6f 64 65 h.(self::$availableOptions[$code
3d720 5d 29 20 7b 0a 63 61 73 65 20 27 62 6f 6c 64 27 3a 0a 24 6f 75 74 20 2e 3d 20 27 66 6f 6e 74 2d ]).{.case.'bold':.$out..=.'font-
3d740 77 65 69 67 68 74 3a 62 6f 6c 64 3b 27 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 75 6e 64 weight:bold;';.break;..case.'und
3d760 65 72 73 63 6f 72 65 27 3a 0a 24 6f 75 74 20 2e 3d 20 27 74 65 78 74 2d 64 65 63 6f 72 61 74 69 erscore':.$out..=.'text-decorati
3d780 6f 6e 3a 75 6e 64 65 72 6c 69 6e 65 3b 27 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 on:underline;';.break;.}.}.}..re
3d7a0 74 75 72 6e 20 24 6f 75 74 2e 27 22 3e 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 2e 27 3c 2f 73 70 turn.$out.'">'.$matches[2].'</sp
3d7c0 61 6e 3e 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 an>';.}.}.<?php............names
3d7e0 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 pace.Composer\DependencyResolver
3d800 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 63 69 73 69 6f 6e 73 20 69 6d 70 6c 65 6d 65 6e ;.......class.Decisions.implemen
3d820 74 73 20 5c 49 74 65 72 61 74 6f 72 2c 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a 63 6f 6e 73 74 ts.\Iterator,.\Countable.{.const
3d840 20 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 44 45 43 .DECISION_LITERAL.=.0;.const.DEC
3d860 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 20 3d 20 31 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f ISION_REASON.=.1;..protected.$po
3d880 6f 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 63 69 73 69 6f 6e 4d 61 70 3b 0a 70 72 6f 74 ol;.protected.$decisionMap;.prot
3d8a0 65 63 74 65 64 20 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 3d 20 61 72 72 61 79 28 29 3b 0a ected.$decisionQueue.=.array();.
3d8c0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 6f .public.function.__construct($po
3d8e0 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 24 74 68 69 73 ol).{.$this->pool.=.$pool;.$this
3d900 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c ->decisionMap.=.array();.}..publ
3d920 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 64 65 28 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 ic.function.decide($literal,.$le
3d940 76 65 6c 2c 20 24 77 68 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 44 65 63 69 73 69 6f 6e 28 vel,.$why).{.$this->addDecision(
3d960 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 29 3b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 $literal,.$level);.$this->decisi
3d980 6f 6e 51 75 65 75 65 5b 5d 20 3d 20 61 72 72 61 79 28 0a 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f onQueue[].=.array(.self::DECISIO
3d9a0 4e 5f 4c 49 54 45 52 41 4c 20 3d 3e 20 24 6c 69 74 65 72 61 6c 2c 0a 73 65 6c 66 3a 3a 44 45 43 N_LITERAL.=>.$literal,.self::DEC
3d9c0 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 20 3d 3e 20 24 77 68 79 2c 0a 29 3b 0a 7d 0a 0a 70 75 62 6c ISION_REASON.=>.$why,.);.}..publ
3d9e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 61 74 69 73 66 79 28 24 6c 69 74 65 72 61 6c 29 0a 7b 0a ic.function.satisfy($literal).{.
3da00 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 72 65 74 $packageId.=.abs($literal);..ret
3da20 75 72 6e 20 28 0a 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 26 26 20 69 73 73 65 74 28 24 74 68 69 urn.(.$literal.>.0.&&.isset($thi
3da40 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 20 26 26 20 24 s->decisionMap[$packageId]).&&.$
3da60 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3e 20 this->decisionMap[$packageId].>.
3da80 30 20 7c 7c 0a 24 6c 69 74 65 72 61 6c 20 3c 20 30 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 0.||.$literal.<.0.&&.isset($this
3daa0 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 20 26 26 20 24 74 ->decisionMap[$packageId]).&&.$t
3dac0 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3c 20 30 his->decisionMap[$packageId].<.0
3dae0 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 6c 69 63 74 28 .);.}..public.function.conflict(
3db00 24 6c 69 74 65 72 61 6c 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c 69 $literal).{.$packageId.=.abs($li
3db20 74 65 72 61 6c 29 3b 0a 0a 72 65 74 75 72 6e 20 28 0a 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e teral);..return.(.(isset($this->
3db40 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 20 26 26 20 24 74 68 69 decisionMap[$packageId]).&&.$thi
3db60 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3e 20 30 20 26 s->decisionMap[$packageId].>.0.&
3db80 26 20 24 6c 69 74 65 72 61 6c 20 3c 20 30 29 20 7c 7c 0a 28 69 73 73 65 74 28 24 74 68 69 73 2d &.$literal.<.0).||.(isset($this-
3dba0 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 20 26 26 20 24 74 68 >decisionMap[$packageId]).&&.$th
3dbc0 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3c 20 30 20 is->decisionMap[$packageId].<.0.
3dbe0 26 26 20 24 6c 69 74 65 72 61 6c 20 3e 20 30 29 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 &&.$literal.>.0).);.}..public.fu
3dc00 6e 63 74 69 6f 6e 20 64 65 63 69 64 65 64 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 nction.decided($literalOrPackage
3dc20 49 64 29 0a 7b 0a 72 65 74 75 72 6e 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 64 65 63 69 73 Id).{.return.!empty($this->decis
3dc40 69 6f 6e 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 5d ionMap[abs($literalOrPackageId)]
3dc60 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 64 65 63 69 64 65 64 28 );.}..public.function.undecided(
3dc80 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 0a 7b 0a 72 65 74 75 72 6e 20 65 6d $literalOrPackageId).{.return.em
3dca0 70 74 79 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 pty($this->decisionMap[abs($lite
3dcc0 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 5d 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e ralOrPackageId)]);.}..public.fun
3dce0 63 74 69 6f 6e 20 64 65 63 69 64 65 64 49 6e 73 74 61 6c 6c 28 24 6c 69 74 65 72 61 6c 4f 72 50 ction.decidedInstall($literalOrP
3dd00 61 63 6b 61 67 65 49 64 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c 69 ackageId).{.$packageId.=.abs($li
3dd20 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 teralOrPackageId);..return.isset
3dd40 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 ($this->decisionMap[$packageId])
3dd60 20 26 26 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 .&&.$this->decisionMap[$packageI
3dd80 64 5d 20 3e 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 73 d].>.0;.}..public.function.decis
3dda0 69 6f 6e 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 0a 7b 0a ionLevel($literalOrPackageId).{.
3ddc0 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 $packageId.=.abs($literalOrPacka
3dde0 67 65 49 64 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e geId);.if.(isset($this->decision
3de00 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 62 73 28 24 Map[$packageId])).{.return.abs($
3de20 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 3b 0a this->decisionMap[$packageId]);.
3de40 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 }..return.0;.}..public.function.
3de60 64 65 63 69 73 69 6f 6e 52 75 6c 65 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 decisionRule($literalOrPackageId
3de80 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 6c 4f 72 50 ).{.$packageId.=.abs($literalOrP
3dea0 61 63 6b 61 67 65 49 64 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 ackageId);..foreach.($this->deci
3dec0 73 69 6f 6e 51 75 65 75 65 20 61 73 20 24 69 20 3d 3e 20 24 64 65 63 69 73 69 6f 6e 29 20 7b 0a sionQueue.as.$i.=>.$decision).{.
3dee0 69 66 20 28 24 70 61 63 6b 61 67 65 49 64 20 3d 3d 3d 20 61 62 73 28 24 64 65 63 69 73 69 6f 6e if.($packageId.===.abs($decision
3df00 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 29 29 20 7b 0a 72 65 74 [self::DECISION_LITERAL])).{.ret
3df20 75 72 6e 20 24 64 65 63 69 73 69 6f 6e 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 urn.$decision[self::DECISION_REA
3df40 53 4f 4e 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 SON];.}.}..return.null;.}..publi
3df60 63 20 66 75 6e 63 74 69 6f 6e 20 61 74 4f 66 66 73 65 74 28 24 71 75 65 75 65 4f 66 66 73 65 74 c.function.atOffset($queueOffset
3df80 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 5b ).{.return.$this->decisionQueue[
3dfa0 24 71 75 65 75 65 4f 66 66 73 65 74 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f $queueOffset];.}..public.functio
3dfc0 6e 20 76 61 6c 69 64 4f 66 66 73 65 74 28 24 71 75 65 75 65 4f 66 66 73 65 74 29 0a 7b 0a 72 65 n.validOffset($queueOffset).{.re
3dfe0 74 75 72 6e 20 24 71 75 65 75 65 4f 66 66 73 65 74 20 3e 3d 20 30 20 26 26 20 24 71 75 65 75 65 turn.$queueOffset.>=.0.&&.$queue
3e000 4f 66 66 73 65 74 20 3c 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 Offset.<.count($this->decisionQu
3e020 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 61 73 74 52 65 61 eue);.}..public.function.lastRea
3e040 73 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 son().{.return.$this->decisionQu
3e060 65 75 65 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 20 eue[count($this->decisionQueue).
3e080 2d 20 31 5d 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 7d 0a 0a -.1][self::DECISION_REASON];.}..
3e0a0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 61 73 74 4c 69 74 65 72 61 6c 28 29 0a 7b 0a public.function.lastLiteral().{.
3e0c0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 5b 63 6f 75 6e return.$this->decisionQueue[coun
3e0e0 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 20 2d 20 31 5d 5b 73 65 6c t($this->decisionQueue).-.1][sel
3e100 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 f::DECISION_LITERAL];.}..public.
3e120 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 28 29 0a 7b 0a 77 68 69 6c 65 20 28 24 64 65 63 69 73 function.reset().{.while.($decis
3e140 69 6f 6e 20 3d 20 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 ion.=.array_pop($this->decisionQ
3e160 75 65 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 ueue)).{.$this->decisionMap[abs(
3e180 24 64 65 63 69 73 69 6f 6e 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c $decision[self::DECISION_LITERAL
3e1a0 5d 29 5d 20 3d 20 30 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 ])].=.0;.}.}..public.function.re
3e1c0 73 65 74 54 6f 4f 66 66 73 65 74 28 24 6f 66 66 73 65 74 29 0a 7b 0a 77 68 69 6c 65 20 28 63 6f setToOffset($offset).{.while.(co
3e1e0 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 20 3e 20 24 6f 66 66 unt($this->decisionQueue).>.$off
3e200 73 65 74 20 2b 20 31 29 20 7b 0a 24 64 65 63 69 73 69 6f 6e 20 3d 20 61 72 72 61 79 5f 70 6f 70 set.+.1).{.$decision.=.array_pop
3e220 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 24 74 68 69 73 2d 3e 64 ($this->decisionQueue);.$this->d
3e240 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 64 65 63 69 73 69 6f 6e 5b 73 65 6c 66 3a 3a 44 ecisionMap[abs($decision[self::D
3e260 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 29 5d 20 3d 20 30 3b 0a 7d 0a 7d 0a 0a 70 75 62 ECISION_LITERAL])].=.0;.}.}..pub
3e280 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 76 65 72 74 4c 61 73 74 28 29 0a 7b 0a 24 74 68 69 lic.function.revertLast().{.$thi
3e2a0 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 74 68 69 73 2d 3e 6c 61 73 74 4c 69 s->decisionMap[abs($this->lastLi
3e2c0 74 65 72 61 6c 28 29 29 5d 20 3d 20 30 3b 0a 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 2d 3e teral())].=.0;.array_pop($this->
3e2e0 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 decisionQueue);.}..public.functi
3e300 6f 6e 20 63 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 74 68 69 73 2d on.count().{.return.count($this-
3e320 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 >decisionQueue);.}..public.funct
3e340 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 65 6e 64 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 ion.rewind().{.end($this->decisi
3e360 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 75 72 onQueue);.}..public.function.cur
3e380 72 65 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 75 72 72 65 6e 74 28 24 74 68 69 73 2d 3e 64 rent().{.return.current($this->d
3e3a0 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ecisionQueue);.}..public.functio
3e3c0 6e 20 6b 65 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6b 65 79 28 24 74 68 69 73 2d 3e 64 65 63 69 n.key().{.return.key($this->deci
3e3e0 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e sionQueue);.}..public.function.n
3e400 65 78 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 76 28 24 74 68 69 73 2d 3e 64 65 63 69 73 ext().{.return.prev($this->decis
3e420 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 ionQueue);.}..public.function.va
3e440 6c 69 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 63 75 72 72 65 6e 74 lid().{.return.false.!==.current
3e460 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 ($this->decisionQueue);.}..publi
3e480 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 45 6d 70 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 6f c.function.isEmpty().{.return.co
3e4a0 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 20 3d 3d 3d 20 30 3b unt($this->decisionQueue).===.0;
3e4c0 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 44 65 63 69 73 69 .}..protected.function.addDecisi
3e4e0 6f 6e 28 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 on($literal,.$level).{.$packageI
3e500 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 24 70 72 65 76 69 6f 75 73 44 65 63 d.=.abs($literal);..$previousDec
3e520 69 73 69 6f 6e 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 ision.=.isset($this->decisionMap
3e540 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 20 3f 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d [$packageId]).?.$this->decisionM
3e560 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3a 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 70 72 65 76 ap[$packageId].:.null;.if.($prev
3e580 69 6f 75 73 44 65 63 69 73 69 6f 6e 20 21 3d 20 30 29 20 7b 0a 24 6c 69 74 65 72 61 6c 53 74 72 iousDecision.!=.0).{.$literalStr
3e5a0 69 6e 67 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 53 74 72 69 ing.=.$this->pool->literalToStri
3e5c0 6e 67 28 24 6c 69 74 65 72 61 6c 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e ng($literal);.$package.=.$this->
3e5e0 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 pool->literalToPackage($literal)
3e600 3b 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a ;.throw.new.SolverBugException(.
3e620 22 54 72 79 69 6e 67 20 74 6f 20 64 65 63 69 64 65 20 24 6c 69 74 65 72 61 6c 53 74 72 69 6e 67 "Trying.to.decide.$literalString
3e640 20 6f 6e 20 6c 65 76 65 6c 20 24 6c 65 76 65 6c 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 24 70 .on.level.$level,.even.though.$p
3e660 61 63 6b 61 67 65 20 77 61 73 20 70 72 65 76 69 6f 75 73 6c 79 20 64 65 63 69 64 65 64 20 61 73 ackage.was.previously.decided.as
3e680 20 22 2e 28 69 6e 74 29 20 24 70 72 65 76 69 6f 75 73 44 65 63 69 73 69 6f 6e 2e 22 2e 22 0a 29 .".(int).$previousDecision.".".)
3e6a0 3b 0a 7d 0a 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e ;.}..if.($literal.>.0).{.$this->
3e6c0 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3d 20 24 6c 65 76 65 6c decisionMap[$packageId].=.$level
3e6e0 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 ;.}.else.{.$this->decisionMap[$p
3e700 61 63 6b 61 67 65 49 64 5d 20 3d 20 2d 24 6c 65 76 65 6c 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 ackageId].=.-$level;.}.}.}.<?php
3e720 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 ............namespace.Composer\D
3e740 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 ependencyResolver;..use.Composer
3e760 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 \Package\PackageInterface;.use.C
3e780 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 omposer\Package\AliasPackage;.us
3e7a0 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 67 65 3b 0a e.Composer\Package\BasePackage;.
3e7c0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 use.Composer\Semver\Constraint\C
3e7e0 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 66 61 75 6c 74 50 6f 6c onstraint;......class.DefaultPol
3e800 69 63 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 0a 7b icy.implements.PolicyInterface.{
3e820 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 65 72 53 74 61 62 6c 65 3b 0a 70 72 69 76 61 74 65 20 .private.$preferStable;.private.
3e840 24 70 72 65 66 65 72 4c 6f 77 65 73 74 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 $preferLowest;..public.function.
3e860 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 72 65 66 65 72 53 74 61 62 6c 65 20 3d 20 66 61 6c 73 __construct($preferStable.=.fals
3e880 65 2c 20 24 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 e,.$preferLowest.=.false).{.$thi
3e8a0 73 2d 3e 70 72 65 66 65 72 53 74 61 62 6c 65 20 3d 20 24 70 72 65 66 65 72 53 74 61 62 6c 65 3b s->preferStable.=.$preferStable;
3e8c0 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 24 70 72 65 66 65 72 4c 6f .$this->preferLowest.=.$preferLo
3e8e0 77 65 73 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 65 72 73 69 6f 6e west;.}..public.function.version
3e900 43 6f 6d 70 61 72 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 61 2c 20 50 61 63 Compare(PackageInterface.$a,.Pac
3e920 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 62 2c 20 24 6f 70 65 72 61 74 6f 72 29 0a 7b 0a 69 kageInterface.$b,.$operator).{.i
3e940 66 20 28 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 74 61 62 6c 65 20 26 26 20 28 24 73 74 61 62 f.($this->preferStable.&&.($stab
3e960 41 20 3d 20 24 61 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 29 20 21 3d 3d 20 28 24 73 74 A.=.$a->getStability()).!==.($st
3e980 61 62 42 20 3d 20 24 62 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 29 29 20 7b 0a 72 65 74 abB.=.$b->getStability())).{.ret
3e9a0 75 72 6e 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 73 urn.BasePackage::$stabilities[$s
3e9c0 74 61 62 41 5d 20 3c 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 tabA].<.BasePackage::$stabilitie
3e9e0 73 5b 24 73 74 61 62 42 5d 3b 0a 7d 0a 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 s[$stabB];.}..$constraint.=.new.
3ea00 43 6f 6e 73 74 72 61 69 6e 74 28 24 6f 70 65 72 61 74 6f 72 2c 20 24 62 2d 3e 67 65 74 56 65 72 Constraint($operator,.$b->getVer
3ea20 73 69 6f 6e 28 29 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 sion());.$version.=.new.Constrai
3ea40 6e 74 28 27 3d 3d 27 2c 20 24 61 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 0a 72 65 74 nt('==',.$a->getVersion());..ret
3ea60 75 72 6e 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 53 70 65 63 69 66 69 63 28 24 urn.$constraint->matchSpecific($
3ea80 76 65 72 73 69 6f 6e 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 version,.true);.}..public.functi
3eaa0 6f 6e 20 66 69 6e 64 55 70 64 61 74 65 50 61 63 6b 61 67 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c on.findUpdatePackages(Pool.$pool
3eac0 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 50 61 63 6b 61 67 65 49 6e ,.array.$installedMap,.PackageIn
3eae0 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 6d 75 73 74 4d 61 74 63 68 4e 61 6d 65 terface.$package,.$mustMatchName
3eb00 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b .=.false).{.$packages.=.array();
3eb20 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 ..foreach.($pool->whatProvides($
3eb40 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 6e 75 6c 6c 2c 20 24 6d 75 73 74 4d package->getName(),.null,.$mustM
3eb60 61 74 63 68 4e 61 6d 65 29 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 69 66 20 28 24 atchName).as.$candidate).{.if.($
3eb80 63 61 6e 64 69 64 61 74 65 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 candidate.!==.$package).{.$packa
3eba0 67 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 ges[].=.$candidate;.}.}..return.
3ebc0 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 $packages;.}..public.function.ge
3ebe0 74 50 72 69 6f 72 69 74 79 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 tPriority(Pool.$pool,.PackageInt
3ec00 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 6f 6f 6c 2d erface.$package).{.return.$pool-
3ec20 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 69 >getPriority($package->getReposi
3ec40 74 6f 72 79 28 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 tory());.}..public.function.sele
3ec60 63 74 50 72 65 66 65 72 72 65 64 50 61 63 6b 61 67 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 ctPreferredPackages(Pool.$pool,.
3ec80 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 array.$installedMap,.array.$lite
3eca0 72 61 6c 73 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 3d 20 6e 75 6c 6c 29 0a 7b rals,.$requiredPackage.=.null).{
3ecc0 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 72 6f 75 70 4c 69 74 65 72 61 6c .$packages.=.$this->groupLiteral
3ece0 73 42 79 4e 61 6d 65 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 28 24 70 6f 6f 6c 2c 20 24 69 sByNamePreferInstalled($pool,.$i
3ed00 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a 0a 66 6f 72 65 61 63 nstalledMap,.$literals);..foreac
3ed20 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 26 24 6c 69 74 65 72 61 6c 73 29 20 7b 0a 24 70 h.($packages.as.&$literals).{.$p
3ed40 6f 6c 69 63 79 20 3d 20 24 74 68 69 73 3b 0a 75 73 6f 72 74 28 24 6c 69 74 65 72 61 6c 73 2c 20 olicy.=.$this;.usort($literals,.
3ed60 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 75 73 65 20 28 24 70 6f 6c 69 63 79 2c 20 function.($a,.$b).use.($policy,.
3ed80 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 72 65 71 75 69 72 65 64 50 $pool,.$installedMap,.$requiredP
3eda0 61 63 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 6f 6c 69 63 79 2d 3e 63 6f 6d 70 61 72 ackage).{.return.$policy->compar
3edc0 65 42 79 50 72 69 6f 72 69 74 79 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 28 24 70 6f 6f 6c eByPriorityPreferInstalled($pool
3ede0 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 ,.$installedMap,.$pool->literalT
3ee00 6f 50 61 63 6b 61 67 65 28 24 61 29 2c 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 oPackage($a),.$pool->literalToPa
3ee20 63 6b 61 67 65 28 24 62 29 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 2c 20 74 72 75 ckage($b),.$requiredPackage,.tru
3ee40 65 29 3b 0a 7d 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 e);.});.}..foreach.($packages.as
3ee60 20 26 24 6c 69 74 65 72 61 6c 73 29 20 7b 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 .&$literals).{.$literals.=.$this
3ee80 2d 3e 70 72 75 6e 65 54 6f 48 69 67 68 65 73 74 50 72 69 6f 72 69 74 79 4f 72 49 6e 73 74 61 6c ->pruneToHighestPriorityOrInstal
3eea0 6c 65 64 28 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 6c 69 74 65 72 led($pool,.$installedMap,.$liter
3eec0 61 6c 73 29 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 70 72 75 6e 65 54 als);..$literals.=.$this->pruneT
3eee0 6f 42 65 73 74 56 65 72 73 69 6f 6e 28 24 70 6f 6f 6c 2c 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a oBestVersion($pool,.$literals);.
3ef00 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 70 72 75 6e 65 52 65 6d 6f 74 65 41 .$literals.=.$this->pruneRemoteA
3ef20 6c 69 61 73 65 73 28 24 70 6f 6f 6c 2c 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a 7d 0a 0a 24 73 65 liases($pool,.$literals);.}..$se
3ef40 6c 65 63 74 65 64 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 lected.=.call_user_func_array('a
3ef60 72 72 61 79 5f 6d 65 72 67 65 27 2c 20 24 70 61 63 6b 61 67 65 73 29 3b 0a 0a 0a 20 75 73 6f 72 rray_merge',.$packages);....usor
3ef80 74 28 24 73 65 6c 65 63 74 65 64 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 75 t($selected,.function.($a,.$b).u
3efa0 73 65 20 28 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 se.($policy,.$pool,.$installedMa
3efc0 70 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 p,.$requiredPackage).{.return.$p
3efe0 6f 6c 69 63 79 2d 3e 63 6f 6d 70 61 72 65 42 79 50 72 69 6f 72 69 74 79 50 72 65 66 65 72 49 6e olicy->compareByPriorityPreferIn
3f000 73 74 61 6c 6c 65 64 28 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 70 stalled($pool,.$installedMap,.$p
3f020 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 61 29 2c 20 24 70 6f 6f 6c ool->literalToPackage($a),.$pool
3f040 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 62 29 2c 20 24 72 65 71 75 69 72 65 ->literalToPackage($b),.$require
3f060 64 50 61 63 6b 61 67 65 29 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 73 65 6c 65 63 74 65 64 dPackage);.});..return.$selected
3f080 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 72 6f 75 70 4c 69 74 ;.}..protected.function.groupLit
3f0a0 65 72 61 6c 73 42 79 4e 61 6d 65 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 28 50 6f 6f 6c 20 eralsByNamePreferInstalled(Pool.
3f0c0 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 6c 69 74 $pool,.array.$installedMap,.$lit
3f0e0 65 72 61 6c 73 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f erals).{.$packages.=.array();.fo
3f100 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a reach.($literals.as.$literal).{.
3f120 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 $packageName.=.$pool->literalToP
3f140 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 69 66 ackage($literal)->getName();..if
3f160 20 28 21 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d .(!isset($packages[$packageName]
3f180 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 20 3d 20 61 )).{.$packages[$packageName].=.a
3f1a0 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d rray();.}..if.(isset($installedM
3f1c0 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b 0a 61 72 72 61 79 5f 75 6e 73 68 ap[abs($literal)])).{.array_unsh
3f1e0 69 66 74 28 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 2c 20 24 6c 69 ift($packages[$packageName],.$li
3f200 74 65 72 61 6c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b teral);.}.else.{.$packages[$pack
3f220 61 67 65 4e 61 6d 65 5d 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 ageName][].=.$literal;.}.}..retu
3f240 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 rn.$packages;.}.....public.funct
3f260 69 6f 6e 20 63 6f 6d 70 61 72 65 42 79 50 72 69 6f 72 69 74 79 50 72 65 66 65 72 49 6e 73 74 61 ion.compareByPriorityPreferInsta
3f280 6c 6c 65 64 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 lled(Pool.$pool,.array.$installe
3f2a0 64 4d 61 70 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 61 2c 20 50 61 63 6b 61 dMap,.PackageInterface.$a,.Packa
3f2c0 67 65 49 6e 74 65 72 66 61 63 65 20 24 62 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 geInterface.$b,.$requiredPackage
3f2e0 20 3d 20 6e 75 6c 6c 2c 20 24 69 67 6e 6f 72 65 52 65 70 6c 61 63 65 20 3d 20 66 61 6c 73 65 29 .=.null,.$ignoreReplace.=.false)
3f300 0a 7b 0a 69 66 20 28 24 61 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 20 3d 3d 3d 20 24 .{.if.($a->getRepository().===.$
3f320 62 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 29 20 7b 0a 0a 20 69 66 20 28 24 61 2d 3e b->getRepository()).{...if.($a->
3f340 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d 20 24 62 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 getName().===.$b->getName()).{.$
3f360 61 41 6c 69 61 73 65 64 20 3d 20 24 61 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 aAliased.=.$a.instanceof.AliasPa
3f380 63 6b 61 67 65 3b 0a 24 62 41 6c 69 61 73 65 64 20 3d 20 24 62 20 69 6e 73 74 61 6e 63 65 6f 66 ckage;.$bAliased.=.$b.instanceof
3f3a0 20 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 69 66 20 28 24 61 41 6c 69 61 73 65 64 20 26 26 20 .AliasPackage;.if.($aAliased.&&.
3f3c0 21 24 62 41 6c 69 61 73 65 64 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 20 0a 20 7d 0a 69 66 20 !$bAliased).{.return.-1;...}.if.
3f3e0 28 21 24 61 41 6c 69 61 73 65 64 20 26 26 20 24 62 41 6c 69 61 73 65 64 29 20 7b 0a 72 65 74 75 (!$aAliased.&&.$bAliased).{.retu
3f400 72 6e 20 31 3b 20 0a 20 7d 0a 7d 0a 0a 69 66 20 28 21 24 69 67 6e 6f 72 65 52 65 70 6c 61 63 65 rn.1;...}.}..if.(!$ignoreReplace
3f420 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 28 24 61 2c 20 24 62 ).{...if.($this->replaces($a,.$b
3f440 29 29 20 7b 0a 72 65 74 75 72 6e 20 31 3b 20 0a 20 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 65 )).{.return.1;...}.if.($this->re
3f460 70 6c 61 63 65 73 28 24 62 2c 20 24 61 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 20 0a 20 7d places($b,.$a)).{.return.-1;...}
3f480 0a 0a 0a 20 0a 20 69 66 20 28 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 26 26 20 66 61 ......if.($requiredPackage.&&.fa
3f4a0 6c 73 65 20 21 3d 3d 20 28 24 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 72 65 71 75 69 72 65 64 lse.!==.($pos.=.strpos($required
3f4c0 50 61 63 6b 61 67 65 2c 20 27 2f 27 29 29 29 20 7b 0a 24 72 65 71 75 69 72 65 64 56 65 6e 64 6f Package,.'/'))).{.$requiredVendo
3f4e0 72 20 3d 20 73 75 62 73 74 72 28 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 2c 20 30 2c 20 r.=.substr($requiredPackage,.0,.
3f500 24 70 6f 73 29 3b 0a 0a 24 61 49 73 53 61 6d 65 56 65 6e 64 6f 72 20 3d 20 73 75 62 73 74 72 28 $pos);..$aIsSameVendor.=.substr(
3f520 24 61 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 30 2c 20 24 70 6f 73 29 20 3d 3d 3d 20 24 72 65 71 $a->getName(),.0,.$pos).===.$req
3f540 75 69 72 65 64 56 65 6e 64 6f 72 3b 0a 24 62 49 73 53 61 6d 65 56 65 6e 64 6f 72 20 3d 20 73 75 uiredVendor;.$bIsSameVendor.=.su
3f560 62 73 74 72 28 24 62 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 30 2c 20 24 70 6f 73 29 20 3d 3d 3d bstr($b->getName(),.0,.$pos).===
3f580 20 24 72 65 71 75 69 72 65 64 56 65 6e 64 6f 72 3b 0a 0a 69 66 20 28 24 62 49 73 53 61 6d 65 56 .$requiredVendor;..if.($bIsSameV
3f5a0 65 6e 64 6f 72 20 21 3d 3d 20 24 61 49 73 53 61 6d 65 56 65 6e 64 6f 72 29 20 7b 0a 72 65 74 75 endor.!==.$aIsSameVendor).{.retu
3f5c0 72 6e 20 24 61 49 73 53 61 6d 65 56 65 6e 64 6f 72 20 3f 20 2d 31 20 3a 20 31 3b 0a 7d 0a 7d 0a rn.$aIsSameVendor.?.-1.:.1;.}.}.
3f5e0 7d 0a 0a 0a 20 69 66 20 28 24 61 2d 3e 69 64 20 3d 3d 3d 20 24 62 2d 3e 69 64 29 20 7b 0a 72 65 }....if.($a->id.===.$b->id).{.re
3f600 74 75 72 6e 20 30 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 28 24 61 2d 3e 69 64 20 3c 20 24 62 2d 3e turn.0;.}..return.($a->id.<.$b->
3f620 69 64 29 20 3f 20 2d 31 20 3a 20 31 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 id).?.-1.:.1;.}..if.(isset($inst
3f640 61 6c 6c 65 64 4d 61 70 5b 24 61 2d 3e 69 64 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 0a alledMap[$a->id])).{.return.-1;.
3f660 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 62 2d 3e 69 }..if.(isset($installedMap[$b->i
3f680 64 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 28 24 74 68 69 d])).{.return.1;.}..return.($thi
3f6a0 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 6f 6f 6c 2c 20 24 61 29 20 3e 20 24 74 68 69 s->getPriority($pool,.$a).>.$thi
3f6c0 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 6f 6f 6c 2c 20 24 62 29 29 20 3f 20 2d 31 20 s->getPriority($pool,.$b)).?.-1.
3f6e0 3a 20 31 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 :.1;.}............protected.func
3f700 74 69 6f 6e 20 72 65 70 6c 61 63 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 tion.replaces(PackageInterface.$
3f720 73 6f 75 72 63 65 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 source,.PackageInterface.$target
3f740 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 73 6f 75 72 63 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 ).{.foreach.($source->getReplace
3f760 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 s().as.$link).{.if.($link->getTa
3f780 72 67 65 74 28 29 20 3d 3d 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 4e 61 6d 65 28 29 0a 0a 0a rget().===.$target->getName()...
3f7a0 20 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 .).{.return.true;.}.}..return.fa
3f7c0 6c 73 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 75 6e 65 lse;.}..protected.function.prune
3f7e0 54 6f 42 65 73 74 56 65 72 73 69 6f 6e 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 24 6c 69 74 65 72 ToBestVersion(Pool.$pool,.$liter
3f800 61 6c 73 29 0a 7b 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 70 72 65 66 65 72 als).{.$operator.=.$this->prefer
3f820 4c 6f 77 65 73 74 20 3f 20 27 3c 27 20 3a 20 27 3e 27 3b 0a 24 62 65 73 74 4c 69 74 65 72 61 6c Lowest.?.'<'.:.'>';.$bestLiteral
3f840 73 20 3d 20 61 72 72 61 79 28 24 6c 69 74 65 72 61 6c 73 5b 30 5d 29 3b 0a 24 62 65 73 74 50 61 s.=.array($literals[0]);.$bestPa
3f860 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 ckage.=.$pool->literalToPackage(
3f880 24 6c 69 74 65 72 61 6c 73 5b 30 5d 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c $literals[0]);.foreach.($literal
3f8a0 73 20 61 73 20 24 69 20 3d 3e 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d s.as.$i.=>.$literal).{.if.(0.===
3f8c0 20 24 69 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 .$i).{.continue;.}..$package.=.$
3f8e0 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 pool->literalToPackage($literal)
3f900 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 61 ;..if.($this->versionCompare($pa
3f920 63 6b 61 67 65 2c 20 24 62 65 73 74 50 61 63 6b 61 67 65 2c 20 24 6f 70 65 72 61 74 6f 72 29 29 ckage,.$bestPackage,.$operator))
3f940 20 7b 0a 24 62 65 73 74 50 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 24 62 65 73 .{.$bestPackage.=.$package;.$bes
3f960 74 4c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 24 6c 69 74 65 72 61 6c 29 3b 0a 7d 20 65 tLiterals.=.array($literal);.}.e
3f980 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 61 lseif.($this->versionCompare($pa
3f9a0 63 6b 61 67 65 2c 20 24 62 65 73 74 50 61 63 6b 61 67 65 2c 20 27 3d 3d 27 29 29 20 7b 0a 24 62 ckage,.$bestPackage,.'==')).{.$b
3f9c0 65 73 74 4c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 72 estLiterals[].=.$literal;.}.}..r
3f9e0 65 74 75 72 6e 20 24 62 65 73 74 4c 69 74 65 72 61 6c 73 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 eturn.$bestLiterals;.}.....prote
3fa00 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 75 6e 65 54 6f 48 69 67 68 65 73 74 50 72 69 6f cted.function.pruneToHighestPrio
3fa20 72 69 74 79 4f 72 49 6e 73 74 61 6c 6c 65 64 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 rityOrInstalled(Pool.$pool,.arra
3fa40 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 y.$installedMap,.array.$literals
3fa60 29 0a 7b 0a 24 73 65 6c 65 63 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 70 72 69 6f 72 ).{.$selected.=.array();..$prior
3fa80 69 74 79 20 3d 20 6e 75 6c 6c 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 ity.=.null;..foreach.($literals.
3faa0 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d as.$literal).{.$package.=.$pool-
3fac0 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 >literalToPackage($literal);..if
3fae0 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e .(isset($installedMap[$package->
3fb00 69 64 5d 29 29 20 7b 0a 24 73 65 6c 65 63 74 65 64 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a id])).{.$selected[].=.$literal;.
3fb20 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 70 72 69 6f 72 continue;.}..if.(null.===.$prior
3fb40 69 74 79 29 20 7b 0a 24 70 72 69 6f 72 69 74 79 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 69 ity).{.$priority.=.$this->getPri
3fb60 6f 72 69 74 79 28 24 70 6f 6f 6c 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 ority($pool,.$package);.}..if.($
3fb80 74 68 69 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 6f 6f 6c 2c 20 24 70 61 63 6b 61 67 this->getPriority($pool,.$packag
3fba0 65 29 20 21 3d 20 24 70 72 69 6f 72 69 74 79 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 73 65 e).!=.$priority).{.break;.}..$se
3fbc0 6c 65 63 74 65 64 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 lected[].=.$literal;.}..return.$
3fbe0 73 65 6c 65 63 74 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 selected;.}.......protected.func
3fc00 74 69 6f 6e 20 70 72 75 6e 65 52 65 6d 6f 74 65 41 6c 69 61 73 65 73 28 50 6f 6f 6c 20 24 70 6f tion.pruneRemoteAliases(Pool.$po
3fc20 6f 6c 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 29 0a 7b 0a 24 68 61 73 4c 6f 63 61 6c ol,.array.$literals).{.$hasLocal
3fc40 41 6c 69 61 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 Alias.=.false;..foreach.($litera
3fc60 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 6f ls.as.$literal).{.$package.=.$po
3fc80 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a ol->literalToPackage($literal);.
3fca0 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 .if.($package.instanceof.AliasPa
3fcc0 63 6b 61 67 65 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 69 73 52 6f 6f 74 50 61 63 6b 61 67 65 ckage.&&.$package->isRootPackage
3fce0 41 6c 69 61 73 28 29 29 20 7b 0a 24 68 61 73 4c 6f 63 61 6c 41 6c 69 61 73 20 3d 20 74 72 75 65 Alias()).{.$hasLocalAlias.=.true
3fd00 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 68 61 73 4c 6f 63 61 6c 41 6c 69 61 ;.break;.}.}..if.(!$hasLocalAlia
3fd20 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 6c 69 74 65 72 61 6c 73 3b 0a 7d 0a 0a 24 73 65 6c 65 63 s).{.return.$literals;.}..$selec
3fd40 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c ted.=.array();.foreach.($literal
3fd60 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f s.as.$literal).{.$package.=.$poo
3fd80 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a l->literalToPackage($literal);..
3fda0 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 if.($package.instanceof.AliasPac
3fdc0 6b 61 67 65 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 69 73 52 6f 6f 74 50 61 63 6b 61 67 65 41 kage.&&.$package->isRootPackageA
3fde0 6c 69 61 73 28 29 29 20 7b 0a 24 73 65 6c 65 63 74 65 64 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c lias()).{.$selected[].=.$literal
3fe00 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 65 6c 65 63 74 65 64 3b 0a 7d 0a 7d 0a 3c 3f 70 ;.}.}..return.$selected;.}.}.<?p
3fe20 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
3fe40 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a \DependencyResolver\Operation;..
3fe60 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 use.Composer\Package\PackageInte
3fe80 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 rface;.......class.InstallOperat
3fea0 69 6f 6e 20 65 78 74 65 6e 64 73 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 0a 7b 0a 70 72 ion.extends.SolverOperation.{.pr
3fec0 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 otected.$package;........public.
3fee0 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 61 63 6b 61 67 65 49 6e 74 65 function.__construct(PackageInte
3ff00 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a rface.$package,.$reason.=.null).
3ff20 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 29 3b 0a {.parent::__construct($reason);.
3ff40 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a .$this->package.=.$package;.}...
3ff60 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 29 ....public.function.getPackage()
3ff80 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a .{.return.$this->package;.}.....
3ffa0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b ..public.function.getJobType().{
3ffc0 0a 72 65 74 75 72 6e 20 27 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 .return.'install';.}.....public.
3ffe0 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 function.__toString().{.return.'
40000 49 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 Installing.'.$this->package->get
40020 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 PrettyName().'.('.$this->formatV
40040 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 29 2e 27 29 27 3b 0a 7d 0a 7d 0a ersion($this->package).')';.}.}.
40060 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f <?php............namespace.Compo
40080 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e ser\DependencyResolver\Operation
400a0 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 ;..use.Composer\Package\AliasPac
400c0 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 kage;.use.Composer\Package\Packa
400e0 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 61 72 6b 41 6c 69 geInterface;.......class.MarkAli
40100 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 53 6f 6c asInstalledOperation.extends.Sol
40120 76 65 72 4f 70 65 72 61 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 verOperation.{.protected.$packag
40140 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 e;........public.function.__cons
40160 74 72 75 63 74 28 41 6c 69 61 73 50 61 63 6b 61 67 65 20 24 70 61 63 6b 61 67 65 2c 20 24 72 65 truct(AliasPackage.$package,.$re
40180 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 ason.=.null).{.parent::__constru
401a0 63 74 28 24 72 65 61 73 6f 6e 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 ct($reason);..$this->package.=.$
401c0 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e package;.}.......public.function
401e0 20 67 65 74 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 .getPackage().{.return.$this->pa
40200 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 ckage;.}.......public.function.g
40220 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 6d 61 72 6b 41 6c 69 61 73 49 etJobType().{.return.'markAliasI
40240 6e 73 74 61 6c 6c 65 64 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e nstalled';.}.....public.function
40260 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 4d 61 72 6b 69 6e 67 20 .__toString().{.return.'Marking.
40280 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 '.$this->package->getPrettyName(
402a0 29 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 ).'.('.$this->formatVersion($thi
402c0 73 2d 3e 70 61 63 6b 61 67 65 29 2e 27 29 20 61 73 20 69 6e 73 74 61 6c 6c 65 64 2c 20 61 6c 69 s->package).').as.installed,.ali
402e0 61 73 20 6f 66 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 as.of.'.$this->package->getAlias
40300 4f 66 28 29 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 Of()->getPrettyName().'.('.$this
40320 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e ->formatVersion($this->package->
40340 67 65 74 41 6c 69 61 73 4f 66 28 29 29 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a getAliasOf()).')';.}.}.<?php....
40360 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e ........namespace.Composer\Depen
40380 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 75 73 65 20 43 6f dencyResolver\Operation;..use.Co
403a0 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 mposer\Package\AliasPackage;.use
403c0 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 .Composer\Package\PackageInterfa
403e0 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 ce;.......class.MarkAliasUninsta
40400 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 53 6f 6c 76 65 72 4f 70 65 72 lledOperation.extends.SolverOper
40420 61 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a ation.{.protected.$package;.....
40440 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 41 ...public.function.__construct(A
40460 6c 69 61 73 50 61 63 6b 61 67 65 20 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 20 3d 20 liasPackage.$package,.$reason.=.
40480 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 null).{.parent::__construct($rea
404a0 73 6f 6e 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 son);..$this->package.=.$package
404c0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 ;.}.......public.function.getPac
404e0 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 3b 0a kage().{.return.$this->package;.
40500 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 }.......public.function.getJobTy
40520 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 6d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c pe().{.return.'markAliasUninstal
40540 6c 65 64 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f led';.}.....public.function.__to
40560 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 4d 61 72 6b 69 6e 67 20 27 2e 24 74 68 String().{.return.'Marking.'.$th
40580 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 is->package->getPrettyName().'.(
405a0 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 61 '.$this->formatVersion($this->pa
405c0 63 6b 61 67 65 29 2e 27 29 20 61 73 20 75 6e 69 6e 73 74 61 6c 6c 65 64 2c 20 61 6c 69 61 73 20 ckage).').as.uninstalled,.alias.
405e0 6f 66 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 of.'.$this->package->getAliasOf(
40600 29 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 )->getPrettyName().'.('.$this->f
40620 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 ormatVersion($this->package->get
40640 41 6c 69 61 73 4f 66 28 29 29 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a AliasOf()).')';.}.}.<?php.......
40660 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e .....namespace.Composer\Dependen
40680 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 cyResolver\Operation;.......inte
406a0 72 66 61 63 65 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a rface.OperationInterface.{......
406c0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 3b 0a 0a 0a public.function.getJobType();...
406e0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 28 29 3b ....public.function.getReason();
40700 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e .......public.function.__toStrin
40720 67 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 g();.}.<?php............namespac
40740 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 e.Composer\DependencyResolver\Op
40760 65 72 61 74 69 6f 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 eration;..use.Composer\Package\P
40780 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 ackageInterface;.......abstract.
407a0 63 6c 61 73 73 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 class.SolverOperation.implements
407c0 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 .OperationInterface.{.protected.
407e0 24 72 65 61 73 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f $reason;.......public.function._
40800 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 _construct($reason.=.null).{.$th
40820 69 73 2d 3e 72 65 61 73 6f 6e 20 3d 20 24 72 65 61 73 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 is->reason.=.$reason;.}.......pu
40840 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 28 29 0a 7b 0a 72 65 74 75 blic.function.getReason().{.retu
40860 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 rn.$this->reason;.}..protected.f
40880 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 50 61 63 6b 61 67 65 49 6e 74 unction.formatVersion(PackageInt
408a0 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 erface.$package).{.return.$packa
408c0 67 65 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 7d 0a ge->getFullPrettyVersion();.}.}.
408e0 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f <?php............namespace.Compo
40900 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e ser\DependencyResolver\Operation
40920 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 ;..use.Composer\Package\PackageI
40940 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 6e 69 6e 73 74 61 6c 6c 4f nterface;.......class.UninstallO
40960 70 65 72 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e peration.extends.SolverOperation
40980 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 .{.protected.$package;........pu
409a0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 61 63 6b 61 67 blic.function.__construct(Packag
409c0 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 20 3d 20 6e eInterface.$package,.$reason.=.n
409e0 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 73 ull).{.parent::__construct($reas
40a00 6f 6e 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 3b on);..$this->package.=.$package;
40a20 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b .}.......public.function.getPack
40a40 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 3b 0a 7d age().{.return.$this->package;.}
40a60 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 70 .......public.function.getJobTyp
40a80 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a 0a 0a 0a 0a e().{.return.'uninstall';.}.....
40aa0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 public.function.__toString().{.r
40ac0 65 74 75 72 6e 20 27 55 6e 69 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 eturn.'Uninstalling.'.$this->pac
40ae0 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 kage->getPrettyName().'.('.$this
40b00 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 29 2e ->formatVersion($this->package).
40b20 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 ')';.}.}.<?php............namesp
40b40 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c ace.Composer\DependencyResolver\
40b60 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 Operation;..use.Composer\Package
40b80 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 \PackageInterface;.......class.U
40ba0 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 53 6f 6c 76 65 72 4f 70 65 pdateOperation.extends.SolverOpe
40bc0 72 61 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 69 74 69 61 6c 50 61 63 6b 61 ration.{.protected.$initialPacka
40be0 67 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 72 67 65 74 50 61 63 6b 61 67 65 3b 0a 0a 0a ge;.protected.$targetPackage;...
40c00 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ......public.function.__construc
40c20 74 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 t(PackageInterface.$initial,.Pac
40c40 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 72 65 61 73 6f 6e 20 3d kageInterface.$target,.$reason.=
40c60 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 .null).{.parent::__construct($re
40c80 61 73 6f 6e 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 20 3d 20 ason);..$this->initialPackage.=.
40ca0 24 69 6e 69 74 69 61 6c 3b 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 20 3d $initial;.$this->targetPackage.=
40cc0 20 24 74 61 72 67 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .$target;.}.......public.functio
40ce0 6e 20 67 65 74 49 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 n.getInitialPackage().{.return.$
40d00 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 this->initialPackage;.}.......pu
40d20 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 blic.function.getTargetPackage()
40d40 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 3b 0a .{.return.$this->targetPackage;.
40d60 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 }.......public.function.getJobTy
40d80 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 75 70 64 61 74 65 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 pe().{.return.'update';.}.....pu
40da0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 blic.function.__toString().{.ret
40dc0 75 72 6e 20 27 55 70 64 61 74 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 61 urn.'Updating.'.$this->initialPa
40de0 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 ckage->getPrettyName().'.('.$thi
40e00 73 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 s->formatVersion($this->initialP
40e20 61 63 6b 61 67 65 29 2e 27 29 20 74 6f 20 27 2e 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 ackage).').to.'..$this->targetPa
40e40 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 20 27 20 28 27 2e 24 74 68 ckage->getPrettyName()..'.('.$th
40e60 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 is->formatVersion($this->targetP
40e80 61 63 6b 61 67 65 29 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ackage).')';.}.}.<?php..........
40ea0 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 ..namespace.Composer\DependencyR
40ec0 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 esolver;..use.Composer\Package\P
40ee0 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 50 ackageInterface;.....interface.P
40f00 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e olicyInterface.{.public.function
40f20 20 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 .versionCompare(PackageInterface
40f40 20 24 61 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 62 2c 20 24 6f 70 65 72 61 .$a,.PackageInterface.$b,.$opera
40f60 74 6f 72 29 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 55 70 64 61 74 tor);..public.function.findUpdat
40f80 65 50 61 63 6b 61 67 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 69 6e 73 ePackages(Pool.$pool,.array.$ins
40fa0 74 61 6c 6c 65 64 4d 61 70 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 talledMap,.PackageInterface.$pac
40fc0 6b 61 67 65 29 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 50 72 kage);..public.function.selectPr
40fe0 65 66 65 72 72 65 64 50 61 63 6b 61 67 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 eferredPackages(Pool.$pool,.arra
41000 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 y.$installedMap,.array.$literals
41020 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 3d 20 6e 75 6c 6c 29 3b 0a 7d 0a 3c 3f ,.$requiredPackage.=.null);.}.<?
41040 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 php............namespace.Compose
41060 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f r\DependencyResolver;..use.Compo
41080 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d ser\Package\BasePackage;.use.Com
410a0 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 poser\Package\AliasPackage;.use.
410c0 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e Composer\Package\Version\Version
410e0 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 Parser;.use.Composer\Semver\Cons
41100 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 traint\ConstraintInterface;.use.
41120 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 Composer\Semver\Constraint\Const
41140 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 raint;.use.Composer\Semver\Const
41160 72 61 69 6e 74 5c 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f raint\EmptyConstraint;.use.Compo
41180 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 ser\Repository\RepositoryInterfa
411a0 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 ce;.use.Composer\Repository\Comp
411c0 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 ositeRepository;.use.Composer\Re
411e0 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 pository\ComposerRepository;.use
41200 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 .Composer\Repository\InstalledRe
41220 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c positoryInterface;.use.Composer\
41240 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 Repository\PlatformRepository;.u
41260 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 se.Composer\Package\PackageInter
41280 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6f 6f 6c 20 69 6d 70 6c 65 6d 65 6e face;........class.Pool.implemen
412a0 74 73 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a 63 6f 6e 73 74 20 4d 41 54 43 48 5f 4e 41 4d 45 ts.\Countable.{.const.MATCH_NAME
412c0 20 3d 20 2d 31 3b 0a 63 6f 6e 73 74 20 4d 41 54 43 48 5f 4e 4f 4e 45 20 3d 20 30 3b 0a 63 6f 6e .=.-1;.const.MATCH_NONE.=.0;.con
412e0 73 74 20 4d 41 54 43 48 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 4d 41 54 43 48 5f 50 52 4f 56 49 44 st.MATCH.=.1;.const.MATCH_PROVID
41300 45 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 4d 41 54 43 48 5f 52 45 50 4c 41 43 45 20 3d 20 33 3b 0a E.=.2;.const.MATCH_REPLACE.=.3;.
41320 63 6f 6e 73 74 20 4d 41 54 43 48 5f 46 49 4c 54 45 52 45 44 20 3d 20 34 3b 0a 0a 70 72 6f 74 65 const.MATCH_FILTERED.=.4;..prote
41340 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 cted.$repositories.=.array();.pr
41360 6f 74 65 63 74 65 64 20 24 70 72 6f 76 69 64 65 72 52 65 70 6f 73 20 3d 20 61 72 72 61 79 28 29 otected.$providerRepos.=.array()
41380 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b ;.protected.$packages.=.array();
413a0 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 42 79 4e 61 6d 65 20 3d 20 61 72 72 61 .protected.$packageByName.=.arra
413c0 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 42 79 45 78 61 63 74 4e 61 y();.protected.$packageByExactNa
413e0 6d 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 63 63 65 70 74 61 me.=.array();.protected.$accepta
41400 62 6c 65 53 74 61 62 69 6c 69 74 69 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 74 61 62 69 bleStabilities;.protected.$stabi
41420 6c 69 74 79 46 6c 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 73 69 6f 6e 50 61 72 lityFlags;.protected.$versionPar
41440 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 76 69 64 65 72 43 61 63 68 65 20 3d 20 ser;.protected.$providerCache.=.
41460 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c 74 65 72 52 65 71 75 69 72 array();.protected.$filterRequir
41480 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 77 68 69 74 65 6c 69 73 74 20 3d 20 6e 75 6c 6c 3b es;.protected.$whitelist.=.null;
414a0 0a 70 72 6f 74 65 63 74 65 64 20 24 69 64 20 3d 20 31 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .protected.$id.=.1;..public.func
414c0 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 tion.__construct($minimumStabili
414e0 74 79 20 3d 20 27 73 74 61 62 6c 65 27 2c 20 61 72 72 61 79 20 24 73 74 61 62 69 6c 69 74 79 46 ty.=.'stable',.array.$stabilityF
41500 6c 61 67 73 20 3d 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 66 69 6c 74 65 72 52 65 71 lags.=.array(),.array.$filterReq
41520 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f uires.=.array()).{.$this->versio
41540 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 24 74 68 nParser.=.new.VersionParser;.$th
41560 69 73 2d 3e 61 63 63 65 70 74 61 62 6c 65 53 74 61 62 69 6c 69 74 69 65 73 20 3d 20 61 72 72 61 is->acceptableStabilities.=.arra
41580 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 y();.foreach.(BasePackage::$stab
415a0 69 6c 69 74 69 65 73 20 61 73 20 24 73 74 61 62 69 6c 69 74 79 20 3d 3e 20 24 76 61 6c 75 65 29 ilities.as.$stability.=>.$value)
415c0 20 7b 0a 69 66 20 28 24 76 61 6c 75 65 20 3c 3d 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 .{.if.($value.<=.BasePackage::$s
415e0 74 61 62 69 6c 69 74 69 65 73 5b 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 5d 29 20 7b tabilities[$minimumStability]).{
41600 0a 24 74 68 69 73 2d 3e 61 63 63 65 70 74 61 62 6c 65 53 74 61 62 69 6c 69 74 69 65 73 5b 24 73 .$this->acceptableStabilities[$s
41620 74 61 62 69 6c 69 74 79 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 73 tability].=.$value;.}.}.$this->s
41640 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b tabilityFlags.=.$stabilityFlags;
41660 0a 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 52 65 71 75 69 72 65 73 20 3d 20 24 66 69 6c 74 65 72 .$this->filterRequires.=.$filter
41680 52 65 71 75 69 72 65 73 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6c 74 65 72 52 65 71 75 69 72 Requires;.foreach.($filterRequir
416a0 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 es.as.$name.=>.$constraint).{.if
416c0 20 28 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3a .(preg_match(PlatformRepository:
416e0 3a 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 6e 61 6d 65 29 29 :PLATFORM_PACKAGE_REGEX,.$name))
41700 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 52 65 71 75 69 72 65 73 5b 24 .{.unset($this->filterRequires[$
41720 6e 61 6d 65 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 name]);.}.}.}..public.function.s
41740 65 74 57 68 69 74 65 6c 69 73 74 28 24 77 68 69 74 65 6c 69 73 74 29 0a 7b 0a 24 74 68 69 73 2d etWhitelist($whitelist).{.$this-
41760 3e 77 68 69 74 65 6c 69 73 74 20 3d 20 24 77 68 69 74 65 6c 69 73 74 3b 0a 24 74 68 69 73 2d 3e >whitelist.=.$whitelist;.$this->
41780 70 72 6f 76 69 64 65 72 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a providerCache.=.array();.}......
417a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 ..public.function.addRepository(
417c0 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 24 72 6f 6f 74 RepositoryInterface.$repo,.$root
417e0 41 6c 69 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 24 72 65 70 6f 20 69 Aliases.=.array()).{.if.($repo.i
41800 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 29 20 7b nstanceof.CompositeRepository).{
41820 0a 24 72 65 70 6f 73 20 3d 20 24 72 65 70 6f 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 .$repos.=.$repo->getRepositories
41840 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 24 72 65 70 ();.}.else.{.$repos.=.array($rep
41860 6f 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 20 61 73 20 24 72 65 70 6f 29 o);.}..foreach.($repos.as.$repo)
41880 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 5d 20 3d 20 24 72 65 70 6f .{.$this->repositories[].=.$repo
418a0 3b 0a 0a 24 65 78 65 6d 70 74 20 3d 20 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 6c ;..$exempt.=.$repo.instanceof.Pl
418c0 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 20 7c 7c 20 24 72 65 70 6f 20 69 6e 73 74 61 6e atformRepository.||.$repo.instan
418e0 63 65 6f 66 20 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 ceof.InstalledRepositoryInterfac
41900 65 3b 0a 0a 69 66 20 28 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6f 73 65 e;..if.($repo.instanceof.Compose
41920 72 52 65 70 6f 73 69 74 6f 72 79 20 26 26 20 24 72 65 70 6f 2d 3e 68 61 73 50 72 6f 76 69 64 65 rRepository.&&.$repo->hasProvide
41940 72 73 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 52 65 70 6f 73 5b 5d 20 3d rs()).{.$this->providerRepos[].=
41960 20 24 72 65 70 6f 3b 0a 24 72 65 70 6f 2d 3e 73 65 74 52 6f 6f 74 41 6c 69 61 73 65 73 28 24 72 .$repo;.$repo->setRootAliases($r
41980 6f 6f 74 41 6c 69 61 73 65 73 29 3b 0a 24 72 65 70 6f 2d 3e 72 65 73 65 74 50 61 63 6b 61 67 65 ootAliases);.$repo->resetPackage
419a0 49 64 73 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 2d 3e Ids();.}.else.{.foreach.($repo->
419c0 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 6e 61 getPackages().as.$package).{.$na
419e0 6d 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 28 29 3b 0a 24 73 74 61 mes.=.$package->getNames();.$sta
41a00 62 69 6c 69 74 79 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 bility.=.$package->getStability(
41a20 29 3b 0a 69 66 20 28 24 65 78 65 6d 70 74 20 7c 7c 20 24 74 68 69 73 2d 3e 69 73 50 61 63 6b 61 );.if.($exempt.||.$this->isPacka
41a40 67 65 41 63 63 65 70 74 61 62 6c 65 28 24 6e 61 6d 65 73 2c 20 24 73 74 61 62 69 6c 69 74 79 29 geAcceptable($names,.$stability)
41a60 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 64 28 24 74 68 69 73 2d 3e 69 64 2b 2b 29 ).{.$package->setId($this->id++)
41a80 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a ;.$this->packages[].=.$package;.
41aa0 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 45 78 61 63 74 4e 61 6d 65 5b 24 70 61 63 6b 61 $this->packageByExactName[$packa
41ac0 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 24 ge->getName()][$package->id].=.$
41ae0 70 61 63 6b 61 67 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 20 61 73 20 24 70 72 package;..foreach.($names.as.$pr
41b00 6f 76 69 64 65 64 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 4e 61 6d 65 5b 24 ovided).{.$this->packageByName[$
41b20 70 72 6f 76 69 64 65 64 5d 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 20 24 6e 61 provided][].=.$package;.}....$na
41b40 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 69 66 20 28 69 73 me.=.$package->getName();.if.(is
41b60 73 65 74 28 24 72 6f 6f 74 41 6c 69 61 73 65 73 5b 24 6e 61 6d 65 5d 5b 24 70 61 63 6b 61 67 65 set($rootAliases[$name][$package
41b80 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 5d 29 29 20 7b 0a 24 61 6c 69 61 73 20 3d 20 24 72 6f ->getVersion()])).{.$alias.=.$ro
41ba0 6f 74 41 6c 69 61 73 65 73 5b 24 6e 61 6d 65 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 otAliases[$name][$package->getVe
41bc0 72 73 69 6f 6e 28 29 5d 3b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f rsion()];.if.($package.instanceo
41be0 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 61 f.AliasPackage).{.$package.=.$pa
41c00 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 7d 0a 24 61 6c 69 61 73 50 61 63 ckage->getAliasOf();.}.$aliasPac
41c20 6b 61 67 65 20 3d 20 6e 65 77 20 41 6c 69 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 kage.=.new.AliasPackage($package
41c40 2c 20 24 61 6c 69 61 73 5b 27 61 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2c 20 24 61 ,.$alias['alias_normalized'],.$a
41c60 6c 69 61 73 5b 27 61 6c 69 61 73 27 5d 29 3b 0a 24 61 6c 69 61 73 50 61 63 6b 61 67 65 2d 3e 73 lias['alias']);.$aliasPackage->s
41c80 65 74 52 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 74 72 75 65 29 3b 0a 24 61 6c 69 61 73 etRootPackageAlias(true);.$alias
41ca0 50 61 63 6b 61 67 65 2d 3e 73 65 74 49 64 28 24 74 68 69 73 2d 3e 69 64 2b 2b 29 3b 0a 0a 24 70 Package->setId($this->id++);..$p
41cc0 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 61 64 64 50 61 63 6b ackage->getRepository()->addPack
41ce0 61 67 65 28 24 61 6c 69 61 73 50 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 age($aliasPackage);.$this->packa
41d00 67 65 73 5b 5d 20 3d 20 24 61 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 24 74 68 69 73 2d 3e 70 61 ges[].=.$aliasPackage;.$this->pa
41d20 63 6b 61 67 65 42 79 45 78 61 63 74 4e 61 6d 65 5b 24 61 6c 69 61 73 50 61 63 6b 61 67 65 2d 3e ckageByExactName[$aliasPackage->
41d40 67 65 74 4e 61 6d 65 28 29 5d 5b 24 61 6c 69 61 73 50 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 getName()][$aliasPackage->id].=.
41d60 24 61 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 6c 69 61 73 50 $aliasPackage;..foreach.($aliasP
41d80 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 28 29 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 ackage->getNames().as.$name).{.$
41da0 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 4e 61 6d 65 5b 24 6e 61 6d 65 5d 5b 5d 20 3d 20 24 this->packageByName[$name][].=.$
41dc0 61 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 aliasPackage;.}.}.}.}.}.}.}..pub
41de0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 69 6f 72 69 74 79 28 52 65 70 6f 73 69 74 lic.function.getPriority(Reposit
41e00 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 29 0a 7b 0a 24 70 72 69 6f 72 69 74 79 20 oryInterface.$repo).{.$priority.
41e20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 72 65 70 6f 2c 20 24 74 68 69 73 2d 3e 72 65 70 =.array_search($repo,.$this->rep
41e40 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d ositories,.true);..if.(false.===
41e60 20 24 70 72 69 6f 72 69 74 79 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 .$priority).{.throw.new.\Runtime
41e80 45 78 63 65 70 74 69 6f 6e 28 22 43 6f 75 6c 64 20 6e 6f 74 20 64 65 74 65 72 6d 69 6e 65 20 72 Exception("Could.not.determine.r
41ea0 65 70 6f 73 69 74 6f 72 79 20 70 72 69 6f 72 69 74 79 2e 20 54 68 65 20 72 65 70 6f 73 69 74 6f epository.priority..The.reposito
41ec0 72 79 20 77 61 73 20 6e 6f 74 20 72 65 67 69 73 74 65 72 65 64 20 69 6e 20 74 68 65 20 70 6f 6f ry.was.not.registered.in.the.poo
41ee0 6c 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 2d 24 70 72 69 6f 72 69 74 79 3b 0a 7d 0a 0a 0a l.");.}..return.-$priority;.}...
41f00 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 63 6b 61 67 65 42 79 49 64 .....public.function.packageById
41f20 28 24 69 64 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 5b 24 ($id).{.return.$this->packages[$
41f40 69 64 20 2d 20 31 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 id.-.1];.}.....public.function.c
41f60 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 61 63 ount().{.return.count($this->pac
41f80 6b 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 kages);.}............public.func
41fa0 74 69 6f 6e 20 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6e 61 6d 65 2c 20 43 6f 6e 73 74 72 61 tion.whatProvides($name,.Constra
41fc0 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 2c intInterface.$constraint.=.null,
41fe0 20 24 6d 75 73 74 4d 61 74 63 68 4e 61 6d 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6b 65 79 20 .$mustMatchName.=.false).{.$key.
42000 3d 20 28 28 69 6e 74 29 20 24 6d 75 73 74 4d 61 74 63 68 4e 61 6d 65 29 2e 24 63 6f 6e 73 74 72 =.((int).$mustMatchName).$constr
42020 61 69 6e 74 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 43 aint;.if.(isset($this->providerC
42040 61 63 68 65 5b 24 6e 61 6d 65 5d 5b 24 6b 65 79 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 ache[$name][$key])).{.return.$th
42060 69 73 2d 3e 70 72 6f 76 69 64 65 72 43 61 63 68 65 5b 24 6e 61 6d 65 5d 5b 24 6b 65 79 5d 3b 0a is->providerCache[$name][$key];.
42080 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 43 61 63 68 65 5b 24 }..return.$this->providerCache[$
420a0 6e 61 6d 65 5d 5b 24 6b 65 79 5d 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 75 74 65 57 68 61 74 name][$key].=.$this->computeWhat
420c0 50 72 6f 76 69 64 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 75 Provides($name,.$constraint,.$mu
420e0 73 74 4d 61 74 63 68 4e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 stMatchName);.}.....private.func
42100 74 69 6f 6e 20 63 6f 6d 70 75 74 65 57 68 61 74 50 72 6f 76 69 64 65 73 28 24 6e 61 6d 65 2c 20 tion.computeWhatProvides($name,.
42120 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 75 73 74 4d 61 74 63 68 4e 61 6d 65 20 3d 20 66 61 $constraint,.$mustMatchName.=.fa
42140 6c 73 65 29 0a 7b 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 lse).{.$candidates.=.array();..f
42160 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 52 65 70 6f 73 20 61 73 20 oreach.($this->providerRepos.as.
42180 24 72 65 70 6f 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 2d 3e 77 68 61 74 50 72 6f $repo).{.foreach.($repo->whatPro
421a0 76 69 64 65 73 28 24 74 68 69 73 2c 20 24 6e 61 6d 65 29 20 61 73 20 24 63 61 6e 64 69 64 61 74 vides($this,.$name).as.$candidat
421c0 65 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b e).{.$candidates[].=.$candidate;
421e0 0a 69 66 20 28 24 63 61 6e 64 69 64 61 74 65 2d 3e 69 64 20 3c 20 31 29 20 7b 0a 24 63 61 6e 64 .if.($candidate->id.<.1).{.$cand
42200 69 64 61 74 65 2d 3e 73 65 74 49 64 28 24 74 68 69 73 2d 3e 69 64 2b 2b 29 3b 0a 24 74 68 69 73 idate->setId($this->id++);.$this
42220 2d 3e 70 61 63 6b 61 67 65 73 5b 24 74 68 69 73 2d 3e 69 64 20 2d 20 32 5d 20 3d 20 24 63 61 6e ->packages[$this->id.-.2].=.$can
42240 64 69 64 61 74 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6d 75 73 74 4d 61 74 63 68 4e 61 6d didate;.}.}.}..if.($mustMatchNam
42260 65 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 e).{.$candidates.=.array_filter(
42280 24 63 61 6e 64 69 64 61 74 65 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 63 61 6e 64 69 64 61 74 $candidates,.function.($candidat
422a0 65 29 20 75 73 65 20 28 24 6e 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 6e 64 69 64 61 e).use.($name).{.return.$candida
422c0 74 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 20 24 6e 61 6d 65 3b 0a 7d 29 3b 0a 69 66 20 28 te->getName().==.$name;.});.if.(
422e0 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 45 78 61 63 74 4e 61 6d 65 5b isset($this->packageByExactName[
42300 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 61 72 72 61 79 5f 6d $name])).{.$candidates.=.array_m
42320 65 72 67 65 28 24 63 61 6e 64 69 64 61 74 65 73 2c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 erge($candidates,.$this->package
42340 42 79 45 78 61 63 74 4e 61 6d 65 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 ByExactName[$name]);.}.}.elseif.
42360 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 4e 61 6d 65 5b 24 6e 61 6d (isset($this->packageByName[$nam
42380 65 5d 29 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 e])).{.$candidates.=.array_merge
423a0 28 24 63 61 6e 64 69 64 61 74 65 73 2c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 4e 61 ($candidates,.$this->packageByNa
423c0 6d 65 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 70 72 6f 76 69 me[$name]);.}..$matches.=.$provi
423e0 64 65 4d 61 74 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6e 61 6d 65 4d 61 74 63 68 20 deMatches.=.array();.$nameMatch.
42400 3d 20 66 61 6c 73 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 61 6e 64 69 64 61 74 65 73 20 61 =.false;..foreach.($candidates.a
42420 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 24 61 6c 69 61 73 4f 66 43 61 6e 64 69 64 61 74 s.$candidate).{.$aliasOfCandidat
42440 65 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 0a 20 69 66 20 28 24 63 61 6e 64 69 64 61 74 65 20 69 6e e.=.null;......if.($candidate.in
42460 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 61 6c 69 61 73 4f stanceof.AliasPackage).{.$aliasO
42480 66 43 61 6e 64 69 64 61 74 65 20 3d 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 41 6c 69 61 fCandidate.=.$candidate->getAlia
424a0 73 4f 66 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 20 21 sOf();.}..if.($this->whitelist.!
424c0 3d 3d 20 6e 75 6c 6c 20 26 26 20 28 0a 28 21 28 24 63 61 6e 64 69 64 61 74 65 20 69 6e 73 74 61 ==.null.&&.(.(!($candidate.insta
424e0 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 26 26 20 21 69 73 73 65 74 28 24 74 nceof.AliasPackage).&&.!isset($t
42500 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 5b 24 63 61 6e 64 69 64 61 74 65 2d 3e 69 64 5d 29 29 his->whitelist[$candidate->id]))
42520 20 7c 7c 0a 28 24 63 61 6e 64 69 64 61 74 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 .||.($candidate.instanceof.Alias
42540 50 61 63 6b 61 67 65 20 26 26 20 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 Package.&&.!isset($this->whiteli
42560 73 74 5b 24 61 6c 69 61 73 4f 66 43 61 6e 64 69 64 61 74 65 2d 3e 69 64 5d 29 29 0a 29 29 20 7b st[$aliasOfCandidate->id])).)).{
42580 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 .continue;.}.switch.($this->matc
425a0 68 28 24 63 61 6e 64 69 64 61 74 65 2c 20 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 h($candidate,.$name,.$constraint
425c0 29 29 20 7b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 4e 4f 4e 45 3a 0a 62 72 65 61 )).{.case.self::MATCH_NONE:.brea
425e0 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 4e 41 4d 45 3a 0a 24 6e 61 6d 65 k;..case.self::MATCH_NAME:.$name
42600 4d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a Match.=.true;.break;..case.self:
42620 3a 4d 41 54 43 48 3a 0a 24 6e 61 6d 65 4d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 24 6d 61 74 63 :MATCH:.$nameMatch.=.true;.$matc
42640 68 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 hes[].=.$candidate;.break;..case
42660 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 50 52 4f 56 49 44 45 3a 0a 24 70 72 6f 76 69 64 65 4d 61 .self::MATCH_PROVIDE:.$provideMa
42680 74 63 68 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 tches[].=.$candidate;.break;..ca
426a0 73 65 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 52 45 50 4c 41 43 45 3a 0a 24 6d 61 74 63 68 65 73 se.self::MATCH_REPLACE:.$matches
426c0 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 [].=.$candidate;.break;..case.se
426e0 6c 66 3a 3a 4d 41 54 43 48 5f 46 49 4c 54 45 52 45 44 3a 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 lf::MATCH_FILTERED:.break;..defa
42700 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 ult:.throw.new.\UnexpectedValueE
42720 78 63 65 70 74 69 6f 6e 28 27 55 6e 65 78 70 65 63 74 65 64 20 6d 61 74 63 68 20 74 79 70 65 27 xception('Unexpected.match.type'
42740 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 6e 61 6d 65 4d 61 74 63 68 29 20 7b 0a 72 65 74 75 );.}.}....if.($nameMatch).{.retu
42760 72 6e 20 24 6d 61 74 63 68 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 65 72 rn.$matches;.}..return.array_mer
42780 67 65 28 24 6d 61 74 63 68 65 73 2c 20 24 70 72 6f 76 69 64 65 4d 61 74 63 68 65 73 29 3b 0a 7d ge($matches,.$provideMatches);.}
427a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 ..public.function.literalToPacka
427c0 67 65 28 24 6c 69 74 65 72 61 6c 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 ge($literal).{.$packageId.=.abs(
427e0 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 $literal);..return.$this->packag
42800 65 42 79 49 64 28 24 70 61 63 6b 61 67 65 49 64 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e eById($packageId);.}..public.fun
42820 63 74 69 6f 6e 20 6c 69 74 65 72 61 6c 54 6f 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 6c 69 74 ction.literalToPrettyString($lit
42840 65 72 61 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 eral,.$installedMap).{.$package.
42860 3d 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 =.$this->literalToPackage($liter
42880 61 6c 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 al);..if.(isset($installedMap[$p
428a0 61 63 6b 61 67 65 2d 3e 69 64 5d 29 29 20 7b 0a 24 70 72 65 66 69 78 20 3d 20 28 24 6c 69 74 65 ackage->id])).{.$prefix.=.($lite
428c0 72 61 6c 20 3e 20 30 20 3f 20 27 6b 65 65 70 27 20 3a 20 27 72 65 6d 6f 76 65 27 29 3b 0a 7d 20 ral.>.0.?.'keep'.:.'remove');.}.
428e0 65 6c 73 65 20 7b 0a 24 70 72 65 66 69 78 20 3d 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 3f else.{.$prefix.=.($literal.>.0.?
42900 20 27 69 6e 73 74 61 6c 6c 27 20 3a 20 27 64 6f 6e 5c 27 74 20 69 6e 73 74 61 6c 6c 27 29 3b 0a .'install'.:.'don\'t.install');.
42920 7d 0a 0a 72 65 74 75 72 6e 20 24 70 72 65 66 69 78 2e 27 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e }..return.$prefix.'.'.$package->
42940 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e getPrettyString();.}..public.fun
42960 63 74 69 6f 6e 20 69 73 50 61 63 6b 61 67 65 41 63 63 65 70 74 61 62 6c 65 28 24 6e 61 6d 65 2c ction.isPackageAcceptable($name,
42980 20 24 73 74 61 62 69 6c 69 74 79 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 .$stability).{.foreach.((array).
429a0 24 6e 61 6d 65 20 61 73 20 24 6e 29 20 7b 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 $name.as.$n).{...if.(!isset($thi
429c0 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 5d 29 20 26 26 20 69 73 73 65 74 28 s->stabilityFlags[$n]).&&.isset(
429e0 24 74 68 69 73 2d 3e 61 63 63 65 70 74 61 62 6c 65 53 74 61 62 69 6c 69 74 69 65 73 5b 24 73 74 $this->acceptableStabilities[$st
42a00 61 62 69 6c 69 74 79 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 ability])).{.return.true;.}....i
42a20 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 f.(isset($this->stabilityFlags[$
42a40 6e 5d 29 20 26 26 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 n]).&&.BasePackage::$stabilities
42a60 5b 24 73 74 61 62 69 6c 69 74 79 5d 20 3c 3d 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 [$stability].<=.$this->stability
42a80 46 6c 61 67 73 5b 24 6e 5d 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 Flags[$n]).{.return.true;.}.}..r
42aa0 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 eturn.false;.}...........private
42ac0 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 28 24 63 61 6e 64 69 64 61 74 65 2c 20 24 6e 61 6d .function.match($candidate,.$nam
42ae0 65 2c 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 e,.ConstraintInterface.$constrai
42b00 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 63 61 6e 64 69 64 61 74 65 4e 61 6d 65 20 3d 20 24 63 nt.=.null).{.$candidateName.=.$c
42b20 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 24 63 61 6e 64 69 64 61 74 65 56 andidate->getName();.$candidateV
42b40 65 72 73 69 6f 6e 20 3d 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 ersion.=.$candidate->getVersion(
42b60 29 3b 0a 24 69 73 44 65 76 20 3d 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 53 74 61 62 69 );.$isDev.=.$candidate->getStabi
42b80 6c 69 74 79 28 29 20 3d 3d 3d 20 27 64 65 76 27 3b 0a 24 69 73 41 6c 69 61 73 20 3d 20 24 63 61 lity().===.'dev';.$isAlias.=.$ca
42ba0 6e 64 69 64 61 74 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 3b ndidate.instanceof.AliasPackage;
42bc0 0a 0a 69 66 20 28 21 24 69 73 44 65 76 20 26 26 20 21 24 69 73 41 6c 69 61 73 20 26 26 20 69 73 ..if.(!$isDev.&&.!$isAlias.&&.is
42be0 73 65 74 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 52 65 71 75 69 72 65 73 5b 24 6e 61 6d 65 5d set($this->filterRequires[$name]
42c00 29 29 20 7b 0a 24 72 65 71 75 69 72 65 46 69 6c 74 65 72 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c )).{.$requireFilter.=.$this->fil
42c20 74 65 72 52 65 71 75 69 72 65 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 terRequires[$name];.}.else.{.$re
42c40 71 75 69 72 65 46 69 6c 74 65 72 20 3d 20 6e 65 77 20 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e quireFilter.=.new.EmptyConstrain
42c60 74 3b 0a 7d 0a 0a 69 66 20 28 24 63 61 6e 64 69 64 61 74 65 4e 61 6d 65 20 3d 3d 3d 20 24 6e 61 t;.}..if.($candidateName.===.$na
42c80 6d 65 29 20 7b 0a 24 70 6b 67 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 74 me).{.$pkgConstraint.=.new.Const
42ca0 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 63 61 6e 64 69 64 61 74 65 56 65 72 73 69 6f 6e 29 3b 0a raint('==',.$candidateVersion);.
42cc0 0a 69 66 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 3d 3d 20 6e 75 6c 6c 20 7c 7c 20 24 63 6f .if.($constraint.===.null.||.$co
42ce0 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 70 6b 67 43 6f 6e 73 74 72 61 69 6e 74 nstraint->matches($pkgConstraint
42d00 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 46 69 6c 74 65 72 2d 3e 6d 61 74 63 )).{.return.$requireFilter->matc
42d20 68 65 73 28 24 70 6b 67 43 6f 6e 73 74 72 61 69 6e 74 29 20 3f 20 73 65 6c 66 3a 3a 4d 41 54 43 hes($pkgConstraint).?.self::MATC
42d40 48 20 3a 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 46 49 4c 54 45 52 45 44 3b 0a 7d 0a 0a 72 65 74 H.:.self::MATCH_FILTERED;.}..ret
42d60 75 72 6e 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 4e 41 4d 45 3b 0a 7d 0a 0a 24 70 72 6f 76 69 64 urn.self::MATCH_NAME;.}..$provid
42d80 65 73 20 3d 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 50 72 6f 76 69 64 65 73 28 29 3b 0a es.=.$candidate->getProvides();.
42da0 24 72 65 70 6c 61 63 65 73 20 3d 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 52 65 70 6c 61 $replaces.=.$candidate->getRepla
42dc0 63 65 73 28 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6c 61 63 65 73 5b 30 5d ces();....if.(isset($replaces[0]
42de0 29 20 7c 7c 20 69 73 73 65 74 28 24 70 72 6f 76 69 64 65 73 5b 30 5d 29 29 20 7b 0a 66 6f 72 65 ).||.isset($provides[0])).{.fore
42e00 61 63 68 20 28 24 70 72 6f 76 69 64 65 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 24 ach.($provides.as.$link).{.if.($
42e20 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 6e 61 6d 65 20 26 26 20 28 link->getTarget().===.$name.&&.(
42e40 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 3d 3d 20 6e 75 6c 6c 20 7c 7c 20 24 63 6f 6e 73 74 72 61 $constraint.===.null.||.$constra
42e60 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e int->matches($link->getConstrain
42e80 74 28 29 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 46 69 6c 74 65 72 2d 3e t()))).{.return.$requireFilter->
42ea0 6d 61 74 63 68 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 20 matches($link->getConstraint()).
42ec0 3f 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 50 52 4f 56 49 44 45 20 3a 20 73 65 6c 66 3a 3a 4d 41 ?.self::MATCH_PROVIDE.:.self::MA
42ee0 54 43 48 5f 46 49 4c 54 45 52 45 44 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 TCH_FILTERED;.}.}..foreach.($rep
42f00 6c 61 63 65 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 2d 3e 67 65 74 laces.as.$link).{.if.($link->get
42f20 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 6e 61 6d 65 20 26 26 20 28 24 63 6f 6e 73 74 72 61 69 Target().===.$name.&&.($constrai
42f40 6e 74 20 3d 3d 3d 20 6e 75 6c 6c 20 7c 7c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 nt.===.null.||.$constraint->matc
42f60 68 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 29 29 20 7b 0a hes($link->getConstraint()))).{.
42f80 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 46 69 6c 74 65 72 2d 3e 6d 61 74 63 68 65 73 28 24 return.$requireFilter->matches($
42fa0 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 20 3f 20 73 65 6c 66 3a 3a 4d link->getConstraint()).?.self::M
42fc0 41 54 43 48 5f 52 45 50 4c 41 43 45 20 3a 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 46 49 4c 54 45 ATCH_REPLACE.:.self::MATCH_FILTE
42fe0 52 45 44 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 4e 4f 4e RED;.}.}..return.self::MATCH_NON
43000 45 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 70 72 6f 76 69 64 65 73 5b 24 6e 61 6d 65 5d E;.}..if.(isset($provides[$name]
43020 29 20 26 26 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 3d 3d 20 6e 75 6c 6c 20 7c 7c 20 24 63 ).&&.($constraint.===.null.||.$c
43040 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 70 72 6f 76 69 64 65 73 5b 24 6e 61 onstraint->matches($provides[$na
43060 6d 65 5d 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 29 29 20 7b 0a 72 65 74 75 72 6e me]->getConstraint()))).{.return
43080 20 24 72 65 71 75 69 72 65 46 69 6c 74 65 72 2d 3e 6d 61 74 63 68 65 73 28 24 70 72 6f 76 69 64 .$requireFilter->matches($provid
430a0 65 73 5b 24 6e 61 6d 65 5d 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 20 3f 20 73 65 es[$name]->getConstraint()).?.se
430c0 6c 66 3a 3a 4d 41 54 43 48 5f 50 52 4f 56 49 44 45 20 3a 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f lf::MATCH_PROVIDE.:.self::MATCH_
430e0 46 49 4c 54 45 52 45 44 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6c 61 63 65 73 FILTERED;.}..if.(isset($replaces
43100 5b 24 6e 61 6d 65 5d 29 20 26 26 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 3d 3d 20 6e 75 6c [$name]).&&.($constraint.===.nul
43120 6c 20 7c 7c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 72 65 70 6c 61 l.||.$constraint->matches($repla
43140 63 65 73 5b 24 6e 61 6d 65 5d 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 29 29 20 7b ces[$name]->getConstraint()))).{
43160 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 46 69 6c 74 65 72 2d 3e 6d 61 74 63 68 65 73 28 .return.$requireFilter->matches(
43180 24 72 65 70 6c 61 63 65 73 5b 24 6e 61 6d 65 5d 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 $replaces[$name]->getConstraint(
431a0 29 29 20 3f 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 52 45 50 4c 41 43 45 20 3a 20 73 65 6c 66 3a )).?.self::MATCH_REPLACE.:.self:
431c0 3a 4d 41 54 43 48 5f 46 49 4c 54 45 52 45 44 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a :MATCH_FILTERED;.}..return.self:
431e0 3a 4d 41 54 43 48 5f 4e 4f 4e 45 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a :MATCH_NONE;.}.}.<?php..........
43200 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 ..namespace.Composer\DependencyR
43220 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 62 6c 65 6d 0a 7b 0a 0a esolver;.......class.Problem.{..
43240 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 61 73 6f 6e 53 65 65 6e 3b 0a 0a 0a 0a 0a 0a 70 ...protected.$reasonSeen;......p
43260 72 6f 74 65 63 74 65 64 20 24 72 65 61 73 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 rotected.$reasons.=.array();..pr
43280 6f 74 65 63 74 65 64 20 24 73 65 63 74 69 6f 6e 20 3d 20 30 3b 0a 0a 70 72 6f 74 65 63 74 65 64 otected.$section.=.0;..protected
432a0 20 24 70 6f 6f 6c 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 .$pool;..public.function.__const
432c0 72 75 63 74 28 50 6f 6f 6c 20 24 70 6f 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d ruct(Pool.$pool).{.$this->pool.=
432e0 20 24 70 6f 6f 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 .$pool;.}.......public.function.
43300 61 64 64 52 75 6c 65 28 52 75 6c 65 20 24 72 75 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 addRule(Rule.$rule).{.$this->add
43320 52 65 61 73 6f 6e 28 73 70 6c 5f 6f 62 6a 65 63 74 5f 68 61 73 68 28 24 72 75 6c 65 29 2c 20 61 Reason(spl_object_hash($rule),.a
43340 72 72 61 79 28 0a 27 72 75 6c 65 27 20 3d 3e 20 24 72 75 6c 65 2c 0a 27 6a 6f 62 27 20 3d 3e 20 rray(.'rule'.=>.$rule,.'job'.=>.
43360 24 72 75 6c 65 2d 3e 67 65 74 4a 6f 62 28 29 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 $rule->getJob(),.));.}.......pub
43380 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 lic.function.getReasons().{.retu
433a0 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c rn.$this->reasons;.}........publ
433c0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 61 72 72 61 ic.function.getPrettyString(arra
433e0 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 72 65 y.$installedMap.=.array()).{.$re
43400 61 73 6f 6e 73 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 72 asons.=.call_user_func_array('ar
43420 72 61 79 5f 6d 65 72 67 65 27 2c 20 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 74 68 69 73 2d ray_merge',.array_reverse($this-
43440 3e 72 65 61 73 6f 6e 73 29 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 72 65 61 73 6f 6e 73 29 >reasons));..if.(count($reasons)
43460 20 3d 3d 3d 20 31 29 20 7b 0a 72 65 73 65 74 28 24 72 65 61 73 6f 6e 73 29 3b 0a 24 72 65 61 73 .===.1).{.reset($reasons);.$reas
43480 6f 6e 20 3d 20 63 75 72 72 65 6e 74 28 24 72 65 61 73 6f 6e 73 29 3b 0a 0a 24 72 75 6c 65 20 3d on.=.current($reasons);..$rule.=
434a0 20 24 72 65 61 73 6f 6e 5b 27 72 75 6c 65 27 5d 3b 0a 24 6a 6f 62 20 3d 20 24 72 65 61 73 6f 6e .$reason['rule'];.$job.=.$reason
434c0 5b 27 6a 6f 62 27 5d 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 ['job'];..if.(isset($job['constr
434e0 61 69 6e 74 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f aint'])).{.$packages.=.$this->po
43500 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 ol->whatProvides($job['packageNa
43520 6d 65 27 5d 2c 20 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 3b 0a 7d 20 65 6c 73 me'],.$job['constraint']);.}.els
43540 65 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 20 28 e.{.$packages.=.array();.}..if.(
43560 24 6a 6f 62 20 26 26 20 24 6a 6f 62 5b 27 63 6d 64 27 5d 20 3d 3d 3d 20 27 69 6e 73 74 61 6c 6c $job.&&.$job['cmd'].===.'install
43580 27 20 26 26 20 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 73 29 29 20 7b 0a 0a 0a 20 69 66 20 28 '.&&.empty($packages)).{....if.(
435a0 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 20 3d 3d 3d 20 27 70 68 70 27 20 7c 7c $job['packageName'].===.'php'.||
435c0 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 20 3d 3d 3d 20 27 70 68 70 2d 36 34 .$job['packageName'].===.'php-64
435e0 62 69 74 27 20 7c 7c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 20 3d 3d 3d 20 bit'.||.$job['packageName'].===.
43600 27 68 68 76 6d 27 29 20 7b 0a 24 61 76 61 69 6c 61 62 6c 65 20 3d 20 24 74 68 69 73 2d 3e 70 6f 'hhvm').{.$available.=.$this->po
43620 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 ol->whatProvides($job['packageNa
43640 6d 65 27 5d 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 63 6f 75 6e 74 28 24 61 76 61 69 6c 61 62 me']);.$version.=.count($availab
43660 6c 65 29 20 3f 20 24 61 76 61 69 6c 61 62 6c 65 5b 30 5d 2d 3e 67 65 74 50 72 65 74 74 79 56 65 le).?.$available[0]->getPrettyVe
43680 72 73 69 6f 6e 28 29 20 3a 20 70 68 70 76 65 72 73 69 6f 6e 28 29 3b 0a 0a 24 6d 73 67 20 3d 20 rsion().:.phpversion();..$msg.=.
436a0 22 5c 6e 20 20 20 20 2d 20 54 68 69 73 20 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 73 20 22 "\n....-.This.package.requires."
436c0 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 .$job['packageName'].$this->cons
436e0 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 traintToText($job['constraint'])
43700 2e 27 20 62 75 74 20 27 3b 0a 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 .'.but.';..if.(defined('HHVM_VER
43720 53 49 4f 4e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 73 67 20 2e 20 27 79 6f 75 72 20 48 48 SION')).{.return.$msg...'your.HH
43740 56 4d 20 76 65 72 73 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 73 61 74 69 73 66 79 20 74 68 61 74 VM.version.does.not.satisfy.that
43760 20 72 65 71 75 69 72 65 6d 65 6e 74 2e 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6a 6f 62 5b 27 .requirement.';.}.elseif.($job['
43780 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 20 3d 3d 3d 20 27 68 68 76 6d 27 29 20 7b 0a 72 65 74 75 packageName'].===.'hhvm').{.retu
437a0 72 6e 20 24 6d 73 67 20 2e 20 27 79 6f 75 20 61 72 65 20 72 75 6e 6e 69 6e 67 20 74 68 69 73 20 rn.$msg...'you.are.running.this.
437c0 77 69 74 68 20 50 48 50 20 61 6e 64 20 6e 6f 74 20 48 48 56 4d 2e 27 3b 0a 7d 0a 0a 72 65 74 75 with.PHP.and.not.HHVM.';.}..retu
437e0 72 6e 20 24 6d 73 67 20 2e 20 27 79 6f 75 72 20 50 48 50 20 76 65 72 73 69 6f 6e 20 28 27 2e 20 rn.$msg...'your.PHP.version.('..
43800 24 76 65 72 73 69 6f 6e 20 2e 27 29 20 64 6f 65 73 20 6e 6f 74 20 73 61 74 69 73 66 79 20 74 68 $version..').does.not.satisfy.th
43820 61 74 20 72 65 71 75 69 72 65 6d 65 6e 74 2e 27 3b 0a 7d 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d at.requirement.';.}....if.(0.===
43840 20 73 74 72 69 70 6f 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 27 65 .stripos($job['packageName'],.'e
43860 78 74 2d 27 29 29 20 7b 0a 24 65 78 74 20 3d 20 73 75 62 73 74 72 28 24 6a 6f 62 5b 27 70 61 63 xt-')).{.$ext.=.substr($job['pac
43880 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 34 29 3b 0a 24 65 72 72 6f 72 20 3d 20 65 78 74 65 6e 73 69 kageName'],.4);.$error.=.extensi
438a0 6f 6e 5f 6c 6f 61 64 65 64 28 24 65 78 74 29 20 3f 20 27 68 61 73 20 74 68 65 20 77 72 6f 6e 67 on_loaded($ext).?.'has.the.wrong
438c0 20 76 65 72 73 69 6f 6e 20 28 27 2e 28 70 68 70 76 65 72 73 69 6f 6e 28 24 65 78 74 29 20 3f 3a .version.('.(phpversion($ext).?:
438e0 20 27 30 27 29 2e 27 29 20 69 6e 73 74 61 6c 6c 65 64 27 20 3a 20 27 69 73 20 6d 69 73 73 69 6e .'0').').installed'.:.'is.missin
43900 67 20 66 72 6f 6d 20 79 6f 75 72 20 73 79 73 74 65 6d 27 3b 0a 0a 72 65 74 75 72 6e 20 22 5c 6e g.from.your.system';..return."\n
43920 20 20 20 20 2d 20 54 68 65 20 72 65 71 75 65 73 74 65 64 20 50 48 50 20 65 78 74 65 6e 73 69 6f ....-.The.requested.PHP.extensio
43940 6e 20 22 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 24 74 68 69 73 2d 3e 63 n.".$job['packageName'].$this->c
43960 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 onstraintToText($job['constraint
43980 27 5d 29 2e 27 20 27 2e 24 65 72 72 6f 72 2e 27 2e 20 49 6e 73 74 61 6c 6c 20 6f 72 20 65 6e 61 ']).'.'.$error.'..Install.or.ena
439a0 62 6c 65 20 50 48 50 5c 27 73 20 27 2e 24 65 78 74 2e 27 20 65 78 74 65 6e 73 69 6f 6e 2e 27 3b ble.PHP\'s.'.$ext.'.extension.';
439c0 0a 7d 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 69 70 6f 73 28 24 6a 6f 62 5b 27 70 61 .}....if.(0.===.stripos($job['pa
439e0 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 27 6c 69 62 2d 27 29 29 20 7b 0a 69 66 20 28 73 74 72 74 ckageName'],.'lib-')).{.if.(strt
43a00 6f 6c 6f 77 65 72 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 20 3d 3d 3d 20 olower($job['packageName']).===.
43a20 27 6c 69 62 2d 69 63 75 27 29 20 7b 0a 24 65 72 72 6f 72 20 3d 20 65 78 74 65 6e 73 69 6f 6e 5f 'lib-icu').{.$error.=.extension_
43a40 6c 6f 61 64 65 64 28 27 69 6e 74 6c 27 29 20 3f 20 27 68 61 73 20 74 68 65 20 77 72 6f 6e 67 20 loaded('intl').?.'has.the.wrong.
43a60 76 65 72 73 69 6f 6e 20 69 6e 73 74 61 6c 6c 65 64 2c 20 74 72 79 20 75 70 67 72 61 64 69 6e 67 version.installed,.try.upgrading
43a80 20 74 68 65 20 69 6e 74 6c 20 65 78 74 65 6e 73 69 6f 6e 2e 27 20 3a 20 27 69 73 20 6d 69 73 73 .the.intl.extension.'.:.'is.miss
43aa0 69 6e 67 20 66 72 6f 6d 20 79 6f 75 72 20 73 79 73 74 65 6d 2c 20 6d 61 6b 65 20 73 75 72 65 20 ing.from.your.system,.make.sure.
43ac0 74 68 65 20 69 6e 74 6c 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6c 6f 61 64 65 64 2e 27 3b 0a the.intl.extension.is.loaded.';.
43ae0 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 54 68 65 20 72 65 71 75 65 73 74 65 64 20 6c .return."\n....-.The.requested.l
43b00 69 6e 6b 65 64 20 6c 69 62 72 61 72 79 20 22 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d inked.library.".$job['packageNam
43b20 65 27 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 e'].$this->constraintToText($job
43b40 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 20 27 2e 24 65 72 72 6f 72 3b 0a 7d 0a 0a 72 ['constraint']).'.'.$error;.}..r
43b60 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 54 68 65 20 72 65 71 75 65 73 74 65 64 20 6c 69 6e eturn."\n....-.The.requested.lin
43b80 6b 65 64 20 6c 69 62 72 61 72 79 20 22 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 ked.library.".$job['packageName'
43ba0 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 ].$this->constraintToText($job['
43bc0 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 20 68 61 73 20 74 68 65 20 77 72 6f 6e 67 20 76 65 constraint']).'.has.the.wrong.ve
43be0 72 73 69 6f 6e 20 69 6e 73 74 61 6c 6c 65 64 20 6f 72 20 69 73 20 6d 69 73 73 69 6e 67 20 66 72 rsion.installed.or.is.missing.fr
43c00 6f 6d 20 79 6f 75 72 20 73 79 73 74 65 6d 2c 20 6d 61 6b 65 20 73 75 72 65 20 74 6f 20 6c 6f 61 om.your.system,.make.sure.to.loa
43c20 64 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 70 72 6f 76 69 64 69 6e 67 20 69 74 2e 27 3b 0a d.the.extension.providing.it.';.
43c40 7d 0a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 41 2d 5a 61 2d 7a 30 2d 39 }..if.(!preg_match('{^[A-Za-z0-9
43c60 5f 2e 2f 2d 5d 2b 24 7d 27 2c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 29 _./-]+$}',.$job['packageName']))
43c80 20 7b 0a 24 69 6c 6c 65 67 61 6c 43 68 61 72 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 .{.$illegalChars.=.preg_replace(
43ca0 27 7b 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2f 2d 5d 2b 7d 27 2c 20 27 27 2c 20 24 6a 6f 62 5b 27 '{[A-Za-z0-9_./-]+}',.'',.$job['
43cc0 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d packageName']);..return."\n....-
43ce0 20 54 68 65 20 72 65 71 75 65 73 74 65 64 20 70 61 63 6b 61 67 65 20 22 2e 24 6a 6f 62 5b 27 70 .The.requested.package.".$job['p
43d00 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e ackageName'].'.could.not.be.foun
43d20 64 2c 20 69 74 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 69 74 73 20 6e 61 6d 65 20 69 73 20 69 6e 76 d,.it.looks.like.its.name.is.inv
43d40 61 6c 69 64 2c 20 22 27 2e 24 69 6c 6c 65 67 61 6c 43 68 61 72 73 2e 27 22 20 69 73 20 6e 6f 74 alid,."'.$illegalChars.'".is.not
43d60 20 61 6c 6c 6f 77 65 64 20 69 6e 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 73 2e 27 3b 0a 7d 0a 0a .allowed.in.package.names.';.}..
43d80 69 66 20 28 21 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 if.(!$this->pool->whatProvides($
43da0 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 22 5c job['packageName'])).{.return."\
43dc0 6e 20 20 20 20 2d 20 54 68 65 20 72 65 71 75 65 73 74 65 64 20 70 61 63 6b 61 67 65 20 22 2e 24 n....-.The.requested.package.".$
43de0 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 job['packageName'].'.could.not.b
43e00 65 20 66 6f 75 6e 64 20 69 6e 20 61 6e 79 20 76 65 72 73 69 6f 6e 2c 20 74 68 65 72 65 20 6d 61 e.found.in.any.version,.there.ma
43e20 79 20 62 65 20 61 20 74 79 70 6f 20 69 6e 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 2e y.be.a.typo.in.the.package.name.
43e40 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 54 68 65 20 72 65 71 75 65 73 ';.}..return."\n....-.The.reques
43e60 74 65 64 20 70 61 63 6b 61 67 65 20 22 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 ted.package.".$job['packageName'
43e80 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 ].$this->constraintToText($job['
43ea0 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 constraint']).'.could.not.be.fou
43ec0 6e 64 2e 27 3b 0a 7d 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a nd.';.}.}..$messages.=.array();.
43ee0 0a 66 6f 72 65 61 63 68 20 28 24 72 65 61 73 6f 6e 73 20 61 73 20 24 72 65 61 73 6f 6e 29 20 7b .foreach.($reasons.as.$reason).{
43f00 0a 24 72 75 6c 65 20 3d 20 24 72 65 61 73 6f 6e 5b 27 72 75 6c 65 27 5d 3b 0a 24 6a 6f 62 20 3d .$rule.=.$reason['rule'];.$job.=
43f20 20 24 72 65 61 73 6f 6e 5b 27 6a 6f 62 27 5d 3b 0a 0a 69 66 20 28 24 6a 6f 62 29 20 7b 0a 24 6d .$reason['job'];..if.($job).{.$m
43f40 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 6a 6f 62 54 6f 54 65 78 74 28 24 6a 6f essages[].=.$this->jobToText($jo
43f60 62 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 72 75 6c 65 29 20 7b 0a 69 66 20 28 24 72 75 6c 65 b);.}.elseif.($rule).{.if.($rule
43f80 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 75 6c 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 .instanceof.Rule).{.$messages[].
43fa0 3d 20 24 72 75 6c 65 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 74 68 69 73 2d 3e =.$rule->getPrettyString($this->
43fc0 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 pool,.$installedMap);.}.}.}..ret
43fe0 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 22 2e 69 6d 70 6c 6f 64 65 28 22 5c 6e 20 20 20 20 2d 20 urn."\n....-.".implode("\n....-.
44000 22 2c 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 ",.$messages);.}........protecte
44020 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 65 61 73 6f 6e 28 24 69 64 2c 20 24 72 65 61 73 6f d.function.addReason($id,.$reaso
44040 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 53 65 65 n).{.if.(!isset($this->reasonSee
44060 6e 5b 24 69 64 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 53 65 65 6e 5b 24 69 64 n[$id])).{.$this->reasonSeen[$id
44080 5d 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 73 5b 24 74 68 69 73 2d 3e ].=.true;.$this->reasons[$this->
440a0 73 65 63 74 69 6f 6e 5d 5b 5d 20 3d 20 24 72 65 61 73 6f 6e 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 section][].=.$reason;.}.}..publi
440c0 63 20 66 75 6e 63 74 69 6f 6e 20 6e 65 78 74 53 65 63 74 69 6f 6e 28 29 0a 7b 0a 24 74 68 69 73 c.function.nextSection().{.$this
440e0 2d 3e 73 65 63 74 69 6f 6e 2b 2b 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 ->section++;.}........protected.
44100 66 75 6e 63 74 69 6f 6e 20 6a 6f 62 54 6f 54 65 78 74 28 24 6a 6f 62 29 0a 7b 0a 73 77 69 74 63 function.jobToText($job).{.switc
44120 68 20 28 24 6a 6f 62 5b 27 63 6d 64 27 5d 29 20 7b 0a 63 61 73 65 20 27 69 6e 73 74 61 6c 6c 27 h.($job['cmd']).{.case.'install'
44140 3a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 :.$packages.=.$this->pool->whatP
44160 72 6f 76 69 64 65 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f rovides($job['packageName'],.$jo
44180 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 3b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 73 b['constraint']);.if.(!$packages
441a0 29 20 7b 0a 72 65 74 75 72 6e 20 27 4e 6f 20 70 61 63 6b 61 67 65 20 66 6f 75 6e 64 20 74 6f 20 ).{.return.'No.package.found.to.
441c0 73 61 74 69 73 66 79 20 69 6e 73 74 61 6c 6c 20 72 65 71 75 65 73 74 20 66 6f 72 20 27 2e 24 6a satisfy.install.request.for.'.$j
441e0 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 ob['packageName'].$this->constra
44200 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 3b 0a 7d intToText($job['constraint']);.}
44220 0a 0a 72 65 74 75 72 6e 20 27 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 72 65 71 75 65 73 74 20 66 ..return.'Installation.request.f
44240 6f 72 20 27 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 24 74 68 69 73 2d 3e or.'.$job['packageName'].$this->
44260 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e constraintToText($job['constrain
44280 74 27 5d 29 2e 27 20 2d 3e 20 73 61 74 69 73 66 69 61 62 6c 65 20 62 79 20 27 2e 24 74 68 69 73 t']).'.->.satisfiable.by.'.$this
442a0 2d 3e 67 65 74 50 61 63 6b 61 67 65 4c 69 73 74 28 24 70 61 63 6b 61 67 65 73 29 2e 27 2e 27 3b ->getPackageList($packages).'.';
442c0 0a 63 61 73 65 20 27 75 70 64 61 74 65 27 3a 0a 72 65 74 75 72 6e 20 27 55 70 64 61 74 65 20 72 .case.'update':.return.'Update.r
442e0 65 71 75 65 73 74 20 66 6f 72 20 27 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d equest.for.'.$job['packageName']
44300 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 .$this->constraintToText($job['c
44320 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 2e 27 3b 0a 63 61 73 65 20 27 72 65 6d 6f 76 65 27 3a onstraint']).'.';.case.'remove':
44340 0a 72 65 74 75 72 6e 20 27 52 65 6d 6f 76 61 6c 20 72 65 71 75 65 73 74 20 66 6f 72 20 27 2e 24 .return.'Removal.request.for.'.$
44360 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 job['packageName'].$this->constr
44380 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 aintToText($job['constraint']).'
443a0 27 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 ';.}..if.(isset($job['constraint
443c0 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e '])).{.$packages.=.$this->pool->
443e0 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d whatProvides($job['packageName']
44400 2c 20 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a ,.$job['constraint']);.}.else.{.
44420 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 $packages.=.array();.}..return.'
44440 4a 6f 62 28 63 6d 64 3d 27 2e 24 6a 6f 62 5b 27 63 6d 64 27 5d 2e 27 2c 20 74 61 72 67 65 74 3d Job(cmd='.$job['cmd'].',.target=
44460 27 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 27 2c 20 70 61 63 6b 61 67 65 '.$job['packageName'].',.package
44480 73 3d 5b 27 2e 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 4c 69 73 74 28 24 70 61 63 6b s=['.$this->getPackageList($pack
444a0 61 67 65 73 29 2e 27 5d 29 27 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f ages).'])';.}..protected.functio
444c0 6e 20 67 65 74 50 61 63 6b 61 67 65 4c 69 73 74 28 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 24 70 n.getPackageList($packages).{.$p
444e0 72 65 70 61 72 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 repared.=.array();.foreach.($pac
44500 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 70 72 65 70 61 72 65 64 5b 24 kages.as.$package).{.$prepared[$
44520 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 70 package->getName()]['name'].=.$p
44540 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 24 70 72 65 70 61 72 ackage->getPrettyName();.$prepar
44560 65 64 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 27 76 65 72 73 69 6f 6e ed[$package->getName()]['version
44580 73 27 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 5d 20 3d 20 24 70 s'][$package->getVersion()].=.$p
445a0 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 66 6f ackage->getPrettyVersion();.}.fo
445c0 72 65 61 63 68 20 28 24 70 72 65 70 61 72 65 64 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 70 61 reach.($prepared.as.$name.=>.$pa
445e0 63 6b 61 67 65 29 20 7b 0a 24 70 72 65 70 61 72 65 64 5b 24 6e 61 6d 65 5d 20 3d 20 24 70 61 63 ckage).{.$prepared[$name].=.$pac
44600 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 2e 27 5b 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 kage['name'].'['.implode(',.',.$
44620 70 61 63 6b 61 67 65 5b 27 76 65 72 73 69 6f 6e 73 27 5d 29 2e 27 5d 27 3b 0a 7d 0a 0a 72 65 74 package['versions']).']';.}..ret
44640 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 72 65 70 61 72 65 64 29 3b 0a 7d 0a urn.implode(',.',.$prepared);.}.
44660 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 73 74 72 .......protected.function.constr
44680 61 69 6e 74 54 6f 54 65 78 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 7b 0a 72 65 74 75 72 6e aintToText($constraint).{.return
446a0 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 3f 20 27 20 27 2e 24 63 6f 6e 73 74 72 61 69 6e 74 .($constraint).?.'.'.$constraint
446c0 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 20 3a 20 27 27 3b 0a 7d 0a 7d 0a 3c 3f ->getPrettyString().:.'';.}.}.<?
446e0 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 php............namespace.Compose
44700 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f r\DependencyResolver;..use.Compo
44720 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 ser\Semver\Constraint\Constraint
44740 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 71 75 65 73 74 0a 7b 0a 70 Interface;.....class.Request.{.p
44760 72 6f 74 65 63 74 65 64 20 24 6a 6f 62 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e rotected.$jobs;..public.function
44780 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 20 3d 20 61 .__construct().{.$this->jobs.=.a
447a0 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 rray();.}..public.function.insta
447c0 6c 6c 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 ll($packageName,.ConstraintInter
447e0 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 face.$constraint.=.null).{.$this
44800 2d 3e 61 64 64 4a 6f 62 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 27 69 6e 73 74 61 6c 6c 27 ->addJob($packageName,.'install'
44820 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ,.$constraint);.}..public.functi
44840 6f 6e 20 75 70 64 61 74 65 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 43 6f 6e 73 74 72 61 69 on.update($packageName,.Constrai
44860 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a ntInterface.$constraint.=.null).
44880 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4a 6f 62 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 27 75 {.$this->addJob($packageName,.'u
448a0 70 64 61 74 65 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 pdate',.$constraint);.}..public.
448c0 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 43 6f function.remove($packageName,.Co
448e0 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 nstraintInterface.$constraint.=.
44900 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4a 6f 62 28 24 70 61 63 6b 61 67 65 4e 61 null).{.$this->addJob($packageNa
44920 6d 65 2c 20 27 72 65 6d 6f 76 65 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 0a me,.'remove',.$constraint);.}...
44940 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 78 28 24 70 61 63 6b 61 67 65 ....public.function.fix($package
44960 4e 61 6d 65 2c 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 Name,.ConstraintInterface.$const
44980 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4a 6f 62 28 24 70 raint.=.null).{.$this->addJob($p
449a0 61 63 6b 61 67 65 4e 61 6d 65 2c 20 27 69 6e 73 74 61 6c 6c 27 2c 20 24 63 6f 6e 73 74 72 61 69 ackageName,.'install',.$constrai
449c0 6e 74 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e nt,.true);.}..protected.function
449e0 20 61 64 64 4a 6f 62 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 63 6d 64 2c 20 43 6f 6e 73 .addJob($packageName,.$cmd,.Cons
44a00 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 traintInterface.$constraint.=.nu
44a20 6c 6c 2c 20 24 66 69 78 65 64 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 70 61 63 6b 61 67 65 4e 61 ll,.$fixed.=.false).{.$packageNa
44a40 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 0a me.=.strtolower($packageName);..
44a60 24 74 68 69 73 2d 3e 6a 6f 62 73 5b 5d 20 3d 20 61 72 72 61 79 28 0a 27 63 6d 64 27 20 3d 3e 20 $this->jobs[].=.array(.'cmd'.=>.
44a80 24 63 6d 64 2c 0a 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 4e $cmd,.'packageName'.=>.$packageN
44aa0 61 6d 65 2c 0a 27 63 6f 6e 73 74 72 61 69 6e 74 27 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 ame,.'constraint'.=>.$constraint
44ac0 2c 0a 27 66 69 78 65 64 27 20 3d 3e 20 24 66 69 78 65 64 2c 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 ,.'fixed'.=>.$fixed,.);.}..publi
44ae0 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 41 6c 6c 28 29 0a 7b 0a 24 74 68 69 73 2d 3e c.function.updateAll().{.$this->
44b00 6a 6f 62 73 5b 5d 20 3d 20 61 72 72 61 79 28 27 63 6d 64 27 20 3d 3e 20 27 75 70 64 61 74 65 2d jobs[].=.array('cmd'.=>.'update-
44b20 61 6c 6c 27 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 all');.}..public.function.getJob
44b40 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6a 6f 62 73 3b 0a 7d 0a 7d 0a 3c 3f s().{.return.$this->jobs;.}.}.<?
44b60 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 php............namespace.Compose
44b80 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f r\DependencyResolver;..use.Compo
44ba0 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a ser\Package\CompletePackage;....
44bc0 0a 63 6c 61 73 73 20 52 75 6c 65 0a 7b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 49 4e 54 45 52 4e 41 .class.Rule.{.const.RULE_INTERNA
44be0 4c 5f 41 4c 4c 4f 57 5f 55 50 44 41 54 45 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 4a L_ALLOW_UPDATE.=.1;.const.RULE_J
44c00 4f 42 5f 49 4e 53 54 41 4c 4c 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 4a 4f 42 5f 52 OB_INSTALL.=.2;.const.RULE_JOB_R
44c20 45 4d 4f 56 45 20 3d 20 33 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 43 4f EMOVE.=.3;.const.RULE_PACKAGE_CO
44c40 4e 46 4c 49 43 54 20 3d 20 36 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 52 NFLICT.=.6;.const.RULE_PACKAGE_R
44c60 45 51 55 49 52 45 53 20 3d 20 37 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f EQUIRES.=.7;.const.RULE_PACKAGE_
44c80 4f 42 53 4f 4c 45 54 45 53 20 3d 20 38 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 49 4e 53 54 41 4c OBSOLETES.=.8;.const.RULE_INSTAL
44ca0 4c 45 44 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 20 3d 20 39 3b 0a 63 6f 6e 73 74 LED_PACKAGE_OBSOLETES.=.9;.const
44cc0 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 53 41 4d 45 5f 4e 41 4d 45 20 3d 20 31 30 3b 0a 63 6f .RULE_PACKAGE_SAME_NAME.=.10;.co
44ce0 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 49 4d 50 4c 49 43 49 54 5f 4f 42 53 4f 4c 45 nst.RULE_PACKAGE_IMPLICIT_OBSOLE
44d00 54 45 53 20 3d 20 31 31 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 4c 45 41 52 4e 45 44 20 3d 20 31 TES.=.11;.const.RULE_LEARNED.=.1
44d20 32 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 41 4c 49 41 53 20 3d 20 31 33 2;.const.RULE_PACKAGE_ALIAS.=.13
44d40 3b 0a 0a 63 6f 6e 73 74 20 42 49 54 46 49 45 4c 44 5f 54 59 50 45 20 3d 20 30 3b 0a 63 6f 6e 73 ;..const.BITFIELD_TYPE.=.0;.cons
44d60 74 20 42 49 54 46 49 45 4c 44 5f 52 45 41 53 4f 4e 20 3d 20 38 3b 0a 63 6f 6e 73 74 20 42 49 54 t.BITFIELD_REASON.=.8;.const.BIT
44d80 46 49 45 4c 44 5f 44 49 53 41 42 4c 45 44 20 3d 20 31 36 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 FIELD_DISABLED.=.16;......public
44da0 20 24 6c 69 74 65 72 61 6c 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 62 69 74 66 69 65 6c 64 .$literals;..protected.$bitfield
44dc0 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 61 73 6f 6e 44 61 74 61 3b 0a 0a 70 75 62 6c 69 63 ;.protected.$reasonData;..public
44de0 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 6c 69 74 .function.__construct(array.$lit
44e00 65 72 61 6c 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 61 74 61 2c 20 24 6a 6f erals,.$reason,.$reasonData,.$jo
44e20 62 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 73 6f 72 74 28 24 6c 69 74 65 72 61 6c 73 29 3b 0a 0a b.=.null).{...sort($literals);..
44e40 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 20 3d 20 24 6c 69 74 65 72 61 6c 73 3b 0a 24 74 68 $this->literals.=.$literals;.$th
44e60 69 73 2d 3e 72 65 61 73 6f 6e 44 61 74 61 20 3d 20 24 72 65 61 73 6f 6e 44 61 74 61 3b 0a 0a 69 is->reasonData.=.$reasonData;..i
44e80 66 20 28 24 6a 6f 62 29 20 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 20 3d 20 24 6a 6f 62 3b 0a 7d 0a f.($job).{.$this->job.=.$job;.}.
44ea0 0a 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 3d 20 28 30 20 3c 3c 20 73 65 6c 66 3a 3a 42 .$this->bitfield.=.(0.<<.self::B
44ec0 49 54 46 49 45 4c 44 5f 44 49 53 41 42 4c 45 44 29 20 7c 0a 28 24 72 65 61 73 6f 6e 20 3c 3c 20 ITFIELD_DISABLED).|.($reason.<<.
44ee0 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 52 45 41 53 4f 4e 29 20 7c 0a 28 32 35 35 20 3c 3c self::BITFIELD_REASON).|.(255.<<
44f00 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 54 59 50 45 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 .self::BITFIELD_TYPE);.}..public
44f20 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 61 73 68 28 29 0a 7b 0a 24 64 61 74 61 20 3d 20 75 6e .function.getHash().{.$data.=.un
44f40 70 61 63 6b 28 27 69 68 61 73 68 27 2c 20 6d 64 35 28 69 6d 70 6c 6f 64 65 28 27 2c 27 2c 20 24 pack('ihash',.md5(implode(',',.$
44f60 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 2c 20 74 72 75 65 29 29 3b 0a 0a 72 65 74 75 72 6e this->literals),.true));..return
44f80 20 24 64 61 74 61 5b 27 68 61 73 68 27 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 .$data['hash'];.}..public.functi
44fa0 6f 6e 20 67 65 74 4a 6f 62 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 on.getJob().{.return.isset($this
44fc0 2d 3e 6a 6f 62 29 20 3f 20 24 74 68 69 73 2d 3e 6a 6f 62 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 ->job).?.$this->job.:.null;.}..p
44fe0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 28 29 0a 7b 0a 72 65 74 ublic.function.getReason().{.ret
45000 75 72 6e 20 28 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 26 20 28 32 35 35 20 3c 3c 20 73 urn.($this->bitfield.&.(255.<<.s
45020 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 52 45 41 53 4f 4e 29 29 20 3e 3e 20 73 65 6c 66 3a 3a elf::BITFIELD_REASON)).>>.self::
45040 42 49 54 46 49 45 4c 44 5f 52 45 41 53 4f 4e 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 BITFIELD_REASON;.}..public.funct
45060 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 44 61 74 61 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 ion.getReasonData().{.return.$th
45080 69 73 2d 3e 72 65 61 73 6f 6e 44 61 74 61 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 is->reasonData;.}..public.functi
450a0 6f 6e 20 67 65 74 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 28 29 0a 7b 0a 69 66 20 28 24 74 on.getRequiredPackage().{.if.($t
450c0 68 69 73 2d 3e 67 65 74 52 65 61 73 6f 6e 28 29 20 3d 3d 3d 20 73 65 6c 66 3a 3a 52 55 4c 45 5f his->getReason().===.self::RULE_
450e0 4a 4f 42 5f 49 4e 53 54 41 4c 4c 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 JOB_INSTALL).{.return.$this->rea
45100 73 6f 6e 44 61 74 61 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 65 74 52 65 61 73 6f 6e sonData;.}..if.($this->getReason
45120 28 29 20 3d 3d 3d 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 52 45 51 55 49 52 ().===.self::RULE_PACKAGE_REQUIR
45140 45 53 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 44 61 74 61 2d 3e ES).{.return.$this->reasonData->
45160 67 65 74 54 61 72 67 65 74 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 getTarget();.}.}..........public
45180 20 66 75 6e 63 74 69 6f 6e 20 65 71 75 61 6c 73 28 52 75 6c 65 20 24 72 75 6c 65 29 0a 7b 0a 69 .function.equals(Rule.$rule).{.i
451a0 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 20 21 3d 20 63 6f 75 f.(count($this->literals).!=.cou
451c0 6e 74 28 24 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 nt($rule->literals)).{.return.fa
451e0 6c 73 65 3b 0a 7d 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 6e 20 3d 20 63 6f 75 6e 74 28 lse;.}..for.($i.=.0,.$n.=.count(
45200 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 3b 20 24 69 20 3c 20 24 6e 3b 20 24 69 2b 2b 29 $this->literals);.$i.<.$n;.$i++)
45220 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 5b 24 69 5d 20 21 3d 3d 20 24 .{.if.($this->literals[$i].!==.$
45240 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 5b 24 69 5d 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c rule->literals[$i]).{.return.fal
45260 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 se;.}.}..return.true;.}..public.
45280 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 79 70 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d function.setType($type).{.$this-
452a0 3e 62 69 74 66 69 65 6c 64 20 3d 20 28 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 26 20 7e >bitfield.=.($this->bitfield.&.~
452c0 28 32 35 35 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 54 59 50 45 29 29 20 7c 20 (255.<<.self::BITFIELD_TYPE)).|.
452e0 28 28 32 35 35 20 26 20 24 74 79 70 65 29 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 ((255.&.$type).<<.self::BITFIELD
45300 5f 54 59 50 45 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 _TYPE);.}..public.function.getTy
45320 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 26 pe().{.return.($this->bitfield.&
45340 20 28 32 35 35 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 54 59 50 45 29 29 20 3e .(255.<<.self::BITFIELD_TYPE)).>
45360 3e 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 54 59 50 45 3b 0a 7d 0a 0a 70 75 62 6c 69 63 >.self::BITFIELD_TYPE;.}..public
45380 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 74 .function.disable().{.$this->bit
453a0 66 69 65 6c 64 20 3d 20 28 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 26 20 7e 28 32 35 35 field.=.($this->bitfield.&.~(255
453c0 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 44 49 53 41 42 4c 45 44 29 29 20 7c 20 .<<.self::BITFIELD_DISABLED)).|.
453e0 28 31 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 44 49 53 41 42 4c 45 44 29 3b 0a (1.<<.self::BITFIELD_DISABLED);.
45400 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 6e 61 62 6c 65 28 29 0a 7b 0a 24 74 }..public.function.enable().{.$t
45420 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 3d 20 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 his->bitfield.=.$this->bitfield.
45440 26 20 7e 28 32 35 35 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 44 49 53 41 42 4c &.~(255.<<.self::BITFIELD_DISABL
45460 45 44 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 69 73 61 62 6c ED);.}..public.function.isDisabl
45480 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 28 28 24 74 68 69 73 2d 3e 62 69 ed().{.return.(bool).(($this->bi
454a0 74 66 69 65 6c 64 20 26 20 28 32 35 35 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f tfield.&.(255.<<.self::BITFIELD_
454c0 44 49 53 41 42 4c 45 44 29 29 20 3e 3e 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 44 49 53 DISABLED)).>>.self::BITFIELD_DIS
454e0 41 42 4c 45 44 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 45 6e 61 ABLED);.}..public.function.isEna
45500 62 6c 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 21 28 28 24 74 68 69 73 2d 3e 62 69 74 66 69 65 bled().{.return.!(($this->bitfie
45520 6c 64 20 26 20 28 32 35 35 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 44 49 53 41 ld.&.(255.<<.self::BITFIELD_DISA
45540 42 4c 45 44 29 29 20 3e 3e 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 44 49 53 41 42 4c 45 BLED)).>>.self::BITFIELD_DISABLE
45560 44 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 73 73 65 72 74 69 D);.}..public.function.isAsserti
45580 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d on().{.return.1.===.count($this-
455a0 3e 6c 69 74 65 72 61 6c 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 >literals);.}..public.function.g
455c0 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 etPrettyString(Pool.$pool,.array
455e0 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 72 75 6c .$installedMap.=.array()).{.$rul
45600 65 54 65 78 74 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6c 69 74 65 eText.=.'';.foreach.($this->lite
45620 72 61 6c 73 20 61 73 20 24 69 20 3d 3e 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 69 rals.as.$i.=>.$literal).{.if.($i
45640 20 21 3d 20 30 29 20 7b 0a 24 72 75 6c 65 54 65 78 74 20 2e 3d 20 27 7c 27 3b 0a 7d 0a 24 72 75 .!=.0).{.$ruleText..=.'|';.}.$ru
45660 6c 65 54 65 78 74 20 2e 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 72 65 74 74 79 leText..=.$pool->literalToPretty
45680 53 74 72 69 6e 67 28 24 6c 69 74 65 72 61 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 3b String($literal,.$installedMap);
456a0 0a 7d 0a 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 52 65 61 73 6f 6e 28 29 29 20 .}..switch.($this->getReason()).
456c0 7b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 49 4e 54 45 52 4e 41 4c 5f 41 4c 4c 4f 57 {.case.self::RULE_INTERNAL_ALLOW
456e0 5f 55 50 44 41 54 45 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 0a 63 61 73 65 _UPDATE:.return.$ruleText;..case
45700 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c 3a 0a 72 65 74 75 72 6e 20 .self::RULE_JOB_INSTALL:.return.
45720 22 49 6e 73 74 61 6c 6c 20 63 6f 6d 6d 61 6e 64 20 72 75 6c 65 20 28 24 72 75 6c 65 54 65 78 74 "Install.command.rule.($ruleText
45740 29 22 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 52 45 4d 4f 56 45 3a )";..case.self::RULE_JOB_REMOVE:
45760 0a 72 65 74 75 72 6e 20 22 52 65 6d 6f 76 65 20 63 6f 6d 6d 61 6e 64 20 72 75 6c 65 20 28 24 72 .return."Remove.command.rule.($r
45780 75 6c 65 54 65 78 74 29 22 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b uleText)";..case.self::RULE_PACK
457a0 41 47 45 5f 43 4f 4e 46 4c 49 43 54 3a 0a 24 70 61 63 6b 61 67 65 31 20 3d 20 24 70 6f 6f 6c 2d AGE_CONFLICT:.$package1.=.$pool-
457c0 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c >literalToPackage($this->literal
457e0 73 5b 30 5d 29 3b 0a 24 70 61 63 6b 61 67 65 32 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 s[0]);.$package2.=.$pool->litera
45800 6c 54 6f 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 5b 31 5d 29 3b 0a lToPackage($this->literals[1]);.
45820 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 31 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 .return.$package1->getPrettyStri
45840 6e 67 28 29 2e 27 20 63 6f 6e 66 6c 69 63 74 73 20 77 69 74 68 20 27 2e 24 74 68 69 73 2d 3e 66 ng().'.conflicts.with.'.$this->f
45860 6f 72 6d 61 74 50 61 63 6b 61 67 65 73 55 6e 69 71 75 65 28 24 70 6f 6f 6c 2c 20 61 72 72 61 79 ormatPackagesUnique($pool,.array
45880 28 24 70 61 63 6b 61 67 65 32 29 29 2e 27 2e 27 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 ($package2)).'.';..case.self::RU
458a0 4c 45 5f 50 41 43 4b 41 47 45 5f 52 45 51 55 49 52 45 53 3a 0a 24 6c 69 74 65 72 61 6c 73 20 3d LE_PACKAGE_REQUIRES:.$literals.=
458c0 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 24 73 6f 75 72 63 65 4c 69 74 65 72 61 6c .$this->literals;.$sourceLiteral
458e0 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 6c 69 74 65 72 61 6c 73 29 3b 0a 24 73 6f 75 72 .=.array_shift($literals);.$sour
45900 63 65 50 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b cePackage.=.$pool->literalToPack
45920 61 67 65 28 24 73 6f 75 72 63 65 4c 69 74 65 72 61 6c 29 3b 0a 0a 24 72 65 71 75 69 72 65 73 20 age($sourceLiteral);..$requires.
45940 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 =.array();.foreach.($literals.as
45960 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 72 65 71 75 69 72 65 73 5b 5d 20 3d 20 24 70 6f 6f 6c .$literal).{.$requires[].=.$pool
45980 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 7d 0a ->literalToPackage($literal);.}.
459a0 0a 24 74 65 78 74 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 44 61 74 61 2d 3e 67 65 74 50 .$text.=.$this->reasonData->getP
459c0 72 65 74 74 79 53 74 72 69 6e 67 28 24 73 6f 75 72 63 65 50 61 63 6b 61 67 65 29 3b 0a 69 66 20 rettyString($sourcePackage);.if.
459e0 28 24 72 65 71 75 69 72 65 73 29 20 7b 0a 24 74 65 78 74 20 2e 3d 20 27 20 2d 3e 20 73 61 74 69 ($requires).{.$text..=.'.->.sati
45a00 73 66 69 61 62 6c 65 20 62 79 20 27 20 2e 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 50 61 63 6b sfiable.by.'...$this->formatPack
45a20 61 67 65 73 55 6e 69 71 75 65 28 24 70 6f 6f 6c 2c 20 24 72 65 71 75 69 72 65 73 29 20 2e 20 27 agesUnique($pool,.$requires)...'
45a40 2e 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 61 72 67 65 74 4e 61 6d 65 20 3d 20 24 74 68 69 73 .';.}.else.{.$targetName.=.$this
45a60 2d 3e 72 65 61 73 6f 6e 44 61 74 61 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a 0a 69 66 20 28 ->reasonData->getTarget();..if.(
45a80 24 74 61 72 67 65 74 4e 61 6d 65 20 3d 3d 3d 20 27 70 68 70 27 20 7c 7c 20 24 74 61 72 67 65 74 $targetName.===.'php'.||.$target
45aa0 4e 61 6d 65 20 3d 3d 3d 20 27 70 68 70 2d 36 34 62 69 74 27 20 7c 7c 20 24 74 61 72 67 65 74 4e Name.===.'php-64bit'.||.$targetN
45ac0 61 6d 65 20 3d 3d 3d 20 27 68 68 76 6d 27 29 20 7b 0a 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 ame.===.'hhvm').{...if.(defined(
45ae0 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 65 78 74 20 'HHVM_VERSION')).{.return.$text.
45b00 2e 20 27 20 2d 3e 20 79 6f 75 72 20 48 48 56 4d 20 76 65 72 73 69 6f 6e 20 64 6f 65 73 20 6e 6f ..'.->.your.HHVM.version.does.no
45b20 74 20 73 61 74 69 73 66 79 20 74 68 61 74 20 72 65 71 75 69 72 65 6d 65 6e 74 2e 27 3b 0a 7d 20 t.satisfy.that.requirement.';.}.
45b40 65 6c 73 65 69 66 20 28 24 74 61 72 67 65 74 4e 61 6d 65 20 3d 3d 3d 20 27 68 68 76 6d 27 29 20 elseif.($targetName.===.'hhvm').
45b60 7b 0a 72 65 74 75 72 6e 20 24 74 65 78 74 20 2e 20 27 20 2d 3e 20 79 6f 75 20 61 72 65 20 72 75 {.return.$text...'.->.you.are.ru
45b80 6e 6e 69 6e 67 20 74 68 69 73 20 77 69 74 68 20 50 48 50 20 61 6e 64 20 6e 6f 74 20 48 48 56 4d nning.this.with.PHP.and.not.HHVM
45ba0 2e 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 70 6f 6f 6c 2d 3e .';.}.else.{.$packages.=.$pool->
45bc0 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 74 61 72 67 65 74 4e 61 6d 65 29 3b 0a 24 70 61 63 6b whatProvides($targetName);.$pack
45be0 61 67 65 20 3d 20 63 6f 75 6e 74 28 24 70 61 63 6b 61 67 65 73 29 20 3f 20 63 75 72 72 65 6e 74 age.=.count($packages).?.current
45c00 28 24 70 61 63 6b 61 67 65 73 29 20 3a 20 70 68 70 76 65 72 73 69 6f 6e 28 29 3b 0a 0a 69 66 20 ($packages).:.phpversion();..if.
45c20 28 21 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6c 65 74 65 50 (!($package.instanceof.CompleteP
45c40 61 63 6b 61 67 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 65 78 74 20 2e 20 27 20 2d 3e 20 79 ackage)).{.return.$text...'.->.y
45c60 6f 75 72 20 50 48 50 20 76 65 72 73 69 6f 6e 20 28 27 2e 70 68 70 76 65 72 73 69 6f 6e 28 29 2e our.PHP.version.('.phpversion().
45c80 27 29 20 64 6f 65 73 20 6e 6f 74 20 73 61 74 69 73 66 79 20 74 68 61 74 20 72 65 71 75 69 72 65 ').does.not.satisfy.that.require
45ca0 6d 65 6e 74 2e 27 3b 0a 7d 0a 0a 24 65 78 74 72 61 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 ment.';.}..$extra.=.$package->ge
45cc0 74 45 78 74 72 61 28 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 65 78 74 72 61 5b 27 63 6f tExtra();..if.(!empty($extra['co
45ce0 6e 66 69 67 2e 70 6c 61 74 66 6f 72 6d 27 5d 29 29 20 7b 0a 24 74 65 78 74 20 2e 3d 20 27 20 2d nfig.platform'])).{.$text..=.'.-
45d00 3e 20 79 6f 75 72 20 50 48 50 20 76 65 72 73 69 6f 6e 20 28 27 2e 70 68 70 76 65 72 73 69 6f 6e >.your.PHP.version.('.phpversion
45d20 28 29 2e 27 29 20 6f 76 65 72 72 69 64 65 6e 20 62 79 20 22 63 6f 6e 66 69 67 2e 70 6c 61 74 66 ().').overriden.by."config.platf
45d40 6f 72 6d 2e 70 68 70 22 20 76 65 72 73 69 6f 6e 20 28 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 orm.php".version.('.$package->ge
45d60 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2e 27 29 20 64 6f 65 73 20 6e 6f 74 20 73 61 74 tPrettyVersion().').does.not.sat
45d80 69 73 66 79 20 74 68 61 74 20 72 65 71 75 69 72 65 6d 65 6e 74 2e 27 3b 0a 7d 20 65 6c 73 65 20 isfy.that.requirement.';.}.else.
45da0 7b 0a 24 74 65 78 74 20 2e 3d 20 27 20 2d 3e 20 79 6f 75 72 20 50 48 50 20 76 65 72 73 69 6f 6e {.$text..=.'.->.your.PHP.version
45dc0 20 28 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 .('.$package->getPrettyVersion()
45de0 2e 27 29 20 64 6f 65 73 20 6e 6f 74 20 73 61 74 69 73 66 79 20 74 68 61 74 20 72 65 71 75 69 72 .').does.not.satisfy.that.requir
45e00 65 6d 65 6e 74 2e 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 65 78 74 3b 0a 7d 0a 7d 20 65 6c ement.';.}..return.$text;.}.}.el
45e20 73 65 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 61 72 67 65 74 4e 61 6d 65 2c 20 seif.(0.===.strpos($targetName,.
45e40 27 65 78 74 2d 27 29 29 20 7b 0a 0a 20 24 65 78 74 20 3d 20 73 75 62 73 74 72 28 24 74 61 72 67 'ext-')).{...$ext.=.substr($targ
45e60 65 74 4e 61 6d 65 2c 20 34 29 3b 0a 24 65 72 72 6f 72 20 3d 20 65 78 74 65 6e 73 69 6f 6e 5f 6c etName,.4);.$error.=.extension_l
45e80 6f 61 64 65 64 28 24 65 78 74 29 20 3f 20 27 68 61 73 20 74 68 65 20 77 72 6f 6e 67 20 76 65 72 oaded($ext).?.'has.the.wrong.ver
45ea0 73 69 6f 6e 20 28 27 2e 28 70 68 70 76 65 72 73 69 6f 6e 28 24 65 78 74 29 20 3f 3a 20 27 30 27 sion.('.(phpversion($ext).?:.'0'
45ec0 29 2e 27 29 20 69 6e 73 74 61 6c 6c 65 64 27 20 3a 20 27 69 73 20 6d 69 73 73 69 6e 67 20 66 72 ).').installed'.:.'is.missing.fr
45ee0 6f 6d 20 79 6f 75 72 20 73 79 73 74 65 6d 27 3b 0a 0a 72 65 74 75 72 6e 20 24 74 65 78 74 20 2e om.your.system';..return.$text..
45f00 20 27 20 2d 3e 20 74 68 65 20 72 65 71 75 65 73 74 65 64 20 50 48 50 20 65 78 74 65 6e 73 69 6f .'.->.the.requested.PHP.extensio
45f20 6e 20 27 2e 24 65 78 74 2e 27 20 27 2e 24 65 72 72 6f 72 2e 27 2e 27 3b 0a 7d 20 65 6c 73 65 69 n.'.$ext.'.'.$error.'.';.}.elsei
45f40 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 61 72 67 65 74 4e 61 6d 65 2c 20 27 6c 69 f.(0.===.strpos($targetName,.'li
45f60 62 2d 27 29 29 20 7b 0a 0a 20 24 6c 69 62 20 3d 20 73 75 62 73 74 72 28 24 74 61 72 67 65 74 4e b-')).{...$lib.=.substr($targetN
45f80 61 6d 65 2c 20 34 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 65 78 74 20 2e 20 27 20 2d 3e 20 74 68 ame,.4);..return.$text...'.->.th
45fa0 65 20 72 65 71 75 65 73 74 65 64 20 6c 69 6e 6b 65 64 20 6c 69 62 72 61 72 79 20 27 2e 24 6c 69 e.requested.linked.library.'.$li
45fc0 62 2e 27 20 68 61 73 20 74 68 65 20 77 72 6f 6e 67 20 76 65 72 73 69 6f 6e 20 69 6e 73 74 61 6c b.'.has.the.wrong.version.instal
45fe0 6c 65 64 20 6f 72 20 69 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 79 6f 75 72 20 73 79 73 74 led.or.is.missing.from.your.syst
46000 65 6d 2c 20 6d 61 6b 65 20 73 75 72 65 20 74 6f 20 68 61 76 65 20 74 68 65 20 65 78 74 65 6e 73 em,.make.sure.to.have.the.extens
46020 69 6f 6e 20 70 72 6f 76 69 64 69 6e 67 20 69 74 2e 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 72 65 74 ion.providing.it.';.}.else.{.ret
46040 75 72 6e 20 24 74 65 78 74 20 2e 20 27 20 2d 3e 20 6e 6f 20 6d 61 74 63 68 69 6e 67 20 70 61 63 urn.$text...'.->.no.matching.pac
46060 6b 61 67 65 20 66 6f 75 6e 64 2e 27 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 65 78 74 3b kage.found.';.}.}..return.$text;
46080 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 ..case.self::RULE_PACKAGE_OBSOLE
460a0 54 45 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 65 6c 66 TES:.return.$ruleText;.case.self
460c0 3a 3a 52 55 4c 45 5f 49 4e 53 54 41 4c 4c 45 44 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 ::RULE_INSTALLED_PACKAGE_OBSOLET
460e0 45 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 65 6c 66 3a ES:.return.$ruleText;.case.self:
46100 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 53 41 4d 45 5f 4e 41 4d 45 3a 0a 72 65 74 75 72 6e 20 :RULE_PACKAGE_SAME_NAME:.return.
46120 27 43 61 6e 20 6f 6e 6c 79 20 69 6e 73 74 61 6c 6c 20 6f 6e 65 20 6f 66 3a 20 27 20 2e 20 24 74 'Can.only.install.one.of:.'...$t
46140 68 69 73 2d 3e 66 6f 72 6d 61 74 50 61 63 6b 61 67 65 73 55 6e 69 71 75 65 28 24 70 6f 6f 6c 2c his->formatPackagesUnique($pool,
46160 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 20 2e 20 27 2e 27 3b 0a 63 61 73 65 20 73 65 .$this->literals)...'.';.case.se
46180 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 49 4d 50 4c 49 43 49 54 5f 4f 42 53 4f 4c 45 lf::RULE_PACKAGE_IMPLICIT_OBSOLE
461a0 54 45 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 65 6c 66 TES:.return.$ruleText;.case.self
461c0 3a 3a 52 55 4c 45 5f 4c 45 41 52 4e 45 44 3a 0a 72 65 74 75 72 6e 20 27 43 6f 6e 63 6c 75 73 69 ::RULE_LEARNED:.return.'Conclusi
461e0 6f 6e 3a 20 27 2e 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 on:.'.$ruleText;.case.self::RULE
46200 5f 50 41 43 4b 41 47 45 5f 41 4c 49 41 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 _PACKAGE_ALIAS:.return.$ruleText
46220 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 27 28 27 2e 24 72 75 6c 65 54 65 78 74 2e ;.default:.return.'('.$ruleText.
46240 27 29 27 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 ')';.}.}..protected.function.for
46260 6d 61 74 50 61 63 6b 61 67 65 73 55 6e 69 71 75 65 28 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 matPackagesUnique($pool,.array.$
46280 70 61 63 6b 61 67 65 73 29 0a 7b 0a 24 70 72 65 70 61 72 65 64 20 3d 20 61 72 72 61 79 28 29 3b packages).{.$prepared.=.array();
462a0 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 .foreach.($packages.as.$package)
462c0 20 7b 0a 69 66 20 28 21 69 73 5f 6f 62 6a 65 63 74 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 .{.if.(!is_object($package)).{.$
462e0 70 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 package.=.$pool->literalToPackag
46300 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 24 70 72 65 70 61 72 65 64 5b 24 70 61 63 6b 61 67 e($package);.}.$prepared[$packag
46320 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 e->getName()]['name'].=.$package
46340 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 24 70 72 65 70 61 72 65 64 5b 24 70 61 ->getPrettyName();.$prepared[$pa
46360 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 27 76 65 72 73 69 6f 6e 73 27 5d 5b 24 70 ckage->getName()]['versions'][$p
46380 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 ackage->getVersion()].=.$package
463a0 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 ->getPrettyVersion();.}.foreach.
463c0 28 24 70 72 65 70 61 72 65 64 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 70 61 63 6b 61 67 65 29 ($prepared.as.$name.=>.$package)
463e0 20 7b 0a 24 70 72 65 70 61 72 65 64 5b 24 6e 61 6d 65 5d 20 3d 20 24 70 61 63 6b 61 67 65 5b 27 .{.$prepared[$name].=.$package['
46400 6e 61 6d 65 27 5d 2e 27 5b 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 name'].'['.implode(',.',.$packag
46420 65 5b 27 76 65 72 73 69 6f 6e 73 27 5d 29 2e 27 5d 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d e['versions']).']';.}..return.im
46440 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 72 65 70 61 72 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a plode(',.',.$prepared);.}.......
46460 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 24 public.function.__toString().{.$
46480 72 65 73 75 6c 74 20 3d 20 28 24 74 68 69 73 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 29 20 3f result.=.($this->isDisabled()).?
464a0 20 27 64 69 73 61 62 6c 65 64 28 27 20 3a 20 27 28 27 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 .'disabled('.:.'(';..foreach.($t
464c0 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 20 61 73 20 24 69 20 3d 3e 20 24 6c 69 74 65 72 61 6c 29 his->literals.as.$i.=>.$literal)
464e0 20 7b 0a 69 66 20 28 24 69 20 21 3d 20 30 29 20 7b 0a 24 72 65 73 75 6c 74 20 2e 3d 20 27 7c 27 .{.if.($i.!=.0).{.$result..=.'|'
46500 3b 0a 7d 0a 24 72 65 73 75 6c 74 20 2e 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 0a 24 72 65 73 ;.}.$result..=.$literal;.}..$res
46520 75 6c 74 20 2e 3d 20 27 29 27 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 7d ult..=.')';..return.$result;.}.}
46540 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
46560 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 oser\DependencyResolver;.....cla
46580 73 73 20 52 75 6c 65 53 65 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f 72 41 ss.RuleSet.implements.\IteratorA
465a0 67 67 72 65 67 61 74 65 2c 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a 0a 20 63 6f 6e 73 74 20 54 ggregate,.\Countable.{...const.T
465c0 59 50 45 5f 50 41 43 4b 41 47 45 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 4a 4f 42 20 YPE_PACKAGE.=.0;.const.TYPE_JOB.
465e0 3d 20 31 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 4c 45 41 52 4e 45 44 20 3d 20 34 3b 0a 0a 0a 0a =.1;.const.TYPE_LEARNED.=.4;....
46600 0a 0a 0a 70 75 62 6c 69 63 20 24 72 75 6c 65 42 79 49 64 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 ...public.$ruleById;..protected.
46620 73 74 61 74 69 63 20 24 74 79 70 65 73 20 3d 20 61 72 72 61 79 28 0a 32 35 35 20 3d 3e 20 27 55 static.$types.=.array(.255.=>.'U
46640 4e 4b 4e 4f 57 4e 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 20 3d 3e 20 27 NKNOWN',.self::TYPE_PACKAGE.=>.'
46660 50 41 43 4b 41 47 45 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 4a 4f 42 20 3d 3e 20 27 4a 4f 42 PACKAGE',.self::TYPE_JOB.=>.'JOB
46680 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 20 3d 3e 20 27 4c 45 41 52 4e 45 ',.self::TYPE_LEARNED.=>.'LEARNE
466a0 44 27 2c 0a 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 3b 0a 70 72 6f 74 65 63 D',.);..protected.$rules;.protec
466c0 74 65 64 20 24 6e 65 78 74 52 75 6c 65 49 64 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c ted.$nextRuleId;..protected.$rul
466e0 65 73 42 79 48 61 73 68 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e esByHash;..public.function.__con
46700 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 64 20 3d 20 30 struct().{.$this->nextRuleId.=.0
46720 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 54 79 70 65 73 28 29 20 61 73 ;..foreach.($this->getTypes().as
46740 20 24 74 79 70 65 29 20 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 79 70 65 5d 20 3d 20 .$type).{.$this->rules[$type].=.
46760 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 20 3d array();.}..$this->rulesByHash.=
46780 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 .array();.}..public.function.add
467a0 28 52 75 6c 65 20 24 72 75 6c 65 2c 20 24 74 79 70 65 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 (Rule.$rule,.$type).{.if.(!isset
467c0 28 73 65 6c 66 3a 3a 24 74 79 70 65 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e (self::$types[$type])).{.throw.n
467e0 65 77 20 5c 4f 75 74 4f 66 42 6f 75 6e 64 73 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 6b 6e 6f 77 ew.\OutOfBoundsException('Unknow
46800 6e 20 72 75 6c 65 20 74 79 70 65 3a 20 27 20 2e 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 69 66 20 28 n.rule.type:.'...$type);.}..if.(
46820 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 24 !isset($this->rules[$type])).{.$
46840 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 79 70 65 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a this->rules[$type].=.array();.}.
46860 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 79 70 65 5d 5b 5d 20 3d 20 24 72 75 6c 65 3b 0a .$this->rules[$type][].=.$rule;.
46880 24 74 68 69 73 2d 3e 72 75 6c 65 42 79 49 64 5b 24 74 68 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 $this->ruleById[$this->nextRuleI
468a0 64 5d 20 3d 20 24 72 75 6c 65 3b 0a 24 72 75 6c 65 2d 3e 73 65 74 54 79 70 65 28 24 74 79 70 65 d].=.$rule;.$rule->setType($type
468c0 29 3b 0a 0a 24 74 68 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 64 2b 2b 3b 0a 0a 24 68 61 73 68 20 );..$this->nextRuleId++;..$hash.
468e0 3d 20 24 72 75 6c 65 2d 3e 67 65 74 48 61 73 68 28 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 =.$rule->getHash();.if.(!isset($
46900 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 68 61 73 68 5d 29 29 20 7b 0a 24 74 68 this->rulesByHash[$hash])).{.$th
46920 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 68 61 73 68 5d 20 3d 20 61 72 72 61 79 28 24 is->rulesByHash[$hash].=.array($
46940 72 75 6c 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 rule);.}.else.{.$this->rulesByHa
46960 73 68 5b 24 68 61 73 68 5d 5b 5d 20 3d 20 24 72 75 6c 65 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 sh[$hash][].=.$rule;.}.}..public
46980 20 66 75 6e 63 74 69 6f 6e 20 63 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 .function.count().{.return.$this
469a0 2d 3e 6e 65 78 74 52 75 6c 65 49 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ->nextRuleId;.}..public.function
469c0 20 72 75 6c 65 42 79 49 64 28 24 69 64 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 .ruleById($id).{.return.$this->r
469e0 75 6c 65 42 79 49 64 5b 24 69 64 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e uleById[$id];.}..public.function
46a00 20 67 65 74 52 75 6c 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 .getRules().{.return.$this->rule
46a20 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 74 65 72 61 74 6f s;.}..public.function.getIterato
46a40 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 r().{.return.new.RuleSetIterator
46a60 28 24 74 68 69 73 2d 3e 67 65 74 52 75 6c 65 73 28 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 ($this->getRules());.}..public.f
46a80 75 6e 63 74 69 6f 6e 20 67 65 74 49 74 65 72 61 74 6f 72 46 6f 72 28 24 74 79 70 65 73 29 0a 7b unction.getIteratorFor($types).{
46aa0 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 74 79 70 65 73 29 29 20 7b 0a 24 74 79 70 65 73 .if.(!is_array($types)).{.$types
46ac0 20 3d 20 61 72 72 61 79 28 24 74 79 70 65 73 29 3b 0a 7d 0a 0a 24 61 6c 6c 52 75 6c 65 73 20 3d .=.array($types);.}..$allRules.=
46ae0 20 24 74 68 69 73 2d 3e 67 65 74 52 75 6c 65 73 28 29 3b 0a 24 72 75 6c 65 73 20 3d 20 61 72 72 .$this->getRules();.$rules.=.arr
46b00 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 79 70 65 73 20 61 73 20 24 74 79 70 65 29 ay();..foreach.($types.as.$type)
46b20 20 7b 0a 24 72 75 6c 65 73 5b 24 74 79 70 65 5d 20 3d 20 24 61 6c 6c 52 75 6c 65 73 5b 24 74 79 .{.$rules[$type].=.$allRules[$ty
46b40 70 65 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 pe];.}..return.new.RuleSetIterat
46b60 6f 72 28 24 72 75 6c 65 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 or($rules);.}..public.function.g
46b80 65 74 49 74 65 72 61 74 6f 72 57 69 74 68 6f 75 74 28 24 74 79 70 65 73 29 0a 7b 0a 69 66 20 28 etIteratorWithout($types).{.if.(
46ba0 21 69 73 5f 61 72 72 61 79 28 24 74 79 70 65 73 29 29 20 7b 0a 24 74 79 70 65 73 20 3d 20 61 72 !is_array($types)).{.$types.=.ar
46bc0 72 61 79 28 24 74 79 70 65 73 29 3b 0a 7d 0a 0a 24 72 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e ray($types);.}..$rules.=.$this->
46be0 67 65 74 52 75 6c 65 73 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 79 70 65 73 20 61 73 20 getRules();..foreach.($types.as.
46c00 24 74 79 70 65 29 20 7b 0a 75 6e 73 65 74 28 24 72 75 6c 65 73 5b 24 74 79 70 65 5d 29 3b 0a 7d $type).{.unset($rules[$type]);.}
46c20 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 28 24 72 75 ..return.new.RuleSetIterator($ru
46c40 6c 65 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 les);.}..public.function.getType
46c60 73 28 29 0a 7b 0a 24 74 79 70 65 73 20 3d 20 73 65 6c 66 3a 3a 24 74 79 70 65 73 3b 0a 75 6e 73 s().{.$types.=.self::$types;.uns
46c80 65 74 28 24 74 79 70 65 73 5b 32 35 35 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b et($types[255]);..return.array_k
46ca0 65 79 73 28 24 74 79 70 65 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 eys($types);.}..public.function.
46cc0 63 6f 6e 74 61 69 6e 73 45 71 75 61 6c 28 24 72 75 6c 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 containsEqual($rule).{.if.(isset
46ce0 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 72 75 6c 65 2d 3e 67 65 74 48 61 ($this->rulesByHash[$rule->getHa
46d00 73 68 28 29 5d 29 29 20 7b 0a 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 63 61 74 65 73 20 3d sh()])).{.$potentialDuplicates.=
46d20 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 72 75 6c 65 2d 3e 67 65 74 48 61 .$this->rulesByHash[$rule->getHa
46d40 73 68 28 29 5d 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 63 sh()];.foreach.($potentialDuplic
46d60 61 74 65 73 20 61 73 20 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 63 61 74 65 29 20 7b 0a 69 ates.as.$potentialDuplicate).{.i
46d80 66 20 28 24 72 75 6c 65 2d 3e 65 71 75 61 6c 73 28 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 f.($rule->equals($potentialDupli
46da0 63 61 74 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 cate)).{.return.true;.}.}.}..ret
46dc0 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 urn.false;.}..public.function.ge
46de0 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 50 6f 6f 6c 20 24 70 6f 6f 6c 20 3d 20 6e 75 6c 6c 29 tPrettyString(Pool.$pool.=.null)
46e00 0a 7b 0a 24 73 74 72 69 6e 67 20 3d 20 22 5c 6e 22 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 .{.$string.=."\n";.foreach.($thi
46e20 73 2d 3e 72 75 6c 65 73 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 72 75 6c 65 73 29 20 7b 0a 24 s->rules.as.$type.=>.$rules).{.$
46e40 73 74 72 69 6e 67 20 2e 3d 20 73 74 72 5f 70 61 64 28 73 65 6c 66 3a 3a 24 74 79 70 65 73 5b 24 string..=.str_pad(self::$types[$
46e60 74 79 70 65 5d 2c 20 38 2c 20 27 20 27 29 20 2e 20 22 3a 20 22 3b 0a 66 6f 72 65 61 63 68 20 28 type],.8,.'.')...":.";.foreach.(
46e80 24 72 75 6c 65 73 20 61 73 20 24 72 75 6c 65 29 20 7b 0a 24 73 74 72 69 6e 67 20 2e 3d 20 28 24 $rules.as.$rule).{.$string..=.($
46ea0 70 6f 6f 6c 20 3f 20 24 72 75 6c 65 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 pool.?.$rule->getPrettyString($p
46ec0 6f 6f 6c 29 20 3a 20 24 72 75 6c 65 29 2e 22 5c 6e 22 3b 0a 7d 0a 24 73 74 72 69 6e 67 20 2e 3d ool).:.$rule)."\n";.}.$string..=
46ee0 20 22 5c 6e 5c 6e 22 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 72 69 6e 67 3b 0a 7d 0a 0a 70 ."\n\n";.}..return.$string;.}..p
46f00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 ublic.function.__toString().{.re
46f20 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 6e 75 6c 6c turn.$this->getPrettyString(null
46f40 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 );.}.}.<?php............namespac
46f60 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a e.Composer\DependencyResolver;..
46f80 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 use.Composer\Package\PackageInte
46fa0 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 rface;.use.Composer\Package\Alia
46fc0 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 sPackage;.use.Composer\Repositor
46fe0 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 y\PlatformRepository;.....class.
47000 52 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f RuleSetGenerator.{.protected.$po
47020 6c 69 63 79 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6f 6c 3b 0a 70 72 6f 74 65 63 74 65 64 licy;.protected.$pool;.protected
47040 20 24 72 75 6c 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6a 6f 62 73 3b 0a 70 72 6f 74 65 63 .$rules;.protected.$jobs;.protec
47060 74 65 64 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 77 68 ted.$installedMap;.protected.$wh
47080 69 74 65 6c 69 73 74 65 64 4d 61 70 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 64 64 65 64 4d 61 itelistedMap;.protected.$addedMa
470a0 70 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 p;..public.function.__construct(
470c0 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f 6c 69 63 79 2c 20 50 6f 6f 6c 20 24 70 PolicyInterface.$policy,.Pool.$p
470e0 6f 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 20 3d 20 24 70 6f 6c 69 63 79 3b 0a ool).{.$this->policy.=.$policy;.
47100 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a $this->pool.=.$pool;.}..........
47120 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 52 ......protected.function.createR
47140 65 71 75 69 72 65 52 75 6c 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 equireRule(PackageInterface.$pac
47160 6b 61 67 65 2c 20 61 72 72 61 79 20 24 70 72 6f 76 69 64 65 72 73 2c 20 24 72 65 61 73 6f 6e 2c kage,.array.$providers,.$reason,
47180 20 24 72 65 61 73 6f 6e 44 61 74 61 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6c 69 74 65 72 61 6c 73 .$reasonData.=.null).{.$literals
471a0 20 3d 20 61 72 72 61 79 28 2d 24 70 61 63 6b 61 67 65 2d 3e 69 64 29 3b 0a 0a 66 6f 72 65 61 63 .=.array(-$package->id);..foreac
471c0 68 20 28 24 70 72 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 0a 20 h.($providers.as.$provider).{...
471e0 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 72 65 if.($provider.===.$package).{.re
47200 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 24 6c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 70 72 6f 76 turn.null;.}.$literals[].=.$prov
47220 69 64 65 72 2d 3e 69 64 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 28 24 6c 69 ider->id;.}..return.new.Rule($li
47240 74 65 72 61 6c 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 61 74 61 29 3b 0a 7d terals,.$reason,.$reasonData);.}
47260 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e ..............protected.function
47280 20 63 72 65 61 74 65 49 6e 73 74 61 6c 6c 4f 6e 65 4f 66 52 75 6c 65 28 61 72 72 61 79 20 24 70 .createInstallOneOfRule(array.$p
472a0 61 63 6b 61 67 65 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a 6f 62 29 0a 7b 0a 24 6c 69 74 65 72 ackages,.$reason,.$job).{.$liter
472c0 61 6c 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 als.=.array();.foreach.($package
472e0 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 6c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 s.as.$package).{.$literals[].=.$
47300 70 61 63 6b 61 67 65 2d 3e 69 64 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 28 package->id;.}..return.new.Rule(
47320 24 6c 69 74 65 72 61 6c 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 $literals,.$reason,.$job['packag
47340 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 eName'],.$job);.}.............pr
47360 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 52 65 6d 6f 76 65 52 75 6c otected.function.createRemoveRul
47380 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 72 65 e(PackageInterface.$package,.$re
473a0 61 73 6f 6e 2c 20 24 6a 6f 62 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 28 61 72 ason,.$job).{.return.new.Rule(ar
473c0 72 61 79 28 2d 24 70 61 63 6b 61 67 65 2d 3e 69 64 29 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a 6f ray(-$package->id),.$reason,.$jo
473e0 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 29 3b 0a 7d 0a 0a 0a 0a 0a 0a b['packageName'],.$job);.}......
47400 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 ..........protected.function.cre
47420 61 74 65 43 6f 6e 66 6c 69 63 74 52 75 6c 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 ateConflictRule(PackageInterface
47440 20 24 69 73 73 75 65 72 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 72 6f 76 .$issuer,.PackageInterface.$prov
47460 69 64 65 72 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 61 74 61 20 3d 20 6e 75 6c ider,.$reason,.$reasonData.=.nul
47480 6c 29 0a 7b 0a 0a 20 69 66 20 28 24 69 73 73 75 65 72 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 l).{...if.($issuer.===.$provider
474a0 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 ).{.return.null;.}..return.new.R
474c0 75 6c 65 28 61 72 72 61 79 28 2d 24 69 73 73 75 65 72 2d 3e 69 64 2c 20 2d 24 70 72 6f 76 69 64 ule(array(-$issuer->id,.-$provid
474e0 65 72 2d 3e 69 64 29 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 61 74 61 29 3b 0a er->id),.$reason,.$reasonData);.
47500 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 }...........private.function.add
47520 52 75 6c 65 28 24 74 79 70 65 2c 20 52 75 6c 65 20 24 6e 65 77 52 75 6c 65 20 3d 20 6e 75 6c 6c Rule($type,.Rule.$newRule.=.null
47540 29 0a 7b 0a 69 66 20 28 21 24 6e 65 77 52 75 6c 65 20 7c 7c 20 24 74 68 69 73 2d 3e 72 75 6c 65 ).{.if.(!$newRule.||.$this->rule
47560 73 2d 3e 63 6f 6e 74 61 69 6e 73 45 71 75 61 6c 28 24 6e 65 77 52 75 6c 65 29 29 20 7b 0a 72 65 s->containsEqual($newRule)).{.re
47580 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 61 64 64 28 24 6e 65 77 52 turn;.}..$this->rules->add($newR
475a0 75 6c 65 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 ule,.$type);.}..protected.functi
475c0 6f 6e 20 77 68 69 74 65 6c 69 73 74 46 72 6f 6d 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 on.whitelistFromPackage(PackageI
475e0 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 77 6f 72 6b 51 75 65 75 65 20 nterface.$package).{.$workQueue.
47600 3d 20 6e 65 77 20 5c 53 70 6c 51 75 65 75 65 3b 0a 24 77 6f 72 6b 51 75 65 75 65 2d 3e 65 6e 71 =.new.\SplQueue;.$workQueue->enq
47620 75 65 75 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 77 68 69 6c 65 20 28 21 24 77 6f 72 6b 51 75 ueue($package);..while.(!$workQu
47640 65 75 65 2d 3e 69 73 45 6d 70 74 79 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 77 6f eue->isEmpty()).{.$package.=.$wo
47660 72 6b 51 75 65 75 65 2d 3e 64 65 71 75 65 75 65 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 rkQueue->dequeue();.if.(isset($t
47680 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 his->whitelistedMap[$package->id
476a0 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c ])).{.continue;.}..$this->whitel
476c0 69 73 74 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 74 72 75 65 3b 0a 0a istedMap[$package->id].=.true;..
476e0 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 foreach.($package->getRequires()
47700 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 20 3d .as.$link).{.$possibleRequires.=
47720 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b .$this->pool->whatProvides($link
47740 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 ->getTarget(),.$link->getConstra
47760 69 6e 74 28 29 2c 20 74 72 75 65 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 73 73 69 62 6c int(),.true);..foreach.($possibl
47780 65 52 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 77 6f 72 6b 51 75 eRequires.as.$require).{.$workQu
477a0 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 24 72 65 71 75 69 72 65 29 3b 0a 7d 0a 7d 0a 0a 24 6f 62 eue->enqueue($require);.}.}..$ob
477c0 73 6f 6c 65 74 65 50 72 6f 76 69 64 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 soleteProviders.=.$this->pool->w
477e0 68 61 74 50 72 6f 76 69 64 65 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c hatProvides($package->getName(),
47800 20 6e 75 6c 6c 2c 20 74 72 75 65 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6f 62 73 6f 6c 65 74 .null,.true);..foreach.($obsolet
47820 65 50 72 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 69 66 20 28 24 eProviders.as.$provider).{.if.($
47840 70 72 6f 76 69 64 65 72 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 provider.===.$package).{.continu
47860 65 3b 0a 7d 0a 0a 69 66 20 28 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 e;.}..if.(($package.instanceof.A
47880 6c 69 61 73 50 61 63 6b 61 67 65 29 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 liasPackage).&&.$package->getAli
478a0 61 73 4f 66 28 29 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 24 77 6f 72 6b 51 75 65 asOf().===.$provider).{.$workQue
478c0 75 65 2d 3e 65 6e 71 75 65 75 65 28 24 70 72 6f 76 69 64 65 72 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a ue->enqueue($provider);.}.}.}.}.
478e0 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 75 6c 65 73 46 6f 72 50 .protected.function.addRulesForP
47900 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 ackage(PackageInterface.$package
47920 2c 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 0a 7b 0a 24 77 6f 72 6b 51 75 ,.$ignorePlatformReqs).{.$workQu
47940 65 75 65 20 3d 20 6e 65 77 20 5c 53 70 6c 51 75 65 75 65 3b 0a 24 77 6f 72 6b 51 75 65 75 65 2d eue.=.new.\SplQueue;.$workQueue-
47960 3e 65 6e 71 75 65 75 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 77 68 69 6c 65 20 28 21 24 77 6f >enqueue($package);..while.(!$wo
47980 72 6b 51 75 65 75 65 2d 3e 69 73 45 6d 70 74 79 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d rkQueue->isEmpty()).{.$package.=
479a0 20 24 77 6f 72 6b 51 75 65 75 65 2d 3e 64 65 71 75 65 75 65 28 29 3b 0a 69 66 20 28 69 73 73 65 .$workQueue->dequeue();.if.(isse
479c0 74 28 24 74 68 69 73 2d 3e 61 64 64 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 29 t($this->addedMap[$package->id])
479e0 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 65 64 4d 61 70 ).{.continue;.}..$this->addedMap
47a00 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 74 72 75 65 3b 0a 0a 66 6f 72 65 61 63 68 20 [$package->id].=.true;..foreach.
47a20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 20 61 73 20 24 6c 69 6e ($package->getRequires().as.$lin
47a40 6b 29 20 7b 0a 69 66 20 28 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 26 26 20 k).{.if.($ignorePlatformReqs.&&.
47a60 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3a 3a 50 preg_match(PlatformRepository::P
47a80 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 6c 69 6e 6b 2d 3e 67 65 LATFORM_PACKAGE_REGEX,.$link->ge
47aa0 74 54 61 72 67 65 74 28 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 6f 73 73 tTarget())).{.continue;.}..$poss
47ac0 69 62 6c 65 52 65 71 75 69 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 ibleRequires.=.$this->pool->what
47ae0 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 Provides($link->getTarget(),.$li
47b00 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 nk->getConstraint());..$this->ad
47b20 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 72 75 dRule(RuleSet::TYPE_PACKAGE,.$ru
47b40 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 52 65 71 75 69 72 65 52 75 6c 65 28 24 70 le.=.$this->createRequireRule($p
47b60 61 63 6b 61 67 65 2c 20 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 2c 20 52 75 6c 65 3a ackage,.$possibleRequires,.Rule:
47b80 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 52 45 51 55 49 52 45 53 2c 20 24 6c 69 6e 6b 29 29 3b :RULE_PACKAGE_REQUIRES,.$link));
47ba0 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 20 61 73 20 ..foreach.($possibleRequires.as.
47bc0 24 72 65 71 75 69 72 65 29 20 7b 0a 24 77 6f 72 6b 51 75 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 $require).{.$workQueue->enqueue(
47be0 24 72 65 71 75 69 72 65 29 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 $require);.}.}..foreach.($packag
47c00 65 2d 3e 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 70 e->getConflicts().as.$link).{.$p
47c20 6f 73 73 69 62 6c 65 43 6f 6e 66 6c 69 63 74 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e ossibleConflicts.=.$this->pool->
47c40 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c whatProvides($link->getTarget(),
47c60 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 0a 66 6f 72 65 61 .$link->getConstraint());..forea
47c80 63 68 20 28 24 70 6f 73 73 69 62 6c 65 43 6f 6e 66 6c 69 63 74 73 20 61 73 20 24 63 6f 6e 66 6c ch.($possibleConflicts.as.$confl
47ca0 69 63 74 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 ict).{.$this->addRule(RuleSet::T
47cc0 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 43 6f 6e 66 6c 69 YPE_PACKAGE,.$this->createConfli
47ce0 63 74 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 63 6f 6e 66 6c 69 63 74 2c 20 52 75 6c 65 ctRule($package,.$conflict,.Rule
47d00 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 43 4f 4e 46 4c 49 43 54 2c 20 24 6c 69 6e 6b 29 29 ::RULE_PACKAGE_CONFLICT,.$link))
47d20 3b 0a 7d 0a 7d 0a 0a 0a 20 24 69 73 49 6e 73 74 61 6c 6c 65 64 20 3d 20 28 69 73 73 65 74 28 24 ;.}.}....$isInstalled.=.(isset($
47d40 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d this->installedMap[$package->id]
47d60 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 ));..foreach.($package->getRepla
47d80 63 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 6f 62 73 6f 6c 65 74 65 50 72 6f 76 69 ces().as.$link).{.$obsoleteProvi
47da0 64 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 ders.=.$this->pool->whatProvides
47dc0 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 ($link->getTarget(),.$link->getC
47de0 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6f 62 73 6f 6c 65 74 onstraint());..foreach.($obsolet
47e00 65 50 72 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 69 66 20 28 24 eProviders.as.$provider).{.if.($
47e20 70 72 6f 76 69 64 65 72 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 provider.===.$package).{.continu
47e40 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 62 73 6f 6c 65 74 65 49 6d 70 6f 73 73 e;.}..if.(!$this->obsoleteImposs
47e60 69 62 6c 65 46 6f 72 41 6c 69 61 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 64 65 72 ibleForAlias($package,.$provider
47e80 29 29 20 7b 0a 24 72 65 61 73 6f 6e 20 3d 20 28 24 69 73 49 6e 73 74 61 6c 6c 65 64 29 20 3f 20 )).{.$reason.=.($isInstalled).?.
47ea0 52 75 6c 65 3a 3a 52 55 4c 45 5f 49 4e 53 54 41 4c 4c 45 44 5f 50 41 43 4b 41 47 45 5f 4f 42 53 Rule::RULE_INSTALLED_PACKAGE_OBS
47ec0 4f 4c 45 54 45 53 20 3a 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f OLETES.:.Rule::RULE_PACKAGE_OBSO
47ee0 4c 45 54 45 53 3b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 LETES;.$this->addRule(RuleSet::T
47f00 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 43 6f 6e 66 6c 69 YPE_PACKAGE,.$this->createConfli
47f20 63 74 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 64 65 72 2c 20 24 72 65 61 ctRule($package,.$provider,.$rea
47f40 73 6f 6e 2c 20 24 6c 69 6e 6b 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 6f 62 73 6f 6c 65 74 65 50 72 son,.$link));.}.}.}..$obsoletePr
47f60 6f 76 69 64 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 oviders.=.$this->pool->whatProvi
47f80 64 65 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 6e 75 6c 6c 29 3b 0a des($package->getName(),.null);.
47fa0 0a 66 6f 72 65 61 63 68 20 28 24 6f 62 73 6f 6c 65 74 65 50 72 6f 76 69 64 65 72 73 20 61 73 20 .foreach.($obsoleteProviders.as.
47fc0 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 3d 3d 3d 20 24 $provider).{.if.($provider.===.$
47fe0 70 61 63 6b 61 67 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 28 24 70 61 package).{.continue;.}..if.(($pa
48000 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 26 ckage.instanceof.AliasPackage).&
48020 26 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 20 3d 3d 3d 20 24 70 72 &.$package->getAliasOf().===.$pr
48040 6f 76 69 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 ovider).{.$this->addRule(RuleSet
48060 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 ::TYPE_PACKAGE,.$rule.=.$this->c
48080 72 65 61 74 65 52 65 71 75 69 72 65 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 61 72 72 61 79 reateRequireRule($package,.array
480a0 28 24 70 72 6f 76 69 64 65 72 29 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f ($provider),.Rule::RULE_PACKAGE_
480c0 41 4c 49 41 53 2c 20 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 74 ALIAS,.$package));.}.elseif.(!$t
480e0 68 69 73 2d 3e 6f 62 73 6f 6c 65 74 65 49 6d 70 6f 73 73 69 62 6c 65 46 6f 72 41 6c 69 61 73 28 his->obsoleteImpossibleForAlias(
48100 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 64 65 72 29 29 20 7b 0a 24 72 65 61 73 6f 6e 20 $package,.$provider)).{.$reason.
48120 3d 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 20 24 70 72 6f 76 69 =.($package->getName().==.$provi
48140 64 65 72 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 3f 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 der->getName()).?.Rule::RULE_PAC
48160 4b 41 47 45 5f 53 41 4d 45 5f 4e 41 4d 45 20 3a 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 4b KAGE_SAME_NAME.:.Rule::RULE_PACK
48180 41 47 45 5f 49 4d 50 4c 49 43 49 54 5f 4f 42 53 4f 4c 45 54 45 53 3b 0a 24 74 68 69 73 2d 3e 61 AGE_IMPLICIT_OBSOLETES;.$this->a
481a0 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 72 ddRule(RuleSet::TYPE_PACKAGE,.$r
481c0 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 43 6f 6e 66 6c 69 63 74 52 75 6c 65 28 ule.=.$this->createConflictRule(
481e0 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 64 65 72 2c 20 24 72 65 61 73 6f 6e 2c 20 24 70 $package,.$provider,.$reason,.$p
48200 61 63 6b 61 67 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e ackage));.}.}.}.}..protected.fun
48220 63 74 69 6f 6e 20 6f 62 73 6f 6c 65 74 65 49 6d 70 6f 73 73 69 62 6c 65 46 6f 72 41 6c 69 61 73 ction.obsoleteImpossibleForAlias
48240 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 64 65 72 29 0a 7b 0a 24 70 61 63 6b 61 67 65 ($package,.$provider).{.$package
48260 49 73 41 6c 69 61 73 20 3d 20 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c IsAlias.=.$package.instanceof.Al
48280 69 61 73 50 61 63 6b 61 67 65 3b 0a 24 70 72 6f 76 69 64 65 72 49 73 41 6c 69 61 73 20 3d 20 24 iasPackage;.$providerIsAlias.=.$
482a0 70 72 6f 76 69 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 provider.instanceof.AliasPackage
482c0 3b 0a 0a 24 69 6d 70 6f 73 73 69 62 6c 65 20 3d 20 28 0a 28 24 70 61 63 6b 61 67 65 49 73 41 6c ;..$impossible.=.(.($packageIsAl
482e0 69 61 73 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 20 3d 3d ias.&&.$package->getAliasOf().==
48300 3d 20 24 70 72 6f 76 69 64 65 72 29 20 7c 7c 0a 28 24 70 72 6f 76 69 64 65 72 49 73 41 6c 69 61 =.$provider).||.($providerIsAlia
48320 73 20 26 26 20 24 70 72 6f 76 69 64 65 72 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 20 3d 3d 3d s.&&.$provider->getAliasOf().===
48340 20 24 70 61 63 6b 61 67 65 29 20 7c 7c 0a 28 24 70 61 63 6b 61 67 65 49 73 41 6c 69 61 73 20 26 .$package).||.($packageIsAlias.&
48360 26 20 24 70 72 6f 76 69 64 65 72 49 73 41 6c 69 61 73 20 26 26 20 24 70 72 6f 76 69 64 65 72 2d &.$providerIsAlias.&&.$provider-
48380 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 >getAliasOf().===.$package->getA
483a0 6c 69 61 73 4f 66 28 29 29 0a 29 3b 0a 0a 72 65 74 75 72 6e 20 24 69 6d 70 6f 73 73 69 62 6c 65 liasOf()).);..return.$impossible
483c0 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 74 65 6c 69 73 ;.}..protected.function.whitelis
483e0 74 46 72 6f 6d 4a 6f 62 73 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6a 6f tFromJobs().{.foreach.($this->jo
48400 62 73 20 61 73 20 24 6a 6f 62 29 20 7b 0a 73 77 69 74 63 68 20 28 24 6a 6f 62 5b 27 63 6d 64 27 bs.as.$job).{.switch.($job['cmd'
48420 5d 29 20 7b 0a 63 61 73 65 20 27 69 6e 73 74 61 6c 6c 27 3a 0a 24 70 61 63 6b 61 67 65 73 20 3d ]).{.case.'install':.$packages.=
48440 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6a 6f 62 5b .$this->pool->whatProvides($job[
48460 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 'packageName'],.$job['constraint
48480 27 5d 2c 20 74 72 75 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 '],.true);.foreach.($packages.as
484a0 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 46 72 6f .$package).{.$this->whitelistFro
484c0 6d 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d mPackage($package);.}.break;.}.}
484e0 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 75 6c 65 73 46 .}..protected.function.addRulesF
48500 6f 72 4a 6f 62 73 28 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 0a 7b 0a 66 6f orJobs($ignorePlatformReqs).{.fo
48520 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6a 6f 62 73 20 61 73 20 24 6a 6f 62 29 20 7b 0a 73 77 reach.($this->jobs.as.$job).{.sw
48540 69 74 63 68 20 28 24 6a 6f 62 5b 27 63 6d 64 27 5d 29 20 7b 0a 63 61 73 65 20 27 69 6e 73 74 61 itch.($job['cmd']).{.case.'insta
48560 6c 6c 27 3a 0a 69 66 20 28 21 24 6a 6f 62 5b 27 66 69 78 65 64 27 5d 20 26 26 20 24 69 67 6e 6f ll':.if.(!$job['fixed'].&&.$igno
48580 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 rePlatformReqs.&&.preg_match(Pla
485a0 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3a 3a 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 tformRepository::PLATFORM_PACKAG
485c0 45 5f 52 45 47 45 58 2c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 29 20 7b E_REGEX,.$job['packageName'])).{
485e0 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d .continue;.}..$packages.=.$this-
48600 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 >pool->whatProvides($job['packag
48620 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 3b 0a 69 66 eName'],.$job['constraint']);.if
48640 20 28 24 70 61 63 6b 61 67 65 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 .($packages).{.foreach.($package
48660 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 s.as.$package).{.if.(!isset($thi
48680 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 29 29 20 s->installedMap[$package->id])).
486a0 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 73 46 6f 72 50 61 63 6b 61 67 65 28 24 70 61 63 {.$this->addRulesForPackage($pac
486c0 6b 61 67 65 2c 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 3b 0a 7d 0a 7d 0a kage,.$ignorePlatformReqs);.}.}.
486e0 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 49 6e 73 74 61 6c 6c 4f 6e 65 .$rule.=.$this->createInstallOne
48700 4f 66 52 75 6c 65 28 24 70 61 63 6b 61 67 65 73 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 4a 4f 42 OfRule($packages,.Rule::RULE_JOB
48720 5f 49 4e 53 54 41 4c 4c 2c 20 24 6a 6f 62 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 _INSTALL,.$job);.$this->addRule(
48740 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 2c 20 24 72 75 6c 65 29 3b 0a 7d 0a 62 72 65 RuleSet::TYPE_JOB,.$rule);.}.bre
48760 61 6b 3b 0a 63 61 73 65 20 27 72 65 6d 6f 76 65 27 3a 0a 0a 20 0a 20 24 70 61 63 6b 61 67 65 73 ak;.case.'remove':.....$packages
48780 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6a 6f .=.$this->pool->whatProvides($jo
487a0 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 b['packageName'],.$job['constrai
487c0 6e 74 27 5d 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 nt']);.foreach.($packages.as.$pa
487e0 63 6b 61 67 65 29 20 7b 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 52 65 ckage).{.$rule.=.$this->createRe
48800 6d 6f 76 65 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 4a 4f moveRule($package,.Rule::RULE_JO
48820 42 5f 52 45 4d 4f 56 45 2c 20 24 6a 6f 62 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 B_REMOVE,.$job);.$this->addRule(
48840 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 2c 20 24 72 75 6c 65 29 3b 0a 7d 0a 62 72 65 RuleSet::TYPE_JOB,.$rule);.}.bre
48860 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 75 ak;.}.}.}..public.function.getRu
48880 6c 65 73 46 6f 72 28 24 6a 6f 62 73 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 69 67 lesFor($jobs,.$installedMap,.$ig
488a0 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 norePlatformReqs.=.false).{.$thi
488c0 73 2d 3e 6a 6f 62 73 20 3d 20 24 6a 6f 62 73 3b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 3d 20 s->jobs.=.$jobs;.$this->rules.=.
488e0 6e 65 77 20 52 75 6c 65 53 65 74 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 new.RuleSet;.$this->installedMap
48900 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c .=.$installedMap;..$this->whitel
48920 69 73 74 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 istedMap.=.array();.foreach.($th
48940 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a is->installedMap.as.$package).{.
48960 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 46 72 6f 6d 50 61 63 6b 61 67 65 28 24 70 61 63 $this->whitelistFromPackage($pac
48980 6b 61 67 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 46 72 6f 6d 4a 6f 62 kage);.}.$this->whitelistFromJob
489a0 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 73 65 74 57 68 69 74 65 6c 69 73 74 28 s();..$this->pool->setWhitelist(
489c0 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 65 64 4d 61 70 29 3b 0a 0a 24 74 68 69 73 2d 3e $this->whitelistedMap);..$this->
489e0 61 64 64 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 addedMap.=.array();.foreach.($th
48a00 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a is->installedMap.as.$package).{.
48a20 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 73 46 6f 72 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 $this->addRulesForPackage($packa
48a40 67 65 2c 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 3b 0a 7d 0a 0a 24 74 68 ge,.$ignorePlatformReqs);.}..$th
48a60 69 73 2d 3e 61 64 64 52 75 6c 65 73 46 6f 72 4a 6f 62 73 28 24 69 67 6e 6f 72 65 50 6c 61 74 66 is->addRulesForJobs($ignorePlatf
48a80 6f 72 6d 52 65 71 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 3b 0a ormReqs);..return.$this->rules;.
48aa0 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 }.}.<?php............namespace.C
48ac0 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a omposer\DependencyResolver;.....
48ae0 63 6c 61 73 73 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 73 class.RuleSetIterator.implements
48b00 20 5c 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 3b 0a 70 .\Iterator.{.protected.$rules;.p
48b20 72 6f 74 65 63 74 65 64 20 24 74 79 70 65 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 75 72 rotected.$types;..protected.$cur
48b40 72 65 6e 74 4f 66 66 73 65 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 75 72 72 65 6e 74 54 79 rentOffset;.protected.$currentTy
48b60 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 pe;.protected.$currentTypeOffset
48b80 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 ;..public.function.__construct(a
48ba0 72 72 61 79 20 24 72 75 6c 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 3d 20 24 72 rray.$rules).{.$this->rules.=.$r
48bc0 75 6c 65 73 3b 0a 24 74 68 69 73 2d 3e 74 79 70 65 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 ules;.$this->types.=.array_keys(
48be0 24 72 75 6c 65 73 29 3b 0a 73 6f 72 74 28 24 74 68 69 73 2d 3e 74 79 70 65 73 29 3b 0a 0a 24 74 $rules);.sort($this->types);..$t
48c00 68 69 73 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f his->rewind();.}..public.functio
48c20 6e 20 63 75 72 72 65 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 n.current().{.return.$this->rule
48c40 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 5b 24 74 68 69 73 2d 3e 63 75 72 s[$this->currentType][$this->cur
48c60 72 65 6e 74 4f 66 66 73 65 74 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 rentOffset];.}..public.function.
48c80 6b 65 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 key().{.return.$this->currentTyp
48ca0 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 65 78 74 28 29 0a 7b 0a 24 e;.}..public.function.next().{.$
48cc0 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 2b 2b 3b 0a 0a 69 66 20 28 21 69 73 73 this->currentOffset++;..if.(!iss
48ce0 65 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 et($this->rules[$this->currentTy
48d00 70 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 75 pe])).{.return;.}..if.($this->cu
48d20 72 72 65 6e 74 4f 66 66 73 65 74 20 3e 3d 20 73 69 7a 65 6f 66 28 24 74 68 69 73 2d 3e 72 75 6c rrentOffset.>=.sizeof($this->rul
48d40 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 29 29 20 7b 0a 24 74 68 69 73 es[$this->currentType])).{.$this
48d60 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 64 6f 20 7b 0a 24 74 68 69 73 ->currentOffset.=.0;..do.{.$this
48d80 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 2b 2b 3b 0a 0a 69 66 20 28 21 69 73 73 ->currentTypeOffset++;..if.(!iss
48da0 65 74 28 24 74 68 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 et($this->types[$this->currentTy
48dc0 70 65 4f 66 66 73 65 74 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 peOffset])).{.$this->currentType
48de0 20 3d 20 2d 31 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 .=.-1;.break;.}..$this->currentT
48e00 79 70 65 20 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e ype.=.$this->types[$this->curren
48e20 74 54 79 70 65 4f 66 66 73 65 74 5d 3b 0a 7d 20 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 74 68 tTypeOffset];.}.while.(isset($th
48e40 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 is->types[$this->currentTypeOffs
48e60 65 74 5d 29 20 26 26 20 21 73 69 7a 65 6f 66 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 et]).&&.!sizeof($this->rules[$th
48e80 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 29 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 is->currentType]));.}.}..public.
48ea0 66 75 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 function.rewind().{.$this->curre
48ec0 6e 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 ntOffset.=.0;..$this->currentTyp
48ee0 65 4f 66 66 73 65 74 20 3d 20 2d 31 3b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 eOffset.=.-1;.$this->currentType
48f00 20 3d 20 2d 31 3b 0a 0a 64 6f 20 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f .=.-1;..do.{.$this->currentTypeO
48f20 66 66 73 65 74 2b 2b 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 79 70 65 ffset++;..if.(!isset($this->type
48f40 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 5d 29 29 20 7b 0a s[$this->currentTypeOffset])).{.
48f60 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 20 3d 20 2d 31 3b 0a 62 72 65 61 6b 3b 0a $this->currentType.=.-1;.break;.
48f80 7d 0a 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 20 3d 20 24 74 68 69 73 2d 3e 74 }..$this->currentType.=.$this->t
48fa0 79 70 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 5d 3b 0a ypes[$this->currentTypeOffset];.
48fc0 7d 20 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 }.while.(isset($this->types[$thi
48fe0 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 5d 29 20 26 26 20 21 73 69 7a 65 6f s->currentTypeOffset]).&&.!sizeo
49000 66 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 f($this->rules[$this->currentTyp
49020 65 5d 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 28 29 e]));.}..public.function.valid()
49040 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 .{.return.isset($this->rules[$th
49060 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 29 0a 26 26 20 69 73 73 65 74 28 24 74 68 69 73 is->currentType]).&&.isset($this
49080 2d 3e 72 75 6c 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 5b 24 74 68 69 ->rules[$this->currentType][$thi
490a0 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 5d 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a s->currentOffset]);.}.}.<?php...
490c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 .........namespace.Composer\Depe
490e0 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 ndencyResolver;..........class.R
49100 75 6c 65 57 61 74 63 68 43 68 61 69 6e 20 65 78 74 65 6e 64 73 20 5c 53 70 6c 44 6f 75 62 6c 79 uleWatchChain.extends.\SplDoubly
49120 4c 69 6e 6b 65 64 4c 69 73 74 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 66 66 73 65 74 20 3d LinkedList.{.protected.$offset.=
49140 20 30 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 65 6b 28 24 .0;.......public.function.seek($
49160 6f 66 66 73 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 66 6f 72 20 28 offset).{.$this->rewind();.for.(
49180 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 24 6f 66 66 73 65 74 3b 20 24 69 2b 2b 2c 20 24 74 68 69 $i.=.0;.$i.<.$offset;.$i++,.$thi
491a0 73 2d 3e 6e 65 78 74 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 s->next());.}..........public.fu
491c0 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 29 0a 7b 0a 24 6f 66 66 73 65 74 20 3d 20 24 74 68 69 nction.remove().{.$offset.=.$thi
491e0 73 2d 3e 6b 65 79 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 66 66 73 65 74 55 6e 73 65 74 28 24 6f 66 s->key();.$this->offsetUnset($of
49200 66 73 65 74 29 3b 0a 24 74 68 69 73 2d 3e 73 65 65 6b 28 24 6f 66 66 73 65 74 29 3b 0a 7d 0a 7d fset);.$this->seek($offset);.}.}
49220 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
49240 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a oser\DependencyResolver;........
49260 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 57 61 74 63 68 47 72 61 70 68 0a 7b 0a 70 72 6f 74 65 ....class.RuleWatchGraph.{.prote
49280 63 74 65 64 20 24 77 61 74 63 68 43 68 61 69 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a cted.$watchChains.=.array();....
492a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 65 72 74 ..........public.function.insert
492c0 28 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 20 24 6e 6f 64 65 29 0a 7b 0a 69 66 20 28 24 6e 6f 64 (RuleWatchNode.$node).{.if.($nod
492e0 65 2d 3e 67 65 74 52 75 6c 65 28 29 2d 3e 69 73 41 73 73 65 72 74 69 6f 6e 28 29 29 20 7b 0a 72 e->getRule()->isAssertion()).{.r
49300 65 74 75 72 6e 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 24 6e 6f 64 65 2d 3e eturn;.}..foreach.(array($node->
49320 77 61 74 63 68 31 2c 20 24 6e 6f 64 65 2d 3e 77 61 74 63 68 32 29 20 61 73 20 24 6c 69 74 65 72 watch1,.$node->watch2).as.$liter
49340 61 6c 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 al).{.if.(!isset($this->watchCha
49360 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 ins[$literal])).{.$this->watchCh
49380 61 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 20 3d 20 6e 65 77 20 52 75 6c 65 57 61 74 63 68 43 68 ains[$literal].=.new.RuleWatchCh
493a0 61 69 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c 69 74 65 ain;.}..$this->watchChains[$lite
493c0 72 61 6c 5d 2d 3e 75 6e 73 68 69 66 74 28 24 6e 6f 64 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a ral]->unshift($node);.}.}.......
493e0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ..................public.functio
49400 6e 20 70 72 6f 70 61 67 61 74 65 4c 69 74 65 72 61 6c 28 24 64 65 63 69 64 65 64 4c 69 74 65 72 n.propagateLiteral($decidedLiter
49420 61 6c 2c 20 24 6c 65 76 65 6c 2c 20 24 64 65 63 69 73 69 6f 6e 73 29 0a 7b 0a 0a 20 0a 20 0a 20 al,.$level,.$decisions).{.......
49440 24 6c 69 74 65 72 61 6c 20 3d 20 2d 24 64 65 63 69 64 65 64 4c 69 74 65 72 61 6c 3b 0a 0a 69 66 $literal.=.-$decidedLiteral;..if
49460 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c 69 74 .(!isset($this->watchChains[$lit
49480 65 72 61 6c 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 24 63 68 61 69 6e eral])).{.return.null;.}..$chain
494a0 20 3d 20 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 3b .=.$this->watchChains[$literal];
494c0 0a 0a 24 63 68 61 69 6e 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 77 68 69 6c 65 20 28 24 63 68 61 69 ..$chain->rewind();.while.($chai
494e0 6e 2d 3e 76 61 6c 69 64 28 29 29 20 7b 0a 24 6e 6f 64 65 20 3d 20 24 63 68 61 69 6e 2d 3e 63 75 n->valid()).{.$node.=.$chain->cu
49500 72 72 65 6e 74 28 29 3b 0a 24 6f 74 68 65 72 57 61 74 63 68 20 3d 20 24 6e 6f 64 65 2d 3e 67 65 rrent();.$otherWatch.=.$node->ge
49520 74 4f 74 68 65 72 57 61 74 63 68 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 21 24 6e 6f tOtherWatch($literal);..if.(!$no
49540 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 20 26 26 20 21 de->getRule()->isDisabled().&&.!
49560 24 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6f 74 68 65 72 57 61 74 63 68 29 $decisions->satisfy($otherWatch)
49580 29 20 7b 0a 24 72 75 6c 65 4c 69 74 65 72 61 6c 73 20 3d 20 24 6e 6f 64 65 2d 3e 67 65 74 52 75 ).{.$ruleLiterals.=.$node->getRu
495a0 6c 65 28 29 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 4c 69 74 le()->literals;..$alternativeLit
495c0 65 72 61 6c 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 72 75 6c 65 4c 69 74 65 72 61 erals.=.array_filter($ruleLitera
495e0 6c 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 72 75 6c 65 4c 69 74 65 72 61 6c 29 20 75 73 65 20 ls,.function.($ruleLiteral).use.
49600 28 24 6c 69 74 65 72 61 6c 2c 20 24 6f 74 68 65 72 57 61 74 63 68 2c 20 24 64 65 63 69 73 69 6f ($literal,.$otherWatch,.$decisio
49620 6e 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 6c 69 74 65 72 61 6c 20 21 3d 3d 20 24 72 75 6c 65 4c ns).{.return.$literal.!==.$ruleL
49640 69 74 65 72 61 6c 20 26 26 0a 24 6f 74 68 65 72 57 61 74 63 68 20 21 3d 3d 20 24 72 75 6c 65 4c iteral.&&.$otherWatch.!==.$ruleL
49660 69 74 65 72 61 6c 20 26 26 0a 21 24 64 65 63 69 73 69 6f 6e 73 2d 3e 63 6f 6e 66 6c 69 63 74 28 iteral.&&.!$decisions->conflict(
49680 24 72 75 6c 65 4c 69 74 65 72 61 6c 29 3b 0a 7d 29 3b 0a 0a 69 66 20 28 24 61 6c 74 65 72 6e 61 $ruleLiteral);.});..if.($alterna
496a0 74 69 76 65 4c 69 74 65 72 61 6c 73 29 20 7b 0a 72 65 73 65 74 28 24 61 6c 74 65 72 6e 61 74 69 tiveLiterals).{.reset($alternati
496c0 76 65 4c 69 74 65 72 61 6c 73 29 3b 0a 24 74 68 69 73 2d 3e 6d 6f 76 65 57 61 74 63 68 28 24 6c veLiterals);.$this->moveWatch($l
496e0 69 74 65 72 61 6c 2c 20 63 75 72 72 65 6e 74 28 24 61 6c 74 65 72 6e 61 74 69 76 65 4c 69 74 65 iteral,.current($alternativeLite
49700 72 61 6c 73 29 2c 20 24 6e 6f 64 65 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 rals),.$node);.continue;.}..if.(
49720 24 64 65 63 69 73 69 6f 6e 73 2d 3e 63 6f 6e 66 6c 69 63 74 28 24 6f 74 68 65 72 57 61 74 63 68 $decisions->conflict($otherWatch
49740 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6e 6f 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 3b 0a 7d 0a )).{.return.$node->getRule();.}.
49760 0a 24 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 28 24 6f 74 68 65 72 57 61 74 63 68 2c .$decisions->decide($otherWatch,
49780 20 24 6c 65 76 65 6c 2c 20 24 6e 6f 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 29 3b 0a 7d 0a 0a 24 .$level,.$node->getRule());.}..$
497a0 63 68 61 69 6e 2d 3e 6e 65 78 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d chain->next();.}..return.null;.}
497c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6d 6f ...........protected.function.mo
497e0 76 65 57 61 74 63 68 28 24 66 72 6f 6d 4c 69 74 65 72 61 6c 2c 20 24 74 6f 4c 69 74 65 72 61 6c veWatch($fromLiteral,.$toLiteral
49800 2c 20 24 6e 6f 64 65 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 77 61 74 ,.$node).{.if.(!isset($this->wat
49820 63 68 43 68 61 69 6e 73 5b 24 74 6f 4c 69 74 65 72 61 6c 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e chChains[$toLiteral])).{.$this->
49840 77 61 74 63 68 43 68 61 69 6e 73 5b 24 74 6f 4c 69 74 65 72 61 6c 5d 20 3d 20 6e 65 77 20 52 75 watchChains[$toLiteral].=.new.Ru
49860 6c 65 57 61 74 63 68 43 68 61 69 6e 3b 0a 7d 0a 0a 24 6e 6f 64 65 2d 3e 6d 6f 76 65 57 61 74 63 leWatchChain;.}..$node->moveWatc
49880 68 28 24 66 72 6f 6d 4c 69 74 65 72 61 6c 2c 20 24 74 6f 4c 69 74 65 72 61 6c 29 3b 0a 24 74 68 h($fromLiteral,.$toLiteral);.$th
498a0 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 66 72 6f 6d 4c 69 74 65 72 61 6c 5d 2d 3e 72 is->watchChains[$fromLiteral]->r
498c0 65 6d 6f 76 65 28 29 3b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 74 6f 4c emove();.$this->watchChains[$toL
498e0 69 74 65 72 61 6c 5d 2d 3e 75 6e 73 68 69 66 74 28 24 6e 6f 64 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 iteral]->unshift($node);.}.}.<?p
49900 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
49920 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 \DependencyResolver;.........cla
49940 73 73 20 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 0a 7b 0a 70 75 62 6c 69 63 20 24 77 61 74 63 68 ss.RuleWatchNode.{.public.$watch
49960 31 3b 0a 70 75 62 6c 69 63 20 24 77 61 74 63 68 32 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 1;.public.$watch2;..protected.$r
49980 75 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e ule;.......public.function.__con
499a0 73 74 72 75 63 74 28 24 72 75 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 20 3d 20 24 72 struct($rule).{.$this->rule.=.$r
499c0 75 6c 65 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c ule;..$literals.=.$rule->literal
499e0 73 3b 0a 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d 20 63 6f 75 6e 74 28 24 6c 69 74 65 72 s;..$this->watch1.=.count($liter
49a00 61 6c 73 29 20 3e 20 30 20 3f 20 24 6c 69 74 65 72 61 6c 73 5b 30 5d 20 3a 20 30 3b 0a 24 74 68 als).>.0.?.$literals[0].:.0;.$th
49a20 69 73 2d 3e 77 61 74 63 68 32 20 3d 20 63 6f 75 6e 74 28 24 6c 69 74 65 72 61 6c 73 29 20 3e 20 is->watch2.=.count($literals).>.
49a40 31 20 3f 20 24 6c 69 74 65 72 61 6c 73 5b 31 5d 20 3a 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 1.?.$literals[1].:.0;.}.........
49a60 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 61 74 63 68 32 4f 6e 48 69 67 68 65 73 74 .public.function.watch2OnHighest
49a80 28 44 65 63 69 73 69 6f 6e 73 20 24 64 65 63 69 73 69 6f 6e 73 29 0a 7b 0a 24 6c 69 74 65 72 61 (Decisions.$decisions).{.$litera
49aa0 6c 73 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 0a 0a 20 69 ls.=.$this->rule->literals;....i
49ac0 66 20 28 63 6f 75 6e 74 28 24 6c 69 74 65 72 61 6c 73 29 20 3c 20 33 29 20 7b 0a 72 65 74 75 72 f.(count($literals).<.3).{.retur
49ae0 6e 3b 0a 7d 0a 0a 24 77 61 74 63 68 4c 65 76 65 6c 20 3d 20 30 3b 0a 0a 66 6f 72 65 61 63 68 20 n;.}..$watchLevel.=.0;..foreach.
49b00 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 6c 65 76 65 6c ($literals.as.$literal).{.$level
49b20 20 3d 20 24 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 28 24 6c 69 .=.$decisions->decisionLevel($li
49b40 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3e 20 24 77 61 74 63 68 4c 65 76 65 teral);..if.($level.>.$watchLeve
49b60 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 32 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 24 l).{.$this->watch2.=.$literal;.$
49b80 77 61 74 63 68 4c 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a watchLevel.=.$level;.}.}.}......
49ba0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 75 6c 65 28 29 0a 7b 0a 72 65 74 .public.function.getRule().{.ret
49bc0 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 urn.$this->rule;.}........public
49be0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 74 68 65 72 57 61 74 63 68 28 24 6c 69 74 65 72 61 6c .function.getOtherWatch($literal
49c00 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d 3d 20 24 6c 69 74 65 72 61 ).{.if.($this->watch1.==.$litera
49c20 6c 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 74 63 68 32 3b 0a 7d 20 65 6c 73 l).{.return.$this->watch2;.}.els
49c40 65 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 74 63 68 31 3b 0a 7d 0a 7d 0a 0a 0a e.{.return.$this->watch1;.}.}...
49c60 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 6f 76 65 57 61 74 63 68 28 24 .....public.function.moveWatch($
49c80 66 72 6f 6d 2c 20 24 74 6f 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d from,.$to).{.if.($this->watch1.=
49ca0 3d 20 24 66 72 6f 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d 20 24 74 6f 3b 0a =.$from).{.$this->watch1.=.$to;.
49cc0 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 32 20 3d 20 24 74 6f 3b 0a 7d 0a }.else.{.$this->watch2.=.$to;.}.
49ce0 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 }.}.<?php............namespace.C
49d00 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 omposer\DependencyResolver;..use
49d20 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f .Composer\IO\IOInterface;.use.Co
49d40 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 mposer\Repository\RepositoryInte
49d60 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 rface;.use.Composer\Repository\P
49d80 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 6f 6c latformRepository;.....class.Sol
49da0 76 65 72 0a 7b 0a 63 6f 6e 73 74 20 42 52 41 4e 43 48 5f 4c 49 54 45 52 41 4c 53 20 3d 20 30 3b ver.{.const.BRANCH_LITERALS.=.0;
49dc0 0a 63 6f 6e 73 74 20 42 52 41 4e 43 48 5f 4c 45 56 45 4c 20 3d 20 31 3b 0a 0a 0a 70 72 6f 74 65 .const.BRANCH_LEVEL.=.1;...prote
49de0 63 74 65 64 20 24 70 6f 6c 69 63 79 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6f 6c 3b 0a cted.$policy;..protected.$pool;.
49e00 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 65 64 3b 0a 0a 70 72 6f 74 65 63 74 65 .protected.$installed;..protecte
49e20 64 20 24 72 75 6c 65 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 53 65 74 47 65 6e d.$rules;..protected.$ruleSetGen
49e40 65 72 61 74 6f 72 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6a 6f 62 73 3b 0a 0a 0a 70 72 6f 74 erator;..protected.$jobs;...prot
49e60 65 63 74 65 64 20 24 75 70 64 61 74 65 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 6f ected.$updateMap.=.array();..pro
49e80 74 65 63 74 65 64 20 24 77 61 74 63 68 47 72 61 70 68 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 tected.$watchGraph;..protected.$
49ea0 64 65 63 69 73 69 6f 6e 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 65 64 decisions;..protected.$installed
49ec0 4d 61 70 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 Map;...protected.$propagateIndex
49ee0 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 ;..protected.$branches.=.array()
49f00 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 62 6c 65 6d 73 20 3d 20 61 72 72 61 79 28 29 ;..protected.$problems.=.array()
49f20 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 65 61 72 6e 65 64 50 6f 6f 6c 20 3d 20 61 72 72 61 ;..protected.$learnedPool.=.arra
49f40 79 28 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 65 61 72 6e 65 64 57 68 79 20 3d 20 61 72 y();..protected.$learnedWhy.=.ar
49f60 72 61 79 28 29 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 ray();...protected.$io;........p
49f80 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 6f 6c 69 63 ublic.function.__construct(Polic
49fa0 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f 6c 69 63 79 2c 20 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 yInterface.$policy,.Pool.$pool,.
49fc0 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 2c 20 RepositoryInterface.$installed,.
49fe0 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 IOInterface.$io).{.$this->io.=.$
4a000 69 6f 3b 0a 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 20 3d 20 24 70 6f 6c 69 63 79 3b 0a 24 74 68 io;.$this->policy.=.$policy;.$th
4a020 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c is->pool.=.$pool;.$this->install
4a040 65 64 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 3b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 53 65 74 47 ed.=.$installed;.$this->ruleSetG
4a060 65 6e 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 52 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 28 enerator.=.new.RuleSetGenerator(
4a080 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 $policy,.$pool);.}.....public.fu
4a0a0 6e 63 74 69 6f 6e 20 67 65 74 52 75 6c 65 53 65 74 53 69 7a 65 28 29 0a 7b 0a 72 65 74 75 72 6e nction.getRuleSetSize().{.return
4a0c0 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 29 3b 0a 7d 0a 0a 0a 0a 70 72 69 76 61 .count($this->rules);.}....priva
4a0e0 74 65 20 66 75 6e 63 74 69 6f 6e 20 6d 61 6b 65 41 73 73 65 72 74 69 6f 6e 52 75 6c 65 44 65 63 te.function.makeAssertionRuleDec
4a100 69 73 69 6f 6e 73 28 29 0a 7b 0a 24 64 65 63 69 73 69 6f 6e 53 74 61 72 74 20 3d 20 63 6f 75 6e isions().{.$decisionStart.=.coun
4a120 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 29 20 2d 20 31 3b 0a 0a 24 72 75 6c 65 73 t($this->decisions).-.1;..$rules
4a140 43 6f 75 6e 74 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 29 3b 0a 66 6f 72 Count.=.count($this->rules);.for
4a160 20 28 24 72 75 6c 65 49 6e 64 65 78 20 3d 20 30 3b 20 24 72 75 6c 65 49 6e 64 65 78 20 3c 20 24 .($ruleIndex.=.0;.$ruleIndex.<.$
4a180 72 75 6c 65 73 43 6f 75 6e 74 3b 20 24 72 75 6c 65 49 6e 64 65 78 2b 2b 29 20 7b 0a 24 72 75 6c rulesCount;.$ruleIndex++).{.$rul
4a1a0 65 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 72 75 6c 65 42 79 49 64 5b 24 72 75 6c 65 e.=.$this->rules->ruleById[$rule
4a1c0 49 6e 64 65 78 5d 3b 0a 0a 69 66 20 28 21 24 72 75 6c 65 2d 3e 69 73 41 73 73 65 72 74 69 6f 6e Index];..if.(!$rule->isAssertion
4a1e0 28 29 20 7c 7c 20 24 72 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 29 20 7b 0a 63 6f 6e ().||.$rule->isDisabled()).{.con
4a200 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 72 75 6c 65 2d 3e 6c 69 74 tinue;.}..$literals.=.$rule->lit
4a220 65 72 61 6c 73 3b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 6c 69 74 65 72 61 6c 73 5b 30 5d 3b 0a erals;.$literal.=.$literals[0];.
4a240 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 64 28 .if.(!$this->decisions->decided(
4a260 61 62 73 28 24 6c 69 74 65 72 61 6c 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f abs($literal))).{.$this->decisio
4a280 6e 73 2d 3e 64 65 63 69 64 65 28 24 6c 69 74 65 72 61 6c 2c 20 31 2c 20 24 72 75 6c 65 29 3b 0a ns->decide($literal,.1,.$rule);.
4a2a0 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e continue;.}..if.($this->decision
4a2c0 73 2d 3e 73 61 74 69 73 66 79 28 24 6c 69 74 65 72 61 6c 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 s->satisfy($literal)).{.continue
4a2e0 3b 0a 7d 0a 0a 0a 20 69 66 20 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 ;.}....if.(RuleSet::TYPE_LEARNED
4a300 20 3d 3d 3d 20 24 72 75 6c 65 2d 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 24 72 75 6c 65 2d 3e .===.$rule->getType()).{.$rule->
4a320 64 69 73 61 62 6c 65 28 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6f 6e 66 6c 69 63 disable();.continue;.}..$conflic
4a340 74 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 52 75 t.=.$this->decisions->decisionRu
4a360 6c 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 63 6f 6e 66 6c 69 63 74 20 26 26 20 le($literal);..if.($conflict.&&.
4a380 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 20 3d 3d 3d 20 24 63 6f 6e 66 6c RuleSet::TYPE_PACKAGE.===.$confl
4a3a0 69 63 74 2d 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 77 ict->getType()).{.$problem.=.new
4a3c0 20 50 72 6f 62 6c 65 6d 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 29 3b 0a 0a 24 70 72 6f 62 6c 65 6d .Problem($this->pool);..$problem
4a3e0 2d 3e 61 64 64 52 75 6c 65 28 24 72 75 6c 65 29 3b 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 ->addRule($rule);.$problem->addR
4a400 75 6c 65 28 24 63 6f 6e 66 6c 69 63 74 29 3b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 50 72 ule($conflict);.$this->disablePr
4a420 6f 62 6c 65 6d 28 24 72 75 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 5b 5d 20 oblem($rule);.$this->problems[].
4a440 3d 20 24 70 72 6f 62 6c 65 6d 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 24 70 72 6f 62 =.$problem;.continue;.}....$prob
4a460 6c 65 6d 20 3d 20 6e 65 77 20 50 72 6f 62 6c 65 6d 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 29 3b 0a lem.=.new.Problem($this->pool);.
4a480 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 72 75 6c 65 29 3b 0a 24 70 72 6f 62 6c $problem->addRule($rule);.$probl
4a4a0 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 63 6f 6e 66 6c 69 63 74 29 3b 0a 0a 0a 20 0a 20 66 6f 72 em->addRule($conflict);......for
4a4c0 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 46 each.($this->rules->getIteratorF
4a4e0 6f 72 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 29 20 61 73 20 24 61 73 73 65 72 74 or(RuleSet::TYPE_JOB).as.$assert
4a500 52 75 6c 65 29 20 7b 0a 69 66 20 28 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 69 73 44 69 73 61 62 Rule).{.if.($assertRule->isDisab
4a520 6c 65 64 28 29 20 7c 7c 20 21 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 69 73 41 73 73 65 72 74 69 led().||.!$assertRule->isAsserti
4a540 6f 6e 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 61 73 73 65 72 74 52 75 6c 65 on()).{.continue;.}..$assertRule
4a560 4c 69 74 65 72 61 6c 73 20 3d 20 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 Literals.=.$assertRule->literals
4a580 3b 0a 24 61 73 73 65 72 74 52 75 6c 65 4c 69 74 65 72 61 6c 20 3d 20 24 61 73 73 65 72 74 52 75 ;.$assertRuleLiteral.=.$assertRu
4a5a0 6c 65 4c 69 74 65 72 61 6c 73 5b 30 5d 3b 0a 0a 69 66 20 28 61 62 73 28 24 6c 69 74 65 72 61 6c leLiterals[0];..if.(abs($literal
4a5c0 29 20 21 3d 3d 20 61 62 73 28 24 61 73 73 65 72 74 52 75 6c 65 4c 69 74 65 72 61 6c 29 29 20 7b ).!==.abs($assertRuleLiteral)).{
4a5e0 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 .continue;.}..$problem->addRule(
4a600 24 61 73 73 65 72 74 52 75 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 50 72 6f 62 $assertRule);.$this->disableProb
4a620 6c 65 6d 28 24 61 73 73 65 72 74 52 75 6c 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c lem($assertRule);.}.$this->probl
4a640 65 6d 73 5b 5d 20 3d 20 24 70 72 6f 62 6c 65 6d 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 ems[].=.$problem;..$this->decisi
4a660 6f 6e 73 2d 3e 72 65 73 65 74 54 6f 4f 66 66 73 65 74 28 24 64 65 63 69 73 69 6f 6e 53 74 61 72 ons->resetToOffset($decisionStar
4a680 74 29 3b 0a 24 72 75 6c 65 49 6e 64 65 78 20 3d 20 2d 31 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 t);.$ruleIndex.=.-1;.}.}..protec
4a6a0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 75 70 49 6e 73 74 61 6c 6c 65 64 4d 61 70 28 29 ted.function.setupInstalledMap()
4a6c0 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 .{.$this->installedMap.=.array()
4a6e0 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 2d 3e 67 65 74 ;.foreach.($this->installed->get
4a700 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d Packages().as.$package).{.$this-
4a720 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 24 70 >installedMap[$package->id].=.$p
4a740 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 ackage;.}.}.....protected.functi
4a760 6f 6e 20 63 68 65 63 6b 46 6f 72 52 6f 6f 74 52 65 71 75 69 72 65 50 72 6f 62 6c 65 6d 73 28 24 on.checkForRootRequireProblems($
4a780 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 ignorePlatformReqs).{.foreach.($
4a7a0 74 68 69 73 2d 3e 6a 6f 62 73 20 61 73 20 24 6a 6f 62 29 20 7b 0a 73 77 69 74 63 68 20 28 24 6a this->jobs.as.$job).{.switch.($j
4a7c0 6f 62 5b 27 63 6d 64 27 5d 29 20 7b 0a 63 61 73 65 20 27 75 70 64 61 74 65 27 3a 0a 24 70 61 63 ob['cmd']).{.case.'update':.$pac
4a7e0 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 kages.=.$this->pool->whatProvide
4a800 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 5b 27 63 6f 6e s($job['packageName'],.$job['con
4a820 73 74 72 61 69 6e 74 27 5d 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 straint']);.foreach.($packages.a
4a840 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 s.$package).{.if.(isset($this->i
4a860 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 29 29 20 7b 0a 24 74 nstalledMap[$package->id])).{.$t
4a880 68 69 73 2d 3e 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 74 his->updateMap[$package->id].=.t
4a8a0 72 75 65 3b 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 75 70 64 61 74 65 2d 61 6c rue;.}.}.break;..case.'update-al
4a8c0 6c 27 3a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 l':.foreach.($this->installedMap
4a8e0 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 4d 61 70 .as.$package).{.$this->updateMap
4a900 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 62 72 65 61 6b 3b 0a [$package->id].=.true;.}.break;.
4a920 0a 63 61 73 65 20 27 69 6e 73 74 61 6c 6c 27 3a 0a 69 66 20 28 24 69 67 6e 6f 72 65 50 6c 61 74 .case.'install':.if.($ignorePlat
4a940 66 6f 72 6d 52 65 71 73 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 74 66 6f 72 6d 52 formReqs.&&.preg_match(PlatformR
4a960 65 70 6f 73 69 74 6f 72 79 3a 3a 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 epository::PLATFORM_PACKAGE_REGE
4a980 58 2c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 29 20 7b 0a 62 72 65 61 6b X,.$job['packageName'])).{.break
4a9a0 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 ;.}..if.(!$this->pool->whatProvi
4a9c0 64 65 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 5b 27 63 des($job['packageName'],.$job['c
4a9e0 6f 6e 73 74 72 61 69 6e 74 27 5d 29 29 20 7b 0a 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 77 20 50 onstraint'])).{.$problem.=.new.P
4aa00 72 6f 62 6c 65 6d 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 29 3b 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 roblem($this->pool);.$problem->a
4aa20 64 64 52 75 6c 65 28 6e 65 77 20 52 75 6c 65 28 61 72 72 61 79 28 29 2c 20 6e 75 6c 6c 2c 20 6e ddRule(new.Rule(array(),.null,.n
4aa40 75 6c 6c 2c 20 24 6a 6f 62 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 5b 5d 20 3d ull,.$job));.$this->problems[].=
4aa60 20 24 70 72 6f 62 6c 65 6d 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a .$problem;.}.break;.}.}.}.......
4aa80 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 6c 76 65 28 52 65 71 75 65 73 74 20 24 72 public.function.solve(Request.$r
4aaa0 65 71 75 65 73 74 2c 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 66 61 equest,.$ignorePlatformReqs.=.fa
4aac0 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 20 3d 20 24 72 65 71 75 65 73 74 2d 3e 67 lse).{.$this->jobs.=.$request->g
4aae0 65 74 4a 6f 62 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 75 70 49 6e 73 74 61 6c 6c 65 64 etJobs();..$this->setupInstalled
4ab00 4d 61 70 28 29 3b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c Map();.$this->rules.=.$this->rul
4ab20 65 53 65 74 47 65 6e 65 72 61 74 6f 72 2d 3e 67 65 74 52 75 6c 65 73 46 6f 72 28 24 74 68 69 73 eSetGenerator->getRulesFor($this
4ab40 2d 3e 6a 6f 62 73 2c 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 69 67 ->jobs,.$this->installedMap,.$ig
4ab60 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 46 norePlatformReqs);.$this->checkF
4ab80 6f 72 52 6f 6f 74 52 65 71 75 69 72 65 50 72 6f 62 6c 65 6d 73 28 24 69 67 6e 6f 72 65 50 6c 61 orRootRequireProblems($ignorePla
4aba0 74 66 6f 72 6d 52 65 71 73 29 3b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 3d 20 6e tformReqs);.$this->decisions.=.n
4abc0 65 77 20 44 65 63 69 73 69 6f 6e 73 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 29 3b 0a 24 74 68 69 73 ew.Decisions($this->pool);.$this
4abe0 2d 3e 77 61 74 63 68 47 72 61 70 68 20 3d 20 6e 65 77 20 52 75 6c 65 57 61 74 63 68 47 72 61 70 ->watchGraph.=.new.RuleWatchGrap
4ac00 68 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 61 73 20 24 72 75 h;..foreach.($this->rules.as.$ru
4ac20 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 47 72 61 70 68 2d 3e 69 6e 73 65 72 74 28 le).{.$this->watchGraph->insert(
4ac40 6e 65 77 20 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 28 24 72 75 6c 65 29 29 3b 0a 7d 0a 0a 0a 24 new.RuleWatchNode($rule));.}...$
4ac60 74 68 69 73 2d 3e 6d 61 6b 65 41 73 73 65 72 74 69 6f 6e 52 75 6c 65 44 65 63 69 73 69 6f 6e 73 this->makeAssertionRuleDecisions
4ac80 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 52 65 73 6f ();..$this->io->writeError('Reso
4aca0 6c 76 69 6e 67 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 74 68 72 6f 75 67 68 20 53 41 54 27 2c lving.dependencies.through.SAT',
4acc0 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 24 62 65 66 .true,.IOInterface::DEBUG);.$bef
4ace0 6f 72 65 20 3d 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 72 75 ore.=.microtime(true);.$this->ru
4ad00 6e 53 61 74 28 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f nSat(true);.$this->io->writeErro
4ad20 72 28 73 70 72 69 6e 74 66 28 27 44 65 70 65 6e 64 65 6e 63 79 20 72 65 73 6f 6c 75 74 69 6f 6e r(sprintf('Dependency.resolution
4ad40 20 63 6f 6d 70 6c 65 74 65 64 20 69 6e 20 25 2e 33 66 20 73 65 63 6f 6e 64 73 27 2c 20 6d 69 63 .completed.in.%.3f.seconds',.mic
4ad60 72 6f 74 69 6d 65 28 74 72 75 65 29 20 2d 20 24 62 65 66 6f 72 65 29 2c 20 74 72 75 65 2c 20 49 rotime(true).-.$before),.true,.I
4ad80 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 OInterface::VERBOSE);....foreach
4ada0 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 61 73 20 24 70 61 63 6b 61 67 .($this->installedMap.as.$packag
4adc0 65 49 64 20 3d 3e 20 24 76 6f 69 64 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 eId.=>.$void).{.if.($this->decis
4ade0 69 6f 6e 73 2d 3e 75 6e 64 65 63 69 64 65 64 28 24 70 61 63 6b 61 67 65 49 64 29 29 20 7b 0a 24 ions->undecided($packageId)).{.$
4ae00 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 28 2d 24 70 61 63 6b 61 67 this->decisions->decide(-$packag
4ae20 65 49 64 2c 20 31 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 eId,.1,.null);.}.}..if.($this->p
4ae40 72 6f 62 6c 65 6d 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c 76 65 72 50 72 6f 62 6c roblems).{.throw.new.SolverProbl
4ae60 65 6d 73 45 78 63 65 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 2c 20 24 74 emsException($this->problems,.$t
4ae80 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 3b 0a 7d 0a 0a 24 74 72 61 6e 73 61 63 74 his->installedMap);.}..$transact
4aea0 69 6f 6e 20 3d 20 6e 65 77 20 54 72 61 6e 73 61 63 74 69 6f 6e 28 24 74 68 69 73 2d 3e 70 6f 6c ion.=.new.Transaction($this->pol
4aec0 69 63 79 2c 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c icy,.$this->pool,.$this->install
4aee0 65 64 4d 61 70 2c 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 29 3b 0a 0a 72 65 74 75 72 edMap,.$this->decisions);..retur
4af00 6e 20 24 74 72 61 6e 73 61 63 74 69 6f 6e 2d 3e 67 65 74 4f 70 65 72 61 74 69 6f 6e 73 28 29 3b n.$transaction->getOperations();
4af20 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 .}...........protected.function.
4af40 70 72 6f 70 61 67 61 74 65 28 24 6c 65 76 65 6c 29 0a 7b 0a 77 68 69 6c 65 20 28 24 74 68 69 73 propagate($level).{.while.($this
4af60 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 76 61 6c 69 64 4f 66 66 73 65 74 28 24 74 68 69 73 2d 3e ->decisions->validOffset($this->
4af80 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 29 29 20 7b 0a 24 64 65 63 69 73 69 6f 6e 20 3d 20 24 propagateIndex)).{.$decision.=.$
4afa0 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 61 74 4f 66 66 73 65 74 28 24 74 68 69 73 2d this->decisions->atOffset($this-
4afc0 3e 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 29 3b 0a 0a 24 63 6f 6e 66 6c 69 63 74 20 3d 20 24 >propagateIndex);..$conflict.=.$
4afe0 74 68 69 73 2d 3e 77 61 74 63 68 47 72 61 70 68 2d 3e 70 72 6f 70 61 67 61 74 65 4c 69 74 65 72 this->watchGraph->propagateLiter
4b000 61 6c 28 0a 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f al(.$decision[Decisions::DECISIO
4b020 4e 5f 4c 49 54 45 52 41 4c 5d 2c 0a 24 6c 65 76 65 6c 2c 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 N_LITERAL],.$level,.$this->decis
4b040 69 6f 6e 73 0a 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 2b 2b ions.);..$this->propagateIndex++
4b060 3b 0a 0a 69 66 20 28 24 63 6f 6e 66 6c 69 63 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 6f 6e 66 ;..if.($conflict).{.return.$conf
4b080 6c 69 63 74 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a lict;.}.}..return.null;.}.......
4b0a0 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 76 65 72 74 28 24 6c 65 76 65 6c 29 0a private.function.revert($level).
4b0c0 7b 0a 77 68 69 6c 65 20 28 21 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 69 73 45 6d {.while.(!$this->decisions->isEm
4b0e0 70 74 79 28 29 29 20 7b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 pty()).{.$literal.=.$this->decis
4b100 69 6f 6e 73 2d 3e 6c 61 73 74 4c 69 74 65 72 61 6c 28 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d ions->lastLiteral();..if.($this-
4b120 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 75 6e 64 65 63 69 64 65 64 28 24 6c 69 74 65 72 61 6c 29 29 >decisions->undecided($literal))
4b140 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 20 3d 20 24 74 .{.break;.}..$decisionLevel.=.$t
4b160 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 28 24 6c his->decisions->decisionLevel($l
4b180 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 20 3c 3d 20 iteral);..if.($decisionLevel.<=.
4b1a0 24 6c 65 76 65 6c 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 $level).{.break;.}..$this->decis
4b1c0 69 6f 6e 73 2d 3e 72 65 76 65 72 74 4c 61 73 74 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 70 61 ions->revertLast();.$this->propa
4b1e0 67 61 74 65 49 6e 64 65 78 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f gateIndex.=.count($this->decisio
4b200 6e 73 29 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 62 72 61 ns);.}..while.(!empty($this->bra
4b220 6e 63 68 65 73 29 20 26 26 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 63 6f 75 6e 74 28 nches).&&.$this->branches[count(
4b240 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 2d 20 31 5d 5b 73 65 6c 66 3a 3a 42 52 41 4e $this->branches).-.1][self::BRAN
4b260 43 48 5f 4c 45 56 45 4c 5d 20 3e 3d 20 24 6c 65 76 65 6c 29 20 7b 0a 61 72 72 61 79 5f 70 6f 70 CH_LEVEL].>=.$level).{.array_pop
4b280 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ($this->branches);.}.}..........
4b2a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 ...........private.function.setP
4b2c0 72 6f 70 61 67 61 74 65 4c 65 61 72 6e 28 24 6c 65 76 65 6c 2c 20 24 6c 69 74 65 72 61 6c 2c 20 ropagateLearn($level,.$literal,.
4b2e0 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 52 75 6c 65 20 24 72 75 6c 65 29 0a 7b 0a 24 6c 65 $disableRules,.Rule.$rule).{.$le
4b300 76 65 6c 2b 2b 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 vel++;..$this->decisions->decide
4b320 28 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 2c 20 24 72 75 6c 65 29 3b 0a 0a 77 68 69 6c ($literal,.$level,.$rule);..whil
4b340 65 20 28 74 72 75 65 29 20 7b 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 e.(true).{.$rule.=.$this->propag
4b360 61 74 65 28 24 6c 65 76 65 6c 29 3b 0a 0a 69 66 20 28 21 24 72 75 6c 65 29 20 7b 0a 62 72 65 61 ate($level);..if.(!$rule).{.brea
4b380 6b 3b 0a 7d 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3d 3d 20 31 29 20 7b 0a 72 65 74 75 72 6e 20 k;.}..if.($level.==.1).{.return.
4b3a0 24 74 68 69 73 2d 3e 61 6e 61 6c 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 28 24 72 75 6c 65 2c 20 $this->analyzeUnsolvable($rule,.
4b3c0 24 64 69 73 61 62 6c 65 52 75 6c 65 73 29 3b 0a 7d 0a 0a 0a 20 6c 69 73 74 28 24 6c 65 61 72 6e $disableRules);.}....list($learn
4b3e0 4c 69 74 65 72 61 6c 2c 20 24 6e 65 77 4c 65 76 65 6c 2c 20 24 6e 65 77 52 75 6c 65 2c 20 24 77 Literal,.$newLevel,.$newRule,.$w
4b400 68 79 29 20 3d 20 24 74 68 69 73 2d 3e 61 6e 61 6c 79 7a 65 28 24 6c 65 76 65 6c 2c 20 24 72 75 hy).=.$this->analyze($level,.$ru
4b420 6c 65 29 3b 0a 0a 69 66 20 28 24 6e 65 77 4c 65 76 65 6c 20 3c 3d 20 30 20 7c 7c 20 24 6e 65 77 le);..if.($newLevel.<=.0.||.$new
4b440 4c 65 76 65 6c 20 3e 3d 20 24 6c 65 76 65 6c 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c Level.>=.$level).{.throw.new.Sol
4b460 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a 22 54 72 79 69 6e 67 20 74 6f 20 72 65 76 65 verBugException(."Trying.to.reve
4b480 72 74 20 74 6f 20 69 6e 76 61 6c 69 64 20 6c 65 76 65 6c 20 22 2e 28 69 6e 74 29 20 24 6e 65 77 rt.to.invalid.level.".(int).$new
4b4a0 4c 65 76 65 6c 2e 22 20 66 72 6f 6d 20 6c 65 76 65 6c 20 22 2e 28 69 6e 74 29 20 24 6c 65 76 65 Level.".from.level.".(int).$leve
4b4c0 6c 2e 22 2e 22 0a 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 6e 65 77 52 75 6c 65 29 20 7b 0a l.".".);.}.elseif.(!$newRule).{.
4b4e0 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a 22 4e throw.new.SolverBugException(."N
4b500 6f 20 72 75 6c 65 20 77 61 73 20 6c 65 61 72 6e 65 64 20 66 72 6f 6d 20 61 6e 61 6c 79 7a 69 6e o.rule.was.learned.from.analyzin
4b520 67 20 24 72 75 6c 65 20 61 74 20 6c 65 76 65 6c 20 24 6c 65 76 65 6c 2e 22 0a 29 3b 0a 7d 0a 0a g.$rule.at.level.$level.".);.}..
4b540 24 6c 65 76 65 6c 20 3d 20 24 6e 65 77 4c 65 76 65 6c 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 76 65 $level.=.$newLevel;..$this->reve
4b560 72 74 28 24 6c 65 76 65 6c 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 61 64 64 28 24 rt($level);..$this->rules->add($
4b580 6e 65 77 52 75 6c 65 2c 20 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 29 3b newRule,.RuleSet::TYPE_LEARNED);
4b5a0 0a 0a 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 57 68 79 5b 73 70 6c 5f 6f 62 6a 65 63 74 5f 68 ..$this->learnedWhy[spl_object_h
4b5c0 61 73 68 28 24 6e 65 77 52 75 6c 65 29 5d 20 3d 20 24 77 68 79 3b 0a 0a 24 72 75 6c 65 4e 6f 64 ash($newRule)].=.$why;..$ruleNod
4b5e0 65 20 3d 20 6e 65 77 20 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 28 24 6e 65 77 52 75 6c 65 29 3b e.=.new.RuleWatchNode($newRule);
4b600 0a 24 72 75 6c 65 4e 6f 64 65 2d 3e 77 61 74 63 68 32 4f 6e 48 69 67 68 65 73 74 28 24 74 68 69 .$ruleNode->watch2OnHighest($thi
4b620 73 2d 3e 64 65 63 69 73 69 6f 6e 73 29 3b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 47 72 61 70 68 s->decisions);.$this->watchGraph
4b640 2d 3e 69 6e 73 65 72 74 28 24 72 75 6c 65 4e 6f 64 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 63 ->insert($ruleNode);..$this->dec
4b660 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 28 24 6c 65 61 72 6e 4c 69 74 65 72 61 6c 2c 20 24 6c isions->decide($learnLiteral,.$l
4b680 65 76 65 6c 2c 20 24 6e 65 77 52 75 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 65 76 65 evel,.$newRule);.}..return.$leve
4b6a0 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 l;.}.........private.function.se
4b6c0 6c 65 63 74 41 6e 64 49 6e 73 74 61 6c 6c 28 24 6c 65 76 65 6c 2c 20 61 72 72 61 79 20 24 64 65 lectAndInstall($level,.array.$de
4b6e0 63 69 73 69 6f 6e 51 75 65 75 65 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 52 75 6c 65 cisionQueue,.$disableRules,.Rule
4b700 20 24 72 75 6c 65 29 0a 7b 0a 0a 20 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 70 .$rule).{...$literals.=.$this->p
4b720 6f 6c 69 63 79 2d 3e 73 65 6c 65 63 74 50 72 65 66 65 72 72 65 64 50 61 63 6b 61 67 65 73 28 24 olicy->selectPreferredPackages($
4b740 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c this->pool,.$this->installedMap,
4b760 20 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 2c 20 24 72 75 6c 65 2d 3e 67 65 74 52 65 71 75 69 .$decisionQueue,.$rule->getRequi
4b780 72 65 64 50 61 63 6b 61 67 65 28 29 29 3b 0a 0a 24 73 65 6c 65 63 74 65 64 4c 69 74 65 72 61 6c redPackage());..$selectedLiteral
4b7a0 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 6c 69 74 65 72 61 6c 73 29 3b 0a 0a 0a 20 69 66 .=.array_shift($literals);....if
4b7c0 20 28 63 6f 75 6e 74 28 24 6c 69 74 65 72 61 6c 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 .(count($literals)).{.$this->bra
4b7e0 6e 63 68 65 73 5b 5d 20 3d 20 61 72 72 61 79 28 24 6c 69 74 65 72 61 6c 73 2c 20 24 6c 65 76 65 nches[].=.array($literals,.$leve
4b800 6c 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 70 61 67 61 74 l);.}..return.$this->setPropagat
4b820 65 4c 65 61 72 6e 28 24 6c 65 76 65 6c 2c 20 24 73 65 6c 65 63 74 65 64 4c 69 74 65 72 61 6c 2c eLearn($level,.$selectedLiteral,
4b840 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 24 72 75 6c 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a .$disableRules,.$rule);.}.......
4b860 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 6e 61 6c 79 7a 65 28 24 6c 65 76 65 protected.function.analyze($leve
4b880 6c 2c 20 52 75 6c 65 20 24 72 75 6c 65 29 0a 7b 0a 24 61 6e 61 6c 79 7a 65 64 52 75 6c 65 20 3d l,.Rule.$rule).{.$analyzedRule.=
4b8a0 20 24 72 75 6c 65 3b 0a 24 72 75 6c 65 4c 65 76 65 6c 20 3d 20 31 3b 0a 24 6e 75 6d 20 3d 20 30 .$rule;.$ruleLevel.=.1;.$num.=.0
4b8c0 3b 0a 24 6c 31 6e 75 6d 20 3d 20 30 3b 0a 24 73 65 65 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 ;.$l1num.=.0;.$seen.=.array();.$
4b8e0 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 6e 75 6c 6c 29 3b 0a 0a learnedLiterals.=.array(null);..
4b900 24 64 65 63 69 73 69 6f 6e 49 64 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 $decisionId.=.count($this->decis
4b920 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 5b 5d 20 3d 20 61 ions);..$this->learnedPool[].=.a
4b940 72 72 61 79 28 29 3b 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 24 74 68 69 73 2d 3e 6c rray();..while.(true).{.$this->l
4b960 65 61 72 6e 65 64 50 6f 6f 6c 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 earnedPool[count($this->learnedP
4b980 6f 6f 6c 29 20 2d 20 31 5d 5b 5d 20 3d 20 24 72 75 6c 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 ool).-.1][].=.$rule;..foreach.($
4b9a0 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 0a 20 rule->literals.as.$literal).{...
4b9c0 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6c if.($this->decisions->satisfy($l
4b9e0 69 74 65 72 61 6c 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 iteral)).{.continue;.}..if.(isse
4ba00 74 28 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b 0a 63 6f 6e 74 69 t($seen[abs($literal)])).{.conti
4ba20 6e 75 65 3b 0a 7d 0a 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 20 3d 20 74 72 nue;.}.$seen[abs($literal)].=.tr
4ba40 75 65 3b 0a 0a 24 6c 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 ue;..$l.=.$this->decisions->deci
4ba60 73 69 6f 6e 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 31 20 3d 3d 3d 20 sionLevel($literal);..if.(1.===.
4ba80 24 6c 29 20 7b 0a 24 6c 31 6e 75 6d 2b 2b 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6c 65 76 65 6c $l).{.$l1num++;.}.elseif.($level
4baa0 20 3d 3d 3d 20 24 6c 29 20 7b 0a 24 6e 75 6d 2b 2b 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 6c .===.$l).{.$num++;.}.else.{...$l
4bac0 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 0a 69 66 earnedLiterals[].=.$literal;..if
4bae0 20 28 24 6c 20 3e 20 24 72 75 6c 65 4c 65 76 65 6c 29 20 7b 0a 24 72 75 6c 65 4c 65 76 65 6c 20 .($l.>.$ruleLevel).{.$ruleLevel.
4bb00 3d 20 24 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 6c 31 72 65 74 72 79 20 3d 20 74 72 75 65 3b 0a 77 68 =.$l;.}.}.}..$l1retry.=.true;.wh
4bb20 69 6c 65 20 28 24 6c 31 72 65 74 72 79 29 20 7b 0a 24 6c 31 72 65 74 72 79 20 3d 20 66 61 6c 73 ile.($l1retry).{.$l1retry.=.fals
4bb40 65 3b 0a 0a 69 66 20 28 21 24 6e 75 6d 20 26 26 20 21 2d 2d 24 6c 31 6e 75 6d 29 20 7b 0a 0a 20 e;..if.(!$num.&&.!--$l1num).{...
4bb60 62 72 65 61 6b 20 32 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 69 66 20 28 24 break.2;.}..while.(true).{.if.($
4bb80 64 65 63 69 73 69 6f 6e 49 64 20 3c 3d 20 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c decisionId.<=.0).{.throw.new.Sol
4bba0 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a 22 52 65 61 63 68 65 64 20 69 6e 76 61 6c 69 verBugException(."Reached.invali
4bbc0 64 20 64 65 63 69 73 69 6f 6e 20 69 64 20 24 64 65 63 69 73 69 6f 6e 49 64 20 77 68 69 6c 65 20 d.decision.id.$decisionId.while.
4bbe0 6c 6f 6f 6b 69 6e 67 20 74 68 72 6f 75 67 68 20 24 72 75 6c 65 20 66 6f 72 20 61 20 6c 69 74 65 looking.through.$rule.for.a.lite
4bc00 72 61 6c 20 70 72 65 73 65 6e 74 20 69 6e 20 74 68 65 20 61 6e 61 6c 79 7a 65 64 20 72 75 6c 65 ral.present.in.the.analyzed.rule
4bc20 20 24 61 6e 61 6c 79 7a 65 64 52 75 6c 65 2e 22 0a 29 3b 0a 7d 0a 0a 24 64 65 63 69 73 69 6f 6e .$analyzedRule.".);.}..$decision
4bc40 49 64 2d 2d 3b 0a 0a 24 64 65 63 69 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 Id--;..$decision.=.$this->decisi
4bc60 6f 6e 73 2d 3e 61 74 4f 66 66 73 65 74 28 24 64 65 63 69 73 69 6f 6e 49 64 29 3b 0a 24 6c 69 74 ons->atOffset($decisionId);.$lit
4bc80 65 72 61 6c 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 eral.=.$decision[Decisions::DECI
4bca0 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 65 65 6e 5b SION_LITERAL];..if.(isset($seen[
4bcc0 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 75 abs($literal)])).{.break;.}.}..u
4bce0 6e 73 65 74 28 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 3b 0a 0a 69 66 20 nset($seen[abs($literal)]);..if.
4bd00 28 24 6e 75 6d 20 26 26 20 30 20 3d 3d 3d 20 2d 2d 24 6e 75 6d 29 20 7b 0a 24 6c 65 61 72 6e 65 ($num.&&.0.===.--$num).{.$learne
4bd20 64 4c 69 74 65 72 61 6c 73 5b 30 5d 20 3d 20 2d 61 62 73 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a dLiterals[0].=.-abs($literal);..
4bd40 69 66 20 28 21 24 6c 31 6e 75 6d 29 20 7b 0a 62 72 65 61 6b 20 32 3b 0a 7d 0a 0a 66 6f 72 65 61 if.(!$l1num).{.break.2;.}..forea
4bd60 63 68 20 28 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 20 61 73 20 24 69 20 3d 3e 20 24 6c ch.($learnedLiterals.as.$i.=>.$l
4bd80 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 69 20 21 3d 3d 20 30 29 20 7b earnedLiteral).{.if.($i.!==.0).{
4bda0 0a 75 6e 73 65 74 28 24 73 65 65 6e 5b 61 62 73 28 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c .unset($seen[abs($learnedLiteral
4bdc0 29 5d 29 3b 0a 7d 0a 7d 0a 0a 20 24 6c 31 6e 75 6d 2b 2b 3b 0a 24 6c 31 72 65 74 72 79 20 3d 20 )]);.}.}...$l1num++;.$l1retry.=.
4bde0 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 24 64 65 63 69 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 true;.}.}..$decision.=.$this->de
4be00 63 69 73 69 6f 6e 73 2d 3e 61 74 4f 66 66 73 65 74 28 24 64 65 63 69 73 69 6f 6e 49 64 29 3b 0a cisions->atOffset($decisionId);.
4be20 24 72 75 6c 65 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 $rule.=.$decision[Decisions::DEC
4be40 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 7d 0a 0a 24 77 68 79 20 3d 20 63 6f 75 6e 74 28 24 ISION_REASON];.}..$why.=.count($
4be60 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 29 20 2d 20 31 3b 0a 0a 69 66 20 28 21 24 6c this->learnedPool).-.1;..if.(!$l
4be80 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 5b 30 5d 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 53 earnedLiterals[0]).{.throw.new.S
4bea0 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a 22 44 69 64 20 6e 6f 74 20 66 69 6e 64 olverBugException(."Did.not.find
4bec0 20 61 20 6c 65 61 72 6e 61 62 6c 65 20 6c 69 74 65 72 61 6c 20 69 6e 20 61 6e 61 6c 79 7a 65 64 .a.learnable.literal.in.analyzed
4bee0 20 72 75 6c 65 20 24 61 6e 61 6c 79 7a 65 64 52 75 6c 65 2e 22 0a 29 3b 0a 7d 0a 0a 24 6e 65 77 .rule.$analyzedRule.".);.}..$new
4bf00 52 75 6c 65 20 3d 20 6e 65 77 20 52 75 6c 65 28 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 Rule.=.new.Rule($learnedLiterals
4bf20 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 4c 45 41 52 4e 45 44 2c 20 24 77 68 79 29 3b 0a 0a 72 65 ,.Rule::RULE_LEARNED,.$why);..re
4bf40 74 75 72 6e 20 61 72 72 61 79 28 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 5b 30 5d 2c 20 turn.array($learnedLiterals[0],.
4bf60 24 72 75 6c 65 4c 65 76 65 6c 2c 20 24 6e 65 77 52 75 6c 65 2c 20 24 77 68 79 29 3b 0a 7d 0a 0a $ruleLevel,.$newRule,.$why);.}..
4bf80 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 6e 61 6c 79 7a 65 55 6e 73 6f ....private.function.analyzeUnso
4bfa0 6c 76 61 62 6c 65 52 75 6c 65 28 50 72 6f 62 6c 65 6d 20 24 70 72 6f 62 6c 65 6d 2c 20 52 75 6c lvableRule(Problem.$problem,.Rul
4bfc0 65 20 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 0a 7b 0a 24 77 68 79 20 3d 20 73 70 6c 5f 6f 62 e.$conflictRule).{.$why.=.spl_ob
4bfe0 6a 65 63 74 5f 68 61 73 68 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 3b 0a 0a 69 66 20 28 24 ject_hash($conflictRule);..if.($
4c000 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2d 3e 67 65 74 54 79 70 65 28 29 20 3d 3d 20 52 75 6c 65 53 conflictRule->getType().==.RuleS
4c020 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 29 20 7b 0a 24 6c 65 61 72 6e 65 64 57 68 79 20 et::TYPE_LEARNED).{.$learnedWhy.
4c040 3d 20 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 57 68 79 5b 24 77 68 79 5d 3b 0a 24 70 72 6f 62 =.$this->learnedWhy[$why];.$prob
4c060 6c 65 6d 52 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 5b 24 6c lemRules.=.$this->learnedPool[$l
4c080 65 61 72 6e 65 64 57 68 79 5d 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 72 6f 62 6c 65 6d 52 75 earnedWhy];..foreach.($problemRu
4c0a0 6c 65 73 20 61 73 20 24 70 72 6f 62 6c 65 6d 52 75 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 6e les.as.$problemRule).{.$this->an
4c0c0 61 6c 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 52 75 6c 65 28 24 70 72 6f 62 6c 65 6d 2c 20 24 70 alyzeUnsolvableRule($problem,.$p
4c0e0 72 6f 62 6c 65 6d 52 75 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 roblemRule);.}..return;.}..if.($
4c100 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2d 3e 67 65 74 54 79 70 65 28 29 20 3d 3d 20 52 75 6c 65 53 conflictRule->getType().==.RuleS
4c120 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a 7d 0a et::TYPE_PACKAGE).{...return;.}.
4c140 0a 24 70 72 6f 62 6c 65 6d 2d 3e 6e 65 78 74 53 65 63 74 69 6f 6e 28 29 3b 0a 24 70 72 6f 62 6c .$problem->nextSection();.$probl
4c160 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 3b 0a 7d 0a 0a 0a em->addRule($conflictRule);.}...
4c180 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 6e 61 6c 79 7a 65 55 6e 73 6f ....private.function.analyzeUnso
4c1a0 6c 76 61 62 6c 65 28 52 75 6c 65 20 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2c 20 24 64 69 73 61 lvable(Rule.$conflictRule,.$disa
4c1c0 62 6c 65 52 75 6c 65 73 29 0a 7b 0a 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 77 20 50 72 6f 62 6c bleRules).{.$problem.=.new.Probl
4c1e0 65 6d 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 29 3b 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 em($this->pool);.$problem->addRu
4c200 6c 65 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 6e 61 6c 79 le($conflictRule);..$this->analy
4c220 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 52 75 6c 65 28 24 70 72 6f 62 6c 65 6d 2c 20 24 63 6f 6e 66 zeUnsolvableRule($problem,.$conf
4c240 6c 69 63 74 52 75 6c 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 5b 5d 20 3d 20 lictRule);..$this->problems[].=.
4c260 24 70 72 6f 62 6c 65 6d 3b 0a 0a 24 73 65 65 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6c 69 74 $problem;..$seen.=.array();.$lit
4c280 65 72 61 6c 73 20 3d 20 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 3b erals.=.$conflictRule->literals;
4c2a0 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c ..foreach.($literals.as.$literal
4c2c0 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 ).{...if.($this->decisions->sati
4c2e0 73 66 79 28 24 6c 69 74 65 72 61 6c 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 73 65 sfy($literal)).{.continue;.}.$se
4c300 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 66 6f 72 en[abs($literal)].=.true;.}..for
4c320 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 61 73 20 24 64 65 63 69 73 each.($this->decisions.as.$decis
4c340 69 6f 6e 29 20 7b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 ion).{.$literal.=.$decision[Deci
4c360 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 0a 0a 20 69 66 20 sions::DECISION_LITERAL];....if.
4c380 28 21 69 73 73 65 74 28 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b (!isset($seen[abs($literal)])).{
4c3a0 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 77 68 79 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 .continue;.}..$why.=.$decision[D
4c3c0 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 0a 24 70 72 ecisions::DECISION_REASON];..$pr
4c3e0 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 77 68 79 29 3b 0a 24 74 68 69 73 2d 3e 61 6e 61 oblem->addRule($why);.$this->ana
4c400 6c 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 52 75 6c 65 28 24 70 72 6f 62 6c 65 6d 2c 20 24 77 68 lyzeUnsolvableRule($problem,.$wh
4c420 79 29 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 77 68 79 2d 3e 6c 69 74 65 72 61 6c 73 3b y);..$literals.=.$why->literals;
4c440 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c ..foreach.($literals.as.$literal
4c460 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 ).{...if.($this->decisions->sati
4c480 73 66 79 28 24 6c 69 74 65 72 61 6c 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 73 65 sfy($literal)).{.continue;.}.$se
4c4a0 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 en[abs($literal)].=.true;.}.}..i
4c4c0 66 20 28 24 64 69 73 61 62 6c 65 52 75 6c 65 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 f.($disableRules).{.foreach.($th
4c4e0 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 is->problems[count($this->proble
4c500 6d 73 29 20 2d 20 31 5d 20 61 73 20 24 72 65 61 73 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 64 69 ms).-.1].as.$reason).{.$this->di
4c520 73 61 62 6c 65 50 72 6f 62 6c 65 6d 28 24 72 65 61 73 6f 6e 5b 27 72 75 6c 65 27 5d 29 3b 0a 7d sableProblem($reason['rule']);.}
4c540 0a 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 53 6f 6c 76 65 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 ..$this->resetSolver();..return.
4c560 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 1;.}..return.0;.}.....private.fu
4c580 6e 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 50 72 6f 62 6c 65 6d 28 52 75 6c 65 20 24 77 68 79 29 nction.disableProblem(Rule.$why)
4c5a0 0a 7b 0a 24 6a 6f 62 20 3d 20 24 77 68 79 2d 3e 67 65 74 4a 6f 62 28 29 3b 0a 0a 69 66 20 28 21 .{.$job.=.$why->getJob();..if.(!
4c5c0 24 6a 6f 62 29 20 7b 0a 24 77 68 79 2d 3e 64 69 73 61 62 6c 65 28 29 3b 0a 0a 72 65 74 75 72 6e $job).{.$why->disable();..return
4c5e0 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 61 73 20 ;.}....foreach.($this->rules.as.
4c600 24 72 75 6c 65 29 20 7b 0a 0a 69 66 20 28 24 6a 6f 62 20 3d 3d 3d 20 24 72 75 6c 65 2d 3e 67 65 $rule).{..if.($job.===.$rule->ge
4c620 74 4a 6f 62 28 29 29 20 7b 0a 24 72 75 6c 65 2d 3e 64 69 73 61 62 6c 65 28 29 3b 0a 7d 0a 7d 0a tJob()).{.$rule->disable();.}.}.
4c640 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 53 6f 6c 76 65 72 28 }..private.function.resetSolver(
4c660 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 72 65 73 65 74 28 29 3b 0a 0a ).{.$this->decisions->reset();..
4c680 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 20 3d 20 30 3b 0a 24 74 68 69 73 $this->propagateIndex.=.0;.$this
4c6a0 2d 3e 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 65 6e ->branches.=.array();..$this->en
4c6c0 61 62 6c 65 44 69 73 61 62 6c 65 4c 65 61 72 6e 65 64 52 75 6c 65 73 28 29 3b 0a 24 74 68 69 73 ableDisableLearnedRules();.$this
4c6e0 2d 3e 6d 61 6b 65 41 73 73 65 72 74 69 6f 6e 52 75 6c 65 44 65 63 69 73 69 6f 6e 73 28 29 3b 0a ->makeAssertionRuleDecisions();.
4c700 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 6e 61 62 6c }.........private.function.enabl
4c720 65 44 69 73 61 62 6c 65 4c 65 61 72 6e 65 64 52 75 6c 65 73 28 29 0a 7b 0a 66 6f 72 65 61 63 68 eDisableLearnedRules().{.foreach
4c740 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 46 6f 72 28 52 .($this->rules->getIteratorFor(R
4c760 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 29 20 61 73 20 24 72 75 6c 65 29 20 uleSet::TYPE_LEARNED).as.$rule).
4c780 7b 0a 24 77 68 79 20 3d 20 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 57 68 79 5b 73 70 6c 5f 6f {.$why.=.$this->learnedWhy[spl_o
4c7a0 62 6a 65 63 74 5f 68 61 73 68 28 24 72 75 6c 65 29 5d 3b 0a 24 70 72 6f 62 6c 65 6d 52 75 6c 65 bject_hash($rule)];.$problemRule
4c7c0 73 20 3d 20 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 5b 24 77 68 79 5d 3b 0a 0a 24 s.=.$this->learnedPool[$why];..$
4c7e0 66 6f 75 6e 64 44 69 73 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 foundDisabled.=.false;.foreach.(
4c800 24 70 72 6f 62 6c 65 6d 52 75 6c 65 73 20 61 73 20 24 70 72 6f 62 6c 65 6d 52 75 6c 65 29 20 7b $problemRules.as.$problemRule).{
4c820 0a 69 66 20 28 24 70 72 6f 62 6c 65 6d 52 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 29 .if.($problemRule->isDisabled())
4c840 20 7b 0a 24 66 6f 75 6e 64 44 69 73 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b .{.$foundDisabled.=.true;.break;
4c860 0a 7d 0a 7d 0a 0a 69 66 20 28 24 66 6f 75 6e 64 44 69 73 61 62 6c 65 64 20 26 26 20 24 72 75 6c .}.}..if.($foundDisabled.&&.$rul
4c880 65 2d 3e 69 73 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 72 75 6c 65 2d 3e 64 69 73 61 62 6c 65 e->isEnabled()).{.$rule->disable
4c8a0 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 66 6f 75 6e 64 44 69 73 61 62 6c 65 64 20 26 26 ();.}.elseif.(!$foundDisabled.&&
4c8c0 20 24 72 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 29 20 7b 0a 24 72 75 6c 65 2d 3e 65 .$rule->isDisabled()).{.$rule->e
4c8e0 6e 61 62 6c 65 28 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 nable();.}.}.}.....private.funct
4c900 69 6f 6e 20 72 75 6e 53 61 74 28 24 64 69 73 61 62 6c 65 52 75 6c 65 73 20 3d 20 74 72 75 65 29 ion.runSat($disableRules.=.true)
4c920 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 20 3d 20 30 3b 0a 0a 0a .{.$this->propagateIndex.=.0;...
4c940 0a 0a 0a 0a 0a 0a 0a 0a 0a 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 3d 20 61 72 72 61 79 28 .........$decisionQueue.=.array(
4c960 29 3b 0a 24 64 65 63 69 73 69 6f 6e 53 75 70 70 6c 65 6d 65 6e 74 51 75 65 75 65 20 3d 20 61 72 );.$decisionSupplementQueue.=.ar
4c980 72 61 79 28 29 3b 0a 0a 0a 0a 24 64 69 73 61 62 6c 65 52 75 6c 65 73 20 3d 20 61 72 72 61 79 28 ray();....$disableRules.=.array(
4c9a0 29 3b 0a 0a 24 6c 65 76 65 6c 20 3d 20 31 3b 0a 24 73 79 73 74 65 6d 4c 65 76 65 6c 20 3d 20 24 );..$level.=.1;.$systemLevel.=.$
4c9c0 6c 65 76 65 6c 20 2b 20 31 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 50 6f 73 20 3d 20 30 3b 0a 0a 77 level.+.1;.$installedPos.=.0;..w
4c9e0 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 69 66 20 28 31 20 3d 3d 3d 20 24 6c 65 76 65 6c 29 20 hile.(true).{.if.(1.===.$level).
4ca00 7b 0a 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 {.$conflictRule.=.$this->propaga
4ca20 74 65 28 24 6c 65 76 65 6c 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 6f 6e 66 6c 69 te($level);.if.(null.!==.$confli
4ca40 63 74 52 75 6c 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 6e 61 6c 79 7a 65 55 6e 73 6f ctRule).{.if.($this->analyzeUnso
4ca60 6c 76 61 62 6c 65 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2c 20 24 64 69 73 61 62 6c 65 52 75 lvable($conflictRule,.$disableRu
4ca80 6c 65 73 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d les)).{.continue;.}..return;.}.}
4caa0 0a 0a 0a 20 69 66 20 28 24 6c 65 76 65 6c 20 3c 20 24 73 79 73 74 65 6d 4c 65 76 65 6c 29 20 7b ....if.($level.<.$systemLevel).{
4cac0 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 67 65 74 49 74 .$iterator.=.$this->rules->getIt
4cae0 65 72 61 74 6f 72 46 6f 72 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 29 3b 0a 66 6f eratorFor(RuleSet::TYPE_JOB);.fo
4cb00 72 65 61 63 68 20 28 24 69 74 65 72 61 74 6f 72 20 61 73 20 24 72 75 6c 65 29 20 7b 0a 69 66 20 reach.($iterator.as.$rule).{.if.
4cb20 28 24 72 75 6c 65 2d 3e 69 73 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 64 65 63 69 73 69 6f 6e ($rule->isEnabled()).{.$decision
4cb40 51 75 65 75 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6e 6f 6e 65 53 61 74 69 73 66 69 65 64 20 Queue.=.array();.$noneSatisfied.
4cb60 3d 20 74 72 75 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c =.true;..foreach.($rule->literal
4cb80 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 s.as.$literal).{.if.($this->deci
4cba0 73 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6c 69 74 65 72 61 6c 29 29 20 7b 0a 24 6e 6f 6e sions->satisfy($literal)).{.$non
4cbc0 65 53 61 74 69 73 66 69 65 64 20 3d 20 66 61 6c 73 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 69 66 20 eSatisfied.=.false;.break;.}.if.
4cbe0 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 26 26 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e ($literal.>.0.&&.$this->decision
4cc00 73 2d 3e 75 6e 64 65 63 69 64 65 64 28 24 6c 69 74 65 72 61 6c 29 29 20 7b 0a 24 64 65 63 69 73 s->undecided($literal)).{.$decis
4cc20 69 6f 6e 51 75 65 75 65 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 ionQueue[].=.$literal;.}.}..if.(
4cc40 24 6e 6f 6e 65 53 61 74 69 73 66 69 65 64 20 26 26 20 63 6f 75 6e 74 28 24 64 65 63 69 73 69 6f $noneSatisfied.&&.count($decisio
4cc60 6e 51 75 65 75 65 29 29 20 7b 0a 0a 20 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e nQueue)).{.....if.(count($this->
4cc80 69 6e 73 74 61 6c 6c 65 64 29 20 21 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 75 70 64 61 74 installed).!=.count($this->updat
4cca0 65 4d 61 70 29 29 20 7b 0a 24 70 72 75 6e 65 64 51 75 65 75 65 20 3d 20 61 72 72 61 79 28 29 3b eMap)).{.$prunedQueue.=.array();
4ccc0 0a 66 6f 72 65 61 63 68 20 28 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 61 73 20 24 6c 69 74 .foreach.($decisionQueue.as.$lit
4cce0 65 72 61 6c 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c eral).{.if.(isset($this->install
4cd00 65 64 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b 0a 24 70 72 75 6e 65 64 edMap[abs($literal)])).{.$pruned
4cd20 51 75 65 75 65 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 Queue[].=.$literal;.if.(isset($t
4cd40 68 69 73 2d 3e 75 70 64 61 74 65 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 his->updateMap[abs($literal)])).
4cd60 7b 0a 24 70 72 75 6e 65 64 51 75 65 75 65 20 3d 20 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 3b {.$prunedQueue.=.$decisionQueue;
4cd80 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 3d 20 24 .break;.}.}.}.$decisionQueue.=.$
4cda0 70 72 75 6e 65 64 51 75 65 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6e 6f 6e 65 53 61 74 69 73 prunedQueue;.}.}..if.($noneSatis
4cdc0 66 69 65 64 20 26 26 20 63 6f 75 6e 74 28 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 29 20 7b fied.&&.count($decisionQueue)).{
4cde0 0a 24 6f 4c 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 3b 0a 24 6c 65 76 65 6c 20 3d 20 24 74 68 69 .$oLevel.=.$level;.$level.=.$thi
4ce00 73 2d 3e 73 65 6c 65 63 74 41 6e 64 49 6e 73 74 61 6c 6c 28 24 6c 65 76 65 6c 2c 20 24 64 65 63 s->selectAndInstall($level,.$dec
4ce20 69 73 69 6f 6e 51 75 65 75 65 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 24 72 75 6c 65 isionQueue,.$disableRules,.$rule
4ce40 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6c 65 76 65 6c 29 20 7b 0a 72 65 74 75 72 6e 3b 0a );..if.(0.===.$level).{.return;.
4ce60 7d 0a 69 66 20 28 24 6c 65 76 65 6c 20 3c 3d 20 24 6f 4c 65 76 65 6c 29 20 7b 0a 62 72 65 61 6b }.if.($level.<=.$oLevel).{.break
4ce80 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 24 73 79 73 74 65 6d 4c 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c ;.}.}.}.}..$systemLevel.=.$level
4cea0 20 2b 20 31 3b 0a 0a 0a 20 24 69 74 65 72 61 74 6f 72 2d 3e 6e 65 78 74 28 29 3b 0a 69 66 20 28 .+.1;....$iterator->next();.if.(
4cec0 24 69 74 65 72 61 74 6f 72 2d 3e 76 61 6c 69 64 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a $iterator->valid()).{.continue;.
4cee0 7d 0a 7d 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3c 20 24 73 79 73 74 65 6d 4c 65 76 65 6c 29 20 }.}..if.($level.<.$systemLevel).
4cf00 7b 0a 24 73 79 73 74 65 6d 4c 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 3b 0a 7d 0a 0a 66 6f 72 20 {.$systemLevel.=.$level;.}..for.
4cf20 28 24 69 20 3d 20 30 2c 20 24 6e 20 3d 20 30 3b 20 24 6e 20 3c 20 63 6f 75 6e 74 28 24 74 68 69 ($i.=.0,.$n.=.0;.$n.<.count($thi
4cf40 73 2d 3e 72 75 6c 65 73 29 3b 20 24 69 2b 2b 2c 20 24 6e 2b 2b 29 20 7b 0a 69 66 20 28 24 69 20 s->rules);.$i++,.$n++).{.if.($i.
4cf60 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 29 29 20 7b 0a 24 69 20 3d 20 30 ==.count($this->rules)).{.$i.=.0
4cf80 3b 0a 7d 0a 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 72 75 6c 65 42 ;.}..$rule.=.$this->rules->ruleB
4cfa0 79 49 64 5b 24 69 5d 3b 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 72 75 6c 65 2d 3e 6c 69 74 65 yId[$i];.$literals.=.$rule->lite
4cfc0 72 61 6c 73 3b 0a 0a 69 66 20 28 24 72 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 29 20 rals;..if.($rule->isDisabled()).
4cfe0 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 3d 20 {.continue;.}..$decisionQueue.=.
4d000 61 72 72 61 79 28 29 3b 0a 0a 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 24 array();..............foreach.($
4d020 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 6c 69 74 literals.as.$literal).{.if.($lit
4d040 65 72 61 6c 20 3c 3d 20 30 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f eral.<=.0).{.if.(!$this->decisio
4d060 6e 73 2d 3e 64 65 63 69 64 65 64 49 6e 73 74 61 6c 6c 28 61 62 73 28 24 6c 69 74 65 72 61 6c 29 ns->decidedInstall(abs($literal)
4d080 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 20 32 3b 20 0a 20 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 )).{.continue.2;...}.}.else.{.if
4d0a0 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 64 49 6e 73 74 61 .($this->decisions->decidedInsta
4d0c0 6c 6c 28 61 62 73 28 24 6c 69 74 65 72 61 6c 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 20 32 3b ll(abs($literal))).{.continue.2;
4d0e0 20 0a 20 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 75 6e 64 65 63 ...}.if.($this->decisions->undec
4d100 69 64 65 64 28 61 62 73 28 24 6c 69 74 65 72 61 6c 29 29 29 20 7b 0a 24 64 65 63 69 73 69 6f 6e ided(abs($literal))).{.$decision
4d120 51 75 65 75 65 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 Queue[].=.$literal;.}.}.}....if.
4d140 28 63 6f 75 6e 74 28 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 20 3c 20 32 29 20 7b 0a 63 6f (count($decisionQueue).<.2).{.co
4d160 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6c 65 76 65 6c 20 3d 20 24 74 68 69 73 2d 3e 73 65 6c 65 63 ntinue;.}..$level.=.$this->selec
4d180 74 41 6e 64 49 6e 73 74 61 6c 6c 28 24 6c 65 76 65 6c 2c 20 24 64 65 63 69 73 69 6f 6e 51 75 65 tAndInstall($level,.$decisionQue
4d1a0 75 65 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 24 72 75 6c 65 29 3b 0a 0a 69 66 20 28 ue,.$disableRules,.$rule);..if.(
4d1c0 30 20 3d 3d 3d 20 24 6c 65 76 65 6c 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 24 6e 20 0.===.$level).{.return;.}....$n.
4d1e0 3d 20 2d 31 3b 0a 7d 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3c 20 24 73 79 73 74 65 6d 4c 65 76 =.-1;.}..if.($level.<.$systemLev
4d200 65 6c 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 el).{.continue;.}....if.(count($
4d220 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 29 20 7b 0a 24 6c 61 73 74 4c 69 74 65 72 61 6c 20 this->branches)).{.$lastLiteral.
4d240 3d 20 6e 75 6c 6c 3b 0a 24 6c 61 73 74 4c 65 76 65 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 61 73 74 =.null;.$lastLevel.=.null;.$last
4d260 42 72 61 6e 63 68 49 6e 64 65 78 20 3d 20 30 3b 0a 24 6c 61 73 74 42 72 61 6e 63 68 4f 66 66 73 BranchIndex.=.0;.$lastBranchOffs
4d280 65 74 20 3d 20 30 3b 0a 0a 66 6f 72 20 28 24 69 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e et.=.0;..for.($i.=.count($this->
4d2a0 62 72 61 6e 63 68 65 73 29 20 2d 20 31 3b 20 24 69 20 3e 3d 20 30 3b 20 24 69 2d 2d 29 20 7b 0a branches).-.1;.$i.>=.0;.$i--).{.
4d2c0 6c 69 73 74 28 24 6c 69 74 65 72 61 6c 73 2c 20 24 6c 29 20 3d 20 24 74 68 69 73 2d 3e 62 72 61 list($literals,.$l).=.$this->bra
4d2e0 6e 63 68 65 73 5b 24 69 5d 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 nches[$i];..foreach.($literals.a
4d300 73 20 24 6f 66 66 73 65 74 20 3d 3e 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 6c 69 s.$offset.=>.$literal).{.if.($li
4d320 74 65 72 61 6c 20 26 26 20 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 26 26 20 24 74 68 69 73 2d 3e teral.&&.$literal.>.0.&&.$this->
4d340 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 decisions->decisionLevel($litera
4d360 6c 29 20 3e 20 24 6c 20 2b 20 31 29 20 7b 0a 24 6c 61 73 74 4c 69 74 65 72 61 6c 20 3d 20 24 6c l).>.$l.+.1).{.$lastLiteral.=.$l
4d380 69 74 65 72 61 6c 3b 0a 24 6c 61 73 74 42 72 61 6e 63 68 49 6e 64 65 78 20 3d 20 24 69 3b 0a 24 iteral;.$lastBranchIndex.=.$i;.$
4d3a0 6c 61 73 74 42 72 61 6e 63 68 4f 66 66 73 65 74 20 3d 20 24 6f 66 66 73 65 74 3b 0a 24 6c 61 73 lastBranchOffset.=.$offset;.$las
4d3c0 74 4c 65 76 65 6c 20 3d 20 24 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6c 61 73 74 4c 69 74 tLevel.=.$l;.}.}.}..if.($lastLit
4d3e0 65 72 61 6c 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 6c eral).{.unset($this->branches[$l
4d400 61 73 74 42 72 61 6e 63 68 49 6e 64 65 78 5d 5b 73 65 6c 66 3a 3a 42 52 41 4e 43 48 5f 4c 49 54 astBranchIndex][self::BRANCH_LIT
4d420 45 52 41 4c 53 5d 5b 24 6c 61 73 74 42 72 61 6e 63 68 4f 66 66 73 65 74 5d 29 3b 0a 0a 24 6c 65 ERALS][$lastBranchOffset]);..$le
4d440 76 65 6c 20 3d 20 24 6c 61 73 74 4c 65 76 65 6c 3b 0a 24 74 68 69 73 2d 3e 72 65 76 65 72 74 28 vel.=.$lastLevel;.$this->revert(
4d460 24 6c 65 76 65 6c 29 3b 0a 0a 24 77 68 79 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e $level);..$why.=.$this->decision
4d480 73 2d 3e 6c 61 73 74 52 65 61 73 6f 6e 28 29 3b 0a 0a 24 6c 65 76 65 6c 20 3d 20 24 74 68 69 73 s->lastReason();..$level.=.$this
4d4a0 2d 3e 73 65 74 50 72 6f 70 61 67 61 74 65 4c 65 61 72 6e 28 24 6c 65 76 65 6c 2c 20 24 6c 61 73 ->setPropagateLearn($level,.$las
4d4c0 74 4c 69 74 65 72 61 6c 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 24 77 68 79 29 3b 0a tLiteral,.$disableRules,.$why);.
4d4e0 0a 69 66 20 28 24 6c 65 76 65 6c 20 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 63 .if.($level.==.0).{.return;.}..c
4d500 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 ontinue;.}.}..break;.}.}.}.<?php
4d520 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 ............namespace.Composer\D
4d540 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 6f 6c ependencyResolver;.....class.Sol
4d560 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 verBugException.extends.\Runtime
4d580 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f Exception.{.public.function.__co
4d5a0 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f nstruct($message).{.parent::__co
4d5c0 6e 73 74 72 75 63 74 28 0a 24 6d 65 73 73 61 67 65 2e 22 5c 6e 54 68 69 73 20 65 78 63 65 70 74 nstruct(.$message."\nThis.except
4d5e0 69 6f 6e 20 77 61 73 20 6d 6f 73 74 20 6c 69 6b 65 6c 79 20 63 61 75 73 65 64 20 62 79 20 61 20 ion.was.most.likely.caused.by.a.
4d600 62 75 67 20 69 6e 20 43 6f 6d 70 6f 73 65 72 2e 5c 6e 22 2e 0a 22 50 6c 65 61 73 65 20 72 65 70 bug.in.Composer.\n".."Please.rep
4d620 6f 72 74 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 79 6f 75 20 72 61 6e 2c 20 74 68 65 20 65 78 61 ort.the.command.you.ran,.the.exa
4d640 63 74 20 65 72 72 6f 72 20 79 6f 75 20 72 65 63 65 69 76 65 64 2c 20 61 6e 64 20 79 6f 75 72 20 ct.error.you.received,.and.your.
4d660 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 6e 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e composer.json.on.https://github.
4d680 63 6f 6d 2f 63 6f 6d 70 6f 73 65 72 2f 63 6f 6d 70 6f 73 65 72 2f 69 73 73 75 65 73 20 2d 20 74 com/composer/composer/issues.-.t
4d6a0 68 61 6e 6b 20 79 6f 75 21 5c 6e 22 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a hank.you!\n");.}.}.<?php........
4d6c0 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 ....namespace.Composer\Dependenc
4d6e0 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 6f 6c 76 65 72 50 72 6f 62 6c yResolver;.....class.SolverProbl
4d700 65 6d 73 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 emsException.extends.\RuntimeExc
4d720 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 62 6c 65 6d 73 3b 0a 70 72 eption.{.protected.$problems;.pr
4d740 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 0a 70 75 62 6c 69 63 20 66 otected.$installedMap;..public.f
4d760 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 70 72 6f 62 6c unction.__construct(array.$probl
4d780 65 6d 73 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 0a 7b 0a 24 74 68 69 ems,.array.$installedMap).{.$thi
4d7a0 73 2d 3e 70 72 6f 62 6c 65 6d 73 20 3d 20 24 70 72 6f 62 6c 65 6d 73 3b 0a 24 74 68 69 73 2d 3e s->problems.=.$problems;.$this->
4d7c0 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 0a 70 installedMap.=.$installedMap;..p
4d7e0 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 68 69 73 2d 3e 63 72 65 61 74 65 arent::__construct($this->create
4d800 4d 65 73 73 61 67 65 28 29 2c 20 32 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 Message(),.2);.}..protected.func
4d820 74 69 6f 6e 20 63 72 65 61 74 65 4d 65 73 73 61 67 65 28 29 0a 7b 0a 24 74 65 78 74 20 3d 20 22 tion.createMessage().{.$text.=."
4d840 5c 6e 22 3b 0a 24 68 61 73 45 78 74 65 6e 73 69 6f 6e 50 72 6f 62 6c 65 6d 73 20 3d 20 66 61 6c \n";.$hasExtensionProblems.=.fal
4d860 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 20 61 73 20 se;.foreach.($this->problems.as.
4d880 24 69 20 3d 3e 20 24 70 72 6f 62 6c 65 6d 29 20 7b 0a 24 74 65 78 74 20 2e 3d 20 22 20 20 50 72 $i.=>.$problem).{.$text..=."..Pr
4d8a0 6f 62 6c 65 6d 20 22 2e 28 24 69 20 2b 20 31 29 2e 24 70 72 6f 62 6c 65 6d 2d 3e 67 65 74 50 72 oblem.".($i.+.1).$problem->getPr
4d8c0 65 74 74 79 53 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 2e ettyString($this->installedMap).
4d8e0 22 5c 6e 22 3b 0a 0a 69 66 20 28 21 24 68 61 73 45 78 74 65 6e 73 69 6f 6e 50 72 6f 62 6c 65 6d "\n";..if.(!$hasExtensionProblem
4d900 73 20 26 26 20 24 74 68 69 73 2d 3e 68 61 73 45 78 74 65 6e 73 69 6f 6e 50 72 6f 62 6c 65 6d 73 s.&&.$this->hasExtensionProblems
4d920 28 24 70 72 6f 62 6c 65 6d 2d 3e 67 65 74 52 65 61 73 6f 6e 73 28 29 29 29 20 7b 0a 24 68 61 73 ($problem->getReasons())).{.$has
4d940 45 78 74 65 6e 73 69 6f 6e 50 72 6f 62 6c 65 6d 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 ExtensionProblems.=.true;.}.}..i
4d960 66 20 28 73 74 72 70 6f 73 28 24 74 65 78 74 2c 20 27 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 f.(strpos($text,.'could.not.be.f
4d980 6f 75 6e 64 27 29 20 7c 7c 20 73 74 72 70 6f 73 28 24 74 65 78 74 2c 20 27 6e 6f 20 6d 61 74 63 ound').||.strpos($text,.'no.matc
4d9a0 68 69 6e 67 20 70 61 63 6b 61 67 65 20 66 6f 75 6e 64 27 29 29 20 7b 0a 24 74 65 78 74 20 2e 3d hing.package.found')).{.$text..=
4d9c0 20 22 5c 6e 50 6f 74 65 6e 74 69 61 6c 20 63 61 75 73 65 73 3a 5c 6e 20 2d 20 41 20 74 79 70 6f ."\nPotential.causes:\n.-.A.typo
4d9e0 20 69 6e 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 5c 6e 20 2d 20 54 68 65 20 70 61 63 .in.the.package.name\n.-.The.pac
4da00 6b 61 67 65 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 61 20 73 74 61 62 6c kage.is.not.available.in.a.stabl
4da20 65 2d 65 6e 6f 75 67 68 20 76 65 72 73 69 6f 6e 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 79 6f e-enough.version.according.to.yo
4da40 75 72 20 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 20 73 65 74 74 69 6e 67 5c 6e 20 20 ur.minimum-stability.setting\n..
4da60 20 73 65 65 20 3c 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f .see.<https://getcomposer.org/do
4da80 63 2f 30 34 2d 73 63 68 65 6d 61 2e 6d 64 23 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 c/04-schema.md#minimum-stability
4daa0 3e 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 5c 6e 5c 6e 52 65 61 64 20 3c 68 74 74 >.for.more.details.\n\nRead.<htt
4dac0 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 61 72 74 69 63 6c 65 ps://getcomposer.org/doc/article
4dae0 73 2f 74 72 6f 75 62 6c 65 73 68 6f 6f 74 69 6e 67 2e 6d 64 3e 20 66 6f 72 20 66 75 72 74 68 65 s/troubleshooting.md>.for.furthe
4db00 72 20 63 6f 6d 6d 6f 6e 20 70 72 6f 62 6c 65 6d 73 2e 22 3b 0a 7d 0a 0a 69 66 20 28 24 68 61 73 r.common.problems.";.}..if.($has
4db20 45 78 74 65 6e 73 69 6f 6e 50 72 6f 62 6c 65 6d 73 29 20 7b 0a 24 74 65 78 74 20 2e 3d 20 24 74 ExtensionProblems).{.$text..=.$t
4db40 68 69 73 2d 3e 63 72 65 61 74 65 45 78 74 65 6e 73 69 6f 6e 48 69 6e 74 28 29 3b 0a 7d 0a 0a 72 his->createExtensionHint();.}..r
4db60 65 74 75 72 6e 20 24 74 65 78 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 eturn.$text;.}..public.function.
4db80 67 65 74 50 72 6f 62 6c 65 6d 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 getProblems().{.return.$this->pr
4dba0 6f 62 6c 65 6d 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 oblems;.}..private.function.crea
4dbc0 74 65 45 78 74 65 6e 73 69 6f 6e 48 69 6e 74 28 29 0a 7b 0a 24 70 61 74 68 73 20 3d 20 61 72 72 teExtensionHint().{.$paths.=.arr
4dbe0 61 79 28 29 3b 0a 0a 69 66 20 28 28 24 69 6e 69 50 61 74 68 20 3d 20 70 68 70 5f 69 6e 69 5f 6c ay();..if.(($iniPath.=.php_ini_l
4dc00 6f 61 64 65 64 5f 66 69 6c 65 28 29 29 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 70 61 74 68 oaded_file()).!==.false).{.$path
4dc20 73 5b 5d 20 3d 20 24 69 6e 69 50 61 74 68 3b 0a 7d 0a 0a 69 66 20 28 21 64 65 66 69 6e 65 64 28 s[].=.$iniPath;.}..if.(!defined(
4dc40 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 20 26 26 20 24 61 64 64 69 74 69 6f 6e 61 6c 49 6e 'HHVM_VERSION').&&.$additionalIn
4dc60 69 50 61 74 68 73 20 3d 20 70 68 70 5f 69 6e 69 5f 73 63 61 6e 6e 65 64 5f 66 69 6c 65 73 28 29 iPaths.=.php_ini_scanned_files()
4dc80 29 20 7b 0a 24 70 61 74 68 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 70 61 74 68 73 2c ).{.$paths.=.array_merge($paths,
4dca0 20 61 72 72 61 79 5f 6d 61 70 28 22 74 72 69 6d 22 2c 20 65 78 70 6c 6f 64 65 28 22 2c 22 2c 20 .array_map("trim",.explode(",",.
4dcc0 24 61 64 64 69 74 69 6f 6e 61 6c 49 6e 69 50 61 74 68 73 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 63 $additionalIniPaths)));.}..if.(c
4dce0 6f 75 6e 74 28 24 70 61 74 68 73 29 20 3d 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b ount($paths).===.0).{.return.'';
4dd00 0a 7d 0a 0a 24 74 65 78 74 20 3d 20 22 5c 6e 20 20 54 6f 20 65 6e 61 62 6c 65 20 65 78 74 65 6e .}..$text.=."\n..To.enable.exten
4dd20 73 69 6f 6e 73 2c 20 76 65 72 69 66 79 20 74 68 61 74 20 74 68 65 79 20 61 72 65 20 65 6e 61 62 sions,.verify.that.they.are.enab
4dd40 6c 65 64 20 69 6e 20 74 68 6f 73 65 20 2e 69 6e 69 20 66 69 6c 65 73 3a 5c 6e 20 20 20 20 2d 20 led.in.those..ini.files:\n....-.
4dd60 22 3b 0a 24 74 65 78 74 20 2e 3d 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 20 20 20 20 2d 20 22 2c 20 ";.$text..=.implode("\n....-.",.
4dd80 24 70 61 74 68 73 29 3b 0a 24 74 65 78 74 20 2e 3d 20 22 5c 6e 20 20 59 6f 75 20 63 61 6e 20 61 $paths);.$text..=."\n..You.can.a
4dda0 6c 73 6f 20 72 75 6e 20 60 70 68 70 20 2d 2d 69 6e 69 60 20 69 6e 73 69 64 65 20 74 65 72 6d 69 lso.run.`php.--ini`.inside.termi
4ddc0 6e 61 6c 20 74 6f 20 73 65 65 20 77 68 69 63 68 20 66 69 6c 65 73 20 61 72 65 20 75 73 65 64 20 nal.to.see.which.files.are.used.
4dde0 62 79 20 50 48 50 20 69 6e 20 43 4c 49 20 6d 6f 64 65 2e 22 3b 0a 0a 72 65 74 75 72 6e 20 24 74 by.PHP.in.CLI.mode.";..return.$t
4de00 65 78 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 45 78 74 65 ext;.}..private.function.hasExte
4de20 6e 73 69 6f 6e 50 72 6f 62 6c 65 6d 73 28 61 72 72 61 79 20 24 72 65 61 73 6f 6e 53 65 74 73 29 nsionProblems(array.$reasonSets)
4de40 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 61 73 6f 6e 53 65 74 73 20 61 73 20 24 72 65 61 73 .{.foreach.($reasonSets.as.$reas
4de60 6f 6e 53 65 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 61 73 6f 6e 53 65 74 20 61 73 20 onSet).{.foreach.($reasonSet.as.
4de80 24 72 65 61 73 6f 6e 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 61 73 6f 6e 5b 22 72 75 $reason).{.if.(isset($reason["ru
4dea0 6c 65 22 5d 29 20 26 26 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 72 65 61 73 6f 6e 5b 22 72 le"]).&&.0.===.strpos($reason["r
4dec0 75 6c 65 22 5d 2d 3e 67 65 74 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 28 29 2c 20 27 65 78 ule"]->getRequiredPackage(),.'ex
4dee0 74 2d 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 t-')).{.return.true;.}.}.}..retu
4df00 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e rn.false;.}.}.<?php............n
4df20 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f amespace.Composer\DependencyReso
4df40 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 lver;..use.Composer\Package\Alia
4df60 73 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 72 61 6e 73 61 63 74 69 6f 6e 0a sPackage;.....class.Transaction.
4df80 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6c 69 63 79 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 {.protected.$policy;.protected.$
4dfa0 70 6f 6f 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 70 pool;.protected.$installedMap;.p
4dfc0 72 6f 74 65 63 74 65 64 20 24 64 65 63 69 73 69 6f 6e 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 rotected.$decisions;.protected.$
4dfe0 74 72 61 6e 73 61 63 74 69 6f 6e 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f transaction;..public.function.__
4e000 63 6f 6e 73 74 72 75 63 74 28 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 construct($policy,.$pool,.$insta
4e020 6c 6c 65 64 4d 61 70 2c 20 24 64 65 63 69 73 69 6f 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f lledMap,.$decisions).{.$this->po
4e040 6c 69 63 79 20 3d 20 24 70 6f 6c 69 63 79 3b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 70 licy.=.$policy;.$this->pool.=.$p
4e060 6f 6f 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 24 69 6e 73 74 ool;.$this->installedMap.=.$inst
4e080 61 6c 6c 65 64 4d 61 70 3b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 3d 20 24 64 65 alledMap;.$this->decisions.=.$de
4e0a0 63 69 73 69 6f 6e 73 3b 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 20 3d 20 61 72 cisions;.$this->transaction.=.ar
4e0c0 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 65 ray();.}..public.function.getOpe
4e0e0 72 61 74 69 6f 6e 73 28 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d rations().{.$installMeansUpdateM
4e100 61 70 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 55 70 64 61 74 65 73 28 29 3b 0a 0a 24 75 70 64 ap.=.$this->findUpdates();..$upd
4e120 61 74 65 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 4d 61 70 20 3d 20 ateMap.=.array();.$installMap.=.
4e140 61 72 72 61 79 28 29 3b 0a 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 20 3d 20 61 72 72 61 79 28 29 array();.$uninstallMap.=.array()
4e160 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 61 73 20 ;..foreach.($this->decisions.as.
4e180 24 69 20 3d 3e 20 24 64 65 63 69 73 69 6f 6e 29 20 7b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 64 $i.=>.$decision).{.$literal.=.$d
4e1a0 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 ecision[Decisions::DECISION_LITE
4e1c0 52 41 4c 5d 3b 0a 24 72 65 61 73 6f 6e 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 RAL];.$reason.=.$decision[Decisi
4e1e0 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 0a 24 70 61 63 6b 61 67 65 ons::DECISION_REASON];..$package
4e200 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 .=.$this->pool->literalToPackage
4e220 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 0a 20 69 66 20 28 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 ($literal);....if.(($literal.>.0
4e240 29 20 3d 3d 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b ).==.(isset($this->installedMap[
4e260 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a $package->id]))).{.continue;.}..
4e280 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 69 if.($literal.>.0).{.if.(isset($i
4e2a0 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 nstallMeansUpdateMap[abs($litera
4e2c0 6c 29 5d 29 20 26 26 20 21 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 l)]).&&.!$package.instanceof.Ali
4e2e0 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 73 6f 75 72 63 65 20 3d 20 24 69 6e 73 74 61 6c 6c 4d asPackage).{.$source.=.$installM
4e300 65 61 6e 73 55 70 64 61 74 65 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 3b 0a 0a 24 eansUpdateMap[abs($literal)];..$
4e320 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 61 72 72 61 79 28 updateMap[$package->id].=.array(
4e340 0a 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2c 0a 27 73 6f 75 72 63 65 27 .'package'.=>.$package,.'source'
4e360 20 3d 3e 20 24 73 6f 75 72 63 65 2c 0a 27 72 65 61 73 6f 6e 27 20 3d 3e 20 24 72 65 61 73 6f 6e .=>.$source,.'reason'.=>.$reason
4e380 2c 0a 29 3b 0a 0a 0a 20 75 6e 73 65 74 28 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 ,.);....unset($installMeansUpdat
4e3a0 65 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 3b 0a 24 69 67 6e 6f 72 65 52 65 6d eMap[abs($literal)]);.$ignoreRem
4e3c0 6f 76 65 5b 24 73 6f 75 72 63 65 2d 3e 69 64 5d 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 20 ove[$source->id].=.true;.}.else.
4e3e0 7b 0a 24 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 61 72 {.$installMap[$package->id].=.ar
4e400 72 61 79 28 0a 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2c 0a 27 72 65 61 ray(.'package'.=>.$package,.'rea
4e420 73 6f 6e 27 20 3d 3e 20 24 72 65 61 73 6f 6e 2c 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 son'.=>.$reason,.);.}.}.}..forea
4e440 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 61 73 20 24 69 20 3d 3e 20 24 64 ch.($this->decisions.as.$i.=>.$d
4e460 65 63 69 73 69 6f 6e 29 20 7b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b ecision).{.$literal.=.$decision[
4e480 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 24 72 Decisions::DECISION_LITERAL];.$r
4e4a0 65 61 73 6f 6e 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 eason.=.$decision[Decisions::DEC
4e4c0 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d ISION_REASON];.$package.=.$this-
4e4e0 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c >pool->literalToPackage($literal
4e500 29 3b 0a 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3c 3d 20 30 20 26 26 0a 69 73 73 65 74 28 24 );..if.($literal.<=.0.&&.isset($
4e520 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d this->installedMap[$package->id]
4e540 29 20 26 26 0a 21 69 73 73 65 74 28 24 69 67 6e 6f 72 65 52 65 6d 6f 76 65 5b 24 70 61 63 6b 61 ).&&.!isset($ignoreRemove[$packa
4e560 67 65 2d 3e 69 64 5d 29 29 20 7b 0a 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 ge->id])).{.$uninstallMap[$packa
4e580 67 65 2d 3e 69 64 5d 20 3d 20 61 72 72 61 79 28 0a 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 24 70 ge->id].=.array(.'package'.=>.$p
4e5a0 61 63 6b 61 67 65 2c 0a 27 72 65 61 73 6f 6e 27 20 3d 3e 20 24 72 65 61 73 6f 6e 2c 0a 29 3b 0a ackage,.'reason'.=>.$reason,.);.
4e5c0 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 46 72 6f 6d 4d 61 70 73 28 }.}..$this->transactionFromMaps(
4e5e0 24 69 6e 73 74 61 6c 6c 4d 61 70 2c 20 24 75 70 64 61 74 65 4d 61 70 2c 20 24 75 6e 69 6e 73 74 $installMap,.$updateMap,.$uninst
4e600 61 6c 6c 4d 61 70 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 allMap);..return.$this->transact
4e620 69 6f 6e 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 72 61 6e 73 ion;.}..protected.function.trans
4e640 61 63 74 69 6f 6e 46 72 6f 6d 4d 61 70 73 28 24 69 6e 73 74 61 6c 6c 4d 61 70 2c 20 24 75 70 64 actionFromMaps($installMap,.$upd
4e660 61 74 65 4d 61 70 2c 20 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 29 0a 7b 0a 24 71 75 65 75 65 20 ateMap,.$uninstallMap).{.$queue.
4e680 3d 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 6f 70 65 72 61 74 69 6f 6e =.array_map(function.($operation
4e6a0 29 20 7b 0a 72 65 74 75 72 6e 20 24 6f 70 65 72 61 74 69 6f 6e 5b 27 70 61 63 6b 61 67 65 27 5d ).{.return.$operation['package']
4e6c0 3b 0a 7d 2c 0a 24 74 68 69 73 2d 3e 66 69 6e 64 52 6f 6f 74 50 61 63 6b 61 67 65 73 28 24 69 6e ;.},.$this->findRootPackages($in
4e6e0 73 74 61 6c 6c 4d 61 70 2c 20 24 75 70 64 61 74 65 4d 61 70 29 0a 29 3b 0a 0a 24 76 69 73 69 74 stallMap,.$updateMap).);..$visit
4e700 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 77 68 69 6c 65 20 28 21 65 6d 70 74 79 28 24 71 75 ed.=.array();..while.(!empty($qu
4e720 65 75 65 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 61 72 72 61 79 5f 70 6f 70 28 24 71 75 eue)).{.$package.=.array_pop($qu
4e740 65 75 65 29 3b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 69 64 3b eue);.$packageId.=.$package->id;
4e760 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 76 69 73 69 74 65 64 5b 24 70 61 63 6b 61 67 65 49 64 ..if.(!isset($visited[$packageId
4e780 5d 29 29 20 7b 0a 61 72 72 61 79 5f 70 75 73 68 28 24 71 75 65 75 65 2c 20 24 70 61 63 6b 61 67 ])).{.array_push($queue,.$packag
4e7a0 65 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 e);..if.($package.instanceof.Ali
4e7c0 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 61 72 72 61 79 5f 70 75 73 68 28 24 71 75 65 75 65 2c 20 asPackage).{.array_push($queue,.
4e7e0 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 29 3b 0a 7d 20 65 6c 73 65 20 $package->getAliasOf());.}.else.
4e800 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 {.foreach.($package->getRequires
4e820 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 ().as.$link).{.$possibleRequires
4e840 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 .=.$this->pool->whatProvides($li
4e860 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 nk->getTarget(),.$link->getConst
4e880 72 61 69 6e 74 28 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 73 73 69 62 6c 65 52 65 71 raint());..foreach.($possibleReq
4e8a0 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 61 72 72 61 79 5f 70 75 73 68 28 uires.as.$require).{.array_push(
4e8c0 24 71 75 65 75 65 2c 20 24 72 65 71 75 69 72 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 76 69 73 69 74 $queue,.$require);.}.}.}..$visit
4e8e0 65 64 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 20 ed[$package->id].=.true;.}.else.
4e900 7b 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 {.if.(isset($installMap[$package
4e920 49 64 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 28 0a 24 69 6e 73 74 61 6c 6c Id])).{.$this->install(.$install
4e940 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 0a 24 69 6e 73 Map[$packageId]['package'],.$ins
4e960 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 72 65 61 73 6f 6e 27 5d 0a 29 3b tallMap[$packageId]['reason'].);
4e980 0a 75 6e 73 65 74 28 24 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 3b .unset($installMap[$packageId]);
4e9a0 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 .}.if.(isset($updateMap[$package
4e9c0 49 64 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 28 0a 24 75 70 64 61 74 65 4d 61 Id])).{.$this->update(.$updateMa
4e9e0 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 73 6f 75 72 63 65 27 5d 2c 0a 24 75 70 64 61 74 65 p[$packageId]['source'],.$update
4ea00 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 0a 24 75 70 64 Map[$packageId]['package'],.$upd
4ea20 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 72 65 61 73 6f 6e 27 5d 0a 29 3b 0a ateMap[$packageId]['reason'].);.
4ea40 75 6e 73 65 74 28 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 3b 0a 7d unset($updateMap[$packageId]);.}
4ea60 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 20 61 73 20 .}.}..foreach.($uninstallMap.as.
4ea80 24 75 6e 69 6e 73 74 61 6c 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 75 6e 69 6e 73 74 61 6c 6c 28 24 $uninstall).{.$this->uninstall($
4eaa0 75 6e 69 6e 73 74 61 6c 6c 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 24 75 6e 69 6e 73 74 61 6c 6c uninstall['package'],.$uninstall
4eac0 5b 27 72 65 61 73 6f 6e 27 5d 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 ['reason']);.}.}..protected.func
4eae0 74 69 6f 6e 20 66 69 6e 64 52 6f 6f 74 50 61 63 6b 61 67 65 73 28 24 69 6e 73 74 61 6c 6c 4d 61 tion.findRootPackages($installMa
4eb00 70 2c 20 24 75 70 64 61 74 65 4d 61 70 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 69 6e p,.$updateMap).{.$packages.=.$in
4eb20 73 74 61 6c 6c 4d 61 70 20 2b 20 24 75 70 64 61 74 65 4d 61 70 3b 0a 24 72 6f 6f 74 73 20 3d 20 stallMap.+.$updateMap;.$roots.=.
4eb40 24 70 61 63 6b 61 67 65 73 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 $packages;..foreach.($packages.a
4eb60 73 20 24 70 61 63 6b 61 67 65 49 64 20 3d 3e 20 24 6f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 24 70 s.$packageId.=>.$operation).{.$p
4eb80 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 5b 27 70 61 63 6b 61 67 65 27 5d 3b 0a ackage.=.$operation['package'];.
4eba0 0a 69 66 20 28 21 69 73 73 65 74 28 24 72 6f 6f 74 73 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 29 .if.(!isset($roots[$packageId]))
4ebc0 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 .{.continue;.}..foreach.($packag
4ebe0 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 70 6f e->getRequires().as.$link).{.$po
4ec00 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 ssibleRequires.=.$this->pool->wh
4ec20 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 atProvides($link->getTarget(),.$
4ec40 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 0a 66 6f 72 65 61 63 68 link->getConstraint());..foreach
4ec60 20 28 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 .($possibleRequires.as.$require)
4ec80 20 7b 0a 69 66 20 28 24 72 65 71 75 69 72 65 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a .{.if.($require.!==.$package).{.
4eca0 75 6e 73 65 74 28 24 72 6f 6f 74 73 5b 24 72 65 71 75 69 72 65 2d 3e 69 64 5d 29 3b 0a 7d 0a 7d unset($roots[$require->id]);.}.}
4ecc0 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 6f 6f 74 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 .}.}..return.$roots;.}..protecte
4ece0 64 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 55 70 64 61 74 65 73 28 29 0a 7b 0a 24 69 6e 73 74 d.function.findUpdates().{.$inst
4ed00 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f allMeansUpdateMap.=.array();..fo
4ed20 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 61 73 20 24 69 20 3d 3e reach.($this->decisions.as.$i.=>
4ed40 20 24 64 65 63 69 73 69 6f 6e 29 20 7b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 64 65 63 69 73 69 .$decision).{.$literal.=.$decisi
4ed60 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b on[Decisions::DECISION_LITERAL];
4ed80 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c .$package.=.$this->pool->literal
4eda0 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 ToPackage($literal);..if.($packa
4edc0 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 63 6f ge.instanceof.AliasPackage).{.co
4ede0 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3c 3d 20 30 20 26 ntinue;.}....if.($literal.<=.0.&
4ee00 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 &.isset($this->installedMap[$pac
4ee20 6b 61 67 65 2d 3e 69 64 5d 29 29 20 7b 0a 24 75 70 64 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e kage->id])).{.$updates.=.$this->
4ee40 70 6f 6c 69 63 79 2d 3e 66 69 6e 64 55 70 64 61 74 65 50 61 63 6b 61 67 65 73 28 24 74 68 69 73 policy->findUpdatePackages($this
4ee60 2d 3e 70 6f 6f 6c 2c 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 70 61 ->pool,.$this->installedMap,.$pa
4ee80 63 6b 61 67 65 29 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b ckage);..$literals.=.array($pack
4eea0 61 67 65 2d 3e 69 64 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 75 70 64 61 74 65 73 20 61 73 20 age->id);..foreach.($updates.as.
4eec0 24 75 70 64 61 74 65 29 20 7b 0a 24 6c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 75 70 64 61 74 65 $update).{.$literals[].=.$update
4eee0 2d 3e 69 64 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 ->id;.}..foreach.($literals.as.$
4ef00 75 70 64 61 74 65 4c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 75 70 64 61 74 65 4c 69 74 65 updateLiteral).{.if.($updateLite
4ef20 72 61 6c 20 21 3d 3d 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 4d 65 61 6e ral.!==.$literal).{.$installMean
4ef40 73 55 70 64 61 74 65 4d 61 70 5b 61 62 73 28 24 75 70 64 61 74 65 4c 69 74 65 72 61 6c 29 5d 20 sUpdateMap[abs($updateLiteral)].
4ef60 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 =.$package;.}.}.}.}..return.$ins
4ef80 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 tallMeansUpdateMap;.}..protected
4efa0 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 .function.install($package,.$rea
4efc0 73 6f 6e 29 0a 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 son).{.if.($package.instanceof.A
4efe0 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 72 liasPackage).{.return.$this->mar
4f000 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f kAliasInstalled($package,.$reaso
4f020 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 n);.}..$this->transaction[].=.ne
4f040 77 20 4f 70 65 72 61 74 69 6f 6e 5c 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 w.Operation\InstallOperation($pa
4f060 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 ckage,.$reason);.}..protected.fu
4f080 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 72 65 61 73 6f nction.update($from,.$to,.$reaso
4f0a0 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 n).{.$this->transaction[].=.new.
4f0c0 4f 70 65 72 61 74 69 6f 6e 5c 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 28 24 66 72 6f 6d 2c Operation\UpdateOperation($from,
4f0e0 20 24 74 6f 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e .$to,.$reason);.}..protected.fun
4f100 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f ction.uninstall($package,.$reaso
4f120 6e 29 0a 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 n).{.if.($package.instanceof.Ali
4f140 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 72 6b 41 asPackage).{.return.$this->markA
4f160 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f liasUninstalled($package,.$reaso
4f180 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 n);.}..$this->transaction[].=.ne
4f1a0 77 20 4f 70 65 72 61 74 69 6f 6e 5c 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 28 24 w.Operation\UninstallOperation($
4f1c0 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 package,.$reason);.}..protected.
4f1e0 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 28 24 70 61 63 function.markAliasInstalled($pac
4f200 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 kage,.$reason).{.$this->transact
4f220 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 74 69 6f 6e 5c 4d 61 72 6b 41 6c 69 61 73 49 ion[].=.new.Operation\MarkAliasI
4f240 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 nstalledOperation($package,.$rea
4f260 73 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b son);.}..protected.function.mark
4f280 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 AliasUninstalled($package,.$reas
4f2a0 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 on).{.$this->transaction[].=.new
4f2c0 20 4f 70 65 72 61 74 69 6f 6e 5c 4d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 4f .Operation\MarkAliasUninstalledO
4f2e0 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 7d peration($package,.$reason);.}.}
4f300 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
4f320 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 oser\Downloader;..use.Composer\P
4f340 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d ackage\PackageInterface;.use.Sym
4f360 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 46 69 6e 64 65 72 3b 0a 75 73 fony\Component\Finder\Finder;.us
4f380 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a e.Composer\IO\IOInterface;......
4f3a0 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 ...abstract.class.ArchiveDownloa
4f3c0 64 65 72 20 65 78 74 65 6e 64 73 20 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a 0a der.extends.FileDownloader.{....
4f3e0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 public.function.download(Package
4f400 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 74 65 Interface.$package,.$path).{.$te
4f420 6d 70 6f 72 61 72 79 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 mporaryDir.=.$this->config->get(
4f440 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 2e 27 2f 63 6f 6d 70 6f 73 65 72 2f 27 2e 73 75 62 73 74 'vendor-dir').'/composer/'.subst
4f460 72 28 6d 64 35 28 75 6e 69 71 69 64 28 27 27 2c 20 74 72 75 65 29 29 2c 20 30 2c 20 38 29 3b 0a r(md5(uniqid('',.true)),.0,.8);.
4f480 24 72 65 74 72 69 65 73 20 3d 20 33 3b 0a 77 68 69 6c 65 20 28 24 72 65 74 72 69 65 73 2d 2d 29 $retries.=.3;.while.($retries--)
4f4a0 20 7b 0a 24 66 69 6c 65 4e 61 6d 65 20 3d 20 70 61 72 65 6e 74 3a 3a 64 6f 77 6e 6c 6f 61 64 28 .{.$fileName.=.parent::download(
4f4c0 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 $package,.$path);..$this->io->wr
4f4e0 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 45 78 74 72 61 63 74 69 6e 67 20 61 72 63 68 69 76 65 iteError('....Extracting.archive
4f500 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a ',.true,.IOInterface::VERBOSE);.
4f520 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 .try.{.$this->filesystem->ensure
4f540 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 65 6d 70 6f 72 61 72 79 44 69 72 29 3b 0a DirectoryExists($temporaryDir);.
4f560 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 28 24 66 69 6c 65 4e 61 6d 65 2c 20 try.{.$this->extract($fileName,.
4f580 24 74 65 6d 70 6f 72 61 72 79 44 69 72 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 $temporaryDir);.}.catch.(\Except
4f5a0 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 70 61 72 65 6e 74 3a 3a 63 6c 65 61 72 4c 61 73 74 43 61 63 ion.$e).{...parent::clearLastCac
4f5c0 68 65 57 72 69 74 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a heWrite($package);.throw.$e;.}..
4f5e0 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 4e $this->filesystem->unlink($fileN
4f600 61 6d 65 29 3b 0a 0a 24 63 6f 6e 74 65 6e 74 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 ame);..$contentDir.=.$this->getF
4f620 6f 6c 64 65 72 43 6f 6e 74 65 6e 74 28 24 74 65 6d 70 6f 72 61 72 79 44 69 72 29 3b 0a 0a 0a 20 olderContent($temporaryDir);....
4f640 69 66 20 28 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 63 6f 6e 74 65 6e 74 44 69 72 29 20 26 26 20 if.(1.===.count($contentDir).&&.
4f660 69 73 5f 64 69 72 28 72 65 73 65 74 28 24 63 6f 6e 74 65 6e 74 44 69 72 29 29 29 20 7b 0a 24 63 is_dir(reset($contentDir))).{.$c
4f680 6f 6e 74 65 6e 74 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 6f 6c 64 65 72 43 6f 6e 74 ontentDir.=.$this->getFolderCont
4f6a0 65 6e 74 28 28 73 74 72 69 6e 67 29 20 72 65 73 65 74 28 24 63 6f 6e 74 65 6e 74 44 69 72 29 29 ent((string).reset($contentDir))
4f6c0 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 74 65 6e 74 44 69 72 20 61 73 20 24 ;.}....foreach.($contentDir.as.$
4f6e0 66 69 6c 65 29 20 7b 0a 24 66 69 6c 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 66 69 6c 65 3b 0a file).{.$file.=.(string).$file;.
4f700 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6e 61 6d 65 28 24 66 69 6c 65 2c $this->filesystem->rename($file,
4f720 20 24 70 61 74 68 20 2e 20 27 2f 27 20 2e 20 62 61 73 65 6e 61 6d 65 28 24 66 69 6c 65 29 29 3b .$path...'/'...basename($file));
4f740 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 .}..$this->filesystem->removeDir
4f760 65 63 74 6f 72 79 28 24 74 65 6d 70 6f 72 61 72 79 44 69 72 29 3b 0a 69 66 20 28 24 74 68 69 73 ectory($temporaryDir);.if.($this
4f780 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 73 44 69 72 45 6d 70 74 79 28 24 74 68 69 73 2d 3e ->filesystem->isDirEmpty($this->
4f7a0 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 2e 27 2f 63 6f 6d 70 config->get('vendor-dir').'/comp
4f7c0 6f 73 65 72 2f 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 oser/')).{.$this->filesystem->re
4f7e0 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 moveDirectory($this->config->get
4f800 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 2e 27 2f 63 6f 6d 70 6f 73 65 72 2f 27 29 3b 0a 7d 0a ('vendor-dir').'/composer/');.}.
4f820 69 66 20 28 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 73 44 69 72 45 6d 70 74 if.($this->filesystem->isDirEmpt
4f840 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 y($this->config->get('vendor-dir
4f860 27 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 '))).{.$this->filesystem->remove
4f880 44 69 72 65 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 Directory($this->config->get('ve
4f8a0 6e 64 6f 72 2d 64 69 72 27 29 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 ndor-dir'));.}.}.catch.(\Excepti
4f8c0 6f 6e 20 24 65 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 on.$e).{...$this->filesystem->re
4f8e0 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c moveDirectory($path);.$this->fil
4f900 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 74 65 6d 70 6f 72 esystem->removeDirectory($tempor
4f920 61 72 79 44 69 72 29 3b 0a 0a 0a 20 69 66 20 28 24 72 65 74 72 69 65 73 20 26 26 20 24 65 20 69 aryDir);....if.($retries.&&.$e.i
4f940 6e 73 74 61 6e 63 65 6f 66 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 nstanceof.\UnexpectedValueExcept
4f960 69 6f 6e 20 26 26 20 63 6c 61 73 73 5f 65 78 69 73 74 73 28 27 5a 69 70 41 72 63 68 69 76 65 27 ion.&&.class_exists('ZipArchive'
4f980 29 20 26 26 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 20 3d 3d 3d 20 5c 5a 69 70 41 72 63 68 69 ).&&.$e->getCode().===.\ZipArchi
4f9a0 76 65 3a 3a 45 52 5f 4e 4f 5a 49 50 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 ve::ER_NOZIP).{.if.($this->io->i
4f9c0 73 44 65 62 75 67 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f sDebug()).{.$this->io->writeErro
4f9e0 72 28 27 20 20 20 20 49 6e 76 61 6c 69 64 20 7a 69 70 20 66 69 6c 65 20 28 27 2e 24 65 2d 3e 67 r('....Invalid.zip.file.('.$e->g
4fa00 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 2c 20 72 65 74 72 79 69 6e 67 2e 2e 2e 27 29 3b 0a 7d etMessage().'),.retrying...');.}
4fa20 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 .else.{.$this->io->writeError('.
4fa40 20 20 20 49 6e 76 61 6c 69 64 20 7a 69 70 20 66 69 6c 65 2c 20 72 65 74 72 79 69 6e 67 2e 2e 2e ...Invalid.zip.file,.retrying...
4fa60 27 29 3b 0a 7d 0a 75 73 6c 65 65 70 28 35 30 30 30 30 30 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a ');.}.usleep(500000);.continue;.
4fa80 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 68 69 73 2d }..throw.$e;.}..break;.}..$this-
4faa0 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 >io->writeError('');.}.....prote
4fac0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 4e 61 6d 65 28 50 61 63 6b 61 67 cted.function.getFileName(Packag
4fae0 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 72 65 eInterface.$package,.$path).{.re
4fb00 74 75 72 6e 20 72 74 72 69 6d 28 24 70 61 74 68 2e 27 2f 27 2e 6d 64 35 28 24 70 61 74 68 2e 73 turn.rtrim($path.'/'.md5($path.s
4fb20 70 6c 5f 6f 62 6a 65 63 74 5f 68 61 73 68 28 24 70 61 63 6b 61 67 65 29 29 2e 27 2e 27 2e 70 61 pl_object_hash($package)).'.'.pa
4fb40 74 68 69 6e 66 6f 28 70 61 72 73 65 5f 75 72 6c 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 thinfo(parse_url($package->getDi
4fb60 73 74 55 72 6c 28 29 2c 20 50 48 50 5f 55 52 4c 5f 50 41 54 48 29 2c 20 50 41 54 48 49 4e 46 4f stUrl(),.PHP_URL_PATH),.PATHINFO
4fb80 5f 45 58 54 45 4e 53 49 4f 4e 29 2c 20 27 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 _EXTENSION),.'.');.}.....protect
4fba0 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 55 72 6c 28 50 61 63 6b 61 67 65 49 6e ed.function.processUrl(PackageIn
4fbc0 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 75 72 6c 29 0a 7b 0a 69 66 20 28 24 70 terface.$package,.$url).{.if.($p
4fbe0 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 20 26 26 20 73 74 ackage->getDistReference().&&.st
4fc00 72 70 6f 73 28 24 75 72 6c 2c 20 27 67 69 74 68 75 62 2e 63 6f 6d 27 29 29 20 7b 0a 69 66 20 28 rpos($url,.'github.com')).{.if.(
4fc20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 28 3f 3a 77 77 77 5c 2e 29 preg_match('{^https?://(?:www\.)
4fc40 3f 67 69 74 68 75 62 5c 2e 63 6f 6d 2f 28 5b 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 29 2f 28 7a 69 ?github\.com/([^/]+)/([^/]+)/(zi
4fc60 70 7c 74 61 72 29 62 61 6c 6c 2f 28 2e 2b 29 24 7d 69 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 p|tar)ball/(.+)$}i',.$url,.$matc
4fc80 68 29 29 20 7b 0a 0a 20 24 75 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 61 70 69 2e 67 69 74 68 h)).{...$url.=.'https://api.gith
4fca0 75 62 2e 63 6f 6d 2f 72 65 70 6f 73 2f 27 20 2e 20 24 6d 61 74 63 68 5b 31 5d 20 2e 20 27 2f 27 ub.com/repos/'...$match[1]...'/'
4fcc0 2e 20 24 6d 61 74 63 68 5b 32 5d 20 2e 20 27 2f 27 20 2e 20 24 6d 61 74 63 68 5b 33 5d 20 2e 20 ..$match[2]...'/'...$match[3]...
4fce0 27 62 61 6c 6c 2f 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 'ball/'...$package->getDistRefer
4fd00 65 6e 63 65 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 ence();.}.elseif.($package->getD
4fd20 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e istReference().&&.preg_match('{^
4fd40 68 74 74 70 73 3f 3a 2f 2f 28 3f 3a 77 77 77 5c 2e 29 3f 67 69 74 68 75 62 5c 2e 63 6f 6d 2f 28 https?://(?:www\.)?github\.com/(
4fd60 5b 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 29 2f 61 72 63 68 69 76 65 2f 2e 2b 5c 2e 28 7a 69 70 7c [^/]+)/([^/]+)/archive/.+\.(zip|
4fd80 74 61 72 29 28 3f 3a 5c 2e 67 7a 29 3f 24 7d 69 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 tar)(?:\.gz)?$}i',.$url,.$match)
4fda0 29 20 7b 0a 0a 20 24 75 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 61 70 69 2e 67 69 74 68 75 62 ).{...$url.=.'https://api.github
4fdc0 2e 63 6f 6d 2f 72 65 70 6f 73 2f 27 20 2e 20 24 6d 61 74 63 68 5b 31 5d 20 2e 20 27 2f 27 2e 20 .com/repos/'...$match[1]...'/'..
4fde0 24 6d 61 74 63 68 5b 32 5d 20 2e 20 27 2f 27 20 2e 20 24 6d 61 74 63 68 5b 33 5d 20 2e 20 27 62 $match[2]...'/'...$match[3]...'b
4fe00 61 6c 6c 2f 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e all/'...$package->getDistReferen
4fe20 63 65 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 ce();.}.elseif.($package->getDis
4fe40 74 52 65 66 65 72 65 6e 63 65 28 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 tReference().&&.preg_match('{^ht
4fe60 74 70 73 3f 3a 2f 2f 61 70 69 5c 2e 67 69 74 68 75 62 5c 2e 63 6f 6d 2f 72 65 70 6f 73 2f 28 5b tps?://api\.github\.com/repos/([
4fe80 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 29 2f 28 7a 69 70 7c 74 61 72 29 62 61 6c 6c 28 3f 3a 2f 2e ^/]+)/([^/]+)/(zip|tar)ball(?:/.
4fea0 2b 29 3f 24 7d 69 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 0a 20 24 75 72 6c +)?$}i',.$url,.$match)).{...$url
4fec0 20 3d 20 27 68 74 74 70 73 3a 2f 2f 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 72 65 70 6f 73 .=.'https://api.github.com/repos
4fee0 2f 27 20 2e 20 24 6d 61 74 63 68 5b 31 5d 20 2e 20 27 2f 27 2e 20 24 6d 61 74 63 68 5b 32 5d 20 /'...$match[1]...'/'..$match[2].
4ff00 2e 20 27 2f 27 20 2e 20 24 6d 61 74 63 68 5b 33 5d 20 2e 20 27 62 61 6c 6c 2f 27 20 2e 20 24 70 ..'/'...$match[3]...'ball/'...$p
4ff20 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 7d 0a 7d 20 ackage->getDistReference();.}.}.
4ff40 65 6c 73 65 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e elseif.($package->getDistReferen
4ff60 63 65 28 29 20 26 26 20 73 74 72 70 6f 73 28 24 75 72 6c 2c 20 27 62 69 74 62 75 63 6b 65 74 2e ce().&&.strpos($url,.'bitbucket.
4ff80 6f 72 67 27 29 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 org')).{.if.(preg_match('{^https
4ffa0 3f 3a 2f 2f 28 3f 3a 77 77 77 5c 2e 29 3f 62 69 74 62 75 63 6b 65 74 5c 2e 6f 72 67 2f 28 5b 5e ?://(?:www\.)?bitbucket\.org/([^
4ffc0 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 29 2f 67 65 74 2f 28 2e 2b 29 5c 2e 28 7a 69 70 7c 74 61 72 5c /]+)/([^/]+)/get/(.+)\.(zip|tar\
4ffe0 2e 67 7a 7c 74 61 72 5c 2e 62 7a 32 29 24 7d 69 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 .gz|tar\.bz2)$}i',.$url,.$match)
50000 29 20 7b 0a 0a 20 24 75 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e ).{...$url.=.'https://bitbucket.
50020 6f 72 67 2f 27 20 2e 20 24 6d 61 74 63 68 5b 31 5d 20 2e 20 27 2f 27 2e 20 24 6d 61 74 63 68 5b org/'...$match[1]...'/'..$match[
50040 32 5d 20 2e 20 27 2f 67 65 74 2f 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 2]...'/get/'...$package->getDist
50060 52 65 66 65 72 65 6e 63 65 28 29 20 2e 20 27 2e 27 20 2e 20 24 6d 61 74 63 68 5b 34 5d 3b 0a 7d Reference()...'.'...$match[4];.}
50080 0a 7d 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 70 72 6f 63 65 73 73 55 72 6c 28 24 70 .}..return.parent::processUrl($p
500a0 61 63 6b 61 67 65 2c 20 24 75 72 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 ackage,.$url);.}..........abstra
500c0 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 28 24 66 ct.protected.function.extract($f
500e0 69 6c 65 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 ile,.$path);........private.func
50100 74 69 6f 6e 20 67 65 74 46 6f 6c 64 65 72 43 6f 6e 74 65 6e 74 28 24 64 69 72 29 0a 7b 0a 24 66 tion.getFolderContent($dir).{.$f
50120 69 6e 64 65 72 20 3d 20 46 69 6e 64 65 72 3a 3a 63 72 65 61 74 65 28 29 0a 2d 3e 69 67 6e 6f 72 inder.=.Finder::create().->ignor
50140 65 56 43 53 28 66 61 6c 73 65 29 0a 2d 3e 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 28 66 61 6c eVCS(false).->ignoreDotFiles(fal
50160 73 65 29 0a 2d 3e 64 65 70 74 68 28 30 29 0a 2d 3e 69 6e 28 24 64 69 72 29 3b 0a 0a 72 65 74 75 se).->depth(0).->in($dir);..retu
50180 72 6e 20 69 74 65 72 61 74 6f 72 5f 74 6f 5f 61 72 72 61 79 28 24 66 69 6e 64 65 72 29 3b 0a 7d rn.iterator_to_array($finder);.}
501a0 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
501c0 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 mposer\Downloader;..use.Composer
501e0 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a \Package\PackageInterface;......
50200 0a 69 6e 74 65 72 66 61 63 65 20 43 68 61 6e 67 65 52 65 70 6f 72 74 49 6e 74 65 72 66 61 63 65 .interface.ChangeReportInterface
50220 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 .{........public.function.getLoc
50240 61 6c 43 68 61 6e 67 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b alChanges(PackageInterface.$pack
50260 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a age,.$path);.}.<?php............
50280 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a namespace.Composer\Downloader;..
502a0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 use.Composer\Package\PackageInte
502c0 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 rface;.use.Composer\IO\IOInterfa
502e0 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d ce;.use.Composer\Util\Filesystem
50300 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 0a 7b 0a ;.......class.DownloadManager.{.
50320 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 65 72 44 69 73 74 private.$io;.private.$preferDist
50340 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 .=.false;.private.$preferSource.
50360 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 50 72 65 66 65 72 65 =.false;.private.$packagePrefere
50380 6e 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 73 79 73 nces.=.array();.private.$filesys
503a0 74 65 6d 3b 0a 70 72 69 76 61 74 65 20 24 64 6f 77 6e 6c 6f 61 64 65 72 73 20 3d 20 61 72 72 61 tem;.private.$downloaders.=.arra
503c0 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 y();.........public.function.__c
503e0 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 70 72 65 66 65 onstruct(IOInterface.$io,.$prefe
50400 72 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c rSource.=.false,.Filesystem.$fil
50420 65 73 79 73 74 65 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 esystem.=.null).{.$this->io.=.$i
50440 6f 3b 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 24 70 72 65 66 65 72 o;.$this->preferSource.=.$prefer
50460 53 6f 75 72 63 65 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 69 6c Source;.$this->filesystem.=.$fil
50480 65 73 79 73 74 65 6d 20 3f 3a 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 7d 0a 0a esystem.?:.new.Filesystem();.}..
504a0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 66 65 72 53 ......public.function.setPreferS
504c0 6f 75 72 63 65 28 24 70 72 65 66 65 72 53 6f 75 72 63 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 ource($preferSource).{.$this->pr
504e0 65 66 65 72 53 6f 75 72 63 65 20 3d 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 3b 0a 0a 72 65 74 eferSource.=.$preferSource;..ret
50500 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 urn.$this;.}........public.funct
50520 69 6f 6e 20 73 65 74 50 72 65 66 65 72 44 69 73 74 28 24 70 72 65 66 65 72 44 69 73 74 29 0a 7b ion.setPreferDist($preferDist).{
50540 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 44 69 73 74 20 3d 20 24 70 72 65 66 65 72 44 69 73 74 .$this->preferDist.=.$preferDist
50560 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ;..return.$this;.}........public
50580 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 66 65 72 65 6e 63 65 73 28 61 72 72 61 79 20 24 .function.setPreferences(array.$
505a0 70 72 65 66 65 72 65 6e 63 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 50 72 65 preferences).{.$this->packagePre
505c0 66 65 72 65 6e 63 65 73 20 3d 20 24 70 72 65 66 65 72 65 6e 63 65 73 3b 0a 0a 72 65 74 75 72 6e ferences.=.$preferences;..return
505e0 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .$this;.}.........public.functio
50600 6e 20 73 65 74 4f 75 74 70 75 74 50 72 6f 67 72 65 73 73 28 24 6f 75 74 70 75 74 50 72 6f 67 72 n.setOutputProgress($outputProgr
50620 65 73 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 65 ess).{.foreach.($this->downloade
50640 72 73 20 61 73 20 24 64 6f 77 6e 6c 6f 61 64 65 72 29 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 rs.as.$downloader).{.$downloader
50660 2d 3e 73 65 74 4f 75 74 70 75 74 50 72 6f 67 72 65 73 73 28 24 6f 75 74 70 75 74 50 72 6f 67 72 ->setOutputProgress($outputProgr
50680 65 73 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ess);.}..return.$this;.}........
506a0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 24 .public.function.setDownloader($
506c0 74 79 70 65 2c 20 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 20 24 64 6f 77 6e 6c type,.DownloaderInterface.$downl
506e0 6f 61 64 65 72 29 0a 7b 0a 24 74 79 70 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 79 70 oader).{.$type.=.strtolower($typ
50700 65 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 65 72 73 5b 24 74 79 70 65 5d 20 3d 20 e);.$this->downloaders[$type].=.
50720 24 64 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a $downloader;..return.$this;.}...
50740 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 6f 77 6e 6c 6f 61 ......public.function.getDownloa
50760 64 65 72 28 24 74 79 70 65 29 0a 7b 0a 24 74 79 70 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 der($type).{.$type.=.strtolower(
50780 24 74 79 70 65 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f $type);.if.(!isset($this->downlo
507a0 61 64 65 72 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 aders[$type])).{.throw.new.\Inva
507c0 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e lidArgumentException(sprintf('Un
507e0 6b 6e 6f 77 6e 20 64 6f 77 6e 6c 6f 61 64 65 72 20 74 79 70 65 3a 20 25 73 2e 20 41 76 61 69 6c known.downloader.type:.%s..Avail
50800 61 62 6c 65 20 74 79 70 65 73 3a 20 25 73 2e 27 2c 20 24 74 79 70 65 2c 20 69 6d 70 6c 6f 64 65 able.types:.%s.',.$type,.implode
50820 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 (',.',.array_keys($this->downloa
50840 64 65 72 73 29 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 77 6e 6c ders))));.}..return.$this->downl
50860 6f 61 64 65 72 73 5b 24 74 79 70 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 oaders[$type];.}...........publi
50880 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 46 6f 72 49 6e 73 74 61 c.function.getDownloaderForInsta
508a0 6c 6c 65 64 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 lledPackage(PackageInterface.$pa
508c0 63 6b 61 67 65 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 20 3d 20 24 ckage).{.$installationSource.=.$
508e0 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 package->getInstallationSource()
50900 3b 0a 0a 69 66 20 28 27 6d 65 74 61 70 61 63 6b 61 67 65 27 20 3d 3d 3d 20 24 70 61 63 6b 61 67 ;..if.('metapackage'.===.$packag
50920 65 2d 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 27 e->getType()).{.return;.}..if.('
50940 64 69 73 74 27 20 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 29 20 7b dist'.===.$installationSource).{
50960 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 .$downloader.=.$this->getDownloa
50980 64 65 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 29 3b 0a 7d 20 der($package->getDistType());.}.
509a0 65 6c 73 65 69 66 20 28 27 73 6f 75 72 63 65 27 20 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 elseif.('source'.===.$installati
509c0 6f 6e 53 6f 75 72 63 65 29 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 74 68 69 73 2d onSource).{.$downloader.=.$this-
509e0 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 >getDownloader($package->getSour
50a00 63 65 54 79 70 65 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 ceType());.}.else.{.throw.new.\I
50a20 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 0a 27 50 61 63 6b 61 67 nvalidArgumentException(.'Packag
50a40 65 20 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 73 65 65 6d 73 20 6e 6f 74 20 62 65 65 6e 20 69 6e e.'.$package.'.seems.not.been.in
50a60 73 74 61 6c 6c 65 64 20 70 72 6f 70 65 72 6c 79 27 0a 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 73 stalled.properly'.);.}..if.($ins
50a80 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 20 21 3d 3d 20 24 64 6f 77 6e 6c 6f 61 64 65 72 2d tallationSource.!==.$downloader-
50aa0 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 29 20 7b 0a 74 68 72 6f >getInstallationSource()).{.thro
50ac0 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 w.new.\LogicException(sprintf(.'
50ae0 44 6f 77 6e 6c 6f 61 64 65 72 20 22 25 73 22 20 69 73 20 61 20 25 73 20 74 79 70 65 20 64 6f 77 Downloader."%s".is.a.%s.type.dow
50b00 6e 6c 6f 61 64 65 72 20 61 6e 64 20 63 61 6e 20 6e 6f 74 20 62 65 20 75 73 65 64 20 74 6f 20 64 nloader.and.can.not.be.used.to.d
50b20 6f 77 6e 6c 6f 61 64 20 25 73 27 2c 0a 67 65 74 5f 63 6c 61 73 73 28 24 64 6f 77 6e 6c 6f 61 64 ownload.%s',.get_class($download
50b40 65 72 29 2c 20 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f er),.$downloader->getInstallatio
50b60 6e 53 6f 75 72 63 65 28 29 2c 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 0a 29 nSource(),.$installationSource.)
50b80 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 6f 77 6e 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 0a 0a 0a );.}..return.$downloader;.}.....
50ba0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 77 6e 6c 6f 61 64 28 .......public.function.download(
50bc0 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 74 61 72 67 PackageInterface.$package,.$targ
50be0 65 74 44 69 72 2c 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 etDir,.$preferSource.=.null).{.$
50c00 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 6e 75 6c 6c 20 21 3d 3d 20 24 70 72 65 66 65 72 53 preferSource.=.null.!==.$preferS
50c20 6f 75 72 63 65 20 3f 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3a 20 24 74 68 69 73 2d 3e 70 ource.?.$preferSource.:.$this->p
50c40 72 65 66 65 72 53 6f 75 72 63 65 3b 0a 24 73 6f 75 72 63 65 54 79 70 65 20 3d 20 24 70 61 63 6b referSource;.$sourceType.=.$pack
50c60 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 24 64 69 73 74 54 79 70 65 20 age->getSourceType();.$distType.
50c80 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 0a 24 73 6f 75 =.$package->getDistType();..$sou
50ca0 72 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 73 6f 75 72 63 65 54 79 70 65 29 rces.=.array();.if.($sourceType)
50cc0 20 7b 0a 24 73 6f 75 72 63 65 73 5b 5d 20 3d 20 27 73 6f 75 72 63 65 27 3b 0a 7d 0a 69 66 20 28 .{.$sources[].=.'source';.}.if.(
50ce0 24 64 69 73 74 54 79 70 65 29 20 7b 0a 24 73 6f 75 72 63 65 73 5b 5d 20 3d 20 27 64 69 73 74 27 $distType).{.$sources[].=.'dist'
50d00 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 73 6f 75 72 63 65 73 29 29 20 7b 0a 74 68 72 6f ;.}..if.(empty($sources)).{.thro
50d20 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 w.new.\InvalidArgumentException(
50d40 27 50 61 63 6b 61 67 65 20 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 6d 75 73 74 20 68 61 76 65 20 'Package.'.$package.'.must.have.
50d60 61 20 73 6f 75 72 63 65 20 6f 72 20 64 69 73 74 20 73 70 65 63 69 66 69 65 64 27 29 3b 0a 7d 0a a.source.or.dist.specified');.}.
50d80 0a 69 66 20 28 21 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 26 26 20 28 24 74 68 69 73 2d 3e 70 .if.(!$preferSource.&&.($this->p
50da0 72 65 66 65 72 44 69 73 74 20 7c 7c 20 27 64 69 73 74 27 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 referDist.||.'dist'.===.$this->r
50dc0 65 73 6f 6c 76 65 50 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 50 72 65 66 65 72 65 6e 63 65 28 24 esolvePackageInstallPreference($
50de0 70 61 63 6b 61 67 65 29 29 29 20 7b 0a 24 73 6f 75 72 63 65 73 20 3d 20 61 72 72 61 79 5f 72 65 package))).{.$sources.=.array_re
50e00 76 65 72 73 65 28 24 73 6f 75 72 63 65 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 verse($sources);.}..$this->files
50e20 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 61 ystem->ensureDirectoryExists($ta
50e40 72 67 65 74 44 69 72 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 73 6f 75 72 63 65 73 20 61 73 20 rgetDir);..foreach.($sources.as.
50e60 24 69 20 3d 3e 20 24 73 6f 75 72 63 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 65 29 29 20 $i.=>.$source).{.if.(isset($e)).
50e80 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 3c 77 61 {.$this->io->writeError('....<wa
50ea0 72 6e 69 6e 67 3e 4e 6f 77 20 74 72 79 69 6e 67 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 66 72 6f rning>Now.trying.to.download.fro
50ec0 6d 20 27 20 2e 20 24 73 6f 75 72 63 65 20 2e 20 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d m.'...$source...'</warning>');.}
50ee0 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 .$package->setInstallationSource
50f00 28 24 73 6f 75 72 63 65 29 3b 0a 74 72 79 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 ($source);.try.{.$downloader.=.$
50f20 74 68 69 73 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 46 6f 72 49 6e 73 74 61 6c 6c 65 64 50 this->getDownloaderForInstalledP
50f40 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 24 64 6f 77 6e 6c 6f 61 64 65 ackage($package);.if.($downloade
50f60 72 29 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 70 61 63 6b r).{.$downloader->download($pack
50f80 61 67 65 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 20 63 61 74 age,.$targetDir);.}.break;.}.cat
50fa0 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 ch.(\RuntimeException.$e).{.if.(
50fc0 24 69 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 73 6f 75 72 63 65 73 29 20 2d 20 31 29 20 7b 0a 74 68 $i.===.count($sources).-.1).{.th
50fe0 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 row.$e;.}..$this->io->writeError
51000 28 0a 27 20 20 20 20 3c 77 61 72 6e 69 6e 67 3e 46 61 69 6c 65 64 20 74 6f 20 64 6f 77 6e 6c 6f (.'....<warning>Failed.to.downlo
51020 61 64 20 27 2e 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e ad.'..$package->getPrettyName().
51040 0a 27 20 66 72 6f 6d 20 27 20 2e 20 24 73 6f 75 72 63 65 20 2e 20 27 3a 20 27 2e 0a 24 65 2d 3e .'.from.'...$source...':.'..$e->
51060 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 0a 29 3b 0a 7d 0a 7d getMessage().'</warning>'.);.}.}
51080 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 .}...........public.function.upd
510a0 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 ate(PackageInterface.$initial,.P
510c0 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 74 61 72 67 65 74 ackageInterface.$target,.$target
510e0 44 69 72 29 0a 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 Dir).{.$downloader.=.$this->getD
51100 6f 77 6e 6c 6f 61 64 65 72 46 6f 72 49 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 28 24 69 6e ownloaderForInstalledPackage($in
51120 69 74 69 61 6c 29 3b 0a 69 66 20 28 21 24 64 6f 77 6e 6c 6f 61 64 65 72 29 20 7b 0a 72 65 74 75 itial);.if.(!$downloader).{.retu
51140 72 6e 3b 0a 7d 0a 0a 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 20 3d 20 24 69 6e rn;.}..$installationSource.=.$in
51160 69 74 69 61 6c 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 3b 0a itial->getInstallationSource();.
51180 0a 69 66 20 28 27 64 69 73 74 27 20 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 .if.('dist'.===.$installationSou
511a0 72 63 65 29 20 7b 0a 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d 20 24 69 6e 69 74 69 61 6c 2d 3e rce).{.$initialType.=.$initial->
511c0 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 24 74 61 72 67 65 74 54 79 70 65 20 3d 20 24 74 61 getDistType();.$targetType.=.$ta
511e0 72 67 65 74 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 rget->getDistType();.}.else.{.$i
51200 6e 69 74 69 61 6c 54 79 70 65 20 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 53 6f 75 72 63 65 nitialType.=.$initial->getSource
51220 54 79 70 65 28 29 3b 0a 24 74 61 72 67 65 74 54 79 70 65 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 Type();.$targetType.=.$target->g
51240 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 61 72 67 65 74 etSourceType();.}....if.($target
51260 2d 3e 69 73 44 65 76 28 29 20 26 26 20 27 64 69 73 74 27 20 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c ->isDev().&&.'dist'.===.$install
51280 61 74 69 6f 6e 53 6f 75 72 63 65 29 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 72 65 6d 6f ationSource).{.$downloader->remo
512a0 76 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 24 74 68 69 73 2d ve($initial,.$targetDir);.$this-
512c0 3e 64 6f 77 6e 6c 6f 61 64 28 24 74 61 72 67 65 74 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a >download($target,.$targetDir);.
512e0 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d 3d 3d .return;.}..if.($initialType.===
51300 20 24 74 61 72 67 65 74 54 79 70 65 29 20 7b 0a 24 74 61 72 67 65 74 2d 3e 73 65 74 49 6e 73 74 .$targetType).{.$target->setInst
51320 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 allationSource($installationSour
51340 63 65 29 3b 0a 74 72 79 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 75 70 64 61 74 65 28 24 ce);.try.{.$downloader->update($
51360 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 0a initial,.$target,.$targetDir);..
51380 72 65 74 75 72 6e 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 return;.}.catch.(\RuntimeExcepti
513a0 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 on.$e).{.if.(!$this->io->isInter
513c0 61 63 74 69 76 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 active()).{.throw.$e;.}.$this->i
513e0 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 20 20 20 20 55 70 64 61 74 65 o->writeError('<error>....Update
51400 20 66 61 69 6c 65 64 20 28 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 3c 2f .failed.('.$e->getMessage().')</
51420 65 72 72 6f 72 3e 27 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 43 6f 6e error>');.if.(!$this->io->askCon
51440 66 69 72 6d 61 74 69 6f 6e 28 27 20 20 20 20 57 6f 75 6c 64 20 79 6f 75 20 6c 69 6b 65 20 74 6f firmation('....Would.you.like.to
51460 20 74 72 79 20 72 65 69 6e 73 74 61 6c 6c 69 6e 67 20 74 68 65 20 70 61 63 6b 61 67 65 20 69 6e .try.reinstalling.the.package.in
51480 73 74 65 61 64 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 79 65 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3f 20 stead.[<comment>yes</comment>]?.
514a0 27 2c 20 74 72 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 64 6f ',.true)).{.throw.$e;.}.}.}..$do
514c0 77 6e 6c 6f 61 64 65 72 2d 3e 72 65 6d 6f 76 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 wnloader->remove($initial,.$targ
514e0 65 74 44 69 72 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 74 61 72 67 65 74 2c etDir);.$this->download($target,
51500 20 24 74 61 72 67 65 74 44 69 72 2c 20 27 73 6f 75 72 63 65 27 20 3d 3d 3d 20 24 69 6e 73 74 61 .$targetDir,.'source'.===.$insta
51520 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 llationSource);.}........public.
51540 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 function.remove(PackageInterface
51560 20 24 70 61 63 6b 61 67 65 2c 20 24 74 61 72 67 65 74 44 69 72 29 0a 7b 0a 24 64 6f 77 6e 6c 6f .$package,.$targetDir).{.$downlo
51580 61 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 46 6f 72 49 6e ader.=.$this->getDownloaderForIn
515a0 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 24 64 stalledPackage($package);.if.($d
515c0 6f 77 6e 6c 6f 61 64 65 72 29 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 72 65 6d 6f 76 65 ownloader).{.$downloader->remove
515e0 28 24 70 61 63 6b 61 67 65 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a ($package,.$targetDir);.}.}.....
51600 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 50 61 ....protected.function.resolvePa
51620 63 6b 61 67 65 49 6e 73 74 61 6c 6c 50 72 65 66 65 72 65 6e 63 65 28 50 61 63 6b 61 67 65 49 6e ckageInstallPreference(PackageIn
51640 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 terface.$package).{.foreach.($th
51660 69 73 2d 3e 70 61 63 6b 61 67 65 50 72 65 66 65 72 65 6e 63 65 73 20 61 73 20 24 70 61 74 74 65 is->packagePreferences.as.$patte
51680 72 6e 20 3d 3e 20 24 70 72 65 66 65 72 65 6e 63 65 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 rn.=>.$preference).{.$pattern.=.
516a0 27 7b 5e 27 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 2a 27 2c 20 27 2e 2a 27 2c 20 70 72 '{^'.str_replace('\\*',.'.*',.pr
516c0 65 67 5f 71 75 6f 74 65 28 24 70 61 74 74 65 72 6e 29 29 2e 27 24 7d 69 27 3b 0a 69 66 20 28 70 eg_quote($pattern)).'$}i';.if.(p
516e0 72 65 67 5f 6d 61 74 63 68 28 24 70 61 74 74 65 72 6e 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 reg_match($pattern,.$package->ge
51700 74 4e 61 6d 65 28 29 29 29 20 7b 0a 69 66 20 28 27 64 69 73 74 27 20 3d 3d 3d 20 24 70 72 65 66 tName())).{.if.('dist'.===.$pref
51720 65 72 65 6e 63 65 20 7c 7c 20 28 21 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 20 26 26 erence.||.(!$package->isDev().&&
51740 20 27 61 75 74 6f 27 20 3d 3d 3d 20 24 70 72 65 66 65 72 65 6e 63 65 29 29 20 7b 0a 72 65 74 75 .'auto'.===.$preference)).{.retu
51760 72 6e 20 27 64 69 73 74 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 73 6f 75 72 63 65 27 3b 0a 7d rn.'dist';.}..return.'source';.}
51780 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 20 3f 20 27 .}..return.$package->isDev().?.'
517a0 73 6f 75 72 63 65 27 20 3a 20 27 64 69 73 74 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a source'.:.'dist';.}.}.<?php.....
517c0 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f .......namespace.Composer\Downlo
517e0 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b ader;..use.Composer\Package\Pack
51800 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 44 ageInterface;........interface.D
51820 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ownloaderInterface.{......public
51840 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 .function.getInstallationSource(
51860 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 77 6e 6c 6f );........public.function.downlo
51880 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 ad(PackageInterface.$package,.$p
518a0 61 74 68 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 ath);.........public.function.up
518c0 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 date(PackageInterface.$initial,.
518e0 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 PackageInterface.$target,.$path)
51900 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 ;........public.function.remove(
51920 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 PackageInterface.$package,.$path
51940 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 75 74 );........public.function.setOut
51960 70 75 74 50 72 6f 67 72 65 73 73 28 24 6f 75 74 70 75 74 50 72 6f 67 72 65 73 73 29 3b 0a 7d 0a putProgress($outputProgress);.}.
51980 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f <?php............namespace.Compo
519a0 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 ser\Downloader;..use.Composer\Pa
519c0 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e ckage\PackageInterface;.......in
519e0 74 65 72 66 61 63 65 20 44 76 63 73 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a terface.DvcsDownloaderInterface.
51a00 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 6e 70 75 {........public.function.getUnpu
51a20 73 68 65 64 43 68 61 6e 67 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 shedChanges(PackageInterface.$pa
51a40 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ckage,.$path);.}.<?php..........
51a60 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b ..namespace.Composer\Downloader;
51a80 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f ..use.Composer\Config;.use.Compo
51aa0 73 65 72 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b ser\Cache;.use.Composer\Factory;
51ac0 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 .use.Composer\IO\IOInterface;.us
51ae0 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 e.Composer\Package\PackageInterf
51b00 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 ace;.use.Composer\Plugin\PluginE
51b20 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 72 65 46 69 vents;.use.Composer\Plugin\PreFi
51b40 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 leDownloadEvent;.use.Composer\Ev
51b60 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 entDispatcher\EventDispatcher;.u
51b80 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 se.Composer\Util\Filesystem;.use
51ba0 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b .Composer\Util\RemoteFilesystem;
51bc0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 65 72 20 69 ..........class.FileDownloader.i
51be0 6d 70 6c 65 6d 65 6e 74 73 20 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a mplements.DownloaderInterface.{.
51c00 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 protected.$io;.protected.$config
51c20 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 66 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c ;.protected.$rfs;.protected.$fil
51c40 65 73 79 73 74 65 6d 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 3b 0a 70 72 6f 74 65 esystem;.protected.$cache;.prote
51c60 63 74 65 64 20 24 6f 75 74 70 75 74 50 72 6f 67 72 65 73 73 20 3d 20 74 72 75 65 3b 0a 70 72 69 cted.$outputProgress.=.true;.pri
51c80 76 61 74 65 20 24 6c 61 73 74 43 61 63 68 65 57 72 69 74 65 73 20 3d 20 61 72 72 61 79 28 29 3b vate.$lastCacheWrites.=.array();
51ca0 0a 70 72 69 76 61 74 65 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 0a 0a 0a 0a 0a .private.$eventDispatcher;......
51cc0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ......public.function.__construc
51ce0 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 t(IOInterface.$io,.Config.$confi
51d00 67 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 g,.EventDispatcher.$eventDispatc
51d20 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 43 61 63 68 65 20 24 63 61 63 68 65 20 3d 20 6e 75 6c 6c 2c her.=.null,.Cache.$cache.=.null,
51d40 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 2c 20 46 .RemoteFilesystem.$rfs.=.null,.F
51d60 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a ilesystem.$filesystem.=.null).{.
51d80 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d $this->io.=.$io;.$this->config.=
51da0 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 .$config;.$this->eventDispatcher
51dc0 20 3d 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 24 74 68 69 73 2d 3e 72 66 73 20 .=.$eventDispatcher;.$this->rfs.
51de0 3d 20 24 72 66 73 20 3f 3a 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 =.$rfs.?:.Factory::createRemoteF
51e00 69 6c 65 73 79 73 74 65 6d 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 24 ilesystem($this->io,.$config);.$
51e20 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 20 3f this->filesystem.=.$filesystem.?
51e40 3a 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 :.new.Filesystem();.$this->cache
51e60 20 3d 20 24 63 61 63 68 65 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 61 63 68 65 20 26 26 20 .=.$cache;..if.($this->cache.&&.
51e80 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 67 63 49 73 4e 65 63 65 73 73 61 72 79 28 29 29 20 7b $this->cache->gcIsNecessary()).{
51ea0 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 67 63 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 .$this->cache->gc($config->get('
51ec0 63 61 63 68 65 2d 66 69 6c 65 73 2d 74 74 6c 27 29 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 cache-files-ttl'),.$config->get(
51ee0 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 6d 61 78 73 69 7a 65 27 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 'cache-files-maxsize'));.}.}....
51f00 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e .public.function.getInstallation
51f20 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 64 69 73 74 27 3b 0a 7d 0a 0a 0a 0a 0a Source().{.return.'dist';.}.....
51f40 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 public.function.download(Package
51f60 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 Interface.$package,.$path).{.if.
51f80 28 21 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 29 20 7b 0a 74 68 72 6f (!$package->getDistUrl()).{.thro
51fa0 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 w.new.\InvalidArgumentException(
51fc0 27 54 68 65 20 67 69 76 65 6e 20 70 61 63 6b 61 67 65 20 69 73 20 6d 69 73 73 69 6e 67 20 75 72 'The.given.package.is.missing.ur
51fe0 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 l.information');.}..$this->io->w
52000 72 69 74 65 45 72 72 6f 72 28 22 20 20 2d 20 49 6e 73 74 61 6c 6c 69 6e 67 20 3c 69 6e 66 6f 3e riteError("..-.Installing.<info>
52020 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e 20 22 3c 2f 69 6e 66 "...$package->getName()..."</inf
52040 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 46 75 o>.(<comment>"...$package->getFu
52060 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 llPrettyVersion()..."</comment>)
52080 22 29 3b 0a 0a 24 75 72 6c 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 ");..$urls.=.$package->getDistUr
520a0 6c 73 28 29 3b 0a 77 68 69 6c 65 20 28 24 75 72 6c 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 ls();.while.($url.=.array_shift(
520c0 24 75 72 6c 73 29 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f $urls)).{.try.{.return.$this->do
520e0 44 6f 77 6e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 3b Download($package,.$path,.$url);
52100 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 .}.catch.(\Exception.$e).{.if.($
52120 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f this->io->isDebug()).{.$this->io
52140 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 ->writeError('');.$this->io->wri
52160 74 65 45 72 72 6f 72 28 27 46 61 69 6c 65 64 3a 20 5b 27 2e 67 65 74 5f 63 6c 61 73 73 28 24 65 teError('Failed:.['.get_class($e
52180 29 2e 27 5d 20 27 2e 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 2e 27 3a 20 27 2e 24 65 2d 3e 67 65 ).'].'.$e->getCode().':.'.$e->ge
521a0 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 63 6f 75 6e 74 28 24 75 72 tMessage());.}.elseif.(count($ur
521c0 6c 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 ls)).{.$this->io->writeError('')
521e0 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 46 61 69 ;.$this->io->writeError('....Fai
52200 6c 65 64 2c 20 74 72 79 69 6e 67 20 74 68 65 20 6e 65 78 74 20 55 52 4c 20 28 27 2e 24 65 2d 3e led,.trying.the.next.URL.('.$e->
52220 67 65 74 43 6f 64 65 28 29 2e 27 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e getCode().':.'.$e->getMessage().
52240 27 29 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 63 6f 75 6e 74 28 24 75 72 6c 73 29 29 20 7b 0a 74 68 ')');.}..if.(!count($urls)).{.th
52260 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 row.$e;.}.}.}..$this->io->writeE
52280 72 72 6f 72 28 27 27 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 rror('');.}..protected.function.
522a0 64 6f 44 6f 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 doDownload(PackageInterface.$pac
522c0 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 kage,.$path,.$url).{.$this->file
522e0 73 79 73 74 65 6d 2d 3e 65 6d 70 74 79 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 0a system->emptyDirectory($path);..
52300 24 66 69 6c 65 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 4e 61 6d 65 28 24 $fileName.=.$this->getFileName($
52320 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 0a 24 70 72 6f 63 65 73 73 65 64 55 72 6c 20 package,.$path);..$processedUrl.
52340 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 55 72 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 75 =.$this->processUrl($package,.$u
52360 72 6c 29 3b 0a 24 68 6f 73 74 6e 61 6d 65 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 70 72 6f 63 rl);.$hostname.=.parse_url($proc
52380 65 73 73 65 64 55 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 0a 24 70 72 65 46 69 essedUrl,.PHP_URL_HOST);..$preFi
523a0 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 20 3d 20 6e 65 77 20 50 72 65 46 69 6c 65 44 6f 77 leDownloadEvent.=.new.PreFileDow
523c0 6e 6c 6f 61 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 50 52 45 5f 46 49 4c nloadEvent(PluginEvents::PRE_FIL
523e0 45 5f 44 4f 57 4e 4c 4f 41 44 2c 20 24 74 68 69 73 2d 3e 72 66 73 2c 20 24 70 72 6f 63 65 73 73 E_DOWNLOAD,.$this->rfs,.$process
52400 65 64 55 72 6c 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 edUrl);.if.($this->eventDispatch
52420 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 er).{.$this->eventDispatcher->di
52440 73 70 61 74 63 68 28 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 2d 3e 67 65 spatch($preFileDownloadEvent->ge
52460 74 4e 61 6d 65 28 29 2c 20 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 29 3b tName(),.$preFileDownloadEvent);
52480 0a 7d 0a 24 72 66 73 20 3d 20 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 2d .}.$rfs.=.$preFileDownloadEvent-
524a0 3e 67 65 74 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 0a 74 72 79 20 7b 0a 24 >getRemoteFilesystem();..try.{.$
524c0 63 68 65 63 6b 73 75 6d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 53 68 61 31 checksum.=.$package->getDistSha1
524e0 43 68 65 63 6b 73 75 6d 28 29 3b 0a 24 63 61 63 68 65 4b 65 79 20 3d 20 24 74 68 69 73 2d 3e 67 Checksum();.$cacheKey.=.$this->g
52500 65 74 43 61 63 68 65 4b 65 79 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 63 65 73 73 65 64 55 etCacheKey($package,.$processedU
52520 72 6c 29 3b 0a 0a 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 63 61 63 68 65 20 7c 7c 20 28 24 63 rl);....if.(!$this->cache.||.($c
52540 68 65 63 6b 73 75 6d 20 26 26 20 24 63 68 65 63 6b 73 75 6d 20 21 3d 3d 20 24 74 68 69 73 2d 3e hecksum.&&.$checksum.!==.$this->
52560 63 61 63 68 65 2d 3e 73 68 61 31 28 24 63 61 63 68 65 4b 65 79 29 29 20 7c 7c 20 21 24 74 68 69 cache->sha1($cacheKey)).||.!$thi
52580 73 2d 3e 63 61 63 68 65 2d 3e 63 6f 70 79 54 6f 28 24 63 61 63 68 65 4b 65 79 2c 20 24 66 69 6c s->cache->copyTo($cacheKey,.$fil
525a0 65 4e 61 6d 65 29 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 50 72 6f 67 eName)).{.if.(!$this->outputProg
525c0 72 65 73 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 ress).{.$this->io->writeError('.
525e0 20 20 20 44 6f 77 6e 6c 6f 61 64 69 6e 67 27 29 3b 0a 7d 0a 0a 0a 20 24 72 65 74 72 69 65 73 20 ...Downloading');.}....$retries.
52600 3d 20 33 3b 0a 77 68 69 6c 65 20 28 24 72 65 74 72 69 65 73 2d 2d 29 20 7b 0a 74 72 79 20 7b 0a =.3;.while.($retries--).{.try.{.
52620 24 72 66 73 2d 3e 63 6f 70 79 28 24 68 6f 73 74 6e 61 6d 65 2c 20 24 70 72 6f 63 65 73 73 65 64 $rfs->copy($hostname,.$processed
52640 55 72 6c 2c 20 24 66 69 6c 65 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 50 72 6f Url,.$fileName,.$this->outputPro
52660 67 72 65 73 73 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 gress,.$package->getTransportOpt
52680 69 6f 6e 73 28 29 29 3b 0a 62 72 65 61 6b 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f ions());.break;.}.catch.(Transpo
526a0 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 69 66 20 28 28 30 20 21 3d 3d 20 24 rtException.$e).{...if.((0.!==.$
526c0 65 2d 3e 67 65 74 43 6f 64 65 28 29 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 24 65 2d 3e 67 65 e->getCode().&&.!in_array($e->ge
526e0 74 43 6f 64 65 28 29 2c 20 61 72 72 61 79 28 35 30 30 2c 20 35 30 32 2c 20 35 30 33 2c 20 35 30 tCode(),.array(500,.502,.503,.50
52700 34 29 29 29 20 7c 7c 20 21 24 72 65 74 72 69 65 73 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 4))).||.!$retries).{.throw.$e;.}
52720 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 44 6f 77 6e .$this->io->writeError('....Down
52740 6c 6f 61 64 20 66 61 69 6c 65 64 2c 20 72 65 74 72 79 69 6e 67 2e 2e 2e 27 2c 20 74 72 75 65 2c load.failed,.retrying...',.true,
52760 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 75 73 6c 65 65 70 28 35 .IOInterface::VERBOSE);.usleep(5
52780 30 30 30 30 30 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 61 63 68 65 29 20 7b 00000);.}.}..if.($this->cache).{
527a0 0a 24 74 68 69 73 2d 3e 6c 61 73 74 43 61 63 68 65 57 72 69 74 65 73 5b 24 70 61 63 6b 61 67 65 .$this->lastCacheWrites[$package
527c0 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 63 61 63 68 65 4b 65 79 3b 0a 24 74 68 69 73 2d ->getName()].=.$cacheKey;.$this-
527e0 3e 63 61 63 68 65 2d 3e 63 6f 70 79 46 72 6f 6d 28 24 63 61 63 68 65 4b 65 79 2c 20 24 66 69 6c >cache->copyFrom($cacheKey,.$fil
52800 65 4e 61 6d 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 eName);.}.}.else.{.$this->io->wr
52820 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 4c 6f 61 64 69 6e 67 20 66 72 6f 6d 20 63 61 63 68 65 iteError('....Loading.from.cache
52840 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 4e 61 6d ');.}..if.(!file_exists($fileNam
52860 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 e)).{.throw.new.\UnexpectedValue
52880 45 78 63 65 70 74 69 6f 6e 28 24 75 72 6c 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 73 61 Exception($url.'.could.not.be.sa
528a0 76 65 64 20 74 6f 20 27 2e 24 66 69 6c 65 4e 61 6d 65 2e 27 2c 20 6d 61 6b 65 20 73 75 72 65 20 ved.to.'.$fileName.',.make.sure.
528c0 74 68 65 27 0a 2e 27 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 77 72 69 74 61 62 6c 65 20 61 6e the'..'.directory.is.writable.an
528e0 64 20 79 6f 75 20 68 61 76 65 20 69 6e 74 65 72 6e 65 74 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 d.you.have.internet.connectivity
52900 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 63 68 65 63 6b 73 75 6d 20 26 26 20 68 61 73 68 5f 66 69 6c ');.}..if.($checksum.&&.hash_fil
52920 65 28 27 73 68 61 31 27 2c 20 24 66 69 6c 65 4e 61 6d 65 29 20 21 3d 3d 20 24 63 68 65 63 6b 73 e('sha1',.$fileName).!==.$checks
52940 75 6d 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 um).{.throw.new.\UnexpectedValue
52960 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 63 68 65 63 6b 73 75 6d 20 76 65 72 69 66 69 63 61 Exception('The.checksum.verifica
52980 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 69 6c 65 20 66 61 69 6c 65 64 20 28 64 6f 77 6e 6c 6f 61 tion.of.the.file.failed.(downloa
529a0 64 65 64 20 66 72 6f 6d 20 27 2e 24 75 72 6c 2e 27 29 27 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 ded.from.'.$url.')');.}.}.catch.
529c0 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 (\Exception.$e).{...$this->files
529e0 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 24 ystem->removeDirectory($path);.$
52a00 74 68 69 73 2d 3e 63 6c 65 61 72 4c 61 73 74 43 61 63 68 65 57 72 69 74 65 28 24 70 61 63 6b 61 this->clearLastCacheWrite($packa
52a20 67 65 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 4e 61 ge);.throw.$e;.}..return.$fileNa
52a40 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 75 74 me;.}.....public.function.setOut
52a60 70 75 74 50 72 6f 67 72 65 73 73 28 24 6f 75 74 70 75 74 50 72 6f 67 72 65 73 73 29 0a 7b 0a 24 putProgress($outputProgress).{.$
52a80 74 68 69 73 2d 3e 6f 75 74 70 75 74 50 72 6f 67 72 65 73 73 20 3d 20 24 6f 75 74 70 75 74 50 72 this->outputProgress.=.$outputPr
52aa0 6f 67 72 65 73 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 ogress;..return.$this;.}..protec
52ac0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 72 4c 61 73 74 43 61 63 68 65 57 72 69 74 65 ted.function.clearLastCacheWrite
52ae0 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 (PackageInterface.$package).{.if
52b00 20 28 24 74 68 69 73 2d 3e 63 61 63 68 65 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6c .($this->cache.&&.isset($this->l
52b20 61 73 74 43 61 63 68 65 57 72 69 74 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 astCacheWrites[$package->getName
52b40 28 29 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 6d 6f 76 65 28 24 74 68 ()])).{.$this->cache->remove($th
52b60 69 73 2d 3e 6c 61 73 74 43 61 63 68 65 57 72 69 74 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 is->lastCacheWrites[$package->ge
52b80 74 4e 61 6d 65 28 29 5d 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 6c 61 73 74 43 61 63 68 tName()]);.unset($this->lastCach
52ba0 65 57 72 69 74 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 3b 0a 7d eWrites[$package->getName()]);.}
52bc0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 50 61 .}.....public.function.update(Pa
52be0 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 ckageInterface.$initial,.Package
52c00 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 0a 7b 0a 24 74 68 69 Interface.$target,.$path).{.$thi
52c20 73 2d 3e 72 65 6d 6f 76 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 70 61 74 68 29 3b 0a 24 74 68 69 s->remove($initial,.$path);.$thi
52c40 73 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a s->download($target,.$path);.}..
52c60 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 50 61 63 6b 61 67 ...public.function.remove(Packag
52c80 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 74 eInterface.$package,.$path).{.$t
52ca0 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 2d 20 52 65 6d 6f 76 69 6e his->io->writeError("..-.Removin
52cc0 67 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 g.<info>"...$package->getName().
52ce0 2e 20 22 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 70 61 63 6b 61 67 .."</info>.(<comment>"...$packag
52d00 65 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 22 3c 2f 63 e->getFullPrettyVersion()..."</c
52d20 6f 6d 6d 65 6e 74 3e 29 22 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 omment>)");.if.(!$this->filesyst
52d40 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 29 20 7b 0a 74 68 em->removeDirectory($path)).{.th
52d60 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 row.new.\RuntimeException('Could
52d80 20 6e 6f 74 20 63 6f 6d 70 6c 65 74 65 6c 79 20 64 65 6c 65 74 65 20 27 2e 24 70 61 74 68 2e 27 .not.completely.delete.'.$path.'
52da0 2c 20 61 62 6f 72 74 69 6e 67 2e 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 ,.aborting.');.}.}.........prote
52dc0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 4e 61 6d 65 28 50 61 63 6b 61 67 cted.function.getFileName(Packag
52de0 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 72 65 eInterface.$package,.$path).{.re
52e00 74 75 72 6e 20 24 70 61 74 68 2e 27 2f 27 2e 70 61 74 68 69 6e 66 6f 28 70 61 72 73 65 5f 75 72 turn.$path.'/'.pathinfo(parse_ur
52e20 6c 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 2c 20 50 48 50 5f 55 52 l($package->getDistUrl(),.PHP_UR
52e40 4c 5f 50 41 54 48 29 2c 20 50 41 54 48 49 4e 46 4f 5f 42 41 53 45 4e 41 4d 45 29 3b 0a 7d 0a 0a L_PATH),.PATHINFO_BASENAME);.}..
52e60 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 ........protected.function.proce
52e80 73 73 55 72 6c 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c ssUrl(PackageInterface.$package,
52ea0 20 24 75 72 6c 29 0a 7b 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 .$url).{.if.(!extension_loaded('
52ec0 6f 70 65 6e 73 73 6c 27 29 20 26 26 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 75 72 6c 2c 20 openssl').&&.0.===.strpos($url,.
52ee0 27 68 74 74 70 73 3a 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 'https:')).{.throw.new.\RuntimeE
52f00 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 65 6e 61 62 6c 65 20 74 68 65 20 6f 70 xception('You.must.enable.the.op
52f20 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 66 69 6c 65 enssl.extension.to.download.file
52f40 73 20 76 69 61 20 68 74 74 70 73 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 75 72 6c 3b 0a 7d s.via.https');.}..return.$url;.}
52f60 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 61 63 68 65 4b 65 79 28 50 ..private.function.getCacheKey(P
52f80 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 63 65 ackageInterface.$package,.$proce
52fa0 73 73 65 64 55 72 6c 29 0a 7b 0a 0a 20 0a 20 0a 20 0a 20 24 63 61 63 68 65 4b 65 79 20 3d 20 73 ssedUrl).{.........$cacheKey.=.s
52fc0 68 61 31 28 24 70 72 6f 63 65 73 73 65 64 55 72 6c 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 ha1($processedUrl);..return.$pac
52fe0 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 2f 27 2e 24 63 61 63 68 65 4b 65 79 2e 27 2e kage->getName().'/'.$cacheKey.'.
53000 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 7d 0a 7d 0a 3c '.$package->getDistType();.}.}.<
53020 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 ?php............namespace.Compos
53040 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 73 er\Downloader;.......class.Files
53060 79 73 74 65 6d 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 45 78 63 65 70 74 69 6f ystemException.extends.\Exceptio
53080 6e 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 n.{.public.function.__construct(
530a0 24 6d 65 73 73 61 67 65 20 3d 20 27 27 2c 20 24 63 6f 64 65 20 3d 20 30 2c 20 5c 45 78 63 65 70 $message.=.'',.$code.=.0,.\Excep
530c0 74 69 6f 6e 20 24 70 72 65 76 69 6f 75 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a tion.$previous.=.null).{.parent:
530e0 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 22 46 69 6c 65 73 79 73 74 65 6d 20 65 78 63 65 70 74 69 :__construct("Filesystem.excepti
53100 6f 6e 3a 20 5c 6e 22 2e 24 6d 65 73 73 61 67 65 2c 20 24 63 6f 64 65 2c 20 24 70 72 65 76 69 6f on:.\n".$message,.$code,.$previo
53120 75 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 us);.}.}.<?php............namesp
53140 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f ace.Composer\Downloader;..use.Co
53160 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b mposer\Package\PackageInterface;
53180 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 47 69 74 20 61 73 20 47 69 74 55 74 69 .use.Composer\Util\Git.as.GitUti
531a0 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 l;.use.Composer\Util\Platform;.u
531c0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 se.Composer\Util\ProcessExecutor
531e0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 ;.use.Composer\IO\IOInterface;.u
53200 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 se.Composer\Util\Filesystem;.use
53220 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 44 .Composer\Config;.....class.GitD
53240 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 20 ownloader.extends.VcsDownloader.
53260 69 6d 70 6c 65 6d 65 6e 74 73 20 44 76 63 73 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 implements.DvcsDownloaderInterfa
53280 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 68 61 73 53 74 61 73 68 65 64 43 68 61 6e 67 65 73 20 ce.{.private.$hasStashedChanges.
532a0 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 68 61 73 44 69 73 63 61 72 64 65 64 43 68 =.false;.private.$hasDiscardedCh
532c0 61 6e 67 65 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 67 69 74 55 74 69 6c 3b anges.=.false;.private.$gitUtil;
532e0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f ..public.function.__construct(IO
53300 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 50 Interface.$io,.Config.$config,.P
53320 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 2c 20 rocessExecutor.$process.=.null,.
53340 46 69 6c 65 73 79 73 74 65 6d 20 24 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a Filesystem.$fs.=.null).{.parent:
53360 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 70 72 6f 63 :__construct($io,.$config,.$proc
53380 65 73 73 2c 20 24 66 73 29 3b 0a 24 74 68 69 73 2d 3e 67 69 74 55 74 69 6c 20 3d 20 6e 65 77 20 ess,.$fs);.$this->gitUtil.=.new.
533a0 47 69 74 55 74 69 6c 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 GitUtil($this->io,.$this->config
533c0 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 ,.$this->process,.$this->filesys
533e0 74 65 6d 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 6f tem);.}.....public.function.doDo
53400 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 wnload(PackageInterface.$package
53420 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 47 69 74 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 ,.$path,.$url).{.GitUtil::cleanE
53440 6e 76 28 29 3b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 nv();.$path.=.$this->normalizePa
53460 74 68 28 24 70 61 74 68 29 3b 0a 0a 24 72 65 66 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 th($path);..$ref.=.$package->get
53480 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 24 66 6c 61 67 20 3d 20 50 6c 61 74 66 SourceReference();.$flag.=.Platf
534a0 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 20 3f 20 27 2f 44 20 27 20 3a 20 27 27 3b 0a 24 orm::isWindows().?.'/D.'.:.'';.$
534c0 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 69 74 20 63 6c 6f 6e 65 20 2d 2d 6e 6f 2d 63 68 65 63 6b 6f command.=.'git.clone.--no-checko
534e0 75 74 20 25 73 20 25 73 20 26 26 20 63 64 20 27 2e 24 66 6c 61 67 2e 27 25 32 24 73 20 26 26 20 ut.%s.%s.&&.cd.'.$flag.'%2$s.&&.
53500 67 69 74 20 72 65 6d 6f 74 65 20 61 64 64 20 63 6f 6d 70 6f 73 65 72 20 25 31 24 73 20 26 26 20 git.remote.add.composer.%1$s.&&.
53520 67 69 74 20 66 65 74 63 68 20 63 6f 6d 70 6f 73 65 72 27 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e git.fetch.composer';.$this->io->
53540 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 20 20 43 6c 6f 6e 69 6e 67 20 22 2e 24 72 65 66 29 3b writeError("....Cloning.".$ref);
53560 0a 0a 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 ..$commandCallable.=.function.($
53580 75 72 6c 29 20 75 73 65 20 28 24 72 65 66 2c 20 24 70 61 74 68 2c 20 24 63 6f 6d 6d 61 6e 64 29 url).use.($ref,.$path,.$command)
535a0 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 24 63 6f 6d 6d 61 6e 64 2c 20 50 72 6f 63 .{.return.sprintf($command,.Proc
535c0 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 2c 20 50 72 6f 63 65 essExecutor::escape($url),.Proce
535e0 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 70 61 74 68 29 2c 20 50 72 6f 63 65 ssExecutor::escape($path),.Proce
53600 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 72 65 66 29 29 3b 0a 7d 3b 0a 0a 24 ssExecutor::escape($ref));.};..$
53620 74 68 69 73 2d 3e 67 69 74 55 74 69 6c 2d 3e 72 75 6e 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 this->gitUtil->runCommand($comma
53640 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 2c 20 74 72 75 65 29 3b 0a ndCallable,.$url,.$path,.true);.
53660 69 66 20 28 24 75 72 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 if.($url.!==.$package->getSource
53680 55 72 6c 28 29 29 20 7b 0a 24 75 72 6c 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 Url()).{.$url.=.$package->getSou
536a0 72 63 65 55 72 6c 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 rceUrl();.$this->process->execut
536c0 65 28 73 70 72 69 6e 74 66 28 27 67 69 74 20 72 65 6d 6f 74 65 20 73 65 74 2d 75 72 6c 20 6f 72 e(sprintf('git.remote.set-url.or
536e0 69 67 69 6e 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 igin.%s',.ProcessExecutor::escap
53700 65 28 24 75 72 6c 29 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 24 74 68 e($url)),.$output,.$path);.}.$th
53720 69 73 2d 3e 73 65 74 50 75 73 68 55 72 6c 28 24 70 61 74 68 2c 20 24 75 72 6c 29 3b 0a 0a 69 66 is->setPushUrl($path,.$url);..if
53740 20 28 24 6e 65 77 52 65 66 20 3d 20 24 74 68 69 73 2d 3e 75 70 64 61 74 65 54 6f 43 6f 6d 6d 69 .($newRef.=.$this->updateToCommi
53760 74 28 24 70 61 74 68 2c 20 24 72 65 66 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 t($path,.$ref,.$package->getPret
53780 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 6c 65 61 73 tyVersion(),.$package->getReleas
537a0 65 44 61 74 65 28 29 29 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 eDate())).{.if.($package->getDis
537c0 74 52 65 66 65 72 65 6e 63 65 28 29 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f tReference().===.$package->getSo
537e0 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 urceReference()).{.$package->set
53800 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 24 6e 65 77 52 65 66 29 3b 0a 7d 0a 24 70 61 63 6b 61 DistReference($newRef);.}.$packa
53820 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 24 6e 65 77 52 65 66 29 3b ge->setSourceReference($newRef);
53840 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 55 70 64 61 74 .}.}.....public.function.doUpdat
53860 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 e(PackageInterface.$initial,.Pac
53880 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 2c 20 24 75 kageInterface.$target,.$path,.$u
538a0 72 6c 29 0a 7b 0a 47 69 74 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 69 66 20 28 21 rl).{.GitUtil::cleanEnv();.if.(!
538c0 24 74 68 69 73 2d 3e 68 61 73 4d 65 74 61 64 61 74 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 $this->hasMetadataRepository($pa
538e0 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 th)).{.throw.new.\RuntimeExcepti
53900 6f 6e 28 27 54 68 65 20 2e 67 69 74 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 6d 69 73 73 69 6e on('The..git.directory.is.missin
53920 67 20 66 72 6f 6d 20 27 2e 24 70 61 74 68 2e 27 2c 20 73 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 g.from.'.$path.',.see.https://ge
53940 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 63 6f 6d 6d 69 74 2d 64 65 70 73 20 66 6f 72 20 6d 6f tcomposer.org/commit-deps.for.mo
53960 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 72 65 66 20 3d 20 24 74 61 72 re.information');.}..$ref.=.$tar
53980 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 24 74 68 69 73 get->getSourceReference();.$this
539a0 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 20 20 43 68 65 63 6b 69 6e 67 20 6f ->io->writeError("....Checking.o
539c0 75 74 20 22 2e 24 72 65 66 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 69 74 20 72 65 6d 6f ut.".$ref);.$command.=.'git.remo
539e0 74 65 20 73 65 74 2d 75 72 6c 20 63 6f 6d 70 6f 73 65 72 20 25 73 20 26 26 20 67 69 74 20 66 65 te.set-url.composer.%s.&&.git.fe
53a00 74 63 68 20 63 6f 6d 70 6f 73 65 72 20 26 26 20 67 69 74 20 66 65 74 63 68 20 2d 2d 74 61 67 73 tch.composer.&&.git.fetch.--tags
53a20 20 63 6f 6d 70 6f 73 65 72 27 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 20 3d 20 .composer';..$commandCallable.=.
53a40 66 75 6e 63 74 69 6f 6e 20 28 24 75 72 6c 29 20 75 73 65 20 28 24 63 6f 6d 6d 61 6e 64 29 20 7b function.($url).use.($command).{
53a60 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 24 63 6f 6d 6d 61 6e 64 2c 20 50 72 6f 63 65 73 .return.sprintf($command,.Proces
53a80 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 29 3b 0a 7d 3b 0a 0a 24 74 sExecutor::escape($url));.};..$t
53aa0 68 69 73 2d 3e 67 69 74 55 74 69 6c 2d 3e 72 75 6e 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e his->gitUtil->runCommand($comman
53ac0 64 43 61 6c 6c 61 62 6c 65 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 29 3b 0a 69 66 20 28 24 6e 65 dCallable,.$url,.$path);.if.($ne
53ae0 77 52 65 66 20 3d 20 24 74 68 69 73 2d 3e 75 70 64 61 74 65 54 6f 43 6f 6d 6d 69 74 28 24 70 61 wRef.=.$this->updateToCommit($pa
53b00 74 68 2c 20 24 72 65 66 2c 20 24 74 61 72 67 65 74 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 th,.$ref,.$target->getPrettyVers
53b20 69 6f 6e 28 29 2c 20 24 74 61 72 67 65 74 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 ion(),.$target->getReleaseDate()
53b40 29 29 20 7b 0a 69 66 20 28 24 74 61 72 67 65 74 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e )).{.if.($target->getDistReferen
53b60 63 65 28 29 20 3d 3d 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 ce().===.$target->getSourceRefer
53b80 65 6e 63 65 28 29 29 20 7b 0a 24 74 61 72 67 65 74 2d 3e 73 65 74 44 69 73 74 52 65 66 65 72 65 ence()).{.$target->setDistRefere
53ba0 6e 63 65 28 24 6e 65 77 52 65 66 29 3b 0a 7d 0a 24 74 61 72 67 65 74 2d 3e 73 65 74 53 6f 75 72 nce($newRef);.}.$target->setSour
53bc0 63 65 52 65 66 65 72 65 6e 63 65 28 24 6e 65 77 52 65 66 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 ceReference($newRef);.}.}.....pu
53be0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 61 6c 43 68 61 6e 67 65 73 28 50 61 blic.function.getLocalChanges(Pa
53c00 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a ckageInterface.$package,.$path).
53c20 7b 0a 47 69 74 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 69 66 20 28 21 24 74 68 69 {.GitUtil::cleanEnv();.if.(!$thi
53c40 73 2d 3e 68 61 73 4d 65 74 61 64 61 74 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 68 29 29 s->hasMetadataRepository($path))
53c60 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 69 74 20 73 74 .{.return;.}..$command.=.'git.st
53c80 61 74 75 73 20 2d 2d 70 6f 72 63 65 6c 61 69 6e 20 2d 2d 75 6e 74 72 61 63 6b 65 64 2d 66 69 6c atus.--porcelain.--untracked-fil
53ca0 65 73 3d 6e 6f 27 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 es=no';.if.(0.!==.$this->process
53cc0 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 ->execute($command,.$output,.$pa
53ce0 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 th)).{.throw.new.\RuntimeExcepti
53d00 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 on('Failed.to.execute.'...$comma
53d20 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 nd..."\n\n"...$this->process->ge
53d40 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 69 6d 28 tErrorOutput());.}..return.trim(
53d60 24 6f 75 74 70 75 74 29 20 3f 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 $output).?:.null;.}..public.func
53d80 74 69 6f 6e 20 67 65 74 55 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 28 50 61 63 6b 61 67 65 49 tion.getUnpushedChanges(PackageI
53da0 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 47 69 74 55 nterface.$package,.$path).{.GitU
53dc0 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e til::cleanEnv();.$path.=.$this->
53de0 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 69 66 20 28 21 24 74 68 69 73 normalizePath($path);.if.(!$this
53e00 2d 3e 68 61 73 4d 65 74 61 64 61 74 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 68 29 29 20 ->hasMetadataRepository($path)).
53e20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 69 74 20 73 68 6f {.return;.}..$command.=.'git.sho
53e40 77 2d 72 65 66 20 2d 2d 68 65 61 64 20 2d 64 27 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 w-ref.--head.-d';.if.(0.!==.$thi
53e60 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f s->process->execute($command,.$o
53e80 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 utput,.$path)).{.throw.new.\Runt
53ea0 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 imeException('Failed.to.execute.
53ec0 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 '...$command..."\n\n"...$this->p
53ee0 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 24 72 rocess->getErrorOutput());.}..$r
53f00 65 66 73 20 3d 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 69 66 20 28 21 70 72 65 67 5f 6d efs.=.trim($output);.if.(!preg_m
53f20 61 74 63 68 28 27 7b 5e 28 5b 61 2d 66 30 2d 39 5d 2b 29 20 48 45 41 44 24 7d 6d 69 27 2c 20 24 atch('{^([a-f0-9]+).HEAD$}mi',.$
53f40 72 65 66 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 68 refs,.$match)).{...return;.}..$h
53f60 65 61 64 52 65 66 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 eadRef.=.$match[1];.if.(!preg_ma
53f80 74 63 68 5f 61 6c 6c 28 27 7b 5e 27 2e 24 68 65 61 64 52 65 66 2e 27 20 72 65 66 73 2f 68 65 61 tch_all('{^'.$headRef.'.refs/hea
53fa0 64 73 2f 28 2e 2b 29 24 7d 6d 69 27 2c 20 24 72 65 66 73 2c 20 24 6d 61 74 63 68 65 73 29 29 20 ds/(.+)$}mi',.$refs,.$matches)).
53fc0 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 24 62 72 61 6e 63 68 20 3d 20 24 6d 61 74 63 {...return;.}....$branch.=.$matc
53fe0 68 65 73 5b 31 5d 5b 30 5d 3b 0a 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 20 3d 20 6e 75 hes[1][0];.$unpushedChanges.=.nu
54000 6c 6c 3b 0a 0a 0a 20 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 3d 20 31 3b 20 24 69 2b ll;....for.($i.=.0;.$i.<=.1;.$i+
54020 2b 29 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 61 73 20 24 +).{...foreach.($matches[1].as.$
54040 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b candidate).{.if.(preg_match('{^[
54060 61 2d 66 30 2d 39 5d 2b 20 72 65 66 73 2f 72 65 6d 6f 74 65 73 2f 28 28 3f 3a 63 6f 6d 70 6f 73 a-f0-9]+.refs/remotes/((?:compos
54080 65 72 7c 6f 72 69 67 69 6e 29 2f 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 63 61 6e 64 69 64 61 er|origin)/'.preg_quote($candida
540a0 74 65 29 2e 27 29 24 7d 6d 69 27 2c 20 24 72 65 66 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 te).')$}mi',.$refs,.$match)).{.$
540c0 62 72 61 6e 63 68 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 24 72 65 6d 6f 74 65 42 72 61 6e branch.=.$candidate;.$remoteBran
540e0 63 68 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 0a 20 0a 20 ch.=.$match[1];.break;.}.}......
54100 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 72 65 6d 6f 74 65 42 72 61 6e 63 68 29 29 20 7b 0a 24 ..if.(!isset($remoteBranch)).{.$
54120 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 20 3d 20 27 42 72 61 6e 63 68 20 27 20 2e 20 24 62 unpushedChanges.=.'Branch.'...$b
54140 72 61 6e 63 68 20 2e 20 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 20 6f 6e 20 ranch...'.could.not.be.found.on.
54160 74 68 65 20 6f 72 69 67 69 6e 20 72 65 6d 6f 74 65 20 61 6e 64 20 61 70 70 65 61 72 73 20 74 6f the.origin.remote.and.appears.to
54180 20 62 65 20 75 6e 70 75 73 68 65 64 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d 6d 61 6e 64 .be.unpushed';.}.else.{.$command
541a0 20 3d 20 73 70 72 69 6e 74 66 28 27 67 69 74 20 64 69 66 66 20 2d 2d 6e 61 6d 65 2d 73 74 61 74 .=.sprintf('git.diff.--name-stat
541c0 75 73 20 25 73 2e 2e 2e 25 73 20 2d 2d 27 2c 20 24 72 65 6d 6f 74 65 42 72 61 6e 63 68 2c 20 24 us.%s...%s.--',.$remoteBranch,.$
541e0 62 72 61 6e 63 68 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 branch);.if.(0.!==.$this->proces
54200 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 s->execute($command,.$output,.$p
54220 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 ath)).{.throw.new.\RuntimeExcept
54240 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d ion('Failed.to.execute.'...$comm
54260 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 and..."\n\n"...$this->process->g
54280 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 24 75 6e 70 75 73 68 65 64 43 68 etErrorOutput());.}..$unpushedCh
542a0 61 6e 67 65 73 20 3d 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 20 3f 3a 20 6e 75 6c 6c 3b 0a 7d anges.=.trim($output).?:.null;.}
542c0 0a 0a 0a 20 0a 20 69 66 20 28 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 20 26 26 20 24 69 ......if.($unpushedChanges.&&.$i
542e0 20 3d 3d 3d 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 .===.0).{.$this->process->execut
54300 65 28 27 67 69 74 20 66 65 74 63 68 20 63 6f 6d 70 6f 73 65 72 20 26 26 20 67 69 74 20 66 65 74 e('git.fetch.composer.&&.git.fet
54320 63 68 20 6f 72 69 67 69 6e 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a ch.origin',.$output,.$path);.}..
54340 0a 20 69 66 20 28 21 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 29 20 7b 0a 62 72 65 61 6b ..if.(!$unpushedChanges).{.break
54360 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 75 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 3b 0a ;.}.}..return.$unpushedChanges;.
54380 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 43 68 }.....protected.function.cleanCh
543a0 61 6e 67 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c anges(PackageInterface.$package,
543c0 20 24 70 61 74 68 2c 20 24 75 70 64 61 74 65 29 0a 7b 0a 47 69 74 55 74 69 6c 3a 3a 63 6c 65 61 .$path,.$update).{.GitUtil::clea
543e0 6e 45 6e 76 28 29 3b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 nEnv();.$path.=.$this->normalize
54400 50 61 74 68 28 24 70 61 74 68 29 3b 0a 0a 24 75 6e 70 75 73 68 65 64 20 3d 20 24 74 68 69 73 2d Path($path);..$unpushed.=.$this-
54420 3e 67 65 74 55 6e 70 75 73 68 65 64 43 68 61 6e 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 >getUnpushedChanges($package,.$p
54440 61 74 68 29 3b 0a 69 66 20 28 24 75 6e 70 75 73 68 65 64 20 26 26 20 28 24 74 68 69 73 2d 3e 69 ath);.if.($unpushed.&&.($this->i
54460 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 20 7c 7c 20 24 74 68 69 73 2d 3e 63 6f 6e o->isInteractive().||.$this->con
54480 66 69 67 2d 3e 67 65 74 28 27 64 69 73 63 61 72 64 2d 63 68 61 6e 67 65 73 27 29 20 21 3d 3d 20 fig->get('discard-changes').!==.
544a0 74 72 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 true)).{.throw.new.\RuntimeExcep
544c0 74 69 6f 6e 28 27 53 6f 75 72 63 65 20 64 69 72 65 63 74 6f 72 79 20 27 20 2e 20 24 70 61 74 68 tion('Source.directory.'...$path
544e0 20 2e 20 27 20 68 61 73 20 75 6e 70 75 73 68 65 64 20 63 68 61 6e 67 65 73 20 6f 6e 20 74 68 65 ...'.has.unpushed.changes.on.the
54500 20 63 75 72 72 65 6e 74 20 62 72 61 6e 63 68 3a 20 27 2e 22 5c 6e 22 2e 24 75 6e 70 75 73 68 65 .current.branch:.'."\n".$unpushe
54520 64 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 63 68 61 6e 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 d);.}..if.(!$changes.=.$this->ge
54540 74 4c 6f 63 61 6c 43 68 61 6e 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 29 20 tLocalChanges($package,.$path)).
54560 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 {.return;.}..if.(!$this->io->isI
54580 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 24 64 69 73 63 61 72 64 43 68 61 6e 67 65 73 20 nteractive()).{.$discardChanges.
545a0 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 64 69 73 63 61 72 64 2d 63 68 =.$this->config->get('discard-ch
545c0 61 6e 67 65 73 27 29 3b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 64 69 73 63 61 72 64 43 68 anges');.if.(true.===.$discardCh
545e0 61 6e 67 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 73 63 61 72 64 43 68 anges).{.return.$this->discardCh
54600 61 6e 67 65 73 28 24 70 61 74 68 29 3b 0a 7d 0a 69 66 20 28 27 73 74 61 73 68 27 20 3d 3d 3d 20 anges($path);.}.if.('stash'.===.
54620 24 64 69 73 63 61 72 64 43 68 61 6e 67 65 73 29 20 7b 0a 69 66 20 28 21 24 75 70 64 61 74 65 29 $discardChanges).{.if.(!$update)
54640 20 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 63 6c 65 61 6e 43 68 61 6e 67 65 73 28 24 .{.return.parent::cleanChanges($
54660 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 70 64 61 74 65 29 3b 0a 7d 0a 0a 72 65 74 package,.$path,.$update);.}..ret
54680 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 73 68 43 68 61 6e 67 65 73 28 24 70 61 74 68 29 3b 0a urn.$this->stashChanges($path);.
546a0 7d 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 63 6c 65 61 6e 43 68 61 6e 67 65 73 28 24 }..return.parent::cleanChanges($
546c0 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 70 64 61 74 65 29 3b 0a 7d 0a 0a 24 63 68 package,.$path,.$update);.}..$ch
546e0 61 6e 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 65 6c 65 anges.=.array_map(function.($ele
54700 6d 29 20 7b 0a 72 65 74 75 72 6e 20 27 20 20 20 20 27 2e 24 65 6c 65 6d 3b 0a 7d 2c 20 70 72 65 m).{.return.'....'.$elem;.},.pre
54720 67 5f 73 70 6c 69 74 28 27 7b 5c 73 2a 5c 72 3f 5c 6e 5c 73 2a 7d 27 2c 20 24 63 68 61 6e 67 65 g_split('{\s*\r?\n\s*}',.$change
54740 73 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 s));.$this->io->writeError('....
54760 3c 65 72 72 6f 72 3e 54 68 65 20 70 61 63 6b 61 67 65 20 68 61 73 20 6d 6f 64 69 66 69 65 64 20 <error>The.package.has.modified.
54780 66 69 6c 65 73 3a 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 files:</error>');.$this->io->wri
547a0 74 65 45 72 72 6f 72 28 61 72 72 61 79 5f 73 6c 69 63 65 28 24 63 68 61 6e 67 65 73 2c 20 30 2c teError(array_slice($changes,.0,
547c0 20 31 30 29 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 63 68 61 6e 67 65 73 29 20 3e 20 31 30 29 .10));.if.(count($changes).>.10)
547e0 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 3c 69 .{.$this->io->writeError('....<i
54800 6e 66 6f 3e 27 2e 63 6f 75 6e 74 28 24 63 68 61 6e 67 65 73 29 20 2d 20 31 30 20 2e 20 27 20 6d nfo>'.count($changes).-.10...'.m
54820 6f 72 65 20 66 69 6c 65 73 20 6d 6f 64 69 66 69 65 64 2c 20 63 68 6f 6f 73 65 20 22 76 22 20 74 ore.files.modified,.choose."v".t
54840 6f 20 76 69 65 77 20 74 68 65 20 66 75 6c 6c 20 6c 69 73 74 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d o.view.the.full.list</info>');.}
54860 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d 3e ..while.(true).{.switch.($this->
54880 69 6f 2d 3e 61 73 6b 28 27 20 20 20 20 3c 69 6e 66 6f 3e 44 69 73 63 61 72 64 20 63 68 61 6e 67 io->ask('....<info>Discard.chang
548a0 65 73 20 5b 79 2c 6e 2c 76 2c 64 2c 27 2e 28 24 75 70 64 61 74 65 20 3f 20 27 73 2c 27 20 3a 20 es.[y,n,v,d,'.($update.?.'s,'.:.
548c0 27 27 29 2e 27 3f 5d 3f 3c 2f 69 6e 66 6f 3e 20 27 2c 20 27 3f 27 29 29 20 7b 0a 63 61 73 65 20 '').'?]?</info>.',.'?')).{.case.
548e0 27 79 27 3a 0a 24 74 68 69 73 2d 3e 64 69 73 63 61 72 64 43 68 61 6e 67 65 73 28 24 70 61 74 68 'y':.$this->discardChanges($path
54900 29 3b 0a 62 72 65 61 6b 20 32 3b 0a 0a 63 61 73 65 20 27 73 27 3a 0a 69 66 20 28 21 24 75 70 64 );.break.2;..case.'s':.if.(!$upd
54920 61 74 65 29 20 7b 0a 67 6f 74 6f 20 68 65 6c 70 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 74 61 73 ate).{.goto.help;.}..$this->stas
54940 68 43 68 61 6e 67 65 73 28 24 70 61 74 68 29 3b 0a 62 72 65 61 6b 20 32 3b 0a 0a 63 61 73 65 20 hChanges($path);.break.2;..case.
54960 27 6e 27 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 'n':.throw.new.\RuntimeException
54980 28 27 55 70 64 61 74 65 20 61 62 6f 72 74 65 64 27 29 3b 0a 0a 63 61 73 65 20 27 76 27 3a 0a 24 ('Update.aborted');..case.'v':.$
549a0 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 63 68 61 6e 67 65 73 29 3b 0a this->io->writeError($changes);.
549c0 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 64 27 3a 0a 24 74 68 69 73 2d 3e 76 69 65 77 44 69 66 break;..case.'d':.$this->viewDif
549e0 66 28 24 70 61 74 68 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 3f 27 3a 0a 64 65 66 61 f($path);.break;..case.'?':.defa
54a00 75 6c 74 3a 0a 68 65 6c 70 3a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 ult:.help:.$this->io->writeError
54a20 28 61 72 72 61 79 28 0a 27 20 20 20 20 79 20 2d 20 64 69 73 63 61 72 64 20 63 68 61 6e 67 65 73 (array(.'....y.-.discard.changes
54a40 20 61 6e 64 20 61 70 70 6c 79 20 74 68 65 20 27 2e 28 24 75 70 64 61 74 65 20 3f 20 27 75 70 64 .and.apply.the.'.($update.?.'upd
54a60 61 74 65 27 20 3a 20 27 75 6e 69 6e 73 74 61 6c 6c 27 29 2c 0a 27 20 20 20 20 6e 20 2d 20 61 62 ate'.:.'uninstall'),.'....n.-.ab
54a80 6f 72 74 20 74 68 65 20 27 2e 28 24 75 70 64 61 74 65 20 3f 20 27 75 70 64 61 74 65 27 20 3a 20 ort.the.'.($update.?.'update'.:.
54aa0 27 75 6e 69 6e 73 74 61 6c 6c 27 29 2e 27 20 61 6e 64 20 6c 65 74 20 79 6f 75 20 6d 61 6e 75 61 'uninstall').'.and.let.you.manua
54ac0 6c 6c 79 20 63 6c 65 61 6e 20 74 68 69 6e 67 73 20 75 70 27 2c 0a 27 20 20 20 20 76 20 2d 20 76 lly.clean.things.up',.'....v.-.v
54ae0 69 65 77 20 6d 6f 64 69 66 69 65 64 20 66 69 6c 65 73 27 2c 0a 27 20 20 20 20 64 20 2d 20 76 69 iew.modified.files',.'....d.-.vi
54b00 65 77 20 6c 6f 63 61 6c 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 28 64 69 66 66 29 27 2c 0a ew.local.modifications.(diff)',.
54b20 29 29 3b 0a 69 66 20 28 24 75 70 64 61 74 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 ));.if.($update).{.$this->io->wr
54b40 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 73 20 2d 20 73 74 61 73 68 20 63 68 61 6e 67 65 73 20 iteError('....s.-.stash.changes.
54b60 61 6e 64 20 74 72 79 20 74 6f 20 72 65 61 70 70 6c 79 20 74 68 65 6d 20 61 66 74 65 72 20 74 68 and.try.to.reapply.them.after.th
54b80 65 20 75 70 64 61 74 65 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 e.update');.}.$this->io->writeEr
54ba0 72 6f 72 28 27 20 20 20 20 3f 20 2d 20 70 72 69 6e 74 20 68 65 6c 70 27 29 3b 0a 62 72 65 61 6b ror('....?.-.print.help');.break
54bc0 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 ;.}.}.}.....protected.function.r
54be0 65 61 70 70 6c 79 43 68 61 6e 67 65 73 28 24 70 61 74 68 29 0a 7b 0a 24 70 61 74 68 20 3d 20 24 eapplyChanges($path).{.$path.=.$
54c00 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 69 66 20 28 this->normalizePath($path);.if.(
54c20 24 74 68 69 73 2d 3e 68 61 73 53 74 61 73 68 65 64 43 68 61 6e 67 65 73 29 20 7b 0a 24 74 68 69 $this->hasStashedChanges).{.$thi
54c40 73 2d 3e 68 61 73 53 74 61 73 68 65 64 43 68 61 6e 67 65 73 20 3d 20 66 61 6c 73 65 3b 0a 24 74 s->hasStashedChanges.=.false;.$t
54c60 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 3c 69 6e 66 6f 3e 52 his->io->writeError('....<info>R
54c80 65 2d 61 70 70 6c 79 69 6e 67 20 73 74 61 73 68 65 64 20 63 68 61 6e 67 65 73 3c 2f 69 6e 66 6f e-applying.stashed.changes</info
54ca0 3e 27 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 >');.if.(0.!==.$this->process->e
54cc0 78 65 63 75 74 65 28 27 67 69 74 20 73 74 61 73 68 20 70 6f 70 27 2c 20 24 6f 75 74 70 75 74 2c xecute('git.stash.pop',.$output,
54ce0 20 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 .$path)).{.throw.new.\RuntimeExc
54d00 65 70 74 69 6f 6e 28 22 46 61 69 6c 65 64 20 74 6f 20 61 70 70 6c 79 20 73 74 61 73 68 65 64 20 eption("Failed.to.apply.stashed.
54d20 63 68 61 6e 67 65 73 3a 5c 6e 5c 6e 22 2e 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 changes:\n\n".$this->process->ge
54d40 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 68 61 73 tErrorOutput());.}.}..$this->has
54d60 44 69 73 63 61 72 64 65 64 43 68 61 6e 67 65 73 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a DiscardedChanges.=.false;.}.....
54d80 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 .......protected.function.update
54da0 54 6f 43 6f 6d 6d 69 74 28 24 70 61 74 68 2c 20 24 72 65 66 65 72 65 6e 63 65 2c 20 24 62 72 61 ToCommit($path,.$reference,.$bra
54dc0 6e 63 68 2c 20 24 64 61 74 65 29 0a 7b 0a 24 66 6f 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 68 61 nch,.$date).{.$force.=.$this->ha
54de0 73 44 69 73 63 61 72 64 65 64 43 68 61 6e 67 65 73 20 7c 7c 20 24 74 68 69 73 2d 3e 68 61 73 53 sDiscardedChanges.||.$this->hasS
54e00 74 61 73 68 65 64 43 68 61 6e 67 65 73 20 3f 20 27 2d 66 20 27 20 3a 20 27 27 3b 0a 0a 0a 20 0a tashedChanges.?.'-f.'.:.'';.....
54e20 20 0a 20 0a 20 0a 20 24 74 65 6d 70 6c 61 74 65 20 3d 20 27 67 69 74 20 63 68 65 63 6b 6f 75 74 .......$template.=.'git.checkout
54e40 20 27 2e 24 66 6f 72 63 65 2e 27 25 73 20 2d 2d 20 26 26 20 67 69 74 20 72 65 73 65 74 20 2d 2d .'.$force.'%s.--.&&.git.reset.--
54e60 68 61 72 64 20 25 31 24 73 20 2d 2d 27 3b 0a 24 62 72 61 6e 63 68 20 3d 20 70 72 65 67 5f 72 65 hard.%1$s.--';.$branch.=.preg_re
54e80 70 6c 61 63 65 28 27 7b 28 3f 3a 5e 64 65 76 2d 7c 28 3f 3a 5c 2e 78 29 3f 2d 64 65 76 24 29 7d place('{(?:^dev-|(?:\.x)?-dev$)}
54ea0 69 27 2c 20 27 27 2c 20 24 62 72 61 6e 63 68 29 3b 0a 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 6e i',.'',.$branch);..$branches.=.n
54ec0 75 6c 6c 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 ull;.if.(0.===.$this->process->e
54ee0 78 65 63 75 74 65 28 27 67 69 74 20 62 72 61 6e 63 68 20 2d 72 27 2c 20 24 6f 75 74 70 75 74 2c xecute('git.branch.-r',.$output,
54f00 20 24 70 61 74 68 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 24 6f 75 74 70 75 74 3b 0a .$path)).{.$branches.=.$output;.
54f20 7d 0a 0a 0a 20 24 67 69 74 52 65 66 20 3d 20 24 72 65 66 65 72 65 6e 63 65 3b 0a 69 66 20 28 21 }....$gitRef.=.$reference;.if.(!
54f40 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 24 7d 27 2c 20 24 preg_match('{^[a-f0-9]{40}$}',.$
54f60 72 65 66 65 72 65 6e 63 65 29 0a 26 26 20 24 62 72 61 6e 63 68 65 73 0a 26 26 20 70 72 65 67 5f reference).&&.$branches.&&.preg_
54f80 6d 61 74 63 68 28 27 7b 5e 5c 73 2b 63 6f 6d 70 6f 73 65 72 2f 27 2e 70 72 65 67 5f 71 75 6f 74 match('{^\s+composer/'.preg_quot
54fa0 65 28 24 72 65 66 65 72 65 6e 63 65 29 2e 27 24 7d 6d 27 2c 20 24 62 72 61 6e 63 68 65 73 29 0a e($reference).'$}m',.$branches).
54fc0 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 67 69 74 20 63 68 65 63 ).{.$command.=.sprintf('git.chec
54fe0 6b 6f 75 74 20 27 2e 24 66 6f 72 63 65 2e 27 2d 42 20 25 73 20 25 73 20 2d 2d 20 26 26 20 67 69 kout.'.$force.'-B.%s.%s.--.&&.gi
55000 74 20 72 65 73 65 74 20 2d 2d 68 61 72 64 20 25 32 24 73 20 2d 2d 27 2c 20 50 72 6f 63 65 73 73 t.reset.--hard.%2$s.--',.Process
55020 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 62 72 61 6e 63 68 29 2c 20 50 72 6f 63 65 Executor::escape($branch),.Proce
55040 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 27 63 6f 6d 70 6f 73 65 72 2f 27 2e 24 ssExecutor::escape('composer/'.$
55060 72 65 66 65 72 65 6e 63 65 29 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 reference));.if.(0.===.$this->pr
55080 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 ocess->execute($command,.$output
550a0 2c 20 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 70 ,.$path)).{.return;.}.}....if.(p
550c0 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 24 7d 27 2c 20 24 72 reg_match('{^[a-f0-9]{40}$}',.$r
550e0 65 66 65 72 65 6e 63 65 29 29 20 7b 0a 0a 20 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 eference)).{...if.(!preg_match('
55100 7b 5e 5c 73 2b 63 6f 6d 70 6f 73 65 72 2f 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 62 72 61 6e {^\s+composer/'.preg_quote($bran
55120 63 68 29 2e 27 24 7d 6d 27 2c 20 24 62 72 61 6e 63 68 65 73 29 20 26 26 20 70 72 65 67 5f 6d 61 ch).'$}m',.$branches).&&.preg_ma
55140 74 63 68 28 27 7b 5e 5c 73 2b 63 6f 6d 70 6f 73 65 72 2f 76 27 2e 70 72 65 67 5f 71 75 6f 74 65 tch('{^\s+composer/v'.preg_quote
55160 28 24 62 72 61 6e 63 68 29 2e 27 24 7d 6d 27 2c 20 24 62 72 61 6e 63 68 65 73 29 29 20 7b 0a 24 ($branch).'$}m',.$branches)).{.$
55180 62 72 61 6e 63 68 20 3d 20 27 76 27 20 2e 20 24 62 72 61 6e 63 68 3b 0a 7d 0a 0a 24 63 6f 6d 6d branch.=.'v'...$branch;.}..$comm
551a0 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 67 69 74 20 63 68 65 63 6b 6f 75 74 20 25 73 20 2d and.=.sprintf('git.checkout.%s.-
551c0 2d 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 62 72 61 -',.ProcessExecutor::escape($bra
551e0 6e 63 68 29 29 3b 0a 24 66 61 6c 6c 62 61 63 6b 43 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 nch));.$fallbackCommand.=.sprint
55200 66 28 27 67 69 74 20 63 68 65 63 6b 6f 75 74 20 27 2e 24 66 6f 72 63 65 2e 27 2d 42 20 25 73 20 f('git.checkout.'.$force.'-B.%s.
55220 25 73 20 2d 2d 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 %s.--',.ProcessExecutor::escape(
55240 24 62 72 61 6e 63 68 29 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 $branch),.ProcessExecutor::escap
55260 65 28 27 63 6f 6d 70 6f 73 65 72 2f 27 2e 24 62 72 61 6e 63 68 29 29 3b 0a 69 66 20 28 30 20 3d e('composer/'.$branch));.if.(0.=
55280 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d ==.$this->process->execute($comm
552a0 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 0a 7c 7c 20 30 20 3d 3d 3d 20 24 74 and,.$output,.$path).||.0.===.$t
552c0 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 66 61 6c 6c 62 61 63 6b 43 his->process->execute($fallbackC
552e0 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 0a 29 20 7b 0a 24 63 6f 6d ommand,.$output,.$path).).{.$com
55300 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 67 69 74 20 72 65 73 65 74 20 2d 2d 68 61 72 64 mand.=.sprintf('git.reset.--hard
55320 20 25 73 20 2d 2d 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 .%s.--',.ProcessExecutor::escape
55340 28 24 72 65 66 65 72 65 6e 63 65 29 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e ($reference));.if.(0.===.$this->
55360 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 process->execute($command,.$outp
55380 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 63 6f ut,.$path)).{.return;.}.}.}..$co
553a0 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 24 74 65 6d 70 6c 61 74 65 2c 20 50 72 6f 63 65 mmand.=.sprintf($template,.Proce
553c0 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 67 69 74 52 65 66 29 29 3b 0a 69 66 ssExecutor::escape($gitRef));.if
553e0 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 .(0.===.$this->process->execute(
55400 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 72 65 74 $command,.$output,.$path)).{.ret
55420 75 72 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 urn;.}....if.(false.!==.strpos($
55440 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c this->process->getErrorOutput(),
55460 20 24 72 65 66 65 72 65 6e 63 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 .$reference)).{.$this->io->write
55480 45 72 72 6f 72 28 27 20 20 20 20 3c 77 61 72 6e 69 6e 67 3e 27 2e 24 72 65 66 65 72 65 6e 63 65 Error('....<warning>'.$reference
554a0 2e 27 20 69 73 20 67 6f 6e 65 20 28 68 69 73 74 6f 72 79 20 77 61 73 20 72 65 77 72 69 74 74 65 .'.is.gone.(history.was.rewritte
554c0 6e 3f 29 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 n?)</warning>');.}..throw.new.\R
554e0 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 untimeException('Failed.to.execu
55500 74 65 20 27 20 2e 20 47 69 74 55 74 69 6c 3a 3a 73 61 6e 69 74 69 7a 65 55 72 6c 28 24 63 6f 6d te.'...GitUtil::sanitizeUrl($com
55520 6d 61 6e 64 29 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d mand)..."\n\n"...$this->process-
55540 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 >getErrorOutput());.}..protected
55560 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 75 73 68 55 72 6c 28 24 70 61 74 68 2c 20 24 75 72 6c .function.setPushUrl($path,.$url
55580 29 0a 7b 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 68 74 74 70 73 ).{...if.(preg_match('{^(?:https
555a0 3f 7c 67 69 74 29 3a 2f 2f 27 2e 47 69 74 55 74 69 6c 3a 3a 67 65 74 47 69 74 48 75 62 44 6f 6d ?|git)://'.GitUtil::getGitHubDom
555c0 61 69 6e 73 52 65 67 65 78 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 2e 27 2f 28 5b 5e 2f 5d ainsRegex($this->config).'/([^/]
555e0 2b 29 2f 28 5b 5e 2f 5d 2b 3f 29 28 3f 3a 5c 2e 67 69 74 29 3f 24 7d 27 2c 20 24 75 72 6c 2c 20 +)/([^/]+?)(?:\.git)?$}',.$url,.
55600 24 6d 61 74 63 68 29 29 20 7b 0a 24 70 72 6f 74 6f 63 6f 6c 73 20 3d 20 24 74 68 69 73 2d 3e 63 $match)).{.$protocols.=.$this->c
55620 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 27 29 3b 0a onfig->get('github-protocols');.
55640 24 70 75 73 68 55 72 6c 20 3d 20 27 67 69 74 40 27 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 3a 27 2e $pushUrl.=.'git@'.$match[1].':'.
55660 24 6d 61 74 63 68 5b 32 5d 2e 27 2f 27 2e 24 6d 61 74 63 68 5b 33 5d 2e 27 2e 67 69 74 27 3b 0a $match[2].'/'.$match[3].'.git';.
55680 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 27 73 73 68 27 2c 20 24 70 72 6f 74 6f 63 6f 6c 73 2c if.(!in_array('ssh',.$protocols,
556a0 20 74 72 75 65 29 29 20 7b 0a 24 70 75 73 68 55 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 27 20 .true)).{.$pushUrl.=.'https://'.
556c0 2e 20 24 6d 61 74 63 68 5b 31 5d 20 2e 20 27 2f 27 2e 24 6d 61 74 63 68 5b 32 5d 2e 27 2f 27 2e ..$match[1]...'/'.$match[2].'/'.
556e0 24 6d 61 74 63 68 5b 33 5d 2e 27 2e 67 69 74 27 3b 0a 7d 0a 24 63 6d 64 20 3d 20 73 70 72 69 6e $match[3].'.git';.}.$cmd.=.sprin
55700 74 66 28 27 67 69 74 20 72 65 6d 6f 74 65 20 73 65 74 2d 75 72 6c 20 2d 2d 70 75 73 68 20 6f 72 tf('git.remote.set-url.--push.or
55720 69 67 69 6e 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 igin.%s',.ProcessExecutor::escap
55740 65 28 24 70 75 73 68 55 72 6c 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 e($pushUrl));.$this->process->ex
55760 65 63 75 74 65 28 24 63 6d 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 2c 20 24 70 61 74 ecute($cmd,.$ignoredOutput,.$pat
55780 68 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 h);.}.}.....protected.function.g
557a0 65 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 24 74 6f etCommitLogs($fromReference,.$to
557c0 52 65 66 65 72 65 6e 63 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 Reference,.$path).{.$path.=.$thi
557e0 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 24 63 6f 6d 6d 61 6e s->normalizePath($path);.$comman
55800 64 20 3d 20 73 70 72 69 6e 74 66 28 27 67 69 74 20 6c 6f 67 20 25 73 2e 2e 25 73 20 2d 2d 70 72 d.=.sprintf('git.log.%s..%s.--pr
55820 65 74 74 79 3d 66 6f 72 6d 61 74 3a 22 25 25 68 20 2d 20 25 25 61 6e 3a 20 25 25 73 22 27 2c 20 etty=format:"%%h.-.%%an:.%%s"',.
55840 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 24 74 6f 52 65 66 65 72 65 6e 63 65 29 3b 0a 0a $fromReference,.$toReference);..
55860 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 if.(0.!==.$this->process->execut
55880 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 e($command,.$output,.$path)).{.t
558a0 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c hrow.new.\RuntimeException('Fail
558c0 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e ed.to.execute.'...$command..."\n
558e0 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 \n"...$this->process->getErrorOu
55900 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 0a 0a tput());.}..return.$output;.}...
55920 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 63 61 72 64 43 68 61 ...protected.function.discardCha
55940 6e 67 65 73 28 24 70 61 74 68 29 0a 7b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 nges($path).{.$path.=.$this->nor
55960 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 malizePath($path);.if.(0.!==.$th
55980 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 72 65 73 65 74 20 is->process->execute('git.reset.
559a0 2d 2d 68 61 72 64 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f --hard',.$output,.$path)).{.thro
559c0 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 22 43 6f 75 6c 64 20 6e w.new.\RuntimeException("Could.n
559e0 6f 74 20 72 65 73 65 74 20 63 68 61 6e 67 65 73 5c 6e 5c 6e 3a 22 2e 24 74 68 69 73 2d 3e 70 72 ot.reset.changes\n\n:".$this->pr
55a00 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 24 74 68 ocess->getErrorOutput());.}..$th
55a20 69 73 2d 3e 68 61 73 44 69 73 63 61 72 64 65 64 43 68 61 6e 67 65 73 20 3d 20 74 72 75 65 3b 0a is->hasDiscardedChanges.=.true;.
55a40 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 74 61 73 68 43 }......protected.function.stashC
55a60 68 61 6e 67 65 73 28 24 70 61 74 68 29 0a 7b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 6e hanges($path).{.$path.=.$this->n
55a80 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 ormalizePath($path);.if.(0.!==.$
55aa0 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 73 74 61 73 this->process->execute('git.stas
55ac0 68 20 2d 2d 69 6e 63 6c 75 64 65 2d 75 6e 74 72 61 63 6b 65 64 27 2c 20 24 6f 75 74 70 75 74 2c h.--include-untracked',.$output,
55ae0 20 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 .$path)).{.throw.new.\RuntimeExc
55b00 65 70 74 69 6f 6e 28 22 43 6f 75 6c 64 20 6e 6f 74 20 73 74 61 73 68 20 63 68 61 6e 67 65 73 5c eption("Could.not.stash.changes\
55b20 6e 5c 6e 3a 22 2e 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 n\n:".$this->process->getErrorOu
55b40 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 68 61 73 53 74 61 73 68 65 64 43 68 61 tput());.}..$this->hasStashedCha
55b60 6e 67 65 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 nges.=.true;.}......protected.fu
55b80 6e 63 74 69 6f 6e 20 76 69 65 77 44 69 66 66 28 24 70 61 74 68 29 0a 7b 0a 24 70 61 74 68 20 3d nction.viewDiff($path).{.$path.=
55ba0 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 69 66 .$this->normalizePath($path);.if
55bc0 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 .(0.!==.$this->process->execute(
55be0 27 67 69 74 20 64 69 66 66 20 48 45 41 44 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 'git.diff.HEAD',.$output,.$path)
55c00 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 ).{.throw.new.\RuntimeException(
55c20 22 43 6f 75 6c 64 20 6e 6f 74 20 76 69 65 77 20 64 69 66 66 5c 6e 5c 6e 3a 22 2e 24 74 68 69 73 "Could.not.view.diff\n\n:".$this
55c40 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a ->process->getErrorOutput());.}.
55c60 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 6f 75 74 70 75 74 29 3b .$this->io->writeError($output);
55c80 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 .}..protected.function.normalize
55ca0 50 61 74 68 28 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 Path($path).{.if.(Platform::isWi
55cc0 6e 64 6f 77 73 28 29 20 26 26 20 73 74 72 6c 65 6e 28 24 70 61 74 68 29 20 3e 20 30 29 20 7b 0a ndows().&&.strlen($path).>.0).{.
55ce0 24 62 61 73 65 50 61 74 68 20 3d 20 24 70 61 74 68 3b 0a 24 72 65 6d 6f 76 65 64 20 3d 20 61 72 $basePath.=.$path;.$removed.=.ar
55d00 72 61 79 28 29 3b 0a 0a 77 68 69 6c 65 20 28 21 69 73 5f 64 69 72 28 24 62 61 73 65 50 61 74 68 ray();..while.(!is_dir($basePath
55d20 29 20 26 26 20 24 62 61 73 65 50 61 74 68 20 21 3d 3d 20 27 5c 5c 27 29 20 7b 0a 61 72 72 61 79 ).&&.$basePath.!==.'\\').{.array
55d40 5f 75 6e 73 68 69 66 74 28 24 72 65 6d 6f 76 65 64 2c 20 62 61 73 65 6e 61 6d 65 28 24 62 61 73 _unshift($removed,.basename($bas
55d60 65 50 61 74 68 29 29 3b 0a 24 62 61 73 65 50 61 74 68 20 3d 20 64 69 72 6e 61 6d 65 28 24 62 61 ePath));.$basePath.=.dirname($ba
55d80 73 65 50 61 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 24 62 61 73 65 50 61 74 68 20 3d 3d 3d 20 27 5c sePath);.}..if.($basePath.===.'\
55da0 5c 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 74 68 3b 0a 7d 0a 0a 24 70 61 74 68 20 3d 20 72 \').{.return.$path;.}..$path.=.r
55dc0 74 72 69 6d 28 72 65 61 6c 70 61 74 68 28 24 62 61 73 65 50 61 74 68 29 20 2e 20 27 2f 27 20 2e trim(realpath($basePath)...'/'..
55de0 20 69 6d 70 6c 6f 64 65 28 27 2f 27 2c 20 24 72 65 6d 6f 76 65 64 29 2c 20 27 2f 27 29 3b 0a 7d .implode('/',.$removed),.'/');.}
55e00 0a 0a 72 65 74 75 72 6e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 ..return.$path;.}.....protected.
55e20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4d 65 74 61 64 61 74 61 52 65 70 6f 73 69 74 6f 72 79 28 24 function.hasMetadataRepository($
55e40 70 61 74 68 29 0a 7b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 path).{.$path.=.$this->normalize
55e60 50 61 74 68 28 24 70 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 5f 64 69 72 28 24 70 61 74 Path($path);..return.is_dir($pat
55e80 68 2e 27 2f 2e 67 69 74 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a h.'/.git');.}.}.<?php...........
55ea0 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a .namespace.Composer\Downloader;.
55ec0 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 .use.Composer\Config;.use.Compos
55ee0 65 72 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 er\Cache;.use.Composer\EventDisp
55f00 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 atcher\EventDispatcher;.use.Comp
55f20 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 oser\Package\PackageInterface;.u
55f40 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 43 se.Composer\Util\Platform;.use.C
55f60 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 omposer\Util\ProcessExecutor;.us
55f80 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d e.Composer\Util\RemoteFilesystem
55fa0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a ;.use.Composer\IO\IOInterface;..
55fc0 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 7a 69 70 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 .....class.GzipDownloader.extend
55fe0 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 s.ArchiveDownloader.{.protected.
56000 24 70 72 6f 63 65 73 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e $process;..public.function.__con
56020 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 struct(IOInterface.$io,.Config.$
56040 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 24 65 76 65 6e 74 44 69 config,.EventDispatcher.$eventDi
56060 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 43 61 63 68 65 20 24 63 61 63 68 65 20 3d 20 spatcher.=.null,.Cache.$cache.=.
56080 6e 75 6c 6c 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 20 3d null,.ProcessExecutor.$process.=
560a0 20 6e 75 6c 6c 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e .null,.RemoteFilesystem.$rfs.=.n
560c0 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 ull).{.$this->process.=.$process
560e0 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 70 61 .?:.new.ProcessExecutor($io);.pa
56100 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 rent::__construct($io,.$config,.
56120 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 63 61 63 68 65 2c 20 24 72 66 73 29 3b $eventDispatcher,.$cache,.$rfs);
56140 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 28 24 .}..protected.function.extract($
56160 66 69 6c 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 74 61 72 67 65 74 46 69 6c 65 70 61 74 68 20 3d file,.$path).{.$targetFilepath.=
56180 20 24 70 61 74 68 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 62 .$path...DIRECTORY_SEPARATOR...b
561a0 61 73 65 6e 61 6d 65 28 73 75 62 73 74 72 28 24 66 69 6c 65 2c 20 30 2c 20 2d 33 29 29 3b 0a 0a asename(substr($file,.0,.-3));..
561c0 0a 20 69 66 20 28 21 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a ..if.(!Platform::isWindows()).{.
561e0 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 7a 69 70 20 2d 63 64 20 27 20 2e 20 50 72 6f 63 65 73 73 $command.=.'gzip.-cd.'...Process
56200 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 66 69 6c 65 29 20 2e 20 27 20 3e 20 27 20 Executor::escape($file)...'.>.'.
56220 2e 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 74 61 72 67 65 ..ProcessExecutor::escape($targe
56240 74 46 69 6c 65 70 61 74 68 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 tFilepath);..if.(0.===.$this->pr
56260 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 67 6e 6f 72 65 ocess->execute($command,.$ignore
56280 64 4f 75 74 70 75 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 65 78 74 65 6e dOutput)).{.return;.}..if.(exten
562a0 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 7a 6c 69 62 27 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e sion_loaded('zlib')).{...$this->
562c0 65 78 74 72 61 63 74 55 73 69 6e 67 45 78 74 28 24 66 69 6c 65 2c 20 24 74 61 72 67 65 74 46 69 extractUsingExt($file,.$targetFi
562e0 6c 65 70 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 45 72 72 lepath);..return;.}..$processErr
56300 6f 72 20 3d 20 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d or.=.'Failed.to.execute.'...$com
56320 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e mand..."\n\n"...$this->process->
56340 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e getErrorOutput();.throw.new.\Run
56360 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 70 72 6f 63 65 73 73 45 72 72 6f 72 29 3b 0a 7d 0a timeException($processError);.}.
56380 0a 0a 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 55 73 69 6e 67 45 78 74 28 24 66 69 6c 65 2c ...$this->extractUsingExt($file,
563a0 20 24 74 61 72 67 65 74 46 69 6c 65 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 .$targetFilepath);.}.....protect
563c0 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 4e 61 6d 65 28 50 61 63 6b 61 67 65 49 ed.function.getFileName(PackageI
563e0 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 nterface.$package,.$path).{.retu
56400 72 6e 20 24 70 61 74 68 2e 27 2f 27 2e 70 61 74 68 69 6e 66 6f 28 70 61 72 73 65 5f 75 72 6c 28 rn.$path.'/'.pathinfo(parse_url(
56420 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 2c 20 50 48 50 5f 55 52 4c 5f $package->getDistUrl(),.PHP_URL_
56440 50 41 54 48 29 2c 20 50 41 54 48 49 4e 46 4f 5f 42 41 53 45 4e 41 4d 45 29 3b 0a 7d 0a 0a 70 72 PATH),.PATHINFO_BASENAME);.}..pr
56460 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 55 73 69 6e 67 45 78 74 28 24 ivate.function.extractUsingExt($
56480 66 69 6c 65 2c 20 24 74 61 72 67 65 74 46 69 6c 65 70 61 74 68 29 0a 7b 0a 24 61 72 63 68 69 76 file,.$targetFilepath).{.$archiv
564a0 65 46 69 6c 65 20 3d 20 67 7a 6f 70 65 6e 28 24 66 69 6c 65 2c 20 27 72 62 27 29 3b 0a 24 74 61 eFile.=.gzopen($file,.'rb');.$ta
564c0 72 67 65 74 46 69 6c 65 20 3d 20 66 6f 70 65 6e 28 24 74 61 72 67 65 74 46 69 6c 65 70 61 74 68 rgetFile.=.fopen($targetFilepath
564e0 2c 20 27 77 62 27 29 3b 0a 77 68 69 6c 65 20 28 24 73 74 72 69 6e 67 20 3d 20 67 7a 72 65 61 64 ,.'wb');.while.($string.=.gzread
56500 28 24 61 72 63 68 69 76 65 46 69 6c 65 2c 20 34 30 39 36 29 29 20 7b 0a 66 77 72 69 74 65 28 24 ($archiveFile,.4096)).{.fwrite($
56520 74 61 72 67 65 74 46 69 6c 65 2c 20 24 73 74 72 69 6e 67 2c 20 73 74 72 6c 65 6e 28 24 73 74 72 targetFile,.$string,.strlen($str
56540 69 6e 67 29 29 3b 0a 7d 0a 67 7a 63 6c 6f 73 65 28 24 61 72 63 68 69 76 65 46 69 6c 65 29 3b 0a ing));.}.gzclose($archiveFile);.
56560 66 63 6c 6f 73 65 28 24 74 61 72 67 65 74 46 69 6c 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a fclose($targetFile);.}.}.<?php..
56580 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 ..........namespace.Composer\Dow
565a0 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 nloader;..use.Composer\Package\P
565c0 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 ackageInterface;.use.Composer\Ut
565e0 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 67 il\ProcessExecutor;.....class.Hg
56600 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 Downloader.extends.VcsDownloader
56620 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 6f 77 6e 6c 6f 61 64 .{....public.function.doDownload
56640 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 (PackageInterface.$package,.$pat
56660 68 2c 20 24 75 72 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 53 65 63 75 72 65 48 74 74 h,.$url).{.$this->checkSecureHtt
56680 70 28 24 75 72 6c 29 3b 0a 0a 24 75 72 6c 20 3d 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 p($url);..$url.=.ProcessExecutor
566a0 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 3b 0a 24 72 65 66 20 3d 20 50 72 6f 63 65 73 73 45 78 ::escape($url);.$ref.=.ProcessEx
566c0 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 ecutor::escape($package->getSour
566e0 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 ceReference());.$this->io->write
56700 45 72 72 6f 72 28 22 20 20 20 20 43 6c 6f 6e 69 6e 67 20 22 2e 24 70 61 63 6b 61 67 65 2d 3e 67 Error("....Cloning.".$package->g
56720 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d etSourceReference());.$command.=
56740 20 73 70 72 69 6e 74 66 28 27 68 67 20 63 6c 6f 6e 65 20 25 73 20 25 73 27 2c 20 24 75 72 6c 2c .sprintf('hg.clone.%s.%s',.$url,
56760 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 70 61 74 68 29 29 .ProcessExecutor::escape($path))
56780 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 ;.if.(0.!==.$this->process->exec
567a0 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b ute($command,.$ignoredOutput)).{
567c0 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 .throw.new.\RuntimeException('Fa
567e0 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 iled.to.execute.'...$command..."
56800 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 \n\n"...$this->process->getError
56820 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 Output());.}.$command.=.sprintf(
56840 27 68 67 20 75 70 20 25 73 27 2c 20 24 72 65 66 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 'hg.up.%s',.$ref);.if.(0.!==.$th
56860 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 is->process->execute($command,.$
56880 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 2c 20 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 29 29 ignoredOutput,.realpath($path)))
568a0 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 .{.throw.new.\RuntimeException('
568c0 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e Failed.to.execute.'...$command..
568e0 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 ."\n\n"...$this->process->getErr
56900 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 orOutput());.}.}.....public.func
56920 74 69 6f 6e 20 64 6f 55 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 tion.doUpdate(PackageInterface.$
56940 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 initial,.PackageInterface.$targe
56960 74 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 53 65 t,.$path,.$url).{.$this->checkSe
56980 63 75 72 65 48 74 74 70 28 24 75 72 6c 29 3b 0a 0a 24 75 72 6c 20 3d 20 50 72 6f 63 65 73 73 45 cureHttp($url);..$url.=.ProcessE
569a0 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 3b 0a 24 72 65 66 20 3d 20 50 72 xecutor::escape($url);.$ref.=.Pr
569c0 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 74 61 72 67 65 74 2d 3e 67 ocessExecutor::escape($target->g
569e0 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d etSourceReference());.$this->io-
56a00 3e 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 20 20 55 70 64 61 74 69 6e 67 20 74 6f 20 22 2e 24 >writeError("....Updating.to.".$
56a20 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 3b 0a 0a target->getSourceReference());..
56a40 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 4d 65 74 61 64 61 74 61 52 65 70 6f 73 69 74 6f 72 if.(!$this->hasMetadataRepositor
56a60 79 28 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 y($path)).{.throw.new.\RuntimeEx
56a80 63 65 70 74 69 6f 6e 28 27 54 68 65 20 2e 68 67 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 6d 69 ception('The..hg.directory.is.mi
56aa0 73 73 69 6e 67 20 66 72 6f 6d 20 27 2e 24 70 61 74 68 2e 27 2c 20 73 65 65 20 68 74 74 70 73 3a ssing.from.'.$path.',.see.https:
56ac0 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 63 6f 6d 6d 69 74 2d 64 65 70 73 20 66 6f //getcomposer.org/commit-deps.fo
56ae0 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e r.more.information');.}..$comman
56b00 64 20 3d 20 73 70 72 69 6e 74 66 28 27 68 67 20 70 75 6c 6c 20 25 73 20 26 26 20 68 67 20 75 70 d.=.sprintf('hg.pull.%s.&&.hg.up
56b20 20 25 73 27 2c 20 24 75 72 6c 2c 20 24 72 65 66 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 .%s',.$url,.$ref);.if.(0.!==.$th
56b40 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 is->process->execute($command,.$
56b60 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 2c 20 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 29 29 ignoredOutput,.realpath($path)))
56b80 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 .{.throw.new.\RuntimeException('
56ba0 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e Failed.to.execute.'...$command..
56bc0 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 ."\n\n"...$this->process->getErr
56be0 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 orOutput());.}.}.....public.func
56c00 74 69 6f 6e 20 67 65 74 4c 6f 63 61 6c 43 68 61 6e 67 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 tion.getLocalChanges(PackageInte
56c20 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 69 73 rface.$package,.$path).{.if.(!is
56c40 5f 64 69 72 28 24 70 61 74 68 2e 27 2f 2e 68 67 27 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a _dir($path.'/.hg')).{.return;.}.
56c60 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 67 20 73 74 27 .$this->process->execute('hg.st'
56c80 2c 20 24 6f 75 74 70 75 74 2c 20 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 29 3b 0a 0a 72 65 ,.$output,.realpath($path));..re
56ca0 74 75 72 6e 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 20 3f 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a turn.trim($output).?:.null;.}...
56cc0 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 69 74 4c 6f ..protected.function.getCommitLo
56ce0 67 73 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 24 74 6f 52 65 66 65 72 65 6e 63 65 2c gs($fromReference,.$toReference,
56d00 20 24 70 61 74 68 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 68 67 .$path).{.$command.=.sprintf('hg
56d20 20 6c 6f 67 20 2d 72 20 25 73 3a 25 73 20 2d 2d 73 74 79 6c 65 20 63 6f 6d 70 61 63 74 27 2c 20 .log.-r.%s:%s.--style.compact',.
56d40 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 24 74 6f 52 65 66 65 72 65 6e 63 65 29 3b 0a 0a $fromReference,.$toReference);..
56d60 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 if.(0.!==.$this->process->execut
56d80 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 72 65 61 6c 70 61 74 68 28 24 70 e($command,.$output,.realpath($p
56da0 61 74 68 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 ath))).{.throw.new.\RuntimeExcep
56dc0 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d tion('Failed.to.execute.'...$com
56de0 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e mand..."\n\n"...$this->process->
56e00 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f 75 getErrorOutput());.}..return.$ou
56e20 74 70 75 74 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 tput;.}..protected.function.chec
56e40 6b 53 65 63 75 72 65 48 74 74 70 28 24 75 72 6c 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 kSecureHttp($url).{.if.(preg_mat
56e60 63 68 28 27 7b 5e 68 74 74 70 3a 7d 69 27 2c 20 24 75 72 6c 29 20 26 26 20 24 74 68 69 73 2d 3e ch('{^http:}i',.$url).&&.$this->
56e80 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 73 65 63 75 72 65 2d 68 74 74 70 27 29 29 20 7b 0a 74 68 config->get('secure-http')).{.th
56ea0 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 22 59 6f 75 72 row.new.TransportException("Your
56ec0 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 63 6f .configuration.does.not.allow.co
56ee0 6e 6e 65 63 74 69 6f 6e 20 74 6f 20 24 75 72 6c 2e 20 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 nnection.to.$url..See.https://ge
56f00 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 30 36 2d 63 6f 6e 66 69 67 2e 6d 64 23 73 tcomposer.org/doc/06-config.md#s
56f20 65 63 75 72 65 2d 68 74 74 70 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 22 29 3b 0a 7d 0a 7d 0a 0a ecure-http.for.details.");.}.}..
56f40 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4d 65 74 61 64 61 74 ...protected.function.hasMetadat
56f60 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 5f 64 aRepository($path).{.return.is_d
56f80 69 72 28 24 70 61 74 68 20 2e 20 27 2f 2e 68 67 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ir($path...'/.hg');.}.}.<?php...
56fa0 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e .........namespace.Composer\Down
56fc0 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 loader;..use.Composer\Package\Pa
56fe0 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 ckageInterface;.use.Composer\Uti
57000 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e l\Platform;.use.Symfony\Componen
57020 74 5c 46 69 6c 65 73 79 73 74 65 6d 5c 45 78 63 65 70 74 69 6f 6e 5c 49 4f 45 78 63 65 70 74 69 t\Filesystem\Exception\IOExcepti
57040 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6c 65 73 79 on;.use.Symfony\Component\Filesy
57060 73 74 65 6d 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 stem\Filesystem;........class.Pa
57080 74 68 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 46 69 6c 65 44 6f 77 6e 6c 6f 61 thDownloader.extends.FileDownloa
570a0 64 65 72 0a 7b 0a 63 6f 6e 73 74 20 53 54 52 41 54 45 47 59 5f 53 59 4d 4c 49 4e 4b 20 3d 20 31 der.{.const.STRATEGY_SYMLINK.=.1
570c0 30 3b 0a 63 6f 6e 73 74 20 53 54 52 41 54 45 47 59 5f 4d 49 52 52 4f 52 20 3d 20 32 30 3b 0a 0a 0;.const.STRATEGY_MIRROR.=.20;..
570e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 77 6e 6c 6f 61 64 28 50 61 63 6b ...public.function.download(Pack
57100 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a ageInterface.$package,.$path).{.
57120 24 75 72 6c 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 3b 0a 24 $url.=.$package->getDistUrl();.$
57140 72 65 61 6c 55 72 6c 20 3d 20 72 65 61 6c 70 61 74 68 28 24 75 72 6c 29 3b 0a 69 66 20 28 66 61 realUrl.=.realpath($url);.if.(fa
57160 6c 73 65 20 3d 3d 3d 20 24 72 65 61 6c 55 72 6c 20 7c 7c 20 21 66 69 6c 65 5f 65 78 69 73 74 73 lse.===.$realUrl.||.!file_exists
57180 28 24 72 65 61 6c 55 72 6c 29 20 7c 7c 20 21 69 73 5f 64 69 72 28 24 72 65 61 6c 55 72 6c 29 29 ($realUrl).||.!is_dir($realUrl))
571a0 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 .{.throw.new.\RuntimeException(s
571c0 70 72 69 6e 74 66 28 0a 27 53 6f 75 72 63 65 20 70 61 74 68 20 22 25 73 22 20 69 73 20 6e 6f 74 printf(.'Source.path."%s".is.not
571e0 20 66 6f 75 6e 64 20 66 6f 72 20 70 61 63 6b 61 67 65 20 25 73 27 2c 20 24 75 72 6c 2c 20 24 70 .found.for.package.%s',.$url,.$p
57200 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 0a 29 29 3b 0a 7d 0a 0a 69 66 20 28 73 74 72 ackage->getName().));.}..if.(str
57220 70 6f 73 28 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 20 2e 20 44 49 52 45 43 54 4f 52 59 5f pos(realpath($path)...DIRECTORY_
57240 53 45 50 41 52 41 54 4f 52 2c 20 24 72 65 61 6c 55 72 6c 20 2e 20 44 49 52 45 43 54 4f 52 59 5f SEPARATOR,.$realUrl...DIRECTORY_
57260 53 45 50 41 52 41 54 4f 52 29 20 3d 3d 3d 20 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 SEPARATOR).===.0).{.throw.new.\R
57280 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 50 61 63 6b 61 67 untimeException(sprintf(.'Packag
572a0 65 20 25 73 20 63 61 6e 6e 6f 74 20 69 6e 73 74 61 6c 6c 20 74 6f 20 22 25 73 22 20 69 6e 73 69 e.%s.cannot.install.to."%s".insi
572c0 64 65 20 69 74 73 20 73 6f 75 72 63 65 20 61 74 20 22 25 73 22 27 2c 0a 24 70 61 63 6b 61 67 65 de.its.source.at."%s"',.$package
572e0 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 2c 20 24 72 ->getName(),.realpath($path),.$r
57300 65 61 6c 55 72 6c 0a 29 29 3b 0a 7d 0a 0a 0a 20 24 74 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e ealUrl.));.}....$transportOption
57320 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e s.=.$package->getTransportOption
57340 73 28 29 20 2b 20 61 72 72 61 79 28 27 73 79 6d 6c 69 6e 6b 27 20 3d 3e 20 6e 75 6c 6c 29 3b 0a s().+.array('symlink'.=>.null);.
57360 0a 0a 20 24 63 75 72 72 65 6e 74 53 74 72 61 74 65 67 79 20 3d 20 73 65 6c 66 3a 3a 53 54 52 41 ...$currentStrategy.=.self::STRA
57380 54 45 47 59 5f 53 59 4d 4c 49 4e 4b 3b 0a 24 61 6c 6c 6f 77 65 64 53 74 72 61 74 65 67 69 65 73 TEGY_SYMLINK;.$allowedStrategies
573a0 20 3d 20 61 72 72 61 79 28 73 65 6c 66 3a 3a 53 54 52 41 54 45 47 59 5f 53 59 4d 4c 49 4e 4b 2c .=.array(self::STRATEGY_SYMLINK,
573c0 20 73 65 6c 66 3a 3a 53 54 52 41 54 45 47 59 5f 4d 49 52 52 4f 52 29 3b 0a 0a 69 66 20 28 74 72 .self::STRATEGY_MIRROR);..if.(tr
573e0 75 65 20 3d 3d 3d 20 24 74 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 5b 27 73 79 6d 6c 69 6e ue.===.$transportOptions['symlin
57400 6b 27 5d 29 20 7b 0a 24 63 75 72 72 65 6e 74 53 74 72 61 74 65 67 79 20 3d 20 73 65 6c 66 3a 3a k']).{.$currentStrategy.=.self::
57420 53 54 52 41 54 45 47 59 5f 53 59 4d 4c 49 4e 4b 3b 0a 24 61 6c 6c 6f 77 65 64 53 74 72 61 74 65 STRATEGY_SYMLINK;.$allowedStrate
57440 67 69 65 73 20 3d 20 61 72 72 61 79 28 73 65 6c 66 3a 3a 53 54 52 41 54 45 47 59 5f 53 59 4d 4c gies.=.array(self::STRATEGY_SYML
57460 49 4e 4b 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 74 72 61 6e 73 INK);.}.elseif.(false.===.$trans
57480 70 6f 72 74 4f 70 74 69 6f 6e 73 5b 27 73 79 6d 6c 69 6e 6b 27 5d 29 20 7b 0a 24 63 75 72 72 65 portOptions['symlink']).{.$curre
574a0 6e 74 53 74 72 61 74 65 67 79 20 3d 20 73 65 6c 66 3a 3a 53 54 52 41 54 45 47 59 5f 4d 49 52 52 ntStrategy.=.self::STRATEGY_MIRR
574c0 4f 52 3b 0a 24 61 6c 6c 6f 77 65 64 53 74 72 61 74 65 67 69 65 73 20 3d 20 61 72 72 61 79 28 73 OR;.$allowedStrategies.=.array(s
574e0 65 6c 66 3a 3a 53 54 52 41 54 45 47 59 5f 4d 49 52 52 4f 52 29 3b 0a 7d 0a 0a 24 66 69 6c 65 53 elf::STRATEGY_MIRROR);.}..$fileS
57500 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 74 68 69 73 2d ystem.=.new.Filesystem();.$this-
57520 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 >filesystem->removeDirectory($pa
57540 74 68 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 th);..$this->io->writeError(spri
57560 6e 74 66 28 0a 27 20 20 2d 20 49 6e 73 74 61 6c 6c 69 6e 67 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 ntf(.'..-.Installing.<info>%s</i
57580 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 27 2c 0a 24 nfo>.(<comment>%s</comment>)',.$
575a0 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 package->getName(),.$package->ge
575c0 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 0a 29 29 3b 0a 0a 69 66 20 28 73 65 tFullPrettyVersion().));..if.(se
575e0 6c 66 3a 3a 53 54 52 41 54 45 47 59 5f 53 59 4d 4c 49 4e 4b 20 3d 3d 20 24 63 75 72 72 65 6e 74 lf::STRATEGY_SYMLINK.==.$current
57600 53 74 72 61 74 65 67 79 29 20 7b 0a 74 72 79 20 7b 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a Strategy).{.try.{.if.(Platform::
57620 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 isWindows()).{...$this->filesyst
57640 65 6d 2d 3e 6a 75 6e 63 74 69 6f 6e 28 24 72 65 61 6c 55 72 6c 2c 20 24 70 61 74 68 29 3b 0a 24 em->junction($realUrl,.$path);.$
57660 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 20 20 this->io->writeError(sprintf('..
57680 20 20 4a 75 6e 63 74 69 6f 6e 65 64 20 66 72 6f 6d 20 25 73 27 2c 20 24 75 72 6c 29 29 3b 0a 7d ..Junctioned.from.%s',.$url));.}
576a0 20 65 6c 73 65 20 7b 0a 24 61 62 73 6f 6c 75 74 65 50 61 74 68 20 3d 20 24 70 61 74 68 3b 0a 69 .else.{.$absolutePath.=.$path;.i
576c0 66 20 28 20 21 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 73 41 62 73 6f 6c f.(.!.$this->filesystem->isAbsol
576e0 75 74 65 50 61 74 68 28 24 61 62 73 6f 6c 75 74 65 50 61 74 68 29 29 20 7b 0a 24 61 62 73 6f 6c utePath($absolutePath)).{.$absol
57700 75 74 65 50 61 74 68 20 3d 20 67 65 74 63 77 64 28 29 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 utePath.=.getcwd()...DIRECTORY_S
57720 45 50 41 52 41 54 4f 52 20 2e 20 24 70 61 74 68 3b 0a 7d 0a 24 73 68 6f 72 74 65 73 74 50 61 74 EPARATOR...$path;.}.$shortestPat
57740 68 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 h.=.$this->filesystem->findShort
57760 65 73 74 50 61 74 68 28 24 61 62 73 6f 6c 75 74 65 50 61 74 68 2c 20 24 72 65 61 6c 55 72 6c 29 estPath($absolutePath,.$realUrl)
57780 3b 0a 24 66 69 6c 65 53 79 73 74 65 6d 2d 3e 73 79 6d 6c 69 6e 6b 28 24 73 68 6f 72 74 65 73 74 ;.$fileSystem->symlink($shortest
577a0 50 61 74 68 2c 20 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 Path,.$path);.$this->io->writeEr
577c0 72 6f 72 28 73 70 72 69 6e 74 66 28 27 20 20 20 20 53 79 6d 6c 69 6e 6b 65 64 20 66 72 6f 6d 20 ror(sprintf('....Symlinked.from.
577e0 25 73 27 2c 20 24 75 72 6c 29 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 49 4f 45 78 63 65 70 74 %s',.$url));.}.}.catch.(IOExcept
57800 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 73 65 6c 66 3a 3a 53 54 52 ion.$e).{.if.(in_array(self::STR
57820 41 54 45 47 59 5f 4d 49 52 52 4f 52 2c 20 24 61 6c 6c 6f 77 65 64 53 74 72 61 74 65 67 69 65 73 ATEGY_MIRROR,.$allowedStrategies
57840 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 )).{.$this->io->writeError('....
57860 3c 65 72 72 6f 72 3e 53 79 6d 6c 69 6e 6b 20 66 61 69 6c 65 64 2c 20 66 61 6c 6c 62 61 63 6b 20 <error>Symlink.failed,.fallback.
57880 74 6f 20 75 73 65 20 6d 69 72 72 6f 72 69 6e 67 21 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 63 75 to.use.mirroring!</error>');.$cu
578a0 72 72 65 6e 74 53 74 72 61 74 65 67 79 20 3d 20 73 65 6c 66 3a 3a 53 54 52 41 54 45 47 59 5f 4d rrentStrategy.=.self::STRATEGY_M
578c0 49 52 52 4f 52 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 IRROR;.}.else.{.throw.new.\Runti
578e0 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 53 79 6d 6c 69 6e 6b 20 66 72 6f meException(sprintf('Symlink.fro
57900 6d 20 22 25 73 22 20 74 6f 20 22 25 73 22 20 66 61 69 6c 65 64 21 27 2c 20 24 72 65 61 6c 55 72 m."%s".to."%s".failed!',.$realUr
57920 6c 2c 20 24 70 61 74 68 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 73 65 6c 66 3a 3a 53 l,.$path));.}.}.}....if.(self::S
57940 54 52 41 54 45 47 59 5f 4d 49 52 52 4f 52 20 3d 3d 20 24 63 75 72 72 65 6e 74 53 74 72 61 74 65 TRATEGY_MIRROR.==.$currentStrate
57960 67 79 29 20 7b 0a 24 66 69 6c 65 53 79 73 74 65 6d 2d 3e 6d 69 72 72 6f 72 28 24 72 65 61 6c 55 gy).{.$fileSystem->mirror($realU
57980 72 6c 2c 20 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f rl,.$path);.$this->io->writeErro
579a0 72 28 73 70 72 69 6e 74 66 28 27 20 20 20 20 4d 69 72 72 6f 72 65 64 20 66 72 6f 6d 20 25 73 27 r(sprintf('....Mirrored.from.%s'
579c0 2c 20 24 75 72 6c 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 ,.$url));.}..$this->io->writeErr
579e0 6f 72 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 or('');.}.....public.function.re
57a00 6d 6f 76 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 move(PackageInterface.$package,.
57a20 24 70 61 74 68 29 0a 7b 0a 0a 0a 0a 0a 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 $path).{......if.(Platform::isWi
57a40 6e 64 6f 77 73 28 29 20 26 26 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 73 ndows().&&.$this->filesystem->is
57a60 4a 75 6e 63 74 69 6f 6e 28 24 70 61 74 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 Junction($path)).{.$this->io->wr
57a80 69 74 65 45 72 72 6f 72 28 22 20 20 2d 20 52 65 6d 6f 76 69 6e 67 20 6a 75 6e 63 74 69 6f 6e 20 iteError("..-.Removing.junction.
57aa0 66 6f 72 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 for.<info>"...$package->getName(
57ac0 29 20 2e 20 22 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 70 61 63 6b )..."</info>.(<comment>"...$pack
57ae0 61 67 65 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 22 3c age->getFullPrettyVersion()..."<
57b00 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 /comment>)");.if.(!$this->filesy
57b20 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 4a 75 6e 63 74 69 6f 6e 28 24 70 61 74 68 29 29 20 7b 0a 24 stem->removeJunction($path)).{.$
57b40 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 3c 77 61 72 6e 3e 43 6f 75 6c this->io->writeError("<warn>Coul
57b60 64 20 6e 6f 74 20 72 65 6d 6f 76 65 20 6a 75 6e 63 74 69 6f 6e 20 61 74 20 22 20 2e 20 24 70 61 d.not.remove.junction.at."...$pa
57b80 74 68 20 2e 20 22 20 2d 20 69 73 20 61 6e 6f 74 68 65 72 20 70 72 6f 63 65 73 73 20 6c 6f 63 6b th...".-.is.another.process.lock
57ba0 69 6e 67 20 69 74 3f 3c 2f 77 61 72 6e 3e 22 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e ing.it?</warn>");.throw.new.\Run
57bc0 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 72 65 6c 69 61 62 6c timeException('Could.not.reliabl
57be0 79 20 72 65 6d 6f 76 65 20 6a 75 6e 63 74 69 6f 6e 20 66 6f 72 20 70 61 63 6b 61 67 65 20 27 20 y.remove.junction.for.package.'.
57c00 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 ..$package->getName());.}.}.else
57c20 20 7b 0a 70 61 72 65 6e 74 3a 3a 72 65 6d 6f 76 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 .{.parent::remove($package,.$pat
57c40 68 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 h);.}.}.}.<?php............names
57c60 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 pace.Composer\Downloader;..use.C
57c80 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a omposer\Util\Filesystem;........
57ca0 0a 0a 0a 63 6c 61 73 73 20 50 65 61 72 50 61 63 6b 61 67 65 45 78 74 72 61 63 74 6f 72 0a 7b 0a ...class.PearPackageExtractor.{.
57cc0 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 72 6f 6c 65 73 57 69 74 68 6f 75 74 50 61 63 6b private.static.$rolesWithoutPack
57ce0 61 67 65 4e 61 6d 65 50 72 65 66 69 78 20 3d 20 61 72 72 61 79 28 27 70 68 70 27 2c 20 27 73 63 ageNamePrefix.=.array('php',.'sc
57d00 72 69 70 74 27 2c 20 27 77 77 77 27 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 73 79 73 ript',.'www');..private.$filesys
57d20 74 65 6d 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 tem;.private.$file;..public.func
57d40 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 66 69 6c 65 29 0a 7b 0a 69 66 20 28 21 69 tion.__construct($file).{.if.(!i
57d60 73 5f 66 69 6c 65 28 24 66 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 s_file($file)).{.throw.new.\Unex
57d80 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 50 45 41 52 20 70 61 63 6b 61 pectedValueException('PEAR.packa
57da0 67 65 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 66 6f 75 6e 64 20 61 74 20 27 2e 24 66 69 6c 65 29 ge.file.is.not.found.at.'.$file)
57dc0 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c ;.}..$this->filesystem.=.new.Fil
57de0 65 73 79 73 74 65 6d 28 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 20 3d 20 24 66 69 6c 65 3b 0a esystem();.$this->file.=.$file;.
57e00 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 }...........public.function.extr
57e20 61 63 74 54 6f 28 24 74 61 72 67 65 74 2c 20 61 72 72 61 79 20 24 72 6f 6c 65 73 20 3d 20 61 72 actTo($target,.array.$roles.=.ar
57e40 72 61 79 28 27 70 68 70 27 20 3d 3e 20 27 2f 27 2c 20 27 73 63 72 69 70 74 27 20 3d 3e 20 27 2f ray('php'.=>.'/',.'script'.=>.'/
57e60 62 69 6e 27 29 2c 20 24 76 61 72 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 65 78 74 72 61 bin'),.$vars.=.array()).{.$extra
57e80 63 74 69 6f 6e 50 61 74 68 20 3d 20 24 74 61 72 67 65 74 2e 27 2f 74 61 72 62 61 6c 6c 27 3b 0a ctionPath.=.$target.'/tarball';.
57ea0 0a 74 72 79 20 7b 0a 24 61 72 63 68 69 76 65 20 3d 20 6e 65 77 20 5c 50 68 61 72 44 61 74 61 28 .try.{.$archive.=.new.\PharData(
57ec0 24 74 68 69 73 2d 3e 66 69 6c 65 29 3b 0a 24 61 72 63 68 69 76 65 2d 3e 65 78 74 72 61 63 74 54 $this->file);.$archive->extractT
57ee0 6f 28 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 3b 0a o($extractionPath,.null,.true);.
57f00 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 65 78 .if.(!is_file($this->combine($ex
57f20 74 72 61 63 74 69 6f 6e 50 61 74 68 2c 20 27 2f 70 61 63 6b 61 67 65 2e 78 6d 6c 27 29 29 29 20 tractionPath,.'/package.xml'))).
57f40 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 49 {.throw.new.\RuntimeException('I
57f60 6e 76 61 6c 69 64 20 50 45 41 52 20 70 61 63 6b 61 67 65 2e 20 49 74 20 6d 75 73 74 20 63 6f 6e nvalid.PEAR.package..It.must.con
57f80 74 61 69 6e 20 70 61 63 6b 61 67 65 2e 78 6d 6c 20 66 69 6c 65 2e 27 29 3b 0a 7d 0a 0a 24 66 69 tain.package.xml.file.');.}..$fi
57fa0 6c 65 43 6f 70 79 41 63 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 70 79 leCopyActions.=.$this->buildCopy
57fc0 41 63 74 69 6f 6e 73 28 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 2c 20 24 72 6f 6c 65 73 2c Actions($extractionPath,.$roles,
57fe0 20 24 76 61 72 73 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 70 79 46 69 6c 65 73 28 24 66 69 6c 65 43 .$vars);.$this->copyFiles($fileC
58000 6f 70 79 41 63 74 69 6f 6e 73 2c 20 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 2c 20 24 74 61 opyActions,.$extractionPath,.$ta
58020 72 67 65 74 2c 20 24 72 6f 6c 65 73 2c 20 24 76 61 72 73 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c rget,.$roles,.$vars);.$this->fil
58040 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 65 78 74 72 61 63 esystem->removeDirectory($extrac
58060 74 69 6f 6e 50 61 74 68 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 tionPath);.}.catch.(\Exception.$
58080 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 exception).{.throw.new.\Unexpect
580a0 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 edValueException(sprintf('Failed
580c0 20 74 6f 20 65 78 74 72 61 63 74 20 50 45 41 52 20 70 61 63 6b 61 67 65 20 25 73 20 74 6f 20 25 .to.extract.PEAR.package.%s.to.%
580e0 73 2e 20 52 65 61 73 6f 6e 3a 20 25 73 27 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 2c 20 24 74 61 s..Reason:.%s',.$this->file,.$ta
58100 72 67 65 74 2c 20 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 2c rget,.$exception->getMessage()),
58120 20 30 2c 20 24 65 78 63 65 70 74 69 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 .0,.$exception);.}.}...........p
58140 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 46 69 6c 65 73 28 24 66 69 6c 65 73 rivate.function.copyFiles($files
58160 2c 20 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 2c 20 24 72 6f 6c 65 73 2c 20 24 76 61 72 ,.$source,.$target,.$roles,.$var
58180 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6c 65 73 20 61 73 20 24 66 69 6c 65 29 20 7b s).{.foreach.($files.as.$file).{
581a0 0a 24 66 72 6f 6d 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 65 2c .$from.=.$this->combine($source,
581c0 20 24 66 69 6c 65 5b 27 66 72 6f 6d 27 5d 29 3b 0a 24 74 6f 20 3d 20 24 74 68 69 73 2d 3e 63 6f .$file['from']);.$to.=.$this->co
581e0 6d 62 69 6e 65 28 24 74 61 72 67 65 74 2c 20 24 72 6f 6c 65 73 5b 24 66 69 6c 65 5b 27 72 6f 6c mbine($target,.$roles[$file['rol
58200 65 27 5d 5d 29 3b 0a 24 74 6f 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 74 6f 2c e']]);.$to.=.$this->combine($to,
58220 20 24 66 69 6c 65 5b 27 74 6f 27 5d 29 3b 0a 24 74 61 73 6b 73 20 3d 20 24 66 69 6c 65 5b 27 74 .$file['to']);.$tasks.=.$file['t
58240 61 73 6b 73 27 5d 3b 0a 24 74 68 69 73 2d 3e 63 6f 70 79 46 69 6c 65 28 24 66 72 6f 6d 2c 20 24 asks'];.$this->copyFile($from,.$
58260 74 6f 2c 20 24 74 61 73 6b 73 2c 20 24 76 61 72 73 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 to,.$tasks,.$vars);.}.}..private
58280 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 46 69 6c 65 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 .function.copyFile($from,.$to,.$
582a0 74 61 73 6b 73 2c 20 24 76 61 72 73 29 0a 7b 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 66 72 tasks,.$vars).{.if.(!is_file($fr
582c0 6f 6d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 om)).{.throw.new.\RuntimeExcepti
582e0 6f 6e 28 27 49 6e 76 61 6c 69 64 20 50 45 41 52 20 70 61 63 6b 61 67 65 2e 20 70 61 63 6b 61 67 on('Invalid.PEAR.package..packag
58300 65 2e 78 6d 6c 20 64 65 66 69 6e 65 73 20 66 69 6c 65 20 74 68 61 74 20 69 73 20 6e 6f 74 20 6c e.xml.defines.file.that.is.not.l
58320 6f 63 61 74 65 64 20 69 6e 73 69 64 65 20 74 61 72 62 61 6c 6c 2e 27 29 3b 0a 7d 0a 0a 24 74 68 ocated.inside.tarball.');.}..$th
58340 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 is->filesystem->ensureDirectoryE
58360 78 69 73 74 73 28 64 69 72 6e 61 6d 65 28 24 74 6f 29 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 20 63 xists(dirname($to));..if.(0.==.c
58380 6f 75 6e 74 28 24 74 61 73 6b 73 29 29 20 7b 0a 24 63 6f 70 69 65 64 20 3d 20 63 6f 70 79 28 24 ount($tasks)).{.$copied.=.copy($
583a0 66 72 6f 6d 2c 20 24 74 6f 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 from,.$to);.}.else.{.$content.=.
583c0 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 72 6f 6d 29 3b 0a 24 72 65 70 6c 61 file_get_contents($from);.$repla
583e0 63 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 61 73 cements.=.array();.foreach.($tas
58400 6b 73 20 61 73 20 24 74 61 73 6b 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 24 74 61 73 6b 5b ks.as.$task).{.$pattern.=.$task[
58420 27 66 72 6f 6d 27 5d 3b 0a 24 76 61 72 4e 61 6d 65 20 3d 20 24 74 61 73 6b 5b 27 74 6f 27 5d 3b 'from'];.$varName.=.$task['to'];
58440 0a 69 66 20 28 69 73 73 65 74 28 24 76 61 72 73 5b 24 76 61 72 4e 61 6d 65 5d 29 29 20 7b 0a 69 .if.(isset($vars[$varName])).{.i
58460 66 20 28 24 76 61 72 4e 61 6d 65 20 3d 3d 3d 20 27 70 68 70 5f 62 69 6e 27 20 26 26 20 66 61 6c f.($varName.===.'php_bin'.&&.fal
58480 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 6f 2c 20 27 2e 62 61 74 27 29 29 20 7b 0a 24 72 se.===.strpos($to,.'.bat')).{.$r
584a0 65 70 6c 61 63 65 6d 65 6e 74 73 5b 24 70 61 74 74 65 72 6e 5d 20 3d 20 70 72 65 67 5f 72 65 70 eplacements[$pattern].=.preg_rep
584c0 6c 61 63 65 28 27 7b 5c 2e 62 61 74 24 7d 27 2c 20 27 27 2c 20 24 76 61 72 73 5b 24 76 61 72 4e lace('{\.bat$}',.'',.$vars[$varN
584e0 61 6d 65 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 5b 24 70 ame]);.}.else.{.$replacements[$p
58500 61 74 74 65 72 6e 5d 20 3d 20 24 76 61 72 73 5b 24 76 61 72 4e 61 6d 65 5d 3b 0a 7d 0a 7d 0a 7d attern].=.$vars[$varName];.}.}.}
58520 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 73 74 72 74 72 28 24 63 6f 6e 74 65 6e 74 2c 20 24 72 65 70 .$content.=.strtr($content,.$rep
58540 6c 61 63 65 6d 65 6e 74 73 29 3b 0a 0a 24 63 6f 70 69 65 64 20 3d 20 66 69 6c 65 5f 70 75 74 5f lacements);..$copied.=.file_put_
58560 63 6f 6e 74 65 6e 74 73 28 24 74 6f 2c 20 24 63 6f 6e 74 65 6e 74 29 3b 0a 7d 0a 0a 69 66 20 28 contents($to,.$content);.}..if.(
58580 66 61 6c 73 65 20 3d 3d 3d 20 24 63 6f 70 69 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c false.===.$copied).{.throw.new.\
585a0 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 RuntimeException(sprintf('Failed
585c0 20 74 6f 20 63 6f 70 79 20 25 73 20 74 6f 20 25 73 27 2c 20 24 66 72 6f 6d 2c 20 24 74 6f 29 29 .to.copy.%s.to.%s',.$from,.$to))
585e0 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f ;.}.}............private.functio
58600 6e 20 62 75 69 6c 64 43 6f 70 79 41 63 74 69 6f 6e 73 28 24 73 6f 75 72 63 65 2c 20 61 72 72 61 n.buildCopyActions($source,.arra
58620 79 20 24 72 6f 6c 65 73 2c 20 24 76 61 72 73 29 0a 7b 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 73 y.$roles,.$vars).{..$package.=.s
58640 69 6d 70 6c 65 78 6d 6c 5f 6c 6f 61 64 5f 73 74 72 69 6e 67 28 66 69 6c 65 5f 67 65 74 5f 63 6f implexml_load_string(file_get_co
58660 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 65 2c 20 27 ntents($this->combine($source,.'
58680 70 61 63 6b 61 67 65 2e 78 6d 6c 27 29 29 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 package.xml')));.if.(false.===.$
586a0 70 61 63 6b 61 67 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 package).{.throw.new.\RuntimeExc
586c0 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 20 eption('Package.definition.file.
586e0 69 73 20 6e 6f 74 20 76 61 6c 69 64 2e 27 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 53 63 68 65 is.not.valid.');.}..$packageSche
58700 6d 61 56 65 72 73 69 6f 6e 20 3d 20 24 70 61 63 6b 61 67 65 5b 27 76 65 72 73 69 6f 6e 27 5d 3b maVersion.=.$package['version'];
58720 0a 69 66 20 28 27 31 2e 30 27 20 3d 3d 20 24 70 61 63 6b 61 67 65 53 63 68 65 6d 61 56 65 72 73 .if.('1.0'.==.$packageSchemaVers
58740 69 6f 6e 29 20 7b 0a 24 63 68 69 6c 64 72 65 6e 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 72 65 6c ion).{.$children.=.$package->rel
58760 65 61 73 65 2d 3e 66 69 6c 65 6c 69 73 74 2d 3e 63 68 69 6c 64 72 65 6e 28 29 3b 0a 24 70 61 63 ease->filelist->children();.$pac
58780 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 2d 3e 6e 61 kageName.=.(string).$package->na
587a0 6d 65 3b 0a 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 me;.$packageVersion.=.(string).$
587c0 70 61 63 6b 61 67 65 2d 3e 72 65 6c 65 61 73 65 2d 3e 76 65 72 73 69 6f 6e 3b 0a 24 73 6f 75 72 package->release->version;.$sour
587e0 63 65 44 69 72 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 2e 20 27 2d 27 20 2e 20 24 70 61 ceDir.=.$packageName...'-'...$pa
58800 63 6b 61 67 65 56 65 72 73 69 6f 6e 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 62 ckageVersion;.$result.=.$this->b
58820 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 31 30 28 24 63 68 69 6c 64 72 65 6e 2c 20 24 72 6f 6c uildSourceList10($children,.$rol
58840 65 73 2c 20 24 73 6f 75 72 63 65 44 69 72 2c 20 27 27 2c 20 6e 75 6c 6c 2c 20 24 70 61 63 6b 61 es,.$sourceDir,.'',.null,.$packa
58860 67 65 4e 61 6d 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 32 2e 30 27 20 3d 3d 20 24 70 61 63 geName);.}.elseif.('2.0'.==.$pac
58880 6b 61 67 65 53 63 68 65 6d 61 56 65 72 73 69 6f 6e 20 7c 7c 20 27 32 2e 31 27 20 3d 3d 20 24 70 kageSchemaVersion.||.'2.1'.==.$p
588a0 61 63 6b 61 67 65 53 63 68 65 6d 61 56 65 72 73 69 6f 6e 29 20 7b 0a 24 63 68 69 6c 64 72 65 6e ackageSchemaVersion).{.$children
588c0 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 63 6f 6e 74 65 6e 74 73 2d 3e 63 68 69 6c 64 72 65 6e 28 .=.$package->contents->children(
588e0 29 3b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b );.$packageName.=.(string).$pack
58900 61 67 65 2d 3e 6e 61 6d 65 3b 0a 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 age->name;.$packageVersion.=.(st
58920 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 2d 3e 76 65 72 73 69 6f 6e 2d 3e 72 65 6c 65 61 73 65 ring).$package->version->release
58940 3b 0a 24 73 6f 75 72 63 65 44 69 72 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 2e 20 27 2d ;.$sourceDir.=.$packageName...'-
58960 27 20 2e 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 '...$packageVersion;.$result.=.$
58980 74 68 69 73 2d 3e 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 32 30 28 24 63 68 69 6c 64 72 65 this->buildSourceList20($childre
589a0 6e 2c 20 24 72 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 44 69 72 2c 20 27 27 2c 20 6e 75 6c 6c 2c n,.$roles,.$sourceDir,.'',.null,
589c0 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 0a 24 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 24 .$packageName);..$namespaces.=.$
589e0 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 3b 0a 24 70 61 63 6b 61 package->getNamespaces();.$packa
58a00 67 65 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c ge->registerXPathNamespace('ns',
58a20 20 24 6e 61 6d 65 73 70 61 63 65 73 5b 27 27 5d 29 3b 0a 24 72 65 6c 65 61 73 65 4e 6f 64 65 73 .$namespaces['']);.$releaseNodes
58a40 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 78 70 61 74 68 28 27 6e 73 3a 70 68 70 72 65 6c 65 61 73 .=.$package->xpath('ns:phpreleas
58a60 65 27 29 3b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 79 52 65 6c 65 61 73 65 28 24 72 65 73 75 6c 74 e');.$this->applyRelease($result
58a80 2c 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 73 2c 20 24 76 61 72 73 29 3b 0a 7d 20 65 6c 73 65 20 ,.$releaseNodes,.$vars);.}.else.
58aa0 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 55 {.throw.new.\RuntimeException('U
58ac0 6e 73 75 70 70 6f 72 74 65 64 20 73 63 68 65 6d 61 20 76 65 72 73 69 6f 6e 20 6f 66 20 70 61 63 nsupported.schema.version.of.pac
58ae0 6b 61 67 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 kage.definition.file.');.}..retu
58b00 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 rn.$result;.}..private.function.
58b20 61 70 70 6c 79 52 65 6c 65 61 73 65 28 26 24 61 63 74 69 6f 6e 73 2c 20 24 72 65 6c 65 61 73 65 applyRelease(&$actions,.$release
58b40 4e 6f 64 65 73 2c 20 24 76 61 72 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 6c 65 61 73 Nodes,.$vars).{.foreach.($releas
58b60 65 4e 6f 64 65 73 20 61 73 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 29 20 7b 0a 24 72 65 71 75 69 eNodes.as.$releaseNode).{.$requi
58b80 72 65 64 4f 73 20 3d 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 69 6e 73 74 61 6c 6c 63 6f 6e redOs.=.$releaseNode->installcon
58ba0 64 69 74 69 6f 6e 73 20 26 26 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 69 6e 73 74 61 6c 6c ditions.&&.$releaseNode->install
58bc0 63 6f 6e 64 69 74 69 6f 6e 73 2d 3e 6f 73 20 26 26 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e conditions->os.&&.$releaseNode->
58be0 69 6e 73 74 61 6c 6c 63 6f 6e 64 69 74 69 6f 6e 73 2d 3e 6f 73 2d 3e 6e 61 6d 65 20 3f 20 28 73 installconditions->os->name.?.(s
58c00 74 72 69 6e 67 29 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 69 6e 73 74 61 6c 6c 63 6f 6e 64 tring).$releaseNode->installcond
58c20 69 74 69 6f 6e 73 2d 3e 6f 73 2d 3e 6e 61 6d 65 20 3a 20 27 27 3b 0a 69 66 20 28 24 72 65 71 75 itions->os->name.:.'';.if.($requ
58c40 69 72 65 64 4f 73 20 26 26 20 24 76 61 72 73 5b 27 6f 73 27 5d 20 21 3d 20 24 72 65 71 75 69 72 iredOs.&&.$vars['os'].!=.$requir
58c60 65 64 4f 73 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 72 65 6c 65 61 73 edOs).{.continue;.}..if.($releas
58c80 65 4e 6f 64 65 2d 3e 66 69 6c 65 6c 69 73 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 6c eNode->filelist).{.foreach.($rel
58ca0 65 61 73 65 4e 6f 64 65 2d 3e 66 69 6c 65 6c 69 73 74 2d 3e 63 68 69 6c 64 72 65 6e 28 29 20 61 easeNode->filelist->children().a
58cc0 73 20 24 61 63 74 69 6f 6e 29 20 7b 0a 69 66 20 28 27 69 6e 73 74 61 6c 6c 27 20 3d 3d 20 24 61 s.$action).{.if.('install'.==.$a
58ce0 63 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 28 73 74 72 ction->getName()).{.$name.=.(str
58d00 69 6e 67 29 20 24 61 63 74 69 6f 6e 5b 27 6e 61 6d 65 27 5d 3b 0a 24 61 73 20 3d 20 28 73 74 72 ing).$action['name'];.$as.=.(str
58d20 69 6e 67 29 20 24 61 63 74 69 6f 6e 5b 27 61 73 27 5d 3b 0a 69 66 20 28 69 73 73 65 74 28 24 61 ing).$action['as'];.if.(isset($a
58d40 63 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 61 63 74 69 6f 6e 73 5b 24 6e 61 6d 65 ctions[$name])).{.$actions[$name
58d60 5d 5b 27 74 6f 27 5d 20 3d 20 24 61 73 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 27 69 67 6e 6f ]['to'].=.$as;.}.}.elseif.('igno
58d80 72 65 27 20 3d 3d 20 24 61 63 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 6e 61 re'.==.$action->getName()).{.$na
58da0 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 61 63 74 69 6f 6e 5b 27 6e 61 6d 65 27 5d 3b 0a 75 me.=.(string).$action['name'];.u
58dc0 6e 73 65 74 28 24 61 63 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a nset($actions[$name]);.}.else.{.
58de0 0a 20 7d 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 ..}.}.}.break;.}.}..private.func
58e00 74 69 6f 6e 20 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 31 30 28 24 63 68 69 6c 64 72 65 6e tion.buildSourceList10($children
58e20 2c 20 24 74 61 72 67 65 74 52 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 ,.$targetRoles,.$source,.$target
58e40 2c 20 24 72 6f 6c 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 72 65 73 75 6c 74 ,.$role,.$packageName).{.$result
58e60 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 63 68 69 6c 64 72 65 .=.array();....foreach.($childre
58e80 6e 20 61 73 20 24 63 68 69 6c 64 29 20 7b 0a 0a 69 66 20 28 24 63 68 69 6c 64 2d 3e 67 65 74 4e n.as.$child).{..if.($child->getN
58ea0 61 6d 65 28 29 20 3d 3d 20 27 64 69 72 27 29 20 7b 0a 24 64 69 72 53 6f 75 72 63 65 20 3d 20 24 ame().==.'dir').{.$dirSource.=.$
58ec0 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 65 2c 20 28 73 74 72 69 6e 67 29 20 this->combine($source,.(string).
58ee0 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 29 3b 0a 24 64 69 72 54 61 72 67 65 74 20 3d 20 24 63 $child['name']);.$dirTarget.=.$c
58f00 68 69 6c 64 5b 27 62 61 73 65 69 6e 73 74 61 6c 6c 64 69 72 27 5d 20 3f 3a 20 24 74 61 72 67 65 hild['baseinstalldir'].?:.$targe
58f20 74 3b 0a 24 64 69 72 52 6f 6c 65 20 3d 20 24 63 68 69 6c 64 5b 27 72 6f 6c 65 27 5d 20 3f 3a 20 t;.$dirRole.=.$child['role'].?:.
58f40 24 72 6f 6c 65 3b 0a 24 64 69 72 46 69 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 53 $role;.$dirFiles.=.$this->buildS
58f60 6f 75 72 63 65 4c 69 73 74 31 30 28 24 63 68 69 6c 64 2d 3e 63 68 69 6c 64 72 65 6e 28 29 2c 20 ourceList10($child->children(),.
58f80 24 74 61 72 67 65 74 52 6f 6c 65 73 2c 20 24 64 69 72 53 6f 75 72 63 65 2c 20 24 64 69 72 54 61 $targetRoles,.$dirSource,.$dirTa
58fa0 72 67 65 74 2c 20 24 64 69 72 52 6f 6c 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 24 rget,.$dirRole,.$packageName);.$
58fc0 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 64 result.=.array_merge($result,.$d
58fe0 69 72 46 69 6c 65 73 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 63 68 69 6c 64 2d 3e 67 65 74 4e irFiles);.}.elseif.($child->getN
59000 61 6d 65 28 29 20 3d 3d 20 27 66 69 6c 65 27 29 20 7b 0a 24 66 69 6c 65 52 6f 6c 65 20 3d 20 28 ame().==.'file').{.$fileRole.=.(
59020 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 72 6f 6c 65 27 5d 20 3f 3a 20 24 72 6f 6c 65 3b string).$child['role'].?:.$role;
59040 0a 69 66 20 28 69 73 73 65 74 28 24 74 61 72 67 65 74 52 6f 6c 65 73 5b 24 66 69 6c 65 52 6f 6c .if.(isset($targetRoles[$fileRol
59060 65 5d 29 29 20 7b 0a 24 66 69 6c 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 28 24 63 68 e])).{.$fileName.=.(string).($ch
59080 69 6c 64 5b 27 6e 61 6d 65 27 5d 20 3f 3a 20 24 63 68 69 6c 64 5b 30 5d 29 3b 20 0a 20 24 66 69 ild['name'].?:.$child[0]);...$fi
590a0 6c 65 53 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 leSource.=.$this->combine($sourc
590c0 65 2c 20 24 66 69 6c 65 4e 61 6d 65 29 3b 0a 24 66 69 6c 65 54 61 72 67 65 74 20 3d 20 24 74 68 e,.$fileName);.$fileTarget.=.$th
590e0 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 62 61 73 is->combine((string).$child['bas
59100 65 69 6e 73 74 61 6c 6c 64 69 72 27 5d 20 3f 3a 20 24 74 61 72 67 65 74 2c 20 24 66 69 6c 65 4e einstalldir'].?:.$target,.$fileN
59120 61 6d 65 29 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 66 69 6c 65 52 6f 6c 65 2c 20 73 ame);.if.(!in_array($fileRole,.s
59140 65 6c 66 3a 3a 24 72 6f 6c 65 73 57 69 74 68 6f 75 74 50 61 63 6b 61 67 65 4e 61 6d 65 50 72 65 elf::$rolesWithoutPackageNamePre
59160 66 69 78 29 29 20 7b 0a 24 66 69 6c 65 54 61 72 67 65 74 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 fix)).{.$fileTarget.=.$packageNa
59180 6d 65 20 2e 20 27 2f 27 20 2e 20 24 66 69 6c 65 54 61 72 67 65 74 3b 0a 7d 0a 24 72 65 73 75 6c me...'/'...$fileTarget;.}.$resul
591a0 74 5b 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 5d 20 3d 20 61 72 72 t[(string).$child['name']].=.arr
591c0 61 79 28 27 66 72 6f 6d 27 20 3d 3e 20 24 66 69 6c 65 53 6f 75 72 63 65 2c 20 27 74 6f 27 20 3d ay('from'.=>.$fileSource,.'to'.=
591e0 3e 20 24 66 69 6c 65 54 61 72 67 65 74 2c 20 27 72 6f 6c 65 27 20 3d 3e 20 24 66 69 6c 65 52 6f >.$fileTarget,.'role'.=>.$fileRo
59200 6c 65 2c 20 27 74 61 73 6b 73 27 20 3d 3e 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a le,.'tasks'.=>.array());.}.}.}..
59220 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 return.$result;.}..private.funct
59240 69 6f 6e 20 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 32 30 28 24 63 68 69 6c 64 72 65 6e 2c ion.buildSourceList20($children,
59260 20 24 74 61 72 67 65 74 52 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 2c .$targetRoles,.$source,.$target,
59280 20 24 72 6f 6c 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 72 65 73 75 6c 74 20 .$role,.$packageName).{.$result.
592a0 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 63 68 69 6c 64 72 65 6e =.array();....foreach.($children
592c0 20 61 73 20 24 63 68 69 6c 64 29 20 7b 0a 0a 69 66 20 28 27 64 69 72 27 20 3d 3d 20 24 63 68 69 .as.$child).{..if.('dir'.==.$chi
592e0 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 64 69 72 53 6f 75 72 63 65 20 3d 20 24 74 ld->getName()).{.$dirSource.=.$t
59300 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 65 2c 20 24 63 68 69 6c 64 5b 27 6e 61 his->combine($source,.$child['na
59320 6d 65 27 5d 29 3b 0a 24 64 69 72 54 61 72 67 65 74 20 3d 20 24 63 68 69 6c 64 5b 27 62 61 73 65 me']);.$dirTarget.=.$child['base
59340 69 6e 73 74 61 6c 6c 64 69 72 27 5d 20 3f 3a 20 24 74 61 72 67 65 74 3b 0a 24 64 69 72 52 6f 6c installdir'].?:.$target;.$dirRol
59360 65 20 3d 20 24 63 68 69 6c 64 5b 27 72 6f 6c 65 27 5d 20 3f 3a 20 24 72 6f 6c 65 3b 0a 24 64 69 e.=.$child['role'].?:.$role;.$di
59380 72 46 69 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 32 rFiles.=.$this->buildSourceList2
593a0 30 28 24 63 68 69 6c 64 2d 3e 63 68 69 6c 64 72 65 6e 28 29 2c 20 24 74 61 72 67 65 74 52 6f 6c 0($child->children(),.$targetRol
593c0 65 73 2c 20 24 64 69 72 53 6f 75 72 63 65 2c 20 24 64 69 72 54 61 72 67 65 74 2c 20 24 64 69 72 es,.$dirSource,.$dirTarget,.$dir
593e0 52 6f 6c 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 Role,.$packageName);.$result.=.a
59400 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 64 69 72 46 69 6c 65 73 29 3b 0a rray_merge($result,.$dirFiles);.
59420 7d 20 65 6c 73 65 69 66 20 28 27 66 69 6c 65 27 20 3d 3d 20 24 63 68 69 6c 64 2d 3e 67 65 74 4e }.elseif.('file'.==.$child->getN
59440 61 6d 65 28 29 29 20 7b 0a 24 66 69 6c 65 52 6f 6c 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 63 ame()).{.$fileRole.=.(string).$c
59460 68 69 6c 64 5b 27 72 6f 6c 65 27 5d 20 3f 3a 20 24 72 6f 6c 65 3b 0a 69 66 20 28 69 73 73 65 74 hild['role'].?:.$role;.if.(isset
59480 28 24 74 61 72 67 65 74 52 6f 6c 65 73 5b 24 66 69 6c 65 52 6f 6c 65 5d 29 29 20 7b 0a 24 66 69 ($targetRoles[$fileRole])).{.$fi
594a0 6c 65 53 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 leSource.=.$this->combine($sourc
594c0 65 2c 20 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 29 3b 0a 24 66 69 e,.(string).$child['name']);.$fi
594e0 6c 65 54 61 72 67 65 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 28 73 74 72 69 6e leTarget.=.$this->combine((strin
59500 67 29 20 28 24 63 68 69 6c 64 5b 27 62 61 73 65 69 6e 73 74 61 6c 6c 64 69 72 27 5d 20 3f 3a 20 g).($child['baseinstalldir'].?:.
59520 24 74 61 72 67 65 74 29 2c 20 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 $target),.(string).$child['name'
59540 5d 29 3b 0a 24 66 69 6c 65 54 61 73 6b 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 ]);.$fileTasks.=.array();.foreac
59560 68 20 28 24 63 68 69 6c 64 2d 3e 63 68 69 6c 64 72 65 6e 28 27 68 74 74 70 3a 2f 2f 70 65 61 72 h.($child->children('http://pear
59580 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 74 61 73 6b 73 2d 31 2e 30 27 29 20 61 73 20 24 74 61 73 .php.net/dtd/tasks-1.0').as.$tas
595a0 6b 4e 6f 64 65 29 20 7b 0a 69 66 20 28 27 72 65 70 6c 61 63 65 27 20 3d 3d 20 24 74 61 73 6b 4e kNode).{.if.('replace'.==.$taskN
595c0 6f 64 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 66 69 6c 65 54 61 73 6b 73 5b 5d 20 3d ode->getName()).{.$fileTasks[].=
595e0 20 61 72 72 61 79 28 27 66 72 6f 6d 27 20 3d 3e 20 28 73 74 72 69 6e 67 29 20 24 74 61 73 6b 4e .array('from'.=>.(string).$taskN
59600 6f 64 65 2d 3e 61 74 74 72 69 62 75 74 65 73 28 29 2d 3e 66 72 6f 6d 2c 20 27 74 6f 27 20 3d 3e ode->attributes()->from,.'to'.=>
59620 20 28 73 74 72 69 6e 67 29 20 24 74 61 73 6b 4e 6f 64 65 2d 3e 61 74 74 72 69 62 75 74 65 73 28 .(string).$taskNode->attributes(
59640 29 2d 3e 74 6f 29 3b 0a 7d 0a 7d 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 66 69 6c 65 52 )->to);.}.}.if.(!in_array($fileR
59660 6f 6c 65 2c 20 73 65 6c 66 3a 3a 24 72 6f 6c 65 73 57 69 74 68 6f 75 74 50 61 63 6b 61 67 65 4e ole,.self::$rolesWithoutPackageN
59680 61 6d 65 50 72 65 66 69 78 29 29 20 7b 0a 24 66 69 6c 65 54 61 72 67 65 74 20 3d 20 24 70 61 63 amePrefix)).{.$fileTarget.=.$pac
596a0 6b 61 67 65 4e 61 6d 65 20 2e 20 27 2f 27 20 2e 20 24 66 69 6c 65 54 61 72 67 65 74 3b 0a 7d 0a kageName...'/'...$fileTarget;.}.
596c0 24 72 65 73 75 6c 74 5b 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 5d $result[(string).$child['name']]
596e0 20 3d 20 61 72 72 61 79 28 27 66 72 6f 6d 27 20 3d 3e 20 24 66 69 6c 65 53 6f 75 72 63 65 2c 20 .=.array('from'.=>.$fileSource,.
59700 27 74 6f 27 20 3d 3e 20 24 66 69 6c 65 54 61 72 67 65 74 2c 20 27 72 6f 6c 65 27 20 3d 3e 20 24 'to'.=>.$fileTarget,.'role'.=>.$
59720 66 69 6c 65 52 6f 6c 65 2c 20 27 74 61 73 6b 73 27 20 3d 3e 20 24 66 69 6c 65 54 61 73 6b 73 29 fileRole,.'tasks'.=>.$fileTasks)
59740 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 70 72 69 76 ;.}.}.}..return.$result;.}..priv
59760 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 62 69 6e 65 28 24 6c 65 66 74 2c 20 24 72 69 67 ate.function.combine($left,.$rig
59780 68 74 29 0a 7b 0a 72 65 74 75 72 6e 20 72 74 72 69 6d 28 24 6c 65 66 74 2c 20 27 2f 27 29 20 2e ht).{.return.rtrim($left,.'/')..
597a0 20 27 2f 27 20 2e 20 6c 74 72 69 6d 28 24 72 69 67 68 74 2c 20 27 2f 27 29 3b 0a 7d 0a 7d 0a 3c .'/'...ltrim($right,.'/');.}.}.<
597c0 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 ?php............namespace.Compos
597e0 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 er\Downloader;..use.Composer\Pac
59800 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f kage\PackageInterface;.use.Compo
59820 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 ser\Repository\VcsRepository;.us
59840 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 65 72 66 6f 72 63 65 3b 0a 0a 0a 0a 0a 63 6c e.Composer\Util\Perforce;.....cl
59860 61 73 73 20 50 65 72 66 6f 72 63 65 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 56 ass.PerforceDownloader.extends.V
59880 63 73 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 65 72 66 6f csDownloader.{..protected.$perfo
598a0 72 63 65 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 6f 77 6e 6c rce;.....public.function.doDownl
598c0 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 oad(PackageInterface.$package,.$
598e0 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 24 72 65 66 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 path,.$url).{.$ref.=.$package->g
59900 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 24 6c 61 62 65 6c 20 3d 20 24 74 etSourceReference();.$label.=.$t
59920 68 69 73 2d 3e 67 65 74 4c 61 62 65 6c 46 72 6f 6d 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 his->getLabelFromSourceReference
59940 28 24 72 65 66 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 ($ref);..$this->io->writeError('
59960 20 20 20 20 43 6c 6f 6e 69 6e 67 20 27 20 2e 20 24 72 65 66 29 3b 0a 24 74 68 69 73 2d 3e 69 6e ....Cloning.'...$ref);.$this->in
59980 69 74 50 65 72 66 6f 72 63 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 72 6c itPerforce($package,.$path,.$url
599a0 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 73 65 74 53 74 72 65 61 6d 28 24 72 );.$this->perforce->setStream($r
599c0 65 66 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 70 34 4c 6f 67 69 6e 28 29 3b ef);.$this->perforce->p4Login();
599e0 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 77 72 69 74 65 50 34 43 6c 69 65 6e 74 53 .$this->perforce->writeP4ClientS
59a00 70 65 63 28 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 63 6f 6e 6e 65 63 74 43 pec();.$this->perforce->connectC
59a20 6c 69 65 6e 74 28 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 73 79 6e 63 43 6f lient();.$this->perforce->syncCo
59a40 64 65 42 61 73 65 28 24 6c 61 62 65 6c 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d deBase($label);.$this->perforce-
59a60 3e 63 6c 65 61 6e 75 70 43 6c 69 65 6e 74 53 70 65 63 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 >cleanupClientSpec();.}..private
59a80 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 61 62 65 6c 46 72 6f 6d 53 6f 75 72 63 65 52 65 66 65 .function.getLabelFromSourceRefe
59aa0 72 65 6e 63 65 28 24 72 65 66 29 0a 7b 0a 24 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 72 65 66 rence($ref).{.$pos.=.strpos($ref
59ac0 2c 20 27 40 27 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 29 20 7b 0a 72 65 ,.'@');.if.(false.!==.$pos).{.re
59ae0 74 75 72 6e 20 73 75 62 73 74 72 28 24 72 65 66 2c 20 24 70 6f 73 20 2b 20 31 29 3b 0a 7d 0a 0a turn.substr($ref,.$pos.+.1);.}..
59b00 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 return.null;.}..public.function.
59b20 69 6e 69 74 50 65 72 66 6f 72 63 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 initPerforce(PackageInterface.$p
59b40 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 69 66 20 28 21 65 6d 70 74 ackage,.$path,.$url).{.if.(!empt
59b60 79 28 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 65 72 y($this->perforce)).{.$this->per
59b80 66 6f 72 63 65 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 0a 72 force->initializePath($path);..r
59ba0 65 74 75 72 6e 3b 0a 7d 0a 0a 24 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 70 61 63 6b 61 67 65 eturn;.}..$repository.=.$package
59bc0 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 24 72 65 70 6f 43 6f 6e 66 69 67 20 3d ->getRepository();.$repoConfig.=
59be0 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 72 65 70 6f 73 69 74 6f 72 79 20 69 6e 73 74 61 6e 63 65 6f .null;.if.($repository.instanceo
59c00 66 20 56 63 73 52 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 72 65 70 6f 43 6f 6e 66 69 67 20 3d f.VcsRepository).{.$repoConfig.=
59c20 20 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 28 24 72 65 70 6f 73 69 74 6f 72 .$this->getRepoConfig($repositor
59c40 79 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 20 3d 20 50 65 72 66 6f 72 63 65 y);.}.$this->perforce.=.Perforce
59c60 3a 3a 63 72 65 61 74 65 28 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 24 75 72 6c 2c 20 24 70 61 74 ::create($repoConfig,.$url,.$pat
59c80 68 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2c 20 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 7d h,.$this->process,.$this->io);.}
59ca0 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 ..private.function.getRepoConfig
59cc0 28 56 63 73 52 65 70 6f 73 69 74 6f 72 79 20 24 72 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 72 65 (VcsRepository.$repository).{.re
59ce0 74 75 72 6e 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 28 turn.$repository->getRepoConfig(
59d00 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 55 70 64 61 74 );.}.....public.function.doUpdat
59d20 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 e(PackageInterface.$initial,.Pac
59d40 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 2c 20 24 75 kageInterface.$target,.$path,.$u
59d60 72 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f 44 6f 77 6e 6c 6f 61 64 28 24 74 61 72 67 65 74 2c rl).{.$this->doDownload($target,
59d80 20 24 70 61 74 68 2c 20 24 75 72 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .$path,.$url);.}.....public.func
59da0 74 69 6f 6e 20 67 65 74 4c 6f 63 61 6c 43 68 61 6e 67 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 tion.getLocalChanges(PackageInte
59dc0 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 74 68 69 73 2d 3e rface.$package,.$path).{.$this->
59de0 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 50 65 72 66 6f 72 63 65 20 64 72 69 76 65 72 20 io->writeError('Perforce.driver.
59e00 64 6f 65 73 20 6e 6f 74 20 63 68 65 63 6b 20 66 6f 72 20 6c 6f 63 61 6c 20 63 68 61 6e 67 65 73 does.not.check.for.local.changes
59e20 20 62 65 66 6f 72 65 20 6f 76 65 72 72 69 64 69 6e 67 27 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 .before.overriding',.true);..ret
59e40 75 72 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 urn;.}.....protected.function.ge
59e60 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 24 74 6f 52 tCommitLogs($fromReference,.$toR
59e80 65 66 65 72 65 6e 63 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 63 6f 6d 6d 69 74 4c 6f 67 73 20 3d eference,.$path).{.$commitLogs.=
59ea0 20 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 67 65 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 .$this->perforce->getCommitLogs(
59ec0 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 24 74 6f 52 65 66 65 72 65 6e 63 65 29 3b 0a 0a $fromReference,.$toReference);..
59ee0 72 65 74 75 72 6e 20 24 63 6f 6d 6d 69 74 4c 6f 67 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 return.$commitLogs;.}..public.fu
59f00 6e 63 74 69 6f 6e 20 73 65 74 50 65 72 66 6f 72 63 65 28 24 70 65 72 66 6f 72 63 65 29 0a 7b 0a nction.setPerforce($perforce).{.
59f20 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 20 3d 20 24 70 65 72 66 6f 72 63 65 3b 0a 7d 0a 0a $this->perforce.=.$perforce;.}..
59f40 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4d 65 74 61 64 61 74 ...protected.function.hasMetadat
59f60 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 aRepository($path).{.return.true
59f80 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 ;.}.}.<?php............namespace
59fa0 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 .Composer\Downloader;.......clas
59fc0 73 20 50 68 61 72 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 41 72 63 68 69 76 65 s.PharDownloader.extends.Archive
59fe0 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 Downloader.{....protected.functi
5a000 6f 6e 20 65 78 74 72 61 63 74 28 24 66 69 6c 65 2c 20 24 70 61 74 68 29 0a 7b 0a 0a 20 24 61 72 on.extract($file,.$path).{...$ar
5a020 63 68 69 76 65 20 3d 20 6e 65 77 20 5c 50 68 61 72 28 24 66 69 6c 65 29 3b 0a 24 61 72 63 68 69 chive.=.new.\Phar($file);.$archi
5a040 76 65 2d 3e 65 78 74 72 61 63 74 54 6f 28 24 70 61 74 68 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 ve->extractTo($path,.null,.true)
5a060 3b 0a 0a 0a 0a 0a 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 ;......}.}.<?php............name
5a080 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 space.Composer\Downloader;..use.
5a0a0 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 61 Composer\Config;.use.Composer\Ca
5a0c0 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 che;.use.Composer\EventDispatche
5a0e0 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c r\EventDispatcher;.use.Composer\
5a100 55 74 69 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c Util\Platform;.use.Composer\Util
5a120 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 \ProcessExecutor;.use.Composer\U
5a140 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 til\RemoteFilesystem;.use.Compos
5a160 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 52 61 72 41 72 63 68 69 76 er\IO\IOInterface;.use.RarArchiv
5a180 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 61 72 44 6f 77 6e 6c 6f 61 64 65 72 20 65 e;.........class.RarDownloader.e
5a1a0 78 74 65 6e 64 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 70 72 6f 74 65 xtends.ArchiveDownloader.{.prote
5a1c0 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 cted.$process;..public.function.
5a1e0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e __construct(IOInterface.$io,.Con
5a200 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 24 65 76 fig.$config,.EventDispatcher.$ev
5a220 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 43 61 63 68 65 20 24 63 61 63 entDispatcher.=.null,.Cache.$cac
5a240 68 65 20 3d 20 6e 75 6c 6c 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 he.=.null,.ProcessExecutor.$proc
5a260 65 73 73 20 3d 20 6e 75 6c 6c 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 ess.=.null,.RemoteFilesystem.$rf
5a280 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 s.=.null).{.$this->process.=.$pr
5a2a0 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f ocess.?:.new.ProcessExecutor($io
5a2c0 29 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 2c 20 24 63 6f 6e );.parent::__construct($io,.$con
5a2e0 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 63 61 63 68 65 2c 20 24 fig,.$eventDispatcher,.$cache,.$
5a300 72 66 73 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 rfs);.}..protected.function.extr
5a320 61 63 74 28 24 66 69 6c 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 70 72 6f 63 65 73 73 45 72 72 6f act($file,.$path).{.$processErro
5a340 72 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 69 66 20 28 21 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 r.=.null;....if.(!Platform::isWi
5a360 6e 64 6f 77 73 28 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 75 6e 72 61 72 20 78 20 27 ndows()).{.$command.=.'unrar.x.'
5a380 20 2e 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 66 69 6c 65 ...ProcessExecutor::escape($file
5a3a0 29 20 2e 20 27 20 27 20 2e 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 )...'.'...ProcessExecutor::escap
5a3c0 65 28 24 70 61 74 68 29 20 2e 20 27 20 26 26 20 63 68 6d 6f 64 20 2d 52 20 75 2b 77 20 27 20 2e e($path)...'.&&.chmod.-R.u+w.'..
5a3e0 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 70 61 74 68 29 3b .ProcessExecutor::escape($path);
5a400 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 ..if.(0.===.$this->process->exec
5a420 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b ute($command,.$ignoredOutput)).{
5a440 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 45 72 72 6f 72 20 3d 20 27 46 61 69 .return;.}..$processError.=.'Fai
5a460 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c led.to.execute.'...$command..."\
5a480 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f n\n"...$this->process->getErrorO
5a4a0 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 27 52 utput();.}..if.(!class_exists('R
5a4c0 61 72 41 72 63 68 69 76 65 27 29 29 20 7b 0a 0a 20 24 69 6e 69 50 61 74 68 20 3d 20 70 68 70 5f arArchive')).{...$iniPath.=.php_
5a4e0 69 6e 69 5f 6c 6f 61 64 65 64 5f 66 69 6c 65 28 29 3b 0a 0a 69 66 20 28 24 69 6e 69 50 61 74 68 ini_loaded_file();..if.($iniPath
5a500 29 20 7b 0a 24 69 6e 69 4d 65 73 73 61 67 65 20 3d 20 27 54 68 65 20 70 68 70 2e 69 6e 69 20 75 ).{.$iniMessage.=.'The.php.ini.u
5a520 73 65 64 20 62 79 20 79 6f 75 72 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 50 48 50 20 69 73 3a sed.by.your.command-line.PHP.is:
5a540 20 27 20 2e 20 24 69 6e 69 50 61 74 68 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6e 69 4d 65 73 73 .'...$iniPath;.}.else.{.$iniMess
5a560 61 67 65 20 3d 20 27 41 20 70 68 70 2e 69 6e 69 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f 74 20 65 age.=.'A.php.ini.file.does.not.e
5a580 78 69 73 74 2e 20 59 6f 75 20 77 69 6c 6c 20 68 61 76 65 20 74 6f 20 63 72 65 61 74 65 20 6f 6e xist..You.will.have.to.create.on
5a5a0 65 2e 27 3b 0a 7d 0a 0a 24 65 72 72 6f 72 20 3d 20 22 43 6f 75 6c 64 20 6e 6f 74 20 64 65 63 6f e.';.}..$error.=."Could.not.deco
5a5c0 6d 70 72 65 73 73 20 74 68 65 20 61 72 63 68 69 76 65 2c 20 65 6e 61 62 6c 65 20 74 68 65 20 50 mpress.the.archive,.enable.the.P
5a5e0 48 50 20 72 61 72 20 65 78 74 65 6e 73 69 6f 6e 20 6f 72 20 69 6e 73 74 61 6c 6c 20 75 6e 72 61 HP.rar.extension.or.install.unra
5a600 72 2e 5c 6e 22 0a 2e 20 24 69 6e 69 4d 65 73 73 61 67 65 20 2e 20 22 5c 6e 22 20 2e 20 24 70 72 r.\n"...$iniMessage..."\n"...$pr
5a620 6f 63 65 73 73 45 72 72 6f 72 3b 0a 0a 69 66 20 28 21 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 ocessError;..if.(!Platform::isWi
5a640 6e 64 6f 77 73 28 29 29 20 7b 0a 24 65 72 72 6f 72 20 3d 20 22 43 6f 75 6c 64 20 6e 6f 74 20 64 ndows()).{.$error.=."Could.not.d
5a660 65 63 6f 6d 70 72 65 73 73 20 74 68 65 20 61 72 63 68 69 76 65 2c 20 65 6e 61 62 6c 65 20 74 68 ecompress.the.archive,.enable.th
5a680 65 20 50 48 50 20 72 61 72 20 65 78 74 65 6e 73 69 6f 6e 2e 5c 6e 22 20 2e 20 24 69 6e 69 4d 65 e.PHP.rar.extension.\n"...$iniMe
5a6a0 73 73 61 67 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 ssage;.}..throw.new.\RuntimeExce
5a6c0 70 74 69 6f 6e 28 24 65 72 72 6f 72 29 3b 0a 7d 0a 0a 24 72 61 72 41 72 63 68 69 76 65 20 3d 20 ption($error);.}..$rarArchive.=.
5a6e0 52 61 72 41 72 63 68 69 76 65 3a 3a 6f 70 65 6e 28 24 66 69 6c 65 29 3b 0a 0a 69 66 20 28 66 61 RarArchive::open($file);..if.(fa
5a700 6c 73 65 20 3d 3d 3d 20 24 72 61 72 41 72 63 68 69 76 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 lse.===.$rarArchive).{.throw.new
5a720 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c .\UnexpectedValueException('Coul
5a740 64 20 6e 6f 74 20 6f 70 65 6e 20 52 41 52 20 61 72 63 68 69 76 65 3a 20 27 20 2e 20 24 66 69 6c d.not.open.RAR.archive:.'...$fil
5a760 65 29 3b 0a 7d 0a 0a 24 65 6e 74 72 69 65 73 20 3d 20 24 72 61 72 41 72 63 68 69 76 65 2d 3e 67 e);.}..$entries.=.$rarArchive->g
5a780 65 74 45 6e 74 72 69 65 73 28 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 65 6e 74 etEntries();..if.(false.===.$ent
5a7a0 72 69 65 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 ries).{.throw.new.\RuntimeExcept
5a7c0 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 72 65 74 72 69 65 76 65 20 52 41 52 20 61 72 63 68 ion('Could.not.retrieve.RAR.arch
5a7e0 69 76 65 20 65 6e 74 72 69 65 73 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 65 6e 74 72 ive.entries');.}..foreach.($entr
5a800 69 65 73 20 61 73 20 24 65 6e 74 72 79 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 ies.as.$entry).{.if.(false.===.$
5a820 65 6e 74 72 79 2d 3e 65 78 74 72 61 63 74 28 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e entry->extract($path)).{.throw.n
5a840 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 ew.\RuntimeException('Could.not.
5a860 65 78 74 72 61 63 74 20 65 6e 74 72 79 27 29 3b 0a 7d 0a 7d 0a 0a 24 72 61 72 41 72 63 68 69 76 extract.entry');.}.}..$rarArchiv
5a880 65 2d 3e 63 6c 6f 73 65 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a e->close();.}.}.<?php...........
5a8a0 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a .namespace.Composer\Downloader;.
5a8c0 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 .use.Composer\Package\PackageInt
5a8e0 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 76 6e 20 61 73 erface;.use.Composer\Util\Svn.as
5a900 20 53 76 6e 55 74 69 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 .SvnUtil;.use.Composer\Repositor
5a920 79 5c 56 63 73 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 76 6e 44 y\VcsRepository;......class.SvnD
5a940 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 0a ownloader.extends.VcsDownloader.
5a960 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3d 20 {.protected.$cacheCredentials.=.
5a980 74 72 75 65 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 6f 77 6e true;.....public.function.doDown
5a9a0 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 load(PackageInterface.$package,.
5a9c0 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 53 76 6e 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 $path,.$url).{.SvnUtil::cleanEnv
5a9e0 28 29 3b 0a 24 72 65 66 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 ();.$ref.=.$package->getSourceRe
5aa00 66 65 72 65 6e 63 65 28 29 3b 0a 0a 24 72 65 70 6f 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 ference();..$repo.=.$package->ge
5aa20 74 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 69 66 20 28 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 tRepository();.if.($repo.instanc
5aa40 65 6f 66 20 56 63 73 52 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 72 65 70 6f 43 6f 6e 66 69 67 eof.VcsRepository).{.$repoConfig
5aa60 20 3d 20 24 72 65 70 6f 2d 3e 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 28 29 3b 0a 69 66 20 28 61 .=.$repo->getRepoConfig();.if.(a
5aa80 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 27 73 76 6e 2d 63 61 63 68 65 2d 63 72 65 64 65 rray_key_exists('svn-cache-crede
5aaa0 6e 74 69 61 6c 73 27 2c 20 24 72 65 70 6f 43 6f 6e 66 69 67 29 29 20 7b 0a 24 74 68 69 73 2d 3e ntials',.$repoConfig)).{.$this->
5aac0 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3d 20 28 62 6f 6f 6c 29 20 24 72 65 70 6f 43 cacheCredentials.=.(bool).$repoC
5aae0 6f 6e 66 69 67 5b 27 73 76 6e 2d 63 61 63 68 65 2d 63 72 65 64 65 6e 74 69 61 6c 73 27 5d 3b 0a onfig['svn-cache-credentials'];.
5ab00 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 20 20 }.}..$this->io->writeError("....
5ab20 43 68 65 63 6b 69 6e 67 20 6f 75 74 20 22 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 Checking.out.".$package->getSour
5ab40 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 24 ceReference());.$this->execute($
5ab60 75 72 6c 2c 20 22 73 76 6e 20 63 6f 22 2c 20 73 70 72 69 6e 74 66 28 22 25 73 2f 25 73 22 2c 20 url,."svn.co",.sprintf("%s/%s",.
5ab80 24 75 72 6c 2c 20 24 72 65 66 29 2c 20 6e 75 6c 6c 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a $url,.$ref),.null,.$path);.}....
5aba0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 55 70 64 61 74 65 28 50 61 63 6b 61 67 .public.function.doUpdate(Packag
5abc0 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 eInterface.$initial,.PackageInte
5abe0 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 53 76 rface.$target,.$path,.$url).{.Sv
5ac00 6e 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 24 72 65 66 20 3d 20 24 74 61 72 67 65 nUtil::cleanEnv();.$ref.=.$targe
5ac20 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 0a 69 66 20 28 21 24 t->getSourceReference();..if.(!$
5ac40 74 68 69 73 2d 3e 68 61 73 4d 65 74 61 64 61 74 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 this->hasMetadataRepository($pat
5ac60 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f h)).{.throw.new.\RuntimeExceptio
5ac80 6e 28 27 54 68 65 20 2e 73 76 6e 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 6d 69 73 73 69 6e 67 n('The..svn.directory.is.missing
5aca0 20 66 72 6f 6d 20 27 2e 24 70 61 74 68 2e 27 2c 20 73 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 74 .from.'.$path.',.see.https://get
5acc0 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 63 6f 6d 6d 69 74 2d 64 65 70 73 20 66 6f 72 20 6d 6f 72 composer.org/commit-deps.for.mor
5ace0 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 66 6c 61 67 73 20 3d 20 22 22 3b e.information');.}..$flags.=."";
5ad00 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 .if.(0.===.$this->process->execu
5ad20 74 65 28 27 73 76 6e 20 2d 2d 76 65 72 73 69 6f 6e 27 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a te('svn.--version',.$output)).{.
5ad40 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 28 5c 64 2b 28 3f 3a 5c 2e 5c 64 2b 29 2b 29 if.(preg_match('{(\d+(?:\.\d+)+)
5ad60 7d 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 6d 61 74 63 68 29 20 26 26 20 76 65 72 73 69 6f 6e 5f }',.$output,.$match).&&.version_
5ad80 63 6f 6d 70 61 72 65 28 24 6d 61 74 63 68 5b 31 5d 2c 20 27 31 2e 37 2e 30 27 2c 20 27 3e 3d 27 compare($match[1],.'1.7.0',.'>='
5ada0 29 29 20 7b 0a 24 66 6c 61 67 73 20 2e 3d 20 27 20 2d 2d 69 67 6e 6f 72 65 2d 61 6e 63 65 73 74 )).{.$flags..=.'.--ignore-ancest
5adc0 72 79 27 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 ry';.}.}..$this->io->writeError(
5ade0 22 20 20 20 20 43 68 65 63 6b 69 6e 67 20 6f 75 74 20 22 20 2e 20 24 72 65 66 29 3b 0a 24 74 68 "....Checking.out."...$ref);.$th
5ae00 69 73 2d 3e 65 78 65 63 75 74 65 28 24 75 72 6c 2c 20 22 73 76 6e 20 73 77 69 74 63 68 22 20 2e is->execute($url,."svn.switch"..
5ae20 20 24 66 6c 61 67 73 2c 20 73 70 72 69 6e 74 66 28 22 25 73 2f 25 73 22 2c 20 24 75 72 6c 2c 20 .$flags,.sprintf("%s/%s",.$url,.
5ae40 24 72 65 66 29 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 $ref),.$path);.}.....public.func
5ae60 74 69 6f 6e 20 67 65 74 4c 6f 63 61 6c 43 68 61 6e 67 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 tion.getLocalChanges(PackageInte
5ae80 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 24 74 rface.$package,.$path).{.if.(!$t
5aea0 68 69 73 2d 3e 68 61 73 4d 65 74 61 64 61 74 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 68 his->hasMetadataRepository($path
5aec0 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e )).{.return;.}..$this->process->
5aee0 65 78 65 63 75 74 65 28 27 73 76 6e 20 73 74 61 74 75 73 20 2d 2d 69 67 6e 6f 72 65 2d 65 78 74 execute('svn.status.--ignore-ext
5af00 65 72 6e 61 6c 73 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 3b 0a 0a 72 65 74 75 72 ernals',.$output,.$path);..retur
5af20 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 20 2a 5b 5e 58 20 5d 20 2b 7d 6d 27 2c 20 24 6f n.preg_match('{^.*[^X.].+}m',.$o
5af40 75 74 70 75 74 29 20 3f 20 24 6f 75 74 70 75 74 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a utput).?.$output.:.null;.}......
5af60 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 ........protected.function.execu
5af80 74 65 28 24 62 61 73 65 55 72 6c 2c 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c 20 24 63 77 te($baseUrl,.$command,.$url,.$cw
5afa0 64 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 75 74 69 6c 20 d.=.null,.$path.=.null).{.$util.
5afc0 3d 20 6e 65 77 20 53 76 6e 55 74 69 6c 28 24 62 61 73 65 55 72 6c 2c 20 24 74 68 69 73 2d 3e 69 =.new.SvnUtil($baseUrl,.$this->i
5afe0 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 24 75 74 69 6c 2d 3e 73 65 74 43 61 63 o,.$this->config);.$util->setCac
5b000 68 65 43 72 65 64 65 6e 74 69 61 6c 73 28 24 74 68 69 73 2d 3e 63 61 63 68 65 43 72 65 64 65 6e heCredentials($this->cacheCreden
5b020 74 69 61 6c 73 29 3b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 75 74 69 6c 2d 3e 65 78 65 63 tials);.try.{.return.$util->exec
5b040 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c 20 24 63 77 64 2c 20 24 70 61 74 68 2c ute($command,.$url,.$cwd,.$path,
5b060 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 3b 0a 7d 20 63 61 74 63 .$this->io->isVerbose());.}.catc
5b080 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 h.(\RuntimeException.$e).{.throw
5b0a0 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 27 50 61 63 6b 61 67 65 .new.\RuntimeException(.'Package
5b0c0 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 2c 20 27 2e 24 65 2d 3e .could.not.be.downloaded,.'.$e->
5b0e0 67 65 74 4d 65 73 73 61 67 65 28 29 0a 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 getMessage().);.}.}.....protecte
5b100 64 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 43 68 61 6e 67 65 73 28 50 61 63 6b 61 67 65 49 d.function.cleanChanges(PackageI
5b120 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 70 64 61 74 nterface.$package,.$path,.$updat
5b140 65 29 0a 7b 0a 69 66 20 28 21 24 63 68 61 6e 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c e).{.if.(!$changes.=.$this->getL
5b160 6f 63 61 6c 43 68 61 6e 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 29 20 7b 0a ocalChanges($package,.$path)).{.
5b180 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 return;.}..if.(!$this->io->isInt
5b1a0 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 74 68 69 73 eractive()).{.if.(true.===.$this
5b1c0 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 64 69 73 63 61 72 64 2d 63 68 61 6e 67 65 73 27 29 ->config->get('discard-changes')
5b1e0 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 73 63 61 72 64 43 68 61 6e 67 65 73 ).{.return.$this->discardChanges
5b200 28 24 70 61 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 63 6c 65 61 6e ($path);.}..return.parent::clean
5b220 43 68 61 6e 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 70 64 61 74 65 Changes($package,.$path,.$update
5b240 29 3b 0a 7d 0a 0a 24 63 68 61 6e 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 );.}..$changes.=.array_map(funct
5b260 69 6f 6e 20 28 24 65 6c 65 6d 29 20 7b 0a 72 65 74 75 72 6e 20 27 20 20 20 20 27 2e 24 65 6c 65 ion.($elem).{.return.'....'.$ele
5b280 6d 3b 0a 7d 2c 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 73 2a 5c 72 3f 5c 6e 5c 73 2a 7d 27 m;.},.preg_split('{\s*\r?\n\s*}'
5b2a0 2c 20 24 63 68 61 6e 67 65 73 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 ,.$changes));.$this->io->writeEr
5b2c0 72 6f 72 28 27 20 20 20 20 3c 65 72 72 6f 72 3e 54 68 65 20 70 61 63 6b 61 67 65 20 68 61 73 20 ror('....<error>The.package.has.
5b2e0 6d 6f 64 69 66 69 65 64 20 66 69 6c 65 73 3a 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 74 68 69 73 modified.files:</error>');.$this
5b300 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 5f 73 6c 69 63 65 28 24 63 68 ->io->writeError(array_slice($ch
5b320 61 6e 67 65 73 2c 20 30 2c 20 31 30 29 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 63 68 61 6e 67 anges,.0,.10));.if.(count($chang
5b340 65 73 29 20 3e 20 31 30 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f es).>.10).{.$this->io->writeErro
5b360 72 28 27 20 20 20 20 3c 69 6e 66 6f 3e 27 2e 63 6f 75 6e 74 28 24 63 68 61 6e 67 65 73 29 20 2d r('....<info>'.count($changes).-
5b380 20 31 30 20 2e 20 27 20 6d 6f 72 65 20 66 69 6c 65 73 20 6d 6f 64 69 66 69 65 64 2c 20 63 68 6f .10...'.more.files.modified,.cho
5b3a0 6f 73 65 20 22 76 22 20 74 6f 20 76 69 65 77 20 74 68 65 20 66 75 6c 6c 20 6c 69 73 74 3c 2f 69 ose."v".to.view.the.full.list</i
5b3c0 6e 66 6f 3e 27 29 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 73 77 69 74 63 68 nfo>');.}..while.(true).{.switch
5b3e0 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 28 27 20 20 20 20 3c 69 6e 66 6f 3e 44 69 73 63 .($this->io->ask('....<info>Disc
5b400 61 72 64 20 63 68 61 6e 67 65 73 20 5b 79 2c 6e 2c 76 2c 3f 5d 3f 3c 2f 69 6e 66 6f 3e 20 27 2c ard.changes.[y,n,v,?]?</info>.',
5b420 20 27 3f 27 29 29 20 7b 0a 63 61 73 65 20 27 79 27 3a 0a 24 74 68 69 73 2d 3e 64 69 73 63 61 72 .'?')).{.case.'y':.$this->discar
5b440 64 43 68 61 6e 67 65 73 28 24 70 61 74 68 29 3b 0a 62 72 65 61 6b 20 32 3b 0a 0a 63 61 73 65 20 dChanges($path);.break.2;..case.
5b460 27 6e 27 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 'n':.throw.new.\RuntimeException
5b480 28 27 55 70 64 61 74 65 20 61 62 6f 72 74 65 64 27 29 3b 0a 0a 63 61 73 65 20 27 76 27 3a 0a 24 ('Update.aborted');..case.'v':.$
5b4a0 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 63 68 61 6e 67 65 73 29 3b 0a this->io->writeError($changes);.
5b4c0 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 3f 27 3a 0a 64 65 66 61 75 6c 74 3a 0a 24 74 68 69 73 break;..case.'?':.default:.$this
5b4e0 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 28 0a 27 20 20 20 20 79 20 2d ->io->writeError(array(.'....y.-
5b500 20 64 69 73 63 61 72 64 20 63 68 61 6e 67 65 73 20 61 6e 64 20 61 70 70 6c 79 20 74 68 65 20 27 .discard.changes.and.apply.the.'
5b520 2e 28 24 75 70 64 61 74 65 20 3f 20 27 75 70 64 61 74 65 27 20 3a 20 27 75 6e 69 6e 73 74 61 6c .($update.?.'update'.:.'uninstal
5b540 6c 27 29 2c 0a 27 20 20 20 20 6e 20 2d 20 61 62 6f 72 74 20 74 68 65 20 27 2e 28 24 75 70 64 61 l'),.'....n.-.abort.the.'.($upda
5b560 74 65 20 3f 20 27 75 70 64 61 74 65 27 20 3a 20 27 75 6e 69 6e 73 74 61 6c 6c 27 29 2e 27 20 61 te.?.'update'.:.'uninstall').'.a
5b580 6e 64 20 6c 65 74 20 79 6f 75 20 6d 61 6e 75 61 6c 6c 79 20 63 6c 65 61 6e 20 74 68 69 6e 67 73 nd.let.you.manually.clean.things
5b5a0 20 75 70 27 2c 0a 27 20 20 20 20 76 20 2d 20 76 69 65 77 20 6d 6f 64 69 66 69 65 64 20 66 69 6c .up',.'....v.-.view.modified.fil
5b5c0 65 73 27 2c 0a 27 20 20 20 20 3f 20 2d 20 70 72 69 6e 74 20 68 65 6c 70 27 2c 0a 29 29 3b 0a 62 es',.'....?.-.print.help',.));.b
5b5e0 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 reak;.}.}.}.....protected.functi
5b600 6f 6e 20 67 65 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c on.getCommitLogs($fromReference,
5b620 20 24 74 6f 52 65 66 65 72 65 6e 63 65 2c 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 70 72 65 67 .$toReference,.$path).{.if.(preg
5b640 5f 6d 61 74 63 68 28 27 7b 2e 2a 40 28 5c 64 2b 29 24 7d 27 2c 20 24 66 72 6f 6d 52 65 66 65 72 _match('{.*@(\d+)$}',.$fromRefer
5b660 65 6e 63 65 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 2e 2a 40 28 5c 64 2b 29 24 7d ence).&&.preg_match('{.*@(\d+)$}
5b680 27 2c 20 24 74 6f 52 65 66 65 72 65 6e 63 65 29 29 20 7b 0a 0a 20 24 66 72 6f 6d 52 65 76 69 73 ',.$toReference)).{...$fromRevis
5b6a0 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 2e 2a 40 28 5c 64 2b 29 24 7d 27 ion.=.preg_replace('{.*@(\d+)$}'
5b6c0 2c 20 27 24 31 27 2c 20 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 29 3b 0a 24 74 6f 52 65 76 69 ,.'$1',.$fromReference);.$toRevi
5b6e0 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 2e 2a 40 28 5c 64 2b 29 24 7d sion.=.preg_replace('{.*@(\d+)$}
5b700 27 2c 20 27 24 31 27 2c 20 24 74 6f 52 65 66 65 72 65 6e 63 65 29 3b 0a 0a 24 63 6f 6d 6d 61 6e ',.'$1',.$toReference);..$comman
5b720 64 20 3d 20 73 70 72 69 6e 74 66 28 27 73 76 6e 20 6c 6f 67 20 2d 72 25 73 3a 25 73 20 2d 2d 69 d.=.sprintf('svn.log.-r%s:%s.--i
5b740 6e 63 72 65 6d 65 6e 74 61 6c 27 2c 20 24 66 72 6f 6d 52 65 76 69 73 69 6f 6e 2c 20 24 74 6f 52 ncremental',.$fromRevision,.$toR
5b760 65 76 69 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 evision);..if.(0.!==.$this->proc
5b780 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 ess->execute($command,.$output,.
5b7a0 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 $path)).{.throw.new.\RuntimeExce
5b7c0 70 74 69 6f 6e 28 0a 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 ption(.'Failed.to.execute.'...$c
5b7e0 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 ommand..."\n\n"...$this->process
5b800 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b ->getErrorOutput().);.}.}.else.{
5b820 0a 24 6f 75 74 70 75 74 20 3d 20 22 43 6f 75 6c 64 20 6e 6f 74 20 72 65 74 72 69 65 76 65 20 63 .$output.=."Could.not.retrieve.c
5b840 68 61 6e 67 65 73 20 62 65 74 77 65 65 6e 20 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 20 61 6e hanges.between.$fromReference.an
5b860 64 20 24 74 6f 52 65 66 65 72 65 6e 63 65 20 64 75 65 20 74 6f 20 6d 69 73 73 69 6e 67 20 72 65 d.$toReference.due.to.missing.re
5b880 76 69 73 69 6f 6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 22 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 vision.information";.}..return.$
5b8a0 6f 75 74 70 75 74 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 69 output;.}..protected.function.di
5b8c0 73 63 61 72 64 43 68 61 6e 67 65 73 28 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 30 20 21 3d 3d 20 scardChanges($path).{.if.(0.!==.
5b8e0 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 72 65 76 $this->process->execute('svn.rev
5b900 65 72 74 20 2d 52 20 2e 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 68 ert.-R..',.$output,.$path)).{.th
5b920 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 22 43 6f 75 6c 64 row.new.\RuntimeException("Could
5b940 20 6e 6f 74 20 72 65 73 65 74 20 63 68 61 6e 67 65 73 5c 6e 5c 6e 3a 22 2e 24 74 68 69 73 2d 3e .not.reset.changes\n\n:".$this->
5b960 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 7d 0a process->getErrorOutput());.}.}.
5b980 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4d 65 74 61 64 61 ....protected.function.hasMetada
5b9a0 74 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 5f taRepository($path).{.return.is_
5b9c0 64 69 72 28 24 70 61 74 68 2e 27 2f 2e 73 76 6e 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a dir($path.'/.svn');.}.}.<?php...
5b9e0 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e .........namespace.Composer\Down
5ba00 6c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 72 44 6f 77 6e 6c 6f 61 64 65 loader;.......class.TarDownloade
5ba20 72 20 65 78 74 65 6e 64 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a r.extends.ArchiveDownloader.{...
5ba40 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 28 24 66 69 6c .protected.function.extract($fil
5ba60 65 2c 20 24 70 61 74 68 29 0a 7b 0a 0a 20 24 61 72 63 68 69 76 65 20 3d 20 6e 65 77 20 5c 50 68 e,.$path).{...$archive.=.new.\Ph
5ba80 61 72 44 61 74 61 28 24 66 69 6c 65 29 3b 0a 24 61 72 63 68 69 76 65 2d 3e 65 78 74 72 61 63 74 arData($file);.$archive->extract
5baa0 54 6f 28 24 70 61 74 68 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 To($path,.null,.true);.}.}.<?php
5bac0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 ............namespace.Composer\D
5bae0 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 72 61 6e 73 70 6f 72 74 45 78 ownloader;.....class.TransportEx
5bb00 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f ception.extends.\RuntimeExceptio
5bb20 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 65 61 64 65 72 73 3b 0a 70 72 6f 74 65 63 74 65 n.{.protected.$headers;.protecte
5bb40 64 20 24 72 65 73 70 6f 6e 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 74 61 74 75 73 43 6f d.$response;.protected.$statusCo
5bb60 64 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 61 64 65 72 73 28 de;..public.function.setHeaders(
5bb80 24 68 65 61 64 65 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 61 64 65 72 73 20 3d 20 24 68 65 $headers).{.$this->headers.=.$he
5bba0 61 64 65 72 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 61 aders;.}..public.function.getHea
5bbc0 64 65 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 61 64 65 72 73 3b 0a ders().{.return.$this->headers;.
5bbe0 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 73 70 6f 6e 73 65 28 24 }..public.function.setResponse($
5bc00 72 65 73 70 6f 6e 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 73 70 6f 6e 73 65 20 3d 20 24 72 response).{.$this->response.=.$r
5bc20 65 73 70 6f 6e 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 esponse;.}..public.function.getR
5bc40 65 73 70 6f 6e 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 73 70 6f 6e esponse().{.return.$this->respon
5bc60 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 61 74 75 73 se;.}..public.function.setStatus
5bc80 43 6f 64 65 28 24 73 74 61 74 75 73 43 6f 64 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 74 75 Code($statusCode).{.$this->statu
5bca0 73 43 6f 64 65 20 3d 20 24 73 74 61 74 75 73 43 6f 64 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 sCode.=.$statusCode;.}..public.f
5bcc0 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 74 75 73 43 6f 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e unction.getStatusCode().{.return
5bce0 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 43 6f 64 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a .$this->statusCode;.}.}.<?php...
5bd00 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e .........namespace.Composer\Down
5bd20 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 loader;..use.Composer\Config;.us
5bd40 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 e.Composer\Package\PackageInterf
5bd60 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 ace;.use.Composer\Util\ProcessEx
5bd80 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 ecutor;.use.Composer\IO\IOInterf
5bda0 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 ace;.use.Composer\Util\Filesyste
5bdc0 6d 3b 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 56 63 73 44 6f 77 6e 6c 6f 61 m;.....abstract.class.VcsDownloa
5bde0 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 der.implements.DownloaderInterfa
5be00 63 65 2c 20 43 68 61 6e 67 65 52 65 70 6f 72 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 70 72 6f ce,.ChangeReportInterface.{..pro
5be20 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a tected.$io;..protected.$config;.
5be40 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 .protected.$process;..protected.
5be60 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f $filesystem;..public.function.__
5be80 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 construct(IOInterface.$io,.Confi
5bea0 67 20 24 63 6f 6e 66 69 67 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 g.$config,.ProcessExecutor.$proc
5bec0 65 73 73 20 3d 20 6e 75 6c 6c 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 73 20 3d 20 6e 75 6c ess.=.null,.Filesystem.$fs.=.nul
5bee0 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e l).{.$this->io.=.$io;.$this->con
5bf00 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 fig.=.$config;.$this->process.=.
5bf20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 $process.?:.new.ProcessExecutor(
5bf40 24 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 73 20 3f 3a $io);.$this->filesystem.=.$fs.?:
5bf60 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b .new.Filesystem($this->process);
5bf80 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c .}.....public.function.getInstal
5bfa0 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 73 6f 75 72 63 65 27 lationSource().{.return.'source'
5bfc0 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 77 6e 6c 6f 61 64 ;.}.....public.function.download
5bfe0 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 (PackageInterface.$package,.$pat
5c000 68 29 0a 7b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 h).{.if.(!$package->getSourceRef
5c020 65 72 65 6e 63 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 erence()).{.throw.new.\InvalidAr
5c040 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e 24 70 61 63 6b gumentException('Package.'.$pack
5c060 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 69 73 20 6d 69 73 73 69 6e age->getPrettyName().'.is.missin
5c080 67 20 72 65 66 65 72 65 6e 63 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 74 g.reference.information');.}..$t
5c0a0 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 2d 20 49 6e 73 74 61 6c 6c his->io->writeError("..-.Install
5c0c0 69 6e 67 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 ing.<info>"...$package->getName(
5c0e0 29 20 2e 20 22 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 70 61 63 6b )..."</info>.(<comment>"...$pack
5c100 61 67 65 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 22 3c age->getFullPrettyVersion()..."<
5c120 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d /comment>)");.$this->filesystem-
5c140 3e 65 6d 70 74 79 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 0a 24 75 72 6c 73 20 3d >emptyDirectory($path);..$urls.=
5c160 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 73 28 29 3b 0a 77 68 69 6c .$package->getSourceUrls();.whil
5c180 65 20 28 24 75 72 6c 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 75 72 6c 73 29 29 20 7b 0a e.($url.=.array_shift($urls)).{.
5c1a0 74 72 79 20 7b 0a 69 66 20 28 46 69 6c 65 73 79 73 74 65 6d 3a 3a 69 73 4c 6f 63 61 6c 50 61 74 try.{.if.(Filesystem::isLocalPat
5c1c0 68 28 24 75 72 6c 29 29 20 7b 0a 24 75 72 6c 20 3d 20 72 65 61 6c 70 61 74 68 28 24 75 72 6c 29 h($url)).{.$url.=.realpath($url)
5c1e0 3b 0a 7d 0a 24 74 68 69 73 2d 3e 64 6f 44 6f 77 6e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 ;.}.$this->doDownload($package,.
5c200 24 70 61 74 68 2c 20 24 75 72 6c 29 3b 0a 62 72 65 61 6b 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 $path,.$url);.break;.}.catch.(\E
5c220 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 69 66 20 28 24 65 20 69 6e 73 74 61 6e 63 65 xception.$e).{...if.($e.instance
5c240 6f 66 20 5c 50 48 50 55 6e 69 74 5f 46 72 61 6d 65 77 6f 72 6b 5f 45 78 63 65 70 74 69 6f 6e 29 of.\PHPUnit_Framework_Exception)
5c260 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 .{.throw.$e;.}.if.($this->io->is
5c280 44 65 62 75 67 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 Debug()).{.$this->io->writeError
5c2a0 28 27 46 61 69 6c 65 64 3a 20 5b 27 2e 67 65 74 5f 63 6c 61 73 73 28 24 65 29 2e 27 5d 20 27 2e ('Failed:.['.get_class($e).'].'.
5c2c0 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 63 6f 75 $e->getMessage());.}.elseif.(cou
5c2e0 6e 74 28 24 75 72 6c 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 nt($urls)).{.$this->io->writeErr
5c300 6f 72 28 27 20 20 20 20 46 61 69 6c 65 64 2c 20 74 72 79 69 6e 67 20 74 68 65 20 6e 65 78 74 20 or('....Failed,.trying.the.next.
5c320 55 52 4c 27 29 3b 0a 7d 0a 69 66 20 28 21 63 6f 75 6e 74 28 24 75 72 6c 73 29 29 20 7b 0a 74 68 URL');.}.if.(!count($urls)).{.th
5c340 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 row.$e;.}.}.}..$this->io->writeE
5c360 72 72 6f 72 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 rror('');.}.....public.function.
5c380 75 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c update(PackageInterface.$initial
5c3a0 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 ,.PackageInterface.$target,.$pat
5c3c0 68 29 0a 7b 0a 69 66 20 28 21 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 h).{.if.(!$target->getSourceRefe
5c3e0 72 65 6e 63 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 rence()).{.throw.new.\InvalidArg
5c400 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e 24 74 61 72 67 65 umentException('Package.'.$targe
5c420 74 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 69 73 20 6d 69 73 73 69 6e 67 20 t->getPrettyName().'.is.missing.
5c440 72 65 66 65 72 65 6e 63 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 6e 61 6d reference.information');.}..$nam
5c460 65 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 69 66 20 28 24 69 6e 69 e.=.$target->getName();.if.($ini
5c480 74 69 61 6c 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 3d 3d 20 24 74 61 72 tial->getPrettyVersion().==.$tar
5c4a0 67 65 74 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 29 20 7b 0a 69 66 20 28 24 get->getPrettyVersion()).{.if.($
5c4c0 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 20 3d 3d 3d 20 27 73 76 6e target->getSourceType().===.'svn
5c4e0 27 29 20 7b 0a 24 66 72 6f 6d 20 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 53 6f 75 72 63 65 ').{.$from.=.$initial->getSource
5c500 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 24 74 6f 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 Reference();.$to.=.$target->getS
5c520 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 66 72 6f 6d ourceReference();.}.else.{.$from
5c540 20 3d 20 73 75 62 73 74 72 28 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 .=.substr($initial->getSourceRef
5c560 65 72 65 6e 63 65 28 29 2c 20 30 2c 20 37 29 3b 0a 24 74 6f 20 3d 20 73 75 62 73 74 72 28 24 74 erence(),.0,.7);.$to.=.substr($t
5c580 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 2c 20 30 2c 20 arget->getSourceReference(),.0,.
5c5a0 37 29 3b 0a 7d 0a 24 6e 61 6d 65 20 2e 3d 20 27 20 27 2e 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 7);.}.$name..=.'.'.$initial->get
5c5c0 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 66 72 6f 6d 20 PrettyVersion();.}.else.{.$from.
5c5e0 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e =.$initial->getFullPrettyVersion
5c600 28 29 3b 0a 24 74 6f 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 46 75 6c 6c 50 72 65 74 74 79 ();.$to.=.$target->getFullPretty
5c620 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 Version();.}..$this->io->writeEr
5c640 72 6f 72 28 22 20 20 2d 20 55 70 64 61 74 69 6e 67 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 6e 61 6d ror("..-.Updating.<info>"...$nam
5c660 65 20 2e 20 22 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 66 72 6f 6d e..."</info>.(<comment>"...$from
5c680 20 2e 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 3d 3e 20 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 ..."</comment>.=>.<comment>"...$
5c6a0 74 6f 20 2e 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 6c 65 to..."</comment>)");..$this->cle
5c6c0 61 6e 43 68 61 6e 67 65 73 28 24 69 6e 69 74 69 61 6c 2c 20 24 70 61 74 68 2c 20 74 72 75 65 29 anChanges($initial,.$path,.true)
5c6e0 3b 0a 24 75 72 6c 73 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 73 ;.$urls.=.$target->getSourceUrls
5c700 28 29 3b 0a 0a 24 65 78 63 65 70 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 77 68 69 6c 65 20 28 24 ();..$exception.=.null;.while.($
5c720 75 72 6c 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 75 72 6c 73 29 29 20 7b 0a 74 72 79 20 url.=.array_shift($urls)).{.try.
5c740 7b 0a 69 66 20 28 46 69 6c 65 73 79 73 74 65 6d 3a 3a 69 73 4c 6f 63 61 6c 50 61 74 68 28 24 75 {.if.(Filesystem::isLocalPath($u
5c760 72 6c 29 29 20 7b 0a 24 75 72 6c 20 3d 20 72 65 61 6c 70 61 74 68 28 24 75 72 6c 29 3b 0a 7d 0a rl)).{.$url.=.realpath($url);.}.
5c780 24 74 68 69 73 2d 3e 64 6f 55 70 64 61 74 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 $this->doUpdate($initial,.$targe
5c7a0 74 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 3b 0a 0a 24 65 78 63 65 70 74 69 6f 6e 20 3d 20 6e t,.$path,.$url);..$exception.=.n
5c7c0 75 6c 6c 3b 0a 62 72 65 61 6b 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 ull;.break;.}.catch.(\Exception.
5c7e0 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 0a 20 69 66 20 28 24 65 78 63 65 70 74 69 6f 6e 20 69 $exception).{...if.($exception.i
5c800 6e 73 74 61 6e 63 65 6f 66 20 5c 50 48 50 55 6e 69 74 5f 46 72 61 6d 65 77 6f 72 6b 5f 45 78 63 nstanceof.\PHPUnit_Framework_Exc
5c820 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 24 65 78 63 65 70 74 69 6f 6e 3b 0a 7d 0a 69 66 eption).{.throw.$exception;.}.if
5c840 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 74 68 69 73 2d .($this->io->isDebug()).{.$this-
5c860 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 46 61 69 6c 65 64 3a 20 5b 27 2e 67 65 74 5f >io->writeError('Failed:.['.get_
5c880 63 6c 61 73 73 28 24 65 78 63 65 70 74 69 6f 6e 29 2e 27 5d 20 27 2e 24 65 78 63 65 70 74 69 6f class($exception).'].'.$exceptio
5c8a0 6e 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 63 6f 75 6e n->getMessage());.}.elseif.(coun
5c8c0 74 28 24 75 72 6c 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f t($urls)).{.$this->io->writeErro
5c8e0 72 28 27 20 20 20 20 46 61 69 6c 65 64 2c 20 74 72 79 69 6e 67 20 74 68 65 20 6e 65 78 74 20 55 r('....Failed,.trying.the.next.U
5c900 52 4c 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 61 70 70 6c 79 43 68 61 6e 67 RL');.}.}.}..$this->reapplyChang
5c920 65 73 28 24 70 61 74 68 29 3b 0a 0a 0a 20 0a 20 69 66 20 28 21 24 65 78 63 65 70 74 69 6f 6e 20 es($path);......if.(!$exception.
5c940 26 26 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 20 26 26 20 24 74 68 &&.$this->io->isVerbose().&&.$th
5c960 69 73 2d 3e 68 61 73 4d 65 74 61 64 61 74 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 68 29 is->hasMetadataRepository($path)
5c980 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 50 75 6c 6c 69 6e 67 20 69 6e 20 63 68 61 6e 67 ).{.$message.=.'Pulling.in.chang
5c9a0 65 73 3a 27 3b 0a 24 6c 6f 67 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 69 74 4c 6f es:';.$logs.=.$this->getCommitLo
5c9c0 67 73 28 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 gs($initial->getSourceReference(
5c9e0 29 2c 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 ),.$target->getSourceReference()
5ca00 2c 20 24 70 61 74 68 29 3b 0a 0a 69 66 20 28 21 74 72 69 6d 28 24 6c 6f 67 73 29 29 20 7b 0a 24 ,.$path);..if.(!trim($logs)).{.$
5ca20 6d 65 73 73 61 67 65 20 3d 20 27 52 6f 6c 6c 69 6e 67 20 62 61 63 6b 20 63 68 61 6e 67 65 73 3a message.=.'Rolling.back.changes:
5ca40 27 3b 0a 24 6c 6f 67 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 ';.$logs.=.$this->getCommitLogs(
5ca60 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 2c 20 24 $target->getSourceReference(),.$
5ca80 69 6e 69 74 69 61 6c 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 2c 20 24 initial->getSourceReference(),.$
5caa0 70 61 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 69 6d 28 24 6c 6f 67 73 29 29 20 7b 0a 24 6c 6f path);.}..if.(trim($logs)).{.$lo
5cac0 67 73 20 3d 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e gs.=.implode("\n",.array_map(fun
5cae0 63 74 69 6f 6e 20 28 24 6c 69 6e 65 29 20 7b 0a 72 65 74 75 72 6e 20 27 20 20 20 20 20 20 27 20 ction.($line).{.return.'......'.
5cb00 2e 20 24 6c 69 6e 65 3b 0a 7d 2c 20 65 78 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 6c 6f 67 73 29 ..$line;.},.explode("\n",.$logs)
5cb20 29 29 3b 0a 0a 0a 20 24 6c 6f 67 73 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 3c 27 2c 20 ));....$logs.=.str_replace('<',.
5cb40 27 5c 3c 27 2c 20 24 6c 6f 67 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 '\<',.$logs);..$this->io->writeE
5cb60 72 72 6f 72 28 27 20 20 20 20 27 2e 24 6d 65 73 73 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 69 6f rror('....'.$message);.$this->io
5cb80 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 6c 6f 67 73 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 ->writeError($logs);.}.}..if.(!$
5cba0 75 72 6c 73 20 26 26 20 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 24 65 78 63 urls.&&.$exception).{.throw.$exc
5cbc0 65 70 74 69 6f 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 eption;.}..$this->io->writeError
5cbe0 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f ('');.}.....public.function.remo
5cc00 76 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 ve(PackageInterface.$package,.$p
5cc20 61 74 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 ath).{.$this->io->writeError("..
5cc40 2d 20 52 65 6d 6f 76 69 6e 67 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 -.Removing.<info>"...$package->g
5cc60 65 74 4e 61 6d 65 28 29 20 2e 20 22 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 etName()..."</info>.(<comment>".
5cc80 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e ..$package->getPrettyVersion()..
5cca0 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b 0a 24 74 68 69 73 2d 3e 63 6c 65 61 6e 43 68 61 ."</comment>)");.$this->cleanCha
5ccc0 6e 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 66 61 6c 73 65 29 3b 0a 69 66 nges($package,.$path,.false);.if
5cce0 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 .(!$this->filesystem->removeDire
5cd00 63 74 6f 72 79 28 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 ctory($path)).{.throw.new.\Runti
5cd20 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 63 6f 6d 70 6c 65 74 65 6c meException('Could.not.completel
5cd40 79 20 64 65 6c 65 74 65 20 27 2e 24 70 61 74 68 2e 27 2c 20 61 62 6f 72 74 69 6e 67 2e 27 29 3b y.delete.'.$path.',.aborting.');
5cd60 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 75 74 .}.}......public.function.setOut
5cd80 70 75 74 50 72 6f 67 72 65 73 73 28 24 6f 75 74 70 75 74 50 72 6f 67 72 65 73 73 29 0a 7b 0a 72 putProgress($outputProgress).{.r
5cda0 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 eturn.$this;.}...........protect
5cdc0 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 43 68 61 6e 67 65 73 28 50 61 63 6b 61 67 65 ed.function.cleanChanges(Package
5cde0 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 70 64 61 Interface.$package,.$path,.$upda
5ce00 74 65 29 0a 7b 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c te).{...if.(null.!==.$this->getL
5ce20 6f 63 61 6c 43 68 61 6e 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 29 20 7b 0a ocalChanges($package,.$path)).{.
5ce40 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 53 6f 75 throw.new.\RuntimeException('Sou
5ce60 72 63 65 20 64 69 72 65 63 74 6f 72 79 20 27 20 2e 20 24 70 61 74 68 20 2e 20 27 20 68 61 73 20 rce.directory.'...$path...'.has.
5ce80 75 6e 63 6f 6d 6d 69 74 74 65 64 20 63 68 61 6e 67 65 73 2e 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a uncommitted.changes.');.}.}.....
5cea0 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 70 70 6c 79 43 68 61 ...protected.function.reapplyCha
5cec0 6e 67 65 73 28 24 70 61 74 68 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 nges($path).{.}.........abstract
5cee0 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 6f 77 6e 6c 6f 61 64 28 50 .protected.function.doDownload(P
5cf00 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c ackageInterface.$package,.$path,
5cf20 20 24 75 72 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 .$url);..........abstract.protec
5cf40 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 55 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 ted.function.doUpdate(PackageInt
5cf60 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 erface.$initial,.PackageInterfac
5cf80 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a e.$target,.$path,.$url);........
5cfa0 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 ..abstract.protected.function.ge
5cfc0 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 24 74 6f 52 tCommitLogs($fromReference,.$toR
5cfe0 65 66 65 72 65 6e 63 65 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 eference,.$path);.........abstra
5d000 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4d 65 74 61 64 61 74 ct.protected.function.hasMetadat
5d020 61 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a aRepository($path);.}.<?php.....
5d040 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f .......namespace.Composer\Downlo
5d060 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 ader;..use.Composer\Config;.use.
5d080 43 6f 6d 70 6f 73 65 72 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 Composer\Cache;.use.Composer\Eve
5d0a0 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 ntDispatcher\EventDispatcher;.us
5d0c0 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 e.Composer\Package\PackageInterf
5d0e0 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 ace;.use.Composer\Util\ProcessEx
5d100 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 ecutor;.use.Composer\Util\Remote
5d120 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e Filesystem;.use.Composer\IO\IOIn
5d140 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 58 7a 44 6f 77 6e 6c 6f 61 64 terface;........class.XzDownload
5d160 65 72 20 65 78 74 65 6e 64 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 70 er.extends.ArchiveDownloader.{.p
5d180 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 rotected.$process;..public.funct
5d1a0 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c ion.__construct(IOInterface.$io,
5d1c0 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 .Config.$config,.EventDispatcher
5d1e0 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 43 61 63 68 65 20 .$eventDispatcher.=.null,.Cache.
5d200 24 63 61 63 68 65 20 3d 20 6e 75 6c 6c 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 $cache.=.null,.ProcessExecutor.$
5d220 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d process.=.null,.RemoteFilesystem
5d240 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d .$rfs.=.null).{.$this->process.=
5d260 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 .$process.?:.new.ProcessExecutor
5d280 28 24 69 6f 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 2c ($io);..parent::__construct($io,
5d2a0 20 24 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 63 61 63 .$config,.$eventDispatcher,.$cac
5d2c0 68 65 2c 20 24 72 66 73 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e he,.$rfs);.}..protected.function
5d2e0 20 65 78 74 72 61 63 74 28 24 66 69 6c 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 63 6f 6d 6d 61 6e .extract($file,.$path).{.$comman
5d300 64 20 3d 20 27 74 61 72 20 2d 78 4a 66 20 27 20 2e 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f d.=.'tar.-xJf.'...ProcessExecuto
5d320 72 3a 3a 65 73 63 61 70 65 28 24 66 69 6c 65 29 20 2e 20 27 20 2d 43 20 27 20 2e 20 50 72 6f 63 r::escape($file)...'.-C.'...Proc
5d340 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 70 61 74 68 29 3b 0a 0a 69 66 20 essExecutor::escape($path);..if.
5d360 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 (0.===.$this->process->execute($
5d380 63 6f 6d 6d 61 6e 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b 0a 72 65 74 75 command,.$ignoredOutput)).{.retu
5d3a0 72 6e 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 45 72 72 6f 72 20 3d 20 27 46 61 69 6c 65 64 20 74 rn;.}..$processError.=.'Failed.t
5d3c0 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 o.execute.'...$command..."\n\n".
5d3e0 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 ..$this->process->getErrorOutput
5d400 28 29 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e ();..throw.new.\RuntimeException
5d420 28 24 70 72 6f 63 65 73 73 45 72 72 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 ($processError);.}.....protected
5d440 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 4e 61 6d 65 28 50 61 63 6b 61 67 65 49 6e 74 .function.getFileName(PackageInt
5d460 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 72 6e erface.$package,.$path).{.return
5d480 20 24 70 61 74 68 2e 27 2f 27 2e 70 61 74 68 69 6e 66 6f 28 70 61 72 73 65 5f 75 72 6c 28 24 70 .$path.'/'.pathinfo(parse_url($p
5d4a0 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 2c 20 50 48 50 5f 55 52 4c 5f 50 41 ackage->getDistUrl(),.PHP_URL_PA
5d4c0 54 48 29 2c 20 50 41 54 48 49 4e 46 4f 5f 42 41 53 45 4e 41 4d 45 29 3b 0a 7d 0a 7d 0a 3c 3f 70 TH),.PATHINFO_BASENAME);.}.}.<?p
5d4e0 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
5d500 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 \Downloader;..use.Composer\Confi
5d520 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f g;.use.Composer\Cache;.use.Compo
5d540 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 ser\EventDispatcher\EventDispatc
5d560 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 her;.use.Composer\Package\Packag
5d580 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 6c eInterface;.use.Composer\Util\Pl
5d5a0 61 74 66 6f 72 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 atform;.use.Composer\Util\Proces
5d5c0 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d sExecutor;.use.Composer\Util\Rem
5d5e0 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 oteFilesystem;.use.Composer\IO\I
5d600 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e OInterface;.use.Symfony\Componen
5d620 74 5c 50 72 6f 63 65 73 73 5c 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 75 73 65 20 t\Process\ExecutableFinder;.use.
5d640 5a 69 70 41 72 63 68 69 76 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 5a 69 70 44 6f 77 6e 6c 6f 61 ZipArchive;.....class.ZipDownloa
5d660 64 65 72 20 65 78 74 65 6e 64 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a der.extends.ArchiveDownloader.{.
5d680 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 73 74 protected.$process;.protected.st
5d6a0 61 74 69 63 20 24 68 61 73 53 79 73 74 65 6d 55 6e 7a 69 70 3b 0a 0a 70 75 62 6c 69 63 20 66 75 atic.$hasSystemUnzip;..public.fu
5d6c0 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 nction.__construct(IOInterface.$
5d6e0 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 io,.Config.$config,.EventDispatc
5d700 68 65 72 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 43 61 63 her.$eventDispatcher.=.null,.Cac
5d720 68 65 20 24 63 61 63 68 65 20 3d 20 6e 75 6c 6c 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f he.$cache.=.null,.ProcessExecuto
5d740 72 20 24 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 r.$process.=.null,.RemoteFilesys
5d760 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 tem.$rfs.=.null).{.$this->proces
5d780 73 20 3d 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 s.=.$process.?:.new.ProcessExecu
5d7a0 74 6f 72 28 24 69 6f 29 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 tor($io);.parent::__construct($i
5d7c0 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 63 o,.$config,.$eventDispatcher,.$c
5d7e0 61 63 68 65 2c 20 24 72 66 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ache,.$rfs);.}.....public.functi
5d800 6f 6e 20 64 6f 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 on.download(PackageInterface.$pa
5d820 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 73 65 6c ckage,.$path).{.if.(null.===.sel
5d840 66 3a 3a 24 68 61 73 53 79 73 74 65 6d 55 6e 7a 69 70 29 20 7b 0a 24 66 69 6e 64 65 72 20 3d 20 f::$hasSystemUnzip).{.$finder.=.
5d860 6e 65 77 20 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 73 65 6c 66 3a 3a 24 68 61 73 new.ExecutableFinder;.self::$has
5d880 53 79 73 74 65 6d 55 6e 7a 69 70 20 3d 20 28 62 6f 6f 6c 29 20 24 66 69 6e 64 65 72 2d 3e 66 69 SystemUnzip.=.(bool).$finder->fi
5d8a0 6e 64 28 27 75 6e 7a 69 70 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 nd('unzip');.}..if.(!class_exist
5d8c0 73 28 27 5a 69 70 41 72 63 68 69 76 65 27 29 20 26 26 20 21 73 65 6c 66 3a 3a 24 68 61 73 53 79 s('ZipArchive').&&.!self::$hasSy
5d8e0 73 74 65 6d 55 6e 7a 69 70 29 20 7b 0a 0a 20 24 69 6e 69 50 61 74 68 20 3d 20 70 68 70 5f 69 6e stemUnzip).{...$iniPath.=.php_in
5d900 69 5f 6c 6f 61 64 65 64 5f 66 69 6c 65 28 29 3b 0a 0a 69 66 20 28 24 69 6e 69 50 61 74 68 29 20 i_loaded_file();..if.($iniPath).
5d920 7b 0a 24 69 6e 69 4d 65 73 73 61 67 65 20 3d 20 27 54 68 65 20 70 68 70 2e 69 6e 69 20 75 73 65 {.$iniMessage.=.'The.php.ini.use
5d940 64 20 62 79 20 79 6f 75 72 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 50 48 50 20 69 73 3a 20 27 d.by.your.command-line.PHP.is:.'
5d960 20 2e 20 24 69 6e 69 50 61 74 68 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6e 69 4d 65 73 73 61 67 ...$iniPath;.}.else.{.$iniMessag
5d980 65 20 3d 20 27 41 20 70 68 70 2e 69 6e 69 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 e.=.'A.php.ini.file.does.not.exi
5d9a0 73 74 2e 20 59 6f 75 20 77 69 6c 6c 20 68 61 76 65 20 74 6f 20 63 72 65 61 74 65 20 6f 6e 65 2e st..You.will.have.to.create.one.
5d9c0 27 3b 0a 7d 0a 0a 24 65 72 72 6f 72 20 3d 20 22 54 68 65 20 7a 69 70 20 65 78 74 65 6e 73 69 6f ';.}..$error.=."The.zip.extensio
5d9e0 6e 20 61 6e 64 20 75 6e 7a 69 70 20 63 6f 6d 6d 61 6e 64 20 61 72 65 20 62 6f 74 68 20 6d 69 73 n.and.unzip.command.are.both.mis
5da00 73 69 6e 67 2c 20 73 6b 69 70 70 69 6e 67 2e 5c 6e 22 20 2e 20 24 69 6e 69 4d 65 73 73 61 67 65 sing,.skipping.\n"...$iniMessage
5da20 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 ;..throw.new.\RuntimeException($
5da40 65 72 72 6f 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 64 6f 77 6e 6c 6f error);.}..return.parent::downlo
5da60 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 ad($package,.$path);.}..protecte
5da80 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 28 24 66 69 6c 65 2c 20 24 70 61 74 68 29 d.function.extract($file,.$path)
5daa0 0a 7b 0a 24 70 72 6f 63 65 73 73 45 72 72 6f 72 20 3d 20 6e 75 6c 6c 3b 0a 0a 69 66 20 28 73 65 .{.$processError.=.null;..if.(se
5dac0 6c 66 3a 3a 24 68 61 73 53 79 73 74 65 6d 55 6e 7a 69 70 20 26 26 20 21 28 63 6c 61 73 73 5f 65 lf::$hasSystemUnzip.&&.!(class_e
5dae0 78 69 73 74 73 28 27 5a 69 70 41 72 63 68 69 76 65 27 29 20 26 26 20 50 6c 61 74 66 6f 72 6d 3a xists('ZipArchive').&&.Platform:
5db00 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 75 6e 7a :isWindows())).{.$command.=.'unz
5db20 69 70 20 27 2e 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 66 69 ip.'.ProcessExecutor::escape($fi
5db40 6c 65 29 2e 27 20 2d 64 20 27 2e 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 le).'.-d.'.ProcessExecutor::esca
5db60 70 65 28 24 70 61 74 68 29 3b 0a 69 66 20 28 21 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 pe($path);.if.(!Platform::isWind
5db80 6f 77 73 28 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 2e 3d 20 27 20 26 26 20 63 68 6d 6f 64 20 ows()).{.$command..=.'.&&.chmod.
5dba0 2d 52 20 75 2b 77 20 27 20 2e 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 -R.u+w.'...ProcessExecutor::esca
5dbc0 70 65 28 24 70 61 74 68 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 pe($path);.}..try.{.if.(0.===.$t
5dbe0 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 his->process->execute($command,.
5dc00 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 70 $ignoredOutput)).{.return;.}..$p
5dc20 72 6f 63 65 73 73 45 72 72 6f 72 20 3d 20 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 rocessError.=.'Failed.to.execute
5dc40 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e .'...$command..."\n\n"...$this->
5dc60 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 7d 20 63 61 74 process->getErrorOutput();.}.cat
5dc80 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 70 72 6f 63 65 73 73 45 72 72 ch.(\Exception.$e).{.$processErr
5dca0 6f 72 20 3d 20 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d or.=.'Failed.to.execute.'...$com
5dcc0 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 mand..."\n\n"...$e->getMessage()
5dce0 3b 0a 7d 0a 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 27 5a 69 70 41 72 63 68 69 ;.}..if.(!class_exists('ZipArchi
5dd00 76 65 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 ve')).{.throw.new.\RuntimeExcept
5dd20 69 6f 6e 28 24 70 72 6f 63 65 73 73 45 72 72 6f 72 29 3b 0a 7d 0a 7d 0a 0a 24 7a 69 70 41 72 63 ion($processError);.}.}..$zipArc
5dd40 68 69 76 65 20 3d 20 6e 65 77 20 5a 69 70 41 72 63 68 69 76 65 28 29 3b 0a 0a 69 66 20 28 74 72 hive.=.new.ZipArchive();..if.(tr
5dd60 75 65 20 21 3d 3d 20 28 24 72 65 74 76 61 6c 20 3d 20 24 7a 69 70 41 72 63 68 69 76 65 2d 3e 6f ue.!==.($retval.=.$zipArchive->o
5dd80 70 65 6e 28 24 66 69 6c 65 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 pen($file))).{.throw.new.\Unexpe
5dda0 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 72 74 72 69 6d 28 24 74 68 69 73 2d 3e ctedValueException(rtrim($this->
5ddc0 67 65 74 45 72 72 6f 72 4d 65 73 73 61 67 65 28 24 72 65 74 76 61 6c 2c 20 24 66 69 6c 65 29 2e getErrorMessage($retval,.$file).
5dde0 22 5c 6e 22 2e 24 70 72 6f 63 65 73 73 45 72 72 6f 72 29 2c 20 24 72 65 74 76 61 6c 29 3b 0a 7d "\n".$processError),.$retval);.}
5de00 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 24 7a 69 70 41 72 63 68 69 76 65 2d 3e 65 78 74 72 ..if.(true.!==.$zipArchive->extr
5de20 61 63 74 54 6f 28 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 actTo($path)).{.throw.new.\Runti
5de40 6d 65 45 78 63 65 70 74 69 6f 6e 28 72 74 72 69 6d 28 22 54 68 65 72 65 20 77 61 73 20 61 6e 20 meException(rtrim("There.was.an.
5de60 65 72 72 6f 72 20 65 78 74 72 61 63 74 69 6e 67 20 74 68 65 20 5a 49 50 20 66 69 6c 65 2c 20 69 error.extracting.the.ZIP.file,.i
5de80 74 20 69 73 20 65 69 74 68 65 72 20 63 6f 72 72 75 70 74 65 64 20 6f 72 20 75 73 69 6e 67 20 61 t.is.either.corrupted.or.using.a
5dea0 6e 20 69 6e 76 61 6c 69 64 20 66 6f 72 6d 61 74 2e 5c 6e 22 2e 24 70 72 6f 63 65 73 73 45 72 72 n.invalid.format.\n".$processErr
5dec0 6f 72 29 29 3b 0a 7d 0a 0a 24 7a 69 70 41 72 63 68 69 76 65 2d 3e 63 6c 6f 73 65 28 29 3b 0a 7d or));.}..$zipArchive->close();.}
5dee0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 .........protected.function.getE
5df00 72 72 6f 72 4d 65 73 73 61 67 65 28 24 72 65 74 76 61 6c 2c 20 24 66 69 6c 65 29 0a 7b 0a 73 77 rrorMessage($retval,.$file).{.sw
5df20 69 74 63 68 20 28 24 72 65 74 76 61 6c 29 20 7b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 itch.($retval).{.case.ZipArchive
5df40 3a 3a 45 52 5f 45 58 49 53 54 53 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 46 69 6c ::ER_EXISTS:.return.sprintf("Fil
5df60 65 20 27 25 73 27 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 22 2c 20 24 66 69 6c 65 29 3b e.'%s'.already.exists.",.$file);
5df80 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 49 4e 43 4f 4e 53 3a 0a 72 65 74 .case.ZipArchive::ER_INCONS:.ret
5dfa0 75 72 6e 20 73 70 72 69 6e 74 66 28 22 5a 69 70 20 61 72 63 68 69 76 65 20 27 25 73 27 20 69 73 urn.sprintf("Zip.archive.'%s'.is
5dfc0 20 69 6e 63 6f 6e 73 69 73 74 65 6e 74 2e 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 .inconsistent.",.$file);.case.Zi
5dfe0 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 49 4e 56 41 4c 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e pArchive::ER_INVAL:.return.sprin
5e000 74 66 28 22 49 6e 76 61 6c 69 64 20 61 72 67 75 6d 65 6e 74 20 28 25 73 29 22 2c 20 24 66 69 6c tf("Invalid.argument.(%s)",.$fil
5e020 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 4d 45 4d 4f 52 59 3a 0a e);.case.ZipArchive::ER_MEMORY:.
5e040 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 4d 61 6c 6c 6f 63 20 66 61 69 6c 75 72 65 20 28 return.sprintf("Malloc.failure.(
5e060 25 73 29 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 %s)",.$file);.case.ZipArchive::E
5e080 52 5f 4e 4f 45 4e 54 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 4e 6f 20 73 75 63 68 R_NOENT:.return.sprintf("No.such
5e0a0 20 7a 69 70 20 66 69 6c 65 3a 20 27 25 73 27 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a .zip.file:.'%s'",.$file);.case.Z
5e0c0 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 4e 4f 5a 49 50 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 ipArchive::ER_NOZIP:.return.spri
5e0e0 6e 74 66 28 22 27 25 73 27 20 69 73 20 6e 6f 74 20 61 20 7a 69 70 20 61 72 63 68 69 76 65 2e 22 ntf("'%s'.is.not.a.zip.archive."
5e100 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 4f 50 ,.$file);.case.ZipArchive::ER_OP
5e120 45 4e 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 43 61 6e 27 74 20 6f 70 65 6e 20 7a EN:.return.sprintf("Can't.open.z
5e140 69 70 20 66 69 6c 65 3a 20 25 73 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 ip.file:.%s",.$file);.case.ZipAr
5e160 63 68 69 76 65 3a 3a 45 52 5f 52 45 41 44 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 chive::ER_READ:.return.sprintf("
5e180 5a 69 70 20 72 65 61 64 20 65 72 72 6f 72 20 28 25 73 29 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 Zip.read.error.(%s)",.$file);.ca
5e1a0 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 53 45 45 4b 3a 0a 72 65 74 75 72 6e 20 73 se.ZipArchive::ER_SEEK:.return.s
5e1c0 70 72 69 6e 74 66 28 22 5a 69 70 20 73 65 65 6b 20 65 72 72 6f 72 20 28 25 73 29 22 2c 20 24 66 printf("Zip.seek.error.(%s)",.$f
5e1e0 69 6c 65 29 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 27 ile);.default:.return.sprintf("'
5e200 25 73 27 20 69 73 20 6e 6f 74 20 61 20 76 61 6c 69 64 20 7a 69 70 20 61 72 63 68 69 76 65 2c 20 %s'.is.not.a.valid.zip.archive,.
5e220 67 6f 74 20 65 72 72 6f 72 20 63 6f 64 65 3a 20 25 73 22 2c 20 24 66 69 6c 65 2c 20 24 72 65 74 got.error.code:.%s",.$file,.$ret
5e240 76 61 6c 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d val);.}.}.}.<?php............nam
5e260 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b espace.Composer\EventDispatcher;
5e280 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 .......class.Event.{....protecte
5e2a0 64 20 24 6e 61 6d 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 61 72 67 73 3b 0a 0a 0a d.$name;.....protected.$args;...
5e2c0 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 66 6c 61 67 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 ..protected.$flags;.....private.
5e2e0 24 70 72 6f 70 61 67 61 74 69 6f 6e 53 74 6f 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a $propagationStopped.=.false;....
5e300 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 .....public.function.__construct
5e320 28 24 6e 61 6d 65 2c 20 61 72 72 61 79 20 24 61 72 67 73 20 3d 20 61 72 72 61 79 28 29 2c 20 61 ($name,.array.$args.=.array(),.a
5e340 72 72 61 79 20 24 66 6c 61 67 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e rray.$flags.=.array()).{.$this->
5e360 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 61 72 67 73 20 3d 20 24 61 72 67 name.=.$name;.$this->args.=.$arg
5e380 73 3b 0a 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 3d 20 24 66 6c 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a s;.$this->flags.=.$flags;.}.....
5e3a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 ..public.function.getName().{.re
5e3c0 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 turn.$this->name;.}.......public
5e3e0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 0a 7b 0a 72 65 74 75 72 .function.getArguments().{.retur
5e400 6e 20 24 74 68 69 73 2d 3e 61 72 67 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 n.$this->args;.}.......public.fu
5e420 6e 63 74 69 6f 6e 20 67 65 74 46 6c 61 67 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 nction.getFlags().{.return.$this
5e440 2d 3e 66 6c 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ->flags;.}.......public.function
5e460 20 69 73 50 72 6f 70 61 67 61 74 69 6f 6e 53 74 6f 70 70 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e .isPropagationStopped().{.return
5e480 20 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 69 6f 6e 53 74 6f 70 70 65 64 3b 0a 7d 0a 0a 0a .$this->propagationStopped;.}...
5e4a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f ..public.function.stopPropagatio
5e4c0 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 69 6f 6e 53 74 6f 70 70 65 64 20 n().{.$this->propagationStopped.
5e4e0 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d =.true;.}.}.<?php............nam
5e500 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b espace.Composer\EventDispatcher;
5e520 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 ..use.Composer\DependencyResolve
5e540 72 5c 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c r\PolicyInterface;.use.Composer\
5e560 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 6f 6d DependencyResolver\Pool;.use.Com
5e580 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 52 65 71 75 65 73 74 poser\DependencyResolver\Request
5e5a0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c ;.use.Composer\Installer\Install
5e5c0 65 72 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 erEvent;.use.Composer\IO\IOInter
5e5e0 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 face;.use.Composer\Composer;.use
5e600 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 .Composer\DependencyResolver\Ope
5e620 72 61 74 69 6f 6e 5c 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 ration\OperationInterface;.use.C
5e640 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f omposer\Repository\CompositeRepo
5e660 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 75 73 65 sitory;.use.Composer\Script;.use
5e680 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 .Composer\Script\CommandEvent;.u
5e6a0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 50 61 63 6b 61 67 65 45 76 65 6e 74 3b se.Composer\Script\PackageEvent;
5e6c0 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 .use.Composer\Util\ProcessExecut
5e6e0 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 76 65 6e 74 44 69 73 or;...............class.EventDis
5e700 70 61 74 63 68 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 70 patcher.{.protected.$composer;.p
5e720 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 61 64 65 72 3b rotected.$io;.protected.$loader;
5e740 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 .protected.$process;.protected.$
5e760 6c 69 73 74 65 6e 65 72 73 3b 0a 70 72 69 76 61 74 65 20 24 65 76 65 6e 74 53 74 61 63 6b 3b 0a listeners;.private.$eventStack;.
5e780 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 ........public.function.__constr
5e7a0 75 63 74 28 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 uct(Composer.$composer,.IOInterf
5e7c0 61 63 65 20 24 69 6f 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 ace.$io,.ProcessExecutor.$proces
5e7e0 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 63 s.=.null).{.$this->composer.=.$c
5e800 6f 6d 70 6f 73 65 72 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d omposer;.$this->io.=.$io;.$this-
5e820 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 >process.=.$process.?:.new.Proce
5e840 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 53 74 61 ssExecutor($io);.$this->eventSta
5e860 63 6b 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ck.=.array();.}..........public.
5e880 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 61 74 63 68 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 45 76 function.dispatch($eventName,.Ev
5e8a0 65 6e 74 20 24 65 76 65 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d ent.$event.=.null).{.if.(null.==
5e8c0 20 24 65 76 65 6e 74 29 20 7b 0a 24 65 76 65 6e 74 20 3d 20 6e 65 77 20 45 76 65 6e 74 28 24 65 .$event).{.$event.=.new.Event($e
5e8e0 76 65 6e 74 4e 61 6d 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 44 69 ventName);.}..return.$this->doDi
5e900 73 70 61 74 63 68 28 24 65 76 65 6e 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 spatch($event);.}............pub
5e920 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 24 65 76 65 lic.function.dispatchScript($eve
5e940 6e 74 4e 61 6d 65 2c 20 24 64 65 76 4d 6f 64 65 20 3d 20 66 61 6c 73 65 2c 20 24 61 64 64 69 74 ntName,.$devMode.=.false,.$addit
5e960 69 6f 6e 61 6c 41 72 67 73 20 3d 20 61 72 72 61 79 28 29 2c 20 24 66 6c 61 67 73 20 3d 20 61 72 ionalArgs.=.array(),.$flags.=.ar
5e980 72 61 79 28 29 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 44 69 73 70 61 74 63 ray()).{.return.$this->doDispatc
5e9a0 68 28 6e 65 77 20 53 63 72 69 70 74 5c 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 h(new.Script\Event($eventName,.$
5e9c0 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 64 65 76 4d this->composer,.$this->io,.$devM
5e9e0 6f 64 65 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 41 72 67 73 2c 20 24 66 6c 61 67 73 29 29 3b 0a ode,.$additionalArgs,.$flags));.
5ea00 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f }.................public.functio
5ea20 6e 20 64 69 73 70 61 74 63 68 50 61 63 6b 61 67 65 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d n.dispatchPackageEvent($eventNam
5ea40 65 2c 20 24 64 65 76 4d 6f 64 65 2c 20 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f e,.$devMode,.PolicyInterface.$po
5ea60 6c 69 63 79 2c 20 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 licy,.Pool.$pool,.CompositeRepos
5ea80 69 74 6f 72 79 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 71 75 65 73 74 20 24 72 itory.$installedRepo,.Request.$r
5eaa0 65 71 75 65 73 74 2c 20 61 72 72 61 79 20 24 6f 70 65 72 61 74 69 6f 6e 73 2c 20 4f 70 65 72 61 equest,.array.$operations,.Opera
5eac0 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 72 65 74 75 tionInterface.$operation).{.retu
5eae0 72 6e 20 24 74 68 69 73 2d 3e 64 6f 44 69 73 70 61 74 63 68 28 6e 65 77 20 50 61 63 6b 61 67 65 rn.$this->doDispatch(new.Package
5eb00 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 Event($eventName,.$this->compose
5eb20 72 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 64 65 76 4d 6f 64 65 2c 20 24 70 6f 6c 69 63 79 2c r,.$this->io,.$devMode,.$policy,
5eb40 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 71 75 65 73 74 .$pool,.$installedRepo,.$request
5eb60 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 29 3b 0a 7d 0a 0a ,.$operations,.$operation));.}..
5eb80 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 ..............public.function.di
5eba0 73 70 61 74 63 68 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c spatchInstallerEvent($eventName,
5ebc0 20 24 64 65 76 4d 6f 64 65 2c 20 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f 6c 69 .$devMode,.PolicyInterface.$poli
5ebe0 63 79 2c 20 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 cy,.Pool.$pool,.CompositeReposit
5ec00 6f 72 79 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 71 75 65 73 74 20 24 72 65 71 ory.$installedRepo,.Request.$req
5ec20 75 65 73 74 2c 20 61 72 72 61 79 20 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 uest,.array.$operations.=.array(
5ec40 29 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 44 69 73 70 61 74 63 68 28 6e 65 )).{.return.$this->doDispatch(ne
5ec60 77 20 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 74 68 w.InstallerEvent($eventName,.$th
5ec80 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 64 65 76 4d 6f 64 is->composer,.$this->io,.$devMod
5eca0 65 2c 20 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 e,.$policy,.$pool,.$installedRep
5ecc0 6f 2c 20 24 72 65 71 75 65 73 74 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 29 3b 0a 7d 0a 0a 0a o,.$request,.$operations));.}...
5ece0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 69 .........protected.function.doDi
5ed00 73 70 61 74 63 68 28 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a 24 70 61 74 68 53 74 72 20 spatch(Event.$event).{.$pathStr.
5ed20 3d 20 27 50 41 54 48 27 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 5f 53 45 52 56 45 52 5b 24 70 =.'PATH';.if.(!isset($_SERVER[$p
5ed40 61 74 68 53 74 72 5d 29 20 26 26 20 69 73 73 65 74 28 24 5f 53 45 52 56 45 52 5b 27 50 61 74 68 athStr]).&&.isset($_SERVER['Path
5ed60 27 5d 29 29 20 7b 0a 24 70 61 74 68 53 74 72 20 3d 20 27 50 61 74 68 27 3b 0a 7d 0a 0a 0a 20 24 '])).{.$pathStr.=.'Path';.}....$
5ed80 62 69 6e 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e binDir.=.$this->composer->getCon
5eda0 66 69 67 28 29 2d 3e 67 65 74 28 27 62 69 6e 2d 64 69 72 27 29 3b 0a 69 66 20 28 69 73 5f 64 69 fig()->get('bin-dir');.if.(is_di
5edc0 72 28 24 62 69 6e 44 69 72 29 29 20 7b 0a 24 62 69 6e 44 69 72 20 3d 20 72 65 61 6c 70 61 74 68 r($binDir)).{.$binDir.=.realpath
5ede0 28 24 62 69 6e 44 69 72 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 5f 53 45 52 56 45 52 5b 24 70 ($binDir);.if.(isset($_SERVER[$p
5ee00 61 74 68 53 74 72 5d 29 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 28 5e 7c 27 2e 50 athStr]).&&.!preg_match('{(^|'.P
5ee20 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2e 27 29 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 62 69 ATH_SEPARATOR.')'.preg_quote($bi
5ee40 6e 44 69 72 29 2e 27 28 24 7c 27 2e 50 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2e 27 29 7d 27 2c nDir).'($|'.PATH_SEPARATOR.')}',
5ee60 20 24 5f 53 45 52 56 45 52 5b 24 70 61 74 68 53 74 72 5d 29 29 20 7b 0a 24 5f 53 45 52 56 45 52 .$_SERVER[$pathStr])).{.$_SERVER
5ee80 5b 24 70 61 74 68 53 74 72 5d 20 3d 20 24 62 69 6e 44 69 72 2e 50 41 54 48 5f 53 45 50 41 52 41 [$pathStr].=.$binDir.PATH_SEPARA
5eea0 54 4f 52 2e 67 65 74 65 6e 76 28 24 70 61 74 68 53 74 72 29 3b 0a 70 75 74 65 6e 76 28 24 70 61 TOR.getenv($pathStr);.putenv($pa
5eec0 74 68 53 74 72 2e 27 3d 27 2e 24 5f 53 45 52 56 45 52 5b 24 70 61 74 68 53 74 72 5d 29 3b 0a 7d thStr.'='.$_SERVER[$pathStr]);.}
5eee0 0a 7d 0a 0a 24 6c 69 73 74 65 6e 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 69 73 74 65 .}..$listeners.=.$this->getListe
5ef00 6e 65 72 73 28 24 65 76 65 6e 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 75 73 68 45 76 65 6e 74 28 ners($event);..$this->pushEvent(
5ef20 24 65 76 65 6e 74 29 3b 0a 0a 24 72 65 74 75 72 6e 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 $event);..$return.=.0;.foreach.(
5ef40 24 6c 69 73 74 65 6e 65 72 73 20 61 73 20 24 63 61 6c 6c 61 62 6c 65 29 20 7b 0a 69 66 20 28 21 $listeners.as.$callable).{.if.(!
5ef60 69 73 5f 73 74 72 69 6e 67 28 24 63 61 6c 6c 61 62 6c 65 29 20 26 26 20 69 73 5f 63 61 6c 6c 61 is_string($callable).&&.is_calla
5ef80 62 6c 65 28 24 63 61 6c 6c 61 62 6c 65 29 29 20 7b 0a 24 65 76 65 6e 74 20 3d 20 24 74 68 69 73 ble($callable)).{.$event.=.$this
5efa0 2d 3e 63 68 65 63 6b 4c 69 73 74 65 6e 65 72 45 78 70 65 63 74 65 64 45 76 65 6e 74 28 24 63 61 ->checkListenerExpectedEvent($ca
5efc0 6c 6c 61 62 6c 65 2c 20 24 65 76 65 6e 74 29 3b 0a 24 72 65 74 75 72 6e 20 3d 20 66 61 6c 73 65 llable,.$event);.$return.=.false
5efe0 20 3d 3d 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 61 6c 6c 61 62 6c 65 2c 20 24 .===.call_user_func($callable,.$
5f000 65 76 65 6e 74 29 20 3f 20 31 20 3a 20 30 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d event).?.1.:.0;.}.elseif.($this-
5f020 3e 69 73 43 6f 6d 70 6f 73 65 72 53 63 72 69 70 74 28 24 63 61 6c 6c 61 62 6c 65 29 29 20 7b 0a >isComposerScript($callable)).{.
5f040 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 3e $this->io->writeError(sprintf('>
5f060 20 25 73 3a 20 25 73 27 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 61 .%s:.%s',.$event->getName(),.$ca
5f080 6c 6c 61 62 6c 65 29 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 llable),.true,.IOInterface::VERB
5f0a0 4f 53 45 29 3b 0a 24 73 63 72 69 70 74 4e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 63 61 6c 6c OSE);.$scriptName.=.substr($call
5f0c0 61 62 6c 65 2c 20 31 29 3b 0a 24 61 72 67 73 20 3d 20 24 65 76 65 6e 74 2d 3e 67 65 74 41 72 67 able,.1);.$args.=.$event->getArg
5f0e0 75 6d 65 6e 74 73 28 29 3b 0a 24 66 6c 61 67 73 20 3d 20 24 65 76 65 6e 74 2d 3e 67 65 74 46 6c uments();.$flags.=.$event->getFl
5f100 61 67 73 28 29 3b 0a 24 72 65 74 75 72 6e 20 3d 20 24 74 68 69 73 2d 3e 64 69 73 70 61 74 63 68 ags();.$return.=.$this->dispatch
5f120 28 24 73 63 72 69 70 74 4e 61 6d 65 2c 20 6e 65 77 20 53 63 72 69 70 74 5c 45 76 65 6e 74 28 24 ($scriptName,.new.Script\Event($
5f140 73 63 72 69 70 74 4e 61 6d 65 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 scriptName,.$event->getComposer(
5f160 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 49 4f 28 29 2c 20 24 65 76 65 6e 74 2d 3e 69 73 44 65 ),.$event->getIO(),.$event->isDe
5f180 76 4d 6f 64 65 28 29 2c 20 24 61 72 67 73 2c 20 24 66 6c 61 67 73 29 29 3b 0a 7d 20 65 6c 73 65 vMode(),.$args,.$flags));.}.else
5f1a0 69 66 20 28 24 74 68 69 73 2d 3e 69 73 50 68 70 53 63 72 69 70 74 28 24 63 61 6c 6c 61 62 6c 65 if.($this->isPhpScript($callable
5f1c0 29 29 20 7b 0a 24 63 6c 61 73 73 4e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 63 61 6c 6c 61 62 )).{.$className.=.substr($callab
5f1e0 6c 65 2c 20 30 2c 20 73 74 72 70 6f 73 28 24 63 61 6c 6c 61 62 6c 65 2c 20 27 3a 3a 27 29 29 3b le,.0,.strpos($callable,.'::'));
5f200 0a 24 6d 65 74 68 6f 64 4e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 63 61 6c 6c 61 62 6c 65 2c .$methodName.=.substr($callable,
5f220 20 73 74 72 70 6f 73 28 24 63 61 6c 6c 61 62 6c 65 2c 20 27 3a 3a 27 29 20 2b 20 32 29 3b 0a 0a .strpos($callable,.'::').+.2);..
5f240 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 24 63 6c 61 73 73 4e 61 6d 65 29 29 20 7b if.(!class_exists($className)).{
5f260 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 .$this->io->writeError('<warning
5f280 3e 43 6c 61 73 73 20 27 2e 24 63 6c 61 73 73 4e 61 6d 65 2e 27 20 69 73 20 6e 6f 74 20 61 75 74 >Class.'.$className.'.is.not.aut
5f2a0 6f 6c 6f 61 64 61 62 6c 65 2c 20 63 61 6e 20 6e 6f 74 20 63 61 6c 6c 20 27 2e 24 65 76 65 6e 74 oloadable,.can.not.call.'.$event
5f2c0 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 73 63 72 69 70 74 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 ->getName().'.script</warning>')
5f2e0 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 63 61 6c 6c 61 62 6c 65 28 24 ;.continue;.}.if.(!is_callable($
5f300 63 61 6c 6c 61 62 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 callable)).{.$this->io->writeErr
5f320 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 4d 65 74 68 6f 64 20 27 2e 24 63 61 6c 6c 61 62 6c 65 2e or('<warning>Method.'.$callable.
5f340 27 20 69 73 20 6e 6f 74 20 63 61 6c 6c 61 62 6c 65 2c 20 63 61 6e 20 6e 6f 74 20 63 61 6c 6c 20 '.is.not.callable,.can.not.call.
5f360 27 2e 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 73 63 72 69 70 74 3c 2f 77 61 '.$event->getName().'.script</wa
5f380 72 6e 69 6e 67 3e 27 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 72 65 rning>');.continue;.}..try.{.$re
5f3a0 74 75 72 6e 20 3d 20 66 61 6c 73 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 45 turn.=.false.===.$this->executeE
5f3c0 76 65 6e 74 50 68 70 53 63 72 69 70 74 28 24 63 6c 61 73 73 4e 61 6d 65 2c 20 24 6d 65 74 68 6f ventPhpScript($className,.$metho
5f3e0 64 4e 61 6d 65 2c 20 24 65 76 65 6e 74 29 20 3f 20 31 20 3a 20 30 3b 0a 7d 20 63 61 74 63 68 20 dName,.$event).?.1.:.0;.}.catch.
5f400 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 22 53 63 (\Exception.$e).{.$message.=."Sc
5f420 72 69 70 74 20 25 73 20 68 61 6e 64 6c 69 6e 67 20 74 68 65 20 25 73 20 65 76 65 6e 74 20 74 65 ript.%s.handling.the.%s.event.te
5f440 72 6d 69 6e 61 74 65 64 20 77 69 74 68 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 22 3b 0a 24 74 68 rminated.with.an.exception";.$th
5f460 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 27 2e 73 70 72 is->io->writeError('<error>'.spr
5f480 69 6e 74 66 28 24 6d 65 73 73 61 67 65 2c 20 24 63 61 6c 6c 61 62 6c 65 2c 20 24 65 76 65 6e 74 intf($message,.$callable,.$event
5f4a0 2d 3e 67 65 74 4e 61 6d 65 28 29 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 74 68 72 6f 77 20 ->getName()).'</error>');.throw.
5f4c0 24 65 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 72 67 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 $e;.}.}.else.{.$args.=.implode('
5f4e0 20 27 2c 20 61 72 72 61 79 5f 6d 61 70 28 61 72 72 61 79 28 27 43 6f 6d 70 6f 73 65 72 5c 55 74 .',.array_map(array('Composer\Ut
5f500 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 27 2c 20 27 65 73 63 61 70 65 27 29 2c 20 il\ProcessExecutor',.'escape'),.
5f520 24 65 76 65 6e 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 29 29 3b 0a 24 65 78 65 63 20 $event->getArguments()));.$exec.
5f540 3d 20 24 63 61 6c 6c 61 62 6c 65 20 2e 20 28 24 61 72 67 73 20 3d 3d 3d 20 27 27 20 3f 20 27 27 =.$callable...($args.===.''.?.''
5f560 20 3a 20 27 20 27 2e 24 61 72 67 73 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 .:.'.'.$args);.if.($this->io->is
5f580 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 Verbose()).{.$this->io->writeErr
5f5a0 6f 72 28 73 70 72 69 6e 74 66 28 27 3e 20 25 73 3a 20 25 73 27 2c 20 24 65 76 65 6e 74 2d 3e 67 or(sprintf('>.%s:.%s',.$event->g
5f5c0 65 74 4e 61 6d 65 28 29 2c 20 24 65 78 65 63 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 etName(),.$exec));.}.else.{.$thi
5f5e0 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 3e 20 25 73 27 s->io->writeError(sprintf('>.%s'
5f600 2c 20 24 65 78 65 63 29 29 3b 0a 7d 0a 69 66 20 28 30 20 21 3d 3d 20 28 24 65 78 69 74 43 6f 64 ,.$exec));.}.if.(0.!==.($exitCod
5f620 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 65 78 65 e.=.$this->process->execute($exe
5f640 63 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 c))).{.$this->io->writeError(spr
5f660 69 6e 74 66 28 27 3c 65 72 72 6f 72 3e 53 63 72 69 70 74 20 25 73 20 68 61 6e 64 6c 69 6e 67 20 intf('<error>Script.%s.handling.
5f680 74 68 65 20 25 73 20 65 76 65 6e 74 20 72 65 74 75 72 6e 65 64 20 77 69 74 68 20 61 6e 20 65 72 the.%s.event.returned.with.an.er
5f6a0 72 6f 72 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 63 61 6c 6c 61 62 6c 65 2c 20 24 65 76 65 6e 74 2d ror</error>',.$callable,.$event-
5f6c0 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d >getName()));..throw.new.\Runtim
5f6e0 65 45 78 63 65 70 74 69 6f 6e 28 27 45 72 72 6f 72 20 4f 75 74 70 75 74 3a 20 27 2e 24 74 68 69 eException('Error.Output:.'.$thi
5f700 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 20 24 65 s->process->getErrorOutput(),.$e
5f720 78 69 74 43 6f 64 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 65 76 65 6e 74 2d 3e 69 73 50 72 6f xitCode);.}.}..if.($event->isPro
5f740 70 61 67 61 74 69 6f 6e 53 74 6f 70 70 65 64 28 29 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a pagationStopped()).{.break;.}.}.
5f760 0a 24 74 68 69 73 2d 3e 70 6f 70 45 76 65 6e 74 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 74 .$this->popEvent();..return.$ret
5f780 75 72 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 urn;.}.......protected.function.
5f7a0 65 78 65 63 75 74 65 45 76 65 6e 74 50 68 70 53 63 72 69 70 74 28 24 63 6c 61 73 73 4e 61 6d 65 executeEventPhpScript($className
5f7c0 2c 20 24 6d 65 74 68 6f 64 4e 61 6d 65 2c 20 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a 24 ,.$methodName,.Event.$event).{.$
5f7e0 65 76 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 4c 69 73 74 65 6e 65 72 45 78 70 65 event.=.$this->checkListenerExpe
5f800 63 74 65 64 45 76 65 6e 74 28 61 72 72 61 79 28 24 63 6c 61 73 73 4e 61 6d 65 2c 20 24 6d 65 74 ctedEvent(array($className,.$met
5f820 68 6f 64 4e 61 6d 65 29 2c 20 24 65 76 65 6e 74 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 hodName),.$event);..if.($this->i
5f840 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 o->isVerbose()).{.$this->io->wri
5f860 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 3e 20 25 73 3a 20 25 73 3a 3a 25 73 27 2c 20 teError(sprintf('>.%s:.%s::%s',.
5f880 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6c 61 73 73 4e 61 6d 65 2c 20 24 $event->getName(),.$className,.$
5f8a0 6d 65 74 68 6f 64 4e 61 6d 65 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f methodName));.}.else.{.$this->io
5f8c0 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 3e 20 25 73 3a 3a 25 73 27 2c ->writeError(sprintf('>.%s::%s',
5f8e0 20 24 63 6c 61 73 73 4e 61 6d 65 2c 20 24 6d 65 74 68 6f 64 4e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 .$className,.$methodName));.}..r
5f900 65 74 75 72 6e 20 24 63 6c 61 73 73 4e 61 6d 65 3a 3a 24 6d 65 74 68 6f 64 4e 61 6d 65 28 24 65 eturn.$className::$methodName($e
5f920 76 65 6e 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f vent);.}.......protected.functio
5f940 6e 20 63 68 65 63 6b 4c 69 73 74 65 6e 65 72 45 78 70 65 63 74 65 64 45 76 65 6e 74 28 24 74 61 n.checkListenerExpectedEvent($ta
5f960 72 67 65 74 2c 20 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a 74 72 79 20 7b 0a 24 72 65 66 rget,.Event.$event).{.try.{.$ref
5f980 6c 65 63 74 65 64 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 69 6f 6e 50 61 72 61 6d 65 74 65 lected.=.new.\ReflectionParamete
5f9a0 72 28 24 74 61 72 67 65 74 2c 20 30 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 r($target,.0);.}.catch.(\Excepti
5f9c0 6f 6e 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 76 65 6e 74 3b 0a 7d 0a 0a 24 74 79 70 65 on.$e).{.return.$event;.}..$type
5f9e0 68 69 6e 74 20 3d 20 24 72 65 66 6c 65 63 74 65 64 2d 3e 67 65 74 43 6c 61 73 73 28 29 3b 0a 0a hint.=.$reflected->getClass();..
5fa00 69 66 20 28 21 24 74 79 70 65 68 69 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 52 65 66 6c 65 if.(!$typehint.instanceof.\Refle
5fa20 63 74 69 6f 6e 43 6c 61 73 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 76 65 6e 74 3b 0a 7d 0a 0a ctionClass).{.return.$event;.}..
5fa40 24 65 78 70 65 63 74 65 64 20 3d 20 24 74 79 70 65 68 69 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 $expected.=.$typehint->getName()
5fa60 3b 0a 0a 0a 20 69 66 20 28 21 24 65 76 65 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 24 65 78 70 ;....if.(!$event.instanceof.$exp
5fa80 65 63 74 65 64 20 26 26 20 24 65 78 70 65 63 74 65 64 20 3d 3d 3d 20 27 43 6f 6d 70 6f 73 65 72 ected.&&.$expected.===.'Composer
5faa0 5c 53 63 72 69 70 74 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 27 29 20 7b 0a 24 65 76 65 6e 74 20 \Script\CommandEvent').{.$event.
5fac0 3d 20 6e 65 77 20 5c 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 43 6f 6d 6d 61 6e 64 45 76 =.new.\Composer\Script\CommandEv
5fae0 65 6e 74 28 0a 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 65 76 65 6e 74 2d 3e ent(.$event->getName(),.$event->
5fb00 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 49 4f 28 29 2c 20 getComposer(),.$event->getIO(),.
5fb20 24 65 76 65 6e 74 2d 3e 69 73 44 65 76 4d 6f 64 65 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 $event->isDevMode(),.$event->get
5fb40 41 72 67 75 6d 65 6e 74 73 28 29 0a 29 3b 0a 7d 0a 69 66 20 28 21 24 65 76 65 6e 74 20 69 6e 73 Arguments().);.}.if.(!$event.ins
5fb60 74 61 6e 63 65 6f 66 20 24 65 78 70 65 63 74 65 64 20 26 26 20 24 65 78 70 65 63 74 65 64 20 3d tanceof.$expected.&&.$expected.=
5fb80 3d 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 50 61 63 6b 61 67 65 45 76 65 6e 74 ==.'Composer\Script\PackageEvent
5fba0 27 29 20 7b 0a 24 65 76 65 6e 74 20 3d 20 6e 65 77 20 5c 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 ').{.$event.=.new.\Composer\Scri
5fbc0 70 74 5c 50 61 63 6b 61 67 65 45 76 65 6e 74 28 0a 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 pt\PackageEvent(.$event->getName
5fbe0 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2c 20 24 65 76 65 6e (),.$event->getComposer(),.$even
5fc00 74 2d 3e 67 65 74 49 4f 28 29 2c 20 24 65 76 65 6e 74 2d 3e 69 73 44 65 76 4d 6f 64 65 28 29 2c t->getIO(),.$event->isDevMode(),
5fc20 0a 24 65 76 65 6e 74 2d 3e 67 65 74 50 6f 6c 69 63 79 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 .$event->getPolicy(),.$event->ge
5fc40 74 50 6f 6f 6c 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 64 52 65 70 tPool(),.$event->getInstalledRep
5fc60 6f 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 52 65 71 75 65 73 74 28 29 2c 0a 24 65 76 65 6e o(),.$event->getRequest(),.$even
5fc80 74 2d 3e 67 65 74 4f 70 65 72 61 74 69 6f 6e 73 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 4f t->getOperations(),.$event->getO
5fca0 70 65 72 61 74 69 6f 6e 28 29 0a 29 3b 0a 7d 0a 69 66 20 28 21 24 65 76 65 6e 74 20 69 6e 73 74 peration().);.}.if.(!$event.inst
5fcc0 61 6e 63 65 6f 66 20 24 65 78 70 65 63 74 65 64 20 26 26 20 24 65 78 70 65 63 74 65 64 20 3d 3d anceof.$expected.&&.$expected.==
5fce0 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 45 76 65 6e 74 27 29 20 7b 0a 24 65 76 =.'Composer\Script\Event').{.$ev
5fd00 65 6e 74 20 3d 20 6e 65 77 20 5c 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 45 76 65 6e 74 ent.=.new.\Composer\Script\Event
5fd20 28 0a 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 (.$event->getName(),.$event->get
5fd40 43 6f 6d 70 6f 73 65 72 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 49 4f 28 29 2c 20 24 65 76 Composer(),.$event->getIO(),.$ev
5fd60 65 6e 74 2d 3e 69 73 44 65 76 4d 6f 64 65 28 29 2c 0a 24 65 76 65 6e 74 2d 3e 67 65 74 41 72 67 ent->isDevMode(),.$event->getArg
5fd80 75 6d 65 6e 74 73 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 46 6c 61 67 73 28 29 0a 29 3b 0a uments(),.$event->getFlags().);.
5fda0 7d 0a 0a 72 65 74 75 72 6e 20 24 65 76 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c }..return.$event;.}.........publ
5fdc0 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c 69 73 74 65 6e 65 72 28 24 65 76 65 6e 74 4e 61 ic.function.addListener($eventNa
5fde0 6d 65 2c 20 24 6c 69 73 74 65 6e 65 72 2c 20 24 70 72 69 6f 72 69 74 79 20 3d 20 30 29 0a 7b 0a me,.$listener,.$priority.=.0).{.
5fe00 24 74 68 69 73 2d 3e 6c 69 73 74 65 6e 65 72 73 5b 24 65 76 65 6e 74 4e 61 6d 65 5d 5b 24 70 72 $this->listeners[$eventName][$pr
5fe20 69 6f 72 69 74 79 5d 5b 5d 20 3d 20 24 6c 69 73 74 65 6e 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a iority][].=.$listener;.}........
5fe40 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 53 75 62 73 63 72 69 62 65 72 28 45 .public.function.addSubscriber(E
5fe60 76 65 6e 74 53 75 62 73 63 72 69 62 65 72 49 6e 74 65 72 66 61 63 65 20 24 73 75 62 73 63 72 69 ventSubscriberInterface.$subscri
5fe80 62 65 72 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 73 75 62 73 63 72 69 62 65 72 2d 3e 67 65 74 ber).{.foreach.($subscriber->get
5fea0 53 75 62 73 63 72 69 62 65 64 45 76 65 6e 74 73 28 29 20 61 73 20 24 65 76 65 6e 74 4e 61 6d 65 SubscribedEvents().as.$eventName
5fec0 20 3d 3e 20 24 70 61 72 61 6d 73 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 70 61 .=>.$params).{.if.(is_string($pa
5fee0 72 61 6d 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 69 73 74 65 6e 65 72 28 24 65 76 65 rams)).{.$this->addListener($eve
5ff00 6e 74 4e 61 6d 65 2c 20 61 72 72 61 79 28 24 73 75 62 73 63 72 69 62 65 72 2c 20 24 70 61 72 61 ntName,.array($subscriber,.$para
5ff20 6d 73 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 70 61 72 61 6d ms));.}.elseif.(is_string($param
5ff40 73 5b 30 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 69 73 74 65 6e 65 72 28 24 65 76 65 s[0])).{.$this->addListener($eve
5ff60 6e 74 4e 61 6d 65 2c 20 61 72 72 61 79 28 24 73 75 62 73 63 72 69 62 65 72 2c 20 24 70 61 72 61 ntName,.array($subscriber,.$para
5ff80 6d 73 5b 30 5d 29 2c 20 69 73 73 65 74 28 24 70 61 72 61 6d 73 5b 31 5d 29 20 3f 20 24 70 61 72 ms[0]),.isset($params[1]).?.$par
5ffa0 61 6d 73 5b 31 5d 20 3a 20 30 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 ams[1].:.0);.}.else.{.foreach.($
5ffc0 70 61 72 61 6d 73 20 61 73 20 24 6c 69 73 74 65 6e 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 params.as.$listener).{.$this->ad
5ffe0 64 4c 69 73 74 65 6e 65 72 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 61 72 72 61 79 28 24 73 75 62 dListener($eventName,.array($sub
60000 73 63 72 69 62 65 72 2c 20 24 6c 69 73 74 65 6e 65 72 5b 30 5d 29 2c 20 69 73 73 65 74 28 24 6c scriber,.$listener[0]),.isset($l
60020 69 73 74 65 6e 65 72 5b 31 5d 29 20 3f 20 24 6c 69 73 74 65 6e 65 72 5b 31 5d 20 3a 20 30 29 3b istener[1]).?.$listener[1].:.0);
60040 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 .}.}.}.}........protected.functi
60060 6f 6e 20 67 65 74 4c 69 73 74 65 6e 65 72 73 28 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a on.getListeners(Event.$event).{.
60080 24 73 63 72 69 70 74 4c 69 73 74 65 6e 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 72 $scriptListeners.=.$this->getScr
600a0 69 70 74 4c 69 73 74 65 6e 65 72 73 28 24 65 76 65 6e 74 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 iptListeners($event);..if.(!isse
600c0 74 28 24 74 68 69 73 2d 3e 6c 69 73 74 65 6e 65 72 73 5b 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 t($this->listeners[$event->getNa
600e0 6d 65 28 29 5d 5b 30 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 69 73 74 65 6e 65 72 73 5b 24 65 me()][0])).{.$this->listeners[$e
60100 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 30 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d vent->getName()][0].=.array();.}
60120 0a 6b 72 73 6f 72 74 28 24 74 68 69 73 2d 3e 6c 69 73 74 65 6e 65 72 73 5b 24 65 76 65 6e 74 2d .krsort($this->listeners[$event-
60140 3e 67 65 74 4e 61 6d 65 28 29 5d 29 3b 0a 0a 24 6c 69 73 74 65 6e 65 72 73 20 3d 20 24 74 68 69 >getName()]);..$listeners.=.$thi
60160 73 2d 3e 6c 69 73 74 65 6e 65 72 73 3b 0a 24 6c 69 73 74 65 6e 65 72 73 5b 24 65 76 65 6e 74 2d s->listeners;.$listeners[$event-
60180 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 30 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6c 69 >getName()][0].=.array_merge($li
601a0 73 74 65 6e 65 72 73 5b 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 30 5d 2c 20 24 steners[$event->getName()][0],.$
601c0 73 63 72 69 70 74 4c 69 73 74 65 6e 65 72 73 29 3b 0a 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 scriptListeners);..return.call_u
601e0 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 72 72 61 79 5f 6d 65 72 67 65 27 2c 20 24 6c ser_func_array('array_merge',.$l
60200 69 73 74 65 6e 65 72 73 5b 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 3b 0a 7d 0a isteners[$event->getName()]);.}.
60220 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 45 76 65 6e 74 4c .......public.function.hasEventL
60240 69 73 74 65 6e 65 72 73 28 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a 24 6c 69 73 74 65 6e isteners(Event.$event).{.$listen
60260 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 69 73 74 65 6e 65 72 73 28 24 65 76 65 6e 74 ers.=.$this->getListeners($event
60280 29 3b 0a 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 6c 69 73 74 65 6e 65 72 73 29 20 3e 20 30 );..return.count($listeners).>.0
602a0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 ;.}........protected.function.ge
602c0 74 53 63 72 69 70 74 4c 69 73 74 65 6e 65 72 73 28 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b tScriptListeners(Event.$event).{
602e0 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 .$package.=.$this->composer->get
60300 50 61 63 6b 61 67 65 28 29 3b 0a 24 73 63 72 69 70 74 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e Package();.$scripts.=.$package->
60320 67 65 74 53 63 72 69 70 74 73 28 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 73 63 72 69 70 74 getScripts();..if.(empty($script
60340 73 5b 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 s[$event->getName()])).{.return.
60360 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 29 20 7b array();.}..if.($this->loader).{
60380 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 75 6e 72 65 67 69 73 74 65 72 28 29 3b 0a 7d 0a .$this->loader->unregister();.}.
603a0 0a 24 67 65 6e 65 72 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 .$generator.=.$this->composer->g
603c0 65 74 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 28 29 3b 0a 24 70 61 63 6b 61 67 65 73 etAutoloadGenerator();.$packages
603e0 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 .=.$this->composer->getRepositor
60400 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 yManager()->getLocalRepository()
60420 2d 3e 67 65 74 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 3b 0a 24 70 61 63 6b 61 ->getCanonicalPackages();.$packa
60440 67 65 4d 61 70 20 3d 20 24 67 65 6e 65 72 61 74 6f 72 2d 3e 62 75 69 6c 64 50 61 63 6b 61 67 65 geMap.=.$generator->buildPackage
60460 4d 61 70 28 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 Map($this->composer->getInstalla
60480 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 63 6b 61 67 tionManager(),.$package,.$packag
604a0 65 73 29 3b 0a 24 6d 61 70 20 3d 20 24 67 65 6e 65 72 61 74 6f 72 2d 3e 70 61 72 73 65 41 75 74 es);.$map.=.$generator->parseAut
604c0 6f 6c 6f 61 64 73 28 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 24 oloads($packageMap,.$package);.$
604e0 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 24 67 65 6e 65 72 61 74 6f 72 2d 3e 63 72 65 61 74 this->loader.=.$generator->creat
60500 65 4c 6f 61 64 65 72 28 24 6d 61 70 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 72 65 eLoader($map);.$this->loader->re
60520 67 69 73 74 65 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 73 63 72 69 70 74 73 5b 24 65 76 65 6e gister();..return.$scripts[$even
60540 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 t->getName()];.}........protecte
60560 64 20 66 75 6e 63 74 69 6f 6e 20 69 73 50 68 70 53 63 72 69 70 74 28 24 63 61 6c 6c 61 62 6c 65 d.function.isPhpScript($callable
60580 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 63 61 6c ).{.return.false.===.strpos($cal
605a0 6c 61 62 6c 65 2c 20 27 20 27 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 lable,.'.').&&.false.!==.strpos(
605c0 24 63 61 6c 6c 61 62 6c 65 2c 20 27 3a 3a 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 $callable,.'::');.}........prote
605e0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 73 43 6f 6d 70 6f 73 65 72 53 63 72 69 70 74 28 24 cted.function.isComposerScript($
60600 63 61 6c 6c 61 62 6c 65 29 0a 7b 0a 72 65 74 75 72 6e 20 27 40 27 20 3d 3d 3d 20 73 75 62 73 74 callable).{.return.'@'.===.subst
60620 72 28 24 63 61 6c 6c 61 62 6c 65 2c 20 30 2c 20 31 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 r($callable,.0,.1);.}.........pr
60640 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 75 73 68 45 76 65 6e 74 28 45 76 65 6e 74 otected.function.pushEvent(Event
60660 20 24 65 76 65 6e 74 29 0a 7b 0a 24 65 76 65 6e 74 4e 61 6d 65 20 3d 20 24 65 76 65 6e 74 2d 3e .$event).{.$eventName.=.$event->
60680 67 65 74 4e 61 6d 65 28 29 3b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 65 76 65 6e 74 4e 61 getName();.if.(in_array($eventNa
606a0 6d 65 2c 20 24 74 68 69 73 2d 3e 65 76 65 6e 74 53 74 61 63 6b 29 29 20 7b 0a 74 68 72 6f 77 20 me,.$this->eventStack)).{.throw.
606c0 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 22 43 new.\RuntimeException(sprintf("C
606e0 69 72 63 75 6c 61 72 20 63 61 6c 6c 20 74 6f 20 73 63 72 69 70 74 20 68 61 6e 64 6c 65 72 20 27 ircular.call.to.script.handler.'
60700 25 73 27 20 64 65 74 65 63 74 65 64 22 2c 20 24 65 76 65 6e 74 4e 61 6d 65 29 29 3b 0a 7d 0a 0a %s'.detected",.$eventName));.}..
60720 72 65 74 75 72 6e 20 61 72 72 61 79 5f 70 75 73 68 28 24 74 68 69 73 2d 3e 65 76 65 6e 74 53 74 return.array_push($this->eventSt
60740 61 63 6b 2c 20 24 65 76 65 6e 74 4e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 ack,.$eventName);.}.......protec
60760 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 6f 70 45 76 65 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e ted.function.popEvent().{.return
60780 20 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 2d 3e 65 76 65 6e 74 53 74 61 63 6b 29 3b 0a 7d .array_pop($this->eventStack);.}
607a0 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
607c0 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a mposer\EventDispatcher;.........
607e0 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 45 76 65 6e 74 53 75 62 73 63 72 69 62 65 72 49 6e .....interface.EventSubscriberIn
60800 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c terface.{...................publ
60820 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 62 73 63 72 69 62 65 64 ic.static.function.getSubscribed
60840 45 76 65 6e 74 73 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d Events();.}.<?php............nam
60860 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 espace.Composer;..use.Composer\C
60880 6f 6e 66 69 67 5c 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 3b 0a 75 73 65 20 43 6f 6d 70 onfig\JsonConfigSource;.use.Comp
608a0 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 oser\Json\JsonFile;.use.Composer
608c0 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 \IO\IOInterface;.use.Composer\Pa
608e0 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 ckage\Archiver;.use.Composer\Pac
60900 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 47 75 65 73 73 65 72 3b 0a 75 73 65 kage\Version\VersionGuesser;.use
60920 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 4d .Composer\Repository\RepositoryM
60940 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c anager;.use.Composer\Repository\
60960 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c RepositoryFactory;.use.Composer\
60980 52 65 70 6f 73 69 74 6f 72 79 5c 57 72 69 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 Repository\WritableRepositoryInt
609a0 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 erface;.use.Composer\Util\Filesy
609c0 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 6c 61 74 66 6f 72 6d stem;.use.Composer\Util\Platform
609e0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 ;.use.Composer\Util\ProcessExecu
60a00 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c tor;.use.Composer\Util\RemoteFil
60a20 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 69 6c 65 6e esystem;.use.Composer\Util\Silen
60a40 63 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f cer;.use.Symfony\Component\Conso
60a60 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c le\Formatter\OutputFormatterStyl
60a80 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c e;.use.Composer\EventDispatcher\
60aa0 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 41 75 EventDispatcher;.use.Composer\Au
60ac0 74 6f 6c 6f 61 64 5c 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 75 73 65 20 43 6f toload\AutoloadGenerator;.use.Co
60ae0 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 mposer\Package\Version\VersionPa
60b00 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 rser;.use.Composer\Downloader\Tr
60b20 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c ansportException;.use.Seld\JsonL
60b40 69 6e 74 5c 4a 73 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 int\JsonParser;..........class.F
60b60 61 63 74 6f 72 79 0a 7b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 66 75 actory.{.....protected.static.fu
60b80 6e 63 74 69 6f 6e 20 67 65 74 48 6f 6d 65 44 69 72 28 29 0a 7b 0a 24 68 6f 6d 65 20 3d 20 67 65 nction.getHomeDir().{.$home.=.ge
60ba0 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d 45 27 29 3b 0a 69 66 20 28 24 68 6f 6d 65 tenv('COMPOSER_HOME');.if.($home
60bc0 29 20 7b 0a 72 65 74 75 72 6e 20 24 68 6f 6d 65 3b 0a 7d 0a 0a 69 66 20 28 50 6c 61 74 66 6f 72 ).{.return.$home;.}..if.(Platfor
60be0 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 69 66 20 28 21 67 65 74 65 6e 76 28 27 41 m::isWindows()).{.if.(!getenv('A
60c00 50 50 44 41 54 41 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 PPDATA')).{.throw.new.\RuntimeEx
60c20 63 65 70 74 69 6f 6e 28 27 54 68 65 20 41 50 50 44 41 54 41 20 6f 72 20 43 4f 4d 50 4f 53 45 52 ception('The.APPDATA.or.COMPOSER
60c40 5f 48 4f 4d 45 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20 6d 75 73 74 20 _HOME.environment.variable.must.
60c60 62 65 20 73 65 74 20 66 6f 72 20 63 6f 6d 70 6f 73 65 72 20 74 6f 20 72 75 6e 20 63 6f 72 72 65 be.set.for.composer.to.run.corre
60c80 63 74 6c 79 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 72 74 72 69 6d 28 73 74 72 74 72 28 67 65 ctly');.}..return.rtrim(strtr(ge
60ca0 74 65 6e 76 28 27 41 50 50 44 41 54 41 27 29 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 2c 20 27 2f 27 tenv('APPDATA'),.'\\',.'/'),.'/'
60cc0 29 20 2e 20 27 2f 43 6f 6d 70 6f 73 65 72 27 3b 0a 7d 0a 0a 24 75 73 65 72 44 69 72 20 3d 20 73 )...'/Composer';.}..$userDir.=.s
60ce0 65 6c 66 3a 3a 67 65 74 55 73 65 72 44 69 72 28 29 3b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 75 elf::getUserDir();.if.(is_dir($u
60d00 73 65 72 44 69 72 20 2e 20 27 2f 2e 63 6f 6d 70 6f 73 65 72 27 29 29 20 7b 0a 72 65 74 75 72 6e serDir...'/.composer')).{.return
60d20 20 24 75 73 65 72 44 69 72 20 2e 20 27 2f 2e 63 6f 6d 70 6f 73 65 72 27 3b 0a 7d 0a 0a 69 66 20 .$userDir...'/.composer';.}..if.
60d40 28 73 65 6c 66 3a 3a 75 73 65 58 64 67 28 29 29 20 7b 0a 0a 20 24 78 64 67 43 6f 6e 66 69 67 20 (self::useXdg()).{...$xdgConfig.
60d60 3d 20 67 65 74 65 6e 76 28 27 58 44 47 5f 43 4f 4e 46 49 47 5f 48 4f 4d 45 27 29 20 3f 3a 20 24 =.getenv('XDG_CONFIG_HOME').?:.$
60d80 75 73 65 72 44 69 72 20 2e 20 27 2f 2e 63 6f 6e 66 69 67 27 3b 0a 0a 72 65 74 75 72 6e 20 24 78 userDir...'/.config';..return.$x
60da0 64 67 43 6f 6e 66 69 67 20 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 27 3b 0a 7d 0a 0a 72 65 74 75 72 dgConfig...'/composer';.}..retur
60dc0 6e 20 24 75 73 65 72 44 69 72 20 2e 20 27 2f 2e 63 6f 6d 70 6f 73 65 72 27 3b 0a 7d 0a 0a 0a 0a n.$userDir...'/.composer';.}....
60de0 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 ..protected.static.function.getC
60e00 61 63 68 65 44 69 72 28 24 68 6f 6d 65 29 0a 7b 0a 24 63 61 63 68 65 44 69 72 20 3d 20 67 65 74 acheDir($home).{.$cacheDir.=.get
60e20 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 43 41 43 48 45 5f 44 49 52 27 29 3b 0a 69 66 20 28 24 env('COMPOSER_CACHE_DIR');.if.($
60e40 63 61 63 68 65 44 69 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 63 68 65 44 69 72 3b 0a 7d 0a cacheDir).{.return.$cacheDir;.}.
60e60 0a 24 68 6f 6d 65 45 6e 76 20 3d 20 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d .$homeEnv.=.getenv('COMPOSER_HOM
60e80 45 27 29 3b 0a 69 66 20 28 24 68 6f 6d 65 45 6e 76 29 20 7b 0a 72 65 74 75 72 6e 20 24 68 6f 6d E');.if.($homeEnv).{.return.$hom
60ea0 65 45 6e 76 20 2e 20 27 2f 63 61 63 68 65 27 3b 0a 7d 0a 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d eEnv...'/cache';.}..if.(Platform
60ec0 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 69 66 20 28 24 63 61 63 68 65 44 69 72 20 3d ::isWindows()).{.if.($cacheDir.=
60ee0 20 67 65 74 65 6e 76 28 27 4c 4f 43 41 4c 41 50 50 44 41 54 41 27 29 29 20 7b 0a 24 63 61 63 68 .getenv('LOCALAPPDATA')).{.$cach
60f00 65 44 69 72 20 2e 3d 20 27 2f 43 6f 6d 70 6f 73 65 72 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 eDir..=.'/Composer';.}.else.{.$c
60f20 61 63 68 65 44 69 72 20 3d 20 24 68 6f 6d 65 20 2e 20 27 2f 63 61 63 68 65 27 3b 0a 7d 0a 0a 72 acheDir.=.$home...'/cache';.}..r
60f40 65 74 75 72 6e 20 72 74 72 69 6d 28 73 74 72 74 72 28 24 63 61 63 68 65 44 69 72 2c 20 27 5c 5c eturn.rtrim(strtr($cacheDir,.'\\
60f60 27 2c 20 27 2f 27 29 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 24 75 73 65 72 44 69 72 20 3d 20 73 65 6c ',.'/'),.'/');.}..$userDir.=.sel
60f80 66 3a 3a 67 65 74 55 73 65 72 44 69 72 28 29 3b 0a 69 66 20 28 24 68 6f 6d 65 20 3d 3d 3d 20 24 f::getUserDir();.if.($home.===.$
60fa0 75 73 65 72 44 69 72 20 2e 20 27 2f 2e 63 6f 6d 70 6f 73 65 72 27 20 26 26 20 69 73 5f 64 69 72 userDir...'/.composer'.&&.is_dir
60fc0 28 24 68 6f 6d 65 20 2e 20 27 2f 63 61 63 68 65 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 68 6f ($home...'/cache')).{.return.$ho
60fe0 6d 65 20 2e 20 27 2f 63 61 63 68 65 27 3b 0a 7d 0a 0a 69 66 20 28 73 65 6c 66 3a 3a 75 73 65 58 me...'/cache';.}..if.(self::useX
61000 64 67 28 29 29 20 7b 0a 24 78 64 67 43 61 63 68 65 20 3d 20 67 65 74 65 6e 76 28 27 58 44 47 5f dg()).{.$xdgCache.=.getenv('XDG_
61020 43 41 43 48 45 5f 48 4f 4d 45 27 29 20 3f 3a 20 24 75 73 65 72 44 69 72 20 2e 20 27 2f 2e 63 61 CACHE_HOME').?:.$userDir...'/.ca
61040 63 68 65 27 3b 0a 0a 72 65 74 75 72 6e 20 24 78 64 67 43 61 63 68 65 20 2e 20 27 2f 63 6f 6d 70 che';..return.$xdgCache...'/comp
61060 6f 73 65 72 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 68 6f 6d 65 20 2e 20 27 2f 63 61 63 68 65 oser';.}..return.$home...'/cache
61080 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 66 75 6e 63 74 ';.}......protected.static.funct
610a0 69 6f 6e 20 67 65 74 44 61 74 61 44 69 72 28 24 68 6f 6d 65 29 0a 7b 0a 24 68 6f 6d 65 45 6e 76 ion.getDataDir($home).{.$homeEnv
610c0 20 3d 20 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d 45 27 29 3b 0a 69 66 20 28 .=.getenv('COMPOSER_HOME');.if.(
610e0 24 68 6f 6d 65 45 6e 76 29 20 7b 0a 72 65 74 75 72 6e 20 24 68 6f 6d 65 45 6e 76 3b 0a 7d 0a 0a $homeEnv).{.return.$homeEnv;.}..
61100 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 72 65 74 if.(Platform::isWindows()).{.ret
61120 75 72 6e 20 73 74 72 74 72 28 24 68 6f 6d 65 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a 7d 0a 0a urn.strtr($home,.'\\',.'/');.}..
61140 24 75 73 65 72 44 69 72 20 3d 20 73 65 6c 66 3a 3a 67 65 74 55 73 65 72 44 69 72 28 29 3b 0a 69 $userDir.=.self::getUserDir();.i
61160 66 20 28 24 68 6f 6d 65 20 21 3d 3d 20 24 75 73 65 72 44 69 72 20 2e 20 27 2f 2e 63 6f 6d 70 6f f.($home.!==.$userDir...'/.compo
61180 73 65 72 27 20 26 26 20 73 65 6c 66 3a 3a 75 73 65 58 64 67 28 29 29 20 7b 0a 24 78 64 67 44 61 ser'.&&.self::useXdg()).{.$xdgDa
611a0 74 61 20 3d 20 67 65 74 65 6e 76 28 27 58 44 47 5f 44 41 54 41 5f 48 4f 4d 45 27 29 20 3f 3a 20 ta.=.getenv('XDG_DATA_HOME').?:.
611c0 24 75 73 65 72 44 69 72 20 2e 20 27 2f 2e 6c 6f 63 61 6c 2f 73 68 61 72 65 27 3b 0a 0a 72 65 74 $userDir...'/.local/share';..ret
611e0 75 72 6e 20 24 78 64 67 44 61 74 61 20 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 27 3b 0a 7d 0a 0a 72 urn.$xdgData...'/composer';.}..r
61200 65 74 75 72 6e 20 24 68 6f 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 eturn.$home;.}......public.stati
61220 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 43 6f 6e 66 69 67 28 49 4f 49 6e 74 65 72 66 c.function.createConfig(IOInterf
61240 61 63 65 20 24 69 6f 20 3d 20 6e 75 6c 6c 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 ace.$io.=.null,.$cwd.=.null).{.$
61260 63 77 64 20 3d 20 24 63 77 64 20 3f 3a 20 67 65 74 63 77 64 28 29 3b 0a 0a 24 63 6f 6e 66 69 67 cwd.=.$cwd.?:.getcwd();..$config
61280 20 3d 20 6e 65 77 20 43 6f 6e 66 69 67 28 74 72 75 65 2c 20 24 63 77 64 29 3b 0a 0a 0a 20 24 68 .=.new.Config(true,.$cwd);....$h
612a0 6f 6d 65 20 3d 20 73 65 6c 66 3a 3a 67 65 74 48 6f 6d 65 44 69 72 28 29 3b 0a 24 63 6f 6e 66 69 ome.=.self::getHomeDir();.$confi
612c0 67 2d 3e 6d 65 72 67 65 28 61 72 72 61 79 28 27 63 6f 6e 66 69 67 27 20 3d 3e 20 61 72 72 61 79 g->merge(array('config'.=>.array
612e0 28 0a 27 68 6f 6d 65 27 20 3d 3e 20 24 68 6f 6d 65 2c 0a 27 63 61 63 68 65 2d 64 69 72 27 20 3d (.'home'.=>.$home,.'cache-dir'.=
61300 3e 20 73 65 6c 66 3a 3a 67 65 74 43 61 63 68 65 44 69 72 28 24 68 6f 6d 65 29 2c 0a 27 64 61 74 >.self::getCacheDir($home),.'dat
61320 61 2d 64 69 72 27 20 3d 3e 20 73 65 6c 66 3a 3a 67 65 74 44 61 74 61 44 69 72 28 24 68 6f 6d 65 a-dir'.=>.self::getDataDir($home
61340 29 2c 0a 29 29 29 3b 0a 0a 0a 20 0a 20 0a 20 24 64 69 72 73 20 3d 20 61 72 72 61 79 28 24 63 6f ),.)));........$dirs.=.array($co
61360 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 nfig->get('home'),.$config->get(
61380 27 63 61 63 68 65 2d 64 69 72 27 29 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 64 61 74 61 'cache-dir'),.$config->get('data
613a0 2d 64 69 72 27 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 69 72 73 20 61 73 20 24 64 69 72 29 -dir'));.foreach.($dirs.as.$dir)
613c0 20 7b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 20 2e 20 27 2f 2e 68 74 .{.if.(!file_exists($dir...'/.ht
613e0 61 63 63 65 73 73 27 29 29 20 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b access')).{.if.(!is_dir($dir)).{
61400 0a 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 6d 6b 64 69 72 27 2c 20 24 64 69 72 2c 20 30 .Silencer::call('mkdir',.$dir,.0
61420 37 37 37 2c 20 74 72 75 65 29 3b 0a 7d 0a 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 66 69 777,.true);.}.Silencer::call('fi
61440 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 27 2c 20 24 64 69 72 20 2e 20 27 2f 2e 68 74 61 63 le_put_contents',.$dir...'/.htac
61460 63 65 73 73 27 2c 20 27 44 65 6e 79 20 66 72 6f 6d 20 61 6c 6c 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 cess',.'Deny.from.all');.}.}....
61480 24 66 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 63 6f 6e 66 69 67 2d 3e 67 65 $file.=.new.JsonFile($config->ge
614a0 74 28 27 68 6f 6d 65 27 29 2e 27 2f 63 6f 6e 66 69 67 2e 6a 73 6f 6e 27 29 3b 0a 69 66 20 28 24 t('home').'/config.json');.if.($
614c0 66 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 69 66 20 28 24 69 6f 20 26 26 20 24 69 6f file->exists()).{.if.($io.&&.$io
614e0 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 ->isDebug()).{.$io->writeError('
61500 4c 6f 61 64 69 6e 67 20 63 6f 6e 66 69 67 20 66 69 6c 65 20 27 20 2e 20 24 66 69 6c 65 2d 3e 67 Loading.config.file.'...$file->g
61520 65 74 50 61 74 68 28 29 29 3b 0a 7d 0a 24 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 65 28 24 66 69 6c etPath());.}.$config->merge($fil
61540 65 2d 3e 72 65 61 64 28 29 29 3b 0a 7d 0a 24 63 6f 6e 66 69 67 2d 3e 73 65 74 43 6f 6e 66 69 67 e->read());.}.$config->setConfig
61560 53 6f 75 72 63 65 28 6e 65 77 20 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 24 66 69 6c Source(new.JsonConfigSource($fil
61580 65 29 29 3b 0a 0a 0a 20 24 66 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 63 6f e));....$file.=.new.JsonFile($co
615a0 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2e 27 2f 61 75 74 68 2e 6a 73 6f 6e 27 29 3b nfig->get('home').'/auth.json');
615c0 0a 69 66 20 28 24 66 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 69 66 20 28 24 69 6f 20 .if.($file->exists()).{.if.($io.
615e0 26 26 20 24 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 &&.$io->isDebug()).{.$io->writeE
61600 72 72 6f 72 28 27 4c 6f 61 64 69 6e 67 20 63 6f 6e 66 69 67 20 66 69 6c 65 20 27 20 2e 20 24 66 rror('Loading.config.file.'...$f
61620 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 7d 0a 24 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 ile->getPath());.}.$config->merg
61640 65 28 61 72 72 61 79 28 27 63 6f 6e 66 69 67 27 20 3d 3e 20 24 66 69 6c 65 2d 3e 72 65 61 64 28 e(array('config'.=>.$file->read(
61660 29 29 29 3b 0a 7d 0a 24 63 6f 6e 66 69 67 2d 3e 73 65 74 41 75 74 68 43 6f 6e 66 69 67 53 6f 75 )));.}.$config->setAuthConfigSou
61680 72 63 65 28 6e 65 77 20 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 24 66 69 6c 65 2c 20 rce(new.JsonConfigSource($file,.
616a0 74 72 75 65 29 29 3b 0a 0a 0a 20 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 41 75 74 68 45 6e 76 20 true));....if.($composerAuthEnv.
616c0 3d 20 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 41 55 54 48 27 29 29 20 7b 0a 24 61 75 =.getenv('COMPOSER_AUTH')).{.$au
616e0 74 68 44 61 74 61 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 63 6f 6d 70 6f 73 65 72 41 75 thData.=.json_decode($composerAu
61700 74 68 45 6e 76 2c 20 74 72 75 65 29 3b 0a 0a 69 66 20 28 69 73 5f 6e 75 6c 6c 28 24 61 75 74 68 thEnv,.true);..if.(is_null($auth
61720 44 61 74 61 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 Data)).{.throw.new.\UnexpectedVa
61740 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 43 4f 4d 50 4f 53 45 52 5f 41 55 54 48 20 65 6e 76 69 lueException('COMPOSER_AUTH.envi
61760 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20 69 73 20 6d 61 6c 66 6f 72 6d 65 64 2c 20 73 ronment.variable.is.malformed,.s
61780 68 6f 75 6c 64 20 62 65 20 61 20 76 61 6c 69 64 20 4a 53 4f 4e 20 6f 62 6a 65 63 74 27 29 3b 0a hould.be.a.valid.JSON.object');.
617a0 7d 0a 0a 69 66 20 28 24 69 6f 20 26 26 20 24 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a }..if.($io.&&.$io->isDebug()).{.
617c0 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 4c 6f 61 64 69 6e 67 20 61 75 74 68 20 63 6f $io->writeError('Loading.auth.co
617e0 6e 66 69 67 20 66 72 6f 6d 20 43 4f 4d 50 4f 53 45 52 5f 41 55 54 48 27 29 3b 0a 7d 0a 24 63 6f nfig.from.COMPOSER_AUTH');.}.$co
61800 6e 66 69 67 2d 3e 6d 65 72 67 65 28 61 72 72 61 79 28 27 63 6f 6e 66 69 67 27 20 3d 3e 20 24 61 nfig->merge(array('config'.=>.$a
61820 75 74 68 44 61 74 61 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 66 69 67 3b 0a 7d 0a uthData));.}..return.$config;.}.
61840 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f .public.static.function.getCompo
61860 73 65 72 46 69 6c 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 69 6d 28 67 65 74 65 6e 76 28 27 serFile().{.return.trim(getenv('
61880 43 4f 4d 50 4f 53 45 52 27 29 29 20 3f 3a 20 27 2e 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 COMPOSER')).?:.'./composer.json'
618a0 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 ;.}..public.static.function.crea
618c0 74 65 41 64 64 69 74 69 6f 6e 61 6c 53 74 79 6c 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 teAdditionalStyles().{.return.ar
618e0 72 61 79 28 0a 27 68 69 67 68 6c 69 67 68 74 27 20 3d 3e 20 6e 65 77 20 4f 75 74 70 75 74 46 6f ray(.'highlight'.=>.new.OutputFo
61900 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 72 65 64 27 29 2c 0a 27 77 61 72 6e 69 6e 67 27 20 3d rmatterStyle('red'),.'warning'.=
61920 3e 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 62 6c 61 63 >.new.OutputFormatterStyle('blac
61940 6b 27 2c 20 27 79 65 6c 6c 6f 77 27 29 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 k',.'yellow'),.);.}.....public.s
61960 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f tatic.function.createDefaultRepo
61980 73 69 74 6f 72 69 65 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d 20 6e 75 6c 6c 2c sitories(IOInterface.$io.=.null,
619a0 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 2c 20 52 65 70 6f 73 69 74 6f .Config.$config.=.null,.Reposito
619c0 72 79 4d 61 6e 61 67 65 72 20 24 72 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 52 ryManager.$rm.=.null).{.return.R
619e0 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 64 65 66 61 75 6c 74 52 65 70 6f 73 28 24 epositoryFactory::defaultRepos($
61a00 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 72 6d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a io,.$config,.$rm);.}............
61a20 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 43 6f 6d 70 6f 73 65 72 ..public.function.createComposer
61a40 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 20 3d (IOInterface.$io,.$localConfig.=
61a60 20 6e 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 20 3d 20 66 61 6c 73 65 2c 20 .null,.$disablePlugins.=.false,.
61a80 24 63 77 64 20 3d 20 6e 75 6c 6c 2c 20 24 66 75 6c 6c 4c 6f 61 64 20 3d 20 74 72 75 65 29 0a 7b $cwd.=.null,.$fullLoad.=.true).{
61aa0 0a 24 63 77 64 20 3d 20 24 63 77 64 20 3f 3a 20 67 65 74 63 77 64 28 29 3b 0a 0a 0a 20 69 66 20 .$cwd.=.$cwd.?:.getcwd();....if.
61ac0 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 29 20 7b 0a 24 6c 6f 63 61 6c (null.===.$localConfig).{.$local
61ae0 43 6f 6e 66 69 67 20 3d 20 73 74 61 74 69 63 3a 3a 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 Config.=.static::getComposerFile
61b00 28 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 ();.}..if.(is_string($localConfi
61b20 67 29 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 20 3d 20 24 6c 6f 63 61 6c 43 6f 6e 66 g)).{.$composerFile.=.$localConf
61b40 69 67 3b 0a 0a 24 66 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 6c 6f 63 61 6c ig;..$file.=.new.JsonFile($local
61b60 43 6f 6e 66 69 67 2c 20 6e 75 6c 6c 2c 20 24 69 6f 29 3b 0a 0a 69 66 20 28 21 24 66 69 6c 65 2d Config,.null,.$io);..if.(!$file-
61b80 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 69 66 20 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 20 3d 3d >exists()).{.if.($localConfig.==
61ba0 3d 20 27 2e 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 20 7c 7c 20 24 6c 6f 63 61 6c 43 6f 6e =.'./composer.json'.||.$localCon
61bc0 66 69 67 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 20 7b 0a 24 6d 65 73 73 fig.===.'composer.json').{.$mess
61be0 61 67 65 20 3d 20 27 43 6f 6d 70 6f 73 65 72 20 63 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 61 age.=.'Composer.could.not.find.a
61c00 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 69 6e 20 27 2e 24 63 77 64 3b 0a 7d .composer.json.file.in.'.$cwd;.}
61c20 20 65 6c 73 65 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 43 6f 6d 70 6f 73 65 72 20 63 6f 75 .else.{.$message.=.'Composer.cou
61c40 6c 64 20 6e 6f 74 20 66 69 6e 64 20 74 68 65 20 63 6f 6e 66 69 67 20 66 69 6c 65 3a 20 27 2e 24 ld.not.find.the.config.file:.'.$
61c60 6c 6f 63 61 6c 43 6f 6e 66 69 67 3b 0a 7d 0a 24 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 3d 20 27 localConfig;.}.$instructions.=.'
61c80 54 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 20 70 72 6f 6a 65 63 74 2c 20 70 6c 65 61 73 65 20 To.initialize.a.project,.please.
61ca0 63 72 65 61 74 65 20 61 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 61 73 20 64 create.a.composer.json.file.as.d
61cc0 65 73 63 72 69 62 65 64 20 69 6e 20 74 68 65 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f escribed.in.the.https://getcompo
61ce0 73 65 72 2e 6f 72 67 2f 20 22 47 65 74 74 69 6e 67 20 53 74 61 72 74 65 64 22 20 73 65 63 74 69 ser.org/."Getting.Started".secti
61d00 6f 6e 27 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 on';.throw.new.\InvalidArgumentE
61d20 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2e 50 48 50 5f 45 4f 4c 2e 24 69 6e 73 74 72 xception($message.PHP_EOL.$instr
61d40 75 63 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 24 66 69 6c 65 2d 3e 76 61 6c 69 64 61 74 65 53 63 68 65 uctions);.}..$file->validateSche
61d60 6d 61 28 4a 73 6f 6e 46 69 6c 65 3a 3a 4c 41 58 5f 53 43 48 45 4d 41 29 3b 0a 24 6a 73 6f 6e 50 ma(JsonFile::LAX_SCHEMA);.$jsonP
61d80 61 72 73 65 72 20 3d 20 6e 65 77 20 4a 73 6f 6e 50 61 72 73 65 72 3b 0a 74 72 79 20 7b 0a 24 6a arser.=.new.JsonParser;.try.{.$j
61da0 73 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e sonParser->parse(file_get_conten
61dc0 74 73 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 29 2c 20 4a 73 6f 6e 50 61 72 73 65 72 3a 3a 44 45 ts($localConfig),.JsonParser::DE
61de0 54 45 43 54 5f 4b 45 59 5f 43 4f 4e 46 4c 49 43 54 53 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 53 TECT_KEY_CONFLICTS);.}.catch.(\S
61e00 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 5c 44 75 70 6c 69 63 61 74 65 4b 65 79 45 78 63 65 70 74 69 eld\JsonLint\DuplicateKeyExcepti
61e20 6f 6e 20 24 65 29 20 7b 0a 24 64 65 74 61 69 6c 73 20 3d 20 24 65 2d 3e 67 65 74 44 65 74 61 69 on.$e).{.$details.=.$e->getDetai
61e40 6c 73 28 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e ls();.$io->writeError('<warning>
61e60 4b 65 79 20 27 2e 24 64 65 74 61 69 6c 73 5b 27 6b 65 79 27 5d 2e 27 20 69 73 20 61 20 64 75 70 Key.'.$details['key'].'.is.a.dup
61e80 6c 69 63 61 74 65 20 69 6e 20 27 2e 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 2e 27 20 61 74 20 6c 69 licate.in.'.$localConfig.'.at.li
61ea0 6e 65 20 27 2e 24 64 65 74 61 69 6c 73 5b 27 6c 69 6e 65 27 5d 2e 27 3c 2f 77 61 72 6e 69 6e 67 ne.'.$details['line'].'</warning
61ec0 3e 27 29 3b 0a 7d 0a 0a 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 20 3d 20 24 66 69 6c 65 2d 3e 72 65 >');.}..$localConfig.=.$file->re
61ee0 61 64 28 29 3b 0a 7d 0a 0a 0a 20 24 63 6f 6e 66 69 67 20 3d 20 73 74 61 74 69 63 3a 3a 63 72 65 ad();.}....$config.=.static::cre
61f00 61 74 65 43 6f 6e 66 69 67 28 24 69 6f 2c 20 24 63 77 64 29 3b 0a 24 63 6f 6e 66 69 67 2d 3e 6d ateConfig($io,.$cwd);.$config->m
61f20 65 72 67 65 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 63 erge($localConfig);.if.(isset($c
61f40 6f 6d 70 6f 73 65 72 46 69 6c 65 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 omposerFile)).{.$io->writeError(
61f60 27 4c 6f 61 64 69 6e 67 20 63 6f 6e 66 69 67 20 66 69 6c 65 20 27 20 2e 20 24 63 6f 6d 70 6f 73 'Loading.config.file.'...$compos
61f80 65 72 46 69 6c 65 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 erFile,.true,.IOInterface::DEBUG
61fa0 29 3b 0a 24 6c 6f 63 61 6c 41 75 74 68 46 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 );.$localAuthFile.=.new.JsonFile
61fc0 28 64 69 72 6e 61 6d 65 28 72 65 61 6c 70 61 74 68 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 29 (dirname(realpath($composerFile)
61fe0 29 20 2e 20 27 2f 61 75 74 68 2e 6a 73 6f 6e 27 29 3b 0a 69 66 20 28 24 6c 6f 63 61 6c 41 75 74 )...'/auth.json');.if.($localAut
62000 68 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 hFile->exists()).{.$io->writeErr
62020 6f 72 28 27 4c 6f 61 64 69 6e 67 20 63 6f 6e 66 69 67 20 66 69 6c 65 20 27 20 2e 20 24 6c 6f 63 or('Loading.config.file.'...$loc
62040 61 6c 41 75 74 68 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 74 72 75 65 2c 20 49 4f 49 alAuthFile->getPath(),.true,.IOI
62060 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 24 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 65 nterface::DEBUG);.$config->merge
62080 28 61 72 72 61 79 28 27 63 6f 6e 66 69 67 27 20 3d 3e 20 24 6c 6f 63 61 6c 41 75 74 68 46 69 6c (array('config'.=>.$localAuthFil
620a0 65 2d 3e 72 65 61 64 28 29 29 29 3b 0a 24 63 6f 6e 66 69 67 2d 3e 73 65 74 41 75 74 68 43 6f 6e e->read()));.$config->setAuthCon
620c0 66 69 67 53 6f 75 72 63 65 28 6e 65 77 20 4a 73 6f 6e 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 24 figSource(new.JsonConfigSource($
620e0 6c 6f 63 61 6c 41 75 74 68 46 69 6c 65 2c 20 74 72 75 65 29 29 3b 0a 7d 0a 7d 0a 0a 24 76 65 6e localAuthFile,.true));.}.}..$ven
62100 64 6f 72 44 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 dorDir.=.$config->get('vendor-di
62120 72 27 29 3b 0a 24 62 69 6e 44 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 62 69 6e r');.$binDir.=.$config->get('bin
62140 2d 64 69 72 27 29 3b 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 20 3d 20 6e 65 77 20 43 6f 6d 70 6f -dir');....$composer.=.new.Compo
62160 73 65 72 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 43 6f 6e 66 69 67 28 24 63 6f 6e ser();.$composer->setConfig($con
62180 66 69 67 29 3b 0a 0a 69 66 20 28 24 66 75 6c 6c 4c 6f 61 64 29 20 7b 0a 0a 20 24 69 6f 2d 3e 6c fig);..if.($fullLoad).{...$io->l
621a0 6f 61 64 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 24 72 oadConfiguration($config);.}..$r
621c0 66 73 20 3d 20 73 65 6c 66 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 fs.=.self::createRemoteFilesyste
621e0 6d 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 0a 0a 20 24 64 69 73 70 61 74 63 68 65 72 20 m($io,.$config);....$dispatcher.
62200 3d 20 6e 65 77 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 24 63 6f 6d 70 6f 73 65 72 2c =.new.EventDispatcher($composer,
62220 20 24 69 6f 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 45 76 65 6e 74 44 69 73 70 61 74 .$io);.$composer->setEventDispat
62240 63 68 65 72 28 24 64 69 73 70 61 74 63 68 65 72 29 3b 0a 0a 0a 20 24 72 6d 20 3d 20 52 65 70 6f cher($dispatcher);....$rm.=.Repo
62260 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 6d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e sitoryFactory::manager($io,.$con
62280 66 69 67 2c 20 24 64 69 73 70 61 74 63 68 65 72 2c 20 24 72 66 73 29 3b 0a 24 63 6f 6d 70 6f 73 fig,.$dispatcher,.$rfs);.$compos
622a0 65 72 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 24 72 6d 29 3b 0a 0a er->setRepositoryManager($rm);..
622c0 0a 20 24 74 68 69 73 2d 3e 61 64 64 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 24 69 6f 2c ..$this->addLocalRepository($io,
622e0 20 24 72 6d 2c 20 24 76 65 6e 64 6f 72 44 69 72 29 3b 0a 0a 0a 20 0a 20 69 66 20 28 21 24 66 75 .$rm,.$vendorDir);......if.(!$fu
62300 6c 6c 4c 6f 61 64 20 26 26 20 21 69 73 73 65 74 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 5b 27 76 llLoad.&&.!isset($localConfig['v
62320 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 5b 27 76 65 72 73 69 ersion'])).{.$localConfig['versi
62340 6f 6e 27 5d 20 3d 20 27 31 2e 30 2e 30 27 3b 0a 7d 0a 0a 0a 20 24 70 61 72 73 65 72 20 3d 20 6e on'].=.'1.0.0';.}....$parser.=.n
62360 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 24 67 75 65 73 73 65 72 20 3d 20 6e 65 77 ew.VersionParser;.$guesser.=.new
62380 20 56 65 72 73 69 6f 6e 47 75 65 73 73 65 72 28 24 63 6f 6e 66 69 67 2c 20 6e 65 77 20 50 72 6f .VersionGuesser($config,.new.Pro
623a0 63 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 2c 20 24 70 61 72 73 65 72 29 3b 0a 24 6c 6f cessExecutor($io),.$parser);.$lo
623c0 61 64 65 72 20 3d 20 6e 65 77 20 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 52 6f 6f 74 50 61 ader.=.new.Package\Loader\RootPa
623e0 63 6b 61 67 65 4c 6f 61 64 65 72 28 24 72 6d 2c 20 24 63 6f 6e 66 69 67 2c 20 24 70 61 72 73 65 ckageLoader($rm,.$config,.$parse
62400 72 2c 20 24 67 75 65 73 73 65 72 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6c 6f 61 64 65 72 r,.$guesser);.$package.=.$loader
62420 2d 3e 6c 6f 61 64 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 50 ->load($localConfig,.'Composer\P
62440 61 63 6b 61 67 65 5c 52 6f 6f 74 50 61 63 6b 61 67 65 27 2c 20 24 63 77 64 29 3b 0a 24 63 6f 6d ackage\RootPackage',.$cwd);.$com
62460 70 6f 73 65 72 2d 3e 73 65 74 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 20 poser->setPackage($package);....
62480 24 69 6d 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d $im.=.$this->createInstallationM
624a0 61 6e 61 67 65 72 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 49 6e 73 74 61 6c 6c 61 anager();.$composer->setInstalla
624c0 74 69 6f 6e 4d 61 6e 61 67 65 72 28 24 69 6d 29 3b 0a 0a 69 66 20 28 24 66 75 6c 6c 4c 6f 61 64 tionManager($im);..if.($fullLoad
624e0 29 20 7b 0a 0a 20 24 64 6d 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 ).{...$dm.=.$this->createDownloa
62500 64 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 64 69 73 70 61 74 63 68 dManager($io,.$config,.$dispatch
62520 65 72 2c 20 24 72 66 73 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 er,.$rfs);.$composer->setDownloa
62540 64 4d 61 6e 61 67 65 72 28 24 64 6d 29 3b 0a 0a 0a 20 24 67 65 6e 65 72 61 74 6f 72 20 3d 20 6e dManager($dm);....$generator.=.n
62560 65 77 20 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 28 24 64 69 73 70 61 74 63 68 65 72 ew.AutoloadGenerator($dispatcher
62580 2c 20 24 69 6f 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 41 75 74 6f 6c 6f 61 64 47 65 ,.$io);.$composer->setAutoloadGe
625a0 6e 65 72 61 74 6f 72 28 24 67 65 6e 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d nerator($generator);.}....$this-
625c0 3e 63 72 65 61 74 65 44 65 66 61 75 6c 74 49 6e 73 74 61 6c 6c 65 72 73 28 24 69 6d 2c 20 24 63 >createDefaultInstallers($im,.$c
625e0 6f 6d 70 6f 73 65 72 2c 20 24 69 6f 29 3b 0a 0a 69 66 20 28 24 66 75 6c 6c 4c 6f 61 64 29 20 7b omposer,.$io);..if.($fullLoad).{
62600 0a 24 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 .$globalComposer.=.$this->create
62620 47 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 64 69 GlobalComposer($io,.$config,.$di
62640 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 3b 0a 24 70 6d 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 sablePlugins);.$pm.=.$this->crea
62660 74 65 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 tePluginManager($io,.$composer,.
62680 24 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 $globalComposer,.$disablePlugins
626a0 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 24 );.$composer->setPluginManager($
626c0 70 6d 29 3b 0a 0a 24 70 6d 2d 3e 6c 6f 61 64 49 6e 73 74 61 6c 6c 65 64 50 6c 75 67 69 6e 73 28 pm);..$pm->loadInstalledPlugins(
626e0 29 3b 0a 0a 0a 20 0a 20 69 66 20 28 24 72 6d 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 );......if.($rm->getLocalReposit
62700 6f 72 79 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 75 72 67 65 50 61 63 6b 61 67 65 73 28 24 72 ory()).{.$this->purgePackages($r
62720 6d 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 2c 20 24 69 6d 29 3b 0a 7d m->getLocalRepository(),.$im);.}
62740 0a 7d 0a 0a 0a 20 69 66 20 28 24 66 75 6c 6c 4c 6f 61 64 20 26 26 20 69 73 73 65 74 28 24 63 6f .}....if.($fullLoad.&&.isset($co
62760 6d 70 6f 73 65 72 46 69 6c 65 29 29 20 7b 0a 24 6c 6f 63 6b 46 69 6c 65 20 3d 20 22 6a 73 6f 6e mposerFile)).{.$lockFile.=."json
62780 22 20 3d 3d 3d 20 70 61 74 68 69 6e 66 6f 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 2c 20 50 41 ".===.pathinfo($composerFile,.PA
627a0 54 48 49 4e 46 4f 5f 45 58 54 45 4e 53 49 4f 4e 29 0a 3f 20 73 75 62 73 74 72 28 24 63 6f 6d 70 THINFO_EXTENSION).?.substr($comp
627c0 6f 73 65 72 46 69 6c 65 2c 20 30 2c 20 2d 34 29 2e 27 6c 6f 63 6b 27 0a 3a 20 24 63 6f 6d 70 6f oserFile,.0,.-4).'lock'.:.$compo
627e0 73 65 72 46 69 6c 65 20 2e 20 27 2e 6c 6f 63 6b 27 3b 0a 0a 24 6c 6f 63 6b 65 72 20 3d 20 6e 65 serFile...'.lock';..$locker.=.ne
62800 77 20 50 61 63 6b 61 67 65 5c 4c 6f 63 6b 65 72 28 24 69 6f 2c 20 6e 65 77 20 4a 73 6f 6e 46 69 w.Package\Locker($io,.new.JsonFi
62820 6c 65 28 24 6c 6f 63 6b 46 69 6c 65 2c 20 6e 75 6c 6c 2c 20 24 69 6f 29 2c 20 24 72 6d 2c 20 24 le($lockFile,.null,.$io),.$rm,.$
62840 69 6d 2c 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 63 6f 6d 70 6f 73 65 72 46 im,.file_get_contents($composerF
62860 69 6c 65 29 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 4c 6f 63 6b 65 72 28 24 6c 6f 63 ile));.$composer->setLocker($loc
62880 6b 65 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a ker);.}..return.$composer;.}....
628a0 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c 6f 63 61 6c 52 65 70 ..protected.function.addLocalRep
628c0 6f 73 69 74 6f 72 79 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 52 65 70 6f 73 69 74 ository(IOInterface.$io,.Reposit
628e0 6f 72 79 4d 61 6e 61 67 65 72 20 24 72 6d 2c 20 24 76 65 6e 64 6f 72 44 69 72 29 0a 7b 0a 24 72 oryManager.$rm,.$vendorDir).{.$r
62900 6d 2d 3e 73 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 6e 65 77 20 52 65 70 6f 73 69 m->setLocalRepository(new.Reposi
62920 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f tory\InstalledFilesystemReposito
62940 72 79 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 76 65 6e 64 6f 72 44 69 72 2e 27 2f 63 6f 6d ry(new.JsonFile($vendorDir.'/com
62960 70 6f 73 65 72 2f 69 6e 73 74 61 6c 6c 65 64 2e 6a 73 6f 6e 27 2c 20 6e 75 6c 6c 2c 20 24 69 6f poser/installed.json',.null,.$io
62980 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 )));.}......protected.function.c
629a0 72 65 61 74 65 47 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 20 reateGlobalComposer(IOInterface.
629c0 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 $io,.Config.$config,.$disablePlu
629e0 67 69 6e 73 29 0a 7b 0a 69 66 20 28 72 65 61 6c 70 61 74 68 28 24 63 6f 6e 66 69 67 2d 3e 67 65 gins).{.if.(realpath($config->ge
62a00 74 28 27 68 6f 6d 65 27 29 29 20 3d 3d 3d 20 67 65 74 63 77 64 28 29 29 20 7b 0a 72 65 74 75 72 t('home')).===.getcwd()).{.retur
62a20 6e 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 6e 75 6c 6c 3b 0a 74 72 79 20 7b 0a 24 63 n;.}..$composer.=.null;.try.{.$c
62a40 6f 6d 70 6f 73 65 72 20 3d 20 73 65 6c 66 3a 3a 63 72 65 61 74 65 43 6f 6d 70 6f 73 65 72 28 24 omposer.=.self::createComposer($
62a60 69 6f 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 20 2e 20 27 2f 63 6f 6d io,.$config->get('home')...'/com
62a80 70 6f 73 65 72 2e 6a 73 6f 6e 27 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 2c 20 24 63 poser.json',.$disablePlugins,.$c
62aa0 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2c 20 66 61 6c 73 65 29 3b 0a 7d 20 63 61 onfig->get('home'),.false);.}.ca
62ac0 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 tch.(\Exception.$e).{.$io->write
62ae0 45 72 72 6f 72 28 27 46 61 69 6c 65 64 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 67 6c 6f 62 Error('Failed.to.initialize.glob
62b00 61 6c 20 63 6f 6d 70 6f 73 65 72 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c al.composer:.'.$e->getMessage(),
62b20 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 7d 0a 0a 72 .true,.IOInterface::DEBUG);.}..r
62b40 65 74 75 72 6e 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 eturn.$composer;.}........public
62b60 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 .function.createDownloadManager(
62b80 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c IOInterface.$io,.Config.$config,
62ba0 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 .EventDispatcher.$eventDispatche
62bc0 72 20 3d 20 6e 75 6c 6c 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 r.=.null,.RemoteFilesystem.$rfs.
62be0 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 63 61 63 68 65 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 63 6f =.null).{.$cache.=.null;.if.($co
62c00 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 74 74 6c 27 29 20 3e 20 30 nfig->get('cache-files-ttl').>.0
62c20 29 20 7b 0a 24 63 61 63 68 65 20 3d 20 6e 65 77 20 43 61 63 68 65 28 24 69 6f 2c 20 24 63 6f 6e ).{.$cache.=.new.Cache($io,.$con
62c40 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 64 69 72 27 29 2c 20 27 61 2d fig->get('cache-files-dir'),.'a-
62c60 7a 30 2d 39 5f 2e 2f 27 29 3b 0a 7d 0a 0a 24 64 6d 20 3d 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 z0-9_./');.}..$dm.=.new.Download
62c80 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 24 69 6f 29 3b 0a 73 77 69 74 63 68 20 er\DownloadManager($io);.switch.
62ca0 28 24 70 72 65 66 65 72 72 65 64 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 70 72 65 66 ($preferred.=.$config->get('pref
62cc0 65 72 72 65 64 2d 69 6e 73 74 61 6c 6c 27 29 29 20 7b 0a 63 61 73 65 20 27 64 69 73 74 27 3a 0a erred-install')).{.case.'dist':.
62ce0 24 64 6d 2d 3e 73 65 74 50 72 65 66 65 72 44 69 73 74 28 74 72 75 65 29 3b 0a 62 72 65 61 6b 3b $dm->setPreferDist(true);.break;
62d00 0a 63 61 73 65 20 27 73 6f 75 72 63 65 27 3a 0a 24 64 6d 2d 3e 73 65 74 50 72 65 66 65 72 53 6f .case.'source':.$dm->setPreferSo
62d20 75 72 63 65 28 74 72 75 65 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 61 75 74 6f 27 3a 0a urce(true);.break;.case.'auto':.
62d40 64 65 66 61 75 6c 74 3a 0a 0a 20 62 72 65 61 6b 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 default:...break;.}..if.(is_arra
62d60 79 28 24 70 72 65 66 65 72 72 65 64 29 29 20 7b 0a 24 64 6d 2d 3e 73 65 74 50 72 65 66 65 72 65 y($preferred)).{.$dm->setPrefere
62d80 6e 63 65 73 28 24 70 72 65 66 65 72 72 65 64 29 3b 0a 7d 0a 0a 24 65 78 65 63 75 74 6f 72 20 3d nces($preferred);.}..$executor.=
62da0 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 24 66 73 20 3d .new.ProcessExecutor($io);.$fs.=
62dc0 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 24 65 78 65 63 75 74 6f 72 29 3b 0a 0a 24 64 6d .new.Filesystem($executor);..$dm
62de0 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 67 69 74 27 2c 20 6e 65 77 20 44 6f 77 6e 6c ->setDownloader('git',.new.Downl
62e00 6f 61 64 65 72 5c 47 69 74 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 oader\GitDownloader($io,.$config
62e20 2c 20 24 65 78 65 63 75 74 6f 72 2c 20 24 66 73 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e ,.$executor,.$fs));.$dm->setDown
62e40 6c 6f 61 64 65 72 28 27 73 76 6e 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 53 76 6e loader('svn',.new.Downloader\Svn
62e60 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 78 65 63 75 74 Downloader($io,.$config,.$execut
62e80 6f 72 2c 20 24 66 73 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 68 or,.$fs));.$dm->setDownloader('h
62ea0 67 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 48 67 44 6f 77 6e 6c 6f 61 64 65 72 28 g',.new.Downloader\HgDownloader(
62ec0 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 78 65 63 75 74 6f 72 2c 20 24 66 73 29 29 3b 0a $io,.$config,.$executor,.$fs));.
62ee0 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 70 65 72 66 6f 72 63 65 27 2c 20 6e $dm->setDownloader('perforce',.n
62f00 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 50 65 72 66 6f 72 63 65 44 6f 77 6e 6c 6f 61 64 65 72 ew.Downloader\PerforceDownloader
62f20 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 ($io,.$config));.$dm->setDownloa
62f40 64 65 72 28 27 7a 69 70 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 5a 69 70 44 6f 77 der('zip',.new.Downloader\ZipDow
62f60 6e 6c 6f 61 64 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 nloader($io,.$config,.$eventDisp
62f80 61 74 63 68 65 72 2c 20 24 63 61 63 68 65 2c 20 24 65 78 65 63 75 74 6f 72 2c 20 24 72 66 73 29 atcher,.$cache,.$executor,.$rfs)
62fa0 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 72 61 72 27 2c 20 6e 65 77 );.$dm->setDownloader('rar',.new
62fc0 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 52 61 72 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 2c 20 24 .Downloader\RarDownloader($io,.$
62fe0 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 63 61 63 68 65 config,.$eventDispatcher,.$cache
63000 2c 20 24 65 78 65 63 75 74 6f 72 2c 20 24 72 66 73 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 ,.$executor,.$rfs));.$dm->setDow
63020 6e 6c 6f 61 64 65 72 28 27 74 61 72 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 61 nloader('tar',.new.Downloader\Ta
63040 72 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 rDownloader($io,.$config,.$event
63060 44 69 73 70 61 74 63 68 65 72 2c 20 24 63 61 63 68 65 2c 20 24 72 66 73 29 29 3b 0a 24 64 6d 2d Dispatcher,.$cache,.$rfs));.$dm-
63080 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 67 7a 69 70 27 2c 20 6e 65 77 20 44 6f 77 6e 6c >setDownloader('gzip',.new.Downl
630a0 6f 61 64 65 72 5c 47 7a 69 70 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 oader\GzipDownloader($io,.$confi
630c0 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 63 61 63 68 65 2c 20 24 65 78 g,.$eventDispatcher,.$cache,.$ex
630e0 65 63 75 74 6f 72 2c 20 24 72 66 73 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 ecutor,.$rfs));.$dm->setDownload
63100 65 72 28 27 78 7a 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 58 7a 44 6f 77 6e 6c 6f er('xz',.new.Downloader\XzDownlo
63120 61 64 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 ader($io,.$config,.$eventDispatc
63140 68 65 72 2c 20 24 63 61 63 68 65 2c 20 24 65 78 65 63 75 74 6f 72 2c 20 24 72 66 73 29 29 3b 0a her,.$cache,.$executor,.$rfs));.
63160 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 70 68 61 72 27 2c 20 6e 65 77 20 44 $dm->setDownloader('phar',.new.D
63180 6f 77 6e 6c 6f 61 64 65 72 5c 50 68 61 72 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 2c 20 24 63 ownloader\PharDownloader($io,.$c
631a0 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 63 61 63 68 65 2c onfig,.$eventDispatcher,.$cache,
631c0 20 24 72 66 73 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 66 69 6c .$rfs));.$dm->setDownloader('fil
631e0 65 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 65 e',.new.Downloader\FileDownloade
63200 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 r($io,.$config,.$eventDispatcher
63220 2c 20 24 63 61 63 68 65 2c 20 24 72 66 73 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f ,.$cache,.$rfs));.$dm->setDownlo
63240 61 64 65 72 28 27 70 61 74 68 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 50 61 74 68 ader('path',.new.Downloader\Path
63260 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 Downloader($io,.$config,.$eventD
63280 69 73 70 61 74 63 68 65 72 2c 20 24 63 61 63 68 65 2c 20 24 72 66 73 29 29 3b 0a 0a 72 65 74 75 ispatcher,.$cache,.$rfs));..retu
632a0 72 6e 20 24 64 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 rn.$dm;.}.......public.function.
632c0 63 72 65 61 74 65 41 72 63 68 69 76 65 4d 61 6e 61 67 65 72 28 43 6f 6e 66 69 67 20 24 63 6f 6e createArchiveManager(Config.$con
632e0 66 69 67 2c 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 fig,.Downloader\DownloadManager.
63300 24 64 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 6d 29 20 $dm.=.null).{.if.(null.===.$dm).
63320 7b 0a 24 69 6f 20 3d 20 6e 65 77 20 49 4f 5c 4e 75 6c 6c 49 4f 28 29 3b 0a 24 69 6f 2d 3e 6c 6f {.$io.=.new.IO\NullIO();.$io->lo
63340 61 64 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 24 63 6f 6e 66 69 67 29 3b 0a 24 64 6d 20 3d 20 adConfiguration($config);.$dm.=.
63360 24 74 68 69 73 2d 3e 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 24 69 6f $this->createDownloadManager($io
63380 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 24 61 6d 20 3d 20 6e 65 77 20 41 72 63 68 69 76 65 ,.$config);.}..$am.=.new.Archive
633a0 72 5c 41 72 63 68 69 76 65 4d 61 6e 61 67 65 72 28 24 64 6d 29 3b 0a 24 61 6d 2d 3e 61 64 64 41 r\ArchiveManager($dm);.$am->addA
633c0 72 63 68 69 76 65 72 28 6e 65 77 20 41 72 63 68 69 76 65 72 5c 5a 69 70 41 72 63 68 69 76 65 72 rchiver(new.Archiver\ZipArchiver
633e0 29 3b 0a 24 61 6d 2d 3e 61 64 64 41 72 63 68 69 76 65 72 28 6e 65 77 20 41 72 63 68 69 76 65 72 );.$am->addArchiver(new.Archiver
63400 5c 50 68 61 72 41 72 63 68 69 76 65 72 29 3b 0a 0a 72 65 74 75 72 6e 20 24 61 6d 3b 0a 7d 0a 0a \PharArchiver);..return.$am;.}..
63420 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 .......protected.function.create
63440 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 PluginManager(IOInterface.$io,.C
63460 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 43 6f 6d 70 6f 73 65 72 20 24 67 6c 6f omposer.$composer,.Composer.$glo
63480 62 61 6c 43 6f 6d 70 6f 73 65 72 20 3d 20 6e 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 balComposer.=.null,.$disablePlug
634a0 69 6e 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 6c 75 67 69 6e ins.=.false).{.return.new.Plugin
634c0 5c 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 \PluginManager($io,.$composer,.$
634e0 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 globalComposer,.$disablePlugins)
63500 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 ;.}.....protected.function.creat
63520 65 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 eInstallationManager().{.return.
63540 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 new.Installer\InstallationManage
63560 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 r();.}.......protected.function.
63580 63 72 65 61 74 65 44 65 66 61 75 6c 74 49 6e 73 74 61 6c 6c 65 72 73 28 49 6e 73 74 61 6c 6c 65 createDefaultInstallers(Installe
635a0 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6d 2c 20 43 6f 6d 70 6f r\InstallationManager.$im,.Compo
635c0 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a ser.$composer,.IOInterface.$io).
635e0 7b 0a 24 69 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 {.$im->addInstaller(new.Installe
63600 72 5c 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 r\LibraryInstaller($io,.$compose
63620 72 2c 20 6e 75 6c 6c 29 29 3b 0a 24 69 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 r,.null));.$im->addInstaller(new
63640 20 49 6e 73 74 61 6c 6c 65 72 5c 50 65 61 72 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 2c 20 24 63 .Installer\PearInstaller($io,.$c
63660 6f 6d 70 6f 73 65 72 2c 20 27 70 65 61 72 2d 6c 69 62 72 61 72 79 27 29 29 3b 0a 24 69 6d 2d 3e omposer,.'pear-library'));.$im->
63680 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 50 6c 75 67 69 addInstaller(new.Installer\Plugi
636a0 6e 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 24 69 6d nInstaller($io,.$composer));.$im
636c0 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 4d 65 74 ->addInstaller(new.Installer\Met
636e0 61 70 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a apackageInstaller($io));.}......
63700 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 75 72 67 65 50 61 63 6b 61 67 65 73 protected.function.purgePackages
63720 28 57 72 69 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 (WritableRepositoryInterface.$re
63740 70 6f 2c 20 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 po,.Installer\InstallationManage
63760 72 20 24 69 6d 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 2d 3e 67 65 74 50 61 63 6b r.$im).{.foreach.($repo->getPack
63780 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 24 69 6d 2d 3e ages().as.$package).{.if.(!$im->
637a0 69 73 50 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 64 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 isPackageInstalled($repo,.$packa
637c0 67 65 29 29 20 7b 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 ge)).{.$repo->removePackage($pac
637e0 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 kage);.}.}.}.........public.stat
63800 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 ic.function.create(IOInterface.$
63820 69 6f 2c 20 24 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 io,.$config.=.null,.$disablePlug
63840 69 6e 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 73 74 ins.=.false).{.$factory.=.new.st
63860 61 74 69 63 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 66 61 63 74 6f 72 79 2d 3e 63 72 65 61 74 65 atic();..return.$factory->create
63880 43 6f 6d 70 6f 73 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 64 69 73 61 62 6c 65 50 Composer($io,.$config,.$disableP
638a0 6c 75 67 69 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 lugins);.}........public.static.
638c0 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 function.createRemoteFilesystem(
638e0 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 20 IOInterface.$io,.Config.$config.
63900 3d 20 6e 75 6c 6c 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 73 74 =.null,.$options.=.array()).{.st
63920 61 74 69 63 20 24 77 61 72 6e 65 64 20 3d 20 66 61 6c 73 65 3b 0a 24 64 69 73 61 62 6c 65 54 6c atic.$warned.=.false;.$disableTl
63940 73 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 24 63 6f 6e 66 69 67 20 26 26 20 24 63 6f 6e 66 69 s.=.false;.if.($config.&&.$confi
63960 67 2d 3e 67 65 74 28 27 64 69 73 61 62 6c 65 2d 74 6c 73 27 29 20 3d 3d 3d 20 74 72 75 65 29 20 g->get('disable-tls').===.true).
63980 7b 0a 69 66 20 28 21 24 77 61 72 6e 65 64 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 77 {.if.(!$warned).{.$io->write('<w
639a0 61 72 6e 69 6e 67 3e 59 6f 75 20 61 72 65 20 72 75 6e 6e 69 6e 67 20 43 6f 6d 70 6f 73 65 72 20 arning>You.are.running.Composer.
639c0 77 69 74 68 20 53 53 4c 2f 54 4c 53 20 70 72 6f 74 65 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 64 with.SSL/TLS.protection.disabled
639e0 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 24 77 61 72 6e 65 64 20 3d 20 74 72 75 65 3b .</warning>');.}.$warned.=.true;
63a00 0a 24 64 69 73 61 62 6c 65 54 6c 73 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 .$disableTls.=.true;.}.elseif.(!
63a20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 74 extension_loaded('openssl')).{.t
63a40 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 hrow.new.\RuntimeException('The.
63a60 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 72 65 71 75 69 72 65 64 20 66 6f openssl.extension.is.required.fo
63a80 72 20 53 53 4c 2f 54 4c 53 20 70 72 6f 74 65 63 74 69 6f 6e 20 62 75 74 20 69 73 20 6e 6f 74 20 r.SSL/TLS.protection.but.is.not.
63aa0 61 76 61 69 6c 61 62 6c 65 2e 20 27 0a 2e 20 27 49 66 20 79 6f 75 20 63 61 6e 20 6e 6f 74 20 65 available..'...'If.you.can.not.e
63ac0 6e 61 62 6c 65 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 2c 20 79 6f 75 nable.the.openssl.extension,.you
63ae0 20 63 61 6e 20 64 69 73 61 62 6c 65 20 74 68 69 73 20 65 72 72 6f 72 2c 20 61 74 20 79 6f 75 72 .can.disable.this.error,.at.your
63b00 20 6f 77 6e 20 72 69 73 6b 2c 20 62 79 20 73 65 74 74 69 6e 67 20 74 68 65 20 5c 27 64 69 73 61 .own.risk,.by.setting.the.\'disa
63b20 62 6c 65 2d 74 6c 73 5c 27 20 6f 70 74 69 6f 6e 20 74 6f 20 74 72 75 65 2e 27 29 3b 0a 7d 0a 24 ble-tls\'.option.to.true.');.}.$
63b40 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 remoteFilesystemOptions.=.array(
63b60 29 3b 0a 69 66 20 28 24 64 69 73 61 62 6c 65 54 6c 73 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a );.if.($disableTls.===.false).{.
63b80 69 66 20 28 24 63 6f 6e 66 69 67 20 26 26 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 66 if.($config.&&.$config->get('caf
63ba0 69 6c 65 27 29 29 20 7b 0a 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 4f 70 74 69 6f 6e ile')).{.$remoteFilesystemOption
63bc0 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 s['ssl']['cafile'].=.$config->ge
63be0 74 28 27 63 61 66 69 6c 65 27 29 3b 0a 7d 0a 69 66 20 28 24 63 6f 6e 66 69 67 20 26 26 20 24 63 t('cafile');.}.if.($config.&&.$c
63c00 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 70 61 74 68 27 29 29 20 7b 0a 24 72 65 6d 6f 74 65 46 onfig->get('capath')).{.$remoteF
63c20 69 6c 65 73 79 73 74 65 6d 4f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 63 61 70 61 74 68 27 ilesystemOptions['ssl']['capath'
63c40 5d 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 70 61 74 68 27 29 3b 0a 7d 0a 24 72 ].=.$config->get('capath');.}.$r
63c60 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 72 emoteFilesystemOptions.=.array_r
63c80 65 70 6c 61 63 65 5f 72 65 63 75 72 73 69 76 65 28 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 eplace_recursive($remoteFilesyst
63ca0 65 6d 4f 70 74 69 6f 6e 73 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 74 72 79 20 7b 0a 24 72 emOptions,.$options);.}.try.{.$r
63cc0 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 52 65 6d 6f 74 65 46 69 6c 65 emoteFilesystem.=.new.RemoteFile
63ce0 73 79 73 74 65 6d 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 72 65 6d 6f 74 65 46 69 6c 65 system($io,.$config,.$remoteFile
63d00 73 79 73 74 65 6d 4f 70 74 69 6f 6e 73 2c 20 24 64 69 73 61 62 6c 65 54 6c 73 29 3b 0a 7d 20 63 systemOptions,.$disableTls);.}.c
63d20 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 atch.(TransportException.$e).{.i
63d40 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 f.(false.!==.strpos($e->getMessa
63d60 67 65 28 29 2c 20 27 63 61 66 69 6c 65 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c ge(),.'cafile')).{.$io->write('<
63d80 65 72 72 6f 72 3e 55 6e 61 62 6c 65 20 74 6f 20 6c 6f 63 61 74 65 20 61 20 76 61 6c 69 64 20 43 error>Unable.to.locate.a.valid.C
63da0 41 20 63 65 72 74 69 66 69 63 61 74 65 20 66 69 6c 65 2e 20 59 6f 75 20 6d 75 73 74 20 73 65 74 A.certificate.file..You.must.set
63dc0 20 61 20 76 61 6c 69 64 20 5c 27 63 61 66 69 6c 65 5c 27 20 6f 70 74 69 6f 6e 2e 3c 2f 65 72 72 .a.valid.\'cafile\'.option.</err
63de0 6f 72 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 65 72 72 6f 72 3e 41 20 76 61 6c 69 or>');.$io->write('<error>A.vali
63e00 64 20 43 41 20 63 65 72 74 69 66 69 63 61 74 65 20 66 69 6c 65 20 69 73 20 72 65 71 75 69 72 65 d.CA.certificate.file.is.require
63e20 64 20 66 6f 72 20 53 53 4c 2f 54 4c 53 20 70 72 6f 74 65 63 74 69 6f 6e 2e 3c 2f 65 72 72 6f 72 d.for.SSL/TLS.protection.</error
63e40 3e 27 29 3b 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 36 30 30 29 >');.if.(PHP_VERSION_ID.<.50600)
63e60 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 65 72 72 6f 72 3e 49 74 20 69 73 20 72 65 63 6f .{.$io->write('<error>It.is.reco
63e80 6d 6d 65 6e 64 65 64 20 79 6f 75 20 75 70 67 72 61 64 65 20 74 6f 20 50 48 50 20 35 2e 36 2b 20 mmended.you.upgrade.to.PHP.5.6+.
63ea0 77 68 69 63 68 20 63 61 6e 20 64 65 74 65 63 74 20 79 6f 75 72 20 73 79 73 74 65 6d 20 43 41 20 which.can.detect.your.system.CA.
63ec0 66 69 6c 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d file.automatically.</error>');.}
63ee0 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 65 72 72 6f 72 3e 59 6f 75 20 63 61 6e 20 64 69 73 61 .$io->write('<error>You.can.disa
63f00 62 6c 65 20 74 68 69 73 20 65 72 72 6f 72 2c 20 61 74 20 79 6f 75 72 20 6f 77 6e 20 72 69 73 6b ble.this.error,.at.your.own.risk
63f20 2c 20 62 79 20 73 65 74 74 69 6e 67 20 74 68 65 20 5c 27 64 69 73 61 62 6c 65 2d 74 6c 73 5c 27 ,.by.setting.the.\'disable-tls\'
63f40 20 6f 70 74 69 6f 6e 20 74 6f 20 74 72 75 65 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 74 68 .option.to.true.</error>');.}.th
63f60 72 6f 77 20 24 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 row.$e;.}..return.$remoteFilesys
63f80 74 65 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 tem;.}.....private.static.functi
63fa0 6f 6e 20 75 73 65 58 64 67 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6b 65 79 on.useXdg().{.foreach.(array_key
63fc0 73 28 24 5f 53 45 52 56 45 52 29 20 61 73 20 24 6b 65 79 29 20 7b 0a 69 66 20 28 73 75 62 73 74 s($_SERVER).as.$key).{.if.(subst
63fe0 72 28 24 6b 65 79 2c 20 30 2c 20 34 29 20 3d 3d 3d 20 27 58 44 47 5f 27 29 20 7b 0a 72 65 74 75 r($key,.0,.4).===.'XDG_').{.retu
64000 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a rn.true;.}.}..return.false;.}...
64020 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 73 ...private.static.function.getUs
64040 65 72 44 69 72 28 29 0a 7b 0a 24 68 6f 6d 65 20 3d 20 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 29 erDir().{.$home.=.getenv('HOME')
64060 3b 0a 69 66 20 28 21 24 68 6f 6d 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 ;.if.(!$home).{.throw.new.\Runti
64080 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 48 4f 4d 45 20 6f 72 20 43 4f 4d 50 4f 53 45 meException('The.HOME.or.COMPOSE
640a0 52 5f 48 4f 4d 45 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20 6d 75 73 74 R_HOME.environment.variable.must
640c0 20 62 65 20 73 65 74 20 66 6f 72 20 63 6f 6d 70 6f 73 65 72 20 74 6f 20 72 75 6e 20 63 6f 72 72 .be.set.for.composer.to.run.corr
640e0 65 63 74 6c 79 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 72 74 72 69 6d 28 73 74 72 74 72 28 24 ectly');.}..return.rtrim(strtr($
64100 68 6f 6d 65 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 2c 20 27 2f 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 home,.'\\',.'/'),.'/');.}.}.<?ph
64120 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c p............namespace.Composer\
64140 49 4f 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f IO;..use.Composer\Config;.use.Co
64160 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 0a 61 62 mposer\Util\ProcessExecutor;..ab
64180 73 74 72 61 63 74 20 63 6c 61 73 73 20 42 61 73 65 49 4f 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 stract.class.BaseIO.implements.I
641a0 4f 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 68 65 6e 74 69 OInterface.{.protected.$authenti
641c0 63 61 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 cations.=.array();.....public.fu
641e0 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 nction.getAuthentications().{.re
64200 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 73 3b 0a 7d 0a 0a turn.$this->authentications;.}..
64220 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 75 74 68 65 6e 74 69 63 61 ...public.function.hasAuthentica
64240 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 69 tion($repositoryName).{.return.i
64260 73 73 65 74 28 24 74 68 69 73 2d 3e 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 73 5b 24 72 65 70 sset($this->authentications[$rep
64280 6f 73 69 74 6f 72 79 4e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ositoryName]);.}.....public.func
642a0 74 69 6f 6e 20 67 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f tion.getAuthentication($reposito
642c0 72 79 4e 61 6d 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 75 74 68 65 ryName).{.if.(isset($this->authe
642e0 6e 74 69 63 61 74 69 6f 6e 73 5b 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 5d 29 29 20 7b 0a ntications[$repositoryName])).{.
64300 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 73 5b 24 72 return.$this->authentications[$r
64320 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 epositoryName];.}..return.array(
64340 27 75 73 65 72 6e 61 6d 65 27 20 3d 3e 20 6e 75 6c 6c 2c 20 27 70 61 73 73 77 6f 72 64 27 20 3d 'username'.=>.null,.'password'.=
64360 3e 20 6e 75 6c 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 >.null);.}.....public.function.s
64380 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 etAuthentication($repositoryName
643a0 2c 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 64 20 3d 20 6e 75 6c 6c 29 0a 7b ,.$username,.$password.=.null).{
643c0 0a 24 74 68 69 73 2d 3e 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 73 5b 24 72 65 70 6f 73 69 74 .$this->authentications[$reposit
643e0 6f 72 79 4e 61 6d 65 5d 20 3d 20 61 72 72 61 79 28 27 75 73 65 72 6e 61 6d 65 27 20 3d 3e 20 24 oryName].=.array('username'.=>.$
64400 75 73 65 72 6e 61 6d 65 2c 20 27 70 61 73 73 77 6f 72 64 27 20 3d 3e 20 24 70 61 73 73 77 6f 72 username,.'password'.=>.$passwor
64420 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e d);.}.........protected.function
64440 20 63 68 65 63 6b 41 6e 64 53 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 72 65 70 6f .checkAndSetAuthentication($repo
64460 73 69 74 6f 72 79 4e 61 6d 65 2c 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 64 sitoryName,.$username,.$password
64480 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 65 6e 74 .=.null).{.if.($this->hasAuthent
644a0 69 63 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 29 20 7b 0a 24 61 75 74 ication($repositoryName)).{.$aut
644c0 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 72 65 h.=.$this->getAuthentication($re
644e0 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 3b 0a 69 66 20 28 24 61 75 74 68 5b 27 75 73 65 72 6e 61 positoryName);.if.($auth['userna
64500 6d 65 27 5d 20 3d 3d 3d 20 24 75 73 65 72 6e 61 6d 65 20 26 26 20 24 61 75 74 68 5b 27 70 61 73 me'].===.$username.&&.$auth['pas
64520 73 77 6f 72 64 27 5d 20 3d 3d 3d 20 24 70 61 73 73 77 6f 72 64 29 20 7b 0a 72 65 74 75 72 6e 3b sword'].===.$password).{.return;
64540 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 0a 73 70 72 69 6e 74 66 28 0a .}..$this->writeError(.sprintf(.
64560 22 3c 77 61 72 6e 69 6e 67 3e 57 61 72 6e 69 6e 67 3a 20 59 6f 75 20 73 68 6f 75 6c 64 20 61 76 "<warning>Warning:.You.should.av
64580 6f 69 64 20 6f 76 65 72 77 72 69 74 69 6e 67 20 61 6c 72 65 61 64 79 20 64 65 66 69 6e 65 64 20 oid.overwriting.already.defined.
645a0 61 75 74 68 20 73 65 74 74 69 6e 67 73 20 66 6f 72 20 25 73 2e 3c 2f 77 61 72 6e 69 6e 67 3e 22 auth.settings.for.%s.</warning>"
645c0 2c 0a 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 0a 29 0a 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e ,.$repositoryName.).);.}.$this->
645e0 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d setAuthentication($repositoryNam
64600 65 2c 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 64 29 3b 0a 7d 0a 0a 0a 0a 0a e,.$username,.$password);.}.....
64620 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 43 6f 6e 66 69 67 75 72 61 74 69 6f public.function.loadConfiguratio
64640 6e 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 67 69 74 68 75 62 4f 61 75 74 68 n(Config.$config).{.$githubOauth
64660 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d 6f 61 75 74 68 27 29 20 .=.$config->get('github-oauth').
64680 3f 3a 20 61 72 72 61 79 28 29 3b 0a 24 67 69 74 6c 61 62 4f 61 75 74 68 20 3d 20 24 63 6f 6e 66 ?:.array();.$gitlabOauth.=.$conf
646a0 69 67 2d 3e 67 65 74 28 27 67 69 74 6c 61 62 2d 6f 61 75 74 68 27 29 20 3f 3a 20 61 72 72 61 79 ig->get('gitlab-oauth').?:.array
646c0 28 29 3b 0a 24 68 74 74 70 42 61 73 69 63 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 ();.$httpBasic.=.$config->get('h
646e0 74 74 70 2d 62 61 73 69 63 27 29 20 3f 3a 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 ttp-basic').?:.array();....forea
64700 63 68 20 28 24 67 69 74 68 75 62 4f 61 75 74 68 20 61 73 20 24 64 6f 6d 61 69 6e 20 3d 3e 20 24 ch.($githubOauth.as.$domain.=>.$
64720 74 6f 6b 65 6e 29 20 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 7a token).{.if.(!preg_match('{^[a-z
64740 30 2d 39 5d 2b 24 7d 27 2c 20 24 74 6f 6b 65 6e 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 0-9]+$}',.$token)).{.throw.new.\
64760 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 72 20 67 UnexpectedValueException('Your.g
64780 69 74 68 75 62 20 6f 61 75 74 68 20 74 6f 6b 65 6e 20 66 6f 72 20 27 2e 24 64 6f 6d 61 69 6e 2e ithub.oauth.token.for.'.$domain.
647a0 27 20 63 6f 6e 74 61 69 6e 73 20 69 6e 76 61 6c 69 64 20 63 68 61 72 61 63 74 65 72 73 3a 20 22 '.contains.invalid.characters:."
647c0 27 2e 24 74 6f 6b 65 6e 2e 27 22 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 41 6e 64 '.$token.'"');.}.$this->checkAnd
647e0 53 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 64 6f 6d 61 69 6e 2c 20 24 74 6f 6b 65 SetAuthentication($domain,.$toke
64800 6e 2c 20 27 78 2d 6f 61 75 74 68 2d 62 61 73 69 63 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 n,.'x-oauth-basic');.}..foreach.
64820 28 24 67 69 74 6c 61 62 4f 61 75 74 68 20 61 73 20 24 64 6f 6d 61 69 6e 20 3d 3e 20 24 74 6f 6b ($gitlabOauth.as.$domain.=>.$tok
64840 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 41 6e 64 53 65 74 41 75 74 68 65 6e 74 69 en).{.$this->checkAndSetAuthenti
64860 63 61 74 69 6f 6e 28 24 64 6f 6d 61 69 6e 2c 20 24 74 6f 6b 65 6e 2c 20 27 6f 61 75 74 68 32 27 cation($domain,.$token,.'oauth2'
64880 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 68 74 74 70 42 61 73 69 63 20 61 73 20 24 );.}....foreach.($httpBasic.as.$
648a0 64 6f 6d 61 69 6e 20 3d 3e 20 24 63 72 65 64 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 41 domain.=>.$cred).{.$this->checkA
648c0 6e 64 53 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 64 6f 6d 61 69 6e 2c 20 24 63 72 ndSetAuthentication($domain,.$cr
648e0 65 64 5b 27 75 73 65 72 6e 61 6d 65 27 5d 2c 20 24 63 72 65 64 5b 27 70 61 73 73 77 6f 72 64 27 ed['username'],.$cred['password'
64900 5d 29 3b 0a 7d 0a 0a 0a 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 73 65 74 54 69 6d ]);.}....ProcessExecutor::setTim
64920 65 6f 75 74 28 28 69 6e 74 29 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 70 72 6f 63 65 73 73 eout((int).$config->get('process
64940 2d 74 69 6d 65 6f 75 74 27 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a -timeout'));.}.}.<?php..........
64960 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 3b 0a 0a 75 73 65 20 53 79 ..namespace.Composer\IO;..use.Sy
64980 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 53 mfony\Component\Console\Output\S
649a0 74 72 65 61 6d 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 treamOutput;.use.Symfony\Compone
649c0 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 nt\Console\Formatter\OutputForma
649e0 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f tterInterface;.use.Symfony\Compo
64a00 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 53 74 72 69 6e 67 49 6e 70 75 74 3b 0a nent\Console\Input\StringInput;.
64a20 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 use.Symfony\Component\Console\He
64a40 6c 70 65 72 5c 48 65 6c 70 65 72 53 65 74 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 42 75 66 66 65 72 lper\HelperSet;.....class.Buffer
64a60 49 4f 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 6f 6c 65 49 4f 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c IO.extends.ConsoleIO.{......publ
64a80 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 0a 24 69 6e 70 75 74 20 ic.function.__construct(.$input.
64aa0 3d 20 27 27 2c 0a 24 76 65 72 62 6f 73 69 74 79 20 3d 20 53 74 72 65 61 6d 4f 75 74 70 75 74 3a =.'',.$verbosity.=.StreamOutput:
64ac0 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 0a 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 :VERBOSITY_NORMAL,.OutputFormatt
64ae0 65 72 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 6e 75 6c 6c 0a 29 20 erInterface.$formatter.=.null.).
64b00 7b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 20 53 74 72 69 6e 67 49 6e 70 75 74 28 24 69 6e 70 75 {.$input.=.new.StringInput($inpu
64b20 74 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 66 61 6c 73 65 t);.$input->setInteractive(false
64b40 29 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 53 74 72 65 61 6d 4f 75 74 70 75 74 28 66 );..$output.=.new.StreamOutput(f
64b60 6f 70 65 6e 28 27 70 68 70 3a 2f 2f 6d 65 6d 6f 72 79 27 2c 20 27 72 77 27 29 2c 20 24 76 65 72 open('php://memory',.'rw'),.$ver
64b80 62 6f 73 69 74 79 2c 20 24 66 6f 72 6d 61 74 74 65 72 20 3f 20 24 66 6f 72 6d 61 74 74 65 72 2d bosity,.$formatter.?.$formatter-
64ba0 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 20 3a 20 66 61 6c 73 65 2c 20 24 66 6f 72 6d 61 74 74 >isDecorated().:.false,.$formatt
64bc0 65 72 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6e 70 75 74 er);..parent::__construct($input
64be0 2c 20 24 6f 75 74 70 75 74 2c 20 6e 65 77 20 48 65 6c 70 65 72 53 65 74 28 61 72 72 61 79 28 29 ,.$output,.new.HelperSet(array()
64c00 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 74 70 75 74 ));.}..public.function.getOutput
64c20 28 29 0a 7b 0a 66 73 65 65 6b 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 ().{.fseek($this->output->getStr
64c40 65 61 6d 28 29 2c 20 30 29 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 73 74 72 65 61 6d 5f 67 65 74 eam(),.0);..$output.=.stream_get
64c60 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 _contents($this->output->getStre
64c80 61 6d 28 29 29 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 am());..$output.=.preg_replace_c
64ca0 61 6c 6c 62 61 63 6b 28 22 7b 28 3f 3c 3d 5e 7c 5c 6e 7c 5c 78 30 38 29 28 2e 2b 3f 29 28 5c 78 allback("{(?<=^|\n|\x08)(.+?)(\x
64cc0 30 38 2b 29 7d 22 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 68 65 73 29 20 7b 0a 24 70 08+)}",.function.($matches).{.$p
64ce0 72 65 20 3d 20 73 74 72 69 70 5f 74 61 67 73 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 0a 69 re.=.strip_tags($matches[1]);..i
64d00 66 20 28 73 74 72 6c 65 6e 28 24 70 72 65 29 20 3d 3d 3d 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 f.(strlen($pre).===.strlen($matc
64d20 68 65 73 5b 32 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 hes[2])).{.return.'';.}....retur
64d40 6e 20 72 74 72 69 6d 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 2e 22 5c 6e 22 3b 0a 7d 2c 20 24 6f n.rtrim($matches[1])."\n";.},.$o
64d60 75 74 70 75 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 7d 0a 3c 3f 70 utput);..return.$output;.}.}.<?p
64d80 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
64da0 5c 49 4f 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 \IO;..use.Symfony\Component\Cons
64dc0 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 ole\Input\InputInterface;.use.Sy
64de0 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 43 mfony\Component\Console\Output\C
64e00 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f onsoleOutputInterface;.use.Symfo
64e20 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 ny\Component\Console\Output\Outp
64e40 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 utInterface;.use.Symfony\Compone
64e60 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 48 65 6c 70 65 72 53 65 74 3b 0a 75 73 65 nt\Console\Helper\HelperSet;.use
64e80 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 .Symfony\Component\Console\Quest
64ea0 69 6f 6e 5c 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 51 75 65 73 74 69 6f 6e 3b 0a 75 73 65 20 53 79 ion\ConfirmationQuestion;.use.Sy
64ec0 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e mfony\Component\Console\Question
64ee0 5c 51 75 65 73 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 49 \Question;........class.ConsoleI
64f00 4f 20 65 78 74 65 6e 64 73 20 42 61 73 65 49 4f 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e O.extends.BaseIO.{.protected.$in
64f20 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 75 74 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 put;.protected.$output;.protecte
64f40 64 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 61 73 74 4d 65 73 d.$helperSet;.protected.$lastMes
64f60 73 61 67 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 61 73 74 4d 65 73 73 61 67 65 45 72 72 3b sage;.protected.$lastMessageErr;
64f80 0a 70 72 69 76 61 74 65 20 24 73 74 61 72 74 54 69 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 76 65 .private.$startTime;.private.$ve
64fa0 72 62 6f 73 69 74 79 4d 61 70 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 rbosityMap;.........public.funct
64fc0 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 ion.__construct(InputInterface.$
64fe0 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 input,.OutputInterface.$output,.
65000 48 65 6c 70 65 72 53 65 74 20 24 68 65 6c 70 65 72 53 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 HelperSet.$helperSet).{.$this->i
65020 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 nput.=.$input;.$this->output.=.$
65040 6f 75 74 70 75 74 3b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 24 68 65 6c 70 output;.$this->helperSet.=.$help
65060 65 72 53 65 74 3b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 4d 61 70 20 3d 20 61 72 72 erSet;.$this->verbosityMap.=.arr
65080 61 79 28 0a 73 65 6c 66 3a 3a 51 55 49 45 54 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 ay(.self::QUIET.=>.OutputInterfa
650a0 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 2c 0a 73 65 6c 66 3a 3a 4e 4f 52 4d 41 ce::VERBOSITY_QUIET,.self::NORMA
650c0 4c 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f L.=>.OutputInterface::VERBOSITY_
650e0 4e 4f 52 4d 41 4c 2c 0a 73 65 6c 66 3a 3a 56 45 52 42 4f 53 45 20 3d 3e 20 4f 75 74 70 75 74 49 NORMAL,.self::VERBOSE.=>.OutputI
65100 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 2c 0a 73 65 6c nterface::VERBOSITY_VERBOSE,.sel
65120 66 3a 3a 56 45 52 59 5f 56 45 52 42 4f 53 45 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 f::VERY_VERBOSE.=>.OutputInterfa
65140 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 2c 0a 73 65 6c 66 ce::VERBOSITY_VERY_VERBOSE,.self
65160 3a 3a 44 45 42 55 47 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 ::DEBUG.=>.OutputInterface::VERB
65180 4f 53 49 54 59 5f 44 45 42 55 47 2c 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 OSITY_DEBUG,.);.}..public.functi
651a0 6f 6e 20 65 6e 61 62 6c 65 44 65 62 75 67 67 69 6e 67 28 24 73 74 61 72 74 54 69 6d 65 29 0a 7b on.enableDebugging($startTime).{
651c0 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 20 3d 20 24 73 74 61 72 74 54 69 6d 65 3b 0a .$this->startTime.=.$startTime;.
651e0 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 74 65 72 61 63 74 }.....public.function.isInteract
65200 69 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d 3e 69 73 49 ive().{.return.$this->input->isI
65220 6e 74 65 72 61 63 74 69 76 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 nteractive();.}.....public.funct
65240 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ion.isDecorated().{.return.$this
65260 2d 3e 6f 75 74 70 75 74 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 ->output->isDecorated();.}.....p
65280 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 ublic.function.isVerbose().{.ret
652a0 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 urn.$this->output->getVerbosity(
652c0 29 20 3e 3d 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f ).>=.OutputInterface::VERBOSITY_
652e0 56 45 52 42 4f 53 45 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 VERBOSE;.}.....public.function.i
65300 73 56 65 72 79 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f sVeryVerbose().{.return.$this->o
65320 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 20 3e 3d 20 4f 75 74 70 75 74 49 utput->getVerbosity().>=.OutputI
65340 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 nterface::VERBOSITY_VERY_VERBOSE
65360 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 62 75 67 28 ;.}.....public.function.isDebug(
65380 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 ).{.return.$this->output->getVer
653a0 62 6f 73 69 74 79 28 29 20 3e 3d 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 bosity().>=.OutputInterface::VER
653c0 42 4f 53 49 54 59 5f 44 45 42 55 47 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 BOSITY_DEBUG;.}.....public.funct
653e0 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 ion.write($messages,.$newline.=.
65400 74 72 75 65 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a 4e 4f 52 4d 41 4c 29 true,.$verbosity.=.self::NORMAL)
65420 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 .{.$this->doWrite($messages,.$ne
65440 77 6c 69 6e 65 2c 20 66 61 6c 73 65 2c 20 24 76 65 72 62 6f 73 69 74 79 29 3b 0a 7d 0a 0a 0a 0a wline,.false,.$verbosity);.}....
65460 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 73 .public.function.writeError($mes
65480 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 2c 20 24 76 65 72 62 6f 73 69 sages,.$newline.=.true,.$verbosi
654a0 74 79 20 3d 20 73 65 6c 66 3a 3a 4e 4f 52 4d 41 4c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f 57 72 ty.=.self::NORMAL).{.$this->doWr
654c0 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 2c 20 74 72 75 65 2c 20 24 ite($messages,.$newline,.true,.$
654e0 76 65 72 62 6f 73 69 74 79 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e verbosity);.}........private.fun
65500 63 74 69 6f 6e 20 64 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e ction.doWrite($messages,.$newlin
65520 65 2c 20 24 73 74 64 65 72 72 2c 20 24 76 65 72 62 6f 73 69 74 79 29 0a 7b 0a 24 73 66 56 65 72 e,.$stderr,.$verbosity).{.$sfVer
65540 62 6f 73 69 74 79 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 4d 61 70 5b 24 76 65 bosity.=.$this->verbosityMap[$ve
65560 72 62 6f 73 69 74 79 5d 3b 0a 69 66 20 28 24 73 66 56 65 72 62 6f 73 69 74 79 20 3e 20 24 74 68 rbosity];.if.($sfVerbosity.>.$th
65580 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 72 65 is->output->getVerbosity()).{.re
655a0 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 69 66 20 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 turn;.}........if.(OutputInterfa
655c0 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 20 3d 3d 3d 20 30 29 20 7b 0a 24 73 66 ce::VERBOSITY_QUIET.===.0).{.$sf
655e0 56 65 72 62 6f 73 69 74 79 20 3d 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 4f 55 54 Verbosity.=.OutputInterface::OUT
65600 50 55 54 5f 4e 4f 52 4d 41 4c 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 PUT_NORMAL;.}..if.(null.!==.$thi
65620 73 2d 3e 73 74 61 72 74 54 69 6d 65 29 20 7b 0a 24 6d 65 6d 6f 72 79 55 73 61 67 65 20 3d 20 6d s->startTime).{.$memoryUsage.=.m
65640 65 6d 6f 72 79 5f 67 65 74 5f 75 73 61 67 65 28 29 20 2f 20 31 30 32 34 20 2f 20 31 30 32 34 3b emory_get_usage()./.1024./.1024;
65660 0a 24 74 69 6d 65 53 70 65 6e 74 20 3d 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 20 2d 20 .$timeSpent.=.microtime(true).-.
65680 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 3b 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 $this->startTime;.$messages.=.ar
656a0 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 6d 65 73 73 61 67 65 29 20 75 73 65 20 ray_map(function.($message).use.
656c0 28 24 6d 65 6d 6f 72 79 55 73 61 67 65 2c 20 24 74 69 6d 65 53 70 65 6e 74 29 20 7b 0a 72 65 74 ($memoryUsage,.$timeSpent).{.ret
656e0 75 72 6e 20 73 70 72 69 6e 74 66 28 27 5b 25 2e 31 66 4d 42 2f 25 2e 32 66 73 5d 20 25 73 27 2c urn.sprintf('[%.1fMB/%.2fs].%s',
65700 20 24 6d 65 6d 6f 72 79 55 73 61 67 65 2c 20 24 74 69 6d 65 53 70 65 6e 74 2c 20 24 6d 65 73 73 .$memoryUsage,.$timeSpent,.$mess
65720 61 67 65 29 3b 0a 7d 2c 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a age);.},.(array).$messages);.}..
65740 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 73 74 64 65 72 72 20 26 26 20 24 74 68 69 73 2d 3e 6f if.(true.===.$stderr.&&.$this->o
65760 75 74 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e utput.instanceof.ConsoleOutputIn
65780 74 65 72 66 61 63 65 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 terface).{.$this->output->getErr
657a0 6f 72 4f 75 74 70 75 74 28 29 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 orOutput()->write($messages,.$ne
657c0 77 6c 69 6e 65 2c 20 24 73 66 56 65 72 62 6f 73 69 74 79 29 3b 0a 24 74 68 69 73 2d 3e 6c 61 73 wline,.$sfVerbosity);.$this->las
657e0 74 4d 65 73 73 61 67 65 45 72 72 20 3d 20 6a 6f 69 6e 28 24 6e 65 77 6c 69 6e 65 20 3f 20 22 5c tMessageErr.=.join($newline.?."\
65800 6e 22 20 3a 20 27 27 2c 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 0a 72 65 n".:.'',.(array).$messages);..re
65820 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 6d turn;.}..$this->output->write($m
65840 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 2c 20 24 73 66 56 65 72 62 6f 73 69 74 79 29 essages,.$newline,.$sfVerbosity)
65860 3b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 20 3d 20 6a 6f 69 6e 28 24 6e 65 77 ;.$this->lastMessage.=.join($new
65880 6c 69 6e 65 20 3f 20 22 5c 6e 22 20 3a 20 27 27 2c 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 line.?."\n".:.'',.(array).$messa
658a0 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 76 65 72 ges);.}.....public.function.over
658c0 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 write($messages,.$newline.=.true
658e0 2c 20 24 73 69 7a 65 20 3d 20 6e 75 6c 6c 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c ,.$size.=.null,.$verbosity.=.sel
65900 66 3a 3a 4e 4f 52 4d 41 4c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f 4f 76 65 72 77 72 69 74 65 28 f::NORMAL).{.$this->doOverwrite(
65920 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 2c 20 24 73 69 7a 65 2c 20 66 61 6c 73 $messages,.$newline,.$size,.fals
65940 65 2c 20 24 76 65 72 62 6f 73 69 74 79 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e e,.$verbosity);.}.....public.fun
65960 63 74 69 6f 6e 20 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 73 73 61 67 65 73 2c 20 ction.overwriteError($messages,.
65980 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 2c 20 24 73 69 7a 65 20 3d 20 6e 75 6c 6c 2c 20 24 $newline.=.true,.$size.=.null,.$
659a0 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a 4e 4f 52 4d 41 4c 29 0a 7b 0a 24 74 68 69 verbosity.=.self::NORMAL).{.$thi
659c0 73 2d 3e 64 6f 4f 76 65 72 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 s->doOverwrite($messages,.$newli
659e0 6e 65 2c 20 24 73 69 7a 65 2c 20 74 72 75 65 2c 20 24 76 65 72 62 6f 73 69 74 79 29 3b 0a 7d 0a ne,.$size,.true,.$verbosity);.}.
65a00 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 64 6f 4f 76 65 72 77 ........private.function.doOverw
65a20 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 2c 20 24 73 69 7a 65 2c rite($messages,.$newline,.$size,
65a40 20 24 73 74 64 65 72 72 2c 20 24 76 65 72 62 6f 73 69 74 79 29 0a 7b 0a 0a 20 24 6d 65 73 73 61 .$stderr,.$verbosity).{...$messa
65a60 67 65 73 20 3d 20 6a 6f 69 6e 28 24 6e 65 77 6c 69 6e 65 20 3f 20 22 5c 6e 22 20 3a 20 27 27 2c ges.=.join($newline.?."\n".:.'',
65a80 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 0a 0a 20 69 66 20 28 21 69 73 73 .(array).$messages);....if.(!iss
65aa0 65 74 28 24 73 69 7a 65 29 29 20 7b 0a 0a 20 24 73 69 7a 65 20 3d 20 73 74 72 6c 65 6e 28 73 74 et($size)).{...$size.=.strlen(st
65ac0 72 69 70 5f 74 61 67 73 28 24 73 74 64 65 72 72 20 3f 20 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 rip_tags($stderr.?.$this->lastMe
65ae0 73 73 61 67 65 45 72 72 20 3a 20 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 29 29 3b ssageErr.:.$this->lastMessage));
65b00 0a 7d 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 22 .}...$this->doWrite(str_repeat("
65b20 5c 78 30 38 22 2c 20 24 73 69 7a 65 29 2c 20 66 61 6c 73 65 2c 20 24 73 74 64 65 72 72 2c 20 24 \x08",.$size),.false,.$stderr,.$
65b40 76 65 72 62 6f 73 69 74 79 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 24 6d verbosity);....$this->doWrite($m
65b60 65 73 73 61 67 65 73 2c 20 66 61 6c 73 65 2c 20 24 73 74 64 65 72 72 2c 20 24 76 65 72 62 6f 73 essages,.false,.$stderr,.$verbos
65b80 69 74 79 29 3b 0a 0a 24 66 69 6c 6c 20 3d 20 24 73 69 7a 65 20 2d 20 73 74 72 6c 65 6e 28 73 74 ity);..$fill.=.$size.-.strlen(st
65ba0 72 69 70 5f 74 61 67 73 28 24 6d 65 73 73 61 67 65 73 29 29 3b 0a 69 66 20 28 24 66 69 6c 6c 20 rip_tags($messages));.if.($fill.
65bc0 3e 20 30 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 73 74 72 5f 72 65 70 65 >.0).{...$this->doWrite(str_repe
65be0 61 74 28 27 20 27 2c 20 24 66 69 6c 6c 29 2c 20 66 61 6c 73 65 2c 20 24 73 74 64 65 72 72 2c 20 at('.',.$fill),.false,.$stderr,.
65c00 24 76 65 72 62 6f 73 69 74 79 29 3b 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 73 74 $verbosity);...$this->doWrite(st
65c20 72 5f 72 65 70 65 61 74 28 22 5c 78 30 38 22 2c 20 24 66 69 6c 6c 29 2c 20 66 61 6c 73 65 2c 20 r_repeat("\x08",.$fill),.false,.
65c40 24 73 74 64 65 72 72 2c 20 24 76 65 72 62 6f 73 69 74 79 29 3b 0a 7d 0a 0a 69 66 20 28 24 6e 65 $stderr,.$verbosity);.}..if.($ne
65c60 77 6c 69 6e 65 29 20 7b 0a 24 74 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 27 27 2c 20 74 72 75 65 wline).{.$this->doWrite('',.true
65c80 2c 20 24 73 74 64 65 72 72 2c 20 24 76 65 72 62 6f 73 69 74 79 29 3b 0a 7d 0a 0a 69 66 20 28 24 ,.$stderr,.$verbosity);.}..if.($
65ca0 73 74 64 65 72 72 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 45 72 72 20 stderr).{.$this->lastMessageErr.
65cc0 3d 20 24 6d 65 73 73 61 67 65 73 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 6c 61 73 =.$messages;.}.else.{.$this->las
65ce0 74 4d 65 73 73 61 67 65 20 3d 20 24 6d 65 73 73 61 67 65 73 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 tMessage.=.$messages;.}.}.....pu
65d00 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 blic.function.ask($question,.$de
65d20 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 24 68 65 6c 70 65 72 20 3d 20 24 74 68 69 73 fault.=.null).{..$helper.=.$this
65d40 2d 3e 68 65 6c 70 65 72 53 65 74 2d 3e 67 65 74 28 27 71 75 65 73 74 69 6f 6e 27 29 3b 0a 24 71 ->helperSet->get('question');.$q
65d60 75 65 73 74 69 6f 6e 20 3d 20 6e 65 77 20 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e uestion.=.new.Question($question
65d80 2c 20 24 64 65 66 61 75 6c 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 68 65 6c 70 65 72 2d 3e 61 73 ,.$default);..return.$helper->as
65da0 6b 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 4f k($this->input,.$this->getErrorO
65dc0 75 74 70 75 74 28 29 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 utput(),.$question);.}.....publi
65de0 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 24 71 75 65 73 c.function.askConfirmation($ques
65e00 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 0a 7b 0a 0a 24 68 65 6c 70 65 tion,.$default.=.true).{..$helpe
65e20 72 20 3d 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 2d 3e 67 65 74 28 27 71 75 65 73 74 r.=.$this->helperSet->get('quest
65e40 69 6f 6e 27 29 3b 0a 24 71 75 65 73 74 69 6f 6e 20 3d 20 6e 65 77 20 43 6f 6e 66 69 72 6d 61 74 ion');.$question.=.new.Confirmat
65e60 69 6f 6e 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 ionQuestion($question,.$default)
65e80 3b 0a 0a 72 65 74 75 72 6e 20 24 68 65 6c 70 65 72 2d 3e 61 73 6b 28 24 74 68 69 73 2d 3e 69 6e ;..return.$helper->ask($this->in
65ea0 70 75 74 2c 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 20 24 71 put,.$this->getErrorOutput(),.$q
65ec0 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 uestion);.}.....public.function.
65ee0 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 askAndValidate($question,.$valid
65f00 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 66 61 75 6c 74 ator,.$attempts.=.null,.$default
65f20 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 24 68 65 6c 70 65 72 20 3d 20 24 74 68 69 73 2d 3e 68 65 6c .=.null).{..$helper.=.$this->hel
65f40 70 65 72 53 65 74 2d 3e 67 65 74 28 27 71 75 65 73 74 69 6f 6e 27 29 3b 0a 24 71 75 65 73 74 69 perSet->get('question');.$questi
65f60 6f 6e 20 3d 20 6e 65 77 20 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 on.=.new.Question($question,.$de
65f80 66 61 75 6c 74 29 3b 0a 24 71 75 65 73 74 69 6f 6e 2d 3e 73 65 74 56 61 6c 69 64 61 74 6f 72 28 fault);.$question->setValidator(
65fa0 24 76 61 6c 69 64 61 74 6f 72 29 3b 0a 24 71 75 65 73 74 69 6f 6e 2d 3e 73 65 74 4d 61 78 41 74 $validator);.$question->setMaxAt
65fc0 74 65 6d 70 74 73 28 24 61 74 74 65 6d 70 74 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 68 65 6c 70 tempts($attempts);..return.$help
65fe0 65 72 2d 3e 61 73 6b 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 74 68 69 73 2d 3e 67 65 74 er->ask($this->input,.$this->get
66000 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a ErrorOutput(),.$question);.}....
66020 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 .public.function.askAndHideAnswe
66040 72 28 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 45 72 72 6f 72 r($question).{.$this->writeError
66060 28 24 71 75 65 73 74 69 6f 6e 2c 20 66 61 6c 73 65 29 3b 0a 0a 72 65 74 75 72 6e 20 5c 53 65 6c ($question,.false);..return.\Sel
66080 64 5c 43 6c 69 50 72 6f 6d 70 74 5c 43 6c 69 50 72 6f 6d 70 74 3a 3a 68 69 64 64 65 6e 50 72 6f d\CliPrompt\CliPrompt::hiddenPro
660a0 6d 70 74 28 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e mpt(true);.}.....public.function
660c0 20 73 65 6c 65 63 74 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 .select($question,.$choices,.$de
660e0 66 61 75 6c 74 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 65 72 72 6f 72 fault,.$attempts.=.false,.$error
66100 4d 65 73 73 61 67 65 20 3d 20 27 56 61 6c 75 65 20 22 25 73 22 20 69 73 20 69 6e 76 61 6c 69 64 Message.=.'Value."%s".is.invalid
66120 27 2c 20 24 6d 75 6c 74 69 73 65 6c 65 63 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 24 ',.$multiselect.=.false).{.if.($
66140 74 68 69 73 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 this->isInteractive()).{.return.
66160 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 2d 3e 67 65 74 28 27 64 69 61 6c 6f 67 27 29 2d $this->helperSet->get('dialog')-
66180 3e 73 65 6c 65 63 74 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c >select($this->getErrorOutput(),
661a0 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 66 61 75 6c 74 2c 20 .$question,.$choices,.$default,.
661c0 24 61 74 74 65 6d 70 74 73 2c 20 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c 20 24 6d 75 6c 74 69 $attempts,.$errorMessage,.$multi
661e0 73 65 6c 65 63 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a select);.}..return.$default;.}..
66200 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 private.function.getErrorOutput(
66220 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 ).{.if.($this->output.instanceof
66240 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 72 65 74 75 72 .ConsoleOutputInterface).{.retur
66260 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 n.$this->output->getErrorOutput(
66280 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 7d 0a 7d 0a );.}..return.$this->output;.}.}.
662a0 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f <?php............namespace.Compo
662c0 73 65 72 5c 49 4f 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a 0a ser\IO;..use.Composer\Config;...
662e0 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 4f 49 6e 74 65 72 66 61 63 65 0a 7b 0a 63 6f 6e 73 ....interface.IOInterface.{.cons
66300 74 20 51 55 49 45 54 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 4e 4f 52 4d 41 4c 20 3d 20 32 3b 0a 63 t.QUIET.=.1;.const.NORMAL.=.2;.c
66320 6f 6e 73 74 20 56 45 52 42 4f 53 45 20 3d 20 34 3b 0a 63 6f 6e 73 74 20 56 45 52 59 5f 56 45 52 onst.VERBOSE.=.4;.const.VERY_VER
66340 42 4f 53 45 20 3d 20 38 3b 0a 63 6f 6e 73 74 20 44 45 42 55 47 20 3d 20 31 36 3b 0a 0a 0a 0a 0a BOSE.=.8;.const.DEBUG.=.16;.....
66360 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 ..public.function.isInteractive(
66380 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 65 72 62 6f );.......public.function.isVerbo
663a0 73 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 65 se();.......public.function.isVe
663c0 72 79 56 65 72 62 6f 73 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ryVerbose();.......public.functi
663e0 6f 6e 20 69 73 44 65 62 75 67 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 on.isDebug();.......public.funct
66400 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ion.isDecorated();.........publi
66420 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 c.function.write($messages,.$new
66440 6c 69 6e 65 20 3d 20 74 72 75 65 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a line.=.true,.$verbosity.=.self::
66460 4e 4f 52 4d 41 4c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e NORMAL);.........public.function
66480 20 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 .writeError($messages,.$newline.
664a0 3d 20 74 72 75 65 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a 4e 4f 52 4d 41 =.true,.$verbosity.=.self::NORMA
664c0 4c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 76 65 L);..........public.function.ove
664e0 72 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 rwrite($messages,.$newline.=.tru
66500 65 2c 20 24 73 69 7a 65 20 3d 20 6e 75 6c 6c 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 e,.$size.=.null,.$verbosity.=.se
66520 6c 66 3a 3a 4e 4f 52 4d 41 4c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e lf::NORMAL);..........public.fun
66540 63 74 69 6f 6e 20 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 73 73 61 67 65 73 2c 20 ction.overwriteError($messages,.
66560 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 2c 20 24 73 69 7a 65 20 3d 20 6e 75 6c 6c 2c 20 24 $newline.=.true,.$size.=.null,.$
66580 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a 4e 4f 52 4d 41 4c 29 3b 0a 0a 0a 0a 0a 0a verbosity.=.self::NORMAL);......
665a0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 24 71 75 65 73 74 69 .....public.function.ask($questi
665c0 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a on,.$default.=.null);...........
665e0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e .public.function.askConfirmation
66600 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 3b 0a 0a 0a ($question,.$default.=.true);...
66620 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 ..............public.function.as
66640 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 kAndValidate($question,.$validat
66660 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 66 61 75 6c 74 20 3d or,.$attempts.=.null,.$default.=
66680 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 .null);.........public.function.
666a0 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 24 71 75 65 73 74 69 6f 6e 29 3b 0a 0a 0a 0a askAndHideAnswer($question);....
666c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 ...........public.function.selec
666e0 74 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 66 61 75 6c 74 2c t($question,.$choices,.$default,
66700 20 24 61 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 65 72 72 6f 72 4d 65 73 73 61 67 .$attempts.=.false,.$errorMessag
66720 65 20 3d 20 27 56 61 6c 75 65 20 22 25 73 22 20 69 73 20 69 6e 76 61 6c 69 64 27 2c 20 24 6d 75 e.=.'Value."%s".is.invalid',.$mu
66740 6c 74 69 73 65 6c 65 63 74 20 3d 20 66 61 6c 73 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ltiselect.=.false);.......public
66760 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 73 28 29 3b 0a .function.getAuthentications();.
66780 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 75 74 68 65 ........public.function.hasAuthe
667a0 6e 74 69 63 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 3b 0a 0a 0a 0a 0a ntication($repositoryName);.....
667c0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 65 6e 74 69 63 ....public.function.getAuthentic
667e0 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a ation($repositoryName);.........
66800 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f public.function.setAuthenticatio
66820 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 2c 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 n($repositoryName,.$username,.$p
66840 61 73 73 77 6f 72 64 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 assword.=.null);.......public.fu
66860 6e 63 74 69 6f 6e 20 6c 6f 61 64 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 43 6f 6e 66 69 67 20 nction.loadConfiguration(Config.
66880 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d $config);.}.<?php............nam
668a0 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 espace.Composer\IO;.......class.
668c0 4e 75 6c 6c 49 4f 20 65 78 74 65 6e 64 73 20 42 61 73 65 49 4f 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 NullIO.extends.BaseIO.{....publi
668e0 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 0a 7b 0a 72 65 74 c.function.isInteractive().{.ret
66900 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e urn.false;.}.....public.function
66920 20 69 73 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a .isVerbose().{.return.false;.}..
66940 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 65 72 79 56 65 72 62 6f 73 65 ...public.function.isVeryVerbose
66960 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ().{.return.false;.}.....public.
66980 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 62 75 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 function.isDebug().{.return.fals
669a0 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 e;.}.....public.function.isDecor
669c0 61 74 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 ated().{.return.false;.}.....pub
669e0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e lic.function.write($messages,.$n
66a00 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 ewline.=.true,.$verbosity.=.self
66a20 3a 3a 4e 4f 52 4d 41 4c 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ::NORMAL).{.}.....public.functio
66a40 6e 20 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 n.writeError($messages,.$newline
66a60 20 3d 20 74 72 75 65 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a 4e 4f 52 4d .=.true,.$verbosity.=.self::NORM
66a80 41 4c 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 76 65 72 AL).{.}.....public.function.over
66aa0 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 write($messages,.$newline.=.true
66ac0 2c 20 24 73 69 7a 65 20 3d 20 38 30 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a ,.$size.=.80,.$verbosity.=.self:
66ae0 3a 4e 4f 52 4d 41 4c 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e :NORMAL).{.}.....public.function
66b00 20 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c .overwriteError($messages,.$newl
66b20 69 6e 65 20 3d 20 74 72 75 65 2c 20 24 73 69 7a 65 20 3d 20 38 30 2c 20 24 76 65 72 62 6f 73 69 ine.=.true,.$size.=.80,.$verbosi
66b40 74 79 20 3d 20 73 65 6c 66 3a 3a 4e 4f 52 4d 41 4c 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 ty.=.self::NORMAL).{.}.....publi
66b60 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 c.function.ask($question,.$defau
66b80 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a lt.=.null).{.return.$default;.}.
66ba0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 43 6f 6e 66 69 72 6d 61 74 ....public.function.askConfirmat
66bc0 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 0a ion($question,.$default.=.true).
66be0 7b 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 {.return.$default;.}.....public.
66c00 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 24 71 75 65 73 74 69 6f function.askAndValidate($questio
66c20 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 n,.$validator,.$attempts.=.false
66c40 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 24 64 65 66 ,.$default.=.null).{.return.$def
66c60 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 ault;.}.....public.function.askA
66c80 6e 64 48 69 64 65 41 6e 73 77 65 72 28 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 6e ndHideAnswer($question).{.return
66ca0 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c .null;.}.....public.function.sel
66cc0 65 63 74 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 66 61 75 6c ect($question,.$choices,.$defaul
66ce0 74 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 65 72 72 6f 72 4d 65 73 73 t,.$attempts.=.false,.$errorMess
66d00 61 67 65 20 3d 20 27 56 61 6c 75 65 20 22 25 73 22 20 69 73 20 69 6e 76 61 6c 69 64 27 2c 20 24 age.=.'Value."%s".is.invalid',.$
66d20 6d 75 6c 74 69 73 65 6c 65 63 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 64 multiselect.=.false).{.return.$d
66d40 65 66 61 75 6c 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d efault;.}.}.<?php............nam
66d60 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 41 espace.Composer;..use.Composer\A
66d80 75 74 6f 6c 6f 61 64 5c 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 75 73 65 20 43 utoload\AutoloadGenerator;.use.C
66da0 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 44 65 66 61 75 omposer\DependencyResolver\Defau
66dc0 6c 74 50 6f 6c 69 63 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 ltPolicy;.use.Composer\Dependenc
66de0 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 55 70 64 61 74 65 4f 70 65 72 61 74 yResolver\Operation\UpdateOperat
66e00 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f ion;.use.Composer\DependencyReso
66e20 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 3b lver\Operation\InstallOperation;
66e40 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 .use.Composer\DependencyResolver
66e60 5c 4f 70 65 72 61 74 69 6f 6e 5c 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 3b 0a 75 \Operation\UninstallOperation;.u
66e80 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f se.Composer\DependencyResolver\O
66ea0 70 65 72 61 74 69 6f 6e 5c 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 peration\OperationInterface;.use
66ec0 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6c .Composer\DependencyResolver\Pol
66ee0 69 63 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e icyInterface;.use.Composer\Depen
66f00 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 dencyResolver\Pool;.use.Composer
66f20 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 52 65 71 75 65 73 74 3b 0a 75 73 65 \DependencyResolver\Request;.use
66f40 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 52 75 6c .Composer\DependencyResolver\Rul
66f60 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 e;.use.Composer\DependencyResolv
66f80 65 72 5c 53 6f 6c 76 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e er\Solver;.use.Composer\Dependen
66fa0 63 79 52 65 73 6f 6c 76 65 72 5c 53 6f 6c 76 65 72 50 72 6f 62 6c 65 6d 73 45 78 63 65 70 74 69 cyResolver\SolverProblemsExcepti
66fc0 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 6f 77 6e on;.use.Composer\Downloader\Down
66fe0 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 loadManager;.use.Composer\EventD
67000 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 ispatcher\EventDispatcher;.use.C
67020 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 omposer\Installer\InstallationMa
67040 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 49 6e nager;.use.Composer\Installer\In
67060 73 74 61 6c 6c 65 72 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 stallerEvents;.use.Composer\Inst
67080 61 6c 6c 65 72 5c 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 aller\NoopInstaller;.use.Compose
670a0 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 53 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 r\Installer\SuggestedPackagesRep
670c0 6f 72 74 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 orter;.use.Composer\IO\IOInterfa
670e0 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 ce;.use.Composer\Package\AliasPa
67100 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 ckage;.use.Composer\Package\Comp
67120 6c 65 74 65 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 letePackage;.use.Composer\Packag
67140 65 5c 4c 69 6e 6b 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 e\Link;.use.Composer\Semver\Cons
67160 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c traint\Constraint;.use.Composer\
67180 50 61 63 6b 61 67 65 5c 4c 6f 63 6b 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 Package\Locker;.use.Composer\Pac
671a0 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f kage\PackageInterface;.use.Compo
671c0 73 65 72 5c 50 61 63 6b 61 67 65 5c 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 ser\Package\RootPackageInterface
671e0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 ;.use.Composer\Repository\Compos
67200 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f iteRepository;.use.Composer\Repo
67220 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 3b sitory\InstalledArrayRepository;
67240 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 .use.Composer\Repository\Platfor
67260 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 mRepository;.use.Composer\Reposi
67280 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f tory\RepositoryInterface;.use.Co
672a0 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 mposer\Repository\RepositoryMana
672c0 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 57 72 69 ger;.use.Composer\Repository\Wri
672e0 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f tableRepositoryInterface;.use.Co
67300 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 53 63 72 69 70 74 45 76 65 6e 74 73 3b 0a 0a 0a 0a 0a mposer\Script\ScriptEvents;.....
67320 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 ...class.Installer.{....protecte
67340 64 20 24 69 6f 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 0a 0a d.$io;.....protected.$config;...
67360 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 ..protected.$package;.....protec
67380 74 65 64 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 ted.$downloadManager;.....protec
673a0 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 ted.$repositoryManager;.....prot
673c0 65 63 74 65 64 20 24 6c 6f 63 6b 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e ected.$locker;.....protected.$in
673e0 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 stallationManager;.....protected
67400 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 .$eventDispatcher;.....protected
67420 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 .$autoloadGenerator;..protected.
67440 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 $preferSource.=.false;.protected
67460 20 24 70 72 65 66 65 72 44 69 73 74 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 .$preferDist.=.false;.protected.
67480 24 6f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f $optimizeAutoloader.=.false;.pro
674a0 74 65 63 74 65 64 20 24 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 tected.$classMapAuthoritative.=.
674c0 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 76 4d 6f 64 65 20 3d 20 66 61 6c 73 false;.protected.$devMode.=.fals
674e0 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 72 79 52 75 6e 20 3d 20 66 61 6c 73 65 3b 0a 70 72 e;.protected.$dryRun.=.false;.pr
67500 6f 74 65 63 74 65 64 20 24 76 65 72 62 6f 73 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 otected.$verbose.=.false;.protec
67520 74 65 64 20 24 75 70 64 61 74 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 ted.$update.=.false;.protected.$
67540 64 75 6d 70 41 75 74 6f 6c 6f 61 64 65 72 20 3d 20 74 72 75 65 3b 0a 70 72 6f 74 65 63 74 65 64 dumpAutoloader.=.true;.protected
67560 20 24 72 75 6e 53 63 72 69 70 74 73 20 3d 20 74 72 75 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 .$runScripts.=.true;.protected.$
67580 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 ignorePlatformReqs.=.false;.prot
675a0 65 63 74 65 64 20 24 70 72 65 66 65 72 53 74 61 62 6c 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f ected.$preferStable.=.false;.pro
675c0 74 65 63 74 65 64 20 24 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a tected.$preferLowest.=.false;...
675e0 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 3d 20 ...protected.$updateWhitelist.=.
67600 6e 75 6c 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 77 68 69 74 65 6c 69 73 74 44 65 70 65 6e 64 null;.protected.$whitelistDepend
67620 65 6e 63 69 65 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 encies.=.false;.....protected.$s
67640 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 3b 0a 0a 0a 0a 0a 70 72 uggestedPackagesReporter;.....pr
67660 6f 74 65 63 74 65 64 20 24 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f otected.$additionalInstalledRepo
67680 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e sitory;...............public.fun
676a0 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 ction.__construct(IOInterface.$i
676c0 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e o,.Config.$config,.RootPackageIn
676e0 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 terface.$package,.DownloadManage
67700 72 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2c 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 r.$downloadManager,.RepositoryMa
67720 6e 61 67 65 72 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2c 20 4c 6f 63 6b 65 72 nager.$repositoryManager,.Locker
67740 20 24 6c 6f 63 6b 65 72 2c 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 .$locker,.InstallationManager.$i
67760 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 nstallationManager,.EventDispatc
67780 68 65 72 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 41 75 74 6f 6c 6f 61 64 47 65 her.$eventDispatcher,.AutoloadGe
677a0 6e 65 72 61 74 6f 72 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 29 0a 7b 0a 24 74 nerator.$autoloadGenerator).{.$t
677c0 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 his->io.=.$io;.$this->config.=.$
677e0 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 config;.$this->package.=.$packag
67800 65 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 64 6f 77 e;.$this->downloadManager.=.$dow
67820 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d nloadManager;.$this->repositoryM
67840 61 6e 61 67 65 72 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 24 74 68 anager.=.$repositoryManager;.$th
67860 69 73 2d 3e 6c 6f 63 6b 65 72 20 3d 20 24 6c 6f 63 6b 65 72 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 is->locker.=.$locker;.$this->ins
67880 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e tallationManager.=.$installation
678a0 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 Manager;.$this->eventDispatcher.
678c0 3d 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 6c =.$eventDispatcher;.$this->autol
678e0 6f 61 64 47 65 6e 65 72 61 74 6f 72 20 3d 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f oadGenerator.=.$autoloadGenerato
67900 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 r;.}........public.function.run(
67920 29 0a 7b 0a 0a 20 0a 20 0a 20 0a 20 67 63 5f 63 6f 6c 6c 65 63 74 5f 63 79 63 6c 65 73 28 29 3b ).{.........gc_collect_cycles();
67940 0a 67 63 5f 64 69 73 61 62 6c 65 28 29 3b 0a 0a 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 .gc_disable();....if.(!$this->up
67960 64 61 74 65 20 26 26 20 21 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 date.&&.!$this->locker->isLocked
67980 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 ()).{.$this->update.=.true;.}..i
679a0 66 20 28 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f f.($this->dryRun).{.$this->verbo
679c0 73 65 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 20 3d 20 66 se.=.true;.$this->runScripts.=.f
679e0 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 alse;.$this->installationManager
67a00 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 ->addInstaller(new.NoopInstaller
67a20 29 3b 0a 24 74 68 69 73 2d 3e 6d 6f 63 6b 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 69 65 73 28 );.$this->mockLocalRepositories(
67a40 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 29 3b 0a 7d 0a 0a 69 66 $this->repositoryManager);.}..if
67a60 20 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 20 7b 0a 0a 20 24 65 76 65 6e 74 4e .($this->runScripts).{...$eventN
67a80 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 3f 20 53 63 72 69 70 74 45 76 65 6e ame.=.$this->update.?.ScriptEven
67aa0 74 73 3a 3a 50 52 45 5f 55 50 44 41 54 45 5f 43 4d 44 20 3a 20 53 63 72 69 70 74 45 76 65 6e 74 ts::PRE_UPDATE_CMD.:.ScriptEvent
67ac0 73 3a 3a 50 52 45 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 s::PRE_INSTALL_CMD;.$this->event
67ae0 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 24 65 76 65 6e Dispatcher->dispatchScript($even
67b00 74 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 tName,.$this->devMode);.}..$this
67b20 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 73 65 74 50 72 65 66 65 72 53 6f 75 72 ->downloadManager->setPreferSour
67b40 63 65 28 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e ce($this->preferSource);.$this->
67b60 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 73 65 74 50 72 65 66 65 72 44 69 73 74 28 24 downloadManager->setPreferDist($
67b80 74 68 69 73 2d 3e 70 72 65 66 65 72 44 69 73 74 29 3b 0a 0a 0a 20 0a 20 0a 20 24 69 6e 73 74 61 this->preferDist);........$insta
67ba0 6c 6c 65 64 52 6f 6f 74 50 61 63 6b 61 67 65 20 3d 20 63 6c 6f 6e 65 20 24 74 68 69 73 2d 3e 70 lledRootPackage.=.clone.$this->p
67bc0 61 63 6b 61 67 65 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 73 ackage;.$installedRootPackage->s
67be0 65 74 52 65 71 75 69 72 65 73 28 61 72 72 61 79 28 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 etRequires(array());.$installedR
67c00 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 73 65 74 44 65 76 52 65 71 75 69 72 65 73 28 61 72 72 61 79 ootPackage->setDevRequires(array
67c20 28 29 29 3b 0a 0a 0a 20 24 6c 6f 63 61 6c 52 65 70 6f 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f ());....$localRepo.=.$this->repo
67c40 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 sitoryManager->getLocalRepositor
67c60 79 28 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 24 70 6c 61 74 66 y();.if.($this->update).{.$platf
67c80 6f 72 6d 4f 76 65 72 72 69 64 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 ormOverrides.=.$this->config->ge
67ca0 74 28 27 70 6c 61 74 66 6f 72 6d 27 29 20 3f 3a 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 t('platform').?:.array();.}.else
67cc0 20 7b 0a 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 20 3d 20 24 74 68 69 73 2d 3e 6c .{.$platformOverrides.=.$this->l
67ce0 6f 63 6b 65 72 2d 3e 67 65 74 50 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 28 29 3b 0a 7d ocker->getPlatformOverrides();.}
67d00 0a 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 20 3d 20 6e 65 77 20 50 6c 61 74 66 6f 72 6d 52 65 70 .$platformRepo.=.new.PlatformRep
67d20 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 29 2c 20 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 ository(array(),.$platformOverri
67d40 64 65 73 29 3b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 0a 24 6c 6f 63 61 6c 52 65 70 6f des);.$repos.=.array(.$localRepo
67d60 2c 0a 6e 65 77 20 49 6e 73 74 61 6c 6c 65 64 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 61 ,.new.InstalledArrayRepository(a
67d80 72 72 61 79 28 24 69 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 50 61 63 6b 61 67 65 29 29 2c 0a 24 70 rray($installedRootPackage)),.$p
67da0 6c 61 74 66 6f 72 6d 52 65 70 6f 2c 0a 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d latformRepo,.);.$installedRepo.=
67dc0 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 73 29 .new.CompositeRepository($repos)
67de0 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 ;.if.($this->additionalInstalled
67e00 52 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 61 64 Repository).{.$installedRepo->ad
67e20 64 52 65 70 6f 73 69 74 6f 72 79 28 24 74 68 69 73 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 dRepository($this->additionalIns
67e40 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 0a 24 61 6c 69 61 73 65 73 20 3d talledRepository);.}..$aliases.=
67e60 20 24 74 68 69 73 2d 3e 67 65 74 52 6f 6f 74 41 6c 69 61 73 65 73 28 29 3b 0a 24 74 68 69 73 2d .$this->getRootAliases();.$this-
67e80 3e 61 6c 69 61 73 50 6c 61 74 66 6f 72 6d 50 61 63 6b 61 67 65 73 28 24 70 6c 61 74 66 6f 72 6d >aliasPlatformPackages($platform
67ea0 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 73 75 Repo,.$aliases);..if.(!$this->su
67ec0 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 29 20 7b 0a 24 74 68 69 73 ggestedPackagesReporter).{.$this
67ee0 2d 3e 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 20 3d 20 6e 65 ->suggestedPackagesReporter.=.ne
67f00 77 20 53 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 28 24 74 68 69 w.SuggestedPackagesReporter($thi
67f20 73 2d 3e 69 6f 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 64 s->io);.}..try.{.$res.=.$this->d
67f40 6f 49 6e 73 74 61 6c 6c 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 oInstall($localRepo,.$installedR
67f60 65 70 6f 2c 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 2c 20 24 74 epo,.$platformRepo,.$aliases,.$t
67f80 68 69 73 2d 3e 64 65 76 4d 6f 64 65 29 3b 0a 69 66 20 28 24 72 65 73 20 21 3d 3d 20 30 29 20 7b his->devMode);.if.($res.!==.0).{
67fa0 0a 72 65 74 75 72 6e 20 24 72 65 73 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 .return.$res;.}.}.catch.(\Except
67fc0 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a ion.$e).{.if.(!$this->dryRun).{.
67fe0 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 6e 6f 74 69 $this->installationManager->noti
68000 66 79 49 6e 73 74 61 6c 6c 73 28 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 fyInstalls($this->io);.}..throw.
68020 24 65 3b 0a 7d 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a 24 74 68 69 $e;.}.if.(!$this->dryRun).{.$thi
68040 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 6e 6f 74 69 66 79 49 6e s->installationManager->notifyIn
68060 73 74 61 6c 6c 73 28 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 stalls($this->io);.}....if.($thi
68080 73 2d 3e 64 65 76 4d 6f 64 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 65 64 50 61 s->devMode).{.$this->suggestedPa
680a0 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 2d 3e 6f 75 74 70 75 74 28 24 69 6e 73 74 61 6c 6c 65 ckagesReporter->output($installe
680c0 64 52 65 70 6f 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 61 6c 52 65 70 6f dRepo);.}....foreach.($localRepo
680e0 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 ->getPackages().as.$package).{.i
68100 66 20 28 21 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6c 65 74 65 f.(!$package.instanceof.Complete
68120 50 61 63 6b 61 67 65 20 7c 7c 20 21 24 70 61 63 6b 61 67 65 2d 3e 69 73 41 62 61 6e 64 6f 6e 65 Package.||.!$package->isAbandone
68140 64 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 72 65 70 6c 61 63 65 6d 65 6e 74 d()).{.continue;.}..$replacement
68160 20 3d 20 28 69 73 5f 73 74 72 69 6e 67 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 .=.(is_string($package->getRepla
68180 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 29 29 0a 3f 20 27 55 73 65 20 27 20 2e 20 24 70 61 cementPackage())).?.'Use.'...$pa
681a0 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 20 2e ckage->getReplacementPackage()..
681c0 20 27 20 69 6e 73 74 65 61 64 27 0a 3a 20 27 4e 6f 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 77 61 .'.instead'.:.'No.replacement.wa
681e0 73 20 73 75 67 67 65 73 74 65 64 27 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 s.suggested';..$this->io->writeE
68200 72 72 6f 72 28 0a 73 70 72 69 6e 74 66 28 0a 22 3c 77 61 72 6e 69 6e 67 3e 50 61 63 6b 61 67 65 rror(.sprintf(."<warning>Package
68220 20 25 73 20 69 73 20 61 62 61 6e 64 6f 6e 65 64 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 61 76 6f .%s.is.abandoned,.you.should.avo
68240 69 64 20 75 73 69 6e 67 20 69 74 2e 20 25 73 2e 3c 2f 77 61 72 6e 69 6e 67 3e 22 2c 0a 24 70 61 id.using.it..%s.</warning>",.$pa
68260 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 0a 24 72 65 70 6c 61 63 65 ckage->getPrettyName(),.$replace
68280 6d 65 6e 74 0a 29 0a 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 29 ment.).);.}..if.(!$this->dryRun)
682a0 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 24 6c 6f 63 61 6c .{...if.($this->update).{.$local
682c0 52 65 70 6f 2d 3e 72 65 6c 6f 61 64 28 29 3b 0a 0a 0a 20 0a 20 24 64 65 76 50 61 63 6b 61 67 65 Repo->reload();......$devPackage
682e0 73 20 3d 20 28 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 20 7c 7c 20 21 24 74 68 69 73 2d 3e 70 s.=.($this->devMode.||.!$this->p
68300 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 29 20 3f 20 61 72 72 61 ackage->getDevRequires()).?.arra
68320 79 28 29 20 3a 20 6e 75 6c 6c 3b 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 y().:.null;....if.($this->devMod
68340 65 20 26 26 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 69 e.&&.$this->package->getDevRequi
68360 72 65 73 28 29 29 20 7b 0a 24 70 6f 6c 69 63 79 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 res()).{.$policy.=.$this->create
68380 50 6f 6c 69 63 79 28 29 3b 0a 24 70 6f 6f 6c 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 50 Policy();.$pool.=.$this->createP
683a0 6f 6f 6c 28 74 72 75 65 29 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 ool(true);.$pool->addRepository(
683c0 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 29 3b 0a 0a 0a 20 24 72 $installedRepo,.$aliases);....$r
683e0 65 71 75 65 73 74 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 52 65 71 75 65 73 74 28 24 74 equest.=.$this->createRequest($t
68400 68 69 73 2d 3e 70 61 63 6b 61 67 65 2c 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 29 3b 0a 24 72 his->package,.$platformRepo);.$r
68420 65 71 75 65 73 74 2d 3e 75 70 64 61 74 65 41 6c 6c 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 equest->updateAll();.foreach.($t
68440 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 20 61 73 20 24 his->package->getRequires().as.$
68460 6c 69 6e 6b 29 20 7b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 61 6c 6c 28 24 6c 69 6e 6b 2d link).{.$request->install($link-
68480 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 >getTarget(),.$link->getConstrai
684a0 6e 74 28 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 nt());.}..$this->eventDispatcher
684c0 2d 3e 64 69 73 70 61 74 63 68 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 28 49 6e 73 74 61 6c 6c ->dispatchInstallerEvent(Install
684e0 65 72 45 76 65 6e 74 73 3a 3a 50 52 45 5f 44 45 50 45 4e 44 45 4e 43 49 45 53 5f 53 4f 4c 56 49 erEvents::PRE_DEPENDENCIES_SOLVI
68500 4e 47 2c 20 66 61 6c 73 65 2c 20 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 NG,.false,.$policy,.$pool,.$inst
68520 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 71 75 65 73 74 29 3b 0a 24 73 6f 6c 76 65 72 20 3d 20 alledRepo,.$request);.$solver.=.
68540 6e 65 77 20 53 6f 6c 76 65 72 28 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 new.Solver($policy,.$pool,.$inst
68560 61 6c 6c 65 64 52 65 70 6f 2c 20 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 24 6f 70 73 20 3d 20 24 73 alledRepo,.$this->io);.$ops.=.$s
68580 6f 6c 76 65 72 2d 3e 73 6f 6c 76 65 28 24 72 65 71 75 65 73 74 2c 20 24 74 68 69 73 2d 3e 69 67 olver->solve($request,.$this->ig
685a0 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 norePlatformReqs);.$this->eventD
685c0 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e ispatcher->dispatchInstallerEven
685e0 74 28 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 44 45 50 45 4e 44 45 4e t(InstallerEvents::POST_DEPENDEN
68600 43 49 45 53 5f 53 4f 4c 56 49 4e 47 2c 20 66 61 6c 73 65 2c 20 24 70 6f 6c 69 63 79 2c 20 24 70 CIES_SOLVING,.false,.$policy,.$p
68620 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 71 75 65 73 74 2c 20 24 ool,.$installedRepo,.$request,.$
68640 6f 70 73 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6f 70 73 20 61 73 20 24 6f 70 29 20 7b 0a 69 66 ops);.foreach.($ops.as.$op).{.if
68660 20 28 24 6f 70 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 20 3d 3d 3d 20 27 75 6e 69 6e 73 74 61 .($op->getJobType().===.'uninsta
68680 6c 6c 27 29 20 7b 0a 24 64 65 76 50 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 6f 70 2d 3e 67 65 74 ll').{.$devPackages[].=.$op->get
686a0 50 61 63 6b 61 67 65 28 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 70 6c 61 74 66 6f 72 6d 52 65 71 73 20 Package();.}.}.}..$platformReqs.
686c0 3d 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d =.$this->extractPlatformRequirem
686e0 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 ents($this->package->getRequires
68700 28 29 29 3b 0a 24 70 6c 61 74 66 6f 72 6d 44 65 76 52 65 71 73 20 3d 20 24 74 68 69 73 2d 3e 64 ());.$platformDevReqs.=.$this->d
68720 65 76 4d 6f 64 65 20 3f 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 50 6c 61 74 66 6f 72 6d 52 evMode.?.$this->extractPlatformR
68740 65 71 75 69 72 65 6d 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 equirements($this->package->getD
68760 65 76 52 65 71 75 69 72 65 73 28 29 29 20 3a 20 61 72 72 61 79 28 29 3b 0a 0a 24 75 70 64 61 74 evRequires()).:.array();..$updat
68780 65 64 4c 6f 63 6b 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 73 65 74 4c 6f 63 6b 44 edLock.=.$this->locker->setLockD
687a0 61 74 61 28 0a 61 72 72 61 79 5f 64 69 66 66 28 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 65 74 43 ata(.array_diff($localRepo->getC
687c0 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 2c 20 28 61 72 72 61 79 29 20 24 64 65 76 anonicalPackages(),.(array).$dev
687e0 50 61 63 6b 61 67 65 73 29 2c 0a 24 64 65 76 50 61 63 6b 61 67 65 73 2c 0a 24 70 6c 61 74 66 6f Packages),.$devPackages,.$platfo
68800 72 6d 52 65 71 73 2c 0a 24 70 6c 61 74 66 6f 72 6d 44 65 76 52 65 71 73 2c 0a 24 61 6c 69 61 73 rmReqs,.$platformDevReqs,.$alias
68820 65 73 2c 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 4d 69 6e 69 6d 75 6d 53 74 es,.$this->package->getMinimumSt
68840 61 62 69 6c 69 74 79 28 29 2c 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 74 ability(),.$this->package->getSt
68860 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 2c 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 74 61 abilityFlags(),.$this->preferSta
68880 62 6c 65 20 7c 7c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 66 65 72 ble.||.$this->package->getPrefer
688a0 53 74 61 62 6c 65 28 29 2c 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 4c 6f 77 65 73 74 2c 0a 24 Stable(),.$this->preferLowest,.$
688c0 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 70 6c 61 74 66 6f 72 6d 27 29 20 3f 3a this->config->get('platform').?:
688e0 20 61 72 72 61 79 28 29 0a 29 3b 0a 69 66 20 28 24 75 70 64 61 74 65 64 4c 6f 63 6b 29 20 7b 0a .array().);.if.($updatedLock).{.
68900 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 57 72 69 $this->io->writeError('<info>Wri
68920 74 69 6e 67 20 6c 6f 63 6b 20 66 69 6c 65 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 ting.lock.file</info>');.}.}..if
68940 20 28 24 74 68 69 73 2d 3e 64 75 6d 70 41 75 74 6f 6c 6f 61 64 65 72 29 20 7b 0a 0a 20 69 66 20 .($this->dumpAutoloader).{...if.
68960 28 24 74 68 69 73 2d 3e 6f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 29 20 7b 0a 24 74 ($this->optimizeAutoloader).{.$t
68980 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 47 65 6e 65 72 his->io->writeError('<info>Gener
689a0 61 74 69 6e 67 20 6f 70 74 69 6d 69 7a 65 64 20 61 75 74 6f 6c 6f 61 64 20 66 69 6c 65 73 3c 2f ating.optimized.autoload.files</
689c0 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 info>');.}.else.{.$this->io->wri
689e0 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 47 65 6e 65 72 61 74 69 6e 67 20 61 75 74 6f 6c 6f teError('<info>Generating.autolo
68a00 61 64 20 66 69 6c 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 75 74 ad.files</info>');.}..$this->aut
68a20 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 24 74 68 69 73 oloadGenerator->setDevMode($this
68a40 2d 3e 64 65 76 4d 6f 64 65 29 3b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 ->devMode);.$this->autoloadGener
68a60 61 74 6f 72 2d 3e 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 ator->setClassMapAuthoritative($
68a80 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 29 3b 0a 24 74 this->classMapAuthoritative);.$t
68aa0 68 69 73 2d 3e 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 2d 3e 73 65 74 52 75 6e 53 63 his->autoloadGenerator->setRunSc
68ac0 72 69 70 74 73 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 3b 0a 24 74 68 69 73 2d ripts($this->runScripts);.$this-
68ae0 3e 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 2d 3e 64 75 6d 70 28 24 74 68 69 73 2d 3e >autoloadGenerator->dump($this->
68b00 63 6f 6e 66 69 67 2c 20 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 config,.$localRepo,.$this->packa
68b20 67 65 2c 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 ge,.$this->installationManager,.
68b40 27 63 6f 6d 70 6f 73 65 72 27 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 'composer',.$this->optimizeAutol
68b60 6f 61 64 65 72 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 oader);.}..if.($this->runScripts
68b80 29 20 7b 0a 0a 20 24 65 76 65 6e 74 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 75 70 64 61 74 65 ).{...$eventName.=.$this->update
68ba0 20 3f 20 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 55 50 44 41 54 45 5f 43 4d 44 .?.ScriptEvents::POST_UPDATE_CMD
68bc0 20 3a 20 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 49 4e 53 54 41 4c 4c 5f 43 4d .:.ScriptEvents::POST_INSTALL_CM
68be0 44 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 D;.$this->eventDispatcher->dispa
68c00 74 63 68 53 63 72 69 70 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 64 65 76 tchScript($eventName,.$this->dev
68c20 4d 6f 64 65 29 3b 0a 7d 0a 0a 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f Mode);.}..$vendorDir.=.$this->co
68c40 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 3b 0a 69 66 20 28 69 73 5f nfig->get('vendor-dir');.if.(is_
68c60 64 69 72 28 24 76 65 6e 64 6f 72 44 69 72 29 29 20 7b 0a 0a 20 0a 20 40 74 6f 75 63 68 28 24 76 dir($vendorDir)).{.....@touch($v
68c80 65 6e 64 6f 72 44 69 72 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 64 65 66 69 6e 65 64 28 27 endorDir);.}.}....if.(!defined('
68ca0 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 67 63 5f 65 6e 61 62 6c 65 28 29 3b 0a 7d HHVM_VERSION')).{.gc_enable();.}
68cc0 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 ..return.0;.}..........protected
68ce0 20 66 75 6e 63 74 69 6f 6e 20 64 6f 49 6e 73 74 61 6c 6c 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 .function.doInstall($localRepo,.
68d00 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 2c 20 24 $installedRepo,.$platformRepo,.$
68d20 61 6c 69 61 73 65 73 2c 20 24 77 69 74 68 44 65 76 52 65 71 73 29 0a 7b 0a 0a 20 24 6c 6f 63 6b aliases,.$withDevReqs).{...$lock
68d40 65 64 52 65 70 6f 73 69 74 6f 72 79 20 3d 20 6e 75 6c 6c 3b 0a 24 72 65 70 6f 73 69 74 6f 72 69 edRepository.=.null;.$repositori
68d60 65 73 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 0a 20 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 es.=.null;........if.(!$this->up
68d80 64 61 74 65 20 7c 7c 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 date.||.(!empty($this->updateWhi
68da0 74 65 6c 69 73 74 29 20 26 26 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b telist).&&.$this->locker->isLock
68dc0 65 64 28 29 29 29 20 7b 0a 74 72 79 20 7b 0a 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 ed())).{.try.{.$lockedRepository
68de0 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 4c 6f 63 6b 65 64 52 65 70 6f 73 .=.$this->locker->getLockedRepos
68e00 69 74 6f 72 79 28 24 77 69 74 68 44 65 76 52 65 71 73 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 itory($withDevReqs);.}.catch.(\R
68e20 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 untimeException.$e).{...if.($thi
68e40 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 29 20 7b 0a s->package->getDevRequires()).{.
68e60 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 20 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 20 throw.$e;.}...$lockedRepository.
68e80 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 4c 6f 63 6b 65 64 52 65 70 6f 73 69 =.$this->locker->getLockedReposi
68ea0 74 6f 72 79 28 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 55 70 64 tory();.}.}..$this->whitelistUpd
68ec0 61 74 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 0a 24 6c 6f 63 61 6c 52 65 70 6f 2c 0a 24 77 69 ateDependencies(.$localRepo,.$wi
68ee0 74 68 44 65 76 52 65 71 73 2c 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 thDevReqs,.$this->package->getRe
68f00 71 75 69 72 65 73 28 29 2c 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 quires(),.$this->package->getDev
68f20 52 65 71 75 69 72 65 73 28 29 0a 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 Requires().);..$this->io->writeE
68f40 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 4c 6f 61 64 69 6e 67 20 63 6f 6d 70 6f 73 65 72 20 72 65 70 rror('<info>Loading.composer.rep
68f60 6f 73 69 74 6f 72 69 65 73 20 77 69 74 68 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 ositories.with.package.informati
68f80 6f 6e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 0a 20 24 70 6f 6c 69 63 79 20 3d 20 24 74 68 69 73 2d on</info>');....$policy.=.$this-
68fa0 3e 63 72 65 61 74 65 50 6f 6c 69 63 79 28 29 3b 0a 24 70 6f 6f 6c 20 3d 20 24 74 68 69 73 2d 3e >createPolicy();.$pool.=.$this->
68fc0 63 72 65 61 74 65 50 6f 6f 6c 28 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 24 74 68 69 73 2d 3e createPool($withDevReqs,.$this->
68fe0 75 70 64 61 74 65 20 3f 20 6e 75 6c 6c 20 3a 20 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 update.?.null.:.$lockedRepositor
69000 79 29 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 69 6e 73 74 61 6c y);.$pool->addRepository($instal
69020 6c 65 64 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 75 ledRepo,.$aliases);.if.($this->u
69040 70 64 61 74 65 29 20 7b 0a 24 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 24 74 68 69 73 2d 3e pdate).{.$repositories.=.$this->
69060 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 repositoryManager->getRepositori
69080 65 73 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 es();.foreach.($repositories.as.
690a0 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 $repository).{.$pool->addReposit
690c0 6f 72 79 28 24 72 65 70 6f 73 69 74 6f 72 79 2c 20 24 61 6c 69 61 73 65 73 29 3b 0a 7d 0a 7d 0a ory($repository,.$aliases);.}.}.
690e0 0a 20 0a 20 0a 20 69 66 20 28 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 ......if.($lockedRepository).{.$
69100 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 6c 6f 63 6b 65 64 52 65 70 6f 73 pool->addRepository($lockedRepos
69120 69 74 6f 72 79 2c 20 24 61 6c 69 61 73 65 73 29 3b 0a 7d 0a 0a 0a 20 24 72 65 71 75 65 73 74 20 itory,.$aliases);.}....$request.
69140 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 52 65 71 75 65 73 74 28 24 74 68 69 73 2d 3e 70 61 =.$this->createRequest($this->pa
69160 63 6b 61 67 65 2c 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 29 3b 0a 0a 69 66 20 28 24 74 68 69 ckage,.$platformRepo);..if.($thi
69180 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 0a 20 24 72 65 6d 6f 76 65 64 55 6e 73 74 61 62 6c 65 50 s->update).{...$removedUnstableP
691a0 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 ackages.=.array();.foreach.($loc
691c0 61 6c 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 alRepo->getPackages().as.$packag
691e0 65 29 20 7b 0a 69 66 20 28 0a 21 24 70 6f 6f 6c 2d 3e 69 73 50 61 63 6b 61 67 65 41 63 63 65 70 e).{.if.(.!$pool->isPackageAccep
69200 74 61 62 6c 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 28 29 2c 20 24 70 61 63 table($package->getNames(),.$pac
69220 6b 61 67 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 29 0a 26 26 20 24 74 68 69 73 2d 3e kage->getStability()).&&.$this->
69240 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 69 73 50 61 63 6b 61 67 65 49 6e installationManager->isPackageIn
69260 73 74 61 6c 6c 65 64 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 0a 29 20 stalled($localRepo,.$package).).
69280 7b 0a 24 72 65 6d 6f 76 65 64 55 6e 73 74 61 62 6c 65 50 61 63 6b 61 67 65 73 5b 24 70 61 63 6b {.$removedUnstablePackages[$pack
692a0 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 74 72 75 65 3b 0a 24 72 65 71 75 65 73 74 age->getName()].=.true;.$request
692c0 2d 3e 72 65 6d 6f 76 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 6e 65 ->remove($package->getName(),.ne
692e0 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 w.Constraint('=',.$package->getV
69300 65 72 73 69 6f 6e 28 29 29 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 ersion()));.}.}..$this->io->writ
69320 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 55 70 64 61 74 69 6e 67 20 64 65 70 65 6e 64 65 6e 63 eError('<info>Updating.dependenc
69340 69 65 73 27 2e 28 24 77 69 74 68 44 65 76 52 65 71 73 20 3f 20 27 20 28 69 6e 63 6c 75 64 69 6e ies'.($withDevReqs.?.'.(includin
69360 67 20 72 65 71 75 69 72 65 2d 64 65 76 29 27 20 3a 20 27 27 29 2e 27 3c 2f 69 6e 66 6f 3e 27 29 g.require-dev)'.:.'').'</info>')
69380 3b 0a 0a 24 72 65 71 75 65 73 74 2d 3e 75 70 64 61 74 65 41 6c 6c 28 29 3b 0a 0a 69 66 20 28 24 ;..$request->updateAll();..if.($
693a0 77 69 74 68 44 65 76 52 65 71 73 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d 20 61 72 72 61 79 5f 6d 65 withDevReqs).{.$links.=.array_me
693c0 72 67 65 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 rge($this->package->getRequires(
693e0 29 2c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 69 72 65 ),.$this->package->getDevRequire
69400 73 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6c 69 6e 6b 73 20 3d 20 24 74 68 69 73 2d 3e 70 s());.}.else.{.$links.=.$this->p
69420 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 ackage->getRequires();.}..foreac
69440 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 72 65 71 75 65 73 74 2d 3e h.($links.as.$link).{.$request->
69460 69 6e 73 74 61 6c 6c 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e install($link->getTarget(),.$lin
69480 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 k->getConstraint());.}......if.(
694a0 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 29 20 7b 0a 24 63 75 72 72 65 $this->updateWhitelist).{.$curre
694c0 6e 74 50 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 75 72 72 65 6e 74 50 61 ntPackages.=.$this->getCurrentPa
694e0 63 6b 61 67 65 73 28 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 ckages($withDevReqs,.$installedR
69500 65 70 6f 29 3b 0a 0a 0a 20 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a epo);....$candidates.=.array();.
69520 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 63 61 6e foreach.($links.as.$link).{.$can
69540 64 69 64 61 74 65 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 74 72 didates[$link->getTarget()].=.tr
69560 75 65 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 65 74 50 61 ue;.}.foreach.($localRepo->getPa
69580 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 63 61 6e 64 69 64 61 ckages().as.$package).{.$candida
695a0 74 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 74 72 75 65 3b tes[$package->getName()].=.true;
695c0 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 63 61 6e 64 69 64 61 74 65 73 20 61 73 20 24 63 .}....foreach.($candidates.as.$c
695e0 61 6e 64 69 64 61 74 65 20 3d 3e 20 24 64 75 6d 6d 79 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 andidate.=>.$dummy).{.foreach.($
69600 63 75 72 72 65 6e 74 50 61 63 6b 61 67 65 73 20 61 73 20 24 63 75 72 50 61 63 6b 61 67 65 29 20 currentPackages.as.$curPackage).
69620 7b 0a 69 66 20 28 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d {.if.($curPackage->getName().===
69640 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 55 70 64 .$candidate).{.if.(!$this->isUpd
69660 61 74 65 61 62 6c 65 28 24 63 75 72 50 61 63 6b 61 67 65 29 20 26 26 20 21 69 73 73 65 74 28 24 ateable($curPackage).&&.!isset($
69680 72 65 6d 6f 76 65 64 55 6e 73 74 61 62 6c 65 50 61 63 6b 61 67 65 73 5b 24 63 75 72 50 61 63 6b removedUnstablePackages[$curPack
696a0 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 age->getName()])).{.$constraint.
696c0 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 63 75 72 50 61 63 6b 61 67 =.new.Constraint('=',.$curPackag
696e0 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 e->getVersion());.$request->inst
69700 61 6c 6c 28 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6e all($curPackage->getName(),.$con
69720 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 20 65 6c 73 straint);.}.break;.}.}.}.}.}.els
69740 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f e.{.$this->io->writeError('<info
69760 3e 49 6e 73 74 61 6c 6c 69 6e 67 20 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2e 28 24 77 69 74 68 >Installing.dependencies'.($with
69780 44 65 76 52 65 71 73 20 3f 20 27 20 28 69 6e 63 6c 75 64 69 6e 67 20 72 65 71 75 69 72 65 2d 64 DevReqs.?.'.(including.require-d
697a0 65 76 29 27 20 3a 20 27 27 29 2e 27 20 66 72 6f 6d 20 6c 6f 63 6b 20 66 69 6c 65 3c 2f 69 6e 66 ev)'.:.'').'.from.lock.file</inf
697c0 6f 3e 27 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 46 72 65 o>');..if.(!$this->locker->isFre
697e0 73 68 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c sh()).{.$this->io->writeError('<
69800 77 61 72 6e 69 6e 67 3e 57 61 72 6e 69 6e 67 3a 20 54 68 65 20 6c 6f 63 6b 20 66 69 6c 65 20 69 warning>Warning:.The.lock.file.i
69820 73 20 6e 6f 74 20 75 70 20 74 6f 20 64 61 74 65 20 77 69 74 68 20 74 68 65 20 6c 61 74 65 73 74 s.not.up.to.date.with.the.latest
69840 20 63 68 61 6e 67 65 73 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2e 20 59 6f 75 20 6d .changes.in.composer.json..You.m
69860 61 79 20 62 65 20 67 65 74 74 69 6e 67 20 6f 75 74 64 61 74 65 64 20 64 65 70 65 6e 64 65 6e 63 ay.be.getting.outdated.dependenc
69880 69 65 73 2e 20 52 75 6e 20 75 70 64 61 74 65 20 74 6f 20 75 70 64 61 74 65 20 74 68 65 6d 2e 3c ies..Run.update.to.update.them.<
698a0 2f 77 61 72 6e 69 6e 67 3e 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 51 /warning>',.true,.IOInterface::Q
698c0 55 49 45 54 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 UIET);.}..foreach.($lockedReposi
698e0 74 6f 72 79 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 tory->getPackages().as.$package)
69900 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 .{.$version.=.$package->getVersi
69920 6f 6e 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 61 6c 69 61 73 65 73 5b 24 70 61 63 6b 61 67 on();.if.(isset($aliases[$packag
69940 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 24 76 65 72 73 69 6f 6e 5d 29 29 20 7b 0a 24 76 65 72 e->getName()][$version])).{.$ver
69960 73 69 6f 6e 20 3d 20 24 61 6c 69 61 73 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d sion.=.$aliases[$package->getNam
69980 65 28 29 5d 5b 24 76 65 72 73 69 6f 6e 5d 5b 27 61 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 e()][$version]['alias_normalized
699a0 27 5d 3b 0a 7d 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 '];.}.$constraint.=.new.Constrai
699c0 6e 74 28 27 3d 27 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e nt('=',.$version);.$constraint->
699e0 73 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 setPrettyString($package->getPre
69a00 74 74 79 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 61 6c 6c ttyVersion());.$request->install
69a20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6e 73 74 72 61 69 6e ($package->getName(),.$constrain
69a40 74 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 t);.}..foreach.($this->locker->g
69a60 65 74 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 77 69 74 68 44 65 76 52 etPlatformRequirements($withDevR
69a80 65 71 73 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 61 eqs).as.$link).{.$request->insta
69aa0 6c 6c 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 ll($link->getTarget(),.$link->ge
69ac0 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 70 72 tConstraint());.}.}....$this->pr
69ae0 6f 63 65 73 73 44 65 76 50 61 63 6b 61 67 65 73 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 70 6f ocessDevPackages($localRepo,.$po
69b00 6f 6c 2c 20 24 70 6f 6c 69 63 79 2c 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 24 69 6e 73 ol,.$policy,.$repositories,.$ins
69b20 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 2c 20 24 talledRepo,.$lockedRepository,.$
69b40 77 69 74 68 44 65 76 52 65 71 73 2c 20 27 66 6f 72 63 65 2d 6c 69 6e 6b 73 27 29 3b 0a 0a 0a 20 withDevReqs,.'force-links');....
69b60 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 $this->eventDispatcher->dispatch
69b80 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 28 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 73 3a 3a InstallerEvent(InstallerEvents::
69ba0 50 52 45 5f 44 45 50 45 4e 44 45 4e 43 49 45 53 5f 53 4f 4c 56 49 4e 47 2c 20 24 74 68 69 73 2d PRE_DEPENDENCIES_SOLVING,.$this-
69bc0 3e 64 65 76 4d 6f 64 65 2c 20 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 >devMode,.$policy,.$pool,.$insta
69be0 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 71 75 65 73 74 29 3b 0a 24 73 6f 6c 76 65 72 20 3d 20 6e lledRepo,.$request);.$solver.=.n
69c00 65 77 20 53 6f 6c 76 65 72 28 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 ew.Solver($policy,.$pool,.$insta
69c20 6c 6c 65 64 52 65 70 6f 2c 20 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 74 72 79 20 7b 0a 24 6f 70 65 lledRepo,.$this->io);.try.{.$ope
69c40 72 61 74 69 6f 6e 73 20 3d 20 24 73 6f 6c 76 65 72 2d 3e 73 6f 6c 76 65 28 24 72 65 71 75 65 73 rations.=.$solver->solve($reques
69c60 74 2c 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 3b 0a 24 t,.$this->ignorePlatformReqs);.$
69c80 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 49 this->eventDispatcher->dispatchI
69ca0 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 28 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 73 3a 3a 50 nstallerEvent(InstallerEvents::P
69cc0 4f 53 54 5f 44 45 50 45 4e 44 45 4e 43 49 45 53 5f 53 4f 4c 56 49 4e 47 2c 20 24 74 68 69 73 2d OST_DEPENDENCIES_SOLVING,.$this-
69ce0 3e 64 65 76 4d 6f 64 65 2c 20 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 >devMode,.$policy,.$pool,.$insta
69d00 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 71 75 65 73 74 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 lledRepo,.$request,.$operations)
69d20 3b 0a 7d 20 63 61 74 63 68 20 28 53 6f 6c 76 65 72 50 72 6f 62 6c 65 6d 73 45 78 63 65 70 74 69 ;.}.catch.(SolverProblemsExcepti
69d40 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 on.$e).{.$this->io->writeError('
69d60 3c 65 72 72 6f 72 3e 59 6f 75 72 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 63 6f 75 6c 64 20 6e <error>Your.requirements.could.n
69d80 6f 74 20 62 65 20 72 65 73 6f 6c 76 65 64 20 74 6f 20 61 6e 20 69 6e 73 74 61 6c 6c 61 62 6c 65 ot.be.resolved.to.an.installable
69da0 20 73 65 74 20 6f 66 20 70 61 63 6b 61 67 65 73 2e 3c 2f 65 72 72 6f 72 3e 27 2c 20 74 72 75 65 .set.of.packages.</error>',.true
69dc0 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 51 55 49 45 54 29 3b 0a 24 74 68 69 73 2d 3e 69 6f ,.IOInterface::QUIET);.$this->io
69de0 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a ->writeError($e->getMessage());.
69e00 0a 72 65 74 75 72 6e 20 6d 61 78 28 31 2c 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 29 3b 0a 7d .return.max(1,.$e->getCode());.}
69e20 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 41 6e 61 6c 79 7a 65 ..$this->io->writeError("Analyze
69e40 64 20 22 2e 63 6f 75 6e 74 28 24 70 6f 6f 6c 29 2e 22 20 70 61 63 6b 61 67 65 73 20 74 6f 20 72 d.".count($pool).".packages.to.r
69e60 65 73 6f 6c 76 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 22 2c 20 74 72 75 65 2c 20 49 4f 49 6e esolve.dependencies",.true,.IOIn
69e80 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 terface::VERBOSE);.$this->io->wr
69ea0 69 74 65 45 72 72 6f 72 28 22 41 6e 61 6c 79 7a 65 64 20 22 2e 24 73 6f 6c 76 65 72 2d 3e 67 65 iteError("Analyzed.".$solver->ge
69ec0 74 52 75 6c 65 53 65 74 53 69 7a 65 28 29 2e 22 20 72 75 6c 65 73 20 74 6f 20 72 65 73 6f 6c 76 tRuleSetSize().".rules.to.resolv
69ee0 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 22 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 e.dependencies",.true,.IOInterfa
69f00 63 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 0a 0a 20 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 24 ce::VERBOSE);....$operations.=.$
69f20 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 44 65 76 50 61 63 6b 61 67 65 73 28 24 6c 6f 63 61 6c 52 this->processDevPackages($localR
69f40 65 70 6f 2c 20 24 70 6f 6f 6c 2c 20 24 70 6f 6c 69 63 79 2c 20 24 72 65 70 6f 73 69 74 6f 72 69 epo,.$pool,.$policy,.$repositori
69f60 65 73 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 6c 6f 63 6b 65 64 52 65 70 6f 73 es,.$installedRepo,.$lockedRepos
69f80 69 74 6f 72 79 2c 20 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 27 66 6f 72 63 65 2d 75 70 64 61 itory,.$withDevReqs,.'force-upda
69fa0 74 65 73 27 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 3b 0a 0a 0a 20 69 66 20 28 21 24 6f 70 65 tes',.$operations);....if.(!$ope
69fc0 72 61 74 69 6f 6e 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 rations).{.$this->io->writeError
69fe0 28 27 4e 6f 74 68 69 6e 67 20 74 6f 20 69 6e 73 74 61 6c 6c 20 6f 72 20 75 70 64 61 74 65 27 29 ('Nothing.to.install.or.update')
6a000 3b 0a 7d 0a 0a 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 6d 6f 76 65 50 6c ;.}..$operations.=.$this->movePl
6a020 75 67 69 6e 73 54 6f 46 72 6f 6e 74 28 24 6f 70 65 72 61 74 69 6f 6e 73 29 3b 0a 24 6f 70 65 72 uginsToFront($operations);.$oper
6a040 61 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 6d 6f 76 65 55 6e 69 6e 73 74 61 6c 6c 73 54 6f ations.=.$this->moveUninstallsTo
6a060 46 72 6f 6e 74 28 24 6f 70 65 72 61 74 69 6f 6e 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6f Front($operations);..foreach.($o
6a080 70 65 72 61 74 69 6f 6e 73 20 61 73 20 24 6f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 0a 20 69 66 20 perations.as.$operation).{...if.
6a0a0 28 27 69 6e 73 74 61 6c 6c 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f ('install'.===.$operation->getJo
6a0c0 62 54 79 70 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 bType()).{.$this->suggestedPacka
6a0e0 67 65 73 52 65 70 6f 72 74 65 72 2d 3e 61 64 64 53 75 67 67 65 73 74 69 6f 6e 73 46 72 6f 6d 50 gesReporter->addSuggestionsFromP
6a100 61 63 6b 61 67 65 28 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 29 ackage($operation->getPackage())
6a120 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 24 70 61 63 ;.}....if.($this->update).{.$pac
6a140 6b 61 67 65 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 27 75 70 64 61 74 65 27 20 3d 3d 3d 20 24 6f kage.=.null;.if.('update'.===.$o
6a160 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 29 20 7b 0a 24 70 61 63 6b 61 peration->getJobType()).{.$packa
6a180 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 ge.=.$operation->getTargetPackag
6a1a0 65 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 69 6e 73 74 61 6c 6c 27 20 3d 3d 3d 20 24 6f 70 e();.}.elseif.('install'.===.$op
6a1c0 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 eration->getJobType()).{.$packag
6a1e0 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d 0a e.=.$operation->getPackage();.}.
6a200 69 66 20 28 24 70 61 63 6b 61 67 65 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 if.($package.&&.$package->isDev(
6a220 29 29 20 7b 0a 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 )).{.$references.=.$this->packag
6a240 65 2d 3e 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 72 e->getReferences();.if.(isset($r
6a260 65 66 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 eferences[$package->getName()]))
6a280 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 .{.$package->setSourceReference(
6a2a0 24 72 65 66 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d $references[$package->getName()]
6a2c0 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 24 72 );.$package->setDistReference($r
6a2e0 65 66 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 3b eferences[$package->getName()]);
6a300 0a 7d 0a 7d 0a 69 66 20 28 27 75 70 64 61 74 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e .}.}.if.('update'.===.$operation
6a320 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 26 26 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 ->getJobType().&&.$operation->ge
6a340 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 69 73 44 65 76 28 29 0a 26 26 20 24 6f 70 tTargetPackage()->isDev().&&.$op
6a360 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 eration->getTargetPackage()->get
6a380 56 65 72 73 69 6f 6e 28 29 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 49 6e 69 Version().===.$operation->getIni
6a3a0 74 69 61 6c 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 0a 26 26 20 28 tialPackage()->getVersion().&&.(
6a3c0 21 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 2d !$operation->getTargetPackage()-
6a3e0 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 20 7c 7c 20 24 6f 70 65 72 61 74 >getSourceReference().||.$operat
6a400 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 53 6f 75 72 ion->getTargetPackage()->getSour
6a420 63 65 52 65 66 65 72 65 6e 63 65 28 29 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 ceReference().===.$operation->ge
6a440 74 49 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 tInitialPackage()->getSourceRefe
6a460 72 65 6e 63 65 28 29 29 0a 26 26 20 28 21 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 rence()).&&.(!$operation->getTar
6a480 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 getPackage()->getDistReference()
6a4a0 20 7c 7c 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 .||.$operation->getTargetPackage
6a4c0 28 29 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 20 3d 3d 3d 20 24 6f 70 65 72 ()->getDistReference().===.$oper
6a4e0 61 74 69 6f 6e 2d 3e 67 65 74 49 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 44 ation->getInitialPackage()->getD
6a500 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 29 0a 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 istReference()).).{.$this->io->w
6a520 72 69 74 65 45 72 72 6f 72 28 27 20 20 2d 20 53 6b 69 70 70 69 6e 67 20 75 70 64 61 74 65 20 6f riteError('..-.Skipping.update.o
6a540 66 20 27 2e 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 f.'..$operation->getTargetPackag
6a560 65 28 29 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 74 6f 20 74 68 65 20 73 61 e()->getPrettyName().'.to.the.sa
6a580 6d 65 20 72 65 66 65 72 65 6e 63 65 2d 6c 6f 63 6b 65 64 20 76 65 72 73 69 6f 6e 27 2c 20 74 72 me.reference-locked.version',.tr
6a5a0 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 24 74 68 69 73 2d 3e ue,.IOInterface::DEBUG);.$this->
6a5c0 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 io->writeError('',.true,.IOInter
6a5e0 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d 0a 0a 24 65 face::DEBUG);..continue;.}.}..$e
6a600 76 65 6e 74 20 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 50 61 63 6b 61 vent.=.'Composer\Installer\Packa
6a620 67 65 45 76 65 6e 74 73 3a 3a 50 52 45 5f 50 41 43 4b 41 47 45 5f 27 2e 73 74 72 74 6f 75 70 70 geEvents::PRE_PACKAGE_'.strtoupp
6a640 65 72 28 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 29 3b 0a 69 66 er($operation->getJobType());.if
6a660 20 28 64 65 66 69 6e 65 64 28 24 65 76 65 6e 74 29 20 26 26 20 24 74 68 69 73 2d 3e 72 75 6e 53 .(defined($event).&&.$this->runS
6a680 63 72 69 70 74 73 29 20 7b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 cripts).{.$this->eventDispatcher
6a6a0 2d 3e 64 69 73 70 61 74 63 68 50 61 63 6b 61 67 65 45 76 65 6e 74 28 63 6f 6e 73 74 61 6e 74 28 ->dispatchPackageEvent(constant(
6a6c0 24 65 76 65 6e 74 29 2c 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 2c 20 24 70 6f 6c 69 63 79 $event),.$this->devMode,.$policy
6a6e0 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 71 75 65 73 ,.$pool,.$installedRepo,.$reques
6a700 74 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 7d 0a 0a t,.$operations,.$operation);.}..
6a720 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d ..if.($this->dryRun.&&.false.===
6a740 20 73 74 72 70 6f 73 28 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 .strpos($operation->getJobType()
6a760 2c 20 27 41 6c 69 61 73 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 ,.'Alias')).{.$this->io->writeEr
6a780 72 6f 72 28 27 20 20 2d 20 27 20 2e 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 24 74 68 69 73 2d ror('..-.'...$operation);.$this-
6a7a0 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 >io->writeError('');.}.elseif.($
6a7c0 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d this->io->isDebug().&&.false.!==
6a7e0 20 73 74 72 70 6f 73 28 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 .strpos($operation->getJobType()
6a800 2c 20 27 41 6c 69 61 73 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 ,.'Alias')).{.$this->io->writeEr
6a820 72 6f 72 28 27 20 20 2d 20 27 20 2e 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 24 74 68 69 73 2d ror('..-.'...$operation);.$this-
6a840 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 >io->writeError('');.}..$this->i
6a860 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 65 78 65 63 75 74 65 28 24 6c 6f 63 nstallationManager->execute($loc
6a880 61 6c 52 65 70 6f 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 0a 0a 20 69 66 20 28 24 74 68 69 alRepo,.$operation);....if.($thi
6a8a0 73 2d 3e 76 65 72 62 6f 73 65 20 26 26 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 79 56 s->verbose.&&.$this->io->isVeryV
6a8c0 65 72 62 6f 73 65 28 29 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 6f 70 65 72 61 74 69 6f 6e 2d erbose().&&.in_array($operation-
6a8e0 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 2c 20 61 72 72 61 79 28 27 69 6e 73 74 61 6c 6c 27 2c 20 >getJobType(),.array('install',.
6a900 27 75 70 64 61 74 65 27 29 29 29 20 7b 0a 24 72 65 61 73 6f 6e 20 3d 20 24 6f 70 65 72 61 74 69 'update'))).{.$reason.=.$operati
6a920 6f 6e 2d 3e 67 65 74 52 65 61 73 6f 6e 28 29 3b 0a 69 66 20 28 24 72 65 61 73 6f 6e 20 69 6e 73 on->getReason();.if.($reason.ins
6a940 74 61 6e 63 65 6f 66 20 52 75 6c 65 29 20 7b 0a 73 77 69 74 63 68 20 28 24 72 65 61 73 6f 6e 2d tanceof.Rule).{.switch.($reason-
6a960 3e 67 65 74 52 65 61 73 6f 6e 28 29 29 20 7b 0a 63 61 73 65 20 52 75 6c 65 3a 3a 52 55 4c 45 5f >getReason()).{.case.Rule::RULE_
6a980 4a 4f 42 5f 49 4e 53 54 41 4c 4c 3a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 JOB_INSTALL:.$this->io->writeErr
6a9a0 6f 72 28 27 20 20 20 20 52 45 41 53 4f 4e 3a 20 52 65 71 75 69 72 65 64 20 62 79 20 74 68 65 20 or('....REASON:.Required.by.the.
6a9c0 72 6f 6f 74 20 70 61 63 6b 61 67 65 3a 20 27 2e 24 72 65 61 73 6f 6e 2d 3e 67 65 74 50 72 65 74 root.package:.'.$reason->getPret
6a9e0 74 79 53 74 72 69 6e 67 28 24 70 6f 6f 6c 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 tyString($pool));.$this->io->wri
6aa00 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 52 75 6c 65 3a 3a 52 teError('');.break;.case.Rule::R
6aa20 55 4c 45 5f 50 41 43 4b 41 47 45 5f 52 45 51 55 49 52 45 53 3a 0a 24 74 68 69 73 2d 3e 69 6f 2d ULE_PACKAGE_REQUIRES:.$this->io-
6aa40 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 52 45 41 53 4f 4e 3a 20 27 2e 24 72 65 61 73 >writeError('....REASON:.'.$reas
6aa60 6f 6e 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 6f 6f 6c 29 29 3b 0a 24 74 68 on->getPrettyString($pool));.$th
6aa80 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 62 72 65 61 6b 3b 0a 7d is->io->writeError('');.break;.}
6aaa0 0a 7d 0a 7d 0a 0a 24 65 76 65 6e 74 20 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c .}.}..$event.=.'Composer\Install
6aac0 65 72 5c 50 61 63 6b 61 67 65 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 50 41 43 4b 41 47 45 5f 27 er\PackageEvents::POST_PACKAGE_'
6aae0 2e 73 74 72 74 6f 75 70 70 65 72 28 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 .strtoupper($operation->getJobTy
6ab00 70 65 28 29 29 3b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 24 65 76 65 6e 74 29 20 26 26 20 24 74 pe());.if.(defined($event).&&.$t
6ab20 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 20 7b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 his->runScripts).{.$this->eventD
6ab40 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 50 61 63 6b 61 67 65 45 76 65 6e 74 28 ispatcher->dispatchPackageEvent(
6ab60 63 6f 6e 73 74 61 6e 74 28 24 65 76 65 6e 74 29 2c 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 constant($event),.$this->devMode
6ab80 2c 20 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f ,.$policy,.$pool,.$installedRepo
6aba0 2c 20 24 72 65 71 75 65 73 74 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 2c 20 24 6f 70 65 72 61 74 ,.$request,.$operations,.$operat
6abc0 69 6f 6e 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a 24 ion);.}..if.(!$this->dryRun).{.$
6abe0 6c 6f 63 61 6c 52 65 70 6f 2d 3e 77 72 69 74 65 28 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 74 localRepo->write();.}.}..if.(!$t
6ac00 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 his->dryRun).{...$this->processP
6ac20 61 63 6b 61 67 65 55 72 6c 73 28 24 70 6f 6f 6c 2c 20 24 70 6f 6c 69 63 79 2c 20 24 6c 6f 63 61 ackageUrls($pool,.$policy,.$loca
6ac40 6c 52 65 70 6f 2c 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 29 3b 0a 24 6c 6f 63 61 6c 52 65 70 lRepo,.$repositories);.$localRep
6ac60 6f 2d 3e 77 72 69 74 65 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a o->write();.}..return.0;.}......
6ac80 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6d 6f 76 65 50 6c .........private.function.movePl
6aca0 75 67 69 6e 73 54 6f 46 72 6f 6e 74 28 61 72 72 61 79 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 0a uginsToFront(array.$operations).
6acc0 7b 0a 24 69 6e 73 74 61 6c 6c 65 72 4f 70 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 {.$installerOps.=.array();.forea
6ace0 63 68 20 28 24 6f 70 65 72 61 74 69 6f 6e 73 20 61 73 20 24 69 64 78 20 3d 3e 20 24 6f 70 29 20 ch.($operations.as.$idx.=>.$op).
6ad00 7b 0a 69 66 20 28 24 6f 70 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 73 74 61 6c 6c 4f 70 65 72 {.if.($op.instanceof.InstallOper
6ad20 61 74 69 6f 6e 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 2d 3e 67 65 74 50 61 63 6b ation).{.$package.=.$op->getPack
6ad40 61 67 65 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6f 70 20 69 6e 73 74 61 6e 63 65 6f 66 20 age();.}.elseif.($op.instanceof.
6ad60 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f UpdateOperation).{.$package.=.$o
6ad80 70 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a p->getTargetPackage();.}.else.{.
6ada0 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 79 continue;.}..if.($package->getTy
6adc0 70 65 28 29 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 27 20 7c 7c 20 24 70 pe().===.'composer-plugin'.||.$p
6ade0 61 63 6b 61 67 65 2d 3e 67 65 74 54 79 70 65 28 29 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2d ackage->getType().===.'composer-
6ae00 69 6e 73 74 61 6c 6c 65 72 27 29 20 7b 0a 0a 20 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 installer').{...$requires.=.arra
6ae20 79 5f 6b 65 79 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 29 3b y_keys($package->getRequires());
6ae40 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 69 6e 64 65 78 20 3d 3e .foreach.($requires.as.$index.=>
6ae60 20 24 72 65 71 29 20 7b 0a 69 66 20 28 24 72 65 71 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2d .$req).{.if.($req.===.'composer-
6ae80 70 6c 75 67 69 6e 2d 61 70 69 27 20 7c 7c 20 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 74 66 6f plugin-api'.||.preg_match(Platfo
6aea0 72 6d 52 65 70 6f 73 69 74 6f 72 79 3a 3a 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 rmRepository::PLATFORM_PACKAGE_R
6aec0 45 47 45 58 2c 20 24 72 65 71 29 29 20 7b 0a 75 6e 73 65 74 28 24 72 65 71 75 69 72 65 73 5b 24 EGEX,.$req)).{.unset($requires[$
6aee0 69 6e 64 65 78 5d 29 3b 0a 7d 0a 7d 0a 0a 20 69 66 20 28 21 63 6f 75 6e 74 28 24 72 65 71 75 69 index]);.}.}...if.(!count($requi
6af00 72 65 73 29 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 72 4f 70 73 5b 5d 20 3d 20 24 6f 70 3b 0a 75 res)).{.$installerOps[].=.$op;.u
6af20 6e 73 65 74 28 24 6f 70 65 72 61 74 69 6f 6e 73 5b 24 69 64 78 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a nset($operations[$idx]);.}.}.}..
6af40 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 69 6e 73 74 61 6c 6c 65 72 4f 70 73 return.array_merge($installerOps
6af60 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 ,.$operations);.}.........privat
6af80 65 20 66 75 6e 63 74 69 6f 6e 20 6d 6f 76 65 55 6e 69 6e 73 74 61 6c 6c 73 54 6f 46 72 6f 6e 74 e.function.moveUninstallsToFront
6afa0 28 61 72 72 61 79 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 0a 7b 0a 24 75 6e 69 6e 73 74 4f 70 73 (array.$operations).{.$uninstOps
6afc0 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6f 70 65 72 61 74 69 6f 6e 73 .=.array();.foreach.($operations
6afe0 20 61 73 20 24 69 64 78 20 3d 3e 20 24 6f 70 29 20 7b 0a 69 66 20 28 24 6f 70 20 69 6e 73 74 61 .as.$idx.=>.$op).{.if.($op.insta
6b000 6e 63 65 6f 66 20 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 24 75 6e 69 nceof.UninstallOperation).{.$uni
6b020 6e 73 74 4f 70 73 5b 5d 20 3d 20 24 6f 70 3b 0a 75 6e 73 65 74 28 24 6f 70 65 72 61 74 69 6f 6e nstOps[].=.$op;.unset($operation
6b040 73 5b 24 69 64 78 5d 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 65 72 67 s[$idx]);.}.}..return.array_merg
6b060 65 28 24 75 6e 69 6e 73 74 4f 70 73 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a e($uninstOps,.$operations);.}...
6b080 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 50 6f 6f 6c 28 ....private.function.createPool(
6b0a0 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 $withDevReqs,.RepositoryInterfac
6b0c0 65 20 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 e.$lockedRepository.=.null).{.if
6b0e0 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 .($this->update).{.$minimumStabi
6b100 6c 69 74 79 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 4d 69 6e 69 6d 75 lity.=.$this->package->getMinimu
6b120 6d 53 74 61 62 69 6c 69 74 79 28 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 mStability();.$stabilityFlags.=.
6b140 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 $this->package->getStabilityFlag
6b160 73 28 29 3b 0a 0a 24 72 65 71 75 69 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 s();..$requires.=.$this->package
6b180 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 69 66 20 28 24 77 69 74 68 44 65 76 52 65 71 ->getRequires();.if.($withDevReq
6b1a0 73 29 20 7b 0a 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 s).{.$requires.=.array_merge($re
6b1c0 71 75 69 72 65 73 2c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 65 quires,.$this->package->getDevRe
6b1e0 71 75 69 72 65 73 28 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d 69 6e 69 6d 75 6d 53 74 quires());.}.}.else.{.$minimumSt
6b200 61 62 69 6c 69 74 79 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 4d 69 6e 69 ability.=.$this->locker->getMini
6b220 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 mumStability();.$stabilityFlags.
6b240 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 =.$this->locker->getStabilityFla
6b260 67 73 28 29 3b 0a 0a 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 gs();..$requires.=.array();.fore
6b280 61 63 68 20 28 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 2d 3e 67 65 74 50 61 63 6b 61 ach.($lockedRepository->getPacka
6b2a0 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 ges().as.$package).{.$constraint
6b2c0 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 70 61 63 6b 61 67 65 2d .=.new.Constraint('=',.$package-
6b2e0 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 73 65 74 >getVersion());.$constraint->set
6b300 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 PrettyString($package->getPretty
6b320 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 72 65 71 75 69 72 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e Version());.$requires[$package->
6b340 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 7d 0a 0a 24 getName()].=.$constraint;.}.}..$
6b360 72 6f 6f 74 43 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 rootConstraints.=.array();.forea
6b380 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 20 3d 3e 20 24 63 6f 6e 73 74 72 ch.($requires.as.$req.=>.$constr
6b3a0 61 69 6e 74 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 50 6c 61 74 66 aint).{...if.($this->ignorePlatf
6b3c0 6f 72 6d 52 65 71 73 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 74 66 6f 72 6d 52 65 ormReqs.&&.preg_match(PlatformRe
6b3e0 70 6f 73 69 74 6f 72 79 3a 3a 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 pository::PLATFORM_PACKAGE_REGEX
6b400 2c 20 24 72 65 71 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 24 63 6f 6e 73 ,.$req)).{.continue;.}.if.($cons
6b420 74 72 61 69 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 4c 69 6e 6b 29 20 7b 0a 24 72 6f 6f 74 43 traint.instanceof.Link).{.$rootC
6b440 6f 6e 73 74 72 61 69 6e 74 73 5b 24 72 65 71 5d 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e onstraints[$req].=.$constraint->
6b460 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 6f 6f 74 43 getConstraint();.}.else.{.$rootC
6b480 6f 6e 73 74 72 61 69 6e 74 73 5b 24 72 65 71 5d 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a onstraints[$req].=.$constraint;.
6b4a0 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 6f 6f 6c 28 24 6d 69 6e 69 6d 75 6d 53 74 61 }.}..return.new.Pool($minimumSta
6b4c0 62 69 6c 69 74 79 2c 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 2c 20 24 72 6f 6f 74 43 6f bility,.$stabilityFlags,.$rootCo
6b4e0 6e 73 74 72 61 69 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 nstraints);.}.....private.functi
6b500 6f 6e 20 63 72 65 61 74 65 50 6f 6c 69 63 79 28 29 0a 7b 0a 24 70 72 65 66 65 72 53 74 61 62 6c on.createPolicy().{.$preferStabl
6b520 65 20 3d 20 6e 75 6c 6c 3b 0a 24 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 6e 75 6c 6c 3b 0a e.=.null;.$preferLowest.=.null;.
6b540 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 24 70 72 65 66 65 72 53 74 61 if.(!$this->update).{.$preferSta
6b560 62 6c 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 50 72 65 66 65 72 53 74 ble.=.$this->locker->getPreferSt
6b580 61 62 6c 65 28 29 3b 0a 24 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 24 74 68 69 73 2d 3e 6c able();.$preferLowest.=.$this->l
6b5a0 6f 63 6b 65 72 2d 3e 67 65 74 50 72 65 66 65 72 4c 6f 77 65 73 74 28 29 3b 0a 7d 0a 0a 20 0a 20 ocker->getPreferLowest();.}.....
6b5c0 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 70 72 65 66 65 72 53 74 61 62 6c 65 29 20 7b 0a 24 70 if.(null.===.$preferStable).{.$p
6b5e0 72 65 66 65 72 53 74 61 62 6c 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 74 61 62 6c referStable.=.$this->preferStabl
6b600 65 20 7c 7c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 66 65 72 53 74 e.||.$this->package->getPreferSt
6b620 61 62 6c 65 28 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 70 72 65 66 65 72 4c 6f able();.}.if.(null.===.$preferLo
6b640 77 65 73 74 29 20 7b 0a 24 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 24 74 68 69 73 2d 3e 70 west).{.$preferLowest.=.$this->p
6b660 72 65 66 65 72 4c 6f 77 65 73 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 44 65 66 61 75 referLowest;.}..return.new.Defau
6b680 6c 74 50 6f 6c 69 63 79 28 24 70 72 65 66 65 72 53 74 61 62 6c 65 2c 20 24 70 72 65 66 65 72 4c ltPolicy($preferStable,.$preferL
6b6a0 6f 77 65 73 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e owest);.}.......private.function
6b6c0 20 63 72 65 61 74 65 52 65 71 75 65 73 74 28 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 .createRequest(RootPackageInterf
6b6e0 61 63 65 20 24 72 6f 6f 74 50 61 63 6b 61 67 65 2c 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 ace.$rootPackage,.PlatformReposi
6b700 74 6f 72 79 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 29 0a 7b 0a 24 72 65 71 75 65 73 74 20 3d tory.$platformRepo).{.$request.=
6b720 20 6e 65 77 20 52 65 71 75 65 73 74 28 29 3b 0a 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e .new.Request();..$constraint.=.n
6b740 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 72 6f 6f 74 50 61 63 6b 61 67 65 2d ew.Constraint('=',.$rootPackage-
6b760 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 73 65 74 >getVersion());.$constraint->set
6b780 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 72 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 PrettyString($rootPackage->getPr
6b7a0 65 74 74 79 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 61 6c ettyVersion());.$request->instal
6b7c0 6c 28 24 72 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6e 73 l($rootPackage->getName(),.$cons
6b7e0 74 72 61 69 6e 74 29 3b 0a 0a 24 66 69 78 65 64 50 61 63 6b 61 67 65 73 20 3d 20 24 70 6c 61 74 traint);..$fixedPackages.=.$plat
6b800 66 6f 72 6d 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 69 66 20 28 24 74 68 formRepo->getPackages();.if.($th
6b820 69 73 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 is->additionalInstalledRepositor
6b840 79 29 20 7b 0a 24 61 64 64 69 74 69 6f 6e 61 6c 46 69 78 65 64 50 61 63 6b 61 67 65 73 20 3d 20 y).{.$additionalFixedPackages.=.
6b860 24 74 68 69 73 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 $this->additionalInstalledReposi
6b880 74 6f 72 79 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 24 66 69 78 65 64 50 61 63 6b 61 tory->getPackages();.$fixedPacka
6b8a0 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 66 69 78 65 64 50 61 63 6b 61 67 65 73 ges.=.array_merge($fixedPackages
6b8c0 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 46 69 78 65 64 50 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a ,.$additionalFixedPackages);.}..
6b8e0 0a 20 0a 20 24 70 72 6f 76 69 64 65 64 20 3d 20 24 72 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 67 65 ....$provided.=.$rootPackage->ge
6b900 74 50 72 6f 76 69 64 65 73 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 78 65 64 50 61 63 6b tProvides();.foreach.($fixedPack
6b920 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 ages.as.$package).{.$constraint.
6b940 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e =.new.Constraint('=',.$package->
6b960 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 73 65 74 50 getVersion());.$constraint->setP
6b980 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 rettyString($package->getPrettyV
6b9a0 65 72 73 69 6f 6e 28 29 29 3b 0a 0a 0a 20 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 ersion());....if.($package->getR
6b9c0 65 70 6f 73 69 74 6f 72 79 28 29 20 21 3d 3d 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 0a 7c 7c epository().!==.$platformRepo.||
6b9e0 20 21 69 73 73 65 74 28 24 70 72 6f 76 69 64 65 64 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e .!isset($provided[$package->getN
6ba00 61 6d 65 28 29 5d 29 0a 7c 7c 20 21 24 70 72 6f 76 69 64 65 64 5b 24 70 61 63 6b 61 67 65 2d 3e ame()]).||.!$provided[$package->
6ba20 67 65 74 4e 61 6d 65 28 29 5d 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 2d 3e 6d 61 74 getName()]->getConstraint()->mat
6ba40 63 68 65 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 29 20 7b 0a 24 72 65 71 75 65 73 74 2d 3e ches($constraint).).{.$request->
6ba60 66 69 78 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6e 73 74 72 fix($package->getName(),.$constr
6ba80 61 69 6e 74 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 71 75 65 73 74 3b 0a 7d 0a 0a aint);.}.}..return.$request;.}..
6baa0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f ............private.function.pro
6bac0 63 65 73 73 44 65 76 50 61 63 6b 61 67 65 73 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 70 6f 6f cessDevPackages($localRepo,.$poo
6bae0 6c 2c 20 24 70 6f 6c 69 63 79 2c 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 24 69 6e 73 74 l,.$policy,.$repositories,.$inst
6bb00 61 6c 6c 65 64 52 65 70 6f 2c 20 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 2c 20 24 77 alledRepo,.$lockedRepository,.$w
6bb20 69 74 68 44 65 76 52 65 71 73 2c 20 24 74 61 73 6b 2c 20 61 72 72 61 79 20 24 6f 70 65 72 61 74 ithDevReqs,.$task,.array.$operat
6bb40 69 6f 6e 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f ions.=.null).{.if.($task.===.'fo
6bb60 72 63 65 2d 75 70 64 61 74 65 73 27 20 26 26 20 6e 75 6c 6c 20 3d 3d 3d 20 24 6f 70 65 72 61 74 rce-updates'.&&.null.===.$operat
6bb80 69 6f 6e 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 ions).{.throw.new.\InvalidArgume
6bba0 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 4d 69 73 73 69 6e 67 20 6f 70 65 72 61 74 69 6f 6e 73 20 ntException('Missing.operations.
6bbc0 61 72 67 75 6d 65 6e 74 27 29 3b 0a 7d 0a 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f 72 argument');.}.if.($task.===.'for
6bbe0 63 65 2d 6c 69 6e 6b 73 27 29 20 7b 0a 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 ce-links').{.$operations.=.array
6bc00 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 26 26 20 24 74 68 69 ();.}..if.($this->update.&&.$thi
6bc20 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 29 20 7b 0a 24 63 75 72 72 65 6e 74 50 61 s->updateWhitelist).{.$currentPa
6bc40 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 75 72 72 65 6e 74 50 61 63 6b 61 67 ckages.=.$this->getCurrentPackag
6bc60 65 73 28 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 es($withDevReqs,.$installedRepo)
6bc80 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 65 74 43 61 6e ;.}..foreach.($localRepo->getCan
6bca0 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a onicalPackages().as.$package).{.
6bcc0 0a 20 69 66 20 28 21 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 29 20 7b 0a 63 6f 6e 74 ..if.(!$package->isDev()).{.cont
6bce0 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 6f 70 65 72 61 74 69 6f 6e 73 20 inue;.}....foreach.($operations.
6bd00 61 73 20 24 6f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 69 66 20 28 28 27 75 70 64 61 74 65 27 20 3d as.$operation).{.if.(('update'.=
6bd20 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 20 26 26 20 24 ==.$operation->getJobType().&&.$
6bd40 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 49 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 28 29 2d 3e operation->getInitialPackage()->
6bd60 65 71 75 61 6c 73 28 24 70 61 63 6b 61 67 65 29 29 0a 7c 7c 20 28 27 75 6e 69 6e 73 74 61 6c 6c equals($package)).||.('uninstall
6bd80 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 20 26 '.===.$operation->getJobType().&
6bda0 26 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 65 71 75 61 &.$operation->getPackage()->equa
6bdc0 6c 73 28 24 70 61 63 6b 61 67 65 29 29 0a 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 20 32 3b 0a 7d 0a ls($package)).).{.continue.2;.}.
6bde0 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 0a 20 69 66 20 28 24 74 }..if.($this->update).{...if.($t
6be00 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 26 26 20 21 24 74 68 69 73 2d 3e his->updateWhitelist.&&.!$this->
6be20 69 73 55 70 64 61 74 65 61 62 6c 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 0a 20 66 6f 72 65 isUpdateable($package)).{...fore
6be40 61 63 68 20 28 24 63 75 72 72 65 6e 74 50 61 63 6b 61 67 65 73 20 61 73 20 24 63 75 72 50 61 63 ach.($currentPackages.as.$curPac
6be60 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 kage).{.if.($curPackage->isDev()
6be80 20 26 26 20 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d 20 24 .&&.$curPackage->getName().===.$
6bea0 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 26 26 20 24 63 75 72 50 61 63 6b 61 67 package->getName().&&.$curPackag
6bec0 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 e->getVersion().===.$package->ge
6bee0 74 56 65 72 73 69 6f 6e 28 29 29 20 7b 0a 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f 72 tVersion()).{.if.($task.===.'for
6bf00 63 65 2d 6c 69 6e 6b 73 27 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 71 75 69 72 ce-links').{.$package->setRequir
6bf20 65 73 28 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 29 3b 0a es($curPackage->getRequires());.
6bf40 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 24 63 75 72 50 61 63 6b 61 $package->setConflicts($curPacka
6bf60 67 65 2d 3e 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 ge->getConflicts());.$package->s
6bf80 65 74 50 72 6f 76 69 64 65 73 28 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 6f 76 69 etProvides($curPackage->getProvi
6bfa0 64 65 73 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 70 6c 61 63 65 73 28 24 63 des());.$package->setReplaces($c
6bfc0 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 29 3b 0a 7d 20 65 6c 73 urPackage->getReplaces());.}.els
6bfe0 65 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f 72 63 65 2d 75 70 64 61 74 65 73 27 29 20 eif.($task.===.'force-updates').
6c000 7b 0a 69 66 20 28 28 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 {.if.(($curPackage->getSourceRef
6c020 65 72 65 6e 63 65 28 29 20 26 26 20 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 erence().&&.$curPackage->getSour
6c040 63 65 52 65 66 65 72 65 6e 63 65 28 29 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 ceReference().!==.$package->getS
6c060 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 0a 7c 7c 20 28 24 63 75 72 50 61 63 6b 61 67 ourceReference()).||.($curPackag
6c080 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 20 26 26 20 24 63 75 72 50 61 63 e->getDistReference().&&.$curPac
6c0a0 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 20 21 3d 3d 20 24 70 61 kage->getDistReference().!==.$pa
6c0c0 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 29 0a 29 20 7b 0a 24 ckage->getDistReference()).).{.$
6c0e0 6f 70 65 72 61 74 69 6f 6e 73 5b 5d 20 3d 20 6e 65 77 20 55 70 64 61 74 65 4f 70 65 72 61 74 69 operations[].=.new.UpdateOperati
6c100 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 63 75 72 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a on($package,.$curPackage);.}.}..
6c120 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 24 6d 61 74 63 break;.}.}..continue;.}....$matc
6c140 68 65 73 20 3d 20 24 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 70 61 63 6b 61 hes.=.$pool->whatProvides($packa
6c160 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d ge->getName(),.new.Constraint('=
6c180 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 29 3b 0a 66 6f 72 ',.$package->getVersion()));.for
6c1a0 65 61 63 68 20 28 24 6d 61 74 63 68 65 73 20 61 73 20 24 69 6e 64 65 78 20 3d 3e 20 24 6d 61 74 each.($matches.as.$index.=>.$mat
6c1c0 63 68 29 20 7b 0a 0a 20 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 6d 61 74 63 68 2d 3e 67 65 ch).{...if.(!in_array($match->ge
6c1e0 74 52 65 70 6f 73 69 74 6f 72 79 28 29 2c 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 tRepository(),.$repositories,.tr
6c200 75 65 29 29 20 7b 0a 75 6e 73 65 74 28 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 29 3b 0a ue)).{.unset($matches[$index]);.
6c220 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 6d 61 74 63 68 2d 3e 67 65 74 4e 61 continue;.}....if.($match->getNa
6c240 6d 65 28 29 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a me().!==.$package->getName()).{.
6c260 75 6e 73 65 74 28 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 29 3b 0a 63 6f 6e 74 69 6e 75 unset($matches[$index]);.continu
6c280 65 3b 0a 7d 0a 0a 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 20 3d 20 24 6d 61 74 63 68 2d e;.}..$matches[$index].=.$match-
6c2a0 3e 67 65 74 49 64 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 6d 61 74 63 68 65 73 20 26 26 20 24 >getId();.}....if.($matches.&&.$
6c2c0 6d 61 74 63 68 65 73 20 3d 20 24 70 6f 6c 69 63 79 2d 3e 73 65 6c 65 63 74 50 72 65 66 65 72 72 matches.=.$policy->selectPreferr
6c2e0 65 64 50 61 63 6b 61 67 65 73 28 24 70 6f 6f 6c 2c 20 61 72 72 61 79 28 29 2c 20 24 6d 61 74 63 edPackages($pool,.array(),.$matc
6c300 68 65 73 29 29 20 7b 0a 24 6e 65 77 50 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 hes)).{.$newPackage.=.$pool->lit
6c320 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6d 61 74 63 68 65 73 5b 30 5d 29 3b 0a 0a 69 66 20 eralToPackage($matches[0]);..if.
6c340 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f 72 63 65 2d 6c 69 6e 6b 73 27 20 26 26 20 24 6e 65 77 ($task.===.'force-links'.&&.$new
6c360 50 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 71 75 69 72 65 73 Package).{.$package->setRequires
6c380 28 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 29 3b 0a 24 70 ($newPackage->getRequires());.$p
6c3a0 61 63 6b 61 67 65 2d 3e 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 24 6e 65 77 50 61 63 6b 61 67 65 ackage->setConflicts($newPackage
6c3c0 2d 3e 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 ->getConflicts());.$package->set
6c3e0 50 72 6f 76 69 64 65 73 28 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 6f 76 69 64 65 Provides($newPackage->getProvide
6c400 73 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 70 6c 61 63 65 73 28 24 6e 65 77 s());.$package->setReplaces($new
6c420 50 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 29 3b 0a 7d 0a 0a 69 66 20 28 Package->getReplaces());.}..if.(
6c440 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f 72 63 65 2d 75 70 64 61 74 65 73 27 20 26 26 20 24 6e 65 $task.===.'force-updates'.&&.$ne
6c460 77 50 61 63 6b 61 67 65 20 26 26 20 28 0a 28 28 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 wPackage.&&.(.(($newPackage->get
6c480 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 20 26 26 20 24 6e 65 77 50 61 63 6b 61 67 65 SourceReference().&&.$newPackage
6c4a0 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 20 21 3d 3d 20 24 70 61 63 6b ->getSourceReference().!==.$pack
6c4c0 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 0a 7c 7c 20 28 24 age->getSourceReference()).||.($
6c4e0 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 20 26 newPackage->getDistReference().&
6c500 26 20 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 &.$newPackage->getDistReference(
6c520 29 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 ).!==.$package->getDistReference
6c540 28 29 29 0a 29 0a 29 29 20 7b 0a 24 6f 70 65 72 61 74 69 6f 6e 73 5b 5d 20 3d 20 6e 65 77 20 55 ()).).)).{.$operations[].=.new.U
6c560 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 6e 65 77 50 61 63 pdateOperation($package,.$newPac
6c580 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f 72 63 65 kage);.}.}..if.($task.===.'force
6c5a0 2d 75 70 64 61 74 65 73 27 29 20 7b 0a 0a 20 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 24 74 68 -updates').{...$references.=.$th
6c5c0 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 29 3b 0a 0a 69 is->package->getReferences();..i
6c5e0 66 20 28 69 73 73 65 74 28 24 72 65 66 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 f.(isset($references[$package->g
6c600 65 74 4e 61 6d 65 28 29 5d 29 20 26 26 20 24 72 65 66 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 etName()]).&&.$references[$packa
6c620 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 ge->getName()].!==.$package->get
6c640 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 20 7b 0a 0a 20 24 6f 70 65 72 61 74 69 6f SourceReference()).{...$operatio
6c660 6e 73 5b 5d 20 3d 20 6e 65 77 20 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b ns[].=.new.UpdateOperation($pack
6c680 61 67 65 2c 20 63 6c 6f 6e 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 age,.clone.$package);.}.}.}.else
6c6a0 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 2d .{...foreach.($lockedRepository-
6c6c0 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 >findPackages($package->getName(
6c6e0 29 29 20 61 73 20 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 6c 6f 63 )).as.$lockedPackage).{.if.($loc
6c700 6b 65 64 50 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 20 26 26 20 24 6c 6f 63 6b 65 64 50 61 kedPackage->isDev().&&.$lockedPa
6c720 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 ckage->getVersion().===.$package
6c740 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 20 7b 0a 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 ->getVersion()).{.if.($task.===.
6c760 27 66 6f 72 63 65 2d 6c 69 6e 6b 73 27 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 'force-links').{.$package->setRe
6c780 71 75 69 72 65 73 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 quires($lockedPackage->getRequir
6c7a0 65 73 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 24 6c es());.$package->setConflicts($l
6c7c0 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 29 3b 0a 24 ockedPackage->getConflicts());.$
6c7e0 70 61 63 6b 61 67 65 2d 3e 73 65 74 50 72 6f 76 69 64 65 73 28 24 6c 6f 63 6b 65 64 50 61 63 6b package->setProvides($lockedPack
6c800 61 67 65 2d 3e 67 65 74 50 72 6f 76 69 64 65 73 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 age->getProvides());.$package->s
6c820 65 74 52 65 70 6c 61 63 65 73 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 etReplaces($lockedPackage->getRe
6c840 70 6c 61 63 65 73 28 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 places());.}.elseif.($task.===.'
6c860 66 6f 72 63 65 2d 75 70 64 61 74 65 73 27 29 20 7b 0a 69 66 20 28 28 24 6c 6f 63 6b 65 64 50 61 force-updates').{.if.(($lockedPa
6c880 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 20 26 26 20 24 ckage->getSourceReference().&&.$
6c8a0 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 lockedPackage->getSourceReferenc
6c8c0 65 28 29 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 e().!==.$package->getSourceRefer
6c8e0 65 6e 63 65 28 29 29 0a 7c 7c 20 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 44 ence()).||.($lockedPackage->getD
6c900 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 20 26 26 20 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 istReference().&&.$lockedPackage
6c920 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 20 21 3d 3d 20 24 70 61 63 6b 61 67 ->getDistReference().!==.$packag
6c940 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 29 0a 29 20 7b 0a 24 6f 70 65 72 e->getDistReference()).).{.$oper
6c960 61 74 69 6f 6e 73 5b 5d 20 3d 20 6e 65 77 20 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 28 24 ations[].=.new.UpdateOperation($
6c980 70 61 63 6b 61 67 65 2c 20 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 62 package,.$lockedPackage);.}.}..b
6c9a0 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f 70 65 72 61 74 69 6f 6e reak;.}.}.}.}..return.$operation
6c9c0 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 s;.}........private.function.get
6c9e0 43 75 72 72 65 6e 74 50 61 63 6b 61 67 65 73 28 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 24 69 CurrentPackages($withDevReqs,.$i
6ca00 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 nstalledRepo).{.if.($this->locke
6ca20 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 r->isLocked()).{.try.{.return.$t
6ca40 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 4c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 his->locker->getLockedRepository
6ca60 28 24 77 69 74 68 44 65 76 52 65 71 73 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 7d ($withDevReqs)->getPackages();.}
6ca80 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a .catch.(\RuntimeException.$e).{.
6caa0 0a 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 4c 6f 63 6b 65 ..return.$this->locker->getLocke
6cac0 64 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 7d 0a dRepository()->getPackages();.}.
6cae0 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 67 65 74 50 61 63 }..return.$installedRepo->getPac
6cb00 6b 61 67 65 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 kages();.}.....private.function.
6cb20 67 65 74 52 6f 6f 74 41 6c 69 61 73 65 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 75 70 getRootAliases().{.if.($this->up
6cb40 64 61 74 65 29 20 7b 0a 24 61 6c 69 61 73 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 date).{.$aliases.=.$this->packag
6cb60 65 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 6c 69 61 73 e->getAliases();.}.else.{.$alias
6cb80 65 73 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 es.=.$this->locker->getAliases()
6cba0 3b 0a 7d 0a 0a 24 6e 6f 72 6d 61 6c 69 7a 65 64 41 6c 69 61 73 65 73 20 3d 20 61 72 72 61 79 28 ;.}..$normalizedAliases.=.array(
6cbc0 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 6c 69 61 73 65 73 20 61 73 20 24 61 6c 69 61 73 29 );..foreach.($aliases.as.$alias)
6cbe0 20 7b 0a 24 6e 6f 72 6d 61 6c 69 7a 65 64 41 6c 69 61 73 65 73 5b 24 61 6c 69 61 73 5b 27 70 61 .{.$normalizedAliases[$alias['pa
6cc00 63 6b 61 67 65 27 5d 5d 5b 24 61 6c 69 61 73 5b 27 76 65 72 73 69 6f 6e 27 5d 5d 20 3d 20 61 72 ckage']][$alias['version']].=.ar
6cc20 72 61 79 28 0a 27 61 6c 69 61 73 27 20 3d 3e 20 24 61 6c 69 61 73 5b 27 61 6c 69 61 73 27 5d 2c ray(.'alias'.=>.$alias['alias'],
6cc40 0a 27 61 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 20 3d 3e 20 24 61 6c 69 61 73 5b 27 61 .'alias_normalized'.=>.$alias['a
6cc60 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2c 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 lias_normalized'],.);.}..return.
6cc80 24 6e 6f 72 6d 61 6c 69 7a 65 64 41 6c 69 61 73 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 $normalizedAliases;.}........pri
6cca0 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 50 61 63 6b 61 67 65 55 72 6c 73 vate.function.processPackageUrls
6ccc0 28 24 70 6f 6f 6c 2c 20 24 70 6f 6c 69 63 79 2c 20 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 72 65 ($pool,.$policy,.$localRepo,.$re
6cce0 70 6f 73 69 74 6f 72 69 65 73 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 positories).{.if.(!$this->update
6cd00 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 61 6c 52 65 ).{.return;.}..foreach.($localRe
6cd20 70 6f 2d 3e 67 65 74 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 po->getCanonicalPackages().as.$p
6cd40 61 63 6b 61 67 65 29 20 7b 0a 0a 20 24 6d 61 74 63 68 65 73 20 3d 20 24 70 6f 6f 6c 2d 3e 77 68 ackage).{...$matches.=.$pool->wh
6cd60 61 74 50 72 6f 76 69 64 65 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 atProvides($package->getName(),.
6cd80 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 new.Constraint('=',.$package->ge
6cda0 74 56 65 72 73 69 6f 6e 28 29 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 68 65 73 20 tVersion()));.foreach.($matches.
6cdc0 61 73 20 24 69 6e 64 65 78 20 3d 3e 20 24 6d 61 74 63 68 29 20 7b 0a 0a 20 69 66 20 28 21 69 6e as.$index.=>.$match).{...if.(!in
6cde0 5f 61 72 72 61 79 28 24 6d 61 74 63 68 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 2c 20 _array($match->getRepository(),.
6ce00 24 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 29 29 20 7b 0a 75 6e 73 65 74 28 24 6d $repositories,.true)).{.unset($m
6ce20 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 atches[$index]);.continue;.}....
6ce40 69 66 20 28 24 6d 61 74 63 68 2d 3e 67 65 74 4e 61 6d 65 28 29 20 21 3d 3d 20 24 70 61 63 6b 61 if.($match->getName().!==.$packa
6ce60 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 75 6e 73 65 74 28 24 6d 61 74 63 68 65 73 5b ge->getName()).{.unset($matches[
6ce80 24 69 6e 64 65 78 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6d 61 74 63 68 65 73 5b $index]);.continue;.}..$matches[
6cea0 24 69 6e 64 65 78 5d 20 3d 20 24 6d 61 74 63 68 2d 3e 67 65 74 49 64 28 29 3b 0a 7d 0a 0a 0a 20 $index].=.$match->getId();.}....
6cec0 69 66 20 28 24 6d 61 74 63 68 65 73 20 26 26 20 24 6d 61 74 63 68 65 73 20 3d 20 24 70 6f 6c 69 if.($matches.&&.$matches.=.$poli
6cee0 63 79 2d 3e 73 65 6c 65 63 74 50 72 65 66 65 72 72 65 64 50 61 63 6b 61 67 65 73 28 24 70 6f 6f cy->selectPreferredPackages($poo
6cf00 6c 2c 20 61 72 72 61 79 28 29 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 24 6e 65 77 50 61 63 l,.array(),.$matches)).{.$newPac
6cf20 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 kage.=.$pool->literalToPackage($
6cf40 6d 61 74 63 68 65 73 5b 30 5d 29 3b 0a 0a 0a 20 24 73 6f 75 72 63 65 55 72 6c 20 3d 20 24 70 61 matches[0]);....$sourceUrl.=.$pa
6cf60 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 24 6e 65 77 53 6f 75 72 63 ckage->getSourceUrl();.$newSourc
6cf80 65 55 72 6c 20 3d 20 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c eUrl.=.$newPackage->getSourceUrl
6cfa0 28 29 3b 0a 0a 69 66 20 28 24 73 6f 75 72 63 65 55 72 6c 20 21 3d 3d 20 24 6e 65 77 53 6f 75 72 ();..if.($sourceUrl.!==.$newSour
6cfc0 63 65 55 72 6c 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 54 79 70 65 ceUrl).{.$package->setSourceType
6cfe0 28 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 29 3b 0a ($newPackage->getSourceType());.
6d000 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 55 72 6c 28 24 6e 65 77 53 6f 75 72 63 $package->setSourceUrl($newSourc
6d020 65 55 72 6c 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 eUrl);.$package->setSourceRefere
6d040 6e 63 65 28 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 nce($newPackage->getSourceRefere
6d060 6e 63 65 28 29 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b nce());.}......if.(preg_match('{
6d080 5e 68 74 74 70 73 3f 3a 2f 2f 28 3f 3a 28 3f 3a 77 77 77 5c 2e 29 3f 62 69 74 62 75 63 6b 65 74 ^https?://(?:(?:www\.)?bitbucket
6d0a0 5c 2e 6f 72 67 7c 28 61 70 69 5c 2e 29 3f 67 69 74 68 75 62 5c 2e 63 6f 6d 29 2f 7d 27 2c 20 24 \.org|(api\.)?github\.com)/}',.$
6d0c0 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 29 29 20 7b 0a 24 70 61 newPackage->getDistUrl())).{.$pa
6d0e0 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 55 72 6c 28 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 ckage->setDistUrl($newPackage->g
6d100 65 74 44 69 73 74 55 72 6c 28 29 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 76 61 etDistUrl());.}.}.}.}......priva
6d120 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 6c 69 61 73 50 6c 61 74 66 6f 72 6d 50 61 63 6b 61 67 65 te.function.aliasPlatformPackage
6d140 73 28 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 20 24 70 6c 61 74 66 6f 72 6d 52 65 s(PlatformRepository.$platformRe
6d160 70 6f 2c 20 24 61 6c 69 61 73 65 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 6c 69 61 73 65 po,.$aliases).{.foreach.($aliase
6d180 73 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 76 65 72 73 69 6f 6e 73 29 20 7b 0a 66 6f s.as.$package.=>.$versions).{.fo
6d1a0 72 65 61 63 68 20 28 24 76 65 72 73 69 6f 6e 73 20 61 73 20 24 76 65 72 73 69 6f 6e 20 3d 3e 20 reach.($versions.as.$version.=>.
6d1c0 24 61 6c 69 61 73 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 70 6c 61 74 66 6f 72 6d 52 $alias).{.$packages.=.$platformR
6d1e0 65 70 6f 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 76 65 72 epo->findPackages($package,.$ver
6d200 73 69 6f 6e 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 sion);.foreach.($packages.as.$pa
6d220 63 6b 61 67 65 29 20 7b 0a 24 61 6c 69 61 73 50 61 63 6b 61 67 65 20 3d 20 6e 65 77 20 41 6c 69 ckage).{.$aliasPackage.=.new.Ali
6d240 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 24 61 6c 69 61 73 5b 27 61 6c 69 61 asPackage($package,.$alias['alia
6d260 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2c 20 24 61 6c 69 61 73 5b 27 61 6c 69 61 73 27 5d 29 s_normalized'],.$alias['alias'])
6d280 3b 0a 24 61 6c 69 61 73 50 61 63 6b 61 67 65 2d 3e 73 65 74 52 6f 6f 74 50 61 63 6b 61 67 65 41 ;.$aliasPackage->setRootPackageA
6d2a0 6c 69 61 73 28 74 72 75 65 29 3b 0a 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 2d 3e 61 64 64 50 61 lias(true);.$platformRepo->addPa
6d2c0 63 6b 61 67 65 28 24 61 6c 69 61 73 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a ckage($aliasPackage);.}.}.}.}...
6d2e0 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 55 70 64 61 74 65 61 62 6c 65 ...private.function.isUpdateable
6d300 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 (PackageInterface.$package).{.if
6d320 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 29 20 7b 0a 74 68 72 .(!$this->updateWhitelist).{.thr
6d340 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 69 73 55 70 64 61 74 65 ow.new.\LogicException('isUpdate
6d360 61 62 6c 65 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 62 65 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 able.should.only.be.called.when.
6d380 61 20 77 68 69 74 65 6c 69 73 74 20 69 73 20 70 72 65 73 65 6e 74 27 29 3b 0a 7d 0a 0a 66 6f 72 a.whitelist.is.present');.}..for
6d3a0 65 61 63 68 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 61 73 20 each.($this->updateWhitelist.as.
6d3c0 24 77 68 69 74 65 4c 69 73 74 65 64 50 61 74 74 65 72 6e 20 3d 3e 20 24 76 6f 69 64 29 20 7b 0a $whiteListedPattern.=>.$void).{.
6d3e0 24 70 61 74 74 65 72 6e 52 65 67 65 78 70 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e $patternRegexp.=.$this->packageN
6d400 61 6d 65 54 6f 52 65 67 65 78 70 28 24 77 68 69 74 65 4c 69 73 74 65 64 50 61 74 74 65 72 6e 29 ameToRegexp($whiteListedPattern)
6d420 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 70 61 74 74 65 72 6e 52 65 67 65 78 70 2c ;.if.(preg_match($patternRegexp,
6d440 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 .$package->getName())).{.return.
6d460 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a true;.}.}..return.false;.}......
6d480 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 63 6b 61 67 65 4e 61 6d 65 54 6f ..private.function.packageNameTo
6d4a0 52 65 67 65 78 70 28 24 77 68 69 74 65 4c 69 73 74 65 64 50 61 74 74 65 72 6e 29 0a 7b 0a 24 63 Regexp($whiteListedPattern).{.$c
6d4c0 6c 65 61 6e 65 64 57 68 69 74 65 4c 69 73 74 65 64 50 61 74 74 65 72 6e 20 3d 20 73 74 72 5f 72 leanedWhiteListedPattern.=.str_r
6d4e0 65 70 6c 61 63 65 28 27 5c 5c 2a 27 2c 20 27 2e 2a 27 2c 20 70 72 65 67 5f 71 75 6f 74 65 28 24 eplace('\\*',.'.*',.preg_quote($
6d500 77 68 69 74 65 4c 69 73 74 65 64 50 61 74 74 65 72 6e 29 29 3b 0a 0a 72 65 74 75 72 6e 20 22 7b whiteListedPattern));..return."{
6d520 5e 22 20 2e 20 24 63 6c 65 61 6e 65 64 57 68 69 74 65 4c 69 73 74 65 64 50 61 74 74 65 72 6e 20 ^"...$cleanedWhiteListedPattern.
6d540 2e 20 22 24 7d 69 22 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e .."$}i";.}......private.function
6d560 20 65 78 74 72 61 63 74 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 6c 69 .extractPlatformRequirements($li
6d580 6e 6b 73 29 0a 7b 0a 24 70 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 61 72 72 61 79 28 29 3b 0a nks).{.$platformReqs.=.array();.
6d5a0 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 foreach.($links.as.$link).{.if.(
6d5c0 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3a 3a 50 preg_match(PlatformRepository::P
6d5e0 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 6c 69 6e 6b 2d 3e 67 65 LATFORM_PACKAGE_REGEX,.$link->ge
6d600 74 54 61 72 67 65 74 28 29 29 29 20 7b 0a 24 70 6c 61 74 66 6f 72 6d 52 65 71 73 5b 24 6c 69 6e tTarget())).{.$platformReqs[$lin
6d620 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 k->getTarget()].=.$link->getPret
6d640 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 6c 61 tyConstraint();.}.}..return.$pla
6d660 74 66 6f 72 6d 52 65 71 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 tformReqs;.}..............privat
6d680 65 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 74 65 6c 69 73 74 55 70 64 61 74 65 44 65 70 65 6e 64 e.function.whitelistUpdateDepend
6d6a0 65 6e 63 69 65 73 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 64 65 76 4d 6f 64 65 2c 20 61 72 72 encies($localRepo,.$devMode,.arr
6d6c0 61 79 20 24 72 6f 6f 74 52 65 71 75 69 72 65 73 2c 20 61 72 72 61 79 20 24 72 6f 6f 74 44 65 76 ay.$rootRequires,.array.$rootDev
6d6e0 52 65 71 75 69 72 65 73 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 Requires).{.if.(!$this->updateWh
6d700 69 74 65 6c 69 73 74 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 72 65 71 75 69 72 65 64 50 itelist).{.return;.}..$requiredP
6d720 61 63 6b 61 67 65 4e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 ackageNames.=.array();.foreach.(
6d740 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 6f 6f 74 52 65 71 75 69 72 65 73 2c 20 24 72 6f 6f 74 array_merge($rootRequires,.$root
6d760 44 65 76 52 65 71 75 69 72 65 73 29 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 72 65 71 DevRequires).as.$require).{.$req
6d780 75 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 73 5b 5d 20 3d 20 24 72 65 71 75 69 72 65 2d 3e uiredPackageNames[].=.$require->
6d7a0 67 65 74 54 61 72 67 65 74 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 64 65 76 4d 6f 64 65 29 20 7b 0a getTarget();.}..if.($devMode).{.
6d7c0 24 72 6f 6f 74 52 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 6f 6f $rootRequires.=.array_merge($roo
6d7e0 74 52 65 71 75 69 72 65 73 2c 20 24 72 6f 6f 74 44 65 76 52 65 71 75 69 72 65 73 29 3b 0a 7d 0a tRequires,.$rootDevRequires);.}.
6d800 0a 24 73 6b 69 70 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 .$skipPackages.=.array();.foreac
6d820 68 20 28 24 72 6f 6f 74 52 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a h.($rootRequires.as.$require).{.
6d840 24 73 6b 69 70 50 61 63 6b 61 67 65 73 5b 24 72 65 71 75 69 72 65 2d 3e 67 65 74 54 61 72 67 65 $skipPackages[$require->getTarge
6d860 74 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c t()].=.true;.}..$pool.=.new.Pool
6d880 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 6c 6f 63 61 6c 52 65 70 ;.$pool->addRepository($localRep
6d8a0 6f 29 3b 0a 0a 24 73 65 65 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 72 6f 6f 74 52 65 71 75 o);..$seen.=.array();..$rootRequ
6d8c0 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 72 iredPackageNames.=.array_keys($r
6d8e0 6f 6f 74 52 65 71 75 69 72 65 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 75 ootRequires);..foreach.($this->u
6d900 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 61 73 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d pdateWhitelist.as.$packageName.=
6d920 3e 20 24 76 6f 69 64 29 20 7b 0a 24 70 61 63 6b 61 67 65 51 75 65 75 65 20 3d 20 6e 65 77 20 5c >.$void).{.$packageQueue.=.new.\
6d940 53 70 6c 51 75 65 75 65 3b 0a 0a 24 64 65 70 50 61 63 6b 61 67 65 73 20 3d 20 24 70 6f 6f 6c 2d SplQueue;..$depPackages.=.$pool-
6d960 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 0a 24 6e >whatProvides($packageName);..$n
6d980 61 6d 65 4d 61 74 63 68 65 73 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 3d 20 69 6e 5f 61 ameMatchesRequiredPackage.=.in_a
6d9a0 72 72 61 79 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b rray($packageName,.$requiredPack
6d9c0 61 67 65 4e 61 6d 65 73 2c 20 74 72 75 65 29 3b 0a 0a 0a 20 69 66 20 28 21 24 6e 61 6d 65 4d 61 ageNames,.true);....if.(!$nameMa
6d9e0 74 63 68 65 73 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 29 20 7b 0a 24 77 68 69 74 65 6c 69 tchesRequiredPackage).{.$whiteli
6da00 73 74 50 61 74 74 65 72 6e 52 65 67 65 78 70 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 stPatternRegexp.=.$this->package
6da20 4e 61 6d 65 54 6f 52 65 67 65 78 70 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 66 6f 72 65 NameToRegexp($packageName);.fore
6da40 61 63 68 20 28 24 72 6f 6f 74 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 73 20 61 ach.($rootRequiredPackageNames.a
6da60 73 20 24 72 6f 6f 74 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 29 20 7b 0a 69 66 s.$rootRequiredPackageName).{.if
6da80 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 77 68 69 74 65 6c 69 73 74 50 61 74 74 65 72 6e 52 65 .(preg_match($whitelistPatternRe
6daa0 67 65 78 70 2c 20 24 72 6f 6f 74 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 29 29 gexp,.$rootRequiredPackageName))
6dac0 20 7b 0a 24 6e 61 6d 65 4d 61 74 63 68 65 73 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 3d .{.$nameMatchesRequiredPackage.=
6dae0 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 .true;.break;.}.}.}..if.(count($
6db00 64 65 70 50 61 63 6b 61 67 65 73 29 20 3d 3d 20 30 20 26 26 20 21 24 6e 61 6d 65 4d 61 74 63 68 depPackages).==.0.&&.!$nameMatch
6db20 65 73 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 24 esRequiredPackage.&&.!in_array($
6db40 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 61 72 72 61 79 28 27 6e 6f 74 68 69 6e 67 27 2c 20 27 6c packageName,.array('nothing',.'l
6db60 6f 63 6b 27 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 ock'))).{.$this->io->writeError(
6db80 27 3c 77 61 72 6e 69 6e 67 3e 50 61 63 6b 61 67 65 20 22 27 20 2e 20 24 70 61 63 6b 61 67 65 4e '<warning>Package."'...$packageN
6dba0 61 6d 65 20 2e 20 27 22 20 6c 69 73 74 65 64 20 66 6f 72 20 75 70 64 61 74 65 20 69 73 20 6e 6f ame...'".listed.for.update.is.no
6dbc0 74 20 69 6e 73 74 61 6c 6c 65 64 2e 20 49 67 6e 6f 72 69 6e 67 2e 3c 2f 77 61 72 6e 69 6e 67 3e t.installed..Ignoring.</warning>
6dbe0 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 50 61 63 6b 61 67 65 73 20 61 73 20 ');.}..foreach.($depPackages.as.
6dc00 24 64 65 70 50 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 65 6e $depPackage).{.$packageQueue->en
6dc20 71 75 65 75 65 28 24 64 65 70 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 21 24 queue($depPackage);.}..while.(!$
6dc40 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 69 73 45 6d 70 74 79 28 29 29 20 7b 0a 24 70 61 63 6b packageQueue->isEmpty()).{.$pack
6dc60 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 64 65 71 75 65 75 65 28 29 3b 0a age.=.$packageQueue->dequeue();.
6dc80 69 66 20 28 69 73 73 65 74 28 24 73 65 65 6e 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 if.(isset($seen[$package->getId(
6dca0 29 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 73 65 65 6e 5b 24 70 61 63 6b 61 )])).{.continue;.}..$seen[$packa
6dcc0 67 65 2d 3e 67 65 74 49 64 28 29 5d 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 75 70 64 61 ge->getId()].=.true;.$this->upda
6dce0 74 65 57 68 69 74 65 6c 69 73 74 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d teWhitelist[$package->getName()]
6dd00 20 3d 20 74 72 75 65 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 44 .=.true;..if.(!$this->whitelistD
6dd20 65 70 65 6e 64 65 6e 63 69 65 73 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 72 65 71 ependencies).{.continue;.}..$req
6dd40 75 69 72 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b uires.=.$package->getRequires();
6dd60 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 ..foreach.($requires.as.$require
6dd80 29 20 7b 0a 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 65 73 20 3d 20 24 70 6f 6f 6c 2d 3e 77 68 ).{.$requirePackages.=.$pool->wh
6dda0 61 74 50 72 6f 76 69 64 65 73 28 24 72 65 71 75 69 72 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 atProvides($require->getTarget()
6ddc0 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 65 73 20 61 73 );..foreach.($requirePackages.as
6dde0 20 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 .$requirePackage).{.if.(isset($t
6de00 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 5b 24 72 65 71 75 69 72 65 50 61 63 his->updateWhitelist[$requirePac
6de20 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d kage->getName()])).{.continue;.}
6de40 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 6b 69 70 50 61 63 6b 61 67 65 73 5b 24 72 65 71 75 69 ..if.(isset($skipPackages[$requi
6de60 72 65 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 7b 0a 24 74 68 69 73 2d rePackage->getName()])).{.$this-
6de80 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 44 65 70 65 6e 64 >io->writeError('<warning>Depend
6dea0 65 6e 63 79 20 22 27 20 2e 20 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 ency."'...$requirePackage->getNa
6dec0 6d 65 28 29 20 2e 20 27 22 20 69 73 20 61 6c 73 6f 20 61 20 72 6f 6f 74 20 72 65 71 75 69 72 65 me()...'".is.also.a.root.require
6dee0 6d 65 6e 74 2c 20 62 75 74 20 69 73 20 6e 6f 74 20 65 78 70 6c 69 63 69 74 6c 79 20 77 68 69 74 ment,.but.is.not.explicitly.whit
6df00 65 6c 69 73 74 65 64 2e 20 49 67 6e 6f 72 69 6e 67 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a elisted..Ignoring.</warning>');.
6df20 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 65 6e 71 75 continue;.}..$packageQueue->enqu
6df40 65 75 65 28 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a eue($requirePackage);.}.}.}.}.}.
6df60 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6d 6f 63 6b 4c 6f 63 ........private.function.mockLoc
6df80 61 6c 52 65 70 6f 73 69 74 6f 72 69 65 73 28 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 alRepositories(RepositoryManager
6dfa0 20 24 72 6d 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 .$rm).{.$packages.=.array();.for
6dfc0 65 61 63 68 20 28 24 72 6d 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 2d each.($rm->getLocalRepository()-
6dfe0 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 70 >getPackages().as.$package).{.$p
6e000 61 63 6b 61 67 65 73 5b 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 5d 20 3d 20 63 6c 6f ackages[(string).$package].=.clo
6e020 6e 65 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 ne.$package;.}.foreach.($package
6e040 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 61 s.as.$key.=>.$package).{.if.($pa
6e060 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b ckage.instanceof.AliasPackage).{
6e080 0a 24 61 6c 69 61 73 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 .$alias.=.(string).$package->get
6e0a0 41 6c 69 61 73 4f 66 28 29 3b 0a 24 70 61 63 6b 61 67 65 73 5b 24 6b 65 79 5d 20 3d 20 6e 65 77 AliasOf();.$packages[$key].=.new
6e0c0 20 41 6c 69 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 73 5b 24 61 6c 69 61 73 5d 2c .AliasPackage($packages[$alias],
6e0e0 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 24 70 61 63 6b 61 67 .$package->getVersion(),.$packag
6e100 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 29 3b 0a 7d 0a 7d 0a 24 72 6d 2d e->getPrettyVersion());.}.}.$rm-
6e120 3e 73 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 0a 6e 65 77 20 49 6e 73 74 61 6c 6c >setLocalRepository(.new.Install
6e140 65 64 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 24 70 61 63 6b 61 67 65 73 29 0a 29 3b 0a edArrayRepository($packages).);.
6e160 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e }.........public.static.function
6e180 20 63 72 65 61 74 65 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 6f 73 65 .create(IOInterface.$io,.Compose
6e1a0 72 20 24 63 6f 6d 70 6f 73 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 74 61 74 69 63 r.$composer).{.return.new.static
6e1c0 28 0a 24 69 6f 2c 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2c 0a 24 (.$io,.$composer->getConfig(),.$
6e1e0 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2c 0a 24 63 6f 6d 70 6f 73 65 composer->getPackage(),.$compose
6e200 72 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 2c 0a 24 63 6f 6d 70 6f 73 r->getDownloadManager(),.$compos
6e220 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2c 0a 24 63 6f 6d er->getRepositoryManager(),.$com
6e240 70 6f 73 65 72 2d 3e 67 65 74 4c 6f 63 6b 65 72 28 29 2c 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 poser->getLocker(),.$composer->g
6e260 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 2c 0a 24 63 6f 6d 70 6f 73 etInstallationManager(),.$compos
6e280 65 72 2d 3e 67 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2c 0a 24 63 6f 6d 70 6f er->getEventDispatcher(),.$compo
6e2a0 73 65 72 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 28 29 0a 29 3b 0a 7d ser->getAutoloadGenerator().);.}
6e2c0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 64 64 69 74 69 6f ......public.function.setAdditio
6e2e0 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 nalInstalledRepository(Repositor
6e300 79 49 6e 74 65 72 66 61 63 65 20 24 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 yInterface.$additionalInstalledR
6e320 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 6e epository).{.$this->additionalIn
6e340 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 61 64 64 69 74 69 6f 6e 61 6c 49 stalledRepository.=.$additionalI
6e360 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 nstalledRepository;..return.$thi
6e380 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 s;.}........public.function.setD
6e3a0 72 79 52 75 6e 28 24 64 72 79 52 75 6e 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 ryRun($dryRun.=.true).{.$this->d
6e3c0 72 79 52 75 6e 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 64 72 79 52 75 6e 3b 0a 0a 72 65 74 75 ryRun.=.(boolean).$dryRun;..retu
6e3e0 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f rn.$this;.}.......public.functio
6e400 6e 20 69 73 44 72 79 52 75 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 72 79 n.isDryRun().{.return.$this->dry
6e420 52 75 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 Run;.}........public.function.se
6e440 74 50 72 65 66 65 72 53 6f 75 72 63 65 28 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 74 72 tPreferSource($preferSource.=.tr
6e460 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 28 62 6f 6f ue).{.$this->preferSource.=.(boo
6e480 6c 65 61 6e 29 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 lean).$preferSource;..return.$th
6e4a0 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 is;.}........public.function.set
6e4c0 50 72 65 66 65 72 44 69 73 74 28 24 70 72 65 66 65 72 44 69 73 74 20 3d 20 74 72 75 65 29 0a 7b PreferDist($preferDist.=.true).{
6e4e0 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 44 69 73 74 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 .$this->preferDist.=.(boolean).$
6e500 70 72 65 66 65 72 44 69 73 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a preferDist;..return.$this;.}....
6e520 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 6d 69 7a 65 41 ....public.function.setOptimizeA
6e540 75 74 6f 6c 6f 61 64 65 72 28 24 6f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 20 3d 20 utoloader($optimizeAutoloader.=.
6e560 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 false).{.$this->optimizeAutoload
6e580 65 72 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 6f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 er.=.(boolean).$optimizeAutoload
6e5a0 65 72 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 er;.if.(!$this->optimizeAutoload
6e5c0 65 72 29 20 7b 0a 0a 20 0a 20 24 74 68 69 73 2d 3e 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 er).{.....$this->setClassMapAuth
6e5e0 6f 72 69 74 61 74 69 76 65 28 66 61 6c 73 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 oritative(false);.}..return.$thi
6e600 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 s;.}.........public.function.set
6e620 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 63 6c 61 73 73 4d 61 70 41 ClassMapAuthoritative($classMapA
6e640 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 uthoritative.=.false).{.$this->c
6e660 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 lassMapAuthoritative.=.(boolean)
6e680 20 24 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 3b 0a 69 66 20 28 24 74 68 .$classMapAuthoritative;.if.($th
6e6a0 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 29 20 7b 0a 0a 20 24 is->classMapAuthoritative).{...$
6e6c0 74 68 69 73 2d 3e 73 65 74 4f 70 74 69 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 28 74 72 75 65 this->setOptimizeAutoloader(true
6e6e0 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 );.}..return.$this;.}........pub
6e700 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 55 70 64 61 74 65 28 24 75 70 64 61 74 65 20 3d lic.function.setUpdate($update.=
6e720 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 3d 20 28 62 6f 6f 6c 65 61 .true).{.$this->update.=.(boolea
6e740 6e 29 20 24 75 70 64 61 74 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a n).$update;..return.$this;.}....
6e760 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 76 4d 6f 64 65 28 24 ....public.function.setDevMode($
6e780 64 65 76 4d 6f 64 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 devMode.=.true).{.$this->devMode
6e7a0 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 64 65 76 4d 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 24 .=.(boolean).$devMode;..return.$
6e7c0 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 this;.}........public.function.s
6e7e0 65 74 44 75 6d 70 41 75 74 6f 6c 6f 61 64 65 72 28 24 64 75 6d 70 41 75 74 6f 6c 6f 61 64 65 72 etDumpAutoloader($dumpAutoloader
6e800 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 75 6d 70 41 75 74 6f 6c 6f 61 64 65 72 .=.true).{.$this->dumpAutoloader
6e820 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 64 75 6d 70 41 75 74 6f 6c 6f 61 64 65 72 3b 0a 0a 72 .=.(boolean).$dumpAutoloader;..r
6e840 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e eturn.$this;.}........public.fun
6e860 63 74 69 6f 6e 20 73 65 74 52 75 6e 53 63 72 69 70 74 73 28 24 72 75 6e 53 63 72 69 70 74 73 20 ction.setRunScripts($runScripts.
6e880 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 20 3d 20 28 62 =.true).{.$this->runScripts.=.(b
6e8a0 6f 6f 6c 65 61 6e 29 20 24 72 75 6e 53 63 72 69 70 74 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 oolean).$runScripts;..return.$th
6e8c0 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 is;.}........public.function.set
6e8e0 43 6f 6e 66 69 67 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 69 73 2d 3e Config(Config.$config).{.$this->
6e900 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b config.=.$config;..return.$this;
6e920 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 .}........public.function.setVer
6e940 62 6f 73 65 28 24 76 65 72 62 6f 73 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 bose($verbose.=.true).{.$this->v
6e960 65 72 62 6f 73 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 76 65 72 62 6f 73 65 3b 0a 0a 72 65 erbose.=.(boolean).$verbose;..re
6e980 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 turn.$this;.}.......public.funct
6e9a0 69 6f 6e 20 69 73 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e ion.isVerbose().{.return.$this->
6e9c0 76 65 72 62 6f 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f verbose;.}........public.functio
6e9e0 6e 20 73 65 74 49 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 n.setIgnorePlatformRequirements(
6ea00 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 $ignorePlatformReqs.=.false).{.$
6ea20 74 68 69 73 2d 3e 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 28 62 6f 6f 6c this->ignorePlatformReqs.=.(bool
6ea40 65 61 6e 29 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 3b 0a 0a 72 65 74 75 72 ean).$ignorePlatformReqs;..retur
6ea60 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 n.$this;.}.........public.functi
6ea80 6f 6e 20 73 65 74 55 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 28 61 72 72 61 79 20 24 70 61 63 on.setUpdateWhitelist(array.$pac
6eaa0 6b 61 67 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 kages).{.$this->updateWhitelist.
6eac0 3d 20 61 72 72 61 79 5f 66 6c 69 70 28 61 72 72 61 79 5f 6d 61 70 28 27 73 74 72 74 6f 6c 6f 77 =.array_flip(array_map('strtolow
6eae0 65 72 27 2c 20 24 70 61 63 6b 61 67 65 73 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b er',.$packages));..return.$this;
6eb00 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 57 68 69 .}........public.function.setWhi
6eb20 74 65 6c 69 73 74 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 75 70 64 61 74 65 44 65 70 65 6e 64 telistDependencies($updateDepend
6eb40 65 6e 63 69 65 73 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 encies.=.true).{.$this->whitelis
6eb60 74 44 65 70 65 6e 64 65 6e 63 69 65 73 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 75 70 64 61 74 tDependencies.=.(boolean).$updat
6eb80 65 44 65 70 65 6e 64 65 6e 63 69 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a eDependencies;..return.$this;.}.
6eba0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 66 65 72 .......public.function.setPrefer
6ebc0 53 74 61 62 6c 65 28 24 70 72 65 66 65 72 53 74 61 62 6c 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 Stable($preferStable.=.true).{.$
6ebe0 74 68 69 73 2d 3e 70 72 65 66 65 72 53 74 61 62 6c 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 this->preferStable.=.(boolean).$
6ec00 70 72 65 66 65 72 53 74 61 62 6c 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a preferStable;..return.$this;.}..
6ec20 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 66 65 72 4c ......public.function.setPreferL
6ec40 6f 77 65 73 74 28 24 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 owest($preferLowest.=.true).{.$t
6ec60 68 69 73 2d 3e 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 70 his->preferLowest.=.(boolean).$p
6ec80 72 65 66 65 72 4c 6f 77 65 73 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a referLowest;..return.$this;.}...
6eca0 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 50 ........public.function.disableP
6ecc0 6c 75 67 69 6e 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 lugins().{.$this->installationMa
6ece0 6e 61 67 65 72 2d 3e 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 28 29 3b 0a 0a 72 65 74 75 72 6e nager->disablePlugins();..return
6ed00 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 .$this;.}......public.function.s
6ed20 65 74 53 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 28 53 75 67 67 etSuggestedPackagesReporter(Sugg
6ed40 65 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 20 24 73 75 67 67 65 73 74 65 64 estedPackagesReporter.$suggested
6ed60 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 67 67 65 PackagesReporter).{.$this->sugge
6ed80 73 74 65 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 20 3d 20 24 73 75 67 67 65 73 74 65 stedPackagesReporter.=.$suggeste
6eda0 64 50 61 63 6b 61 67 65 73 52 65 70 6f 72 74 65 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 dPackagesReporter;..return.$this
6edc0 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 ;.}.}.<?php............namespace
6ede0 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 .Composer\Installer;..use.Compos
6ee00 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c er\IO\IOInterface;.use.Composer\
6ee20 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f Package\PackageInterface;.use.Co
6ee40 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 mposer\Util\Filesystem;.use.Comp
6ee60 6f 73 65 72 5c 55 74 69 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 oser\Util\Platform;.use.Composer
6ee80 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f \Util\ProcessExecutor;.use.Compo
6eea0 73 65 72 5c 55 74 69 6c 5c 53 69 6c 65 6e 63 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 ser\Util\Silencer;.........class
6eec0 20 42 69 6e 61 72 79 49 6e 73 74 61 6c 6c 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 69 .BinaryInstaller.{.protected.$bi
6eee0 6e 44 69 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 69 6e 43 6f 6d 70 61 74 3b 0a 70 72 6f 74 nDir;.protected.$binCompat;.prot
6ef00 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c 65 73 79 73 74 65 6d ected.$io;.protected.$filesystem
6ef20 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 ;........public.function.__const
6ef40 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 62 69 6e 44 69 72 2c 20 24 ruct(IOInterface.$io,.$binDir,.$
6ef60 62 69 6e 43 6f 6d 70 61 74 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 65 binCompat,.Filesystem.$filesyste
6ef80 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 3d 20 24 62 69 6e m.=.null).{.$this->binDir.=.$bin
6efa0 44 69 72 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 43 6f 6d 70 61 74 20 3d 20 24 62 69 6e 43 6f 6d 70 Dir;.$this->binCompat.=.$binComp
6efc0 61 74 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 at;.$this->io.=.$io;.$this->file
6efe0 73 79 73 74 65 6d 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 20 3f 3a 20 6e 65 77 20 46 69 6c 65 system.=.$filesystem.?:.new.File
6f000 73 79 73 74 65 6d 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 system();.}..public.function.ins
6f020 74 61 6c 6c 42 69 6e 61 72 69 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 tallBinaries(PackageInterface.$p
6f040 61 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 0a 7b 0a 24 62 69 6e 61 72 69 65 ackage,.$installPath).{.$binarie
6f060 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 29 s.=.$this->getBinaries($package)
6f080 3b 0a 69 66 20 28 21 24 62 69 6e 61 72 69 65 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 66 6f ;.if.(!$binaries).{.return;.}.fo
6f0a0 72 65 61 63 68 20 28 24 62 69 6e 61 72 69 65 73 20 61 73 20 24 62 69 6e 29 20 7b 0a 24 62 69 6e reach.($binaries.as.$bin).{.$bin
6f0c0 50 61 74 68 20 3d 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 2e 27 2f 27 2e 24 62 69 6e 3b 0a 69 66 Path.=.$installPath.'/'.$bin;.if
6f0e0 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 62 69 6e 50 61 74 68 29 29 20 7b 0a 24 74 68 69 .(!file_exists($binPath)).{.$thi
6f100 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 3c 77 61 72 6e 69 6e 67 3e s->io->writeError('....<warning>
6f120 53 6b 69 70 70 65 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 62 69 6e 20 27 2e 24 62 Skipped.installation.of.bin.'.$b
6f140 69 6e 2e 27 20 66 6f 72 20 70 61 63 6b 61 67 65 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 in.'.for.package.'.$package->get
6f160 4e 61 6d 65 28 29 2e 27 3a 20 66 69 6c 65 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 70 61 63 6b Name().':.file.not.found.in.pack
6f180 61 67 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 age</warning>');.continue;.}....
6f1a0 0a 20 0a 20 0a 20 24 62 69 6e 50 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 28 24 62 69 6e 50 61 ......$binPath.=.realpath($binPa
6f1c0 74 68 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 28 29 3b th);..$this->initializeBinDir();
6f1e0 0a 24 6c 69 6e 6b 20 3d 20 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 2e 27 2f 27 2e 62 61 73 65 6e .$link.=.$this->binDir.'/'.basen
6f200 61 6d 65 28 24 62 69 6e 29 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 6c 69 6e 6b ame($bin);.if.(file_exists($link
6f220 29 29 20 7b 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 6c 69 6e 6b 29 29 20 7b 0a 0a 20 0a 20 0a )).{.if.(is_link($link)).{......
6f240 20 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 63 68 6d 6f 64 27 2c 20 24 6c 69 6e 6b 2c 20 .Silencer::call('chmod',.$link,.
6f260 30 37 37 37 20 26 20 7e 75 6d 61 73 6b 28 29 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 0777.&.~umask());.}.$this->io->w
6f280 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 53 6b 69 70 70 65 64 20 69 6e 73 74 61 6c 6c 61 74 riteError('....Skipped.installat
6f2a0 69 6f 6e 20 6f 66 20 62 69 6e 20 27 2e 24 62 69 6e 2e 27 20 66 6f 72 20 70 61 63 6b 61 67 65 20 ion.of.bin.'.$bin.'.for.package.
6f2c0 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 3a 20 6e 61 6d 65 20 63 6f '.$package->getName().':.name.co
6f2e0 6e 66 6c 69 63 74 73 20 77 69 74 68 20 61 6e 20 65 78 69 73 74 69 6e 67 20 66 69 6c 65 27 29 3b nflicts.with.an.existing.file');
6f300 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 62 69 6e 43 6f 6d 70 .continue;.}..if.($this->binComp
6f320 61 74 20 3d 3d 3d 20 22 61 75 74 6f 22 29 20 7b 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 at.===."auto").{.if.(Platform::i
6f340 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 46 75 6c 6c sWindows()).{.$this->installFull
6f360 42 69 6e 61 72 69 65 73 28 24 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e 6b 2c 20 24 62 69 6e 2c 20 Binaries($binPath,.$link,.$bin,.
6f380 24 70 61 63 6b 61 67 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 $package);.}.else.{.$this->insta
6f3a0 6c 6c 53 79 6d 6c 69 6e 6b 42 69 6e 61 72 69 65 73 28 24 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e llSymlinkBinaries($binPath,.$lin
6f3c0 6b 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 62 69 6e 43 6f 6d 70 61 74 k);.}.}.elseif.($this->binCompat
6f3e0 20 3d 3d 3d 20 22 66 75 6c 6c 22 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 46 75 6c .===."full").{.$this->installFul
6f400 6c 42 69 6e 61 72 69 65 73 28 24 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e 6b 2c 20 24 62 69 6e 2c lBinaries($binPath,.$link,.$bin,
6f420 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 63 68 .$package);.}.Silencer::call('ch
6f440 6d 6f 64 27 2c 20 24 6c 69 6e 6b 2c 20 30 37 37 37 20 26 20 7e 75 6d 61 73 6b 28 29 29 3b 0a 7d mod',.$link,.0777.&.~umask());.}
6f460 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 42 69 6e 61 72 69 .}..public.function.removeBinari
6f480 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a es(PackageInterface.$package).{.
6f4a0 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 28 29 3b 0a 0a 24 62 69 6e $this->initializeBinDir();..$bin
6f4c0 61 72 69 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b aries.=.$this->getBinaries($pack
6f4e0 61 67 65 29 3b 0a 69 66 20 28 21 24 62 69 6e 61 72 69 65 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a age);.if.(!$binaries).{.return;.
6f500 7d 0a 66 6f 72 65 61 63 68 20 28 24 62 69 6e 61 72 69 65 73 20 61 73 20 24 62 69 6e 29 20 7b 0a }.foreach.($binaries.as.$bin).{.
6f520 24 6c 69 6e 6b 20 3d 20 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 2e 27 2f 27 2e 62 61 73 65 6e 61 $link.=.$this->binDir.'/'.basena
6f540 6d 65 28 24 62 69 6e 29 3b 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 6c 69 6e 6b 29 20 7c 7c 20 me($bin);.if.(is_link($link).||.
6f560 66 69 6c 65 5f 65 78 69 73 74 73 28 24 6c 69 6e 6b 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c file_exists($link)).{.$this->fil
6f580 65 73 79 73 74 65 6d 2d 3e 75 6e 6c 69 6e 6b 28 24 6c 69 6e 6b 29 3b 0a 7d 0a 69 66 20 28 66 69 esystem->unlink($link);.}.if.(fi
6f5a0 6c 65 5f 65 78 69 73 74 73 28 24 6c 69 6e 6b 2e 27 2e 62 61 74 27 29 29 20 7b 0a 24 74 68 69 73 le_exists($link.'.bat')).{.$this
6f5c0 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 75 6e 6c 69 6e 6b 28 24 6c 69 6e 6b 2e 27 2e 62 61 74 ->filesystem->unlink($link.'.bat
6f5e0 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 28 69 73 5f 64 69 72 28 24 74 68 69 73 2d 3e 62 69 ');.}.}....if.((is_dir($this->bi
6f600 6e 44 69 72 29 29 20 26 26 20 28 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 73 nDir)).&&.($this->filesystem->is
6f620 44 69 72 45 6d 70 74 79 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 29 29 29 20 7b 0a 53 69 6c 65 DirEmpty($this->binDir))).{.Sile
6f640 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 72 6d 64 69 72 27 2c 20 24 74 68 69 73 2d 3e 62 69 6e 44 69 ncer::call('rmdir',.$this->binDi
6f660 72 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 r);.}.}..protected.function.getB
6f680 69 6e 61 72 69 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 inaries(PackageInterface.$packag
6f6a0 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 42 69 6e 61 72 69 65 e).{.return.$package->getBinarie
6f6c0 73 28 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 s();.}..protected.function.insta
6f6e0 6c 6c 46 75 6c 6c 42 69 6e 61 72 69 65 73 28 24 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e 6b 2c 20 llFullBinaries($binPath,.$link,.
6f700 24 62 69 6e 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 $bin,.PackageInterface.$package)
6f720 0a 7b 0a 0a 20 69 66 20 28 27 2e 62 61 74 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 62 69 6e 50 .{...if.('.bat'.!==.substr($binP
6f740 61 74 68 2c 20 2d 34 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 55 6e 69 78 79 50 ath,.-4)).{.$this->installUnixyP
6f760 72 6f 78 79 42 69 6e 61 72 69 65 73 28 24 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e 6b 29 3b 0a 40 roxyBinaries($binPath,.$link);.@
6f780 63 68 6d 6f 64 28 24 6c 69 6e 6b 2c 20 30 37 37 37 20 26 20 7e 75 6d 61 73 6b 28 29 29 3b 0a 24 chmod($link,.0777.&.~umask());.$
6f7a0 6c 69 6e 6b 20 2e 3d 20 27 2e 62 61 74 27 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 link..=.'.bat';.if.(file_exists(
6f7c0 24 6c 69 6e 6b 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 $link)).{.$this->io->writeError(
6f7e0 27 20 20 20 20 53 6b 69 70 70 65 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 62 69 6e '....Skipped.installation.of.bin
6f800 20 27 2e 24 62 69 6e 2e 27 2e 62 61 74 20 70 72 6f 78 79 20 66 6f 72 20 70 61 63 6b 61 67 65 20 .'.$bin.'.bat.proxy.for.package.
6f820 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 3a 20 61 20 2e 62 61 74 20 '.$package->getName().':.a..bat.
6f840 70 72 6f 78 79 20 77 61 73 20 61 6c 72 65 61 64 79 20 69 6e 73 74 61 6c 6c 65 64 27 29 3b 0a 7d proxy.was.already.installed');.}
6f860 0a 7d 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 6c 69 6e 6b 29 29 20 7b 0a 66 69 .}.if.(!file_exists($link)).{.fi
6f880 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6c 69 6e 6b 2c 20 24 74 68 69 73 2d 3e 67 65 le_put_contents($link,.$this->ge
6f8a0 6e 65 72 61 74 65 57 69 6e 64 6f 77 73 50 72 6f 78 79 43 6f 64 65 28 24 62 69 6e 50 61 74 68 2c nerateWindowsProxyCode($binPath,
6f8c0 20 24 6c 69 6e 6b 29 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f .$link));.}.}..protected.functio
6f8e0 6e 20 69 6e 73 74 61 6c 6c 53 79 6d 6c 69 6e 6b 42 69 6e 61 72 69 65 73 28 24 62 69 6e 50 61 74 n.installSymlinkBinaries($binPat
6f900 68 2c 20 24 6c 69 6e 6b 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 h,.$link).{.if.(!$this->filesyst
6f920 65 6d 2d 3e 72 65 6c 61 74 69 76 65 53 79 6d 6c 69 6e 6b 28 24 62 69 6e 50 61 74 68 2c 20 24 6c em->relativeSymlink($binPath,.$l
6f940 69 6e 6b 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 55 6e 69 78 79 50 72 6f 78 79 ink)).{.$this->installUnixyProxy
6f960 42 69 6e 61 72 69 65 73 28 24 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e 6b 29 3b 0a 7d 0a 7d 0a 0a Binaries($binPath,.$link);.}.}..
6f980 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 55 6e 69 78 79 50 protected.function.installUnixyP
6f9a0 72 6f 78 79 42 69 6e 61 72 69 65 73 28 24 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e 6b 29 0a 7b 0a roxyBinaries($binPath,.$link).{.
6f9c0 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6c 69 6e 6b 2c 20 24 74 68 69 73 2d 3e file_put_contents($link,.$this->
6f9e0 67 65 6e 65 72 61 74 65 55 6e 69 78 79 50 72 6f 78 79 43 6f 64 65 28 24 62 69 6e 50 61 74 68 2c generateUnixyProxyCode($binPath,
6fa00 20 24 6c 69 6e 6b 29 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 .$link));.}..protected.function.
6fa20 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 initializeBinDir().{.$this->file
6fa40 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 system->ensureDirectoryExists($t
6fa60 68 69 73 2d 3e 62 69 6e 44 69 72 29 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 3d 20 72 65 his->binDir);.$this->binDir.=.re
6fa80 61 6c 70 61 74 68 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 alpath($this->binDir);.}..protec
6faa0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 57 69 6e 64 6f 77 73 50 72 6f 78 ted.function.generateWindowsProx
6fac0 79 43 6f 64 65 28 24 62 69 6e 2c 20 24 6c 69 6e 6b 29 0a 7b 0a 24 62 69 6e 50 61 74 68 20 3d 20 yCode($bin,.$link).{.$binPath.=.
6fae0 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 $this->filesystem->findShortestP
6fb00 61 74 68 28 24 6c 69 6e 6b 2c 20 24 62 69 6e 29 3b 0a 69 66 20 28 27 2e 62 61 74 27 20 3d 3d 3d ath($link,.$bin);.if.('.bat'.===
6fb20 20 73 75 62 73 74 72 28 24 62 69 6e 2c 20 2d 34 29 20 7c 7c 20 27 2e 65 78 65 27 20 3d 3d 3d 20 .substr($bin,.-4).||.'.exe'.===.
6fb40 73 75 62 73 74 72 28 24 62 69 6e 2c 20 2d 34 29 29 20 7b 0a 24 63 61 6c 6c 65 72 20 3d 20 27 63 substr($bin,.-4)).{.$caller.=.'c
6fb60 61 6c 6c 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 68 61 6e 64 6c 65 20 3d 20 66 6f 70 65 6e 28 24 all';.}.else.{.$handle.=.fopen($
6fb80 62 69 6e 2c 20 27 72 27 29 3b 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 73 28 24 68 61 6e 64 6c 65 bin,.'r');.$line.=.fgets($handle
6fba0 29 3b 0a 66 63 6c 6f 73 65 28 24 68 61 6e 64 6c 65 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 );.fclose($handle);.if.(preg_mat
6fbc0 63 68 28 27 7b 5e 23 21 2f 28 3f 3a 75 73 72 2f 62 69 6e 2f 65 6e 76 20 29 3f 28 3f 3a 5b 5e 2f ch('{^#!/(?:usr/bin/env.)?(?:[^/
6fbe0 5d 2b 2f 29 2a 28 2e 2b 29 24 7d 6d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b ]+/)*(.+)$}m',.$line,.$match)).{
6fc00 0a 24 63 61 6c 6c 65 72 20 3d 20 74 72 69 6d 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 65 6c .$caller.=.trim($match[1]);.}.el
6fc20 73 65 20 7b 0a 24 63 61 6c 6c 65 72 20 3d 20 27 70 68 70 27 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 se.{.$caller.=.'php';.}.}..retur
6fc40 6e 20 22 40 45 43 48 4f 20 4f 46 46 5c 72 5c 6e 22 2e 0a 22 73 65 74 6c 6f 63 61 6c 20 44 49 53 n."@ECHO.OFF\r\n".."setlocal.DIS
6fc60 41 42 4c 45 44 45 4c 41 59 45 44 45 58 50 41 4e 53 49 4f 4e 5c 72 5c 6e 22 2e 0a 22 53 45 54 20 ABLEDELAYEDEXPANSION\r\n".."SET.
6fc80 42 49 4e 5f 54 41 52 47 45 54 3d 25 7e 64 70 30 2f 22 2e 74 72 69 6d 28 50 72 6f 63 65 73 73 45 BIN_TARGET=%~dp0/".trim(ProcessE
6fca0 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 62 69 6e 50 61 74 68 29 2c 20 27 22 27 29 2e xecutor::escape($binPath),.'"').
6fcc0 22 5c 72 5c 6e 22 2e 0a 22 7b 24 63 61 6c 6c 65 72 7d 20 5c 22 25 42 49 4e 5f 54 41 52 47 45 54 "\r\n".."{$caller}.\"%BIN_TARGET
6fce0 25 5c 22 20 25 2a 5c 72 5c 6e 22 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 %\".%*\r\n";.}..protected.functi
6fd00 6f 6e 20 67 65 6e 65 72 61 74 65 55 6e 69 78 79 50 72 6f 78 79 43 6f 64 65 28 24 62 69 6e 2c 20 on.generateUnixyProxyCode($bin,.
6fd20 24 6c 69 6e 6b 29 0a 7b 0a 24 62 69 6e 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 $link).{.$binPath.=.$this->files
6fd40 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 6c 69 6e 6b 2c 20 24 ystem->findShortestPath($link,.$
6fd60 62 69 6e 29 3b 0a 0a 24 62 69 6e 44 69 72 20 3d 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 bin);..$binDir.=.ProcessExecutor
6fd80 3a 3a 65 73 63 61 70 65 28 64 69 72 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 29 3b 0a 24 62 69 ::escape(dirname($binPath));.$bi
6fda0 6e 46 69 6c 65 20 3d 20 62 61 73 65 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 3b 0a 0a 24 70 72 nFile.=.basename($binPath);..$pr
6fdc0 6f 78 79 43 6f 64 65 20 3d 20 3c 3c 3c 50 52 4f 58 59 0a 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e oxyCode.=.<<<PROXY.#!/usr/bin/en
6fde0 76 20 73 68 0a 0a 64 69 72 3d 24 28 64 3d 5c 24 7b 30 25 5b 2f 5c 5c 5c 5c 5d 2a 7d 3b 20 63 64 v.sh..dir=$(d=\${0%[/\\\\]*};.cd
6fe00 20 22 5c 24 64 22 3b 20 63 64 20 24 62 69 6e 44 69 72 20 26 26 20 70 77 64 29 0a 0a 23 20 53 65 ."\$d";.cd.$binDir.&&.pwd)..#.Se
6fe20 65 20 69 66 20 77 65 20 61 72 65 20 72 75 6e 6e 69 6e 67 20 69 6e 20 43 79 67 77 69 6e 20 62 79 e.if.we.are.running.in.Cygwin.by
6fe40 20 63 68 65 63 6b 69 6e 67 20 66 6f 72 20 63 79 67 70 61 74 68 20 70 72 6f 67 72 61 6d 0a 69 66 .checking.for.cygpath.program.if
6fe60 20 63 6f 6d 6d 61 6e 64 20 2d 76 20 27 63 79 67 70 61 74 68 27 20 3e 2f 64 65 76 2f 6e 75 6c 6c .command.-v.'cygpath'.>/dev/null
6fe80 20 32 3e 26 31 3b 20 74 68 65 6e 0a 09 23 20 43 79 67 77 69 6e 20 70 61 74 68 73 20 73 74 61 72 .2>&1;.then..#.Cygwin.paths.star
6fea0 74 20 77 69 74 68 20 2f 63 79 67 64 72 69 76 65 2f 20 77 68 69 63 68 20 77 69 6c 6c 20 62 72 65 t.with./cygdrive/.which.will.bre
6fec0 61 6b 20 77 69 6e 64 6f 77 73 20 50 48 50 2c 0a 09 23 20 73 6f 20 77 65 20 6e 65 65 64 20 74 6f ak.windows.PHP,..#.so.we.need.to
6fee0 20 74 72 61 6e 73 6c 61 74 65 20 74 68 65 20 64 69 72 20 70 61 74 68 20 74 6f 20 77 69 6e 64 6f .translate.the.dir.path.to.windo
6ff00 77 73 20 66 6f 72 6d 61 74 2e 20 48 6f 77 65 76 65 72 0a 09 23 20 77 65 20 63 6f 75 6c 64 20 62 ws.format..However..#.we.could.b
6ff20 65 20 75 73 69 6e 67 20 63 79 67 77 69 6e 20 50 48 50 20 77 68 69 63 68 20 64 6f 65 73 20 6e 6f e.using.cygwin.PHP.which.does.no
6ff40 74 20 72 65 71 75 69 72 65 20 74 68 69 73 2c 20 73 6f 20 77 65 0a 09 23 20 74 65 73 74 20 69 66 t.require.this,.so.we..#.test.if
6ff60 20 74 68 65 20 70 61 74 68 20 74 6f 20 50 48 50 20 73 74 61 72 74 73 20 77 69 74 68 20 2f 63 79 .the.path.to.PHP.starts.with./cy
6ff80 67 64 72 69 76 65 2f 20 72 61 74 68 65 72 20 74 68 61 6e 20 2f 75 73 72 2f 62 69 6e 0a 09 69 66 gdrive/.rather.than./usr/bin..if
6ffa0 20 5b 5b 20 24 28 77 68 69 63 68 20 70 68 70 29 20 3d 3d 20 2f 63 79 67 64 72 69 76 65 2f 2a 20 .[[.$(which.php).==./cygdrive/*.
6ffc0 5d 5d 3b 20 74 68 65 6e 0a 09 09 64 69 72 3d 24 28 63 79 67 70 61 74 68 20 2d 6d 20 22 5c 24 64 ]];.then...dir=$(cygpath.-m."\$d
6ffe0 69 72 22 29 3b 0a 09 66 69 0a 66 69 0a 0a 64 69 72 3d 24 28 65 63 68 6f 20 5c 24 64 69 72 20 7c ir");..fi.fi..dir=$(echo.\$dir.|
70000 20 73 65 64 20 27 73 2f 20 2f 5c 20 2f 67 27 29 0a 22 5c 24 7b 64 69 72 7d 2f 24 62 69 6e 46 69 .sed.'s/./\./g')."\${dir}/$binFi
70020 6c 65 22 20 22 24 40 22 0a 0a 50 52 4f 58 59 3b 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 78 79 43 le"."$@"..PROXY;..return.$proxyC
70040 6f 64 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 ode;.}.}.<?php............namesp
70060 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d ace.Composer\Installer;..use.Com
70080 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 poser\IO\IOInterface;.use.Compos
700a0 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 er\Package\PackageInterface;.use
700c0 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a .Composer\Package\AliasPackage;.
700e0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f use.Composer\Repository\Reposito
70100 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 ryInterface;.use.Composer\Reposi
70120 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 tory\InstalledRepositoryInterfac
70140 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 e;.use.Composer\DependencyResolv
70160 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 3b er\Operation\OperationInterface;
70180 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 .use.Composer\DependencyResolver
701a0 5c 4f 70 65 72 61 74 69 6f 6e 5c 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 3b 0a 75 73 65 \Operation\InstallOperation;.use
701c0 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 .Composer\DependencyResolver\Ope
701e0 72 61 74 69 6f 6e 5c 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 ration\UpdateOperation;.use.Comp
70200 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f oser\DependencyResolver\Operatio
70220 6e 5c 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 n\UninstallOperation;.use.Compos
70240 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c er\DependencyResolver\Operation\
70260 4d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 3b 0a 75 73 65 MarkAliasInstalledOperation;.use
70280 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 .Composer\DependencyResolver\Ope
702a0 72 61 74 69 6f 6e 5c 4d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 ration\MarkAliasUninstalledOpera
702c0 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 74 72 65 61 6d 43 6f tion;.use.Composer\Util\StreamCo
702e0 6e 74 65 78 74 46 61 63 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 ntextFactory;.........class.Inst
70300 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6e 73 74 61 allationManager.{.private.$insta
70320 6c 6c 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 63 61 63 68 65 20 llers.=.array();.private.$cache.
70340 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 6e 6f 74 69 66 69 61 62 6c 65 50 61 =.array();.private.$notifiablePa
70360 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ckages.=.array();..public.functi
70380 6f 6e 20 72 65 73 65 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 69 66 69 61 62 6c 65 50 61 on.reset().{.$this->notifiablePa
703a0 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ckages.=.array();.}.......public
703c0 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 49 6e 73 74 61 6c 6c 65 72 .function.addInstaller(Installer
703e0 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 72 29 0a 7b 0a 61 72 72 61 79 5f 75 6e Interface.$installer).{.array_un
70400 73 68 69 66 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 72 73 2c 20 24 69 6e 73 74 61 6c shift($this->installers,.$instal
70420 6c 65 72 29 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a ler);.$this->cache.=.array();.}.
70440 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 49 6e 73 74 ......public.function.removeInst
70460 61 6c 6c 65 72 28 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c aller(InstallerInterface.$instal
70480 6c 65 72 29 0a 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 28 24 6b 65 79 20 3d 20 61 72 72 ler).{.if.(false.!==.($key.=.arr
704a0 61 79 5f 73 65 61 72 63 68 28 24 69 6e 73 74 61 6c 6c 65 72 2c 20 24 74 68 69 73 2d 3e 69 6e 73 ay_search($installer,.$this->ins
704c0 74 61 6c 6c 65 72 73 2c 20 74 72 75 65 29 29 29 20 7b 0a 61 72 72 61 79 5f 73 70 6c 69 63 65 28 tallers,.true))).{.array_splice(
704e0 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 72 73 2c 20 24 6b 65 79 2c 20 31 29 3b 0a 24 74 68 $this->installers,.$key,.1);.$th
70500 69 73 2d 3e 63 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a is->cache.=.array();.}.}........
70520 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 28 .public.function.disablePlugins(
70540 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 72 73 20 61 ).{.foreach.($this->installers.a
70560 73 20 24 69 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 65 72 29 20 7b 0a 69 66 20 28 21 24 69 6e 73 74 s.$i.=>.$installer).{.if.(!$inst
70580 61 6c 6c 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 6c 75 67 69 6e 49 6e 73 74 61 6c 6c 65 72 aller.instanceof.PluginInstaller
705a0 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 69 6e ).{.continue;.}..unset($this->in
705c0 73 74 61 6c 6c 65 72 73 5b 24 69 5d 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c stallers[$i]);.}.}..........publ
705e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 74 79 70 65 29 0a ic.function.getInstaller($type).
70600 7b 0a 24 74 79 70 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 79 70 65 29 3b 0a 0a 69 66 {.$type.=.strtolower($type);..if
70620 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 61 63 68 65 5b 24 74 79 70 65 5d 29 29 20 7b 0a .(isset($this->cache[$type])).{.
70640 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 61 63 68 65 5b 24 74 79 70 65 5d 3b 0a 7d 0a 0a 66 return.$this->cache[$type];.}..f
70660 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 72 73 20 61 73 20 24 69 6e oreach.($this->installers.as.$in
70680 73 74 61 6c 6c 65 72 29 20 7b 0a 69 66 20 28 24 69 6e 73 74 61 6c 6c 65 72 2d 3e 73 75 70 70 6f staller).{.if.($installer->suppo
706a0 72 74 73 28 24 74 79 70 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 61 63 68 rts($type)).{.return.$this->cach
706c0 65 5b 24 74 79 70 65 5d 20 3d 20 24 69 6e 73 74 61 6c 6c 65 72 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f e[$type].=.$installer;.}.}..thro
706e0 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 w.new.\InvalidArgumentException(
70700 27 55 6e 6b 6e 6f 77 6e 20 69 6e 73 74 61 6c 6c 65 72 20 74 79 70 65 3a 20 27 2e 24 74 79 70 65 'Unknown.installer.type:.'.$type
70720 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 );.}..........public.function.is
70740 50 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 PackageInstalled(InstalledReposi
70760 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 toryInterface.$repo,.PackageInte
70780 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 rface.$package).{.if.($package.i
707a0 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e nstanceof.AliasPackage).{.return
707c0 20 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 20 26 26 20 .$repo->hasPackage($package).&&.
707e0 24 74 68 69 73 2d 3e 69 73 50 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 64 28 24 72 65 70 6f 2c $this->isPackageInstalled($repo,
70800 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 29 3b 0a 7d 0a 0a 72 65 74 .$package->getAliasOf());.}..ret
70820 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 70 61 63 6b 61 67 65 urn.$this->getInstaller($package
70840 2d 3e 67 65 74 54 79 70 65 28 29 29 2d 3e 69 73 49 6e 73 74 61 6c 6c 65 64 28 24 72 65 70 6f 2c ->getType())->isInstalled($repo,
70860 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .$package);.}........public.func
70880 74 69 6f 6e 20 65 78 65 63 75 74 65 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 tion.execute(RepositoryInterface
708a0 20 24 72 65 70 6f 2c 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 24 6f 70 65 72 .$repo,.OperationInterface.$oper
708c0 61 74 69 6f 6e 29 0a 7b 0a 24 6d 65 74 68 6f 64 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 ation).{.$method.=.$operation->g
708e0 65 74 4a 6f 62 54 79 70 65 28 29 3b 0a 24 74 68 69 73 2d 3e 24 6d 65 74 68 6f 64 28 24 72 65 70 etJobType();.$this->$method($rep
70900 6f 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 o,.$operation);.}........public.
70920 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 function.install(RepositoryInter
70940 66 61 63 65 20 24 72 65 70 6f 2c 20 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 20 24 6f 70 face.$repo,.InstallOperation.$op
70960 65 72 61 74 69 6f 6e 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e eration).{.$package.=.$operation
70980 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 72 20 3d 20 24 74 68 ->getPackage();.$installer.=.$th
709a0 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 79 is->getInstaller($package->getTy
709c0 70 65 28 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 72 2d 3e 69 6e 73 74 61 6c 6c 28 24 72 65 70 6f pe());.$installer->install($repo
709e0 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 6d 61 72 6b 46 6f 72 4e 6f 74 69 66 ,.$package);.$this->markForNotif
70a00 69 63 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ication($package);.}........publ
70a20 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 ic.function.update(RepositoryInt
70a40 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 20 24 6f erface.$repo,.UpdateOperation.$o
70a60 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 24 69 6e 69 74 69 61 6c 20 3d 20 24 6f 70 65 72 61 74 69 6f peration).{.$initial.=.$operatio
70a80 6e 2d 3e 67 65 74 49 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 28 29 3b 0a 24 74 61 72 67 65 74 20 n->getInitialPackage();.$target.
70aa0 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 =.$operation->getTargetPackage()
70ac0 3b 0a 0a 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 54 ;..$initialType.=.$initial->getT
70ae0 79 70 65 28 29 3b 0a 24 74 61 72 67 65 74 54 79 70 65 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 ype();.$targetType.=.$target->ge
70b00 74 54 79 70 65 28 29 3b 0a 0a 69 66 20 28 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d 3d 3d 20 24 tType();..if.($initialType.===.$
70b20 74 61 72 67 65 74 54 79 70 65 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 72 20 3d 20 24 74 68 69 73 targetType).{.$installer.=.$this
70b40 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 69 6e 69 74 69 61 6c 54 79 70 65 29 3b 0a 24 69 ->getInstaller($initialType);.$i
70b60 6e 73 74 61 6c 6c 65 72 2d 3e 75 70 64 61 74 65 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 69 61 6c nstaller->update($repo,.$initial
70b80 2c 20 24 74 61 72 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 6d 61 72 6b 46 6f 72 4e 6f 74 69 66 69 ,.$target);.$this->markForNotifi
70ba0 63 61 74 69 6f 6e 28 24 74 61 72 67 65 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d cation($target);.}.else.{.$this-
70bc0 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 69 6e 69 74 69 61 6c 54 79 70 65 29 2d 3e 75 6e 69 >getInstaller($initialType)->uni
70be0 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 69 61 6c 29 3b 0a 24 74 68 69 73 2d 3e nstall($repo,.$initial);.$this->
70c00 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 74 61 72 67 65 74 54 79 70 65 29 2d 3e 69 6e 73 74 61 getInstaller($targetType)->insta
70c20 6c 6c 28 24 72 65 70 6f 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 ll($repo,.$target);.}.}........p
70c40 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 52 65 70 6f 73 69 74 ublic.function.uninstall(Reposit
70c60 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 oryInterface.$repo,.UninstallOpe
70c80 72 61 74 69 6f 6e 20 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 ration.$operation).{.$package.=.
70ca0 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 69 6e 73 74 61 $operation->getPackage();.$insta
70cc0 6c 6c 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 70 61 63 6b ller.=.$this->getInstaller($pack
70ce0 61 67 65 2d 3e 67 65 74 54 79 70 65 28 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 72 2d 3e 75 6e 69 age->getType());.$installer->uni
70d00 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a nstall($repo,.$package);.}......
70d20 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 ..public.function.markAliasInsta
70d40 6c 6c 65 64 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 lled(RepositoryInterface.$repo,.
70d60 4d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 20 24 6f 70 65 MarkAliasInstalledOperation.$ope
70d80 72 61 74 69 6f 6e 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d ration).{.$package.=.$operation-
70da0 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 >getPackage();..if.(!$repo->hasP
70dc0 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 ackage($package)).{.$repo->addPa
70de0 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a ckage(clone.$package);.}.}......
70e00 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 ..public.function.markAliasUnins
70e20 74 61 6c 6c 65 64 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f talled(RepositoryInterface.$repo
70e40 2c 20 4d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 20 ,.MarkAliasUninstalledOperation.
70e60 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 $operation).{.$package.=.$operat
70e80 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 ion->getPackage();..$repo->remov
70ea0 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ePackage($package);.}........pub
70ec0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 50 61 63 6b lic.function.getInstallPath(Pack
70ee0 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 69 6e 73 74 61 6c ageInterface.$package).{.$instal
70f00 6c 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 70 61 63 6b 61 ler.=.$this->getInstaller($packa
70f20 67 65 2d 3e 67 65 74 54 79 70 65 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c ge->getType());..return.$install
70f40 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a er->getInstallPath($package);.}.
70f60 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 69 66 79 49 6e 73 74 61 6c 6c 73 28 .public.function.notifyInstalls(
70f80 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 IOInterface.$io).{.foreach.($thi
70fa0 73 2d 3e 6e 6f 74 69 66 69 61 62 6c 65 50 61 63 6b 61 67 65 73 20 61 73 20 24 72 65 70 6f 55 72 s->notifiablePackages.as.$repoUr
70fc0 6c 20 3d 3e 20 24 70 61 63 6b 61 67 65 73 29 20 7b 0a 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d l.=>.$packages).{.$repositoryNam
70fe0 65 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 72 65 70 6f 55 72 6c 2c 20 50 48 50 5f 55 52 4c 5f e.=.parse_url($repoUrl,.PHP_URL_
71000 48 4f 53 54 29 3b 0a 69 66 20 28 24 69 6f 2d 3e 68 61 73 41 75 74 68 65 6e 74 69 63 61 74 69 6f HOST);.if.($io->hasAuthenticatio
71020 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 29 20 7b 0a 24 61 75 74 68 20 3d 20 24 69 n($repositoryName)).{.$auth.=.$i
71040 6f 2d 3e 67 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 o->getAuthentication($repository
71060 4e 61 6d 65 29 3b 0a 24 61 75 74 68 53 74 72 20 3d 20 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 Name);.$authStr.=.base64_encode(
71080 24 61 75 74 68 5b 27 75 73 65 72 6e 61 6d 65 27 5d 20 2e 20 27 3a 27 20 2e 20 24 61 75 74 68 5b $auth['username']...':'...$auth[
710a0 27 70 61 73 73 77 6f 72 64 27 5d 29 3b 0a 24 61 75 74 68 48 65 61 64 65 72 20 3d 20 27 41 75 74 'password']);.$authHeader.=.'Aut
710c0 68 6f 72 69 7a 61 74 69 6f 6e 3a 20 42 61 73 69 63 20 27 2e 24 61 75 74 68 53 74 72 3b 0a 7d 0a horization:.Basic.'.$authStr;.}.
710e0 0a 0a 20 69 66 20 28 73 74 72 70 6f 73 28 24 72 65 70 6f 55 72 6c 2c 20 27 25 70 61 63 6b 61 67 ...if.(strpos($repoUrl,.'%packag
71100 65 25 27 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 e%')).{.foreach.($packages.as.$p
71120 61 63 6b 61 67 65 29 20 7b 0a 24 75 72 6c 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 25 70 ackage).{.$url.=.str_replace('%p
71140 61 63 6b 61 67 65 25 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d ackage%',.$package->getPrettyNam
71160 65 28 29 2c 20 24 72 65 70 6f 55 72 6c 29 3b 0a 0a 24 70 61 72 61 6d 73 20 3d 20 61 72 72 61 79 e(),.$repoUrl);..$params.=.array
71180 28 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 (.'version'.=>.$package->getPret
711a0 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 tyVersion(),.'version_normalized
711c0 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 0a 29 3b 0a '.=>.$package->getVersion(),.);.
711e0 24 6f 70 74 73 20 3d 20 61 72 72 61 79 28 27 68 74 74 70 27 20 3d 3e 0a 61 72 72 61 79 28 0a 27 $opts.=.array('http'.=>.array(.'
71200 6d 65 74 68 6f 64 27 20 3d 3e 20 27 50 4f 53 54 27 2c 0a 27 68 65 61 64 65 72 27 20 3d 3e 20 61 method'.=>.'POST',.'header'.=>.a
71220 72 72 61 79 28 27 43 6f 6e 74 65 6e 74 2d 74 79 70 65 3a 20 61 70 70 6c 69 63 61 74 69 6f 6e 2f rray('Content-type:.application/
71240 78 2d 77 77 77 2d 66 6f 72 6d 2d 75 72 6c 65 6e 63 6f 64 65 64 27 29 2c 0a 27 63 6f 6e 74 65 6e x-www-form-urlencoded'),.'conten
71260 74 27 20 3d 3e 20 68 74 74 70 5f 62 75 69 6c 64 5f 71 75 65 72 79 28 24 70 61 72 61 6d 73 2c 20 t'.=>.http_build_query($params,.
71280 27 27 2c 20 27 26 27 29 2c 0a 27 74 69 6d 65 6f 75 74 27 20 3d 3e 20 33 2c 0a 29 2c 0a 29 3b 0a '',.'&'),.'timeout'.=>.3,.),.);.
712a0 69 66 20 28 69 73 73 65 74 28 24 61 75 74 68 48 65 61 64 65 72 29 29 20 7b 0a 24 6f 70 74 73 5b if.(isset($authHeader)).{.$opts[
712c0 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 5b 5d 20 3d 20 24 61 75 74 68 48 65 61 64 65 'http']['header'][].=.$authHeade
712e0 72 3b 0a 7d 0a 0a 24 63 6f 6e 74 65 78 74 20 3d 20 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 r;.}..$context.=.StreamContextFa
71300 63 74 6f 72 79 3a 3a 67 65 74 43 6f 6e 74 65 78 74 28 24 75 72 6c 2c 20 24 6f 70 74 73 29 3b 0a ctory::getContext($url,.$opts);.
71320 40 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 75 72 6c 2c 20 66 61 6c 73 65 2c 20 @file_get_contents($url,.false,.
71340 24 63 6f 6e 74 65 78 74 29 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 6f 73 74 $context);.}..continue;.}..$post
71360 44 61 74 61 20 3d 20 61 72 72 61 79 28 27 64 6f 77 6e 6c 6f 61 64 73 27 20 3d 3e 20 61 72 72 61 Data.=.array('downloads'.=>.arra
71380 79 28 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 y());.foreach.($packages.as.$pac
713a0 6b 61 67 65 29 20 7b 0a 24 70 6f 73 74 44 61 74 61 5b 27 64 6f 77 6e 6c 6f 61 64 73 27 5d 5b 5d kage).{.$postData['downloads'][]
713c0 20 3d 20 61 72 72 61 79 28 0a 27 6e 61 6d 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 .=.array(.'name'.=>.$package->ge
713e0 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 70 61 63 tPrettyName(),.'version'.=>.$pac
71400 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 0a 29 3b 0a 7d 0a 0a 24 6f 70 74 73 20 kage->getVersion(),.);.}..$opts.
71420 3d 20 61 72 72 61 79 28 27 68 74 74 70 27 20 3d 3e 0a 61 72 72 61 79 28 0a 27 6d 65 74 68 6f 64 =.array('http'.=>.array(.'method
71440 27 20 3d 3e 20 27 50 4f 53 54 27 2c 0a 27 68 65 61 64 65 72 27 20 3d 3e 20 61 72 72 61 79 28 27 '.=>.'POST',.'header'.=>.array('
71460 43 6f 6e 74 65 6e 74 2d 54 79 70 65 3a 20 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6a 73 6f 6e 27 29 Content-Type:.application/json')
71480 2c 0a 27 63 6f 6e 74 65 6e 74 27 20 3d 3e 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 70 6f 73 74 ,.'content'.=>.json_encode($post
714a0 44 61 74 61 29 2c 0a 27 74 69 6d 65 6f 75 74 27 20 3d 3e 20 36 2c 0a 29 2c 0a 29 3b 0a 69 66 20 Data),.'timeout'.=>.6,.),.);.if.
714c0 28 69 73 73 65 74 28 24 61 75 74 68 48 65 61 64 65 72 29 29 20 7b 0a 24 6f 70 74 73 5b 27 68 74 (isset($authHeader)).{.$opts['ht
714e0 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 5b 5d 20 3d 20 24 61 75 74 68 48 65 61 64 65 72 3b 0a tp']['header'][].=.$authHeader;.
71500 7d 0a 0a 24 63 6f 6e 74 65 78 74 20 3d 20 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f }..$context.=.StreamContextFacto
71520 72 79 3a 3a 67 65 74 43 6f 6e 74 65 78 74 28 24 72 65 70 6f 55 72 6c 2c 20 24 6f 70 74 73 29 3b ry::getContext($repoUrl,.$opts);
71540 0a 40 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 72 65 70 6f 55 72 6c 2c 20 66 61 .@file_get_contents($repoUrl,.fa
71560 6c 73 65 2c 20 24 63 6f 6e 74 65 78 74 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 28 lse,.$context);.}..$this->reset(
71580 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b 46 6f 72 4e 6f );.}..private.function.markForNo
715a0 74 69 66 69 63 61 74 69 6f 6e 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 tification(PackageInterface.$pac
715c0 6b 61 67 65 29 0a 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 6f 74 69 66 69 63 kage).{.if.($package->getNotific
715e0 61 74 69 6f 6e 55 72 6c 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 69 66 69 61 62 6c 65 50 ationUrl()).{.$this->notifiableP
71600 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 6f 74 69 66 69 63 61 74 69 6f ackages[$package->getNotificatio
71620 6e 55 72 6c 28 29 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 nUrl()][$package->getName()].=.$
71640 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a package;.}.}.}.<?php............
71660 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 namespace.Composer\Installer;..u
71680 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 se.Composer\Composer;.use.Compos
716a0 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6c 69 63 79 49 6e 74 65 er\DependencyResolver\PolicyInte
716c0 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 rface;.use.Composer\DependencyRe
716e0 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 solver\Operation\OperationInterf
71700 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f ace;.use.Composer\DependencyReso
71720 6c 76 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e lver\Pool;.use.Composer\Dependen
71740 63 79 52 65 73 6f 6c 76 65 72 5c 52 65 71 75 65 73 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 cyResolver\Request;.use.Composer
71760 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 \EventDispatcher\Event;.use.Comp
71780 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 oser\IO\IOInterface;.use.Compose
717a0 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 r\Repository\CompositeRepository
717c0 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 20 65 78 74 ;.......class.InstallerEvent.ext
717e0 65 6e 64 73 20 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 70 6f 73 65 ends.Event.{....private.$compose
71800 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 r;.....private.$io;.....private.
71820 24 64 65 76 4d 6f 64 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 6f 6c 69 63 79 3b 0a 0a $devMode;.....private.$policy;..
71840 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 6f 6f 6c 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 ...private.$pool;.....private.$i
71860 6e 73 74 61 6c 6c 65 64 52 65 70 6f 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 65 71 75 65 nstalledRepo;.....private.$reque
71880 73 74 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 70 65 72 61 74 69 6f 6e 73 3b 0a 0a 0a 0a st;.....private.$operations;....
718a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e ...........public.function.__con
718c0 73 74 72 75 63 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d struct($eventName,.Composer.$com
718e0 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 64 65 76 4d 6f 64 65 poser,.IOInterface.$io,.$devMode
71900 2c 20 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f 6c 69 63 79 2c 20 50 6f 6f 6c 20 ,.PolicyInterface.$policy,.Pool.
71920 24 70 6f 6f 6c 2c 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 20 24 69 6e 73 74 $pool,.CompositeRepository.$inst
71940 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 71 75 65 73 74 20 24 72 65 71 75 65 73 74 2c 20 61 72 72 alledRepo,.Request.$request,.arr
71960 61 79 20 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 70 61 72 65 ay.$operations.=.array()).{.pare
71980 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 65 76 65 6e 74 4e 61 6d 65 29 3b 0a 0a 24 74 nt::__construct($eventName);..$t
719a0 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 24 74 68 69 73 his->composer.=.$composer;.$this
719c0 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 20 3d 20 24 64 65 ->io.=.$io;.$this->devMode.=.$de
719e0 76 4d 6f 64 65 3b 0a 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 20 3d 20 24 70 6f 6c 69 63 79 3b 0a vMode;.$this->policy.=.$policy;.
71a00 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 $this->pool.=.$pool;.$this->inst
71a20 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 3b 0a 24 74 68 69 alledRepo.=.$installedRepo;.$thi
71a40 73 2d 3e 72 65 71 75 65 73 74 20 3d 20 24 72 65 71 75 65 73 74 3b 0a 24 74 68 69 73 2d 3e 6f 70 s->request.=.$request;.$this->op
71a60 65 72 61 74 69 6f 6e 73 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 erations.=.$operations;.}.....pu
71a80 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 0a 7b 0a 72 65 blic.function.getComposer().{.re
71aa0 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c turn.$this->composer;.}.....publ
71ac0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 4f 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 ic.function.getIO().{.return.$th
71ae0 69 73 2d 3e 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 is->io;.}.....public.function.is
71b00 44 65 76 4d 6f 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 DevMode().{.return.$this->devMod
71b20 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6f 6c 69 e;.}.....public.function.getPoli
71b40 63 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 3b 0a 7d 0a 0a cy().{.return.$this->policy;.}..
71b60 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6f 6f 6c 28 29 0a 7b 0a 72 ...public.function.getPool().{.r
71b80 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 eturn.$this->pool;.}.....public.
71ba0 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 28 29 0a 7b 0a 72 65 function.getInstalledRepo().{.re
71bc0 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 3b 0a 7d 0a 0a 0a 0a turn.$this->installedRepo;.}....
71be0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 71 75 65 73 74 28 29 0a 7b 0a .public.function.getRequest().{.
71c00 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 return.$this->request;.}.....pub
71c20 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 65 72 61 74 69 6f 6e 73 28 29 0a 7b 0a 72 lic.function.getOperations().{.r
71c40 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 69 6f 6e 73 3b 0a 7d 0a 7d 0a 3c 3f 70 eturn.$this->operations;.}.}.<?p
71c60 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
71c80 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 65 \Installer;.......class.Installe
71ca0 72 45 76 65 6e 74 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 44 45 50 rEvents.{..........const.PRE_DEP
71cc0 45 4e 44 45 4e 43 49 45 53 5f 53 4f 4c 56 49 4e 47 20 3d 20 27 70 72 65 2d 64 65 70 65 6e 64 65 ENDENCIES_SOLVING.=.'pre-depende
71ce0 6e 63 69 65 73 2d 73 6f 6c 76 69 6e 67 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 ncies-solving';...........const.
71d00 50 4f 53 54 5f 44 45 50 45 4e 44 45 4e 43 49 45 53 5f 53 4f 4c 56 49 4e 47 20 3d 20 27 70 6f 73 POST_DEPENDENCIES_SOLVING.=.'pos
71d20 74 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 2d 73 6f 6c 76 69 6e 67 27 3b 0a 7d 0a 3c 3f 70 68 70 t-dependencies-solving';.}.<?php
71d40 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 ............namespace.Composer\I
71d60 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c nstaller;..use.Composer\Package\
71d80 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 PackageInterface;.use.Composer\R
71da0 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 epository\InstalledRepositoryInt
71dc0 65 72 66 61 63 65 3b 0a 75 73 65 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 erface;.use.InvalidArgumentExcep
71de0 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 6e 73 74 61 6c 6c 65 72 tion;........interface.Installer
71e00 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f Interface.{.......public.functio
71e20 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 65 29 3b 0a 0a 0a 0a 0a 0a 0a n.supports($packageType);.......
71e40 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 ...public.function.isInstalled(I
71e60 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 nstalledRepositoryInterface.$rep
71e80 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a o,.PackageInterface.$package);..
71ea0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 6e ......public.function.install(In
71ec0 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f stalledRepositoryInterface.$repo
71ee0 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a ,.PackageInterface.$package);...
71f00 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 49 ........public.function.update(I
71f20 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 nstalledRepositoryInterface.$rep
71f40 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 o,.PackageInterface.$initial,.Pa
71f60 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 3b 0a 0a 0a 0a 0a 0a 0a 0a ckageInterface.$target);........
71f80 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c public.function.uninstall(Instal
71fa0 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 ledRepositoryInterface.$repo,.Pa
71fc0 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a ckageInterface.$package);.......
71fe0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 .public.function.getInstallPath(
72000 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 3c 3f PackageInterface.$package);.}.<?
72020 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 php............namespace.Compose
72040 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f r\Installer;..use.Composer\Compo
72060 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 ser;.use.Composer\IO\IOInterface
72080 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c ;.use.Composer\Repository\Instal
720a0 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 ledRepositoryInterface;.use.Comp
720c0 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 oser\Package\PackageInterface;.u
720e0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 se.Composer\Util\Filesystem;.use
72100 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 69 6c 65 6e 63 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a .Composer\Util\Silencer;........
72120 63 6c 61 73 73 20 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c 65 72 20 69 6d 70 6c 65 6d 65 6e 74 class.LibraryInstaller.implement
72140 73 20 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 s.InstallerInterface.{.protected
72160 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 6e 64 6f 72 44 69 72 .$composer;.protected.$vendorDir
72180 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 69 6e 44 69 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 ;.protected.$binDir;.protected.$
721a0 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a downloadManager;.protected.$io;.
721c0 70 72 6f 74 65 63 74 65 64 20 24 74 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c 65 protected.$type;.protected.$file
721e0 73 79 73 74 65 6d 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 69 6e 43 6f 6d 70 61 74 3b 0a 70 72 system;.protected.$binCompat;.pr
72200 6f 74 65 63 74 65 64 20 24 62 69 6e 61 72 79 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 0a 0a 0a 0a 0a otected.$binaryInstaller;.......
72220 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 ....public.function.__construct(
72240 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f IOInterface.$io,.Composer.$compo
72260 73 65 72 2c 20 24 74 79 70 65 20 3d 20 27 6c 69 62 72 61 72 79 27 2c 20 46 69 6c 65 73 79 73 74 ser,.$type.=.'library',.Filesyst
72280 65 6d 20 24 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 75 6c 6c 2c 20 42 69 6e 61 72 79 49 6e 73 em.$filesystem.=.null,.BinaryIns
722a0 74 61 6c 6c 65 72 20 24 62 69 6e 61 72 79 49 6e 73 74 61 6c 6c 65 72 20 3d 20 6e 75 6c 6c 29 0a taller.$binaryInstaller.=.null).
722c0 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 24 {.$this->composer.=.$composer;.$
722e0 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 this->downloadManager.=.$compose
72300 72 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e r->getDownloadManager();.$this->
72320 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 24 74 79 70 65 3b 0a 0a io.=.$io;.$this->type.=.$type;..
72340 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 20 $this->filesystem.=.$filesystem.
72360 3f 3a 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 74 68 69 73 2d 3e 76 65 6e 64 ?:.new.Filesystem();.$this->vend
72380 6f 72 44 69 72 20 3d 20 72 74 72 69 6d 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 orDir.=.rtrim($composer->getConf
723a0 69 67 28 29 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 2c 20 27 2f 27 29 3b 0a 24 ig()->get('vendor-dir'),.'/');.$
723c0 74 68 69 73 2d 3e 62 69 6e 61 72 79 49 6e 73 74 61 6c 6c 65 72 20 3d 20 24 62 69 6e 61 72 79 49 this->binaryInstaller.=.$binaryI
723e0 6e 73 74 61 6c 6c 65 72 20 3f 3a 20 6e 65 77 20 42 69 6e 61 72 79 49 6e 73 74 61 6c 6c 65 72 28 nstaller.?:.new.BinaryInstaller(
72400 24 74 68 69 73 2d 3e 69 6f 2c 20 72 74 72 69 6d 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 $this->io,.rtrim($composer->getC
72420 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 62 69 6e 2d 64 69 72 27 29 2c 20 27 2f 27 29 2c 20 24 onfig()->get('bin-dir'),.'/'),.$
72440 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 62 69 6e 2d composer->getConfig()->get('bin-
72460 63 6f 6d 70 61 74 27 29 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 29 3b 0a 7d 0a compat'),.$this->filesystem);.}.
72480 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 ....public.function.supports($pa
724a0 63 6b 61 67 65 54 79 70 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 54 79 70 65 ckageType).{.return.$packageType
724c0 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 20 7c 7c 20 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 .===.$this->type.||.null.===.$th
724e0 69 73 2d 3e 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 is->type;.}.....public.function.
72500 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 isInstalled(InstalledRepositoryI
72520 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 nterface.$repo,.PackageInterface
72540 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 72 65 70 6f 2d 3e 68 61 73 50 61 .$package).{.return.$repo->hasPa
72560 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 ckage($package).&&.is_readable($
72580 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 29 3b this->getInstallPath($package));
725a0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 .}.....public.function.install(I
725c0 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 nstalledRepositoryInterface.$rep
725e0 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a o,.PackageInterface.$package).{.
72600 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 56 65 6e 64 6f 72 44 69 72 28 29 3b 0a 24 64 $this->initializeVendorDir();.$d
72620 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 ownloadPath.=.$this->getInstallP
72640 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 20 69 66 20 28 21 69 73 5f 72 65 61 64 61 62 ath($package);....if.(!is_readab
72660 6c 65 28 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 29 20 26 26 20 24 72 65 70 6f 2d 3e 68 61 73 50 le($downloadPath).&&.$repo->hasP
72680 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 62 69 6e 61 72 ackage($package)).{.$this->binar
726a0 79 49 6e 73 74 61 6c 6c 65 72 2d 3e 72 65 6d 6f 76 65 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b yInstaller->removeBinaries($pack
726c0 61 67 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 43 6f 64 65 28 24 70 61 63 age);.}..$this->installCode($pac
726e0 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 61 72 79 49 6e 73 74 61 6c 6c 65 72 2d 3e 69 kage);.$this->binaryInstaller->i
72700 6e 73 74 61 6c 6c 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 74 68 69 73 2d 3e nstallBinaries($package,.$this->
72720 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 69 66 20 28 21 getInstallPath($package));.if.(!
72740 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 $repo->hasPackage($package)).{.$
72760 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 70 61 63 6b 61 67 65 29 repo->addPackage(clone.$package)
72780 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 ;.}.}.....public.function.update
727a0 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 (InstalledRepositoryInterface.$r
727c0 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 epo,.PackageInterface.$initial,.
727e0 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 69 66 20 28 PackageInterface.$target).{.if.(
72800 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 29 20 7b 0a !$repo->hasPackage($initial)).{.
72820 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 throw.new.\InvalidArgumentExcept
72840 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 3a 20 27 ion('Package.is.not.installed:.'
72860 2e 24 69 6e 69 74 69 61 6c 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 .$initial);.}..$this->initialize
72880 56 65 6e 64 6f 72 44 69 72 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 62 69 6e 61 72 79 49 6e 73 74 61 VendorDir();..$this->binaryInsta
728a0 6c 6c 65 72 2d 3e 72 65 6d 6f 76 65 42 69 6e 61 72 69 65 73 28 24 69 6e 69 74 69 61 6c 29 3b 0a ller->removeBinaries($initial);.
728c0 24 74 68 69 73 2d 3e 75 70 64 61 74 65 43 6f 64 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 $this->updateCode($initial,.$tar
728e0 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 61 72 79 49 6e 73 74 61 6c 6c 65 72 2d 3e 69 6e get);.$this->binaryInstaller->in
72900 73 74 61 6c 6c 42 69 6e 61 72 69 65 73 28 24 74 61 72 67 65 74 2c 20 24 74 68 69 73 2d 3e 67 65 stallBinaries($target,.$this->ge
72920 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 74 61 72 67 65 74 29 29 3b 0a 24 72 65 70 6f 2d 3e 72 tInstallPath($target));.$repo->r
72940 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 3b 0a 69 66 20 28 21 24 72 65 emovePackage($initial);.if.(!$re
72960 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 74 61 72 67 65 74 29 29 20 7b 0a 24 72 65 70 6f po->hasPackage($target)).{.$repo
72980 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d ->addPackage(clone.$target);.}.}
729a0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 49 .....public.function.uninstall(I
729c0 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 nstalledRepositoryInterface.$rep
729e0 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a o,.PackageInterface.$package).{.
72a00 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 if.(!$repo->hasPackage($package)
72a20 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 ).{.throw.new.\InvalidArgumentEx
72a40 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 ception('Package.is.not.installe
72a60 64 3a 20 27 2e 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 d:.'.$package);.}..$this->remove
72a80 43 6f 64 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 61 72 79 49 6e 73 Code($package);.$this->binaryIns
72aa0 74 61 6c 6c 65 72 2d 3e 72 65 6d 6f 76 65 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 29 taller->removeBinaries($package)
72ac0 3b 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 ;.$repo->removePackage($package)
72ae0 3b 0a 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 ;..$downloadPath.=.$this->getPac
72b00 6b 61 67 65 42 61 73 65 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 73 74 72 70 kageBasePath($package);.if.(strp
72b20 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 27 2f 27 29 29 20 7b 0a os($package->getName(),.'/')).{.
72b40 24 70 61 63 6b 61 67 65 56 65 6e 64 6f 72 44 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 24 64 6f 77 $packageVendorDir.=.dirname($dow
72b60 6e 6c 6f 61 64 50 61 74 68 29 3b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 70 61 63 6b 61 67 65 56 nloadPath);.if.(is_dir($packageV
72b80 65 6e 64 6f 72 44 69 72 29 20 26 26 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e endorDir).&&.$this->filesystem->
72ba0 69 73 44 69 72 45 6d 70 74 79 28 24 70 61 63 6b 61 67 65 56 65 6e 64 6f 72 44 69 72 29 29 20 7b isDirEmpty($packageVendorDir)).{
72bc0 0a 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 72 6d 64 69 72 27 2c 20 24 70 61 63 6b 61 67 .Silencer::call('rmdir',.$packag
72be0 65 56 65 6e 64 6f 72 44 69 72 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 eVendorDir);.}.}.}.....public.fu
72c00 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 50 61 63 6b 61 67 65 49 6e 74 nction.getInstallPath(PackageInt
72c20 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 erface.$package).{.$this->initia
72c40 6c 69 7a 65 56 65 6e 64 6f 72 44 69 72 28 29 3b 0a 0a 24 62 61 73 65 50 61 74 68 20 3d 20 28 24 lizeVendorDir();..$basePath.=.($
72c60 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 20 3f 20 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 this->vendorDir.?.$this->vendorD
72c80 69 72 2e 27 2f 27 20 3a 20 27 27 29 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 ir.'/'.:.'')...$package->getPret
72ca0 74 79 4e 61 6d 65 28 29 3b 0a 24 74 61 72 67 65 74 44 69 72 20 3d 20 24 70 61 63 6b 61 67 65 2d tyName();.$targetDir.=.$package-
72cc0 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 62 61 73 65 50 61 >getTargetDir();..return.$basePa
72ce0 74 68 20 2e 20 28 24 74 61 72 67 65 74 44 69 72 20 3f 20 27 2f 27 2e 24 74 61 72 67 65 74 44 69 th...($targetDir.?.'/'.$targetDi
72d00 72 20 3a 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 r.:.'');.}...........protected.f
72d20 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 42 61 73 65 50 61 74 68 28 50 61 63 6b 61 unction.getPackageBasePath(Packa
72d40 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c geInterface.$package).{.$install
72d60 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 Path.=.$this->getInstallPath($pa
72d80 63 6b 61 67 65 29 3b 0a 24 74 61 72 67 65 74 44 69 72 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 ckage);.$targetDir.=.$package->g
72da0 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 0a 69 66 20 28 24 74 61 72 67 65 74 44 69 72 29 20 etTargetDir();..if.($targetDir).
72dc0 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 2f 2a 27 2e 73 74 72 5f {.return.preg_replace('{/*'.str_
72de0 72 65 70 6c 61 63 65 28 27 2f 27 2c 20 27 2f 2b 27 2c 20 70 72 65 67 5f 71 75 6f 74 65 28 24 74 replace('/',.'/+',.preg_quote($t
72e00 61 72 67 65 74 44 69 72 29 29 2e 27 2f 3f 24 7d 27 2c 20 27 27 2c 20 24 69 6e 73 74 61 6c 6c 50 argetDir)).'/?$}',.'',.$installP
72e20 61 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a 7d 0a ath);.}..return.$installPath;.}.
72e40 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 43 6f 64 65 28 .protected.function.installCode(
72e60 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 64 6f PackageInterface.$package).{.$do
72e80 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 wnloadPath.=.$this->getInstallPa
72ea0 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e th($package);.$this->downloadMan
72ec0 61 67 65 72 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 64 6f 77 6e 6c 6f ager->download($package,.$downlo
72ee0 61 64 50 61 74 68 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 adPath);.}..protected.function.u
72f00 70 64 61 74 65 43 6f 64 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 pdateCode(PackageInterface.$init
72f20 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b ial,.PackageInterface.$target).{
72f40 0a 24 69 6e 69 74 69 61 6c 44 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 .$initialDownloadPath.=.$this->g
72f60 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 69 6e 69 74 69 61 6c 29 3b 0a 24 74 61 72 67 65 74 etInstallPath($initial);.$target
72f80 44 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c DownloadPath.=.$this->getInstall
72fa0 50 61 74 68 28 24 74 61 72 67 65 74 29 3b 0a 69 66 20 28 24 74 61 72 67 65 74 44 6f 77 6e 6c 6f Path($target);.if.($targetDownlo
72fc0 61 64 50 61 74 68 20 21 3d 3d 20 24 69 6e 69 74 69 61 6c 44 6f 77 6e 6c 6f 61 64 50 61 74 68 29 adPath.!==.$initialDownloadPath)
72fe0 20 7b 0a 0a 20 0a 20 69 66 20 28 73 75 62 73 74 72 28 24 69 6e 69 74 69 61 6c 44 6f 77 6e 6c 6f .{.....if.(substr($initialDownlo
73000 61 64 50 61 74 68 2c 20 30 2c 20 73 74 72 6c 65 6e 28 24 74 61 72 67 65 74 44 6f 77 6e 6c 6f 61 adPath,.0,.strlen($targetDownloa
73020 64 50 61 74 68 29 29 20 3d 3d 3d 20 24 74 61 72 67 65 74 44 6f 77 6e 6c 6f 61 64 50 61 74 68 0a dPath)).===.$targetDownloadPath.
73040 7c 7c 20 73 75 62 73 74 72 28 24 74 61 72 67 65 74 44 6f 77 6e 6c 6f 61 64 50 61 74 68 2c 20 30 ||.substr($targetDownloadPath,.0
73060 2c 20 73 74 72 6c 65 6e 28 24 69 6e 69 74 69 61 6c 44 6f 77 6e 6c 6f 61 64 50 61 74 68 29 29 20 ,.strlen($initialDownloadPath)).
73080 3d 3d 3d 20 24 69 6e 69 74 69 61 6c 44 6f 77 6e 6c 6f 61 64 50 61 74 68 0a 29 20 7b 0a 24 74 68 ===.$initialDownloadPath.).{.$th
730a0 69 73 2d 3e 72 65 6d 6f 76 65 43 6f 64 65 28 24 69 6e 69 74 69 61 6c 29 3b 0a 24 74 68 69 73 2d is->removeCode($initial);.$this-
730c0 3e 69 6e 73 74 61 6c 6c 43 6f 64 65 28 24 74 61 72 67 65 74 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a >installCode($target);..return;.
730e0 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6e 61 6d 65 28 24 69 6e }..$this->filesystem->rename($in
73100 69 74 69 61 6c 44 6f 77 6e 6c 6f 61 64 50 61 74 68 2c 20 24 74 61 72 67 65 74 44 6f 77 6e 6c 6f itialDownloadPath,.$targetDownlo
73120 61 64 50 61 74 68 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 adPath);.}.$this->downloadManage
73140 72 2d 3e 75 70 64 61 74 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 2c 20 24 74 61 r->update($initial,.$target,.$ta
73160 72 67 65 74 44 6f 77 6e 6c 6f 61 64 50 61 74 68 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 rgetDownloadPath);.}..protected.
73180 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 43 6f 64 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 function.removeCode(PackageInter
731a0 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d face.$package).{.$downloadPath.=
731c0 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 42 61 73 65 50 61 74 68 28 24 70 61 63 6b .$this->getPackageBasePath($pack
731e0 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 72 65 age);.$this->downloadManager->re
73200 6d 6f 76 65 28 24 70 61 63 6b 61 67 65 2c 20 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 29 3b 0a 7d move($package,.$downloadPath);.}
73220 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 56 ..protected.function.initializeV
73240 65 6e 64 6f 72 44 69 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e endorDir().{.$this->filesystem->
73260 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 68 69 73 2d 3e 76 65 6e ensureDirectoryExists($this->ven
73280 64 6f 72 44 69 72 29 3b 0a 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 20 3d 20 72 65 61 6c dorDir);.$this->vendorDir.=.real
732a0 70 61 74 68 28 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 path($this->vendorDir);.}.}.<?ph
732c0 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c p............namespace.Composer\
732e0 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 Installer;..use.Composer\Reposit
73300 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 ory\InstalledRepositoryInterface
73320 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e ;.use.Composer\Package\PackageIn
73340 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 65 74 61 70 61 63 6b 61 67 65 terface;.......class.Metapackage
73360 49 6e 73 74 61 6c 6c 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 73 74 61 6c 6c 65 72 49 6e Installer.implements.InstallerIn
73380 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 terface.{....public.function.sup
733a0 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 61 ports($packageType).{.return.$pa
733c0 63 6b 61 67 65 54 79 70 65 20 3d 3d 3d 20 27 6d 65 74 61 70 61 63 6b 61 67 65 27 3b 0a 7d 0a 0a ckageType.===.'metapackage';.}..
733e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 ...public.function.isInstalled(I
73400 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 nstalledRepositoryInterface.$rep
73420 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a o,.PackageInterface.$package).{.
73440 72 65 74 75 72 6e 20 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 return.$repo->hasPackage($packag
73460 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c e);.}.....public.function.instal
73480 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 l(InstalledRepositoryInterface.$
734a0 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 repo,.PackageInterface.$package)
734c0 0a 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 70 61 63 6b .{.$repo->addPackage(clone.$pack
734e0 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 age);.}.....public.function.upda
73500 74 65 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 te(InstalledRepositoryInterface.
73520 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c $repo,.PackageInterface.$initial
73540 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 69 66 ,.PackageInterface.$target).{.if
73560 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 29 20 .(!$repo->hasPackage($initial)).
73580 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 {.throw.new.\InvalidArgumentExce
735a0 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 3a ption('Package.is.not.installed:
735c0 20 27 2e 24 69 6e 69 74 69 61 6c 29 3b 0a 7d 0a 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 .'.$initial);.}..$repo->removePa
735e0 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 3b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 ckage($initial);.$repo->addPacka
73600 67 65 28 63 6c 6f 6e 65 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ge(clone.$target);.}.....public.
73620 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f function.uninstall(InstalledRepo
73640 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e sitoryInterface.$repo,.PackageIn
73660 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e terface.$package).{.if.(!$repo->
73680 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 hasPackage($package)).{.throw.ne
736a0 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 w.\InvalidArgumentException('Pac
736c0 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 3a 20 27 2e 24 70 61 63 6b 61 67 kage.is.not.installed:.'.$packag
736e0 65 29 3b 0a 7d 0a 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 e);.}..$repo->removePackage($pac
73700 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 kage);.}.....public.function.get
73720 49 6e 73 74 61 6c 6c 50 61 74 68 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 InstallPath(PackageInterface.$pa
73740 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ckage).{.return.'';.}.}.<?php...
73760 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 .........namespace.Composer\Inst
73780 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c aller;..use.Composer\Repository\
737a0 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 InstalledRepositoryInterface;.us
737c0 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 e.Composer\Package\PackageInterf
737e0 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 ace;.........class.NoopInstaller
73800 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 63 65 0a 7b .implements.InstallerInterface.{
73820 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 ....public.function.supports($pa
73840 63 6b 61 67 65 54 79 70 65 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a ckageType).{.return.true;.}.....
73860 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 public.function.isInstalled(Inst
73880 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 alledRepositoryInterface.$repo,.
738a0 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 PackageInterface.$package).{.ret
738c0 75 72 6e 20 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b urn.$repo->hasPackage($package);
738e0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 .}.....public.function.install(I
73900 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 nstalledRepositoryInterface.$rep
73920 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a o,.PackageInterface.$package).{.
73940 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 if.(!$repo->hasPackage($package)
73960 29 20 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 70 61 63 ).{.$repo->addPackage(clone.$pac
73980 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 kage);.}.}.....public.function.u
739a0 70 64 61 74 65 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 pdate(InstalledRepositoryInterfa
739c0 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 ce.$repo,.PackageInterface.$init
739e0 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b ial,.PackageInterface.$target).{
73a00 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c .if.(!$repo->hasPackage($initial
73a20 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 )).{.throw.new.\InvalidArgumentE
73a40 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c xception('Package.is.not.install
73a60 65 64 3a 20 27 2e 24 69 6e 69 74 69 61 6c 29 3b 0a 7d 0a 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 ed:.'.$initial);.}..$repo->remov
73a80 65 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 3b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e ePackage($initial);.if.(!$repo->
73aa0 68 61 73 50 61 63 6b 61 67 65 28 24 74 61 72 67 65 74 29 29 20 7b 0a 24 72 65 70 6f 2d 3e 61 64 hasPackage($target)).{.$repo->ad
73ac0 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 0a 0a 0a dPackage(clone.$target);.}.}....
73ae0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 .public.function.uninstall(Insta
73b00 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 lledRepositoryInterface.$repo,.P
73b20 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 ackageInterface.$package).{.if.(
73b40 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a !$repo->hasPackage($package)).{.
73b60 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 throw.new.\InvalidArgumentExcept
73b80 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 3a 20 27 ion('Package.is.not.installed:.'
73ba0 2e 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 .$package);.}.$repo->removePacka
73bc0 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ge($package);.}.....public.funct
73be0 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 ion.getInstallPath(PackageInterf
73c00 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 74 61 72 67 65 74 44 69 72 20 3d 20 24 70 61 ace.$package).{.$targetDir.=.$pa
73c20 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 ckage->getTargetDir();..return.$
73c40 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 20 2e 20 28 24 74 61 72 package->getPrettyName()...($tar
73c60 67 65 74 44 69 72 20 3f 20 27 2f 27 2e 24 74 61 72 67 65 74 44 69 72 20 3a 20 27 27 29 3b 0a 7d getDir.?.'/'.$targetDir.:.'');.}
73c80 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
73ca0 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c mposer\Installer;..use.Composer\
73cc0 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 Composer;.use.Composer\IO\IOInte
73ce0 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 rface;.use.Composer\DependencyRe
73d00 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 solver\Operation\OperationInterf
73d20 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f ace;.use.Composer\DependencyReso
73d40 6c 76 65 72 5c 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 lver\PolicyInterface;.use.Compos
73d60 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 er\DependencyResolver\Pool;.use.
73d80 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 52 65 71 75 Composer\DependencyResolver\Requ
73da0 65 73 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d est;.use.Composer\Repository\Com
73dc0 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 positeRepository;.......class.Pa
73de0 63 6b 61 67 65 45 76 65 6e 74 20 65 78 74 65 6e 64 73 20 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e ckageEvent.extends.InstallerEven
73e00 74 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 70 65 72 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a t.{....private.$operation;......
73e20 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 ..........public.function.__cons
73e40 74 72 75 63 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 truct($eventName,.Composer.$comp
73e60 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 64 65 76 4d 6f 64 65 2c oser,.IOInterface.$io,.$devMode,
73e80 20 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f 6c 69 63 79 2c 20 50 6f 6f 6c 20 24 .PolicyInterface.$policy,.Pool.$
73ea0 70 6f 6f 6c 2c 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 20 24 69 6e 73 74 61 pool,.CompositeRepository.$insta
73ec0 6c 6c 65 64 52 65 70 6f 2c 20 52 65 71 75 65 73 74 20 24 72 65 71 75 65 73 74 2c 20 61 72 72 61 lledRepo,.Request.$request,.arra
73ee0 79 20 24 6f 70 65 72 61 74 69 6f 6e 73 2c 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 y.$operations,.OperationInterfac
73f00 65 20 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 e.$operation).{.parent::__constr
73f20 75 63 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 69 6f 2c 20 uct($eventName,.$composer,.$io,.
73f40 24 64 65 76 4d 6f 64 65 2c 20 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 $devMode,.$policy,.$pool,.$insta
73f60 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 71 75 65 73 74 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 lledRepo,.$request,.$operations)
73f80 3b 0a 0a 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 69 6f 6e 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e ;..$this->operation.=.$operation
73fa0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 65 ;.}.......public.function.getOpe
73fc0 72 61 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 69 ration().{.return.$this->operati
73fe0 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 on;.}.}.<?php............namespa
74000 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 ce.Composer\Installer;.......cla
74020 73 73 20 50 61 63 6b 61 67 65 45 76 65 6e 74 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 ss.PackageEvents.{........const.
74040 50 52 45 5f 50 41 43 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 72 65 2d 70 61 63 6b 61 PRE_PACKAGE_INSTALL.=.'pre-packa
74060 67 65 2d 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f ge-install';.........const.POST_
74080 50 41 43 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d PACKAGE_INSTALL.=.'post-package-
740a0 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 4b install';.........const.PRE_PACK
740c0 41 47 45 5f 55 50 44 41 54 45 20 3d 20 27 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 70 64 61 74 65 AGE_UPDATE.=.'pre-package-update
740e0 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 50 41 43 4b 41 47 45 5f 55 50 ';.........const.POST_PACKAGE_UP
74100 44 41 54 45 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 70 64 61 74 65 27 3b 0a 0a 0a DATE.=.'post-package-update';...
74120 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 4b 41 47 45 5f 55 4e 49 4e 53 54 41 4c ......const.PRE_PACKAGE_UNINSTAL
74140 4c 20 3d 20 27 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a L.=.'pre-package-uninstall';....
74160 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 50 41 43 4b 41 47 45 5f 55 4e 49 4e 53 54 41 4c .....const.POST_PACKAGE_UNINSTAL
74180 4c 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a L.=.'post-package-uninstall';.}.
741a0 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f <?php............namespace.Compo
741c0 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c ser\Installer;..use.Composer\IO\
741e0 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 IOInterface;.use.Composer\Packag
74200 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 e\PackageInterface;.use.Composer
74220 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 \Util\Filesystem;.use.Composer\U
74240 74 69 6c 5c 50 6c 61 74 66 6f 72 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c til\Platform;.use.Composer\Util\
74260 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 ProcessExecutor;.use.Composer\Ut
74280 69 6c 5c 53 69 6c 65 6e 63 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 61 72 42 69 6e il\Silencer;.......class.PearBin
742a0 61 72 79 49 6e 73 74 61 6c 6c 65 72 20 65 78 74 65 6e 64 73 20 42 69 6e 61 72 79 49 6e 73 74 61 aryInstaller.extends.BinaryInsta
742c0 6c 6c 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6e 73 74 61 6c 6c 65 72 3b 0a 70 72 69 76 61 ller.{.private.$installer;.priva
742e0 74 65 20 24 76 65 6e 64 6f 72 44 69 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e te.$vendorDir;........public.fun
74300 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 ction.__construct(IOInterface.$i
74320 6f 2c 20 24 62 69 6e 44 69 72 2c 20 24 76 65 6e 64 6f 72 44 69 72 2c 20 24 62 69 6e 43 6f 6d 70 o,.$binDir,.$vendorDir,.$binComp
74340 61 74 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 50 65 61 72 at,.Filesystem.$filesystem,.Pear
74360 49 6e 73 74 61 6c 6c 65 72 20 24 69 6e 73 74 61 6c 6c 65 72 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a Installer.$installer).{.parent::
74380 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 2c 20 24 62 69 6e 44 69 72 2c 20 24 62 69 6e 43 6f __construct($io,.$binDir,.$binCo
743a0 6d 70 61 74 2c 20 24 66 69 6c 65 73 79 73 74 65 6d 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 mpat,.$filesystem);.$this->insta
743c0 6c 6c 65 72 20 3d 20 24 69 6e 73 74 61 6c 6c 65 72 3b 0a 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 ller.=.$installer;.$this->vendor
743e0 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 44 69 72 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 Dir.=.$vendorDir;.}..protected.f
74400 75 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 unction.getBinaries(PackageInter
74420 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 62 69 6e 61 72 69 65 73 50 61 74 68 20 3d face.$package).{.$binariesPath.=
74440 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 .$this->installer->getInstallPat
74460 68 28 24 70 61 63 6b 61 67 65 29 20 2e 20 27 2f 62 69 6e 2f 27 3b 0a 24 62 69 6e 61 72 69 65 73 h($package)...'/bin/';.$binaries
74480 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 62 69 6e .=.array();.if.(file_exists($bin
744a0 61 72 69 65 73 50 61 74 68 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 6e 65 77 20 5c 46 69 6c 65 ariesPath)).{.foreach.(new.\File
744c0 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 28 24 62 69 6e 61 72 69 65 73 50 61 74 68 2c 20 5c 46 systemIterator($binariesPath,.\F
744e0 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a 4b 45 59 5f 41 53 5f 46 49 4c 45 4e 41 ilesystemIterator::KEY_AS_FILENA
74500 4d 45 20 7c 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a 43 55 52 52 45 4e ME.|.\FilesystemIterator::CURREN
74520 54 5f 41 53 5f 46 49 4c 45 49 4e 46 4f 29 20 61 73 20 24 66 69 6c 65 4e 61 6d 65 20 3d 3e 20 24 T_AS_FILEINFO).as.$fileName.=>.$
74540 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 21 24 76 61 6c 75 65 2d 3e 69 73 44 69 72 28 29 29 20 7b value).{.if.(!$value->isDir()).{
74560 0a 24 62 69 6e 61 72 69 65 73 5b 5d 20 3d 20 27 62 69 6e 2f 27 2e 24 66 69 6c 65 4e 61 6d 65 3b .$binaries[].=.'bin/'.$fileName;
74580 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 62 69 6e 61 72 69 65 73 3b 0a 7d 0a 0a 70 72 6f .}.}.}..return.$binaries;.}..pro
745a0 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 tected.function.initializeBinDir
745c0 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 28 29 3b ().{.parent::initializeBinDir();
745e0 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 .file_put_contents($this->binDir
74600 2e 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 27 2c 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 .'/composer-php',.$this->generat
74620 65 55 6e 69 78 79 50 68 70 50 72 6f 78 79 43 6f 64 65 28 29 29 3b 0a 40 63 68 6d 6f 64 28 24 74 eUnixyPhpProxyCode());.@chmod($t
74640 68 69 73 2d 3e 62 69 6e 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 27 2c 20 30 37 37 his->binDir.'/composer-php',.077
74660 37 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 62 69 6e 7);.file_put_contents($this->bin
74680 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 2e 62 61 74 27 2c 20 24 74 68 69 73 2d 3e Dir.'/composer-php.bat',.$this->
746a0 67 65 6e 65 72 61 74 65 57 69 6e 64 6f 77 73 50 68 70 50 72 6f 78 79 43 6f 64 65 28 29 29 3b 0a generateWindowsPhpProxyCode());.
746c0 40 63 68 6d 6f 64 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2d @chmod($this->binDir.'/composer-
746e0 70 68 70 2e 62 61 74 27 2c 20 30 37 37 37 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 php.bat',.0777);.}..protected.fu
74700 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 57 69 6e 64 6f 77 73 50 72 6f 78 79 43 6f 64 65 28 nction.generateWindowsProxyCode(
74720 24 62 69 6e 2c 20 24 6c 69 6e 6b 29 0a 7b 0a 24 62 69 6e 50 61 74 68 20 3d 20 24 74 68 69 73 2d $bin,.$link).{.$binPath.=.$this-
74740 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 6c >filesystem->findShortestPath($l
74760 69 6e 6b 2c 20 24 62 69 6e 29 3b 0a 69 66 20 28 27 2e 62 61 74 27 20 3d 3d 3d 20 73 75 62 73 74 ink,.$bin);.if.('.bat'.===.subst
74780 72 28 24 62 69 6e 2c 20 2d 34 29 29 20 7b 0a 24 63 61 6c 6c 65 72 20 3d 20 27 63 61 6c 6c 27 3b r($bin,.-4)).{.$caller.=.'call';
747a0 0a 7d 20 65 6c 73 65 20 7b 0a 24 68 61 6e 64 6c 65 20 3d 20 66 6f 70 65 6e 28 24 62 69 6e 2c 20 .}.else.{.$handle.=.fopen($bin,.
747c0 27 72 27 29 3b 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 73 28 24 68 61 6e 64 6c 65 29 3b 0a 66 63 'r');.$line.=.fgets($handle);.fc
747e0 6c 6f 73 65 28 24 68 61 6e 64 6c 65 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b lose($handle);.if.(preg_match('{
74800 5e 23 21 2f 28 3f 3a 75 73 72 2f 62 69 6e 2f 65 6e 76 20 29 3f 28 3f 3a 5b 5e 2f 5d 2b 2f 29 2a ^#!/(?:usr/bin/env.)?(?:[^/]+/)*
74820 28 2e 2b 29 24 7d 6d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 61 6c (.+)$}m',.$line,.$match)).{.$cal
74840 6c 65 72 20 3d 20 74 72 69 6d 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a ler.=.trim($match[1]);.}.else.{.
74860 24 63 61 6c 6c 65 72 20 3d 20 27 70 68 70 27 3b 0a 7d 0a 0a 69 66 20 28 24 63 61 6c 6c 65 72 20 $caller.=.'php';.}..if.($caller.
74880 3d 3d 3d 20 27 70 68 70 27 29 20 7b 0a 72 65 74 75 72 6e 20 22 40 65 63 68 6f 20 6f 66 66 5c 72 ===.'php').{.return."@echo.off\r
748a0 5c 6e 22 2e 0a 22 70 75 73 68 64 20 2e 5c 72 5c 6e 22 2e 0a 22 63 64 20 25 7e 64 70 30 5c 72 5c \n".."pushd..\r\n".."cd.%~dp0\r\
748c0 6e 22 2e 0a 22 73 65 74 20 50 48 50 5f 50 52 4f 58 59 3d 25 43 44 25 5c 5c 63 6f 6d 70 6f 73 65 n".."set.PHP_PROXY=%CD%\\compose
748e0 72 2d 70 68 70 2e 62 61 74 5c 72 5c 6e 22 2e 0a 22 63 64 20 22 2e 50 72 6f 63 65 73 73 45 78 65 r-php.bat\r\n".."cd.".ProcessExe
74900 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 64 69 72 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 29 cutor::escape(dirname($binPath))
74920 2e 22 5c 72 5c 6e 22 2e 0a 22 73 65 74 20 42 49 4e 5f 54 41 52 47 45 54 3d 25 43 44 25 5c 5c 22 ."\r\n".."set.BIN_TARGET=%CD%\\"
74940 2e 62 61 73 65 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 2e 22 5c 72 5c 6e 22 2e 0a 22 70 6f 70 .basename($binPath)."\r\n".."pop
74960 64 5c 72 5c 6e 22 2e 0a 22 25 50 48 50 5f 50 52 4f 58 59 25 20 5c 22 25 42 49 4e 5f 54 41 52 47 d\r\n".."%PHP_PROXY%.\"%BIN_TARG
74980 45 54 25 5c 22 20 25 2a 5c 72 5c 6e 22 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 40 65 63 68 ET%\".%*\r\n";.}.}..return."@ech
749a0 6f 20 6f 66 66 5c 72 5c 6e 22 2e 0a 22 70 75 73 68 64 20 2e 5c 72 5c 6e 22 2e 0a 22 63 64 20 25 o.off\r\n".."pushd..\r\n".."cd.%
749c0 7e 64 70 30 5c 72 5c 6e 22 2e 0a 22 63 64 20 22 2e 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 ~dp0\r\n".."cd.".ProcessExecutor
749e0 3a 3a 65 73 63 61 70 65 28 64 69 72 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 29 2e 22 5c 72 5c ::escape(dirname($binPath))."\r\
74a00 6e 22 2e 0a 22 73 65 74 20 42 49 4e 5f 54 41 52 47 45 54 3d 25 43 44 25 5c 5c 22 2e 62 61 73 65 n".."set.BIN_TARGET=%CD%\\".base
74a20 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 2e 22 5c 72 5c 6e 22 2e 0a 22 70 6f 70 64 5c 72 5c 6e name($binPath)."\r\n".."popd\r\n
74a40 22 2e 0a 24 63 61 6c 6c 65 72 2e 22 20 5c 22 25 42 49 4e 5f 54 41 52 47 45 54 25 5c 22 20 25 2a "..$caller.".\"%BIN_TARGET%\".%*
74a60 5c 72 5c 6e 22 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 \r\n";.}..private.function.gener
74a80 61 74 65 57 69 6e 64 6f 77 73 50 68 70 50 72 6f 78 79 43 6f 64 65 28 29 0a 7b 0a 24 62 69 6e 54 ateWindowsPhpProxyCode().{.$binT
74aa0 6f 56 65 6e 64 6f 72 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e oVendor.=.$this->filesystem->fin
74ac0 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 2c 20 24 74 68 dShortestPath($this->binDir,.$th
74ae0 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 0a 22 40 is->vendorDir,.true);..return."@
74b00 65 63 68 6f 20 6f 66 66 5c 72 5c 6e 22 20 2e 0a 22 73 65 74 6c 6f 63 61 6c 20 65 6e 61 62 6c 65 echo.off\r\n"..."setlocal.enable
74b20 64 65 6c 61 79 65 64 65 78 70 61 6e 73 69 6f 6e 5c 72 5c 6e 22 20 2e 0a 22 73 65 74 20 42 49 4e delayedexpansion\r\n"..."set.BIN
74b40 5f 44 49 52 3d 25 7e 64 70 30 5c 72 5c 6e 22 20 2e 0a 22 73 65 74 20 56 45 4e 44 4f 52 5f 44 49 _DIR=%~dp0\r\n"..."set.VENDOR_DI
74b60 52 3d 25 42 49 4e 5f 44 49 52 25 5c 5c 22 2e 24 62 69 6e 54 6f 56 65 6e 64 6f 72 2e 22 5c 72 5c R=%BIN_DIR%\\".$binToVendor."\r\
74b80 6e 22 20 2e 0a 22 73 65 74 20 44 49 52 53 3d 2e 5c 72 5c 6e 22 20 2e 0a 22 46 4f 52 20 2f 44 20 n"..."set.DIRS=.\r\n"..."FOR./D.
74ba0 25 25 56 20 49 4e 20 28 25 56 45 4e 44 4f 52 5f 44 49 52 25 5c 5c 2a 29 20 44 4f 20 28 5c 72 5c %%V.IN.(%VENDOR_DIR%\\*).DO.(\r\
74bc0 6e 22 20 2e 0a 22 20 20 20 20 46 4f 52 20 2f 44 20 25 25 50 20 49 4e 20 28 25 25 56 5c 5c 2a 29 n"..."....FOR./D.%%P.IN.(%%V\\*)
74be0 20 44 4f 20 28 5c 72 5c 6e 22 20 2e 0a 22 20 20 20 20 20 20 20 20 73 65 74 20 44 49 52 53 3d 21 .DO.(\r\n"..."........set.DIRS=!
74c00 44 49 52 53 21 3b 25 25 7e 66 50 5c 72 5c 6e 22 20 2e 0a 22 20 20 20 20 29 5c 72 5c 6e 22 20 2e DIRS!;%%~fP\r\n"..."....)\r\n"..
74c20 0a 22 29 5c 72 5c 6e 22 20 2e 0a 22 70 68 70 2e 65 78 65 20 2d 64 20 69 6e 63 6c 75 64 65 5f 70 .")\r\n"..."php.exe.-d.include_p
74c40 61 74 68 3d 21 44 49 52 53 21 20 25 2a 5c 72 5c 6e 22 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 ath=!DIRS!.%*\r\n";.}..private.f
74c60 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 55 6e 69 78 79 50 68 70 50 72 6f 78 79 43 6f 64 unction.generateUnixyPhpProxyCod
74c80 65 28 29 0a 7b 0a 24 62 69 6e 54 6f 56 65 6e 64 6f 72 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 e().{.$binToVendor.=.$this->file
74ca0 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 74 68 69 73 2d 3e system->findShortestPath($this->
74cc0 62 69 6e 44 69 72 2c 20 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 2c 20 74 72 75 65 29 3b binDir,.$this->vendorDir,.true);
74ce0 0a 0a 72 65 74 75 72 6e 0a 22 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 73 68 5c 6e 22 2e 0a ..return."#!/usr/bin/env.sh\n"..
74d00 22 53 52 43 5f 44 49 52 3d 60 70 77 64 60 5c 6e 22 2e 0a 22 42 49 4e 5f 44 49 52 3d 60 64 69 72 "SRC_DIR=`pwd`\n".."BIN_DIR=`dir
74d20 6e 61 6d 65 20 24 30 60 5c 6e 22 2e 0a 22 56 45 4e 44 4f 52 5f 44 49 52 3d 5c 24 42 49 4e 5f 44 name.$0`\n".."VENDOR_DIR=\$BIN_D
74d40 49 52 2f 22 2e 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 62 69 6e 54 6f 56 65 6e 64 6f 72 IR/".escapeshellarg($binToVendor
74d60 29 2e 22 5c 6e 22 2e 0a 22 44 49 52 53 3d 5c 22 5c 22 5c 6e 22 2e 0a 22 66 6f 72 20 76 65 6e 64 )."\n".."DIRS=\"\"\n".."for.vend
74d80 6f 72 20 69 6e 20 5c 24 56 45 4e 44 4f 52 5f 44 49 52 2f 2a 3b 20 64 6f 5c 6e 22 2e 0a 22 20 20 or.in.\$VENDOR_DIR/*;.do\n".."..
74da0 20 20 69 66 20 5b 20 2d 64 20 5c 22 5c 24 76 65 6e 64 6f 72 5c 22 20 5d 3b 20 74 68 65 6e 5c 6e ..if.[.-d.\"\$vendor\".];.then\n
74dc0 22 2e 0a 22 20 20 20 20 20 20 20 20 66 6f 72 20 70 61 63 6b 61 67 65 20 69 6e 20 5c 24 76 65 6e ".."........for.package.in.\$ven
74de0 64 6f 72 2f 2a 3b 20 64 6f 5c 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 5b 20 dor/*;.do\n".."............if.[.
74e00 2d 64 20 5c 22 5c 24 70 61 63 6b 61 67 65 5c 22 20 5d 3b 20 74 68 65 6e 5c 6e 22 2e 0a 22 20 20 -d.\"\$package\".];.then\n".."..
74e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 49 52 53 3d 5c 22 5c 24 7b 44 49 52 53 7d 3a 5c 24 ..............DIRS=\"\${DIRS}:\$
74e40 7b 70 61 63 6b 61 67 65 7d 5c 22 5c 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 20 20 20 20 66 69 5c {package}\"\n".."............fi\
74e60 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 64 6f 6e 65 5c 6e 22 2e 0a 22 20 20 20 20 66 69 5c 6e 22 n".."........done\n".."....fi\n"
74e80 2e 0a 22 64 6f 6e 65 5c 6e 22 2e 0a 22 70 68 70 20 2d 64 20 69 6e 63 6c 75 64 65 5f 70 61 74 68 .."done\n".."php.-d.include_path
74ea0 3d 5c 22 2e 5c 24 44 49 52 53 5c 22 20 24 40 5c 6e 22 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a =\".\$DIRS\".$@\n";.}.}.<?php...
74ec0 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 .........namespace.Composer\Inst
74ee0 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 aller;..use.Composer\IO\IOInterf
74f00 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 ace;.use.Composer\Composer;.use.
74f20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 50 65 61 72 50 61 63 6b 61 67 65 45 Composer\Downloader\PearPackageE
74f40 78 74 72 61 63 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 xtractor;.use.Composer\Repositor
74f60 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a y\InstalledRepositoryInterface;.
74f80 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 use.Composer\Package\PackageInte
74fa0 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 6c 61 74 66 6f 72 rface;.use.Composer\Util\Platfor
74fc0 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 m;.use.Composer\Util\ProcessExec
74fe0 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 utor;.use.Composer\Util\Filesyst
75000 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 61 72 49 6e 73 74 61 6c 6c 65 72 20 65 em;........class.PearInstaller.e
75020 78 74 65 6e 64 73 20 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a xtends.LibraryInstaller.{.......
75040 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 .public.function.__construct(IOI
75060 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 nterface.$io,.Composer.$composer
75080 2c 20 24 74 79 70 65 20 3d 20 27 70 65 61 72 2d 6c 69 62 72 61 72 79 27 29 0a 7b 0a 24 66 69 6c ,.$type.=.'pear-library').{.$fil
750a0 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 62 69 6e esystem.=.new.Filesystem();.$bin
750c0 61 72 79 49 6e 73 74 61 6c 6c 65 72 20 3d 20 6e 65 77 20 50 65 61 72 42 69 6e 61 72 79 49 6e 73 aryInstaller.=.new.PearBinaryIns
750e0 74 61 6c 6c 65 72 28 24 69 6f 2c 20 72 74 72 69 6d 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 taller($io,.rtrim($composer->get
75100 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 62 69 6e 2d 64 69 72 27 29 2c 20 27 2f 27 29 2c 20 Config()->get('bin-dir'),.'/'),.
75120 72 74 72 69 6d 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 rtrim($composer->getConfig()->ge
75140 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 2c 20 27 2f 27 29 2c 20 24 63 6f 6d 70 6f 73 65 72 t('vendor-dir'),.'/'),.$composer
75160 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 62 69 6e 2d 63 6f 6d 70 61 74 27 29 ->getConfig()->get('bin-compat')
75180 2c 20 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 74 68 69 73 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a ,.$filesystem,.$this);..parent::
751a0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 79 70 __construct($io,.$composer,.$typ
751c0 65 2c 20 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 69 6e 61 72 79 49 6e 73 74 61 6c 6c 65 72 e,.$filesystem,.$binaryInstaller
751e0 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 );.}.....public.function.update(
75200 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 InstalledRepositoryInterface.$re
75220 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 po,.PackageInterface.$initial,.P
75240 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 24 74 68 69 73 ackageInterface.$target).{.$this
75260 2d 3e 75 6e 69 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 69 61 6c 29 3b 0a 24 74 ->uninstall($repo,.$initial);.$t
75280 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a his->install($repo,.$target);.}.
752a0 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 43 6f 64 65 28 .protected.function.installCode(
752c0 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 70 61 72 PackageInterface.$package).{.par
752e0 65 6e 74 3a 3a 69 6e 73 74 61 6c 6c 43 6f 64 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 24 69 73 ent::installCode($package);..$is
75300 57 69 6e 64 6f 77 73 20 3d 20 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 3b Windows.=.Platform::isWindows();
75320 0a 24 70 68 70 5f 62 69 6e 20 3d 20 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 2e 20 28 24 69 73 .$php_bin.=.$this->binDir...($is
75340 57 69 6e 64 6f 77 73 20 3f 20 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 2e 62 61 74 27 20 3a 20 Windows.?.'/composer-php.bat'.:.
75360 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 27 29 3b 0a 0a 69 66 20 28 21 24 69 73 57 69 6e 64 6f '/composer-php');..if.(!$isWindo
75380 77 73 29 20 7b 0a 24 70 68 70 5f 62 69 6e 20 3d 20 27 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 27 ws).{.$php_bin.=.'/usr/bin/env.'
753a0 20 2e 20 24 70 68 70 5f 62 69 6e 3b 0a 7d 0a 0a 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 3d 20 24 ...$php_bin;.}..$installPath.=.$
753c0 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a this->getInstallPath($package);.
753e0 24 76 61 72 73 20 3d 20 61 72 72 61 79 28 0a 27 6f 73 27 20 3d 3e 20 24 69 73 57 69 6e 64 6f 77 $vars.=.array(.'os'.=>.$isWindow
75400 73 20 3f 20 27 77 69 6e 64 6f 77 73 27 20 3a 20 27 6c 69 6e 75 78 27 2c 0a 27 70 68 70 5f 62 69 s.?.'windows'.:.'linux',.'php_bi
75420 6e 27 20 3d 3e 20 24 70 68 70 5f 62 69 6e 2c 0a 27 70 65 61 72 5f 70 68 70 27 20 3d 3e 20 24 69 n'.=>.$php_bin,.'pear_php'.=>.$i
75440 6e 73 74 61 6c 6c 50 61 74 68 2c 0a 27 70 68 70 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c nstallPath,.'php_dir'.=>.$instal
75460 6c 50 61 74 68 2c 0a 27 62 69 6e 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 lPath,.'bin_dir'.=>.$installPath
75480 20 2e 20 27 2f 62 69 6e 27 2c 0a 27 64 61 74 61 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c ...'/bin',.'data_dir'.=>.$instal
754a0 6c 50 61 74 68 20 2e 20 27 2f 64 61 74 61 27 2c 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 70 lPath...'/data',.'version'.=>.$p
754c0 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 29 3b 0a 0a ackage->getPrettyVersion(),.);..
754e0 24 70 61 63 6b 61 67 65 41 72 63 68 69 76 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 $packageArchive.=.$this->getInst
75500 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 2e 27 2f 27 2e 70 61 74 68 69 6e 66 6f 28 24 allPath($package).'/'.pathinfo($
75520 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 2c 20 50 41 54 48 49 4e 46 4f 5f package->getDistUrl(),.PATHINFO_
75540 42 41 53 45 4e 41 4d 45 29 3b 0a 24 70 65 61 72 45 78 74 72 61 63 74 6f 72 20 3d 20 6e 65 77 20 BASENAME);.$pearExtractor.=.new.
75560 50 65 61 72 50 61 63 6b 61 67 65 45 78 74 72 61 63 74 6f 72 28 24 70 61 63 6b 61 67 65 41 72 63 PearPackageExtractor($packageArc
75580 68 69 76 65 29 3b 0a 24 70 65 61 72 45 78 74 72 61 63 74 6f 72 2d 3e 65 78 74 72 61 63 74 54 6f hive);.$pearExtractor->extractTo
755a0 28 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 ($this->getInstallPath($package)
755c0 2c 20 61 72 72 61 79 28 27 70 68 70 27 20 3d 3e 20 27 2f 27 2c 20 27 73 63 72 69 70 74 27 20 3d ,.array('php'.=>.'/',.'script'.=
755e0 3e 20 27 2f 62 69 6e 27 2c 20 27 64 61 74 61 27 20 3d 3e 20 27 2f 64 61 74 61 27 29 2c 20 24 76 >.'/bin',.'data'.=>.'/data'),.$v
75600 61 72 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 ars);..$this->io->writeError('..
75620 20 20 43 6c 65 61 6e 69 6e 67 20 75 70 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 ..Cleaning.up',.true,.IOInterfac
75640 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e e::VERBOSE);.$this->filesystem->
75660 75 6e 6c 69 6e 6b 28 24 70 61 63 6b 61 67 65 41 72 63 68 69 76 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 unlink($packageArchive);.}.}.<?p
75680 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
756a0 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 \Installer;..use.Composer\Compos
756c0 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b er;.use.Composer\IO\IOInterface;
756e0 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c .use.Composer\Repository\Install
75700 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f edRepositoryInterface;.use.Compo
75720 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a ser\Package\PackageInterface;...
75740 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6c 75 67 69 6e 49 6e 73 74 61 6c 6c 65 72 20 65 78 74 65 6e .....class.PluginInstaller.exten
75760 64 73 20 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 ds.LibraryInstaller.{.private.$i
75780 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c nstallationManager;.........publ
757a0 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 ic.function.__construct(IOInterf
757c0 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 79 ace.$io,.Composer.$composer,.$ty
757e0 70 65 20 3d 20 27 6c 69 62 72 61 72 79 27 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 pe.=.'library').{.parent::__cons
75800 74 72 75 63 74 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 27 63 6f 6d 70 6f 73 65 72 2d truct($io,.$composer,.'composer-
75820 70 6c 75 67 69 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e plugin');.$this->installationMan
75840 61 67 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f ager.=.$composer->getInstallatio
75860 6e 4d 61 6e 61 67 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f nManager();.}.....public.functio
75880 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 65 29 0a 7b 0a 72 65 74 75 72 n.supports($packageType).{.retur
758a0 6e 20 24 70 61 63 6b 61 67 65 54 79 70 65 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 n.$packageType.===.'composer-plu
758c0 67 69 6e 27 20 7c 7c 20 24 70 61 63 6b 61 67 65 54 79 70 65 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 gin'.||.$packageType.===.'compos
758e0 65 72 2d 69 6e 73 74 61 6c 6c 65 72 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 er-installer';.}.....public.func
75900 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 tion.install(InstalledRepository
75920 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 Interface.$repo,.PackageInterfac
75940 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 65 78 74 72 61 20 3d 20 24 70 61 63 6b 61 67 65 2d e.$package).{.$extra.=.$package-
75960 3e 67 65 74 45 78 74 72 61 28 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 65 78 74 72 61 5b 27 63 >getExtra();.if.(empty($extra['c
75980 6c 61 73 73 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 lass'])).{.throw.new.\Unexpected
759a0 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 45 72 72 6f 72 20 77 68 69 6c 65 20 69 6e 73 74 ValueException('Error.while.inst
759c0 61 6c 6c 69 6e 67 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 alling.'.$package->getPrettyName
759e0 28 29 2e 27 2c 20 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 20 70 61 63 6b 61 67 65 73 20 73 ().',.composer-plugin.packages.s
75a00 68 6f 75 6c 64 20 68 61 76 65 20 61 20 63 6c 61 73 73 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 hould.have.a.class.defined.in.th
75a20 65 69 72 20 65 78 74 72 61 20 6b 65 79 20 74 6f 20 62 65 20 75 73 61 62 6c 65 2e 27 29 3b 0a 7d eir.extra.key.to.be.usable.');.}
75a40 0a 0a 70 61 72 65 6e 74 3a 3a 69 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 ..parent::install($repo,.$packag
75a60 65 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 6c 75 67 69 6e 4d 61 e);.$this->composer->getPluginMa
75a80 6e 61 67 65 72 28 29 2d 3e 72 65 67 69 73 74 65 72 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 nager()->registerPackage($packag
75aa0 65 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 e,.true);.}.....public.function.
75ac0 75 70 64 61 74 65 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 update(InstalledRepositoryInterf
75ae0 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 ace.$repo,.PackageInterface.$ini
75b00 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a tial,.PackageInterface.$target).
75b20 7b 0a 24 65 78 74 72 61 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 45 78 74 72 61 28 29 3b 0a {.$extra.=.$target->getExtra();.
75b40 69 66 20 28 65 6d 70 74 79 28 24 65 78 74 72 61 5b 27 63 6c 61 73 73 27 5d 29 29 20 7b 0a 74 68 if.(empty($extra['class'])).{.th
75b60 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f row.new.\UnexpectedValueExceptio
75b80 6e 28 27 45 72 72 6f 72 20 77 68 69 6c 65 20 69 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 74 61 72 n('Error.while.installing.'.$tar
75ba0 67 65 74 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 2c 20 63 6f 6d 70 6f 73 65 72 get->getPrettyName().',.composer
75bc0 2d 70 6c 75 67 69 6e 20 70 61 63 6b 61 67 65 73 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 63 -plugin.packages.should.have.a.c
75be0 6c 61 73 73 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 65 69 72 20 65 78 74 72 61 20 6b 65 79 20 lass.defined.in.their.extra.key.
75c00 74 6f 20 62 65 20 75 73 61 62 6c 65 2e 27 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 75 70 64 61 to.be.usable.');.}..parent::upda
75c20 74 65 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 29 3b 0a 24 74 te($repo,.$initial,.$target);.$t
75c40 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 his->composer->getPluginManager(
75c60 29 2d 3e 72 65 67 69 73 74 65 72 50 61 63 6b 61 67 65 28 24 74 61 72 67 65 74 2c 20 74 72 75 65 )->registerPackage($target,.true
75c80 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 );.}.}.<?php............namespac
75ca0 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f e.Composer\Installer;..use.Compo
75cc0 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 ser\Package\PackageInterface;.us
75ce0 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 e.Composer\Downloader\DownloadMa
75d00 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 nager;.use.Composer\Repository\I
75d20 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 nstalledRepositoryInterface;.use
75d40 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a .Composer\Util\Filesystem;......
75d60 0a 0a 63 6c 61 73 73 20 50 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 20 69 6d 70 6c 65 6d 65 ..class.ProjectInstaller.impleme
75d80 6e 74 73 20 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 nts.InstallerInterface.{.private
75da0 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a 70 72 69 76 61 74 65 20 24 64 6f 77 6e 6c 6f 61 64 .$installPath;.private.$download
75dc0 4d 61 6e 61 67 65 72 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 70 Manager;.private.$filesystem;..p
75de0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6e 73 74 ublic.function.__construct($inst
75e00 61 6c 6c 50 61 74 68 2c 20 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 24 64 6d 29 0a 7b 0a allPath,.DownloadManager.$dm).{.
75e20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 61 74 68 20 3d 20 72 74 72 69 6d 28 73 74 72 74 72 $this->installPath.=.rtrim(strtr
75e40 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 2c 20 27 2f 27 29 2e ($installPath,.'\\',.'/'),.'/').
75e60 27 2f 27 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 64 '/';.$this->downloadManager.=.$d
75e80 6d 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 m;.$this->filesystem.=.new.Files
75ea0 79 73 74 65 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ystem;.}........public.function.
75ec0 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 65 29 0a 7b 0a 72 65 74 75 72 6e 20 supports($packageType).{.return.
75ee0 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e true;.}.....public.function.isIn
75f00 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 stalled(InstalledRepositoryInter
75f20 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 face.$repo,.PackageInterface.$pa
75f40 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 ckage).{.return.false;.}.....pub
75f60 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 lic.function.install(InstalledRe
75f80 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 positoryInterface.$repo,.Package
75fa0 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 50 61 Interface.$package).{.$installPa
75fc0 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a 69 66 20 28 66 69 6c th.=.$this->installPath;.if.(fil
75fe0 65 5f 65 78 69 73 74 73 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 26 26 20 21 24 74 68 69 73 e_exists($installPath).&&.!$this
76000 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 73 44 69 72 45 6d 70 74 79 28 24 69 6e 73 74 61 6c ->filesystem->isDirEmpty($instal
76020 6c 50 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 lPath)).{.throw.new.\InvalidArgu
76040 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 50 72 6f 6a 65 63 74 20 64 69 72 65 63 74 6f 72 79 mentException("Project.directory
76060 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 69 73 20 6e 6f 74 20 65 6d 70 74 79 2e 22 29 3b 0a 7d .$installPath.is.not.empty.");.}
76080 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 29 20 7b 0a 6d 6b .if.(!is_dir($installPath)).{.mk
760a0 64 69 72 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 30 37 37 37 2c 20 74 72 75 65 29 3b 0a 7d dir($installPath,.0777,.true);.}
760c0 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 64 6f 77 6e 6c 6f 61 .$this->downloadManager->downloa
760e0 64 28 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 3b 0a 7d 0a 0a 0a 0a d($package,.$installPath);.}....
76100 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 49 6e 73 74 61 6c 6c 65 .public.function.update(Installe
76120 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b dRepositoryInterface.$repo,.Pack
76140 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e ageInterface.$initial,.PackageIn
76160 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e terface.$target).{.throw.new.\In
76180 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 6e 6f 74 20 73 75 70 70 validArgumentException("not.supp
761a0 6f 72 74 65 64 22 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 orted");.}.....public.function.u
761c0 6e 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 ninstall(InstalledRepositoryInte
761e0 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 rface.$repo,.PackageInterface.$p
76200 61 63 6b 61 67 65 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 ackage).{.throw.new.\InvalidArgu
76220 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 22 29 3b 0a mentException("not.supported");.
76240 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 }........public.function.getInst
76260 61 6c 6c 50 61 74 68 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 allPath(PackageInterface.$packag
76280 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a e).{.return.$this->installPath;.
762a0 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 }.}.<?php............namespace.C
762c0 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 omposer\Installer;..use.Composer
762e0 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 \IO\IOInterface;.use.Composer\Pa
76300 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 ckage\PackageInterface;.use.Comp
76320 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 oser\Repository\RepositoryInterf
76340 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 ace;.......class.SuggestedPackag
76360 65 73 52 65 70 6f 72 74 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 75 67 67 65 esReporter.{....protected.$sugge
76380 73 74 65 64 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 72 69 76 stedPackages.=.array();.....priv
763a0 61 74 65 20 24 69 6f 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 ate.$io;..public.function.__cons
763c0 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 24 74 68 69 73 2d 3e truct(IOInterface.$io).{.$this->
763e0 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 io.=.$io;.}.....public.function.
76400 67 65 74 50 61 63 6b 61 67 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 75 getPackages().{.return.$this->su
76420 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ggestedPackages;.}.............p
76440 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 50 61 63 6b 61 67 65 28 24 73 6f 75 72 63 ublic.function.addPackage($sourc
76460 65 2c 20 24 74 61 72 67 65 74 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 e,.$target,.$reason).{.$this->su
76480 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 5b 5d 20 3d 20 61 72 72 61 79 28 0a 27 73 6f 75 72 ggestedPackages[].=.array(.'sour
764a0 63 65 27 20 3d 3e 20 24 73 6f 75 72 63 65 2c 0a 27 74 61 72 67 65 74 27 20 3d 3e 20 24 74 61 72 ce'.=>.$source,.'target'.=>.$tar
764c0 67 65 74 2c 0a 27 72 65 61 73 6f 6e 27 20 3d 3e 20 24 72 65 61 73 6f 6e 2c 0a 29 3b 0a 0a 72 65 get,.'reason'.=>.$reason,.);..re
764e0 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 turn.$this;.}........public.func
76500 74 69 6f 6e 20 61 64 64 53 75 67 67 65 73 74 69 6f 6e 73 46 72 6f 6d 50 61 63 6b 61 67 65 28 50 tion.addSuggestionsFromPackage(P
76520 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 73 6f 75 ackageInterface.$package).{.$sou
76540 72 63 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b rce.=.$package->getPrettyName();
76560 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 .foreach.($package->getSuggests(
76580 29 20 61 73 20 24 74 61 72 67 65 74 20 3d 3e 20 24 72 65 61 73 6f 6e 29 20 7b 0a 24 74 68 69 73 ).as.$target.=>.$reason).{.$this
765a0 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 0a 24 73 6f 75 72 63 65 2c 0a 24 74 61 72 67 65 74 2c 0a ->addPackage(.$source,.$target,.
765c0 24 72 65 61 73 6f 6e 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a $reason.);.}..return.$this;.}...
765e0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 75 74 70 75 74 28 52 65 70 ......public.function.output(Rep
76600 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 ositoryInterface.$installedRepo.
76620 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 20 3d 20 24 =.null).{.$suggestedPackages.=.$
76640 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 50 this->getPackages();.$installedP
76660 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 ackages.=.array();.if.(null.!==.
76680 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 26 26 20 21 20 65 6d 70 74 79 28 24 73 75 67 67 65 $installedRepo.&&.!.empty($sugge
766a0 73 74 65 64 50 61 63 6b 61 67 65 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 69 6e 73 74 61 stedPackages)).{.foreach.($insta
766c0 6c 6c 65 64 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b lledRepo->getPackages().as.$pack
766e0 61 67 65 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 age).{.$installedPackages.=.arra
76700 79 5f 6d 65 72 67 65 28 0a 24 69 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 73 2c 0a 24 70 61 y_merge(.$installedPackages,.$pa
76720 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 28 29 0a 29 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 ckage->getNames().);.}.}..foreac
76740 68 20 28 24 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 20 61 73 20 24 73 75 67 67 65 73 h.($suggestedPackages.as.$sugges
76760 74 69 6f 6e 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 73 75 67 67 65 73 74 69 6f 6e tion).{.if.(in_array($suggestion
76780 5b 27 74 61 72 67 65 74 27 5d 2c 20 24 69 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 73 29 29 ['target'],.$installedPackages))
767a0 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 .{.continue;.}..$this->io->write
767c0 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 0a 27 25 73 20 73 75 67 67 65 73 74 73 20 69 6e 73 74 Error(sprintf(.'%s.suggests.inst
767e0 61 6c 6c 69 6e 67 20 25 73 20 28 25 73 29 27 2c 0a 24 73 75 67 67 65 73 74 69 6f 6e 5b 27 73 6f alling.%s.(%s)',.$suggestion['so
76800 75 72 63 65 27 5d 2c 0a 24 73 75 67 67 65 73 74 69 6f 6e 5b 27 74 61 72 67 65 74 27 5d 2c 0a 24 urce'],.$suggestion['target'],.$
76820 73 75 67 67 65 73 74 69 6f 6e 5b 27 72 65 61 73 6f 6e 27 5d 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 suggestion['reason'].));.}..retu
76840 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e rn.$this;.}.}.<?php............n
76860 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 3b 0a 0a 75 73 65 20 4a 73 6f amespace.Composer\Json;..use.Jso
76880 6e 53 63 68 65 6d 61 5c 56 61 6c 69 64 61 74 6f 72 3b 0a 75 73 65 20 53 65 6c 64 5c 4a 73 6f 6e nSchema\Validator;.use.Seld\Json
768a0 4c 69 6e 74 5c 4a 73 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 Lint\JsonParser;.use.Seld\JsonLi
768c0 6e 74 5c 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 nt\ParsingException;.use.Compose
768e0 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d r\Util\RemoteFilesystem;.use.Com
76900 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 poser\IO\IOInterface;.use.Compos
76920 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e er\Downloader\TransportException
76940 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 46 69 6c 65 0a 7b 0a 63 6f 6e 73 74 20 ;........class.JsonFile.{.const.
76960 4c 41 58 5f 53 43 48 45 4d 41 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 53 54 52 49 43 54 5f 53 43 48 LAX_SCHEMA.=.1;.const.STRICT_SCH
76980 45 4d 41 20 3d 20 32 3b 0a 0a 63 6f 6e 73 74 20 4a 53 4f 4e 5f 55 4e 45 53 43 41 50 45 44 5f 53 EMA.=.2;..const.JSON_UNESCAPED_S
769a0 4c 41 53 48 45 53 20 3d 20 36 34 3b 0a 63 6f 6e 73 74 20 4a 53 4f 4e 5f 50 52 45 54 54 59 5f 50 LASHES.=.64;.const.JSON_PRETTY_P
769c0 52 49 4e 54 20 3d 20 31 32 38 3b 0a 63 6f 6e 73 74 20 4a 53 4f 4e 5f 55 4e 45 53 43 41 50 45 44 RINT.=.128;.const.JSON_UNESCAPED
769e0 5f 55 4e 49 43 4f 44 45 20 3d 20 32 35 36 3b 0a 0a 70 72 69 76 61 74 65 20 24 70 61 74 68 3b 0a _UNICODE.=.256;..private.$path;.
76a00 70 72 69 76 61 74 65 20 24 72 66 73 3b 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 0a 0a 0a 0a 0a private.$rfs;.private.$io;......
76a20 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 ...public.function.__construct($
76a40 70 61 74 68 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 path,.RemoteFilesystem.$rfs.=.nu
76a60 6c 6c 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 ll,.IOInterface.$io.=.null).{.$t
76a80 68 69 73 2d 3e 70 61 74 68 20 3d 20 24 70 61 74 68 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d his->path.=.$path;..if.(null.===
76aa0 20 24 72 66 73 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f .$rfs.&&.preg_match('{^https?://
76ac0 7d 69 27 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 }i',.$path)).{.throw.new.\Invali
76ae0 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 68 74 74 70 20 75 72 6c 73 20 72 65 dArgumentException('http.urls.re
76b00 71 75 69 72 65 20 61 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 69 6e 73 74 61 6e 63 quire.a.RemoteFilesystem.instanc
76b20 65 20 74 6f 20 62 65 20 70 61 73 73 65 64 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d e.to.be.passed');.}.$this->rfs.=
76b40 20 24 72 66 73 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 75 .$rfs;.$this->io.=.$io;.}.....pu
76b60 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e blic.function.getPath().{.return
76b80 20 24 74 68 69 73 2d 3e 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .$this->path;.}.......public.fun
76ba0 63 74 69 6f 6e 20 65 78 69 73 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 5f 66 69 6c 65 28 ction.exists().{.return.is_file(
76bc0 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 $this->path);.}........public.fu
76be0 6e 63 74 69 6f 6e 20 72 65 61 64 28 29 0a 7b 0a 74 72 79 20 7b 0a 69 66 20 28 24 74 68 69 73 2d nction.read().{.try.{.if.($this-
76c00 3e 72 66 73 29 20 7b 0a 24 6a 73 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 >rfs).{.$json.=.$this->rfs->getC
76c20 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 61 74 68 2c 20 24 74 68 69 73 2d 3e 70 61 74 68 ontents($this->path,.$this->path
76c40 2c 20 66 61 6c 73 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f ,.false);.}.else.{.if.($this->io
76c60 20 26 26 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 74 68 69 .&&.$this->io->isDebug()).{.$thi
76c80 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 52 65 61 64 69 6e 67 20 27 20 2e 20 24 s->io->writeError('Reading.'...$
76ca0 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 7d 0a 24 6a 73 6f 6e 20 3d 20 66 69 6c 65 5f 67 65 74 5f this->path);.}.$json.=.file_get_
76cc0 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 contents($this->path);.}.}.catch
76ce0 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 .(TransportException.$e).{.throw
76d00 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 65 2d 3e 67 65 74 4d 65 .new.\RuntimeException($e->getMe
76d20 73 73 61 67 65 28 29 2c 20 30 2c 20 24 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 ssage(),.0,.$e);.}.catch.(\Excep
76d40 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 tion.$e).{.throw.new.\RuntimeExc
76d60 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 72 65 61 64 20 27 2e 24 74 68 69 73 2d 3e eption('Could.not.read.'.$this->
76d80 70 61 74 68 2e 22 5c 6e 5c 6e 22 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d path."\n\n".$e->getMessage());.}
76da0 0a 0a 72 65 74 75 72 6e 20 73 74 61 74 69 63 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e ..return.static::parseJson($json
76dc0 2c 20 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ,.$this->path);.}.........public
76de0 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 61 72 72 61 79 20 24 68 61 73 68 2c 20 24 6f 70 .function.write(array.$hash,.$op
76e00 74 69 6f 6e 73 20 3d 20 34 34 38 29 0a 7b 0a 24 64 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 24 74 tions.=.448).{.$dir.=.dirname($t
76e20 68 69 73 2d 3e 70 61 74 68 29 3b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b his->path);.if.(!is_dir($dir)).{
76e40 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 29 29 20 7b 0a 74 68 72 6f 77 20 .if.(file_exists($dir)).{.throw.
76e60 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 0a 24 new.\UnexpectedValueException(.$
76e80 64 69 72 2e 27 20 65 78 69 73 74 73 20 61 6e 64 20 69 73 20 6e 6f 74 20 61 20 64 69 72 65 63 74 dir.'.exists.and.is.not.a.direct
76ea0 6f 72 79 2e 27 0a 29 3b 0a 7d 0a 69 66 20 28 21 40 6d 6b 64 69 72 28 24 64 69 72 2c 20 30 37 37 ory.'.);.}.if.(!@mkdir($dir,.077
76ec0 37 2c 20 74 72 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 7,.true)).{.throw.new.\Unexpecte
76ee0 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 0a 24 64 69 72 2e 27 20 64 6f 65 73 20 6e 6f 74 dValueException(.$dir.'.does.not
76f00 20 65 78 69 73 74 20 61 6e 64 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 72 65 61 74 65 64 2e .exist.and.could.not.be.created.
76f20 27 0a 29 3b 0a 7d 0a 7d 0a 0a 24 72 65 74 72 69 65 73 20 3d 20 33 3b 0a 77 68 69 6c 65 20 28 24 '.);.}.}..$retries.=.3;.while.($
76f40 72 65 74 72 69 65 73 2d 2d 29 20 7b 0a 74 72 79 20 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 retries--).{.try.{.file_put_cont
76f60 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 61 74 68 2c 20 73 74 61 74 69 63 3a 3a 65 6e 63 6f 64 65 ents($this->path,.static::encode
76f80 28 24 68 61 73 68 2c 20 24 6f 70 74 69 6f 6e 73 29 2e 20 28 24 6f 70 74 69 6f 6e 73 20 26 20 73 ($hash,.$options)..($options.&.s
76fa0 65 6c 66 3a 3a 4a 53 4f 4e 5f 50 52 45 54 54 59 5f 50 52 49 4e 54 20 3f 20 22 5c 6e 22 20 3a 20 elf::JSON_PRETTY_PRINT.?."\n".:.
76fc0 27 27 29 29 3b 0a 62 72 65 61 6b 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e ''));.break;.}.catch.(\Exception
76fe0 20 24 65 29 20 7b 0a 69 66 20 28 24 72 65 74 72 69 65 73 29 20 7b 0a 75 73 6c 65 65 70 28 35 30 .$e).{.if.($retries).{.usleep(50
77000 30 30 30 30 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0000);.continue;.}..throw.$e;.}.
77020 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 }.}.........public.function.vali
77040 64 61 74 65 53 63 68 65 6d 61 28 24 73 63 68 65 6d 61 20 3d 20 73 65 6c 66 3a 3a 53 54 52 49 43 dateSchema($schema.=.self::STRIC
77060 54 5f 53 43 48 45 4d 41 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 66 69 6c 65 5f 67 65 74 5f T_SCHEMA).{.$content.=.file_get_
77080 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 24 64 61 74 61 20 3d 20 6a contents($this->path);.$data.=.j
770a0 73 6f 6e 5f 64 65 63 6f 64 65 28 24 63 6f 6e 74 65 6e 74 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 son_decode($content);..if.(null.
770c0 3d 3d 3d 20 24 64 61 74 61 20 26 26 20 27 6e 75 6c 6c 27 20 21 3d 3d 20 24 63 6f 6e 74 65 6e 74 ===.$data.&&.'null'.!==.$content
770e0 29 20 7b 0a 73 65 6c 66 3a 3a 76 61 6c 69 64 61 74 65 53 79 6e 74 61 78 28 24 63 6f 6e 74 65 6e ).{.self::validateSyntax($conten
77100 74 2c 20 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 7d 0a 0a 24 73 63 68 65 6d 61 46 69 6c 65 20 t,.$this->path);.}..$schemaFile.
77120 3d 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 72 65 73 2f 63 6f 6d 70 6f =.__DIR__...'/../../../res/compo
77140 73 65 72 2d 73 63 68 65 6d 61 2e 6a 73 6f 6e 27 3b 0a 24 73 63 68 65 6d 61 44 61 74 61 20 3d 20 ser-schema.json';.$schemaData.=.
77160 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 73 json_decode(file_get_contents($s
77180 63 68 65 6d 61 46 69 6c 65 29 29 3b 0a 0a 69 66 20 28 24 73 63 68 65 6d 61 20 3d 3d 3d 20 73 65 chemaFile));..if.($schema.===.se
771a0 6c 66 3a 3a 4c 41 58 5f 53 43 48 45 4d 41 29 20 7b 0a 24 73 63 68 65 6d 61 44 61 74 61 2d 3e 61 lf::LAX_SCHEMA).{.$schemaData->a
771c0 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 20 3d 20 74 72 75 65 3b 0a 24 73 63 68 dditionalProperties.=.true;.$sch
771e0 65 6d 61 44 61 74 61 2d 3e 72 65 71 75 69 72 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a emaData->required.=.array();.}..
77200 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 56 61 6c 69 64 61 74 6f 72 28 29 3b 0a 24 76 $validator.=.new.Validator();.$v
77220 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 64 61 74 61 2c 20 24 73 63 68 65 6d 61 44 61 alidator->check($data,.$schemaDa
77240 74 61 29 3b 0a 0a 0a 0a 69 66 20 28 21 24 76 61 6c 69 64 61 74 6f 72 2d 3e 69 73 56 61 6c 69 64 ta);....if.(!$validator->isValid
77260 28 29 29 20 7b 0a 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 ()).{.$errors.=.array();.foreach
77280 20 28 28 61 72 72 61 79 29 20 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 .((array).$validator->getErrors(
772a0 29 20 61 73 20 24 65 72 72 6f 72 29 20 7b 0a 24 65 72 72 6f 72 73 5b 5d 20 3d 20 28 24 65 72 72 ).as.$error).{.$errors[].=.($err
772c0 6f 72 5b 27 70 72 6f 70 65 72 74 79 27 5d 20 3f 20 24 65 72 72 6f 72 5b 27 70 72 6f 70 65 72 74 or['property'].?.$error['propert
772e0 79 27 5d 2e 27 20 3a 20 27 20 3a 20 27 27 29 2e 24 65 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 y'].'.:.'.:.'').$error['message'
77300 5d 3b 0a 7d 0a 74 68 72 6f 77 20 6e 65 77 20 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 ];.}.throw.new.JsonValidationExc
77320 65 70 74 69 6f 6e 28 27 22 27 2e 24 74 68 69 73 2d 3e 70 61 74 68 2e 27 22 20 64 6f 65 73 20 6e eption('"'.$this->path.'".does.n
77340 6f 74 20 6d 61 74 63 68 20 74 68 65 20 65 78 70 65 63 74 65 64 20 4a 53 4f 4e 20 73 63 68 65 6d ot.match.the.expected.JSON.schem
77360 61 27 2c 20 24 65 72 72 6f 72 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a a',.$errors);.}..return.true;.}.
77380 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 ........public.static.function.e
773a0 6e 63 6f 64 65 28 24 64 61 74 61 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 34 34 38 29 0a 7b 0a 69 ncode($data,.$options.=.448).{.i
773c0 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 34 30 30 29 20 7b 0a 24 6a f.(PHP_VERSION_ID.>=.50400).{.$j
773e0 73 6f 6e 20 3d 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 61 74 61 2c 20 24 6f 70 74 69 6f 6e son.=.json_encode($data,.$option
77400 73 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6a 73 6f 6e 29 20 7b 0a 73 65 6c 66 3a s);.if.(false.===.$json).{.self:
77420 3a 74 68 72 6f 77 45 6e 63 6f 64 65 45 72 72 6f 72 28 6a 73 6f 6e 5f 6c 61 73 74 5f 65 72 72 6f :throwEncodeError(json_last_erro
77440 72 28 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 r());.}....if.(PHP_VERSION_ID.<.
77460 35 30 34 32 38 20 7c 7c 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 35 30 50428.||.(PHP_VERSION_ID.>=.5050
77480 30 20 26 26 20 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 35 31 32 29 20 7c 7c 20 0.&&.PHP_VERSION_ID.<.50512).||.
774a0 28 64 65 66 69 6e 65 64 28 27 4a 53 4f 4e 5f 43 5f 56 45 52 53 49 4f 4e 27 29 20 26 26 20 76 65 (defined('JSON_C_VERSION').&&.ve
774c0 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 70 68 70 76 65 72 73 69 6f 6e 28 27 6a 73 6f 6e 27 29 rsion_compare(phpversion('json')
774e0 2c 20 27 31 2e 33 2e 36 27 2c 20 27 3c 27 29 29 29 20 7b 0a 24 6a 73 6f 6e 20 3d 20 70 72 65 67 ,.'1.3.6',.'<'))).{.$json.=.preg
77500 5f 72 65 70 6c 61 63 65 28 27 2f 5c 5b 5c 73 2b 5c 5d 2f 27 2c 20 27 5b 5d 27 2c 20 24 6a 73 6f _replace('/\[\s+\]/',.'[]',.$jso
77520 6e 29 3b 0a 24 6a 73 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 5c 7b 5c 73 2b n);.$json.=.preg_replace('/\{\s+
77540 5c 7d 2f 27 2c 20 27 7b 7d 27 2c 20 24 6a 73 6f 6e 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6a \}/',.'{}',.$json);.}..return.$j
77560 73 6f 6e 3b 0a 7d 0a 0a 24 6a 73 6f 6e 20 3d 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 61 74 son;.}..$json.=.json_encode($dat
77580 61 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6a 73 6f 6e 29 20 7b 0a 73 65 6c 66 3a a);.if.(false.===.$json).{.self:
775a0 3a 74 68 72 6f 77 45 6e 63 6f 64 65 45 72 72 6f 72 28 6a 73 6f 6e 5f 6c 61 73 74 5f 65 72 72 6f :throwEncodeError(json_last_erro
775c0 72 28 29 29 3b 0a 7d 0a 0a 24 70 72 65 74 74 79 50 72 69 6e 74 20 3d 20 28 62 6f 6f 6c 29 20 28 r());.}..$prettyPrint.=.(bool).(
775e0 24 6f 70 74 69 6f 6e 73 20 26 20 73 65 6c 66 3a 3a 4a 53 4f 4e 5f 50 52 45 54 54 59 5f 50 52 49 $options.&.self::JSON_PRETTY_PRI
77600 4e 54 29 3b 0a 24 75 6e 65 73 63 61 70 65 55 6e 69 63 6f 64 65 20 3d 20 28 62 6f 6f 6c 29 20 28 NT);.$unescapeUnicode.=.(bool).(
77620 24 6f 70 74 69 6f 6e 73 20 26 20 73 65 6c 66 3a 3a 4a 53 4f 4e 5f 55 4e 45 53 43 41 50 45 44 5f $options.&.self::JSON_UNESCAPED_
77640 55 4e 49 43 4f 44 45 29 3b 0a 24 75 6e 65 73 63 61 70 65 53 6c 61 73 68 65 73 20 3d 20 28 62 6f UNICODE);.$unescapeSlashes.=.(bo
77660 6f 6c 29 20 28 24 6f 70 74 69 6f 6e 73 20 26 20 73 65 6c 66 3a 3a 4a 53 4f 4e 5f 55 4e 45 53 43 ol).($options.&.self::JSON_UNESC
77680 41 50 45 44 5f 53 4c 41 53 48 45 53 29 3b 0a 0a 69 66 20 28 21 24 70 72 65 74 74 79 50 72 69 6e APED_SLASHES);..if.(!$prettyPrin
776a0 74 20 26 26 20 21 24 75 6e 65 73 63 61 70 65 55 6e 69 63 6f 64 65 20 26 26 20 21 24 75 6e 65 73 t.&&.!$unescapeUnicode.&&.!$unes
776c0 63 61 70 65 53 6c 61 73 68 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 6a 73 6f 6e 3b 0a 7d 0a 0a capeSlashes).{.return.$json;.}..
776e0 24 72 65 73 75 6c 74 20 3d 20 4a 73 6f 6e 46 6f 72 6d 61 74 74 65 72 3a 3a 66 6f 72 6d 61 74 28 $result.=.JsonFormatter::format(
77700 24 6a 73 6f 6e 2c 20 24 75 6e 65 73 63 61 70 65 55 6e 69 63 6f 64 65 2c 20 24 75 6e 65 73 63 61 $json,.$unescapeUnicode,.$unesca
77720 70 65 53 6c 61 73 68 65 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a peSlashes);..return.$result;.}..
77740 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 68 ......private.static.function.th
77760 72 6f 77 45 6e 63 6f 64 65 45 72 72 6f 72 28 24 63 6f 64 65 29 0a 7b 0a 73 77 69 74 63 68 20 28 rowEncodeError($code).{.switch.(
77780 24 63 6f 64 65 29 20 7b 0a 63 61 73 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 44 45 50 54 48 3a 0a $code).{.case.JSON_ERROR_DEPTH:.
777a0 24 6d 73 67 20 3d 20 27 4d 61 78 69 6d 75 6d 20 73 74 61 63 6b 20 64 65 70 74 68 20 65 78 63 65 $msg.=.'Maximum.stack.depth.exce
777c0 65 64 65 64 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 53 54 eded';.break;.case.JSON_ERROR_ST
777e0 41 54 45 5f 4d 49 53 4d 41 54 43 48 3a 0a 24 6d 73 67 20 3d 20 27 55 6e 64 65 72 66 6c 6f 77 20 ATE_MISMATCH:.$msg.=.'Underflow.
77800 6f 72 20 74 68 65 20 6d 6f 64 65 73 20 6d 69 73 6d 61 74 63 68 27 3b 0a 62 72 65 61 6b 3b 0a 63 or.the.modes.mismatch';.break;.c
77820 61 73 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 43 54 52 4c 5f 43 48 41 52 3a 0a 24 6d 73 67 20 3d ase.JSON_ERROR_CTRL_CHAR:.$msg.=
77840 20 27 55 6e 65 78 70 65 63 74 65 64 20 63 6f 6e 74 72 6f 6c 20 63 68 61 72 61 63 74 65 72 20 66 .'Unexpected.control.character.f
77860 6f 75 6e 64 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 55 54 ound';.break;.case.JSON_ERROR_UT
77880 46 38 3a 0a 24 6d 73 67 20 3d 20 27 4d 61 6c 66 6f 72 6d 65 64 20 55 54 46 2d 38 20 63 68 61 72 F8:.$msg.=.'Malformed.UTF-8.char
778a0 61 63 74 65 72 73 2c 20 70 6f 73 73 69 62 6c 79 20 69 6e 63 6f 72 72 65 63 74 6c 79 20 65 6e 63 acters,.possibly.incorrectly.enc
778c0 6f 64 65 64 27 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 6d 73 67 20 3d 20 27 55 oded';.break;.default:.$msg.=.'U
778e0 6e 6b 6e 6f 77 6e 20 65 72 72 6f 72 27 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e nknown.error';.}..throw.new.\Run
77900 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 4a 53 4f 4e 20 65 6e 63 6f 64 69 6e 67 20 66 61 69 timeException('JSON.encoding.fai
77920 6c 65 64 3a 20 27 2e 24 6d 73 67 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 led:.'.$msg);.}..........public.
77940 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e 2c static.function.parseJson($json,
77960 20 24 66 69 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6a .$file.=.null).{.if.(null.===.$j
77980 73 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 64 61 74 61 20 3d 20 6a 73 6f 6e 5f 64 65 son).{.return;.}.$data.=.json_de
779a0 63 6f 64 65 28 24 6a 73 6f 6e 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 code($json,.true);.if.(null.===.
779c0 24 64 61 74 61 20 26 26 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 4e 4f 4e 45 20 21 3d 3d 20 6a 73 6f $data.&&.JSON_ERROR_NONE.!==.jso
779e0 6e 5f 6c 61 73 74 5f 65 72 72 6f 72 28 29 29 20 7b 0a 73 65 6c 66 3a 3a 76 61 6c 69 64 61 74 65 n_last_error()).{.self::validate
77a00 53 79 6e 74 61 78 28 24 6a 73 6f 6e 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 Syntax($json,.$file);.}..return.
77a20 24 64 61 74 61 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 $data;.}............protected.st
77a40 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 53 79 6e 74 61 78 28 24 6a 73 atic.function.validateSyntax($js
77a60 6f 6e 2c 20 24 66 69 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 61 72 73 65 72 20 3d 20 6e 65 on,.$file.=.null).{.$parser.=.ne
77a80 77 20 4a 73 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 70 61 72 73 65 w.JsonParser();.$result.=.$parse
77aa0 72 2d 3e 6c 69 6e 74 28 24 6a 73 6f 6e 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 72 65 r->lint($json);.if.(null.===.$re
77ac0 73 75 6c 74 29 20 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 4a 53 4f 4e 5f 45 52 52 4f 52 5f sult).{.if.(defined('JSON_ERROR_
77ae0 55 54 46 38 27 29 20 26 26 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 55 54 46 38 20 3d 3d 3d 20 6a 73 UTF8').&&.JSON_ERROR_UTF8.===.js
77b00 6f 6e 5f 6c 61 73 74 5f 65 72 72 6f 72 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e on_last_error()).{.throw.new.\Un
77b20 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 22 27 2e 24 66 69 6c 65 expectedValueException('"'.$file
77b40 2e 27 22 20 69 73 20 6e 6f 74 20 55 54 46 2d 38 2c 20 63 6f 75 6c 64 20 6e 6f 74 20 70 61 72 73 .'".is.not.UTF-8,.could.not.pars
77b60 65 20 61 73 20 4a 53 4f 4e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a e.as.JSON');.}..return.true;.}..
77b80 74 68 72 6f 77 20 6e 65 77 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 27 22 27 2e 24 throw.new.ParsingException('"'.$
77ba0 66 69 6c 65 2e 27 22 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 76 61 6c 69 64 20 4a file.'".does.not.contain.valid.J
77bc0 53 4f 4e 27 2e 22 5c 6e 22 2e 24 72 65 73 75 6c 74 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c SON'."\n".$result->getMessage(),
77be0 20 24 72 65 73 75 6c 74 2d 3e 67 65 74 44 65 74 61 69 6c 73 28 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 .$result->getDetails());.}.}.<?p
77c00 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
77c20 5c 4a 73 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 46 6f 72 6d 61 74 \Json;..........class.JsonFormat
77c40 74 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 ter.{.............public.static.
77c60 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 28 24 6a 73 6f 6e 2c 20 24 75 6e 65 73 63 61 70 65 function.format($json,.$unescape
77c80 55 6e 69 63 6f 64 65 2c 20 24 75 6e 65 73 63 61 70 65 53 6c 61 73 68 65 73 29 0a 7b 0a 24 72 65 Unicode,.$unescapeSlashes).{.$re
77ca0 73 75 6c 74 20 3d 20 27 27 3b 0a 24 70 6f 73 20 3d 20 30 3b 0a 24 73 74 72 4c 65 6e 20 3d 20 73 sult.=.'';.$pos.=.0;.$strLen.=.s
77cc0 74 72 6c 65 6e 28 24 6a 73 6f 6e 29 3b 0a 24 69 6e 64 65 6e 74 53 74 72 20 3d 20 27 20 20 20 20 trlen($json);.$indentStr.=.'....
77ce0 27 3b 0a 24 6e 65 77 4c 69 6e 65 20 3d 20 22 5c 6e 22 3b 0a 24 6f 75 74 4f 66 51 75 6f 74 65 73 ';.$newLine.=."\n";.$outOfQuotes
77d00 20 3d 20 74 72 75 65 3b 0a 24 62 75 66 66 65 72 20 3d 20 27 27 3b 0a 24 6e 6f 65 73 63 61 70 65 .=.true;.$buffer.=.'';.$noescape
77d20 20 3d 20 74 72 75 65 3b 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 24 73 74 72 .=.true;..for.($i.=.0;.$i.<.$str
77d40 4c 65 6e 3b 20 24 69 2b 2b 29 20 7b 0a 0a 20 24 63 68 61 72 20 3d 20 73 75 62 73 74 72 28 24 6a Len;.$i++).{...$char.=.substr($j
77d60 73 6f 6e 2c 20 24 69 2c 20 31 29 3b 0a 0a 0a 20 69 66 20 28 27 22 27 20 3d 3d 3d 20 24 63 68 61 son,.$i,.1);....if.('"'.===.$cha
77d80 72 20 26 26 20 24 6e 6f 65 73 63 61 70 65 29 20 7b 0a 24 6f 75 74 4f 66 51 75 6f 74 65 73 20 3d r.&&.$noescape).{.$outOfQuotes.=
77da0 20 21 24 6f 75 74 4f 66 51 75 6f 74 65 73 3b 0a 7d 0a 0a 69 66 20 28 21 24 6f 75 74 4f 66 51 75 .!$outOfQuotes;.}..if.(!$outOfQu
77dc0 6f 74 65 73 29 20 7b 0a 24 62 75 66 66 65 72 20 2e 3d 20 24 63 68 61 72 3b 0a 24 6e 6f 65 73 63 otes).{.$buffer..=.$char;.$noesc
77de0 61 70 65 20 3d 20 27 5c 5c 27 20 3d 3d 3d 20 24 63 68 61 72 20 3f 20 21 24 6e 6f 65 73 63 61 70 ape.=.'\\'.===.$char.?.!$noescap
77e00 65 20 3a 20 74 72 75 65 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 27 e.:.true;.continue;.}.elseif.(''
77e20 20 21 3d 3d 20 24 62 75 66 66 65 72 29 20 7b 0a 69 66 20 28 24 75 6e 65 73 63 61 70 65 53 6c 61 .!==.$buffer).{.if.($unescapeSla
77e40 73 68 65 73 29 20 7b 0a 24 62 75 66 66 65 72 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c shes).{.$buffer.=.str_replace('\
77e60 5c 2f 27 2c 20 27 2f 27 2c 20 24 62 75 66 66 65 72 29 3b 0a 7d 0a 0a 69 66 20 28 24 75 6e 65 73 \/',.'/',.$buffer);.}..if.($unes
77e80 63 61 70 65 55 6e 69 63 6f 64 65 20 26 26 20 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 capeUnicode.&&.function_exists('
77ea0 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e 67 27 29 29 20 7b 0a 0a 20 24 62 75 66 66 mb_convert_encoding')).{...$buff
77ec0 65 72 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 2f 28 5c 5c er.=.preg_replace_callback('/(\\
77ee0 5c 5c 2b 29 75 28 5b 30 2d 39 61 2d 66 5d 7b 34 7d 29 2f 69 27 2c 20 66 75 6e 63 74 69 6f 6e 20 \\+)u([0-9a-f]{4})/i',.function.
77f00 28 24 6d 61 74 63 68 29 20 7b 0a 24 6c 20 3d 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 31 5d ($match).{.$l.=.strlen($match[1]
77f20 29 3b 0a 0a 69 66 20 28 24 6c 20 25 20 32 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 );..if.($l.%.2).{.return.str_rep
77f40 65 61 74 28 27 5c 5c 27 2c 20 24 6c 20 2d 20 31 29 20 2e 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 eat('\\',.$l.-.1)...mb_convert_e
77f60 6e 63 6f 64 69 6e 67 28 0a 70 61 63 6b 28 27 48 2a 27 2c 20 24 6d 61 74 63 68 5b 32 5d 29 2c 0a ncoding(.pack('H*',.$match[2]),.
77f80 27 55 54 46 2d 38 27 2c 0a 27 55 43 53 2d 32 42 45 27 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 'UTF-8',.'UCS-2BE'.);.}..return.
77fa0 24 6d 61 74 63 68 5b 30 5d 3b 0a 7d 2c 20 24 62 75 66 66 65 72 29 3b 0a 7d 0a 0a 24 72 65 73 75 $match[0];.},.$buffer);.}..$resu
77fc0 6c 74 20 2e 3d 20 24 62 75 66 66 65 72 2e 24 63 68 61 72 3b 0a 24 62 75 66 66 65 72 20 3d 20 27 lt..=.$buffer.$char;.$buffer.=.'
77fe0 27 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 27 3a 27 20 3d 3d 3d 20 24 63 68 61 ';.continue;.}..if.(':'.===.$cha
78000 72 29 20 7b 0a 0a 20 24 63 68 61 72 20 2e 3d 20 27 20 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 28 r).{...$char..=.'.';.}.elseif.((
78020 27 7d 27 20 3d 3d 3d 20 24 63 68 61 72 20 7c 7c 20 27 5d 27 20 3d 3d 3d 20 24 63 68 61 72 29 29 '}'.===.$char.||.']'.===.$char))
78040 20 7b 0a 24 70 6f 73 2d 2d 3b 0a 24 70 72 65 76 43 68 61 72 20 3d 20 73 75 62 73 74 72 28 24 6a .{.$pos--;.$prevChar.=.substr($j
78060 73 6f 6e 2c 20 24 69 20 2d 20 31 2c 20 31 29 3b 0a 0a 69 66 20 28 27 7b 27 20 21 3d 3d 20 24 70 son,.$i.-.1,.1);..if.('{'.!==.$p
78080 72 65 76 43 68 61 72 20 26 26 20 27 5b 27 20 21 3d 3d 20 24 70 72 65 76 43 68 61 72 29 20 7b 0a revChar.&&.'['.!==.$prevChar).{.
780a0 0a 20 0a 20 24 72 65 73 75 6c 74 20 2e 3d 20 24 6e 65 77 4c 69 6e 65 3b 0a 66 6f 72 20 28 24 6a ....$result..=.$newLine;.for.($j
780c0 20 3d 20 30 3b 20 24 6a 20 3c 20 24 70 6f 73 3b 20 24 6a 2b 2b 29 20 7b 0a 24 72 65 73 75 6c 74 .=.0;.$j.<.$pos;.$j++).{.$result
780e0 20 2e 3d 20 24 69 6e 64 65 6e 74 53 74 72 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 72 65 ..=.$indentStr;.}.}.else.{...$re
78100 73 75 6c 74 20 3d 20 72 74 72 69 6d 28 24 72 65 73 75 6c 74 29 3b 0a 7d 0a 7d 0a 0a 24 72 65 73 sult.=.rtrim($result);.}.}..$res
78120 75 6c 74 20 2e 3d 20 24 63 68 61 72 3b 0a 0a 0a 20 0a 20 69 66 20 28 27 2c 27 20 3d 3d 3d 20 24 ult..=.$char;......if.(','.===.$
78140 63 68 61 72 20 7c 7c 20 27 7b 27 20 3d 3d 3d 20 24 63 68 61 72 20 7c 7c 20 27 5b 27 20 3d 3d 3d char.||.'{'.===.$char.||.'['.===
78160 20 24 63 68 61 72 29 20 7b 0a 24 72 65 73 75 6c 74 20 2e 3d 20 24 6e 65 77 4c 69 6e 65 3b 0a 0a .$char).{.$result..=.$newLine;..
78180 69 66 20 28 27 7b 27 20 3d 3d 3d 20 24 63 68 61 72 20 7c 7c 20 27 5b 27 20 3d 3d 3d 20 24 63 68 if.('{'.===.$char.||.'['.===.$ch
781a0 61 72 29 20 7b 0a 24 70 6f 73 2b 2b 3b 0a 7d 0a 0a 66 6f 72 20 28 24 6a 20 3d 20 30 3b 20 24 6a ar).{.$pos++;.}..for.($j.=.0;.$j
781c0 20 3c 20 24 70 6f 73 3b 20 24 6a 2b 2b 29 20 7b 0a 24 72 65 73 75 6c 74 20 2e 3d 20 24 69 6e 64 .<.$pos;.$j++).{.$result..=.$ind
781e0 65 6e 74 53 74 72 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d entStr;.}.}.}..return.$result;.}
78200 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
78220 6d 70 6f 73 65 72 5c 4a 73 6f 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 mposer\Json;..use.Composer\Repos
78240 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 63 6c itory\PlatformRepository;.....cl
78260 61 73 73 20 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 ass.JsonManipulator.{.private.st
78280 61 74 69 63 20 24 52 45 43 55 52 53 45 5f 42 4c 4f 43 4b 53 3b 0a 70 72 69 76 61 74 65 20 73 74 atic.$RECURSE_BLOCKS;.private.st
782a0 61 74 69 63 20 24 52 45 43 55 52 53 45 5f 41 52 52 41 59 53 3b 0a 70 72 69 76 61 74 65 20 73 74 atic.$RECURSE_ARRAYS;.private.st
782c0 61 74 69 63 20 24 4a 53 4f 4e 5f 56 41 4c 55 45 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 atic.$JSON_VALUE;.private.static
782e0 20 24 4a 53 4f 4e 5f 53 54 52 49 4e 47 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 74 65 6e 74 .$JSON_STRING;..private.$content
78300 73 3b 0a 70 72 69 76 61 74 65 20 24 6e 65 77 6c 69 6e 65 3b 0a 70 72 69 76 61 74 65 20 24 69 6e s;.private.$newline;.private.$in
78320 64 65 6e 74 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 dent;..public.function.__constru
78340 63 74 28 24 63 6f 6e 74 65 6e 74 73 29 0a 7b 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 52 45 43 55 ct($contents).{.if.(!self::$RECU
78360 52 53 45 5f 42 4c 4f 43 4b 53 29 20 7b 0a 73 65 6c 66 3a 3a 24 52 45 43 55 52 53 45 5f 42 4c 4f RSE_BLOCKS).{.self::$RECURSE_BLO
78380 43 4b 53 20 3d 20 27 28 3f 3a 5b 5e 7b 7d 5d 2a 2b 7c 5c 7b 28 3f 3a 5b 5e 7b 7d 5d 2a 2b 7c 5c CKS.=.'(?:[^{}]*+|\{(?:[^{}]*+|\
783a0 7b 28 3f 3a 5b 5e 7b 7d 5d 2a 2b 7c 5c 7b 28 3f 3a 5b 5e 7b 7d 5d 2a 2b 7c 5c 7b 5b 5e 7b 7d 5d {(?:[^{}]*+|\{(?:[^{}]*+|\{[^{}]
783c0 2a 2b 5c 7d 29 2a 5c 7d 29 2a 5c 7d 29 2a 5c 7d 29 2a 27 3b 0a 73 65 6c 66 3a 3a 24 52 45 43 55 *+\})*\})*\})*\})*';.self::$RECU
783e0 52 53 45 5f 41 52 52 41 59 53 20 3d 20 27 28 3f 3a 5b 5e 5c 5d 5d 2a 2b 7c 5c 5b 28 3f 3a 5b 5e RSE_ARRAYS.=.'(?:[^\]]*+|\[(?:[^
78400 5c 5d 5d 2a 2b 7c 5c 5b 28 3f 3a 5b 5e 5c 5d 5d 2a 2b 7c 5c 5b 28 3f 3a 5b 5e 5c 5d 5d 2a 2b 7c \]]*+|\[(?:[^\]]*+|\[(?:[^\]]*+|
78420 5c 5b 5b 5e 5c 5d 5d 2a 2b 5c 5d 29 2a 5c 5d 29 2a 5c 5d 29 2a 5c 5d 7c 27 2e 73 65 6c 66 3a 3a \[[^\]]*+\])*\])*\])*\]|'.self::
78440 24 52 45 43 55 52 53 45 5f 42 4c 4f 43 4b 53 2e 27 29 2a 27 3b 0a 73 65 6c 66 3a 3a 24 4a 53 4f $RECURSE_BLOCKS.')*';.self::$JSO
78460 4e 5f 53 54 52 49 4e 47 20 3d 20 27 22 28 3f 3a 5b 5e 5c 30 2d 5c 78 30 39 5c 78 30 61 2d 5c 78 N_STRING.=.'"(?:[^\0-\x09\x0a-\x
78480 31 66 5c 5c 5c 5c 22 5d 2b 7c 5c 5c 5c 5c 5b 22 62 66 6e 72 74 2f 5c 5c 5c 5c 5d 7c 5c 5c 5c 5c 1f\\\\"]+|\\\\["bfnrt/\\\\]|\\\\
784a0 75 5b 61 2d 66 41 2d 46 30 2d 39 5d 7b 34 7d 29 2a 2b 22 27 3b 0a 73 65 6c 66 3a 3a 24 4a 53 4f u[a-fA-F0-9]{4})*+"';.self::$JSO
784c0 4e 5f 56 41 4c 55 45 20 3d 20 27 28 3f 3a 5b 30 2d 39 2e 5d 2b 7c 6e 75 6c 6c 7c 74 72 75 65 7c N_VALUE.=.'(?:[0-9.]+|null|true|
784e0 66 61 6c 73 65 7c 27 2e 73 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 53 54 52 49 4e 47 2e 27 7c 5c 5b 27 false|'.self::$JSON_STRING.'|\['
78500 2e 73 65 6c 66 3a 3a 24 52 45 43 55 52 53 45 5f 41 52 52 41 59 53 2e 27 5c 5d 7c 5c 7b 27 2e 73 .self::$RECURSE_ARRAYS.'\]|\{'.s
78520 65 6c 66 3a 3a 24 52 45 43 55 52 53 45 5f 42 4c 4f 43 4b 53 2e 27 5c 7d 29 27 3b 0a 7d 0a 0a 24 elf::$RECURSE_BLOCKS.'\})';.}..$
78540 63 6f 6e 74 65 6e 74 73 20 3d 20 74 72 69 6d 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 69 66 20 28 contents.=.trim($contents);.if.(
78560 24 63 6f 6e 74 65 6e 74 73 20 3d 3d 3d 20 27 27 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 $contents.===.'').{.$contents.=.
78580 27 7b 7d 27 3b 0a 7d 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 70 72 65 67 4d 61 74 63 68 28 27 23 '{}';.}.if.(!$this->pregMatch('#
785a0 5e 5c 7b 28 2e 2a 29 5c 7d 24 23 73 27 2c 20 24 63 6f 6e 74 65 6e 74 73 29 29 20 7b 0a 74 68 72 ^\{(.*)\}$#s',.$contents)).{.thr
785c0 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e ow.new.\InvalidArgumentException
785e0 28 27 54 68 65 20 6a 73 6f 6e 20 66 69 6c 65 20 6d 75 73 74 20 62 65 20 61 6e 20 6f 62 6a 65 63 ('The.json.file.must.be.an.objec
78600 74 20 28 7b 7d 29 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 3d 20 66 61 6c t.({})');.}.$this->newline.=.fal
78620 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 63 6f 6e 74 65 6e 74 73 2c 20 22 5c 72 5c 6e 22 29 se.!==.strpos($contents,."\r\n")
78640 20 3f 20 22 5c 72 5c 6e 22 20 3a 20 22 5c 6e 22 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 .?."\r\n".:."\n";.$this->content
78660 73 20 3d 20 24 63 6f 6e 74 65 6e 74 73 20 3d 3d 3d 20 27 7b 7d 27 20 3f 20 27 7b 27 20 2e 20 24 s.=.$contents.===.'{}'.?.'{'...$
78680 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 27 7d 27 20 3a 20 24 63 6f 6e 74 65 6e 74 73 3b this->newline...'}'.:.$contents;
786a0 0a 24 74 68 69 73 2d 3e 64 65 74 65 63 74 49 6e 64 65 6e 74 69 6e 67 28 29 3b 0a 7d 0a 0a 70 75 .$this->detectIndenting();.}..pu
786c0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 73 28 29 0a 7b 0a 72 65 blic.function.getContents().{.re
786e0 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 20 2e 20 24 74 68 69 73 2d 3e 6e 65 turn.$this->contents...$this->ne
78700 77 6c 69 6e 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c 69 6e wline;.}..public.function.addLin
78720 6b 28 24 74 79 70 65 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 k($type,.$package,.$constraint,.
78740 24 73 6f 72 74 50 61 63 6b 61 67 65 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 64 65 63 6f 64 65 $sortPackages.=.false).{.$decode
78760 64 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 63 d.=.JsonFile::parseJson($this->c
78780 6f 6e 74 65 6e 74 73 29 3b 0a 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 64 65 63 6f 64 65 64 ontents);....if.(!isset($decoded
787a0 5b 24 74 79 70 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 64 64 4d 61 69 [$type])).{.return.$this->addMai
787c0 6e 4b 65 79 28 24 74 79 70 65 2c 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 63 nKey($type,.array($package.=>.$c
787e0 6f 6e 73 74 72 61 69 6e 74 29 29 3b 0a 7d 0a 0a 24 72 65 67 65 78 20 3d 20 27 7b 5e 28 5c 73 2a onstraint));.}..$regex.=.'{^(\s*
78800 5c 7b 5c 73 2a 28 3f 3a 27 2e 73 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 53 54 52 49 4e 47 2e 27 5c 73 \{\s*(?:'.self::$JSON_STRING.'\s
78820 2a 3a 5c 73 2a 27 2e 73 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 56 41 4c 55 45 2e 27 5c 73 2a 2c 5c 73 *:\s*'.self::$JSON_VALUE.'\s*,\s
78840 2a 29 2a 3f 29 27 2e 0a 27 28 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 4a 73 6f 6e 46 69 6c 65 3a *)*?)'..'('.preg_quote(JsonFile:
78860 3a 65 6e 63 6f 64 65 28 24 74 79 70 65 29 29 2e 27 5c 73 2a 3a 5c 73 2a 29 28 27 2e 73 65 6c 66 :encode($type)).'\s*:\s*)('.self
78880 3a 3a 24 4a 53 4f 4e 5f 56 41 4c 55 45 2e 27 29 28 2e 2a 29 7d 73 27 3b 0a 69 66 20 28 21 24 74 ::$JSON_VALUE.')(.*)}s';.if.(!$t
788a0 68 69 73 2d 3e 70 72 65 67 4d 61 74 63 68 28 24 72 65 67 65 78 2c 20 24 74 68 69 73 2d 3e 63 6f his->pregMatch($regex,.$this->co
788c0 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 ntents,.$matches)).{.return.fals
788e0 65 3b 0a 7d 0a 0a 24 6c 69 6e 6b 73 20 3d 20 24 6d 61 74 63 68 65 73 5b 33 5d 3b 0a 0a 69 66 20 e;.}..$links.=.$matches[3];..if.
78900 28 69 73 73 65 74 28 24 64 65 63 6f 64 65 64 5b 24 74 79 70 65 5d 5b 24 70 61 63 6b 61 67 65 5d (isset($decoded[$type][$package]
78920 29 29 20 7b 0a 0a 20 24 70 61 63 6b 61 67 65 52 65 67 65 78 20 3d 20 73 74 72 5f 72 65 70 6c 61 )).{...$packageRegex.=.str_repla
78940 63 65 28 27 2f 27 2c 20 27 5c 5c 5c 5c 3f 2f 27 2c 20 70 72 65 67 5f 71 75 6f 74 65 28 24 70 61 ce('/',.'\\\\?/',.preg_quote($pa
78960 63 6b 61 67 65 29 29 3b 0a 0a 20 24 6c 69 6e 6b 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 ckage));...$links.=.preg_replace
78980 28 27 7b 22 27 2e 24 70 61 63 6b 61 67 65 52 65 67 65 78 2e 27 22 28 5c 73 2a 3a 5c 73 2a 29 27 ('{"'.$packageRegex.'"(\s*:\s*)'
789a0 2e 73 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 53 54 52 49 4e 47 2e 27 7d 69 27 2c 20 61 64 64 63 73 6c .self::$JSON_STRING.'}i',.addcsl
789c0 61 73 68 65 73 28 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 70 61 63 6b 61 67 65 29 ashes(JsonFile::encode($package)
789e0 2e 27 24 7b 31 7d 22 27 2e 24 63 6f 6e 73 74 72 61 69 6e 74 2e 27 22 27 2c 20 27 5c 5c 27 29 2c .'${1}"'.$constraint.'"',.'\\'),
78a00 20 24 6c 69 6e 6b 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 .$links);.}.else.{.if.($this->pr
78a20 65 67 4d 61 74 63 68 28 27 23 5e 5c 73 2a 5c 7b 5c 73 2a 5c 53 2b 2e 2a 3f 28 5c 73 2a 5c 7d 5c egMatch('#^\s*\{\s*\S+.*?(\s*\}\
78a40 73 2a 29 24 23 73 27 2c 20 24 6c 69 6e 6b 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 0a 20 24 6c s*)$#s',.$links,.$match)).{...$l
78a60 69 6e 6b 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 0a 27 7b 27 2e 70 72 65 67 5f 71 75 inks.=.preg_replace(.'{'.preg_qu
78a80 6f 74 65 28 24 6d 61 74 63 68 5b 31 5d 29 2e 27 24 7d 27 2c 0a 61 64 64 63 73 6c 61 73 68 65 73 ote($match[1]).'$}',.addcslashes
78aa0 28 27 2c 27 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 24 74 68 69 73 2d 3e 69 (','...$this->newline...$this->i
78ac0 6e 64 65 6e 74 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 4a 73 6f 6e 46 69 6c 65 ndent...$this->indent...JsonFile
78ae0 3a 3a 65 6e 63 6f 64 65 28 24 70 61 63 6b 61 67 65 29 2e 27 3a 20 27 2e 4a 73 6f 6e 46 69 6c 65 ::encode($package).':.'.JsonFile
78b00 3a 3a 65 6e 63 6f 64 65 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 2e 20 24 6d 61 74 63 68 5b 31 ::encode($constraint)...$match[1
78b20 5d 2c 20 27 5c 5c 27 29 2c 0a 24 6c 69 6e 6b 73 0a 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 ],.'\\'),.$links.);.}.else.{...$
78b40 6c 69 6e 6b 73 20 3d 20 27 7b 27 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 0a 24 links.=.'{'...$this->newline...$
78b60 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 4a this->indent...$this->indent...J
78b80 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 70 61 63 6b 61 67 65 29 2e 27 3a 20 27 2e 4a sonFile::encode($package).':.'.J
78ba0 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 2e 20 24 sonFile::encode($constraint)...$
78bc0 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 0a 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 this->newline...$this->indent...
78be0 27 7d 27 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 73 6f 72 74 50 61 63 6b '}';.}.}..if.(true.===.$sortPack
78c00 61 67 65 73 29 20 7b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 6a 73 6f 6e 5f 64 65 63 ages).{.$requirements.=.json_dec
78c20 6f 64 65 28 24 6c 69 6e 6b 73 2c 20 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 50 61 ode($links,.true);.$this->sortPa
78c40 63 6b 61 67 65 73 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 24 6c 69 6e 6b 73 20 3d 20 ckages($requirements);.$links.=.
78c60 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 7d 0a $this->format($requirements);.}.
78c80 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 2e .$this->contents.=.$matches[1]..
78ca0 20 24 6d 61 74 63 68 65 73 5b 32 5d 20 2e 20 24 6c 69 6e 6b 73 20 2e 20 24 6d 61 74 63 68 65 73 .$matches[2]...$links...$matches
78cc0 5b 34 5d 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 [4];..return.true;.}.........pri
78ce0 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 50 61 63 6b 61 67 65 73 28 61 72 72 61 79 vate.function.sortPackages(array
78d00 20 26 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 70 72 65 66 69 78 .&$packages.=.array()).{.$prefix
78d20 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 72 65 71 75 69 72 65 6d 65 6e 74 29 20 7b 0a 69 66 20 .=.function.($requirement).{.if.
78d40 28 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3a 3a (preg_match(PlatformRepository::
78d60 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 72 65 71 75 69 72 65 PLATFORM_PACKAGE_REGEX,.$require
78d80 6d 65 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 0a 61 72 ment)).{.return.preg_replace(.ar
78da0 72 61 79 28 0a 27 2f 5e 70 68 70 2f 27 2c 0a 27 2f 5e 68 68 76 6d 2f 27 2c 0a 27 2f 5e 65 78 74 ray(.'/^php/',.'/^hhvm/',.'/^ext
78dc0 2f 27 2c 0a 27 2f 5e 6c 69 62 2f 27 2c 0a 27 2f 5e 5c 44 2f 27 2c 0a 29 2c 0a 61 72 72 61 79 28 /',.'/^lib/',.'/^\D/',.),.array(
78de0 0a 27 30 2d 24 30 27 2c 0a 27 31 2d 24 30 27 2c 0a 27 32 2d 24 30 27 2c 0a 27 33 2d 24 30 27 2c .'0-$0',.'1-$0',.'2-$0',.'3-$0',
78e00 0a 27 34 2d 24 30 27 2c 0a 29 2c 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 0a 29 3b 0a 7d 0a 0a 72 .'4-$0',.),.$requirement.);.}..r
78e20 65 74 75 72 6e 20 27 35 2d 27 2e 24 72 65 71 75 69 72 65 6d 65 6e 74 3b 0a 7d 3b 0a 0a 75 6b 73 eturn.'5-'.$requirement;.};..uks
78e40 6f 72 74 28 24 70 61 63 6b 61 67 65 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 ort($packages,.function.($a,.$b)
78e60 20 75 73 65 20 28 24 70 72 65 66 69 78 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 6e 61 74 63 6d .use.($prefix).{.return.strnatcm
78e80 70 28 24 70 72 65 66 69 78 28 24 61 29 2c 20 24 70 72 65 66 69 78 28 24 62 29 29 3b 0a 7d 29 3b p($prefix($a),.$prefix($b));.});
78ea0 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 65 70 6f 73 69 74 6f 72 .}..public.function.addRepositor
78ec0 79 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 y($name,.$config).{.return.$this
78ee0 2d 3e 61 64 64 53 75 62 4e 6f 64 65 28 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 2c 20 24 6e 61 ->addSubNode('repositories',.$na
78f00 6d 65 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e me,.$config);.}..public.function
78f20 20 72 65 6d 6f 76 65 52 65 70 6f 73 69 74 6f 72 79 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 .removeRepository($name).{.retur
78f40 6e 20 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 53 75 62 4e 6f 64 65 28 27 72 65 70 6f 73 69 74 6f n.$this->removeSubNode('reposito
78f60 72 69 65 73 27 2c 20 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ries',.$name);.}..public.functio
78f80 6e 20 61 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 n.addConfigSetting($name,.$value
78fa0 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 64 64 53 75 62 4e 6f 64 65 28 27 63 6f ).{.return.$this->addSubNode('co
78fc0 6e 66 69 67 27 2c 20 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 nfig',.$name,.$value);.}..public
78fe0 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 6e .function.removeConfigSetting($n
79000 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 53 75 62 4e 6f ame).{.return.$this->removeSubNo
79020 64 65 28 27 63 6f 6e 66 69 67 27 2c 20 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 de('config',.$name);.}..public.f
79040 75 6e 63 74 69 6f 6e 20 61 64 64 53 75 62 4e 6f 64 65 28 24 6d 61 69 6e 4e 6f 64 65 2c 20 24 6e unction.addSubNode($mainNode,.$n
79060 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 24 64 65 63 6f 64 65 64 20 3d 20 4a 73 6f 6e 46 69 ame,.$value).{.$decoded.=.JsonFi
79080 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 29 3b 0a le::parseJson($this->contents);.
790a0 0a 24 73 75 62 4e 61 6d 65 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 .$subName.=.null;.if.(in_array($
790c0 6d 61 69 6e 4e 6f 64 65 2c 20 61 72 72 61 79 28 27 63 6f 6e 66 69 67 27 2c 20 27 72 65 70 6f 73 mainNode,.array('config',.'repos
790e0 69 74 6f 72 69 65 73 27 29 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 itories')).&&.false.!==.strpos($
79100 6e 61 6d 65 2c 20 27 2e 27 29 29 20 7b 0a 6c 69 73 74 28 24 6e 61 6d 65 2c 20 24 73 75 62 4e 61 name,.'.')).{.list($name,.$subNa
79120 6d 65 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 6e 61 6d 65 2c 20 32 29 3b 0a 7d 0a me).=.explode('.',.$name,.2);.}.
79140 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 64 65 63 6f 64 65 64 5b 24 6d 61 69 6e 4e 6f 64 65 ...if.(!isset($decoded[$mainNode
79160 5d 29 29 20 7b 0a 69 66 20 28 24 73 75 62 4e 61 6d 65 20 21 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 ])).{.if.($subName.!==.null).{.$
79180 74 68 69 73 2d 3e 61 64 64 4d 61 69 6e 4b 65 79 28 24 6d 61 69 6e 4e 6f 64 65 2c 20 61 72 72 61 this->addMainKey($mainNode,.arra
791a0 79 28 24 6e 61 6d 65 20 3d 3e 20 61 72 72 61 79 28 24 73 75 62 4e 61 6d 65 20 3d 3e 20 24 76 61 y($name.=>.array($subName.=>.$va
791c0 6c 75 65 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4d 61 69 6e 4b lue)));.}.else.{.$this->addMainK
791e0 65 79 28 24 6d 61 69 6e 4e 6f 64 65 2c 20 61 72 72 61 79 28 24 6e 61 6d 65 20 3d 3e 20 24 76 61 ey($mainNode,.array($name.=>.$va
79200 6c 75 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 24 6e 6f 64 lue));.}..return.true;.}....$nod
79220 65 52 65 67 65 78 20 3d 20 27 7b 5e 28 5c 73 2a 5c 7b 5c 73 2a 28 3f 3a 27 2e 73 65 6c 66 3a 3a eRegex.=.'{^(\s*\{\s*(?:'.self::
79240 24 4a 53 4f 4e 5f 53 54 52 49 4e 47 2e 27 5c 73 2a 3a 5c 73 2a 27 2e 73 65 6c 66 3a 3a 24 4a 53 $JSON_STRING.'\s*:\s*'.self::$JS
79260 4f 4e 5f 56 41 4c 55 45 2e 27 5c 73 2a 2c 5c 73 2a 29 2a 3f 29 27 2e 0a 27 28 27 2e 70 72 65 67 ON_VALUE.'\s*,\s*)*?)'..'('.preg
79280 5f 71 75 6f 74 65 28 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 6d 61 69 6e 4e 6f 64 _quote(JsonFile::encode($mainNod
792a0 65 29 29 2e 27 5c 73 2a 3a 5c 73 2a 5c 7b 29 28 27 2e 73 65 6c 66 3a 3a 24 52 45 43 55 52 53 45 e)).'\s*:\s*\{)('.self::$RECURSE
792c0 5f 42 4c 4f 43 4b 53 2e 27 29 28 5c 7d 29 28 2e 2a 29 7d 73 27 3b 0a 74 72 79 20 7b 0a 69 66 20 _BLOCKS.')(\})(.*)}s';.try.{.if.
792e0 28 21 24 74 68 69 73 2d 3e 70 72 65 67 4d 61 74 63 68 28 24 6e 6f 64 65 52 65 67 65 78 2c 20 24 (!$this->pregMatch($nodeRegex,.$
79300 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 72 65 74 75 72 this->contents,.$match)).{.retur
79320 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 n.false;.}.}.catch.(\RuntimeExce
79340 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 20 3d 3d ption.$e).{.if.($e->getCode().==
79360 3d 20 50 52 45 47 5f 42 41 43 4b 54 52 41 43 4b 5f 4c 49 4d 49 54 5f 45 52 52 4f 52 29 20 7b 0a =.PREG_BACKTRACK_LIMIT_ERROR).{.
79380 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 63 68 return.false;.}.throw.$e;.}..$ch
793a0 69 6c 64 72 65 6e 20 3d 20 24 6d 61 74 63 68 5b 33 5d 3b 0a 0a 0a 20 69 66 20 28 21 40 6a 73 6f ildren.=.$match[3];....if.(!@jso
793c0 6e 5f 64 65 63 6f 64 65 28 27 7b 27 2e 24 63 68 69 6c 64 72 65 6e 2e 27 7d 27 29 29 20 7b 0a 72 n_decode('{'.$children.'}')).{.r
793e0 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a 0a eturn.false;.}..$that.=.$this;..
79400 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 67 4d 61 74 63 68 28 27 7b 28 22 27 2e 70 72 65 ..if.($this->pregMatch('{("'.pre
79420 67 5f 71 75 6f 74 65 28 24 6e 61 6d 65 29 2e 27 22 5c 73 2a 3a 5c 73 2a 29 28 27 2e 73 65 6c 66 g_quote($name).'"\s*:\s*)('.self
79440 3a 3a 24 4a 53 4f 4e 5f 56 41 4c 55 45 2e 27 29 28 2c 3f 29 7d 27 2c 20 24 63 68 69 6c 64 72 65 ::$JSON_VALUE.')(,?)}',.$childre
79460 6e 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 24 63 68 69 6c 64 72 65 6e 20 3d 20 70 72 65 67 n,.$matches)).{.$children.=.preg
79480 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 7b 28 22 27 2e 70 72 65 67 5f 71 75 6f _replace_callback('{("'.preg_quo
794a0 74 65 28 24 6e 61 6d 65 29 2e 27 22 5c 73 2a 3a 5c 73 2a 29 28 27 2e 73 65 6c 66 3a 3a 24 4a 53 te($name).'"\s*:\s*)('.self::$JS
794c0 4f 4e 5f 56 41 4c 55 45 2e 27 29 28 2c 3f 29 7d 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 ON_VALUE.')(,?)}',.function.($ma
794e0 74 63 68 65 73 29 20 75 73 65 20 28 24 6e 61 6d 65 2c 20 24 73 75 62 4e 61 6d 65 2c 20 24 76 61 tches).use.($name,.$subName,.$va
79500 6c 75 65 2c 20 24 74 68 61 74 29 20 7b 0a 69 66 20 28 24 73 75 62 4e 61 6d 65 20 21 3d 3d 20 6e lue,.$that).{.if.($subName.!==.n
79520 75 6c 6c 29 20 7b 0a 24 63 75 72 56 61 6c 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 6d 61 ull).{.$curVal.=.json_decode($ma
79540 74 63 68 65 73 5b 32 5d 2c 20 74 72 75 65 29 3b 0a 24 63 75 72 56 61 6c 5b 24 73 75 62 4e 61 6d tches[2],.true);.$curVal[$subNam
79560 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 24 76 61 6c 75 65 20 3d 20 24 63 75 72 56 61 6c 3b 0a 7d e].=.$value;.$value.=.$curVal;.}
79580 0a 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 2e 20 24 74 68 61 74 2d 3e 66 6f ..return.$matches[1]...$that->fo
795a0 72 6d 61 74 28 24 76 61 6c 75 65 2c 20 31 29 20 2e 20 24 6d 61 74 63 68 65 73 5b 33 5d 3b 0a 7d rmat($value,.1)...$matches[3];.}
795c0 2c 20 24 63 68 69 6c 64 72 65 6e 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 70 ,.$children);.}.elseif.($this->p
795e0 72 65 67 4d 61 74 63 68 28 27 23 5b 5e 5c 73 5d 28 5c 73 2a 29 24 23 27 2c 20 24 63 68 69 6c 64 regMatch('#[^\s](\s*)$#',.$child
79600 72 65 6e 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 28 24 73 75 62 4e 61 6d 65 20 21 3d 3d ren,.$match)).{.if.($subName.!==
79620 20 6e 75 6c 6c 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 61 72 72 61 79 28 24 73 75 62 4e 61 6d 65 .null).{.$value.=.array($subName
79640 20 3d 3e 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 0a 20 24 63 68 69 6c 64 72 65 6e 20 3d 20 70 72 .=>.$value);.}....$children.=.pr
79660 65 67 5f 72 65 70 6c 61 63 65 28 0a 27 23 27 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 24 23 27 2c 0a eg_replace(.'#'.$match[1].'$#',.
79680 61 64 64 63 73 6c 61 73 68 65 73 28 27 2c 27 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 addcslashes(','...$this->newline
796a0 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 ...$this->indent...$this->indent
796c0 20 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 6e 61 6d 65 29 2e 27 3a 20 27 2e ...JsonFile::encode($name).':.'.
796e0 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 28 24 76 61 6c 75 65 2c 20 31 29 20 2e 20 24 6d 61 74 63 $this->format($value,.1)...$matc
79700 68 5b 31 5d 2c 20 27 5c 5c 27 29 2c 0a 24 63 68 69 6c 64 72 65 6e 0a 29 3b 0a 7d 20 65 6c 73 65 h[1],.'\\'),.$children.);.}.else
79720 20 7b 0a 69 66 20 28 24 73 75 62 4e 61 6d 65 20 21 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 76 61 6c .{.if.($subName.!==.null).{.$val
79740 75 65 20 3d 20 61 72 72 61 79 28 24 73 75 62 4e 61 6d 65 20 3d 3e 20 24 76 61 6c 75 65 29 3b 0a ue.=.array($subName.=>.$value);.
79760 7d 0a 0a 0a 20 24 63 68 69 6c 64 72 65 6e 20 3d 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 }....$children.=.$this->newline.
79780 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 ..$this->indent...$this->indent.
797a0 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 6e 61 6d 65 29 2e 27 3a 20 27 2e 24 ..JsonFile::encode($name).':.'.$
797c0 74 68 69 73 2d 3e 66 6f 72 6d 61 74 28 24 76 61 6c 75 65 2c 20 31 29 20 2e 20 24 63 68 69 6c 64 this->format($value,.1)...$child
797e0 72 65 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 ren;.}..$this->contents.=.preg_r
79800 65 70 6c 61 63 65 28 24 6e 6f 64 65 52 65 67 65 78 2c 20 61 64 64 63 73 6c 61 73 68 65 73 28 27 eplace($nodeRegex,.addcslashes('
79820 24 7b 31 7d 24 7b 32 7d 27 2e 24 63 68 69 6c 64 72 65 6e 2e 27 24 7b 34 7d 24 7b 35 7d 27 2c 20 ${1}${2}'.$children.'${4}${5}',.
79840 27 5c 5c 27 29 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 72 65 74 75 72 6e '\\'),.$this->contents);..return
79860 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 .true;.}..public.function.remove
79880 53 75 62 4e 6f 64 65 28 24 6d 61 69 6e 4e 6f 64 65 2c 20 24 6e 61 6d 65 29 0a 7b 0a 24 64 65 63 SubNode($mainNode,.$name).{.$dec
798a0 6f 64 65 64 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 oded.=.JsonFile::parseJson($this
798c0 2d 3e 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 0a 20 69 66 20 28 65 6d 70 74 79 28 24 64 65 63 6f 64 ->contents);....if.(empty($decod
798e0 65 64 5b 24 6d 61 69 6e 4e 6f 64 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d ed[$mainNode])).{.return.true;.}
79900 0a 0a 0a 20 24 6e 6f 64 65 52 65 67 65 78 20 3d 20 27 7b 5e 28 5c 73 2a 5c 7b 5c 73 2a 28 3f 3a ....$nodeRegex.=.'{^(\s*\{\s*(?:
79920 27 2e 73 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 53 54 52 49 4e 47 2e 27 5c 73 2a 3a 5c 73 2a 27 2e 73 '.self::$JSON_STRING.'\s*:\s*'.s
79940 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 56 41 4c 55 45 2e 27 5c 73 2a 2c 5c 73 2a 29 2a 3f 29 27 2e 0a elf::$JSON_VALUE.'\s*,\s*)*?)'..
79960 27 28 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 '('.preg_quote(JsonFile::encode(
79980 24 6d 61 69 6e 4e 6f 64 65 29 29 2e 27 5c 73 2a 3a 5c 73 2a 5c 7b 29 28 27 2e 73 65 6c 66 3a 3a $mainNode)).'\s*:\s*\{)('.self::
799a0 24 52 45 43 55 52 53 45 5f 42 4c 4f 43 4b 53 2e 27 29 28 5c 7d 29 28 2e 2a 29 7d 73 27 3b 0a 74 $RECURSE_BLOCKS.')(\})(.*)}s';.t
799c0 72 79 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 70 72 65 67 4d 61 74 63 68 28 24 6e 6f 64 65 ry.{.if.(!$this->pregMatch($node
799e0 52 65 67 65 78 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 68 29 29 Regex,.$this->contents,.$match))
79a00 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e .{.return.false;.}.}.catch.(\Run
79a20 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 65 2d 3e 67 65 74 43 timeException.$e).{.if.($e->getC
79a40 6f 64 65 28 29 20 3d 3d 3d 20 50 52 45 47 5f 42 41 43 4b 54 52 41 43 4b 5f 4c 49 4d 49 54 5f 45 ode().===.PREG_BACKTRACK_LIMIT_E
79a60 52 52 4f 52 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 74 68 72 6f 77 20 24 65 RROR).{.return.false;.}.throw.$e
79a80 3b 0a 7d 0a 0a 24 63 68 69 6c 64 72 65 6e 20 3d 20 24 6d 61 74 63 68 5b 33 5d 3b 0a 0a 0a 20 69 ;.}..$children.=.$match[3];....i
79aa0 66 20 28 21 40 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 27 7b 27 2e 24 63 68 69 6c 64 72 65 6e 2e 27 f.(!@json_decode('{'.$children.'
79ac0 7d 27 2c 20 74 72 75 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 73 }',.true)).{.return.false;.}..$s
79ae0 75 62 4e 61 6d 65 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6d 61 69 ubName.=.null;.if.(in_array($mai
79b00 6e 4e 6f 64 65 2c 20 61 72 72 61 79 28 27 63 6f 6e 66 69 67 27 2c 20 27 72 65 70 6f 73 69 74 6f nNode,.array('config',.'reposito
79b20 72 69 65 73 27 29 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 6e 61 6d ries')).&&.false.!==.strpos($nam
79b40 65 2c 20 27 2e 27 29 29 20 7b 0a 6c 69 73 74 28 24 6e 61 6d 65 2c 20 24 73 75 62 4e 61 6d 65 29 e,.'.')).{.list($name,.$subName)
79b60 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 6e 61 6d 65 2c 20 32 29 3b 0a 7d 0a 0a 0a 20 .=.explode('.',.$name,.2);.}....
79b80 69 66 20 28 21 69 73 73 65 74 28 24 64 65 63 6f 64 65 64 5b 24 6d 61 69 6e 4e 6f 64 65 5d 5b 24 if.(!isset($decoded[$mainNode][$
79ba0 6e 61 6d 65 5d 29 20 7c 7c 20 28 24 73 75 62 4e 61 6d 65 20 26 26 20 21 69 73 73 65 74 28 24 64 name]).||.($subName.&&.!isset($d
79bc0 65 63 6f 64 65 64 5b 24 6d 61 69 6e 4e 6f 64 65 5d 5b 24 6e 61 6d 65 5d 5b 24 73 75 62 4e 61 6d ecoded[$mainNode][$name][$subNam
79be0 65 5d 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 e]))).{.return.true;.}....if.($t
79c00 68 69 73 2d 3e 70 72 65 67 4d 61 74 63 68 28 27 7b 22 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 his->pregMatch('{"'.preg_quote($
79c20 6e 61 6d 65 29 2e 27 22 5c 73 2a 3a 7d 69 27 2c 20 24 63 68 69 6c 64 72 65 6e 29 29 20 7b 0a 0a name).'"\s*:}i',.$children)).{..
79c40 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 27 7b 22 27 2e 70 72 65 67 5f 71 75 .if.(preg_match_all('{"'.preg_qu
79c60 6f 74 65 28 24 6e 61 6d 65 29 2e 27 22 5c 73 2a 3a 5c 73 2a 28 3f 3a 27 2e 73 65 6c 66 3a 3a 24 ote($name).'"\s*:\s*(?:'.self::$
79c80 4a 53 4f 4e 5f 56 41 4c 55 45 2e 27 29 7d 27 2c 20 24 63 68 69 6c 64 72 65 6e 2c 20 24 6d 61 74 JSON_VALUE.')}',.$children,.$mat
79ca0 63 68 65 73 29 29 20 7b 0a 24 62 65 73 74 4d 61 74 63 68 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 ches)).{.$bestMatch.=.'';.foreac
79cc0 68 20 28 24 6d 61 74 63 68 65 73 5b 30 5d 20 61 73 20 24 6d 61 74 63 68 29 20 7b 0a 69 66 20 28 h.($matches[0].as.$match).{.if.(
79ce0 73 74 72 6c 65 6e 28 24 62 65 73 74 4d 61 74 63 68 29 20 3c 20 73 74 72 6c 65 6e 28 24 6d 61 74 strlen($bestMatch).<.strlen($mat
79d00 63 68 29 29 20 7b 0a 24 62 65 73 74 4d 61 74 63 68 20 3d 20 24 6d 61 74 63 68 3b 0a 7d 0a 7d 0a ch)).{.$bestMatch.=.$match;.}.}.
79d20 24 63 68 69 6c 64 72 65 6e 43 6c 65 61 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b $childrenClean.=.preg_replace('{
79d40 2c 5c 73 2a 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 62 65 73 74 4d 61 74 63 68 29 2e 27 7d 69 ,\s*'.preg_quote($bestMatch).'}i
79d60 27 2c 20 27 27 2c 20 24 63 68 69 6c 64 72 65 6e 2c 20 2d 31 2c 20 24 63 6f 75 6e 74 29 3b 0a 69 ',.'',.$children,.-1,.$count);.i
79d80 66 20 28 31 20 21 3d 3d 20 24 63 6f 75 6e 74 29 20 7b 0a 24 63 68 69 6c 64 72 65 6e 43 6c 65 61 f.(1.!==.$count).{.$childrenClea
79da0 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 n.=.preg_replace('{'.preg_quote(
79dc0 24 62 65 73 74 4d 61 74 63 68 29 2e 27 5c 73 2a 2c 3f 5c 73 2a 7d 69 27 2c 20 27 27 2c 20 24 63 $bestMatch).'\s*,?\s*}i',.'',.$c
79de0 68 69 6c 64 72 65 6e 43 6c 65 61 6e 2c 20 2d 31 2c 20 24 63 6f 75 6e 74 29 3b 0a 69 66 20 28 31 hildrenClean,.-1,.$count);.if.(1
79e00 20 21 3d 3d 20 24 63 6f 75 6e 74 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d .!==.$count).{.return.false;.}.}
79e20 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 68 69 6c 64 72 65 6e 43 6c 65 61 6e 20 3d 20 24 63 68 .}.}.else.{.$childrenClean.=.$ch
79e40 69 6c 64 72 65 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 74 72 69 6d 28 24 63 68 69 6c 64 72 65 6e ildren;.}....if.(!trim($children
79e60 43 6c 65 61 6e 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 Clean)).{.$this->contents.=.preg
79e80 5f 72 65 70 6c 61 63 65 28 24 6e 6f 64 65 52 65 67 65 78 2c 20 27 24 31 24 32 27 2e 24 74 68 69 _replace($nodeRegex,.'$1$2'.$thi
79ea0 73 2d 3e 6e 65 77 6c 69 6e 65 2e 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 2e 27 24 34 24 35 27 2c s->newline.$this->indent.'$4$5',
79ec0 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 0a 20 69 66 20 28 24 73 75 62 4e 61 .$this->contents);....if.($subNa
79ee0 6d 65 20 21 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 63 75 72 56 61 6c 20 3d 20 6a 73 6f 6e 5f 64 65 me.!==.null).{.$curVal.=.json_de
79f00 63 6f 64 65 28 27 7b 27 2e 24 63 68 69 6c 64 72 65 6e 2e 27 7d 27 2c 20 74 72 75 65 29 3b 0a 75 code('{'.$children.'}',.true);.u
79f20 6e 73 65 74 28 24 63 75 72 56 61 6c 5b 24 6e 61 6d 65 5d 5b 24 73 75 62 4e 61 6d 65 5d 29 3b 0a nset($curVal[$name][$subName]);.
79f40 24 74 68 69 73 2d 3e 61 64 64 53 75 62 4e 6f 64 65 28 24 6d 61 69 6e 4e 6f 64 65 2c 20 24 6e 61 $this->addSubNode($mainNode,.$na
79f60 6d 65 2c 20 24 63 75 72 56 61 6c 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 me,.$curVal[$name]);.}..return.t
79f80 72 75 65 3b 0a 7d 0a 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a 24 74 68 69 73 2d 3e 63 6f rue;.}..$that.=.$this;.$this->co
79fa0 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 24 ntents.=.preg_replace_callback($
79fc0 6e 6f 64 65 52 65 67 65 78 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 68 65 73 29 20 75 nodeRegex,.function.($matches).u
79fe0 73 65 20 28 24 74 68 61 74 2c 20 24 6e 61 6d 65 2c 20 24 73 75 62 4e 61 6d 65 2c 20 24 63 68 69 se.($that,.$name,.$subName,.$chi
7a000 6c 64 72 65 6e 43 6c 65 61 6e 29 20 7b 0a 69 66 20 28 24 73 75 62 4e 61 6d 65 20 21 3d 3d 20 6e ldrenClean).{.if.($subName.!==.n
7a020 75 6c 6c 29 20 7b 0a 24 63 75 72 56 61 6c 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 27 7b 27 ull).{.$curVal.=.json_decode('{'
7a040 2e 24 6d 61 74 63 68 65 73 5b 33 5d 2e 27 7d 27 2c 20 74 72 75 65 29 3b 0a 75 6e 73 65 74 28 24 .$matches[3].'}',.true);.unset($
7a060 63 75 72 56 61 6c 5b 24 6e 61 6d 65 5d 5b 24 73 75 62 4e 61 6d 65 5d 29 3b 0a 24 63 68 69 6c 64 curVal[$name][$subName]);.$child
7a080 72 65 6e 43 6c 65 61 6e 20 3d 20 73 75 62 73 74 72 28 24 74 68 61 74 2d 3e 66 6f 72 6d 61 74 28 renClean.=.substr($that->format(
7a0a0 24 63 75 72 56 61 6c 2c 20 30 29 2c 20 31 2c 20 2d 31 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 $curVal,.0),.1,.-1);.}..return.$
7a0c0 6d 61 74 63 68 65 73 5b 31 5d 20 2e 20 24 6d 61 74 63 68 65 73 5b 32 5d 20 2e 20 24 63 68 69 6c matches[1]...$matches[2]...$chil
7a0e0 64 72 65 6e 43 6c 65 61 6e 20 2e 20 24 6d 61 74 63 68 65 73 5b 34 5d 20 2e 20 24 6d 61 74 63 68 drenClean...$matches[4]...$match
7a100 65 73 5b 35 5d 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 72 65 74 es[5];.},.$this->contents);..ret
7a120 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 urn.true;.}..public.function.add
7a140 4d 61 69 6e 4b 65 79 28 24 6b 65 79 2c 20 24 63 6f 6e 74 65 6e 74 29 0a 7b 0a 24 64 65 63 6f 64 MainKey($key,.$content).{.$decod
7a160 65 64 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e ed.=.JsonFile::parseJson($this->
7a180 63 6f 6e 74 65 6e 74 73 29 3b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 66 6f 72 contents);.$content.=.$this->for
7a1a0 6d 61 74 28 24 63 6f 6e 74 65 6e 74 29 3b 0a 0a 0a 20 24 72 65 67 65 78 20 3d 20 27 7b 5e 28 5c mat($content);....$regex.=.'{^(\
7a1c0 73 2a 5c 7b 5c 73 2a 28 3f 3a 27 2e 73 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 53 54 52 49 4e 47 2e 27 s*\{\s*(?:'.self::$JSON_STRING.'
7a1e0 5c 73 2a 3a 5c 73 2a 27 2e 73 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 56 41 4c 55 45 2e 27 5c 73 2a 2c \s*:\s*'.self::$JSON_VALUE.'\s*,
7a200 5c 73 2a 29 2a 3f 29 27 2e 0a 27 28 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 4a 73 6f 6e 46 69 6c \s*)*?)'..'('.preg_quote(JsonFil
7a220 65 3a 3a 65 6e 63 6f 64 65 28 24 6b 65 79 29 29 2e 27 5c 73 2a 3a 5c 73 2a 27 2e 73 65 6c 66 3a e::encode($key)).'\s*:\s*'.self:
7a240 3a 24 4a 53 4f 4e 5f 56 41 4c 55 45 2e 27 29 28 2e 2a 29 7d 73 27 3b 0a 69 66 20 28 69 73 73 65 :$JSON_VALUE.')(.*)}s';.if.(isse
7a260 74 28 24 64 65 63 6f 64 65 64 5b 24 6b 65 79 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 70 72 65 67 t($decoded[$key]).&&.$this->preg
7a280 4d 61 74 63 68 28 24 72 65 67 65 78 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 2c 20 24 Match($regex,.$this->contents,.$
7a2a0 6d 61 74 63 68 65 73 29 29 20 7b 0a 0a 20 69 66 20 28 21 40 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 matches)).{...if.(!@json_decode(
7a2c0 27 7b 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 2e 27 7d 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 '{'.$matches[2].'}')).{.return.f
7a2e0 61 6c 73 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 20 3d 20 24 6d 61 74 63 alse;.}..$this->contents.=.$matc
7a300 68 65 73 5b 31 5d 20 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 6b 65 79 29 2e hes[1]...JsonFile::encode($key).
7a320 27 3a 20 27 2e 24 63 6f 6e 74 65 6e 74 20 2e 20 24 6d 61 74 63 68 65 73 5b 33 5d 3b 0a 0a 72 65 ':.'.$content...$matches[3];..re
7a340 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 67 4d turn.true;.}....if.($this->pregM
7a360 61 74 63 68 28 27 23 5b 5e 7b 5c 73 5d 28 5c 73 2a 29 5c 7d 24 23 27 2c 20 24 74 68 69 73 2d 3e atch('#[^{\s](\s*)\}$#',.$this->
7a380 63 6f 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 contents,.$match)).{.$this->cont
7a3a0 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 0a 27 23 27 2e 24 6d 61 74 63 68 5b ents.=.preg_replace(.'#'.$match[
7a3c0 31 5d 2e 27 5c 7d 24 23 27 2c 0a 61 64 64 63 73 6c 61 73 68 65 73 28 27 2c 27 20 2e 20 24 74 68 1].'\}$#',.addcslashes(','...$th
7a3e0 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 4a 73 is->newline...$this->indent...Js
7a400 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 6b 65 79 29 2e 20 27 3a 20 27 2e 20 24 63 6f 6e onFile::encode($key)..':.'..$con
7a420 74 65 6e 74 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 27 7d 27 2c 20 27 5c 5c tent...$this->newline...'}',.'\\
7a440 27 29 2c 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 0a 29 3b 0a 0a 72 65 74 75 72 6e 20 74 '),.$this->contents.);..return.t
7a460 72 75 65 3b 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 rue;.}....$this->contents.=.preg
7a480 5f 72 65 70 6c 61 63 65 28 0a 27 23 5c 7d 24 23 27 2c 0a 61 64 64 63 73 6c 61 73 68 65 73 28 24 _replace(.'#\}$#',.addcslashes($
7a4a0 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 this->indent...JsonFile::encode(
7a4c0 24 6b 65 79 29 2e 20 27 3a 20 27 2e 24 63 6f 6e 74 65 6e 74 20 2e 20 24 74 68 69 73 2d 3e 6e 65 $key)..':.'.$content...$this->ne
7a4e0 77 6c 69 6e 65 20 2e 20 27 7d 27 2c 20 27 5c 5c 27 29 2c 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 wline...'}',.'\\'),.$this->conte
7a500 6e 74 73 0a 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 nts.);..return.true;.}..public.f
7a520 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 28 24 64 61 74 61 2c 20 24 64 65 70 74 68 20 3d 20 30 unction.format($data,.$depth.=.0
7a540 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 64 61 74 61 29 29 20 7b 0a 72 65 73 65 74 ).{.if.(is_array($data)).{.reset
7a560 28 24 64 61 74 61 29 3b 0a 0a 69 66 20 28 69 73 5f 6e 75 6d 65 72 69 63 28 6b 65 79 28 24 64 61 ($data);..if.(is_numeric(key($da
7a580 74 61 29 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 20 61 73 20 24 6b 65 79 20 3d ta))).{.foreach.($data.as.$key.=
7a5a0 3e 20 24 76 61 6c 29 20 7b 0a 24 64 61 74 61 5b 24 6b 65 79 5d 20 3d 20 24 74 68 69 73 2d 3e 66 >.$val).{.$data[$key].=.$this->f
7a5c0 6f 72 6d 61 74 28 24 76 61 6c 2c 20 24 64 65 70 74 68 20 2b 20 31 29 3b 0a 7d 0a 0a 72 65 74 75 ormat($val,.$depth.+.1);.}..retu
7a5e0 72 6e 20 27 5b 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 64 61 74 61 29 2e 27 5d 27 3b rn.'['.implode(',.',.$data).']';
7a600 0a 7d 0a 0a 24 6f 75 74 20 3d 20 27 7b 27 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 3b .}..$out.=.'{'...$this->newline;
7a620 0a 24 65 6c 65 6d 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 .$elems.=.array();.foreach.($dat
7a640 61 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 29 20 7b 0a 24 65 6c 65 6d 73 5b 5d 20 3d 20 a.as.$key.=>.$val).{.$elems[].=.
7a660 73 74 72 5f 72 65 70 65 61 74 28 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 2c 20 24 64 65 70 74 68 str_repeat($this->indent,.$depth
7a680 20 2b 20 32 29 20 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 6b 65 79 29 2e 20 .+.2)...JsonFile::encode($key)..
7a6a0 27 3a 20 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 28 24 76 61 6c 2c 20 24 64 65 70 74 68 20 ':.'.$this->format($val,.$depth.
7a6c0 2b 20 31 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f 75 74 20 2e 20 69 6d 70 6c 6f 64 65 28 27 +.1);.}..return.$out...implode('
7a6e0 2c 27 2e 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 2c 20 24 65 6c 65 6d 73 29 20 2e 20 24 74 68 ,'.$this->newline,.$elems)...$th
7a700 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 73 74 72 5f 72 65 70 65 61 74 28 24 74 68 69 73 2d 3e is->newline...str_repeat($this->
7a720 69 6e 64 65 6e 74 2c 20 24 64 65 70 74 68 20 2b 20 31 29 20 2e 20 27 7d 27 3b 0a 7d 0a 0a 72 65 indent,.$depth.+.1)...'}';.}..re
7a740 74 75 72 6e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 64 61 74 61 29 3b 0a 7d 0a turn.JsonFile::encode($data);.}.
7a760 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 74 65 63 74 49 6e 64 65 6e 74 .protected.function.detectIndent
7a780 69 6e 67 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 67 4d 61 74 63 68 28 27 7b 5e ing().{.if.($this->pregMatch('{^
7a7a0 28 5b 20 5c 74 5d 2b 29 22 7d 6d 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 2c 20 24 ([.\t]+)"}m',.$this->contents,.$
7a7c0 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 3d 20 24 6d 61 74 63 68 match)).{.$this->indent.=.$match
7a7e0 5b 31 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 3d 20 27 20 [1];.}.else.{.$this->indent.=.'.
7a800 20 20 20 27 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 ...';.}.}..protected.function.pr
7a820 65 67 4d 61 74 63 68 28 24 72 65 2c 20 24 73 74 72 2c 20 26 24 6d 61 74 63 68 65 73 20 3d 20 61 egMatch($re,.$str,.&$matches.=.a
7a840 72 72 61 79 28 29 29 0a 7b 0a 24 63 6f 75 6e 74 20 3d 20 70 72 65 67 5f 6d 61 74 63 68 28 24 72 rray()).{.$count.=.preg_match($r
7a860 65 2c 20 24 73 74 72 2c 20 24 6d 61 74 63 68 65 73 29 3b 0a 0a 69 66 20 28 24 63 6f 75 6e 74 20 e,.$str,.$matches);..if.($count.
7a880 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 73 77 69 74 63 68 20 28 70 72 65 67 5f 6c 61 73 74 5f 65 ===.false).{.switch.(preg_last_e
7a8a0 72 72 6f 72 28 29 29 20 7b 0a 63 61 73 65 20 50 52 45 47 5f 4e 4f 5f 45 52 52 4f 52 3a 0a 74 68 rror()).{.case.PREG_NO_ERROR:.th
7a8c0 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 row.new.\RuntimeException('Faile
7a8e0 64 20 74 6f 20 65 78 65 63 75 74 65 20 72 65 67 65 78 3a 20 50 52 45 47 5f 4e 4f 5f 45 52 52 4f d.to.execute.regex:.PREG_NO_ERRO
7a900 52 27 2c 20 50 52 45 47 5f 4e 4f 5f 45 52 52 4f 52 29 3b 0a 63 61 73 65 20 50 52 45 47 5f 49 4e R',.PREG_NO_ERROR);.case.PREG_IN
7a920 54 45 52 4e 41 4c 5f 45 52 52 4f 52 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 TERNAL_ERROR:.throw.new.\Runtime
7a940 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 72 65 67 Exception('Failed.to.execute.reg
7a960 65 78 3a 20 50 52 45 47 5f 49 4e 54 45 52 4e 41 4c 5f 45 52 52 4f 52 27 2c 20 50 52 45 47 5f 49 ex:.PREG_INTERNAL_ERROR',.PREG_I
7a980 4e 54 45 52 4e 41 4c 5f 45 52 52 4f 52 29 3b 0a 63 61 73 65 20 50 52 45 47 5f 42 41 43 4b 54 52 NTERNAL_ERROR);.case.PREG_BACKTR
7a9a0 41 43 4b 5f 4c 49 4d 49 54 5f 45 52 52 4f 52 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 ACK_LIMIT_ERROR:.throw.new.\Runt
7a9c0 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 imeException('Failed.to.execute.
7a9e0 72 65 67 65 78 3a 20 50 52 45 47 5f 42 41 43 4b 54 52 41 43 4b 5f 4c 49 4d 49 54 5f 45 52 52 4f regex:.PREG_BACKTRACK_LIMIT_ERRO
7aa00 52 27 2c 20 50 52 45 47 5f 42 41 43 4b 54 52 41 43 4b 5f 4c 49 4d 49 54 5f 45 52 52 4f 52 29 3b R',.PREG_BACKTRACK_LIMIT_ERROR);
7aa20 0a 63 61 73 65 20 50 52 45 47 5f 52 45 43 55 52 53 49 4f 4e 5f 4c 49 4d 49 54 5f 45 52 52 4f 52 .case.PREG_RECURSION_LIMIT_ERROR
7aa40 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 :.throw.new.\RuntimeException('F
7aa60 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 72 65 67 65 78 3a 20 50 52 45 47 5f 52 45 43 ailed.to.execute.regex:.PREG_REC
7aa80 55 52 53 49 4f 4e 5f 4c 49 4d 49 54 5f 45 52 52 4f 52 27 2c 20 50 52 45 47 5f 52 45 43 55 52 53 URSION_LIMIT_ERROR',.PREG_RECURS
7aaa0 49 4f 4e 5f 4c 49 4d 49 54 5f 45 52 52 4f 52 29 3b 0a 63 61 73 65 20 50 52 45 47 5f 42 41 44 5f ION_LIMIT_ERROR);.case.PREG_BAD_
7aac0 55 54 46 38 5f 45 52 52 4f 52 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 UTF8_ERROR:.throw.new.\RuntimeEx
7aae0 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 72 65 67 65 78 ception('Failed.to.execute.regex
7ab00 3a 20 50 52 45 47 5f 42 41 44 5f 55 54 46 38 5f 45 52 52 4f 52 27 2c 20 50 52 45 47 5f 42 41 44 :.PREG_BAD_UTF8_ERROR',.PREG_BAD
7ab20 5f 55 54 46 38 5f 45 52 52 4f 52 29 3b 0a 63 61 73 65 20 50 52 45 47 5f 42 41 44 5f 55 54 46 38 _UTF8_ERROR);.case.PREG_BAD_UTF8
7ab40 5f 4f 46 46 53 45 54 5f 45 52 52 4f 52 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d _OFFSET_ERROR:.throw.new.\Runtim
7ab60 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 72 65 eException('Failed.to.execute.re
7ab80 67 65 78 3a 20 50 52 45 47 5f 42 41 44 5f 55 54 46 38 5f 4f 46 46 53 45 54 5f 45 52 52 4f 52 27 gex:.PREG_BAD_UTF8_OFFSET_ERROR'
7aba0 2c 20 50 52 45 47 5f 42 41 44 5f 55 54 46 38 5f 4f 46 46 53 45 54 5f 45 52 52 4f 52 29 3b 0a 63 ,.PREG_BAD_UTF8_OFFSET_ERROR);.c
7abc0 61 73 65 20 36 3a 20 0a 20 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 20 37 30 ase.6:...if.(PHP_VERSION_ID.>.70
7abe0 30 30 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 000).{.throw.new.\RuntimeExcepti
7ac00 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 72 65 67 65 78 3a 20 50 52 45 on('Failed.to.execute.regex:.PRE
7ac20 47 5f 4a 49 54 5f 53 54 41 43 4b 4c 49 4d 49 54 5f 45 52 52 4f 52 27 2c 20 36 29 3b 0a 7d 0a 0a G_JIT_STACKLIMIT_ERROR',.6);.}..
7ac40 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 .default:.throw.new.\RuntimeExce
7ac60 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 72 65 67 65 78 3a 20 ption('Failed.to.execute.regex:.
7ac80 55 6e 6b 6e 6f 77 6e 20 65 72 72 6f 72 27 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f Unknown.error');.}.}..return.$co
7aca0 75 6e 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 unt;.}.}.<?php............namesp
7acc0 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 3b 0a 0a 75 73 65 20 45 78 63 65 70 74 69 6f ace.Composer\Json;..use.Exceptio
7ace0 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 n;.....class.JsonValidationExcep
7ad00 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 tion.extends.Exception.{.protect
7ad20 65 64 20 24 65 72 72 6f 72 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 ed.$errors;..public.function.__c
7ad40 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 2c 20 24 65 72 72 6f 72 73 20 3d 20 61 72 72 onstruct($message,.$errors.=.arr
7ad60 61 79 28 29 2c 20 45 78 63 65 70 74 69 6f 6e 20 24 70 72 65 76 69 6f 75 73 20 3d 20 6e 75 6c 6c ay(),.Exception.$previous.=.null
7ad80 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 65 72 72 6f 72 73 3b 0a 70 61 72 ).{.$this->errors.=.$errors;.par
7ada0 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 2c 20 30 2c 20 24 70 ent::__construct($message,.0,.$p
7adc0 72 65 76 69 6f 75 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 revious);.}..public.function.get
7ade0 45 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 3b Errors().{.return.$this->errors;
7ae00 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 .}.}.<?php............namespace.
7ae20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c Composer\Package;..use.Composer\
7ae40 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 Semver\Constraint\Constraint;.us
7ae60 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 e.Composer\Package\Version\Versi
7ae80 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 6c 69 61 73 50 61 63 6b 61 67 65 onParser;.....class.AliasPackage
7aea0 20 65 78 74 65 6e 64 73 20 42 61 73 65 50 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 .extends.BasePackage.implements.
7aec0 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 CompletePackageInterface.{.prote
7aee0 63 74 65 64 20 24 76 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 cted.$version;.protected.$pretty
7af00 56 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 76 3b 0a 70 72 6f 74 65 63 74 Version;.protected.$dev;.protect
7af20 65 64 20 24 72 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 ed.$rootPackageAlias.=.false;.pr
7af40 6f 74 65 63 74 65 64 20 24 73 74 61 62 69 6c 69 74 79 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 otected.$stability;...protected.
7af60 24 61 6c 69 61 73 4f 66 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 71 75 69 72 65 73 3b 0a $aliasOf;..protected.$requires;.
7af80 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 76 52 65 71 75 69 72 65 73 3b 0a 0a 70 72 6f 74 65 63 .protected.$devRequires;..protec
7afa0 74 65 64 20 24 63 6f 6e 66 6c 69 63 74 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 76 ted.$conflicts;..protected.$prov
7afc0 69 64 65 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6c 61 63 65 73 3b 0a 0a 0a 0a 0a ides;..protected.$replaces;.....
7afe0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 ....public.function.__construct(
7b000 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 61 6c 69 61 73 4f 66 2c 20 24 76 65 72 73 PackageInterface.$aliasOf,.$vers
7b020 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f ion,.$prettyVersion).{.parent::_
7b040 5f 63 6f 6e 73 74 72 75 63 74 28 24 61 6c 69 61 73 4f 66 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b _construct($aliasOf->getName());
7b060 0a 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 24 74 68 ..$this->version.=.$version;.$th
7b080 69 73 2d 3e 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 24 70 72 65 74 74 79 56 65 72 73 69 is->prettyVersion.=.$prettyVersi
7b0a0 6f 6e 3b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 20 3d 20 24 61 6c 69 61 73 4f 66 3b 0a 24 on;.$this->aliasOf.=.$aliasOf;.$
7b0c0 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a this->stability.=.VersionParser:
7b0e0 3a 70 61 72 73 65 53 74 61 62 69 6c 69 74 79 28 24 76 65 72 73 69 6f 6e 29 3b 0a 24 74 68 69 73 :parseStability($version);.$this
7b100 2d 3e 64 65 76 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 3d 3d 20 27 64 65 ->dev.=.$this->stability.===.'de
7b120 76 27 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 72 65 71 75 69 72 65 73 27 2c 20 v';..foreach.(array('requires',.
7b140 27 64 65 76 52 65 71 75 69 72 65 73 27 2c 20 27 63 6f 6e 66 6c 69 63 74 73 27 2c 20 27 70 72 6f 'devRequires',.'conflicts',.'pro
7b160 76 69 64 65 73 27 2c 20 27 72 65 70 6c 61 63 65 73 27 29 20 61 73 20 24 74 79 70 65 29 20 7b 0a vides',.'replaces').as.$type).{.
7b180 24 6c 69 6e 6b 73 20 3d 20 24 61 6c 69 61 73 4f 66 2d 3e 7b 27 67 65 74 27 20 2e 20 75 63 66 69 $links.=.$aliasOf->{'get'...ucfi
7b1a0 72 73 74 28 24 74 79 70 65 29 7d 28 29 3b 0a 24 74 68 69 73 2d 3e 24 74 79 70 65 20 3d 20 24 74 rst($type)}();.$this->$type.=.$t
7b1c0 68 69 73 2d 3e 72 65 70 6c 61 63 65 53 65 6c 66 56 65 72 73 69 6f 6e 44 65 70 65 6e 64 65 6e 63 his->replaceSelfVersionDependenc
7b1e0 69 65 73 28 24 6c 69 6e 6b 73 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c ies($links,.$type);.}.}.....publ
7b200 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 4f 66 28 29 0a 7b 0a 72 65 74 75 72 ic.function.getAliasOf().{.retur
7b220 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 n.$this->aliasOf;.}.....public.f
7b240 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 unction.getVersion().{.return.$t
7b260 68 69 73 2d 3e 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 his->version;.}.....public.funct
7b280 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 ion.getStability().{.return.$thi
7b2a0 73 2d 3e 73 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 s->stability;.}.....public.funct
7b2c0 69 6f 6e 20 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 ion.getPrettyVersion().{.return.
7b2e0 24 74 68 69 73 2d 3e 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c $this->prettyVersion;.}.....publ
7b300 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 76 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 ic.function.isDev().{.return.$th
7b320 69 73 2d 3e 64 65 76 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 is->dev;.}.....public.function.g
7b340 65 74 52 65 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 etRequires().{.return.$this->req
7b360 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 uires;.}.....public.function.get
7b380 43 6f 6e 66 6c 69 63 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 Conflicts().{.return.$this->conf
7b3a0 6c 69 63 74 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 licts;.}.....public.function.get
7b3c0 50 72 6f 76 69 64 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 Provides().{.return.$this->provi
7b3e0 64 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 des;.}.....public.function.getRe
7b400 70 6c 61 63 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 places().{.return.$this->replace
7b420 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 76 52 s;.}.....public.function.getDevR
7b440 65 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 76 52 65 71 equires().{.return.$this->devReq
7b460 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 uires;.}...........public.functi
7b480 6f 6e 20 73 65 74 52 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 24 76 61 6c 75 65 29 0a 7b on.setRootPackageAlias($value).{
7b4a0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 20 .return.$this->rootPackageAlias.
7b4c0 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e =.$value;.}......public.function
7b4e0 20 69 73 52 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 .isRootPackageAlias().{.return.$
7b500 74 68 69 73 2d 3e 72 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a this->rootPackageAlias;.}.......
7b520 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 70 6c 61 63 65 53 65 6c 66 56 .protected.function.replaceSelfV
7b540 65 72 73 69 6f 6e 44 65 70 65 6e 64 65 6e 63 69 65 73 28 61 72 72 61 79 20 24 6c 69 6e 6b 73 2c ersionDependencies(array.$links,
7b560 20 24 6c 69 6e 6b 54 79 70 65 29 0a 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6c 69 6e 6b .$linkType).{.if.(in_array($link
7b580 54 79 70 65 2c 20 61 72 72 61 79 28 27 63 6f 6e 66 6c 69 63 74 73 27 2c 20 27 70 72 6f 76 69 64 Type,.array('conflicts',.'provid
7b5a0 65 73 27 2c 20 27 72 65 70 6c 61 63 65 73 27 29 2c 20 74 72 75 65 29 29 20 7b 0a 24 6e 65 77 4c es',.'replaces'),.true)).{.$newL
7b5c0 69 6e 6b 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 inks.=.array();.foreach.($links.
7b5e0 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 0a 20 69 66 20 28 27 73 65 6c 66 2e 76 65 72 73 69 6f 6e 27 as.$link).{...if.('self.version'
7b600 20 3d 3d 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 .===.$link->getPrettyConstraint(
7b620 29 29 20 7b 0a 24 6e 65 77 4c 69 6e 6b 73 5b 5d 20 3d 20 6e 65 77 20 4c 69 6e 6b 28 24 6c 69 6e )).{.$newLinks[].=.new.Link($lin
7b640 6b 2d 3e 67 65 74 53 6f 75 72 63 65 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 k->getSource(),.$link->getTarget
7b660 28 29 2c 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 74 68 69 73 2d 3e 76 (),.new.Constraint('=',.$this->v
7b680 65 72 73 69 6f 6e 29 2c 20 24 6c 69 6e 6b 54 79 70 65 2c 20 24 74 68 69 73 2d 3e 70 72 65 74 74 ersion),.$linkType,.$this->prett
7b6a0 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 7d 0a 24 6c 69 6e 6b 73 20 3d 20 61 72 72 61 79 5f 6d 65 yVersion);.}.}.$links.=.array_me
7b6c0 72 67 65 28 24 6c 69 6e 6b 73 2c 20 24 6e 65 77 4c 69 6e 6b 73 29 3b 0a 7d 20 65 6c 73 65 20 7b rge($links,.$newLinks);.}.else.{
7b6e0 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 69 6e 64 65 78 20 3d 3e 20 24 6c .foreach.($links.as.$index.=>.$l
7b700 69 6e 6b 29 20 7b 0a 69 66 20 28 27 73 65 6c 66 2e 76 65 72 73 69 6f 6e 27 20 3d 3d 3d 20 24 6c ink).{.if.('self.version'.===.$l
7b720 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 20 7b 0a 24 6c ink->getPrettyConstraint()).{.$l
7b740 69 6e 6b 73 5b 24 69 6e 64 65 78 5d 20 3d 20 6e 65 77 20 4c 69 6e 6b 28 24 6c 69 6e 6b 2d 3e 67 inks[$index].=.new.Link($link->g
7b760 65 74 53 6f 75 72 63 65 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 etSource(),.$link->getTarget(),.
7b780 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 new.Constraint('=',.$this->versi
7b7a0 6f 6e 29 2c 20 24 6c 69 6e 6b 54 79 70 65 2c 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 56 65 72 on),.$linkType,.$this->prettyVer
7b7c0 73 69 6f 6e 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 69 6e 6b 73 3b 0a 7d 0a 0a sion);.}.}.}..return.$links;.}..
7b7e0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a ....public.function.getType().{.
7b800 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 54 79 70 65 28 29 return.$this->aliasOf->getType()
7b820 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 44 69 ;.}..public.function.getTargetDi
7b840 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 r().{.return.$this->aliasOf->get
7b860 54 61 72 67 65 74 44 69 72 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 TargetDir();.}..public.function.
7b880 67 65 74 45 78 74 72 61 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 getExtra().{.return.$this->alias
7b8a0 4f 66 2d 3e 67 65 74 45 78 74 72 61 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 Of->getExtra();.}..public.functi
7b8c0 6f 6e 20 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 24 74 79 70 65 29 0a on.setInstallationSource($type).
7b8e0 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f {.$this->aliasOf->setInstallatio
7b900 6e 53 6f 75 72 63 65 28 24 74 79 70 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 nSource($type);.}..public.functi
7b920 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 on.getInstallationSource().{.ret
7b940 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 urn.$this->aliasOf->getInstallat
7b960 69 6f 6e 53 6f 75 72 63 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ionSource();.}..public.function.
7b980 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e getSourceType().{.return.$this->
7b9a0 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 7d 0a 0a 70 75 62 aliasOf->getSourceType();.}..pub
7b9c0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 0a 7b 0a 72 65 lic.function.getSourceUrl().{.re
7b9e0 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 turn.$this->aliasOf->getSourceUr
7ba00 6c 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 l();.}..public.function.getSourc
7ba20 65 55 72 6c 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d eUrls().{.return.$this->aliasOf-
7ba40 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 >getSourceUrls();.}..public.func
7ba60 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 0a 7b 0a 72 65 74 75 tion.getSourceReference().{.retu
7ba80 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 rn.$this->aliasOf->getSourceRefe
7baa0 72 65 6e 63 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 rence();.}..public.function.setS
7bac0 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 6e 63 65 29 0a 7b 0a 72 65 74 ourceReference($reference).{.ret
7bae0 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 66 urn.$this->aliasOf->setSourceRef
7bb00 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 6e 63 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 erence($reference);.}..public.fu
7bb20 6e 63 74 69 6f 6e 20 73 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 24 6d 69 72 72 6f 72 73 nction.setSourceMirrors($mirrors
7bb40 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 53 6f ).{.return.$this->aliasOf->setSo
7bb60 75 72 63 65 4d 69 72 72 6f 72 73 28 24 6d 69 72 72 6f 72 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 urceMirrors($mirrors);.}..public
7bb80 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 29 0a 7b 0a 72 .function.getSourceMirrors().{.r
7bba0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 6f 75 72 63 65 4d eturn.$this->aliasOf->getSourceM
7bbc0 69 72 72 6f 72 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 irrors();.}..public.function.get
7bbe0 44 69 73 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 DistType().{.return.$this->alias
7bc00 4f 66 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e Of->getDistType();.}..public.fun
7bc20 63 74 69 6f 6e 20 67 65 74 44 69 73 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 ction.getDistUrl().{.return.$thi
7bc40 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 3b 0a 7d 0a 0a 70 75 62 s->aliasOf->getDistUrl();.}..pub
7bc60 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 55 72 6c 73 28 29 0a 7b 0a 72 65 74 lic.function.getDistUrls().{.ret
7bc80 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 69 73 74 55 72 6c 73 28 urn.$this->aliasOf->getDistUrls(
7bca0 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 52 65 66 );.}..public.function.getDistRef
7bcc0 65 72 65 6e 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 erence().{.return.$this->aliasOf
7bce0 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 ->getDistReference();.}..public.
7bd00 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 function.setDistReference($refer
7bd20 65 6e 63 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 ence).{.return.$this->aliasOf->s
7bd40 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 6e 63 65 29 3b 0a 7d 0a 0a etDistReference($reference);.}..
7bd60 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b public.function.getDistSha1Check
7bd80 73 75 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 sum().{.return.$this->aliasOf->g
7bda0 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 etDistSha1Checksum();.}..public.
7bdc0 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 61 72 72 function.setTransportOptions(arr
7bde0 61 79 20 24 6f 70 74 69 6f 6e 73 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 ay.$options).{.return.$this->ali
7be00 61 73 4f 66 2d 3e 73 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f asOf->setTransportOptions($optio
7be20 6e 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 72 61 6e 73 ns);.}..public.function.getTrans
7be40 70 6f 72 74 4f 70 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c portOptions().{.return.$this->al
7be60 69 61 73 4f 66 2d 3e 67 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 29 3b 0a 7d 0a iasOf->getTransportOptions();.}.
7be80 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 74 4d 69 72 72 6f 72 73 28 .public.function.setDistMirrors(
7bea0 24 6d 69 72 72 6f 72 73 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f $mirrors).{.return.$this->aliasO
7bec0 66 2d 3e 73 65 74 44 69 73 74 4d 69 72 72 6f 72 73 28 24 6d 69 72 72 6f 72 73 29 3b 0a 7d 0a 0a f->setDistMirrors($mirrors);.}..
7bee0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 4d 69 72 72 6f 72 73 28 29 public.function.getDistMirrors()
7bf00 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 69 73 .{.return.$this->aliasOf->getDis
7bf20 74 4d 69 72 72 6f 72 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 tMirrors();.}..public.function.g
7bf40 65 74 53 63 72 69 70 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 etScripts().{.return.$this->alia
7bf60 73 4f 66 2d 3e 67 65 74 53 63 72 69 70 74 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e sOf->getScripts();.}..public.fun
7bf80 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 ction.getLicense().{.return.$thi
7bfa0 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 4c 69 63 65 6e 73 65 28 29 3b 0a 7d 0a 0a 70 75 62 s->aliasOf->getLicense();.}..pub
7bfc0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 0a 7b 0a 72 65 74 lic.function.getAutoload().{.ret
7bfe0 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 urn.$this->aliasOf->getAutoload(
7c000 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 76 41 75 74 6f );.}..public.function.getDevAuto
7c020 6c 6f 61 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e load().{.return.$this->aliasOf->
7c040 67 65 74 44 65 76 41 75 74 6f 6c 6f 61 64 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 getDevAutoload();.}..public.func
7c060 74 69 6f 6e 20 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 tion.getIncludePaths().{.return.
7c080 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 $this->aliasOf->getIncludePaths(
7c0a0 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 );.}..public.function.getReposit
7c0c0 6f 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d ories().{.return.$this->aliasOf-
7c0e0 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 >getRepositories();.}..public.fu
7c100 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 0a 7b 0a 72 65 74 75 72 6e nction.getReleaseDate().{.return
7c120 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 .$this->aliasOf->getReleaseDate(
7c140 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 );.}..public.function.getBinarie
7c160 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 s().{.return.$this->aliasOf->get
7c180 42 69 6e 61 72 69 65 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 Binaries();.}..public.function.g
7c1a0 65 74 4b 65 79 77 6f 72 64 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 etKeywords().{.return.$this->ali
7c1c0 61 73 4f 66 2d 3e 67 65 74 4b 65 79 77 6f 72 64 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 asOf->getKeywords();.}..public.f
7c1e0 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 unction.getDescription().{.retur
7c200 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e n.$this->aliasOf->getDescription
7c220 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 6f 6d 65 70 61 ();.}..public.function.getHomepa
7c240 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 ge().{.return.$this->aliasOf->ge
7c260 74 48 6f 6d 65 70 61 67 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 tHomepage();.}..public.function.
7c280 67 65 74 53 75 67 67 65 73 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c getSuggests().{.return.$this->al
7c2a0 69 61 73 4f 66 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 iasOf->getSuggests();.}..public.
7c2c0 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 function.getAuthors().{.return.$
7c2e0 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 41 75 74 68 6f 72 73 28 29 3b 0a 7d 0a 0a this->aliasOf->getAuthors();.}..
7c300 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 70 70 6f 72 74 28 29 0a 7b 0a 72 public.function.getSupport().{.r
7c320 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 75 70 70 6f 72 74 eturn.$this->aliasOf->getSupport
7c340 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 6f 74 69 66 69 ();.}..public.function.getNotifi
7c360 63 61 74 69 6f 6e 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 cationUrl().{.return.$this->alia
7c380 73 4f 66 2d 3e 67 65 74 4e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 28 29 3b 0a 7d 0a 0a 70 75 sOf->getNotificationUrl();.}..pu
7c3a0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 blic.function.getArchiveExcludes
7c3c0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 41 ().{.return.$this->aliasOf->getA
7c3e0 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 rchiveExcludes();.}..public.func
7c400 74 69 6f 6e 20 69 73 41 62 61 6e 64 6f 6e 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 tion.isAbandoned().{.return.$thi
7c420 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 69 73 41 62 61 6e 64 6f 6e 65 64 28 29 3b 0a 7d 0a 0a 70 75 s->aliasOf->isAbandoned();.}..pu
7c440 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 6b blic.function.getReplacementPack
7c460 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 age().{.return.$this->aliasOf->g
7c480 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 etReplacementPackage();.}..publi
7c4a0 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e c.function.__toString().{.return
7c4c0 20 70 61 72 65 6e 74 3a 3a 5f 5f 74 6f 53 74 72 69 6e 67 28 29 2e 27 20 28 61 6c 69 61 73 20 6f .parent::__toString().'.(alias.o
7c4e0 66 20 27 2e 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 f.'.$this->aliasOf->getVersion()
7c500 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 .')';.}.}.<?php............names
7c520 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a pace.Composer\Package\Archiver;.
7c540 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 .use.Composer\Util\Filesystem;.u
7c560 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 46 69 6e 64 se.Symfony\Component\Finder\Find
7c580 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 63 68 69 76 61 62 6c 65 46 69 6c er;..........class.ArchivableFil
7c5a0 65 73 46 69 6e 64 65 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 esFinder.extends.\FilterIterator
7c5c0 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a .{....protected.$finder;........
7c5e0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 public.function.__construct($sou
7c600 72 63 65 73 2c 20 61 72 72 61 79 20 24 65 78 63 6c 75 64 65 73 29 0a 7b 0a 24 66 73 20 3d 20 6e rces,.array.$excludes).{.$fs.=.n
7c620 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 0a 24 73 6f 75 72 63 65 73 20 3d 20 24 66 73 ew.Filesystem();..$sources.=.$fs
7c640 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 73 6f 75 72 63 65 73 29 3b 0a 0a 24 66 69 6c ->normalizePath($sources);..$fil
7c660 74 65 72 73 20 3d 20 61 72 72 61 79 28 0a 6e 65 77 20 48 67 45 78 63 6c 75 64 65 46 69 6c 74 65 ters.=.array(.new.HgExcludeFilte
7c680 72 28 24 73 6f 75 72 63 65 73 29 2c 0a 6e 65 77 20 47 69 74 45 78 63 6c 75 64 65 46 69 6c 74 65 r($sources),.new.GitExcludeFilte
7c6a0 72 28 24 73 6f 75 72 63 65 73 29 2c 0a 6e 65 77 20 43 6f 6d 70 6f 73 65 72 45 78 63 6c 75 64 65 r($sources),.new.ComposerExclude
7c6c0 46 69 6c 74 65 72 28 24 73 6f 75 72 63 65 73 2c 20 24 65 78 63 6c 75 64 65 73 29 2c 0a 29 3b 0a Filter($sources,.$excludes),.);.
7c6e0 0a 24 74 68 69 73 2d 3e 66 69 6e 64 65 72 20 3d 20 6e 65 77 20 46 69 6e 64 65 72 28 29 3b 0a 0a .$this->finder.=.new.Finder();..
7c700 24 66 69 6c 74 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 5c 53 70 6c 46 69 6c 65 49 6e 66 6f $filter.=.function.(\SplFileInfo
7c720 20 24 66 69 6c 65 29 20 75 73 65 20 28 24 73 6f 75 72 63 65 73 2c 20 24 66 69 6c 74 65 72 73 2c .$file).use.($sources,.$filters,
7c740 20 24 66 73 29 20 7b 0a 69 66 20 28 24 66 69 6c 65 2d 3e 69 73 4c 69 6e 6b 28 29 20 26 26 20 73 .$fs).{.if.($file->isLink().&&.s
7c760 74 72 70 6f 73 28 24 66 69 6c 65 2d 3e 67 65 74 4c 69 6e 6b 54 61 72 67 65 74 28 29 2c 20 24 73 trpos($file->getLinkTarget(),.$s
7c780 6f 75 72 63 65 73 29 20 21 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d ources).!==.0).{.return.false;.}
7c7a0 0a 0a 24 72 65 6c 61 74 69 76 65 50 61 74 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 0a ..$relativePath.=.preg_replace(.
7c7c0 27 23 5e 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 73 6f 75 72 63 65 73 2c 20 27 23 27 29 2e 27 '#^'.preg_quote($sources,.'#').'
7c7e0 23 27 2c 0a 27 27 2c 0a 24 66 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 66 69 6c 65 #',.'',.$fs->normalizePath($file
7c800 2d 3e 67 65 74 52 65 61 6c 50 61 74 68 28 29 29 0a 29 3b 0a 0a 24 65 78 63 6c 75 64 65 20 3d 20 ->getRealPath()).);..$exclude.=.
7c820 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6c 74 65 72 73 20 61 73 20 24 66 69 6c false;.foreach.($filters.as.$fil
7c840 74 65 72 29 20 7b 0a 24 65 78 63 6c 75 64 65 20 3d 20 24 66 69 6c 74 65 72 2d 3e 66 69 6c 74 65 ter).{.$exclude.=.$filter->filte
7c860 72 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 24 65 78 63 6c 75 64 65 29 3b 0a 7d 0a 0a 72 r($relativePath,.$exclude);.}..r
7c880 65 74 75 72 6e 20 21 24 65 78 63 6c 75 64 65 3b 0a 7d 3b 0a 0a 69 66 20 28 6d 65 74 68 6f 64 5f eturn.!$exclude;.};..if.(method_
7c8a0 65 78 69 73 74 73 28 24 66 69 6c 74 65 72 2c 20 27 62 69 6e 64 54 6f 27 29 29 20 7b 0a 24 66 69 exists($filter,.'bindTo')).{.$fi
7c8c0 6c 74 65 72 20 3d 20 24 66 69 6c 74 65 72 2d 3e 62 69 6e 64 54 6f 28 6e 75 6c 6c 29 3b 0a 7d 0a lter.=.$filter->bindTo(null);.}.
7c8e0 0a 24 74 68 69 73 2d 3e 66 69 6e 64 65 72 0a 2d 3e 69 6e 28 24 73 6f 75 72 63 65 73 29 0a 2d 3e .$this->finder.->in($sources).->
7c900 66 69 6c 74 65 72 28 24 66 69 6c 74 65 72 29 0a 2d 3e 69 67 6e 6f 72 65 56 43 53 28 74 72 75 65 filter($filter).->ignoreVCS(true
7c920 29 0a 2d 3e 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 28 66 61 6c 73 65 29 3b 0a 0a 70 61 72 65 ).->ignoreDotFiles(false);..pare
7c940 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 68 69 73 2d 3e 66 69 6e 64 65 72 2d 3e 67 nt::__construct($this->finder->g
7c960 65 74 49 74 65 72 61 74 6f 72 28 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f etIterator());.}..public.functio
7c980 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 21 24 74 68 69 73 2d 3e 67 65 74 49 n.accept().{.return.!$this->getI
7c9a0 6e 6e 65 72 49 74 65 72 61 74 6f 72 28 29 2d 3e 63 75 72 72 65 6e 74 28 29 2d 3e 69 73 44 69 72 nnerIterator()->current()->isDir
7c9c0 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 ();.}.}.<?php............namespa
7c9e0 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 0a 75 ce.Composer\Package\Archiver;..u
7ca00 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d se.Composer\Downloader\DownloadM
7ca20 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 anager;.use.Composer\Package\Pac
7ca40 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b kageInterface;.use.Composer\Pack
7ca60 61 67 65 5c 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f age\RootPackageInterface;.use.Co
7ca80 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 mposer\Util\Filesystem;.use.Comp
7caa0 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 oser\Json\JsonFile;......class.A
7cac0 72 63 68 69 76 65 4d 61 6e 61 67 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 6f 77 6e 6c rchiveManager.{.protected.$downl
7cae0 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 61 72 63 68 69 76 65 72 oadManager;..protected.$archiver
7cb00 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 76 65 72 s.=.array();.....protected.$over
7cb20 77 72 69 74 65 46 69 6c 65 73 20 3d 20 74 72 75 65 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 writeFiles.=.true;.....public.fu
7cb40 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 nction.__construct(DownloadManag
7cb60 65 72 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f er.$downloadManager).{.$this->do
7cb80 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 wnloadManager.=.$downloadManager
7cba0 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 63 68 69 ;.}.....public.function.addArchi
7cbc0 76 65 72 28 41 72 63 68 69 76 65 72 49 6e 74 65 72 66 61 63 65 20 24 61 72 63 68 69 76 65 72 29 ver(ArchiverInterface.$archiver)
7cbe0 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 63 68 69 76 65 72 73 5b 5d 20 3d 20 24 61 72 63 68 69 76 65 .{.$this->archivers[].=.$archive
7cc00 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 r;.}.........public.function.set
7cc20 4f 76 65 72 77 72 69 74 65 46 69 6c 65 73 28 24 6f 76 65 72 77 72 69 74 65 46 69 6c 65 73 29 0a OverwriteFiles($overwriteFiles).
7cc40 7b 0a 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 46 69 6c 65 73 20 3d 20 24 6f 76 65 72 77 {.$this->overwriteFiles.=.$overw
7cc60 72 69 74 65 46 69 6c 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a riteFiles;..return.$this;.}.....
7cc80 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 46 69 ....public.function.getPackageFi
7cca0 6c 65 6e 61 6d 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 lename(PackageInterface.$package
7ccc0 29 0a 7b 0a 24 6e 61 6d 65 50 61 72 74 73 20 3d 20 61 72 72 61 79 28 70 72 65 67 5f 72 65 70 6c ).{.$nameParts.=.array(preg_repl
7cce0 61 63 65 28 27 23 5b 5e 61 2d 7a 30 2d 39 2d 5f 5d 23 69 27 2c 20 27 2d 27 2c 20 24 70 61 63 6b ace('#[^a-z0-9-_]#i',.'-',.$pack
7cd00 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 age->getName()));..if.(preg_matc
7cd20 68 28 27 7b 5e 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 24 7d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e h('{^[a-f0-9]{40}$}',.$package->
7cd40 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 29 29 20 7b 0a 24 6e 61 6d 65 50 61 72 74 getDistReference())).{.$namePart
7cd60 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6e 61 6d 65 50 61 72 74 73 2c 20 61 72 72 61 s.=.array_merge($nameParts,.arra
7cd80 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 2c 20 y($package->getDistReference(),.
7cda0 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 29 29 3b 0a 7d 20 65 6c 73 $package->getDistType()));.}.els
7cdc0 65 20 7b 0a 24 6e 61 6d 65 50 61 72 74 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6e 61 e.{.$nameParts.=.array_merge($na
7cde0 6d 65 50 61 72 74 73 2c 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 meParts,.array($package->getPret
7ce00 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 tyVersion(),.$package->getDistRe
7ce20 66 65 72 65 6e 63 65 28 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 ference()));.}..if.($package->ge
7ce40 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 20 7b 0a 24 6e 61 6d 65 50 61 72 74 73 tSourceReference()).{.$nameParts
7ce60 5b 5d 20 3d 20 73 75 62 73 74 72 28 73 68 61 31 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f [].=.substr(sha1($package->getSo
7ce80 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 2c 20 30 2c 20 36 29 3b 0a 7d 0a 0a 24 6e 61 6d urceReference()),.0,.6);.}..$nam
7cea0 65 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2d 27 2c 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 6e e.=.implode('-',.array_filter($n
7cec0 61 6d 65 50 61 72 74 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 70 29 20 7b 0a 72 65 74 75 72 6e ameParts,.function.($p).{.return
7cee0 20 21 65 6d 70 74 79 28 24 70 29 3b 0a 7d 29 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 .!empty($p);.}));..return.str_re
7cf00 70 6c 61 63 65 28 27 2f 27 2c 20 27 2d 27 2c 20 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a place('/',.'-',.$name);.}.......
7cf20 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 72 63 68 69 76 65 28 50 .......public.function.archive(P
7cf40 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 66 6f 72 6d 61 ackageInterface.$package,.$forma
7cf60 74 2c 20 24 74 61 72 67 65 74 44 69 72 2c 20 24 66 69 6c 65 4e 61 6d 65 20 3d 20 6e 75 6c 6c 29 t,.$targetDir,.$fileName.=.null)
7cf80 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 66 6f 72 6d 61 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e .{.if.(empty($format)).{.throw.n
7cfa0 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 46 6f ew.\InvalidArgumentException('Fo
7cfc0 72 6d 61 74 20 6d 75 73 74 20 62 65 20 73 70 65 63 69 66 69 65 64 27 29 3b 0a 7d 0a 0a 0a 20 24 rmat.must.be.specified');.}....$
7cfe0 75 73 61 62 6c 65 41 72 63 68 69 76 65 72 20 3d 20 6e 75 6c 6c 3b 0a 66 6f 72 65 61 63 68 20 28 usableArchiver.=.null;.foreach.(
7d000 24 74 68 69 73 2d 3e 61 72 63 68 69 76 65 72 73 20 61 73 20 24 61 72 63 68 69 76 65 72 29 20 7b $this->archivers.as.$archiver).{
7d020 0a 69 66 20 28 24 61 72 63 68 69 76 65 72 2d 3e 73 75 70 70 6f 72 74 73 28 24 66 6f 72 6d 61 74 .if.($archiver->supports($format
7d040 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 29 29 20 7b 0a ,.$package->getSourceType())).{.
7d060 24 75 73 61 62 6c 65 41 72 63 68 69 76 65 72 20 3d 20 24 61 72 63 68 69 76 65 72 3b 0a 62 72 65 $usableArchiver.=.$archiver;.bre
7d080 61 6b 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 75 73 61 62 6c 65 41 ak;.}.}....if.(null.===.$usableA
7d0a0 72 63 68 69 76 65 72 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 rchiver).{.throw.new.\RuntimeExc
7d0c0 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4e 6f 20 61 72 63 68 69 76 65 72 20 66 6f 75 6e eption(sprintf('No.archiver.foun
7d0e0 64 20 74 6f 20 73 75 70 70 6f 72 74 20 25 73 20 66 6f 72 6d 61 74 27 2c 20 24 66 6f 72 6d 61 74 d.to.support.%s.format',.$format
7d100 29 29 3b 0a 7d 0a 0a 24 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 ));.}..$filesystem.=.new.Filesys
7d120 74 65 6d 28 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 66 69 6c 65 4e 61 6d 65 29 20 7b tem();.if.(null.===.$fileName).{
7d140 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 .$packageName.=.$this->getPackag
7d160 65 46 69 6c 65 6e 61 6d 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 eFilename($package);.}.else.{.$p
7d180 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 66 69 6c 65 4e 61 6d 65 3b 0a 7d 0a 0a 0a 20 24 66 69 ackageName.=.$fileName;.}....$fi
7d1a0 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 lesystem->ensureDirectoryExists(
7d1c0 24 74 61 72 67 65 74 44 69 72 29 3b 0a 24 74 61 72 67 65 74 20 3d 20 72 65 61 6c 70 61 74 68 28 $targetDir);.$target.=.realpath(
7d1e0 24 74 61 72 67 65 74 44 69 72 29 2e 27 2f 27 2e 24 70 61 63 6b 61 67 65 4e 61 6d 65 2e 27 2e 27 $targetDir).'/'.$packageName.'.'
7d200 2e 24 66 6f 72 6d 61 74 3b 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 .$format;.$filesystem->ensureDir
7d220 65 63 74 6f 72 79 45 78 69 73 74 73 28 64 69 72 6e 61 6d 65 28 24 74 61 72 67 65 74 29 29 3b 0a ectoryExists(dirname($target));.
7d240 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 46 69 6c 65 73 20 26 26 20 66 .if.(!$this->overwriteFiles.&&.f
7d260 69 6c 65 5f 65 78 69 73 74 73 28 24 74 61 72 67 65 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 ile_exists($target)).{.return.$t
7d280 61 72 67 65 74 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f arget;.}..if.($package.instanceo
7d2a0 66 20 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 73 6f 75 72 63 f.RootPackageInterface).{.$sourc
7d2c0 65 50 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 28 27 2e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a ePath.=.realpath('.');.}.else.{.
7d2e0 0a 20 24 73 6f 75 72 63 65 50 61 74 68 20 3d 20 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 ..$sourcePath.=.sys_get_temp_dir
7d300 28 29 2e 27 2f 63 6f 6d 70 6f 73 65 72 5f 61 72 63 68 69 76 65 27 2e 75 6e 69 71 69 64 28 29 3b ().'/composer_archive'.uniqid();
7d320 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 .$filesystem->ensureDirectoryExi
7d340 73 74 73 28 24 73 6f 75 72 63 65 50 61 74 68 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 77 6e sts($sourcePath);....$this->down
7d360 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 loadManager->download($package,.
7d380 24 73 6f 75 72 63 65 50 61 74 68 29 3b 0a 0a 0a 20 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 $sourcePath);....if.(file_exists
7d3a0 28 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 50 61 74 68 20 3d 20 24 73 6f 75 72 63 65 50 61 74 68 ($composerJsonPath.=.$sourcePath
7d3c0 2e 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 29 20 7b 0a 24 6a 73 6f 6e 46 69 6c 65 20 .'/composer.json')).{.$jsonFile.
7d3e0 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 50 61 74 68 =.new.JsonFile($composerJsonPath
7d400 29 3b 0a 24 6a 73 6f 6e 44 61 74 61 20 3d 20 24 6a 73 6f 6e 46 69 6c 65 2d 3e 72 65 61 64 28 29 );.$jsonData.=.$jsonFile->read()
7d420 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6a 73 6f 6e 44 61 74 61 5b 27 61 72 63 68 69 76 65 27 ;.if.(!empty($jsonData['archive'
7d440 5d 5b 27 65 78 63 6c 75 64 65 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 72 ]['exclude'])).{.$package->setAr
7d460 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 24 6a 73 6f 6e 44 61 74 61 5b 27 61 72 63 68 69 76 65 chiveExcludes($jsonData['archive
7d480 27 5d 5b 27 65 78 63 6c 75 64 65 27 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 24 74 65 6d 70 54 61 ']['exclude']);.}.}.}....$tempTa
7d4a0 72 67 65 74 20 3d 20 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 28 29 2e 27 2f 63 6f 6d 70 rget.=.sys_get_temp_dir().'/comp
7d4c0 6f 73 65 72 5f 61 72 63 68 69 76 65 27 2e 75 6e 69 71 69 64 28 29 2e 27 2e 27 2e 24 66 6f 72 6d oser_archive'.uniqid().'.'.$form
7d4e0 61 74 3b 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 at;.$filesystem->ensureDirectory
7d500 45 78 69 73 74 73 28 64 69 72 6e 61 6d 65 28 24 74 65 6d 70 54 61 72 67 65 74 29 29 3b 0a 0a 24 Exists(dirname($tempTarget));..$
7d520 61 72 63 68 69 76 65 50 61 74 68 20 3d 20 24 75 73 61 62 6c 65 41 72 63 68 69 76 65 72 2d 3e 61 archivePath.=.$usableArchiver->a
7d540 72 63 68 69 76 65 28 24 73 6f 75 72 63 65 50 61 74 68 2c 20 24 74 65 6d 70 54 61 72 67 65 74 2c rchive($sourcePath,.$tempTarget,
7d560 20 24 66 6f 72 6d 61 74 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 72 63 68 69 76 65 45 78 .$format,.$package->getArchiveEx
7d580 63 6c 75 64 65 73 28 29 29 3b 0a 72 65 6e 61 6d 65 28 24 61 72 63 68 69 76 65 50 61 74 68 2c 20 cludes());.rename($archivePath,.
7d5a0 24 74 61 72 67 65 74 29 3b 0a 0a 0a 20 69 66 20 28 21 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 $target);....if.(!$package.insta
7d5c0 6e 63 65 6f 66 20 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 66 nceof.RootPackageInterface).{.$f
7d5e0 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 73 6f 75 72 ilesystem->removeDirectory($sour
7d600 63 65 50 61 74 68 29 3b 0a 7d 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 28 24 cePath);.}.$filesystem->remove($
7d620 74 65 6d 70 54 61 72 67 65 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 61 72 67 65 74 3b 0a 7d 0a tempTarget);..return.$target;.}.
7d640 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d }.<?php............namespace.Com
7d660 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 69 6e poser\Package\Archiver;.......in
7d680 74 65 72 66 61 63 65 20 41 72 63 68 69 76 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a terface.ArchiverInterface.{.....
7d6a0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 72 63 68 69 76 65 28 24 73 ......public.function.archive($s
7d6c0 6f 75 72 63 65 73 2c 20 24 74 61 72 67 65 74 2c 20 24 66 6f 72 6d 61 74 2c 20 61 72 72 61 79 20 ources,.$target,.$format,.array.
7d6e0 24 65 78 63 6c 75 64 65 73 20 3d 20 61 72 72 61 79 28 29 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 $excludes.=.array());..........p
7d700 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 66 6f 72 6d 61 74 2c ublic.function.supports($format,
7d720 20 24 73 6f 75 72 63 65 54 79 70 65 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .$sourceType);.}.<?php..........
7d740 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 72 63 ..namespace.Composer\Package\Arc
7d760 68 69 76 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 hiver;..use.Symfony\Component\Fi
7d780 6e 64 65 72 3b 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 42 61 73 65 45 78 63 nder;.....abstract.class.BaseExc
7d7a0 6c 75 64 65 46 69 6c 74 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 ludeFilter.{....protected.$sourc
7d7c0 65 50 61 74 68 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 65 78 63 6c 75 64 65 50 61 74 ePath;.....protected.$excludePat
7d7e0 74 65 72 6e 73 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e terns;.....public.function.__con
7d800 73 74 72 75 63 74 28 24 73 6f 75 72 63 65 50 61 74 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 struct($sourcePath).{.$this->sou
7d820 72 63 65 50 61 74 68 20 3d 20 24 73 6f 75 72 63 65 50 61 74 68 3b 0a 24 74 68 69 73 2d 3e 65 78 rcePath.=.$sourcePath;.$this->ex
7d840 63 6c 75 64 65 50 61 74 74 65 72 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a cludePatterns.=.array();.}......
7d860 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 74 65 72 28 24 72 65 ......public.function.filter($re
7d880 6c 61 74 69 76 65 50 61 74 68 2c 20 24 65 78 63 6c 75 64 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 lativePath,.$exclude).{.foreach.
7d8a0 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 50 61 74 74 65 72 6e 73 20 61 73 20 24 70 61 74 74 ($this->excludePatterns.as.$patt
7d8c0 65 72 6e 44 61 74 61 29 20 7b 0a 6c 69 73 74 28 24 70 61 74 74 65 72 6e 2c 20 24 6e 65 67 61 74 ernData).{.list($pattern,.$negat
7d8e0 65 2c 20 24 73 74 72 69 70 4c 65 61 64 69 6e 67 53 6c 61 73 68 29 20 3d 20 24 70 61 74 74 65 72 e,.$stripLeadingSlash).=.$patter
7d900 6e 44 61 74 61 3b 0a 0a 69 66 20 28 24 73 74 72 69 70 4c 65 61 64 69 6e 67 53 6c 61 73 68 29 20 nData;..if.($stripLeadingSlash).
7d920 7b 0a 24 70 61 74 68 20 3d 20 73 75 62 73 74 72 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 {.$path.=.substr($relativePath,.
7d940 31 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 1);.}.else.{.$path.=.$relativePa
7d960 74 68 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 70 61 74 74 65 72 6e 2c 20 th;.}..if.(preg_match($pattern,.
7d980 24 70 61 74 68 29 29 20 7b 0a 24 65 78 63 6c 75 64 65 20 3d 20 21 24 6e 65 67 61 74 65 3b 0a 7d $path)).{.$exclude.=.!$negate;.}
7d9a0 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 78 63 6c 75 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .}..return.$exclude;.}..........
7d9c0 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 4c 69 6e 65 73 28 61 72 protected.function.parseLines(ar
7d9e0 72 61 79 20 24 6c 69 6e 65 73 2c 20 24 6c 69 6e 65 50 61 72 73 65 72 29 0a 7b 0a 72 65 74 75 72 ray.$lines,.$lineParser).{.retur
7da00 6e 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 0a 61 72 72 61 79 5f 6d 61 70 28 0a 66 75 6e 63 74 n.array_filter(.array_map(.funct
7da20 69 6f 6e 20 28 24 6c 69 6e 65 29 20 75 73 65 20 28 24 6c 69 6e 65 50 61 72 73 65 72 29 20 7b 0a ion.($line).use.($lineParser).{.
7da40 24 6c 69 6e 65 20 3d 20 74 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 0a 69 66 20 28 21 24 6c 69 6e 65 $line.=.trim($line);..if.(!$line
7da60 20 7c 7c 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 6c 69 6e 65 2c 20 27 23 27 29 29 20 7b 0a .||.0.===.strpos($line,.'#')).{.
7da80 72 65 74 75 72 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 return;.}..return.call_user_func
7daa0 28 24 6c 69 6e 65 50 61 72 73 65 72 2c 20 24 6c 69 6e 65 29 3b 0a 7d 2c 0a 24 6c 69 6e 65 73 0a ($lineParser,.$line);.},.$lines.
7dac0 29 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 70 61 74 74 65 72 6e 29 20 7b 0a 72 65 74 75 72 6e 20 ),.function.($pattern).{.return.
7dae0 24 70 61 74 74 65 72 6e 20 21 3d 3d 20 6e 75 6c 6c 3b 0a 7d 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a $pattern.!==.null;.}.);.}.......
7db00 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 50 61 74 ..protected.function.generatePat
7db20 74 65 72 6e 73 28 24 72 75 6c 65 73 29 0a 7b 0a 24 70 61 74 74 65 72 6e 73 20 3d 20 61 72 72 61 terns($rules).{.$patterns.=.arra
7db40 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 75 6c 65 73 20 61 73 20 24 72 75 6c 65 29 20 7b y();.foreach.($rules.as.$rule).{
7db60 0a 24 70 61 74 74 65 72 6e 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 61 .$patterns[].=.$this->generatePa
7db80 74 74 65 72 6e 28 24 72 75 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 74 74 65 72 6e ttern($rule);.}..return.$pattern
7dba0 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 s;.}.........protected.function.
7dbc0 67 65 6e 65 72 61 74 65 50 61 74 74 65 72 6e 28 24 72 75 6c 65 29 0a 7b 0a 24 6e 65 67 61 74 65 generatePattern($rule).{.$negate
7dbe0 20 3d 20 66 61 6c 73 65 3b 0a 24 70 61 74 74 65 72 6e 20 3d 20 27 7b 27 3b 0a 0a 69 66 20 28 73 .=.false;.$pattern.=.'{';..if.(s
7dc00 74 72 6c 65 6e 28 24 72 75 6c 65 29 20 26 26 20 24 72 75 6c 65 5b 30 5d 20 3d 3d 3d 20 27 21 27 trlen($rule).&&.$rule[0].===.'!'
7dc20 29 20 7b 0a 24 6e 65 67 61 74 65 20 3d 20 74 72 75 65 3b 0a 24 72 75 6c 65 20 3d 20 73 75 62 73 ).{.$negate.=.true;.$rule.=.subs
7dc40 74 72 28 24 72 75 6c 65 2c 20 31 29 3b 0a 7d 0a 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 72 75 6c tr($rule,.1);.}..if.(strlen($rul
7dc60 65 29 20 26 26 20 24 72 75 6c 65 5b 30 5d 20 3d 3d 3d 20 27 2f 27 29 20 7b 0a 24 70 61 74 74 65 e).&&.$rule[0].===.'/').{.$patte
7dc80 72 6e 20 2e 3d 20 27 5e 2f 27 3b 0a 24 72 75 6c 65 20 3d 20 73 75 62 73 74 72 28 24 72 75 6c 65 rn..=.'^/';.$rule.=.substr($rule
7dca0 2c 20 31 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 74 72 6c 65 6e 28 24 72 75 6c 65 29 20 2d 20 ,.1);.}.elseif.(strlen($rule).-.
7dcc0 31 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 72 75 6c 65 2c 20 27 2f 27 29 29 20 7b 0a 24 70 61 74 1.===.strpos($rule,.'/')).{.$pat
7dce0 74 65 72 6e 20 2e 3d 20 27 2f 27 3b 0a 24 72 75 6c 65 20 3d 20 73 75 62 73 74 72 28 24 72 75 6c tern..=.'/';.$rule.=.substr($rul
7dd00 65 2c 20 30 2c 20 2d 31 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 e,.0,.-1);.}.elseif.(false.===.s
7dd20 74 72 70 6f 73 28 24 72 75 6c 65 2c 20 27 2f 27 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 2e 3d trpos($rule,.'/')).{.$pattern..=
7dd40 20 27 2f 27 3b 0a 7d 0a 0a 0a 20 24 70 61 74 74 65 72 6e 20 2e 3d 20 73 75 62 73 74 72 28 46 69 .'/';.}....$pattern..=.substr(Fi
7dd60 6e 64 65 72 5c 47 6c 6f 62 3a 3a 74 6f 52 65 67 65 78 28 24 72 75 6c 65 29 2c 20 32 2c 20 2d 32 nder\Glob::toRegex($rule),.2,.-2
7dd80 29 20 2e 20 27 28 3f 3d 24 7c 2f 29 27 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 70 61 )...'(?=$|/)';..return.array($pa
7dda0 74 74 65 72 6e 20 2e 20 27 7d 27 2c 20 24 6e 65 67 61 74 65 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a ttern...'}',.$negate,.false);.}.
7ddc0 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d }.<?php............namespace.Com
7dde0 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c poser\Package\Archiver;.......cl
7de00 61 73 73 20 43 6f 6d 70 6f 73 65 72 45 78 63 6c 75 64 65 46 69 6c 74 65 72 20 65 78 74 65 6e 64 ass.ComposerExcludeFilter.extend
7de20 73 20 42 61 73 65 45 78 63 6c 75 64 65 46 69 6c 74 65 72 0a 7b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 s.BaseExcludeFilter.{.....public
7de40 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 72 63 65 50 61 74 .function.__construct($sourcePat
7de60 68 2c 20 61 72 72 61 79 20 24 65 78 63 6c 75 64 65 52 75 6c 65 73 29 0a 7b 0a 70 61 72 65 6e 74 h,.array.$excludeRules).{.parent
7de80 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 72 63 65 50 61 74 68 29 3b 0a 24 74 68 69 ::__construct($sourcePath);.$thi
7dea0 73 2d 3e 65 78 63 6c 75 64 65 50 61 74 74 65 72 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 s->excludePatterns.=.$this->gene
7dec0 72 61 74 65 50 61 74 74 65 72 6e 73 28 24 65 78 63 6c 75 64 65 52 75 6c 65 73 29 3b 0a 7d 0a 7d ratePatterns($excludeRules);.}.}
7dee0 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
7df00 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 oser\Package\Archiver;.........c
7df20 6c 61 73 73 20 47 69 74 45 78 63 6c 75 64 65 46 69 6c 74 65 72 20 65 78 74 65 6e 64 73 20 42 61 lass.GitExcludeFilter.extends.Ba
7df40 73 65 45 78 63 6c 75 64 65 46 69 6c 74 65 72 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 seExcludeFilter.{......public.fu
7df60 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 72 63 65 50 61 74 68 29 0a nction.__construct($sourcePath).
7df80 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 72 63 65 50 61 74 {.parent::__construct($sourcePat
7dfa0 68 29 3b 0a 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 73 6f 75 72 63 65 50 61 74 68 h);..if.(file_exists($sourcePath
7dfc0 2e 27 2f 2e 67 69 74 69 67 6e 6f 72 65 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 .'/.gitignore')).{.$this->exclud
7dfe0 65 50 61 74 74 65 72 6e 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 4c 69 6e 65 73 28 0a 66 ePatterns.=.$this->parseLines(.f
7e000 69 6c 65 28 24 73 6f 75 72 63 65 50 61 74 68 2e 27 2f 2e 67 69 74 69 67 6e 6f 72 65 27 29 2c 0a ile($sourcePath.'/.gitignore'),.
7e020 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 70 61 72 73 65 47 69 74 49 67 6e 6f 72 65 4c 69 6e 65 array($this,.'parseGitIgnoreLine
7e040 27 29 0a 29 3b 0a 7d 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 73 6f 75 72 63 65 50 ').);.}.if.(file_exists($sourceP
7e060 61 74 68 2e 27 2f 2e 67 69 74 61 74 74 72 69 62 75 74 65 73 27 29 29 20 7b 0a 24 74 68 69 73 2d ath.'/.gitattributes')).{.$this-
7e080 3e 65 78 63 6c 75 64 65 50 61 74 74 65 72 6e 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a >excludePatterns.=.array_merge(.
7e0a0 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 50 61 74 74 65 72 6e 73 2c 0a 24 74 68 69 73 2d 3e 70 $this->excludePatterns,.$this->p
7e0c0 61 72 73 65 4c 69 6e 65 73 28 0a 66 69 6c 65 28 24 73 6f 75 72 63 65 50 61 74 68 2e 27 2f 2e 67 arseLines(.file($sourcePath.'/.g
7e0e0 69 74 61 74 74 72 69 62 75 74 65 73 27 29 2c 0a 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 70 61 itattributes'),.array($this,.'pa
7e100 72 73 65 47 69 74 41 74 74 72 69 62 75 74 65 73 4c 69 6e 65 27 29 0a 29 29 3b 0a 7d 0a 7d 0a 0a rseGitAttributesLine').));.}.}..
7e120 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 47 69 74 49 .......public.function.parseGitI
7e140 67 6e 6f 72 65 4c 69 6e 65 28 24 6c 69 6e 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d gnoreLine($line).{.return.$this-
7e160 3e 67 65 6e 65 72 61 74 65 50 61 74 74 65 72 6e 28 24 6c 69 6e 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a >generatePattern($line);.}......
7e180 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 47 69 74 41 74 74 72 69 ...public.function.parseGitAttri
7e1a0 62 75 74 65 73 4c 69 6e 65 28 24 6c 69 6e 65 29 0a 7b 0a 24 70 61 72 74 73 20 3d 20 70 72 65 67 butesLine($line).{.$parts.=.preg
7e1c0 5f 73 70 6c 69 74 28 27 23 5c 73 2b 23 27 2c 20 24 6c 69 6e 65 29 3b 0a 0a 69 66 20 28 63 6f 75 _split('#\s+#',.$line);..if.(cou
7e1e0 6e 74 28 24 70 61 72 74 73 29 20 21 3d 20 32 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a nt($parts).!=.2).{.return.null;.
7e200 7d 0a 0a 69 66 20 28 24 70 61 72 74 73 5b 31 5d 20 3d 3d 3d 20 27 65 78 70 6f 72 74 2d 69 67 6e }..if.($parts[1].===.'export-ign
7e220 6f 72 65 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 61 ore').{.return.$this->generatePa
7e240 74 74 65 72 6e 28 24 70 61 72 74 73 5b 30 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ttern($parts[0]);.}.}.}.<?php...
7e260 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b .........namespace.Composer\Pack
7e280 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f age\Archiver;..use.Symfony\Compo
7e2a0 6e 65 6e 74 5c 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 67 45 78 63 6c 75 nent\Finder;.......class.HgExclu
7e2c0 64 65 46 69 6c 74 65 72 20 65 78 74 65 6e 64 73 20 42 61 73 65 45 78 63 6c 75 64 65 46 69 6c 74 deFilter.extends.BaseExcludeFilt
7e2e0 65 72 0a 7b 0a 63 6f 6e 73 74 20 48 47 5f 49 47 4e 4f 52 45 5f 52 45 47 45 58 20 3d 20 31 3b 0a er.{.const.HG_IGNORE_REGEX.=.1;.
7e300 63 6f 6e 73 74 20 48 47 5f 49 47 4e 4f 52 45 5f 47 4c 4f 42 20 3d 20 32 3b 0a 0a 0a 0a 0a 0a 70 const.HG_IGNORE_GLOB.=.2;......p
7e320 72 6f 74 65 63 74 65 64 20 24 70 61 74 74 65 72 6e 4d 6f 64 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 rotected.$patternMode;.......pub
7e340 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 72 63 65 lic.function.__construct($source
7e360 50 61 74 68 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 Path).{.parent::__construct($sou
7e380 72 63 65 50 61 74 68 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 4d 6f 64 65 20 3d 20 rcePath);..$this->patternMode.=.
7e3a0 73 65 6c 66 3a 3a 48 47 5f 49 47 4e 4f 52 45 5f 52 45 47 45 58 3b 0a 0a 69 66 20 28 66 69 6c 65 self::HG_IGNORE_REGEX;..if.(file
7e3c0 5f 65 78 69 73 74 73 28 24 73 6f 75 72 63 65 50 61 74 68 2e 27 2f 2e 68 67 69 67 6e 6f 72 65 27 _exists($sourcePath.'/.hgignore'
7e3e0 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 50 61 74 74 65 72 6e 73 20 3d 20 24 74 )).{.$this->excludePatterns.=.$t
7e400 68 69 73 2d 3e 70 61 72 73 65 4c 69 6e 65 73 28 0a 66 69 6c 65 28 24 73 6f 75 72 63 65 50 61 74 his->parseLines(.file($sourcePat
7e420 68 2e 27 2f 2e 68 67 69 67 6e 6f 72 65 27 29 2c 0a 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 70 h.'/.hgignore'),.array($this,.'p
7e440 61 72 73 65 48 67 49 67 6e 6f 72 65 4c 69 6e 65 27 29 0a 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a arseHgIgnoreLine').);.}.}.......
7e460 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 48 67 49 67 6e 6f 72 65 4c ..public.function.parseHgIgnoreL
7e480 69 6e 65 28 24 6c 69 6e 65 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 73 ine($line).{.if.(preg_match('#^s
7e4a0 79 6e 74 61 78 5c 73 2a 3a 5c 73 2a 28 67 6c 6f 62 7c 72 65 67 65 78 70 29 24 23 27 2c 20 24 6c yntax\s*:\s*(glob|regexp)$#',.$l
7e4c0 69 6e 65 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 69 66 20 28 24 6d 61 74 63 68 65 73 5b 31 ine,.$matches)).{.if.($matches[1
7e4e0 5d 20 3d 3d 3d 20 27 67 6c 6f 62 27 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 4d 6f ].===.'glob').{.$this->patternMo
7e500 64 65 20 3d 20 73 65 6c 66 3a 3a 48 47 5f 49 47 4e 4f 52 45 5f 47 4c 4f 42 3b 0a 7d 20 65 6c 73 de.=.self::HG_IGNORE_GLOB;.}.els
7e520 65 20 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 4d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 48 e.{.$this->patternMode.=.self::H
7e540 47 5f 49 47 4e 4f 52 45 5f 52 45 47 45 58 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a G_IGNORE_REGEX;.}..return.null;.
7e560 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 4d 6f 64 65 20 3d 3d 20 73 65 6c }..if.($this->patternMode.==.sel
7e580 66 3a 3a 48 47 5f 49 47 4e 4f 52 45 5f 47 4c 4f 42 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 f::HG_IGNORE_GLOB).{.return.$thi
7e5a0 73 2d 3e 70 61 74 74 65 72 6e 46 72 6f 6d 47 6c 6f 62 28 24 6c 69 6e 65 29 3b 0a 7d 20 65 6c 73 s->patternFromGlob($line);.}.els
7e5c0 65 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 46 72 6f 6d 52 65 67 e.{.return.$this->patternFromReg
7e5e0 65 78 28 24 6c 69 6e 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 ex($line);.}.}.........protected
7e600 20 66 75 6e 63 74 69 6f 6e 20 70 61 74 74 65 72 6e 46 72 6f 6d 47 6c 6f 62 28 24 6c 69 6e 65 29 .function.patternFromGlob($line)
7e620 0a 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 27 23 27 2e 73 75 62 73 74 72 28 46 69 6e 64 65 72 5c .{.$pattern.=.'#'.substr(Finder\
7e640 47 6c 6f 62 3a 3a 74 6f 52 65 67 65 78 28 24 6c 69 6e 65 29 2c 20 32 2c 20 2d 31 29 2e 27 23 27 Glob::toRegex($line),.2,.-1).'#'
7e660 3b 0a 24 70 61 74 74 65 72 6e 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5b 5e 2f 5d 2a 27 ;.$pattern.=.str_replace('[^/]*'
7e680 2c 20 27 2e 2a 27 2c 20 24 70 61 74 74 65 72 6e 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 ,.'.*',.$pattern);..return.array
7e6a0 28 24 70 61 74 74 65 72 6e 2c 20 66 61 6c 73 65 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a ($pattern,.false,.true);.}......
7e6c0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 74 74 65 72 6e 46 72 6f 6d 52 65 ...public.function.patternFromRe
7e6e0 67 65 78 28 24 6c 69 6e 65 29 0a 7b 0a 0a 20 24 70 61 74 74 65 72 6e 20 3d 20 27 23 27 2e 70 72 gex($line).{...$pattern.=.'#'.pr
7e700 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 28 28 3f 3a 5c 5c 5c 5c 5c 5c 5c 5c 29 2a 29 28 5c 5c 5c eg_replace('/((?:\\\\\\\\)*)(\\\
7e720 5c 3f 29 23 2f 27 2c 20 27 5c 31 5c 32 5c 32 5c 5c 23 27 2c 20 24 6c 69 6e 65 29 2e 27 23 27 3b \?)#/',.'\1\2\2\\#',.$line).'#';
7e740 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 70 61 74 74 65 72 6e 2c 20 66 61 6c 73 65 2c 20 ..return.array($pattern,.false,.
7e760 74 72 75 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 true);.}.}.<?php............name
7e780 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b space.Composer\Package\Archiver;
7e7a0 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 68 61 72 41 72 63 68 69 76 65 72 20 69 6d 70 6c 65 6d .......class.PharArchiver.implem
7e7c0 65 6e 74 73 20 41 72 63 68 69 76 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 ents.ArchiverInterface.{.protect
7e7e0 65 64 20 73 74 61 74 69 63 20 24 66 6f 72 6d 61 74 73 20 3d 20 61 72 72 61 79 28 0a 27 7a 69 70 ed.static.$formats.=.array(.'zip
7e800 27 20 3d 3e 20 5c 50 68 61 72 3a 3a 5a 49 50 2c 0a 27 74 61 72 27 20 3d 3e 20 5c 50 68 61 72 3a '.=>.\Phar::ZIP,.'tar'.=>.\Phar:
7e820 3a 54 41 52 2c 0a 27 74 61 72 2e 67 7a 27 20 3d 3e 20 5c 50 68 61 72 3a 3a 54 41 52 2c 0a 27 74 :TAR,.'tar.gz'.=>.\Phar::TAR,.'t
7e840 61 72 2e 62 7a 32 27 20 3d 3e 20 5c 50 68 61 72 3a 3a 54 41 52 2c 0a 29 3b 0a 0a 70 72 6f 74 65 ar.bz2'.=>.\Phar::TAR,.);..prote
7e860 63 74 65 64 20 73 74 61 74 69 63 20 24 63 6f 6d 70 72 65 73 73 46 6f 72 6d 61 74 73 20 3d 20 61 cted.static.$compressFormats.=.a
7e880 72 72 61 79 28 0a 27 74 61 72 2e 67 7a 27 20 3d 3e 20 5c 50 68 61 72 3a 3a 47 5a 2c 0a 27 74 61 rray(.'tar.gz'.=>.\Phar::GZ,.'ta
7e8a0 72 2e 62 7a 32 27 20 3d 3e 20 5c 50 68 61 72 3a 3a 42 5a 32 2c 0a 29 3b 0a 0a 0a 0a 0a 70 75 62 r.bz2'.=>.\Phar::BZ2,.);.....pub
7e8c0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 72 63 68 69 76 65 28 24 73 6f 75 72 63 65 73 2c 20 24 lic.function.archive($sources,.$
7e8e0 74 61 72 67 65 74 2c 20 24 66 6f 72 6d 61 74 2c 20 61 72 72 61 79 20 24 65 78 63 6c 75 64 65 73 target,.$format,.array.$excludes
7e900 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 73 6f 75 72 63 65 73 20 3d 20 72 65 61 6c 70 61 74 .=.array()).{.$sources.=.realpat
7e920 68 28 24 73 6f 75 72 63 65 73 29 3b 0a 0a 0a 20 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 h($sources);....if.(file_exists(
7e940 24 74 61 72 67 65 74 29 29 20 7b 0a 75 6e 6c 69 6e 6b 28 24 74 61 72 67 65 74 29 3b 0a 7d 0a 0a $target)).{.unlink($target);.}..
7e960 74 72 79 20 7b 0a 24 66 69 6c 65 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 74 61 72 67 65 74 try.{.$filename.=.substr($target
7e980 2c 20 30 2c 20 73 74 72 72 70 6f 73 28 24 74 61 72 67 65 74 2c 20 24 66 6f 72 6d 61 74 29 20 2d ,.0,.strrpos($target,.$format).-
7e9a0 20 31 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 63 6f 6d 70 72 .1);....if.(isset(static::$compr
7e9c0 65 73 73 46 6f 72 6d 61 74 73 5b 24 66 6f 72 6d 61 74 5d 29 29 20 7b 0a 0a 20 24 74 61 72 67 65 essFormats[$format])).{...$targe
7e9e0 74 20 3d 20 24 66 69 6c 65 6e 61 6d 65 20 2e 20 27 2e 74 61 72 27 3b 0a 7d 0a 0a 24 70 68 61 72 t.=.$filename...'.tar';.}..$phar
7ea00 20 3d 20 6e 65 77 20 5c 50 68 61 72 44 61 74 61 28 24 74 61 72 67 65 74 2c 20 6e 75 6c 6c 2c 20 .=.new.\PharData($target,.null,.
7ea20 6e 75 6c 6c 2c 20 73 74 61 74 69 63 3a 3a 24 66 6f 72 6d 61 74 73 5b 24 66 6f 72 6d 61 74 5d 29 null,.static::$formats[$format])
7ea40 3b 0a 24 66 69 6c 65 73 20 3d 20 6e 65 77 20 41 72 63 68 69 76 61 62 6c 65 46 69 6c 65 73 46 69 ;.$files.=.new.ArchivableFilesFi
7ea60 6e 64 65 72 28 24 73 6f 75 72 63 65 73 2c 20 24 65 78 63 6c 75 64 65 73 29 3b 0a 24 70 68 61 72 nder($sources,.$excludes);.$phar
7ea80 2d 3e 62 75 69 6c 64 46 72 6f 6d 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 73 2c 20 24 73 6f 75 ->buildFromIterator($files,.$sou
7eaa0 72 63 65 73 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 63 6f 6d 70 72 rces);..if.(isset(static::$compr
7eac0 65 73 73 46 6f 72 6d 61 74 73 5b 24 66 6f 72 6d 61 74 5d 29 29 20 7b 0a 0a 20 69 66 20 28 21 24 essFormats[$format])).{...if.(!$
7eae0 70 68 61 72 2d 3e 63 61 6e 43 6f 6d 70 72 65 73 73 28 73 74 61 74 69 63 3a 3a 24 63 6f 6d 70 72 phar->canCompress(static::$compr
7eb00 65 73 73 46 6f 72 6d 61 74 73 5b 24 66 6f 72 6d 61 74 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 essFormats[$format])).{.throw.ne
7eb20 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 61 6e w.\RuntimeException(sprintf('Can
7eb40 20 6e 6f 74 20 63 6f 6d 70 72 65 73 73 20 74 6f 20 25 73 20 66 6f 72 6d 61 74 27 2c 20 24 66 6f .not.compress.to.%s.format',.$fo
7eb60 72 6d 61 74 29 29 3b 0a 7d 0a 0a 0a 20 75 6e 6c 69 6e 6b 28 24 74 61 72 67 65 74 29 3b 0a 0a 0a rmat));.}....unlink($target);...
7eb80 20 24 70 68 61 72 2d 3e 63 6f 6d 70 72 65 73 73 28 73 74 61 74 69 63 3a 3a 24 63 6f 6d 70 72 65 .$phar->compress(static::$compre
7eba0 73 73 46 6f 72 6d 61 74 73 5b 24 66 6f 72 6d 61 74 5d 29 3b 0a 0a 0a 20 24 74 61 72 67 65 74 20 ssFormats[$format]);....$target.
7ebc0 3d 20 24 66 69 6c 65 6e 61 6d 65 20 2e 20 27 2e 27 20 2e 20 24 66 6f 72 6d 61 74 3b 0a 7d 0a 0a =.$filename...'.'...$format;.}..
7ebe0 72 65 74 75 72 6e 20 24 74 61 72 67 65 74 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 65 return.$target;.}.catch.(\Unexpe
7ec00 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 6d 65 73 73 61 67 ctedValueException.$e).{.$messag
7ec20 65 20 3d 20 73 70 72 69 6e 74 66 28 22 43 6f 75 6c 64 20 6e 6f 74 20 63 72 65 61 74 65 20 61 72 e.=.sprintf("Could.not.create.ar
7ec40 63 68 69 76 65 20 27 25 73 27 20 66 72 6f 6d 20 27 25 73 27 3a 20 25 73 22 2c 0a 24 74 61 72 67 chive.'%s'.from.'%s':.%s",.$targ
7ec60 65 74 2c 0a 24 73 6f 75 72 63 65 73 2c 0a 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 0a 29 et,.$sources,.$e->getMessage().)
7ec80 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 ;..throw.new.\RuntimeException($
7eca0 6d 65 73 73 61 67 65 2c 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 2c 20 24 65 29 3b 0a 7d 0a 7d message,.$e->getCode(),.$e);.}.}
7ecc0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 66 .....public.function.supports($f
7ece0 6f 72 6d 61 74 2c 20 24 73 6f 75 72 63 65 54 79 70 65 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 ormat,.$sourceType).{.return.iss
7ed00 65 74 28 73 74 61 74 69 63 3a 3a 24 66 6f 72 6d 61 74 73 5b 24 66 6f 72 6d 61 74 5d 29 3b 0a 7d et(static::$formats[$format]);.}
7ed20 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
7ed40 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 0a 75 73 65 20 5a 69 mposer\Package\Archiver;..use.Zi
7ed60 70 41 72 63 68 69 76 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 5a 69 70 41 72 63 68 69 76 65 72 20 pArchive;.....class.ZipArchiver.
7ed80 69 6d 70 6c 65 6d 65 6e 74 73 20 41 72 63 68 69 76 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 implements.ArchiverInterface.{.p
7eda0 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 24 66 6f 72 6d 61 74 73 20 3d 20 61 72 72 61 79 rotected.static.$formats.=.array
7edc0 28 0a 27 7a 69 70 27 20 3d 3e 20 31 2c 0a 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 (.'zip'.=>.1,.);.....public.func
7ede0 74 69 6f 6e 20 61 72 63 68 69 76 65 28 24 73 6f 75 72 63 65 73 2c 20 24 74 61 72 67 65 74 2c 20 tion.archive($sources,.$target,.
7ee00 24 66 6f 72 6d 61 74 2c 20 61 72 72 61 79 20 24 65 78 63 6c 75 64 65 73 20 3d 20 61 72 72 61 79 $format,.array.$excludes.=.array
7ee20 28 29 29 0a 7b 0a 24 73 6f 75 72 63 65 73 20 3d 20 72 65 61 6c 70 61 74 68 28 24 73 6f 75 72 63 ()).{.$sources.=.realpath($sourc
7ee40 65 73 29 3b 0a 24 7a 69 70 20 3d 20 6e 65 77 20 5a 69 70 41 72 63 68 69 76 65 28 29 3b 0a 24 72 es);.$zip.=.new.ZipArchive();.$r
7ee60 65 73 20 3d 20 24 7a 69 70 2d 3e 6f 70 65 6e 28 24 74 61 72 67 65 74 2c 20 5a 69 70 41 72 63 68 es.=.$zip->open($target,.ZipArch
7ee80 69 76 65 3a 3a 43 52 45 41 54 45 29 3b 0a 69 66 20 28 24 72 65 73 20 3d 3d 3d 20 74 72 75 65 29 ive::CREATE);.if.($res.===.true)
7eea0 20 7b 0a 24 66 69 6c 65 73 20 3d 20 6e 65 77 20 41 72 63 68 69 76 61 62 6c 65 46 69 6c 65 73 46 .{.$files.=.new.ArchivableFilesF
7eec0 69 6e 64 65 72 28 24 73 6f 75 72 63 65 73 2c 20 24 65 78 63 6c 75 64 65 73 29 3b 0a 66 6f 72 65 inder($sources,.$excludes);.fore
7eee0 61 63 68 20 28 24 66 69 6c 65 73 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 0a 24 66 69 6c 65 70 61 ach.($files.as.$file).{..$filepa
7ef00 74 68 20 3d 20 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 2e 22 2f 22 2e 24 66 69 6c 65 2d th.=.$file->getPath()."/".$file-
7ef20 3e 67 65 74 46 69 6c 65 6e 61 6d 65 28 29 3b 0a 24 6c 6f 63 61 6c 6e 61 6d 65 20 3d 20 73 74 72 >getFilename();.$localname.=.str
7ef40 5f 72 65 70 6c 61 63 65 28 24 73 6f 75 72 63 65 73 2e 22 2f 22 2c 20 27 27 2c 20 24 66 69 6c 65 _replace($sources."/",.'',.$file
7ef60 70 61 74 68 29 3b 0a 24 7a 69 70 2d 3e 61 64 64 46 69 6c 65 28 24 66 69 6c 65 70 61 74 68 2c 20 path);.$zip->addFile($filepath,.
7ef80 24 6c 6f 63 61 6c 6e 61 6d 65 29 3b 0a 7d 0a 69 66 20 28 24 7a 69 70 2d 3e 63 6c 6f 73 65 28 29 $localname);.}.if.($zip->close()
7efa0 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 61 72 67 65 74 3b 0a 7d 0a 7d 0a 24 6d 65 73 73 61 67 65 ).{.return.$target;.}.}.$message
7efc0 20 3d 20 73 70 72 69 6e 74 66 28 22 43 6f 75 6c 64 20 6e 6f 74 20 63 72 65 61 74 65 20 61 72 63 .=.sprintf("Could.not.create.arc
7efe0 68 69 76 65 20 27 25 73 27 20 66 72 6f 6d 20 27 25 73 27 3a 20 25 73 22 2c 0a 24 74 61 72 67 65 hive.'%s'.from.'%s':.%s",.$targe
7f000 74 2c 0a 24 73 6f 75 72 63 65 73 2c 0a 24 7a 69 70 2d 3e 67 65 74 53 74 61 74 75 73 53 74 72 69 t,.$sources,.$zip->getStatusStri
7f020 6e 67 28 29 0a 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 ng().);.throw.new.\RuntimeExcept
7f040 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ion($message);.}.....public.func
7f060 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 66 6f 72 6d 61 74 2c 20 24 73 6f 75 72 63 65 54 79 tion.supports($format,.$sourceTy
7f080 70 65 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 66 6f 72 6d pe).{.return.isset(static::$form
7f0a0 61 74 73 5b 24 66 6f 72 6d 61 74 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 63 6f 6d 70 72 65 73 73 ats[$format]).&&.$this->compress
7f0c0 69 6f 6e 41 76 61 69 6c 61 62 6c 65 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 ionAvailable();.}..private.funct
7f0e0 69 6f 6e 20 63 6f 6d 70 72 65 73 73 69 6f 6e 41 76 61 69 6c 61 62 6c 65 28 29 0a 7b 0a 72 65 74 ion.compressionAvailable().{.ret
7f100 75 72 6e 20 63 6c 61 73 73 5f 65 78 69 73 74 73 28 27 5a 69 70 41 72 63 68 69 76 65 27 29 3b 0a urn.class_exists('ZipArchive');.
7f120 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 }.}.<?php............namespace.C
7f140 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 omposer\Package;..use.Composer\R
7f160 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 epository\RepositoryInterface;.u
7f180 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 se.Composer\Repository\PlatformR
7f1a0 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 epository;.......abstract.class.
7f1c0 42 61 73 65 50 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 50 61 63 6b 61 67 65 49 6e BasePackage.implements.PackageIn
7f1e0 74 65 72 66 61 63 65 0a 7b 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 73 75 70 70 6f 72 74 terface.{.public.static.$support
7f200 65 64 4c 69 6e 6b 54 79 70 65 73 20 3d 20 61 72 72 61 79 28 0a 27 72 65 71 75 69 72 65 27 20 3d edLinkTypes.=.array(.'require'.=
7f220 3e 20 61 72 72 61 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 27 72 65 71 75 69 72 >.array('description'.=>.'requir
7f240 65 73 27 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 72 65 71 75 69 72 65 73 27 29 2c 0a 27 63 es',.'method'.=>.'requires'),.'c
7f260 6f 6e 66 6c 69 63 74 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 onflict'.=>.array('description'.
7f280 3d 3e 20 27 63 6f 6e 66 6c 69 63 74 73 27 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 63 6f 6e =>.'conflicts',.'method'.=>.'con
7f2a0 66 6c 69 63 74 73 27 29 2c 0a 27 70 72 6f 76 69 64 65 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 flicts'),.'provide'.=>.array('de
7f2c0 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 27 70 72 6f 76 69 64 65 73 27 2c 20 27 6d 65 74 68 6f scription'.=>.'provides',.'metho
7f2e0 64 27 20 3d 3e 20 27 70 72 6f 76 69 64 65 73 27 29 2c 0a 27 72 65 70 6c 61 63 65 27 20 3d 3e 20 d'.=>.'provides'),.'replace'.=>.
7f300 61 72 72 61 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 27 72 65 70 6c 61 63 65 73 array('description'.=>.'replaces
7f320 27 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 72 65 70 6c 61 63 65 73 27 29 2c 0a 27 72 65 71 ',.'method'.=>.'replaces'),.'req
7f340 75 69 72 65 2d 64 65 76 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 uire-dev'.=>.array('description'
7f360 20 3d 3e 20 27 72 65 71 75 69 72 65 73 20 28 66 6f 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 29 27 .=>.'requires.(for.development)'
7f380 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 64 65 76 52 65 71 75 69 72 65 73 27 29 2c 0a 29 3b ,.'method'.=>.'devRequires'),.);
7f3a0 0a 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 53 54 41 42 4c 45 20 3d 20 30 3b 0a 63 6f ..const.STABILITY_STABLE.=.0;.co
7f3c0 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 52 43 20 3d 20 35 3b 0a 63 6f 6e 73 74 20 53 54 41 42 nst.STABILITY_RC.=.5;.const.STAB
7f3e0 49 4c 49 54 59 5f 42 45 54 41 20 3d 20 31 30 3b 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 ILITY_BETA.=.10;.const.STABILITY
7f400 5f 41 4c 50 48 41 20 3d 20 31 35 3b 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 44 45 56 _ALPHA.=.15;.const.STABILITY_DEV
7f420 20 3d 20 32 30 3b 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 73 74 61 62 69 6c 69 74 69 .=.20;..public.static.$stabiliti
7f440 65 73 20 3d 20 61 72 72 61 79 28 0a 27 73 74 61 62 6c 65 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 es.=.array(.'stable'.=>.self::ST
7f460 41 42 49 4c 49 54 59 5f 53 54 41 42 4c 45 2c 0a 27 52 43 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 ABILITY_STABLE,.'RC'.=>.self::ST
7f480 41 42 49 4c 49 54 59 5f 52 43 2c 0a 27 62 65 74 61 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 ABILITY_RC,.'beta'.=>.self::STAB
7f4a0 49 4c 49 54 59 5f 42 45 54 41 2c 0a 27 61 6c 70 68 61 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 ILITY_BETA,.'alpha'.=>.self::STA
7f4c0 42 49 4c 49 54 59 5f 41 4c 50 48 41 2c 0a 27 64 65 76 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 BILITY_ALPHA,.'dev'.=>.self::STA
7f4e0 42 49 4c 49 54 59 5f 44 45 56 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 24 69 64 3b 0a BILITY_DEV,.);......public.$id;.
7f500 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 61 6d 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 .protected.$name;.protected.$pre
7f520 74 74 79 4e 61 6d 65 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 79 3b ttyName;..protected.$repository;
7f540 0a 70 72 6f 74 65 63 74 65 64 20 24 74 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 3b 0a 0a 0a .protected.$transportOptions;...
7f560 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 ....public.function.__construct(
7f580 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 4e 61 6d 65 20 3d 20 24 6e 61 $name).{.$this->prettyName.=.$na
7f5a0 6d 65 3b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 me;.$this->name.=.strtolower($na
7f5c0 6d 65 29 3b 0a 24 74 68 69 73 2d 3e 69 64 20 3d 20 2d 31 3b 0a 24 74 68 69 73 2d 3e 74 72 61 6e me);.$this->id.=.-1;.$this->tran
7f5e0 73 70 6f 72 74 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 sportOptions.=.array();.}.....pu
7f600 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e blic.function.getName().{.return
7f620 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .$this->name;.}.....public.funct
7f640 69 6f 6e 20 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 ion.getPrettyName().{.return.$th
7f660 69 73 2d 3e 70 72 65 74 74 79 4e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e is->prettyName;.}.....public.fun
7f680 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 73 28 29 0a 7b 0a 24 6e 61 6d 65 73 20 3d 20 61 72 72 61 ction.getNames().{.$names.=.arra
7f6a0 79 28 0a 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3e 20 74 72 75 65 2c 0a 29 3b 0a y(.$this->getName().=>.true,.);.
7f6c0 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 76 69 64 65 73 28 29 20 61 .foreach.($this->getProvides().a
7f6e0 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 6e 61 6d 65 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 s.$link).{.$names[$link->getTarg
7f700 65 74 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d et()].=.true;.}..foreach.($this-
7f720 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 6e 61 6d 65 >getReplaces().as.$link).{.$name
7f740 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a s[$link->getTarget()].=.true;.}.
7f760 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 6e 61 6d 65 73 29 3b 0a 7d 0a 0a 0a .return.array_keys($names);.}...
7f780 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 64 28 24 69 64 29 0a 7b 0a 24 ..public.function.setId($id).{.$
7f7a0 74 68 69 73 2d 3e 69 64 20 3d 20 24 69 64 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e this->id.=.$id;.}.....public.fun
7f7c0 63 74 69 6f 6e 20 67 65 74 49 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 64 ction.getId().{.return.$this->id
7f7e0 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 ;.}.....public.function.setRepos
7f800 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 itory(RepositoryInterface.$repos
7f820 69 74 6f 72 79 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 26 itory).{.if.($this->repository.&
7f840 26 20 24 72 65 70 6f 73 69 74 6f 72 79 20 21 3d 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 &.$repository.!==.$this->reposit
7f860 6f 72 79 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e ory).{.throw.new.\LogicException
7f880 28 27 41 20 70 61 63 6b 61 67 65 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 61 64 64 65 64 20 74 6f ('A.package.can.only.be.added.to
7f8a0 20 6f 6e 65 20 72 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 72 65 70 6f .one.repository');.}.$this->repo
7f8c0 73 69 74 6f 72 79 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c sitory.=.$repository;.}.....publ
7f8e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 0a 7b 0a 72 65 ic.function.getRepository().{.re
7f900 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 turn.$this->repository;.}.....pu
7f920 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e blic.function.getTransportOption
7f940 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 72 61 6e 73 70 6f 72 74 4f 70 74 s().{.return.$this->transportOpt
7f960 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 ions;.}.......public.function.se
7f980 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 tTransportOptions(array.$options
7f9a0 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 20 3d 20 24 6f ).{.$this->transportOptions.=.$o
7f9c0 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ptions;.}.......public.function.
7f9e0 69 73 50 6c 61 74 66 6f 72 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 isPlatform().{.return.$this->get
7fa00 52 65 70 6f 73 69 74 6f 72 79 28 29 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 6c 61 74 66 6f 72 6d Repository().instanceof.Platform
7fa20 52 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 Repository;.}.......public.funct
7fa40 69 6f 6e 20 67 65 74 55 6e 69 71 75 65 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 ion.getUniqueName().{.return.$th
7fa60 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 2d 27 2e 24 74 68 69 73 2d 3e 67 65 74 56 65 72 73 is->getName().'-'.$this->getVers
7fa80 69 6f 6e 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 71 75 61 6c 73 ion();.}..public.function.equals
7faa0 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 73 (PackageInterface.$package).{.$s
7fac0 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 69 66 20 28 24 74 68 69 73 20 69 6e 73 74 61 6e 63 65 6f elf.=.$this;.if.($this.instanceo
7fae0 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 73 65 6c 66 20 3d 20 24 74 68 69 73 2d f.AliasPackage).{.$self.=.$this-
7fb00 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 7d 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e >getAliasOf();.}.if.($package.in
7fb20 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 stanceof.AliasPackage).{.$packag
7fb40 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 7d 0a 0a 72 e.=.$package->getAliasOf();.}..r
7fb60 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 20 3d 3d 3d 20 24 73 65 6c 66 3b 0a 7d 0a 0a 0a 0a 0a eturn.$package.===.$self;.}.....
7fb80 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b ..public.function.__toString().{
7fba0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 55 6e 69 71 75 65 4e 61 6d 65 28 29 3b 0a .return.$this->getUniqueName();.
7fbc0 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 }..public.function.getPrettyStri
7fbe0 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 ng().{.return.$this->getPrettyNa
7fc00 6d 65 28 29 2e 27 20 27 2e 24 74 68 69 73 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e me().'.'.$this->getPrettyVersion
7fc20 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 75 6c ();.}.....public.function.getFul
7fc40 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 24 74 72 75 6e 63 61 74 65 20 3d 20 74 72 75 65 29 lPrettyVersion($truncate.=.true)
7fc60 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 44 65 76 28 29 20 7c 7c 20 21 69 6e 5f 61 72 .{.if.(!$this->isDev().||.!in_ar
7fc80 72 61 79 28 24 74 68 69 73 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 2c 20 61 72 72 61 ray($this->getSourceType(),.arra
7fca0 79 28 27 68 67 27 2c 20 27 67 69 74 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d y('hg',.'git'))).{.return.$this-
7fcc0 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 >getPrettyVersion();.}....if.($t
7fce0 72 75 6e 63 61 74 65 20 26 26 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 67 65 74 53 6f 75 72 runcate.&&.strlen($this->getSour
7fd00 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 20 3d 3d 3d 20 34 30 29 20 7b 0a 72 65 74 75 72 6e 20 ceReference()).===.40).{.return.
7fd20 24 74 68 69 73 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 27 20 27 20 $this->getPrettyVersion()...'.'.
7fd40 2e 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e ..substr($this->getSourceReferen
7fd60 63 65 28 29 2c 20 30 2c 20 37 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 ce(),.0,.7);.}..return.$this->ge
7fd80 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 27 20 27 20 2e 20 24 74 68 69 73 2d 3e tPrettyVersion()...'.'...$this->
7fda0 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 getSourceReference();.}..public.
7fdc0 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 50 72 69 6f 72 69 74 79 28 29 0a function.getStabilityPriority().
7fde0 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 74 68 69 {.return.self::$stabilities[$thi
7fe00 73 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 s->getStability()];.}..public.fu
7fe20 6e 63 74 69 6f 6e 20 5f 5f 63 6c 6f 6e 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 nction.__clone().{.$this->reposi
7fe40 74 6f 72 79 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 69 64 20 3d 20 2d 31 3b 0a 7d 0a 7d tory.=.null;.$this->id.=.-1;.}.}
7fe60 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
7fe80 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6c 65 oser\Package;.......class.Comple
7fea0 74 65 50 61 63 6b 61 67 65 20 65 78 74 65 6e 64 73 20 50 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d tePackage.extends.Package.implem
7fec0 65 6e 74 73 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a ents.CompletePackageInterface.{.
7fee0 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 70 72 6f 74 65 63 74 protected.$repositories;.protect
7ff00 65 64 20 24 6c 69 63 65 6e 73 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 ed.$license.=.array();.protected
7ff20 20 24 6b 65 79 77 6f 72 64 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 68 6f 72 73 3b 0a .$keywords;.protected.$authors;.
7ff40 70 72 6f 74 65 63 74 65 64 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 protected.$description;.protecte
7ff60 64 20 24 68 6f 6d 65 70 61 67 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 63 72 69 70 74 73 20 d.$homepage;.protected.$scripts.
7ff80 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 75 70 70 6f 72 74 20 3d 20 =.array();.protected.$support.=.
7ffa0 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 62 61 6e 64 6f 6e 65 64 20 3d 20 array();.protected.$abandoned.=.
7ffc0 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 63 false;.....public.function.setSc
7ffe0 72 69 70 74 73 28 61 72 72 61 79 20 24 73 63 72 69 70 74 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 ripts(array.$scripts).{.$this->s
80000 63 72 69 70 74 73 20 3d 20 24 73 63 72 69 70 74 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 cripts.=.$scripts;.}.....public.
80020 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 63 72 69 70 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 function.getScripts().{.return.$
80040 74 68 69 73 2d 3e 73 63 72 69 70 74 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 this->scripts;.}.......public.fu
80060 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 72 65 70 6f 73 69 74 6f nction.setRepositories($reposito
80080 72 69 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 24 72 ries).{.$this->repositories.=.$r
800a0 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 epositories;.}.....public.functi
800c0 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 on.getRepositories().{.return.$t
800e0 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 his->repositories;.}.......publi
80100 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 69 63 65 6e 73 65 28 61 72 72 61 79 20 24 6c 69 63 c.function.setLicense(array.$lic
80120 65 6e 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 20 3d 20 24 6c 69 63 65 6e 73 ense).{.$this->license.=.$licens
80140 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 e;.}.....public.function.getLice
80160 6e 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 3b 0a 7d nse().{.return.$this->license;.}
80180 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4b 65 79 77 6f 72 .......public.function.setKeywor
801a0 64 73 28 61 72 72 61 79 20 24 6b 65 79 77 6f 72 64 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6b 65 79 ds(array.$keywords).{.$this->key
801c0 77 6f 72 64 73 20 3d 20 24 6b 65 79 77 6f 72 64 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 words.=.$keywords;.}.....public.
801e0 66 75 6e 63 74 69 6f 6e 20 67 65 74 4b 65 79 77 6f 72 64 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 function.getKeywords().{.return.
80200 24 74 68 69 73 2d 3e 6b 65 79 77 6f 72 64 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 $this->keywords;.}.......public.
80220 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 68 6f 72 73 28 61 72 72 61 79 20 24 61 75 74 68 6f function.setAuthors(array.$autho
80240 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 68 6f 72 73 20 3d 20 24 61 75 74 68 6f 72 73 3b rs).{.$this->authors.=.$authors;
80260 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 6f 72 .}.....public.function.getAuthor
80280 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 75 74 68 6f 72 73 3b 0a 7d 0a 0a s().{.return.$this->authors;.}..
802a0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 73 63 72 69 70 74 .....public.function.setDescript
802c0 69 6f 6e 28 24 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 ion($description).{.$this->descr
802e0 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 iption.=.$description;.}.....pub
80300 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a lic.function.getDescription().{.
80320 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a return.$this->description;.}....
80340 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 6f 6d 65 70 61 67 65 28 24 ...public.function.setHomepage($
80360 68 6f 6d 65 70 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 6f 6d 65 70 61 67 65 20 3d 20 24 68 homepage).{.$this->homepage.=.$h
80380 6f 6d 65 70 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 omepage;.}.....public.function.g
803a0 65 74 48 6f 6d 65 70 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 6f 6d etHomepage().{.return.$this->hom
803c0 65 70 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 epage;.}.......public.function.s
803e0 65 74 53 75 70 70 6f 72 74 28 61 72 72 61 79 20 24 73 75 70 70 6f 72 74 29 0a 7b 0a 24 74 68 69 etSupport(array.$support).{.$thi
80400 73 2d 3e 73 75 70 70 6f 72 74 20 3d 20 24 73 75 70 70 6f 72 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 s->support.=.$support;.}.....pub
80420 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 70 70 6f 72 74 28 29 0a 7b 0a 72 65 74 75 lic.function.getSupport().{.retu
80440 72 6e 20 24 74 68 69 73 2d 3e 73 75 70 70 6f 72 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 rn.$this->support;.}.....public.
80460 66 75 6e 63 74 69 6f 6e 20 69 73 41 62 61 6e 64 6f 6e 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 function.isAbandoned().{.return.
80480 28 62 6f 6f 6c 65 61 6e 29 20 24 74 68 69 73 2d 3e 61 62 61 6e 64 6f 6e 65 64 3b 0a 7d 0a 0a 0a (boolean).$this->abandoned;.}...
804a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 62 61 6e 64 6f 6e 65 64 28 24 ..public.function.setAbandoned($
804c0 61 62 61 6e 64 6f 6e 65 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 62 61 6e 64 6f 6e 65 64 20 3d 20 abandoned).{.$this->abandoned.=.
804e0 24 61 62 61 6e 64 6f 6e 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 $abandoned;.}.......public.funct
80500 69 6f 6e 20 67 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 ion.getReplacementPackage().{.re
80520 74 75 72 6e 20 69 73 5f 73 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 61 62 61 6e 64 6f 6e 65 64 29 turn.is_string($this->abandoned)
80540 20 3f 20 24 74 68 69 73 2d 3e 61 62 61 6e 64 6f 6e 65 64 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a .?.$this->abandoned.:.null;.}.}.
80560 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f <?php............namespace.Compo
80580 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6d ser\Package;.......interface.Com
805a0 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 50 61 pletePackageInterface.extends.Pa
805c0 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ckageInterface.{......public.fun
805e0 63 74 69 6f 6e 20 67 65 74 53 63 72 69 70 74 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ction.getScripts();.........publ
80600 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 0a ic.function.getRepositories();..
80620 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 28 .....public.function.getLicense(
80640 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4b 65 79 77 );.......public.function.getKeyw
80660 6f 72 64 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 ords();.......public.function.ge
80680 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e tDescription();.......public.fun
806a0 63 74 69 6f 6e 20 67 65 74 48 6f 6d 65 70 61 67 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ction.getHomepage();.........pub
806c0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 6f 72 73 28 29 3b 0a 0a 0a 0a 0a 0a lic.function.getAuthors();......
806e0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 70 70 6f 72 74 28 29 3b 0a 0a .public.function.getSupport();..
80700 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 62 61 6e 64 6f 6e 65 64 .....public.function.isAbandoned
80720 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 ();.......public.function.getRep
80740 6c 61 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a lacementPackage();.}.<?php......
80760 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 ......namespace.Composer\Package
80780 5c 44 75 6d 70 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 \Dumper;..use.Composer\Package\B
807a0 61 73 65 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 asePackage;.use.Composer\Package
807c0 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c \PackageInterface;.use.Composer\
807e0 50 61 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 Package\CompletePackageInterface
80800 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 52 6f 6f 74 50 61 63 6b 61 ;.use.Composer\Package\RootPacka
80820 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 72 61 79 44 75 6d geInterface;......class.ArrayDum
80840 70 65 72 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 75 6d 70 28 50 61 63 6b 61 per.{.public.function.dump(Packa
80860 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 6b 65 79 73 20 3d 20 geInterface.$package).{.$keys.=.
80880 61 72 72 61 79 28 0a 27 62 69 6e 61 72 69 65 73 27 20 3d 3e 20 27 62 69 6e 27 2c 0a 27 74 79 70 array(.'binaries'.=>.'bin',.'typ
808a0 65 27 2c 0a 27 65 78 74 72 61 27 2c 0a 27 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 e',.'extra',.'installationSource
808c0 27 20 3d 3e 20 27 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2d 73 6f 75 72 63 65 27 2c 0a 27 61 75 74 '.=>.'installation-source',.'aut
808e0 6f 6c 6f 61 64 27 2c 0a 27 64 65 76 41 75 74 6f 6c 6f 61 64 27 20 3d 3e 20 27 61 75 74 6f 6c 6f oload',.'devAutoload'.=>.'autolo
80900 61 64 2d 64 65 76 27 2c 0a 27 6e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 27 20 3d 3e 20 27 6e ad-dev',.'notificationUrl'.=>.'n
80920 6f 74 69 66 69 63 61 74 69 6f 6e 2d 75 72 6c 27 2c 0a 27 69 6e 63 6c 75 64 65 50 61 74 68 73 27 otification-url',.'includePaths'
80940 20 3d 3e 20 27 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 2c 0a 29 3b 0a 0a 24 64 61 74 61 20 3d 20 .=>.'include-path',.);..$data.=.
80960 61 72 72 61 79 28 29 3b 0a 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 array();.$data['name'].=.$packag
80980 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 e->getPrettyName();.$data['versi
809a0 6f 6e 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f on'].=.$package->getPrettyVersio
809c0 6e 28 29 3b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d n();.$data['version_normalized']
809e0 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 0a 69 66 20 28 .=.$package->getVersion();..if.(
80a00 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 20 7b 0a 24 64 61 74 $package->getTargetDir()).{.$dat
80a20 61 5b 27 74 61 72 67 65 74 2d 64 69 72 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 a['target-dir'].=.$package->getT
80a40 61 72 67 65 74 44 69 72 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 argetDir();.}..if.($package->get
80a60 53 6f 75 72 63 65 54 79 70 65 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 5b SourceType()).{.$data['source'][
80a80 27 74 79 70 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 'type'].=.$package->getSourceTyp
80aa0 65 28 29 3b 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 5b 27 75 72 6c 27 5d 20 3d 20 24 70 e();.$data['source']['url'].=.$p
80ac0 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 24 64 61 74 61 5b 27 73 ackage->getSourceUrl();.$data['s
80ae0 6f 75 72 63 65 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d ource']['reference'].=.$package-
80b00 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 69 66 20 28 24 6d 69 72 72 >getSourceReference();.if.($mirr
80b20 6f 72 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 ors.=.$package->getSourceMirrors
80b40 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 5b 27 6d 69 72 72 6f 72 73 27 5d ()).{.$data['source']['mirrors']
80b60 20 3d 20 24 6d 69 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e .=.$mirrors;.}.}..if.($package->
80b80 67 65 74 44 69 73 74 54 79 70 65 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 getDistType()).{.$data['dist']['
80ba0 74 79 70 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 type'].=.$package->getDistType()
80bc0 3b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 75 72 6c 27 5d 20 3d 20 24 70 61 63 6b 61 67 ;.$data['dist']['url'].=.$packag
80be0 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 3b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 e->getDistUrl();.$data['dist']['
80c00 72 65 66 65 72 65 6e 63 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 reference'].=.$package->getDistR
80c20 65 66 65 72 65 6e 63 65 28 29 3b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 73 68 61 73 75 eference();.$data['dist']['shasu
80c40 6d 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b m'].=.$package->getDistSha1Check
80c60 73 75 6d 28 29 3b 0a 69 66 20 28 24 6d 69 72 72 6f 72 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e sum();.if.($mirrors.=.$package->
80c80 67 65 74 44 69 73 74 4d 69 72 72 6f 72 73 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 getDistMirrors()).{.$data['dist'
80ca0 5d 5b 27 6d 69 72 72 6f 72 73 27 5d 20 3d 20 24 6d 69 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 0a 69 66 ]['mirrors'].=.$mirrors;.}.}..if
80cc0 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 29 .($package->getArchiveExcludes()
80ce0 29 20 7b 0a 24 64 61 74 61 5b 27 61 72 63 68 69 76 65 27 5d 5b 27 65 78 63 6c 75 64 65 27 5d 20 ).{.$data['archive']['exclude'].
80d00 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 29 =.$package->getArchiveExcludes()
80d20 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 75 70 70 ;.}..foreach.(BasePackage::$supp
80d40 6f 72 74 65 64 4c 69 6e 6b 54 79 70 65 73 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 6f 70 74 73 ortedLinkTypes.as.$type.=>.$opts
80d60 29 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 7b 27 67 65 74 ).{.if.($links.=.$package->{'get
80d80 27 2e 75 63 66 69 72 73 74 28 24 6f 70 74 73 5b 27 6d 65 74 68 6f 64 27 5d 29 7d 28 29 29 20 7b '.ucfirst($opts['method'])}()).{
80da0 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 64 61 .foreach.($links.as.$link).{.$da
80dc0 74 61 5b 24 74 79 70 65 5d 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 ta[$type][$link->getTarget()].=.
80de0 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 3b 0a 7d 0a $link->getPrettyConstraint();.}.
80e00 6b 73 6f 72 74 28 24 64 61 74 61 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 70 ksort($data[$type]);.}.}..if.($p
80e20 61 63 6b 61 67 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 ackages.=.$package->getSuggests(
80e40 29 29 20 7b 0a 6b 73 6f 72 74 28 24 70 61 63 6b 61 67 65 73 29 3b 0a 24 64 61 74 61 5b 27 73 75 )).{.ksort($packages);.$data['su
80e60 67 67 65 73 74 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 ggest'].=.$packages;.}..if.($pac
80e80 6b 61 67 65 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 29 20 7b 0a 24 64 61 74 61 5b kage->getReleaseDate()).{.$data[
80ea0 27 74 69 6d 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 'time'].=.$package->getReleaseDa
80ec0 74 65 28 29 2d 3e 66 6f 72 6d 61 74 28 27 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 29 3b 0a 7d 0a 0a te()->format('Y-m-d.H:i:s');.}..
80ee0 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 64 75 6d 70 56 61 6c 75 65 73 28 24 70 61 63 6b 61 $data.=.$this->dumpValues($packa
80f00 67 65 2c 20 24 6b 65 79 73 2c 20 24 64 61 74 61 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 ge,.$keys,.$data);..if.($package
80f20 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 .instanceof.CompletePackageInter
80f40 66 61 63 65 29 20 7b 0a 24 6b 65 79 73 20 3d 20 61 72 72 61 79 28 0a 27 73 63 72 69 70 74 73 27 face).{.$keys.=.array(.'scripts'
80f60 2c 0a 27 6c 69 63 65 6e 73 65 27 2c 0a 27 61 75 74 68 6f 72 73 27 2c 0a 27 64 65 73 63 72 69 70 ,.'license',.'authors',.'descrip
80f80 74 69 6f 6e 27 2c 0a 27 68 6f 6d 65 70 61 67 65 27 2c 0a 27 6b 65 79 77 6f 72 64 73 27 2c 0a 27 tion',.'homepage',.'keywords',.'
80fa0 72 65 70 6f 73 69 74 6f 72 69 65 73 27 2c 0a 27 73 75 70 70 6f 72 74 27 2c 0a 29 3b 0a 0a 24 64 repositories',.'support',.);..$d
80fc0 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 64 75 6d 70 56 61 6c 75 65 73 28 24 70 61 63 6b 61 67 65 ata.=.$this->dumpValues($package
80fe0 2c 20 24 6b 65 79 73 2c 20 24 64 61 74 61 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 61 74 ,.$keys,.$data);..if.(isset($dat
81000 61 5b 27 6b 65 79 77 6f 72 64 73 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 64 61 74 61 a['keywords']).&&.is_array($data
81020 5b 27 6b 65 79 77 6f 72 64 73 27 5d 29 29 20 7b 0a 73 6f 72 74 28 24 64 61 74 61 5b 27 6b 65 79 ['keywords'])).{.sort($data['key
81040 77 6f 72 64 73 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 69 73 41 62 61 words']);.}..if.($package->isAba
81060 6e 64 6f 6e 65 64 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 61 62 61 6e 64 6f 6e 65 64 27 5d 20 3d ndoned()).{.$data['abandoned'].=
81080 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 .$package->getReplacementPackage
810a0 28 29 20 3f 3a 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e ().?:.true;.}.}..if.($package.in
810c0 73 74 61 6e 63 65 6f 66 20 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 29 20 7b stanceof.RootPackageInterface).{
810e0 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 .$minimumStability.=.$package->g
81100 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 3b 0a 69 66 20 28 24 6d 69 6e 69 6d etMinimumStability();.if.($minim
81120 75 6d 53 74 61 62 69 6c 69 74 79 29 20 7b 0a 24 64 61 74 61 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 umStability).{.$data['minimum-st
81140 61 62 69 6c 69 74 79 27 5d 20 3d 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 3b 0a 7d ability'].=.$minimumStability;.}
81160 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 72 61 6e 73 .}..if.(count($package->getTrans
81180 70 6f 72 74 4f 70 74 69 6f 6e 73 28 29 29 20 3e 20 30 29 20 7b 0a 24 64 61 74 61 5b 27 74 72 61 portOptions()).>.0).{.$data['tra
811a0 6e 73 70 6f 72 74 2d 6f 70 74 69 6f 6e 73 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 nsport-options'].=.$package->get
811c0 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 TransportOptions();.}..return.$d
811e0 61 74 61 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 64 75 6d 70 56 61 6c ata;.}..private.function.dumpVal
81200 75 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 61 ues(PackageInterface.$package,.a
81220 72 72 61 79 20 24 6b 65 79 73 2c 20 61 72 72 61 79 20 24 64 61 74 61 29 0a 7b 0a 66 6f 72 65 61 rray.$keys,.array.$data).{.forea
81240 63 68 20 28 24 6b 65 79 73 20 61 73 20 24 6d 65 74 68 6f 64 20 3d 3e 20 24 6b 65 79 29 20 7b 0a ch.($keys.as.$method.=>.$key).{.
81260 69 66 20 28 69 73 5f 6e 75 6d 65 72 69 63 28 24 6d 65 74 68 6f 64 29 29 20 7b 0a 24 6d 65 74 68 if.(is_numeric($method)).{.$meth
81280 6f 64 20 3d 20 24 6b 65 79 3b 0a 7d 0a 0a 24 67 65 74 74 65 72 20 3d 20 27 67 65 74 27 2e 75 63 od.=.$key;.}..$getter.=.'get'.uc
812a0 66 69 72 73 74 28 24 6d 65 74 68 6f 64 29 3b 0a 24 76 61 6c 75 65 20 3d 20 24 70 61 63 6b 61 67 first($method);.$value.=.$packag
812c0 65 2d 3e 24 67 65 74 74 65 72 28 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 61 6c e->$getter();..if.(null.!==.$val
812e0 75 65 20 26 26 20 21 28 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 20 26 26 20 30 20 3d 3d ue.&&.!(is_array($value).&&.0.==
81300 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 29 29 20 7b 0a 24 64 61 74 61 5b 24 6b 65 79 5d 20 =.count($value))).{.$data[$key].
81320 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 61 74 61 3b 0a 7d 0a 7d =.$value;.}.}..return.$data;.}.}
81340 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
81360 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 oser\Package;..use.Composer\Semv
81380 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 er\Constraint\ConstraintInterfac
813a0 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 69 6e 6b 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 e;.......class.Link.{....protect
813c0 65 64 20 24 73 6f 75 72 63 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 72 67 65 ed.$source;.....protected.$targe
813e0 74 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a t;.....protected.$constraint;...
81400 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 70 72 ..protected.$description;.....pr
81420 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a otected.$prettyConstraint;......
81440 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 .....public.function.__construct
81460 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 2c 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 ($source,.$target,.ConstraintInt
81480 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 73 63 erface.$constraint.=.null,.$desc
814a0 72 69 70 74 69 6f 6e 20 3d 20 27 72 65 6c 61 74 65 73 20 74 6f 27 2c 20 24 70 72 65 74 74 79 43 ription.=.'relates.to',.$prettyC
814c0 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 onstraint.=.null).{.$this->sourc
814e0 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e e.=.strtolower($source);.$this->
81500 74 61 72 67 65 74 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 61 72 67 65 74 29 3b 0a 24 74 target.=.strtolower($target);.$t
81520 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 24 his->constraint.=.$constraint;.$
81540 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e this->description.=.$description
81560 3b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 70 72 65 ;.$this->prettyConstraint.=.$pre
81580 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ttyConstraint;.}.....public.func
815a0 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 tion.getDescription().{.return.$
815c0 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 this->description;.}.....public.
815e0 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 function.getSource().{.return.$t
81600 68 69 73 2d 3e 73 6f 75 72 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 his->source;.}.....public.functi
81620 6f 6e 20 67 65 74 54 61 72 67 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 on.getTarget().{.return.$this->t
81640 61 72 67 65 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 arget;.}.....public.function.get
81660 43 6f 6e 73 74 72 61 69 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e Constraint().{.return.$this->con
81680 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 straint;.}......public.function.
816a0 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c getPrettyConstraint().{.if.(null
816c0 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a .===.$this->prettyConstraint).{.
816e0 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 throw.new.\UnexpectedValueExcept
81700 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4c 69 6e 6b 20 25 73 20 68 61 73 20 62 65 65 6e 20 6d 69 ion(sprintf('Link.%s.has.been.mi
81720 73 63 6f 6e 66 69 67 75 72 65 64 20 61 6e 64 20 68 61 64 20 6e 6f 20 70 72 65 74 74 79 43 6f 6e sconfigured.and.had.no.prettyCon
81740 73 74 72 61 69 6e 74 20 67 69 76 65 6e 2e 27 2c 20 24 74 68 69 73 29 29 3b 0a 7d 0a 0a 72 65 74 straint.given.',.$this));.}..ret
81760 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a urn.$this->prettyConstraint;.}..
81780 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a ...public.function.__toString().
817a0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 2e 27 20 27 2e 24 74 68 69 73 {.return.$this->source.'.'.$this
817c0 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 2e 27 20 27 2e 24 74 68 69 73 2d 3e 74 61 72 67 65 74 2e ->description.'.'.$this->target.
817e0 27 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 2e 27 29 27 3b 0a 7d 0a 0a 0a '.('.$this->constraint.')';.}...
81800 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 ...public.function.getPrettyStri
81820 6e 67 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 73 6f 75 72 63 65 50 61 63 6b 61 ng(PackageInterface.$sourcePacka
81840 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 73 6f 75 72 63 65 50 61 63 6b 61 67 65 2d 3e 67 65 74 ge).{.return.$sourcePackage->get
81860 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 2e 27 20 27 2e 24 74 68 69 73 2d 3e 64 65 73 63 72 69 PrettyString().'.'.$this->descri
81880 70 74 69 6f 6e 2e 27 20 27 2e 24 74 68 69 73 2d 3e 74 61 72 67 65 74 2e 27 20 27 2e 24 74 68 69 ption.'.'.$this->target.'.'.$thi
818a0 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 s->constraint->getPrettyString()
818c0 2e 27 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 .'';.}.}.<?php............namesp
818e0 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 ace.Composer\Package\LinkConstra
81900 69 6e 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 int;..use.Composer\Semver\Constr
81920 61 69 6e 74 5c 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 61 73 20 53 65 6d 76 65 72 45 6d aint\EmptyConstraint.as.SemverEm
81940 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 ptyConstraint;..trigger_error('T
81960 68 65 20 27 20 2e 20 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 20 2e 20 27 5c 45 6d 70 74 79 43 6f he.'...__NAMESPACE__...'\EmptyCo
81980 6e 73 74 72 61 69 6e 74 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 2c 20 75 73 nstraint.class.is.deprecated,.us
819a0 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 45 6d 70 e.Composer\Semver\Constraint\Emp
819c0 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 tyConstraint.instead.',.E_USER_D
819e0 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 6d 70 74 79 43 6f 6e 73 74 EPRECATED);.....class.EmptyConst
81a00 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 53 65 6d 76 65 72 45 6d 70 74 79 43 6f 6e 73 74 72 61 raint.extends.SemverEmptyConstra
81a20 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 int.implements.LinkConstraintInt
81a40 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 erface.{.}.<?php............name
81a60 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 space.Composer\Package\LinkConst
81a80 72 61 69 6e 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 raint;..use.Composer\Semver\Cons
81aa0 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 74 72 69 traint\ConstraintInterface;..tri
81ac0 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 20 2e 20 5f 5f 4e 41 4d 45 53 50 41 43 45 5f gger_error('The.'...__NAMESPACE_
81ae0 5f 20 2e 20 27 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 69 6e _...'\LinkConstraintInterface.in
81b00 74 65 72 66 61 63 65 20 69 73 20 64 65 70 72 65 63 61 74 65 64 2c 20 75 73 65 20 43 6f 6d 70 6f terface.is.deprecated,.use.Compo
81b20 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 ser\Semver\Constraint\Constraint
81b40 49 6e 74 65 72 66 61 63 65 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 Interface.instead.',.E_USER_DEPR
81b60 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4c 69 6e 6b 43 6f 6e 73 74 ECATED);.....interface.LinkConst
81b80 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e raintInterface.extends.Constrain
81ba0 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a tInterface.{.}.<?php............
81bc0 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 namespace.Composer\Package\LinkC
81be0 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c onstraint;..use.Composer\Semver\
81c00 43 6f 6e 73 74 72 61 69 6e 74 5c 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 20 61 73 20 53 65 Constraint\MultiConstraint.as.Se
81c20 6d 76 65 72 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 74 72 69 67 67 65 72 5f 65 72 mverMultiConstraint;..trigger_er
81c40 72 6f 72 28 27 54 68 65 20 27 20 2e 20 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 20 2e 20 27 5c 4d ror('The.'...__NAMESPACE__...'\M
81c60 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 ultiConstraint.class.is.deprecat
81c80 65 64 2c 20 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 ed,.use.Composer\Semver\Constrai
81ca0 6e 74 5c 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f nt\MultiConstraint.instead.',.E_
81cc0 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 75 6c 74 USER_DEPRECATED);.....class.Mult
81ce0 69 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 53 65 6d 76 65 72 4d 75 6c 74 69 43 iConstraint.extends.SemverMultiC
81d00 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 onstraint.implements.LinkConstra
81d20 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a intInterface.{.}.<?php..........
81d40 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e ..namespace.Composer\Package\Lin
81d60 6b 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 kConstraint;..use.Composer\Semve
81d80 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 41 62 73 74 72 61 63 74 43 6f 6e 73 74 72 61 69 6e 74 3b r\Constraint\AbstractConstraint;
81da0 0a 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 20 2e 20 5f 5f 4e 41 4d 45 53 ..trigger_error('The.'...__NAMES
81dc0 50 41 43 45 5f 5f 20 2e 20 27 5c 53 70 65 63 69 66 69 63 43 6f 6e 73 74 72 61 69 6e 74 20 61 62 PACE__...'\SpecificConstraint.ab
81de0 73 74 72 61 63 74 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 2c 20 74 68 65 72 stract.class.is.deprecated,.ther
81e00 65 20 69 73 20 6e 6f 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 66 6f 72 20 69 74 2e 27 2c 20 45 5f e.is.no.replacement.for.it.',.E_
81e20 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 USER_DEPRECATED);.....abstract.c
81e40 6c 61 73 73 20 53 70 65 63 69 66 69 63 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 lass.SpecificConstraint.extends.
81e60 41 62 73 74 72 61 63 74 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 69 AbstractConstraint.implements.Li
81e80 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a nkConstraintInterface.{.}.<?php.
81ea0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 ...........namespace.Composer\Pa
81ec0 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f ckage\LinkConstraint;..use.Compo
81ee0 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 ser\Semver\Constraint\Constraint
81f00 3b 0a 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 20 2e 20 5f 5f 4e 41 4d 45 ;..trigger_error('The.'...__NAME
81f20 53 50 41 43 45 5f 5f 20 2e 20 27 5c 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 63 6c SPACE__...'\VersionConstraint.cl
81f40 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 2c 20 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c ass.is.deprecated,.use.Composer\
81f60 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 20 69 6e 73 Semver\Constraint\Constraint.ins
81f80 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a tead.',.E_USER_DEPRECATED);.....
81fa0 63 6c 61 73 73 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 class.VersionConstraint.extends.
81fc0 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 69 6e 6b 43 6f 6e 73 74 72 Constraint.implements.LinkConstr
81fe0 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a aintInterface.{.}.<?php.........
82000 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f ...namespace.Composer\Package\Lo
82020 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 75 73 65 ader;..use.Composer\Package;.use
82040 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a .Composer\Package\AliasPackage;.
82060 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 3b 0a 75 73 65 20 43 use.Composer\Package\Link;.use.C
82080 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 52 6f 6f 74 41 6c 69 61 73 50 61 63 6b 61 67 65 omposer\Package\RootAliasPackage
820a0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 52 6f 6f 74 50 61 63 6b 61 ;.use.Composer\Package\RootPacka
820c0 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 geInterface;.use.Composer\Packag
820e0 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d e\Version\VersionParser;.use.Com
82100 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 61 73 20 53 65 poser\Semver\VersionParser.as.Se
82120 6d 76 65 72 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 mverVersionParser;......class.Ar
82140 72 61 79 4c 6f 61 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 6f 61 64 65 72 49 6e 74 65 72 rayLoader.implements.LoaderInter
82160 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b face.{.protected.$versionParser;
82180 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 61 64 4f 70 74 69 6f 6e 73 3b 0a 0a 70 75 62 6c 69 63 .protected.$loadOptions;..public
821a0 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 53 65 6d 76 65 72 56 65 72 73 .function.__construct(SemverVers
821c0 69 6f 6e 50 61 72 73 65 72 20 24 70 61 72 73 65 72 20 3d 20 6e 75 6c 6c 2c 20 24 6c 6f 61 64 4f ionParser.$parser.=.null,.$loadO
821e0 70 74 69 6f 6e 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 70 61 72 73 65 72 29 20 ptions.=.false).{.if.(!$parser).
82200 7b 0a 24 70 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 7d {.$parser.=.new.VersionParser;.}
82220 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 24 70 61 72 73 65 72 3b .$this->versionParser.=.$parser;
82240 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 4f 70 74 69 6f 6e 73 20 3d 20 24 6c 6f 61 64 4f 70 74 69 6f .$this->loadOptions.=.$loadOptio
82260 6e 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 61 72 72 61 ns;.}..public.function.load(arra
82280 79 20 24 63 6f 6e 66 69 67 2c 20 24 63 6c 61 73 73 20 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 50 61 y.$config,.$class.=.'Composer\Pa
822a0 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 27 29 0a 7b 0a 69 66 20 28 21 69 ckage\CompletePackage').{.if.(!i
822c0 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e sset($config['name'])).{.throw.n
822e0 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e ew.\UnexpectedValueException('Un
82300 6b 6e 6f 77 6e 20 70 61 63 6b 61 67 65 20 68 61 73 20 6e 6f 20 6e 61 6d 65 20 64 65 66 69 6e 65 known.package.has.no.name.define
82320 64 20 28 27 2e 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 63 6f 6e 66 69 67 29 2e 27 29 2e 27 29 3b d.('.json_encode($config).').');
82340 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d .}.if.(!isset($config['version']
82360 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 )).{.throw.new.\UnexpectedValueE
82380 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e 24 63 6f 6e 66 69 67 5b 27 6e 61 6d xception('Package.'.$config['nam
823a0 65 27 5d 2e 27 20 68 61 73 20 6e 6f 20 76 65 72 73 69 6f 6e 20 64 65 66 69 6e 65 64 2e 27 29 3b e'].'.has.no.version.defined.');
823c0 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e .}....if.(isset($config['version
823e0 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 63 6f _normalized'])).{.$version.=.$co
82400 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 3b 0a 7d 20 65 6c nfig['version_normalized'];.}.el
82420 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 se.{.$version.=.$this->versionPa
82440 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e rser->normalize($config['version
82460 27 5d 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 20 3d 20 6e 65 77 20 24 63 6c 61 73 73 28 24 63 6f ']);.}.$package.=.new.$class($co
82480 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 63 6f 6e 66 69 67 5b nfig['name'],.$version,.$config[
824a0 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 54 79 70 65 28 69 'version']);.$package->setType(i
824c0 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 74 79 70 65 27 5d 29 20 3f 20 73 74 72 74 6f 6c 6f 77 sset($config['type']).?.strtolow
824e0 65 72 28 24 63 6f 6e 66 69 67 5b 27 74 79 70 65 27 5d 29 20 3a 20 27 6c 69 62 72 61 72 79 27 29 er($config['type']).:.'library')
82500 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 74 61 72 67 65 74 2d 64 69 72 ;..if.(isset($config['target-dir
82520 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 54 61 72 67 65 74 44 69 72 28 24 63 '])).{.$package->setTargetDir($c
82540 6f 6e 66 69 67 5b 27 74 61 72 67 65 74 2d 64 69 72 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 onfig['target-dir']);.}..if.(iss
82560 65 74 28 24 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 et($config['extra']).&&.is_array
82580 28 24 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e ($config['extra'])).{.$package->
825a0 73 65 74 45 78 74 72 61 28 24 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 29 3b 0a 7d 0a 0a 69 setExtra($config['extra']);.}..i
825c0 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 29 29 20 7b 0a 69 66 20 28 f.(isset($config['bin'])).{.if.(
825e0 21 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 29 29 20 7b 0a 74 68 72 !is_array($config['bin'])).{.thr
82600 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e ow.new.\UnexpectedValueException
82620 28 27 50 61 63 6b 61 67 65 20 27 2e 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 2e 27 5c 27 73 ('Package.'.$config['name'].'\'s
82640 20 62 69 6e 20 6b 65 79 20 73 68 6f 75 6c 64 20 62 65 20 61 6e 20 61 72 72 61 79 2c 20 27 2e 67 .bin.key.should.be.an.array,.'.g
82660 65 74 74 79 70 65 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 29 2e 27 20 67 69 76 65 6e 2e 27 ettype($config['bin']).'.given.'
82680 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 20 61 73 20 );.}.foreach.($config['bin'].as.
826a0 24 6b 65 79 20 3d 3e 20 24 62 69 6e 29 20 7b 0a 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 5b 24 $key.=>.$bin).{.$config['bin'][$
826c0 6b 65 79 5d 20 3d 20 6c 74 72 69 6d 28 24 62 69 6e 2c 20 27 2f 27 29 3b 0a 7d 0a 24 70 61 63 6b key].=.ltrim($bin,.'/');.}.$pack
826e0 61 67 65 2d 3e 73 65 74 42 69 6e 61 72 69 65 73 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 29 age->setBinaries($config['bin'])
82700 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 69 6e 73 74 61 6c 6c 61 ;.}..if.(isset($config['installa
82720 74 69 6f 6e 2d 73 6f 75 72 63 65 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 tion-source'])).{.$package->setI
82740 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 24 63 6f 6e 66 69 67 5b 27 69 6e 73 74 61 nstallationSource($config['insta
82760 6c 6c 61 74 69 6f 6e 2d 73 6f 75 72 63 65 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 llation-source']);.}..if.(isset(
82780 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 29 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 $config['source'])).{.if.(!isset
827a0 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b 27 74 79 70 65 27 5d 29 20 7c 7c 20 21 ($config['source']['type']).||.!
827c0 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b 27 75 72 6c 27 5d 29 20 isset($config['source']['url']).
827e0 7c 7c 20 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b 27 72 65 66 ||.!isset($config['source']['ref
82800 65 72 65 6e 63 65 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 erence'])).{.throw.new.\Unexpect
82820 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 22 50 61 63 6b 61 edValueException(sprintf(."Packa
82840 67 65 20 25 73 27 73 20 73 6f 75 72 63 65 20 6b 65 79 20 73 68 6f 75 6c 64 20 62 65 20 73 70 65 ge.%s's.source.key.should.be.spe
82860 63 69 66 69 65 64 20 61 73 20 7b 5c 22 74 79 70 65 5c 22 3a 20 2e 2e 2e 2c 20 5c 22 75 72 6c 5c cified.as.{\"type\":....,.\"url\
82880 22 3a 20 2e 2e 2e 2c 20 5c 22 72 65 66 65 72 65 6e 63 65 5c 22 3a 20 2e 2e 2e 7d 2c 5c 6e 25 73 ":....,.\"reference\":....},\n%s
828a0 20 67 69 76 65 6e 2e 22 2c 0a 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 2c 0a 6a 73 6f 6e 5f .given.",.$config['name'],.json_
828c0 65 6e 63 6f 64 65 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 29 0a 29 29 3b 0a 7d 0a encode($config['source']).));.}.
828e0 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 54 79 70 65 28 24 63 6f 6e 66 69 67 5b $package->setSourceType($config[
82900 27 73 6f 75 72 63 65 27 5d 5b 27 74 79 70 65 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 'source']['type']);.$package->se
82920 74 53 6f 75 72 63 65 55 72 6c 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b 27 75 72 tSourceUrl($config['source']['ur
82940 6c 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e l']);.$package->setSourceReferen
82960 63 65 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 27 ce($config['source']['reference'
82980 5d 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b ]);.if.(isset($config['source'][
829a0 27 6d 69 72 72 6f 72 73 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 'mirrors'])).{.$package->setSour
829c0 63 65 4d 69 72 72 6f 72 73 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b 27 6d 69 72 ceMirrors($config['source']['mir
829e0 72 6f 72 73 27 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b rors']);.}.}..if.(isset($config[
82a00 27 64 69 73 74 27 5d 29 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 'dist'])).{.if.(!isset($config['
82a20 64 69 73 74 27 5d 5b 27 74 79 70 65 27 5d 29 0a 7c 7c 20 21 69 73 73 65 74 28 24 63 6f 6e 66 69 dist']['type']).||.!isset($confi
82a40 67 5b 27 64 69 73 74 27 5d 5b 27 75 72 6c 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c g['dist']['url'])).{.throw.new.\
82a60 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 UnexpectedValueException(sprintf
82a80 28 0a 22 50 61 63 6b 61 67 65 20 25 73 27 73 20 64 69 73 74 20 6b 65 79 20 73 68 6f 75 6c 64 20 (."Package.%s's.dist.key.should.
82aa0 62 65 20 73 70 65 63 69 66 69 65 64 20 61 73 20 22 2e 0a 22 7b 5c 22 74 79 70 65 5c 22 3a 20 2e be.specified.as.".."{\"type\":..
82ac0 2e 2e 2c 20 5c 22 75 72 6c 5c 22 3a 20 2e 2e 2e 2c 20 5c 22 72 65 66 65 72 65 6e 63 65 5c 22 3a ..,.\"url\":....,.\"reference\":
82ae0 20 2e 2e 2e 2c 20 5c 22 73 68 61 73 75 6d 5c 22 3a 20 2e 2e 2e 7d 2c 5c 6e 25 73 20 67 69 76 65 ....,.\"shasum\":....},\n%s.give
82b00 6e 2e 22 2c 0a 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 2c 0a 6a 73 6f 6e 5f 65 6e 63 6f 64 n.",.$config['name'],.json_encod
82b20 65 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 29 0a 29 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 e($config['dist']).));.}.$packag
82b40 65 2d 3e 73 65 74 44 69 73 74 54 79 70 65 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 e->setDistType($config['dist']['
82b60 74 79 70 65 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 55 72 6c 28 24 63 type']);.$package->setDistUrl($c
82b80 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 75 72 6c 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d onfig['dist']['url']);.$package-
82ba0 3e 73 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b >setDistReference(isset($config[
82bc0 27 64 69 73 74 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 27 5d 29 20 3f 20 24 63 6f 6e 66 69 67 5b 'dist']['reference']).?.$config[
82be0 27 64 69 73 74 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 27 5d 20 3a 20 6e 75 6c 6c 29 3b 0a 24 70 'dist']['reference'].:.null);.$p
82c00 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 69 73 73 65 ackage->setDistSha1Checksum(isse
82c20 74 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 73 68 61 73 75 6d 27 5d 29 20 3f 20 24 t($config['dist']['shasum']).?.$
82c40 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 73 68 61 73 75 6d 27 5d 20 3a 20 6e 75 6c 6c 29 config['dist']['shasum'].:.null)
82c60 3b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 6d 69 72 ;.if.(isset($config['dist']['mir
82c80 72 6f 72 73 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 4d 69 72 72 rors'])).{.$package->setDistMirr
82ca0 6f 72 73 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 6d 69 72 72 6f 72 73 27 5d 29 3b ors($config['dist']['mirrors']);
82cc0 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 .}.}..foreach.(Package\BasePacka
82ce0 67 65 3a 3a 24 73 75 70 70 6f 72 74 65 64 4c 69 6e 6b 54 79 70 65 73 20 61 73 20 24 74 79 70 65 ge::$supportedLinkTypes.as.$type
82d00 20 3d 3e 20 24 6f 70 74 73 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 24 .=>.$opts).{.if.(isset($config[$
82d20 74 79 70 65 5d 29 29 20 7b 0a 24 6d 65 74 68 6f 64 20 3d 20 27 73 65 74 27 2e 75 63 66 69 72 73 type])).{.$method.=.'set'.ucfirs
82d40 74 28 24 6f 70 74 73 5b 27 6d 65 74 68 6f 64 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 7b 24 t($opts['method']);.$package->{$
82d60 6d 65 74 68 6f 64 7d 28 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 4c 69 6e 6b 73 28 0a 24 70 61 63 method}(.$this->parseLinks(.$pac
82d80 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 kage->getName(),.$package->getPr
82da0 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 24 6f 70 74 73 5b 27 64 65 73 63 72 69 70 74 69 6f ettyVersion(),.$opts['descriptio
82dc0 6e 27 5d 2c 0a 24 63 6f 6e 66 69 67 5b 24 74 79 70 65 5d 0a 29 0a 29 3b 0a 7d 0a 7d 0a 0a 69 66 n'],.$config[$type].).);.}.}..if
82de0 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 29 20 26 26 20 69 .(isset($config['suggest']).&&.i
82e00 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 29 29 20 7b 0a 66 s_array($config['suggest'])).{.f
82e20 6f 72 65 61 63 68 20 28 24 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 20 61 73 20 24 74 oreach.($config['suggest'].as.$t
82e40 61 72 67 65 74 20 3d 3e 20 24 72 65 61 73 6f 6e 29 20 7b 0a 69 66 20 28 27 73 65 6c 66 2e 76 65 arget.=>.$reason).{.if.('self.ve
82e60 72 73 69 6f 6e 27 20 3d 3d 3d 20 74 72 69 6d 28 24 72 65 61 73 6f 6e 29 29 20 7b 0a 24 63 6f 6e rsion'.===.trim($reason)).{.$con
82e80 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 5b 24 74 61 72 67 65 74 5d 20 3d 20 24 70 61 63 6b 61 fig['suggest'][$target].=.$packa
82ea0 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 7d 0a 24 70 61 63 ge->getPrettyVersion();.}.}.$pac
82ec0 6b 61 67 65 2d 3e 73 65 74 53 75 67 67 65 73 74 73 28 24 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 kage->setSuggests($config['sugge
82ee0 73 74 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 61 75 74 st']);.}..if.(isset($config['aut
82f00 6f 6c 6f 61 64 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 75 74 6f 6c 6f 61 oload'])).{.$package->setAutoloa
82f20 64 28 24 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 d($config['autoload']);.}..if.(i
82f40 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 2d 64 65 76 27 5d 29 29 20 7b sset($config['autoload-dev'])).{
82f60 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 65 76 41 75 74 6f 6c 6f 61 64 28 24 63 6f 6e 66 69 .$package->setDevAutoload($confi
82f80 67 5b 27 61 75 74 6f 6c 6f 61 64 2d 64 65 76 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 g['autoload-dev']);.}..if.(isset
82fa0 28 24 63 6f 6e 66 69 67 5b 27 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 5d 29 29 20 7b 0a 24 70 61 ($config['include-path'])).{.$pa
82fc0 63 6b 61 67 65 2d 3e 73 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 24 63 6f 6e 66 69 67 5b 27 ckage->setIncludePaths($config['
82fe0 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 include-path']);.}..if.(!empty($
83000 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 74 69 6d 65 20 3d 20 70 72 65 67 5f config['time'])).{.$time.=.preg_
83020 6d 61 74 63 68 28 27 2f 5e 5c 64 2b 2b 24 2f 44 27 2c 20 24 63 6f 6e 66 69 67 5b 27 74 69 6d 65 match('/^\d++$/D',.$config['time
83040 27 5d 29 20 3f 20 27 40 27 2e 24 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 20 3a 20 24 63 6f 6e ']).?.'@'.$config['time'].:.$con
83060 66 69 67 5b 27 74 69 6d 65 27 5d 3b 0a 0a 74 72 79 20 7b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 fig['time'];..try.{.$date.=.new.
83080 5c 44 61 74 65 54 69 6d 65 28 24 74 69 6d 65 2c 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 5a 6f \DateTime($time,.new.\DateTimeZo
830a0 6e 65 28 27 55 54 43 27 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 6c 65 61 73 65 ne('UTC'));.$package->setRelease
830c0 44 61 74 65 28 24 64 61 74 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e Date($date);.}.catch.(\Exception
830e0 20 24 65 29 20 7b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 .$e).{.}.}..if.(!empty($config['
83100 6e 6f 74 69 66 69 63 61 74 69 6f 6e 2d 75 72 6c 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d notification-url'])).{.$package-
83120 3e 73 65 74 4e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 28 24 63 6f 6e 66 69 67 5b 27 6e 6f 74 >setNotificationUrl($config['not
83140 69 66 69 63 61 74 69 6f 6e 2d 75 72 6c 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 ification-url']);.}..if.(!empty(
83160 24 63 6f 6e 66 69 67 5b 27 61 72 63 68 69 76 65 27 5d 5b 27 65 78 63 6c 75 64 65 27 5d 29 29 20 $config['archive']['exclude'])).
83180 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 24 {.$package->setArchiveExcludes($
831a0 63 6f 6e 66 69 67 5b 27 61 72 63 68 69 76 65 27 5d 5b 27 65 78 63 6c 75 64 65 27 5d 29 3b 0a 7d config['archive']['exclude']);.}
831c0 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 61 63 6b 61 67 ..if.($package.instanceof.Packag
831e0 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 69 66 e\CompletePackageInterface).{.if
83200 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 63 72 69 70 74 73 27 5d 29 20 26 26 20 69 .(isset($config['scripts']).&&.i
83220 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 73 63 72 69 70 74 73 27 5d 29 29 20 7b 0a 66 s_array($config['scripts'])).{.f
83240 6f 72 65 61 63 68 20 28 24 63 6f 6e 66 69 67 5b 27 73 63 72 69 70 74 73 27 5d 20 61 73 20 24 65 oreach.($config['scripts'].as.$e
83260 76 65 6e 74 20 3d 3e 20 24 6c 69 73 74 65 6e 65 72 73 29 20 7b 0a 24 63 6f 6e 66 69 67 5b 27 73 vent.=>.$listeners).{.$config['s
83280 63 72 69 70 74 73 27 5d 5b 24 65 76 65 6e 74 5d 20 3d 20 28 61 72 72 61 79 29 20 24 6c 69 73 74 cripts'][$event].=.(array).$list
832a0 65 6e 65 72 73 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 63 72 69 70 74 73 28 24 63 eners;.}.$package->setScripts($c
832c0 6f 6e 66 69 67 5b 27 73 63 72 69 70 74 73 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 onfig['scripts']);.}..if.(!empty
832e0 28 24 63 6f 6e 66 69 67 5b 27 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 29 20 26 26 20 69 73 5f 73 ($config['description']).&&.is_s
83300 74 72 69 6e 67 28 24 63 6f 6e 66 69 67 5b 27 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 29 29 20 7b tring($config['description'])).{
83320 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 63 6f 6e 66 69 .$package->setDescription($confi
83340 67 5b 27 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 g['description']);.}..if.(!empty
83360 28 24 63 6f 6e 66 69 67 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 20 26 26 20 69 73 5f 73 74 72 69 ($config['homepage']).&&.is_stri
83380 6e 67 28 24 63 6f 6e 66 69 67 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 29 20 7b 0a 24 70 61 63 6b ng($config['homepage'])).{.$pack
833a0 61 67 65 2d 3e 73 65 74 48 6f 6d 65 70 61 67 65 28 24 63 6f 6e 66 69 67 5b 27 68 6f 6d 65 70 61 age->setHomepage($config['homepa
833c0 67 65 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 6b 65 ge']);.}..if.(!empty($config['ke
833e0 79 77 6f 72 64 73 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 6b ywords']).&&.is_array($config['k
83400 65 79 77 6f 72 64 73 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 4b 65 79 77 6f eywords'])).{.$package->setKeywo
83420 72 64 73 28 24 63 6f 6e 66 69 67 5b 27 6b 65 79 77 6f 72 64 73 27 5d 29 3b 0a 7d 0a 0a 69 66 20 rds($config['keywords']);.}..if.
83440 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 6c 69 63 65 6e 73 65 27 5d 29 29 20 7b 0a 24 (!empty($config['license'])).{.$
83460 70 61 63 6b 61 67 65 2d 3e 73 65 74 4c 69 63 65 6e 73 65 28 69 73 5f 61 72 72 61 79 28 24 63 6f package->setLicense(is_array($co
83480 6e 66 69 67 5b 27 6c 69 63 65 6e 73 65 27 5d 29 20 3f 20 24 63 6f 6e 66 69 67 5b 27 6c 69 63 65 nfig['license']).?.$config['lice
834a0 6e 73 65 27 5d 20 3a 20 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 6c 69 63 65 6e 73 65 27 5d nse'].:.array($config['license']
834c0 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f ));.}..if.(!empty($config['autho
834e0 72 73 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f rs']).&&.is_array($config['autho
83500 72 73 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 75 74 68 6f 72 73 28 24 63 rs'])).{.$package->setAuthors($c
83520 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 onfig['authors']);.}..if.(isset(
83540 24 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d $config['support'])).{.$package-
83560 3e 73 65 74 53 75 70 70 6f 72 74 28 24 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 29 3b >setSupport($config['support']);
83580 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 61 62 61 6e 64 6f 6e 65 64 .}..if.(isset($config['abandoned
835a0 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 62 61 6e 64 6f 6e 65 64 28 24 63 '])).{.$package->setAbandoned($c
835c0 6f 6e 66 69 67 5b 27 61 62 61 6e 64 6f 6e 65 64 27 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 61 onfig['abandoned']);.}.}..if.($a
835e0 6c 69 61 73 4e 6f 72 6d 61 6c 69 7a 65 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 42 72 61 6e 63 liasNormalized.=.$this->getBranc
83600 68 41 6c 69 61 73 28 24 63 6f 6e 66 69 67 29 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 hAlias($config)).{.if.($package.
83620 69 6e 73 74 61 6e 63 65 6f 66 20 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 29 instanceof.RootPackageInterface)
83640 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 6e 65 77 20 52 6f 6f 74 41 6c 69 61 73 50 61 63 6b 61 .{.$package.=.new.RootAliasPacka
83660 67 65 28 24 70 61 63 6b 61 67 65 2c 20 24 61 6c 69 61 73 4e 6f 72 6d 61 6c 69 7a 65 64 2c 20 70 ge($package,.$aliasNormalized,.p
83680 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 5c 2e 39 7b 37 7d 29 2b 7d 27 2c 20 27 2e 78 27 2c reg_replace('{(\.9{7})+}',.'.x',
836a0 20 24 61 6c 69 61 73 4e 6f 72 6d 61 6c 69 7a 65 64 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 .$aliasNormalized));.}.else.{.$p
836c0 61 63 6b 61 67 65 20 3d 20 6e 65 77 20 41 6c 69 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 ackage.=.new.AliasPackage($packa
836e0 67 65 2c 20 24 61 6c 69 61 73 4e 6f 72 6d 61 6c 69 7a 65 64 2c 20 70 72 65 67 5f 72 65 70 6c 61 ge,.$aliasNormalized,.preg_repla
83700 63 65 28 27 7b 28 5c 2e 39 7b 37 7d 29 2b 7d 27 2c 20 27 2e 78 27 2c 20 24 61 6c 69 61 73 4e 6f ce('{(\.9{7})+}',.'.x',.$aliasNo
83720 72 6d 61 6c 69 7a 65 64 29 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 6f 61 64 rmalized));.}.}..if.($this->load
83740 4f 70 74 69 6f 6e 73 20 26 26 20 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 74 72 61 6e 73 70 Options.&&.isset($config['transp
83760 6f 72 74 2d 6f 70 74 69 6f 6e 73 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 54 ort-options'])).{.$package->setT
83780 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 24 63 6f 6e 66 69 67 5b 27 74 72 61 6e 73 70 6f ransportOptions($config['transpo
837a0 72 74 2d 6f 70 74 69 6f 6e 73 27 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 rt-options']);.}..return.$packag
837c0 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 e;.}.........public.function.par
837e0 73 65 4c 69 6e 6b 73 28 24 73 6f 75 72 63 65 2c 20 24 73 6f 75 72 63 65 56 65 72 73 69 6f 6e 2c seLinks($source,.$sourceVersion,
83800 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 6c 69 6e 6b 73 29 0a 7b 0a 24 72 65 73 20 3d 20 .$description,.$links).{.$res.=.
83820 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 74 61 72 array();.foreach.($links.as.$tar
83840 67 65 74 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 27 73 65 6c 66 2e get.=>.$constraint).{.if.('self.
83860 76 65 72 73 69 6f 6e 27 20 3d 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 70 61 72 version'.===.$constraint).{.$par
83880 73 65 64 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 sedConstraint.=.$this->versionPa
838a0 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 73 6f 75 72 63 65 56 65 rser->parseConstraints($sourceVe
838c0 72 73 69 6f 6e 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 72 73 65 64 43 6f 6e 73 74 72 61 69 rsion);.}.else.{.$parsedConstrai
838e0 6e 74 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 nt.=.$this->versionParser->parse
83900 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 24 72 65 Constraints($constraint);.}..$re
83920 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 61 72 67 65 74 29 5d 20 3d 20 6e 65 77 20 4c 69 6e s[strtolower($target)].=.new.Lin
83940 6b 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 2c 20 24 70 61 72 73 65 64 43 6f 6e 73 74 k($source,.$target,.$parsedConst
83960 72 61 69 6e 74 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 raint,.$description,.$constraint
83980 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c );.}..return.$res;.}........publ
839a0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 41 6c 69 61 73 28 61 72 72 61 79 ic.function.getBranchAlias(array
839c0 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 28 27 64 65 76 2d 27 20 21 3d 3d 20 73 75 62 73 .$config).{.if.(('dev-'.!==.subs
839e0 74 72 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 2c 20 30 2c 20 34 29 20 26 26 20 tr($config['version'],.0,.4).&&.
83a00 27 2d 64 65 76 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 '-dev'.!==.substr($config['versi
83a20 6f 6e 27 5d 2c 20 2d 34 29 29 0a 7c 7c 20 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 65 78 on'],.-4)).||.!isset($config['ex
83a40 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 0a 7c 7c 20 21 69 73 5f 61 72 tra']['branch-alias']).||.!is_ar
83a60 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 ray($config['extra']['branch-ali
83a80 61 73 27 5d 29 0a 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 as']).).{.return;.}..foreach.($c
83aa0 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 20 61 onfig['extra']['branch-alias'].a
83ac0 73 20 24 73 6f 75 72 63 65 42 72 61 6e 63 68 20 3d 3e 20 24 74 61 72 67 65 74 42 72 61 6e 63 68 s.$sourceBranch.=>.$targetBranch
83ae0 29 20 7b 0a 0a 20 69 66 20 28 27 2d 64 65 76 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 74 61 72 ).{...if.('-dev'.!==.substr($tar
83b00 67 65 74 42 72 61 6e 63 68 2c 20 2d 34 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a getBranch,.-4)).{.continue;.}...
83b20 20 24 76 61 6c 69 64 61 74 65 64 54 61 72 67 65 74 42 72 61 6e 63 68 20 3d 20 24 74 68 69 73 2d .$validatedTargetBranch.=.$this-
83b40 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 72 61 6e 63 68 28 >versionParser->normalizeBranch(
83b60 73 75 62 73 74 72 28 24 74 61 72 67 65 74 42 72 61 6e 63 68 2c 20 30 2c 20 2d 34 29 29 3b 0a 69 substr($targetBranch,.0,.-4));.i
83b80 66 20 28 27 2d 64 65 76 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 76 61 6c 69 64 61 74 65 64 54 f.('-dev'.!==.substr($validatedT
83ba0 61 72 67 65 74 42 72 61 6e 63 68 2c 20 2d 34 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a argetBranch,.-4)).{.continue;.}.
83bc0 0a 0a 20 69 66 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 ...if.(strtolower($config['versi
83be0 6f 6e 27 5d 29 20 21 3d 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 6f 75 72 63 65 42 72 61 6e on']).!==.strtolower($sourceBran
83c00 63 68 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 28 24 73 6f 75 72 ch)).{.continue;.}....if.(($sour
83c20 63 65 50 72 65 66 69 78 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d cePrefix.=.$this->versionParser-
83c40 3e 70 61 72 73 65 4e 75 6d 65 72 69 63 41 6c 69 61 73 50 72 65 66 69 78 28 24 73 6f 75 72 63 65 >parseNumericAliasPrefix($source
83c60 42 72 61 6e 63 68 29 29 0a 26 26 20 28 24 74 61 72 67 65 74 50 72 65 66 69 78 20 3d 20 24 74 68 Branch)).&&.($targetPrefix.=.$th
83c80 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 4e 75 6d 65 72 69 63 41 is->versionParser->parseNumericA
83ca0 6c 69 61 73 50 72 65 66 69 78 28 24 74 61 72 67 65 74 42 72 61 6e 63 68 29 29 0a 26 26 20 28 73 liasPrefix($targetBranch)).&&.(s
83cc0 74 72 69 70 6f 73 28 24 74 61 72 67 65 74 50 72 65 66 69 78 2c 20 24 73 6f 75 72 63 65 50 72 65 tripos($targetPrefix,.$sourcePre
83ce0 66 69 78 29 20 21 3d 3d 20 30 29 0a 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 72 65 74 fix).!==.0).).{.continue;.}..ret
83d00 75 72 6e 20 24 76 61 6c 69 64 61 74 65 64 54 61 72 67 65 74 42 72 61 6e 63 68 3b 0a 7d 0a 7d 0a urn.$validatedTargetBranch;.}.}.
83d20 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d }.<?php............namespace.Com
83d40 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 poser\Package\Loader;.....class.
83d60 49 6e 76 61 6c 69 64 50 61 63 6b 61 67 65 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 InvalidPackageException.extends.
83d80 5c 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 65 72 72 6f 72 73 3b 0a 70 72 \Exception.{.private.$errors;.pr
83da0 69 76 61 74 65 20 24 77 61 72 6e 69 6e 67 73 3b 0a 70 72 69 76 61 74 65 20 24 64 61 74 61 3b 0a ivate.$warnings;.private.$data;.
83dc0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 .public.function.__construct(arr
83de0 61 79 20 24 65 72 72 6f 72 73 2c 20 61 72 72 61 79 20 24 77 61 72 6e 69 6e 67 73 2c 20 61 72 72 ay.$errors,.array.$warnings,.arr
83e00 61 79 20 24 64 61 74 61 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 65 72 72 ay.$data).{.$this->errors.=.$err
83e20 6f 72 73 3b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 20 3d 20 24 77 61 72 6e 69 6e 67 73 ors;.$this->warnings.=.$warnings
83e40 3b 0a 24 74 68 69 73 2d 3e 64 61 74 61 20 3d 20 24 64 61 74 61 3b 0a 70 61 72 65 6e 74 3a 3a 5f ;.$this->data.=.$data;.parent::_
83e60 5f 63 6f 6e 73 74 72 75 63 74 28 22 49 6e 76 61 6c 69 64 20 70 61 63 6b 61 67 65 20 69 6e 66 6f _construct("Invalid.package.info
83e80 72 6d 61 74 69 6f 6e 3a 20 5c 6e 22 2e 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 61 72 72 61 79 rmation:.\n".implode("\n",.array
83ea0 5f 6d 65 72 67 65 28 24 65 72 72 6f 72 73 2c 20 24 77 61 72 6e 69 6e 67 73 29 29 29 3b 0a 7d 0a _merge($errors,.$warnings)));.}.
83ec0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 61 74 61 28 29 0a 7b 0a 72 65 74 .public.function.getData().{.ret
83ee0 75 72 6e 20 24 74 68 69 73 2d 3e 64 61 74 61 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 urn.$this->data;.}..public.funct
83f00 69 6f 6e 20 67 65 74 45 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e ion.getErrors().{.return.$this->
83f20 65 72 72 6f 72 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 57 61 errors;.}..public.function.getWa
83f40 72 6e 69 6e 67 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 rnings().{.return.$this->warning
83f60 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 s;.}.}.<?php............namespac
83f80 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 e.Composer\Package\Loader;..use.
83fa0 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 Composer\Json\JsonFile;.....clas
83fc0 73 20 4a 73 6f 6e 4c 6f 61 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6c 6f 61 64 65 72 3b 0a s.JsonLoader.{.private.$loader;.
83fe0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 4c 6f 61 .public.function.__construct(Loa
84000 64 65 72 49 6e 74 65 72 66 61 63 65 20 24 6c 6f 61 64 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c derInterface.$loader).{.$this->l
84020 6f 61 64 65 72 20 3d 20 24 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 oader.=.$loader;.}......public.f
84040 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 24 6a 73 6f 6e 29 0a 7b 0a 69 66 20 28 24 6a 73 6f 6e 20 unction.load($json).{.if.($json.
84060 69 6e 73 74 61 6e 63 65 6f 66 20 4a 73 6f 6e 46 69 6c 65 29 20 7b 0a 24 63 6f 6e 66 69 67 20 3d instanceof.JsonFile).{.$config.=
84080 20 24 6a 73 6f 6e 2d 3e 72 65 61 64 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 69 6c 65 5f 65 .$json->read();.}.elseif.(file_e
840a0 78 69 73 74 73 28 24 6a 73 6f 6e 29 29 20 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 4a 73 6f 6e 46 69 xists($json)).{.$config.=.JsonFi
840c0 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 le::parseJson(file_get_contents(
840e0 24 6a 73 6f 6e 29 2c 20 24 6a 73 6f 6e 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 73 74 72 $json),.$json);.}.elseif.(is_str
84100 69 6e 67 28 24 6a 73 6f 6e 29 29 20 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 4a 73 6f 6e 46 69 6c 65 ing($json)).{.$config.=.JsonFile
84120 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 ::parseJson($json);.}..return.$t
84140 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 7d 0a his->loader->load($config);.}.}.
84160 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f <?php............namespace.Compo
84180 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 ser\Package\Loader;.......interf
841a0 61 63 65 20 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ace.LoaderInterface.{........pub
841c0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 lic.function.load(array.$package
841e0 2c 20 24 63 6c 61 73 73 20 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d ,.$class.=.'Composer\Package\Com
84200 70 6c 65 74 65 50 61 63 6b 61 67 65 27 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a pletePackage');.}.<?php.........
84220 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f ...namespace.Composer\Package\Lo
84240 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 ader;..use.Composer\Package\Base
84260 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 Package;.use.Composer\Package\Pa
84280 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 ckageInterface;.use.Composer\Pac
842a0 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c kage\AliasPackage;.use.Composer\
842c0 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c Config;.use.Composer\Repository\
842e0 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c RepositoryFactory;.use.Composer\
84300 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 47 75 65 73 73 65 72 3b 0a Package\Version\VersionGuesser;.
84320 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 use.Composer\Package\Version\Ver
84340 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 sionParser;.use.Composer\Reposit
84360 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f ory\RepositoryManager;.use.Compo
84380 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a ser\Util\ProcessExecutor;.......
843a0 0a 0a 63 6c 61 73 73 20 52 6f 6f 74 50 61 63 6b 61 67 65 4c 6f 61 64 65 72 20 65 78 74 65 6e 64 ..class.RootPackageLoader.extend
843c0 73 20 41 72 72 61 79 4c 6f 61 64 65 72 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6d 61 6e 61 s.ArrayLoader.{....private.$mana
843e0 67 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 70 72 ger;.....private.$config;.....pr
84400 69 76 61 74 65 20 24 76 65 72 73 69 6f 6e 47 75 65 73 73 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 ivate.$versionGuesser;..public.f
84420 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 52 65 70 6f 73 69 74 6f 72 79 4d 61 unction.__construct(RepositoryMa
84440 6e 61 67 65 72 20 24 6d 61 6e 61 67 65 72 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 nager.$manager,.Config.$config,.
84460 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 24 70 61 72 73 65 72 20 3d 20 6e 75 6c 6c 2c 20 56 65 VersionParser.$parser.=.null,.Ve
84480 72 73 69 6f 6e 47 75 65 73 73 65 72 20 24 76 65 72 73 69 6f 6e 47 75 65 73 73 65 72 20 3d 20 6e rsionGuesser.$versionGuesser.=.n
844a0 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 72 73 ull).{.parent::__construct($pars
844c0 65 72 29 3b 0a 0a 24 74 68 69 73 2d 3e 6d 61 6e 61 67 65 72 20 3d 20 24 6d 61 6e 61 67 65 72 3b er);..$this->manager.=.$manager;
844e0 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d .$this->config.=.$config;.$this-
84500 3e 76 65 72 73 69 6f 6e 47 75 65 73 73 65 72 20 3d 20 24 76 65 72 73 69 6f 6e 47 75 65 73 73 65 >versionGuesser.=.$versionGuesse
84520 72 20 3f 3a 20 6e 65 77 20 56 65 72 73 69 6f 6e 47 75 65 73 73 65 72 28 24 63 6f 6e 66 69 67 2c r.?:.new.VersionGuesser($config,
84540 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 29 2c 20 24 74 68 69 73 2d 3e 76 .new.ProcessExecutor(),.$this->v
84560 65 72 73 69 6f 6e 50 61 72 73 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ersionParser);.}........public.f
84580 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 61 72 72 61 79 20 24 63 6f 6e 66 69 67 2c 20 24 63 6c 61 unction.load(array.$config,.$cla
845a0 73 73 20 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 52 6f 6f 74 50 61 63 6b 61 ss.=.'Composer\Package\RootPacka
845c0 67 65 27 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 ge',.$cwd.=.null).{.if.(!isset($
845e0 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 config['name'])).{.$config['name
84600 27 5d 20 3d 20 27 5f 5f 72 6f 6f 74 5f 5f 27 3b 0a 7d 0a 24 61 75 74 6f 56 65 72 73 69 6f 6e 65 '].=.'__root__';.}.$autoVersione
84620 64 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 76 d.=.false;.if.(!isset($config['v
84640 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 0a 20 69 66 20 28 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f ersion'])).{...if.(getenv('COMPO
84660 53 45 52 5f 52 4f 4f 54 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d SER_ROOT_VERSION')).{.$version.=
84680 20 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 52 4f 4f 54 5f 56 45 52 53 49 4f 4e 27 29 .getenv('COMPOSER_ROOT_VERSION')
846a0 3b 0a 24 63 6f 6d 6d 69 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 ;.$commit.=.null;.}.else.{.$vers
846c0 69 6f 6e 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 47 75 65 73 73 65 72 2d ionData.=.$this->versionGuesser-
846e0 3e 67 75 65 73 73 56 65 72 73 69 6f 6e 28 24 63 6f 6e 66 69 67 2c 20 24 63 77 64 20 3f 3a 20 67 >guessVersion($config,.$cwd.?:.g
84700 65 74 63 77 64 28 29 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 44 61 74 etcwd());.$version.=.$versionDat
84720 61 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 24 63 6f 6d 6d 69 74 20 3d 20 24 76 65 72 73 69 6f 6e a['version'];.$commit.=.$version
84740 44 61 74 61 5b 27 63 6f 6d 6d 69 74 27 5d 3b 0a 7d 0a 0a 69 66 20 28 21 24 76 65 72 73 69 6f 6e Data['commit'];.}..if.(!$version
84760 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 31 2e 30 2e 30 27 3b 0a 24 61 75 74 6f 56 65 72 ).{.$version.=.'1.0.0';.$autoVer
84780 73 69 6f 6e 65 64 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 sioned.=.true;.}..$config['versi
847a0 6f 6e 27 5d 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 69 66 20 28 24 63 6f 6d 6d 69 74 29 20 7b 0a on'].=.$version;.if.($commit).{.
847c0 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 20 3d 20 61 72 72 61 79 28 0a 27 74 79 70 65 $config['source'].=.array(.'type
847e0 27 20 3d 3e 20 27 27 2c 0a 27 75 72 6c 27 20 3d 3e 20 27 27 2c 0a 27 72 65 66 65 72 65 6e 63 65 '.=>.'',.'url'.=>.'',.'reference
84800 27 20 3d 3e 20 24 63 6f 6d 6d 69 74 2c 0a 29 3b 0a 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d '.=>.$commit,.);.$config['dist']
84820 20 3d 20 61 72 72 61 79 28 0a 27 74 79 70 65 27 20 3d 3e 20 27 27 2c 0a 27 75 72 6c 27 20 3d 3e .=.array(.'type'.=>.'',.'url'.=>
84840 20 27 27 2c 0a 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 63 6f 6d 6d 69 74 2c 0a 29 3b 0a .'',.'reference'.=>.$commit,.);.
84860 7d 0a 7d 0a 0a 24 72 65 61 6c 50 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 20 3d 20 70 }.}..$realPackage.=.$package.=.p
84880 61 72 65 6e 74 3a 3a 6c 6f 61 64 28 24 63 6f 6e 66 69 67 2c 20 24 63 6c 61 73 73 29 3b 0a 69 66 arent::load($config,.$class);.if
848a0 20 28 24 72 65 61 6c 50 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 .($realPackage.instanceof.AliasP
848c0 61 63 6b 61 67 65 29 20 7b 0a 24 72 65 61 6c 50 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 ackage).{.$realPackage.=.$packag
848e0 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 61 75 74 6f 56 65 72 e->getAliasOf();.}..if.($autoVer
84900 73 69 6f 6e 65 64 29 20 7b 0a 24 72 65 61 6c 50 61 63 6b 61 67 65 2d 3e 72 65 70 6c 61 63 65 56 sioned).{.$realPackage->replaceV
84920 65 72 73 69 6f 6e 28 24 72 65 61 6c 50 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 ersion($realPackage->getVersion(
84940 29 2c 20 27 4e 6f 20 76 65 72 73 69 6f 6e 20 73 65 74 20 28 70 61 72 73 65 64 20 61 73 20 31 2e ),.'No.version.set.(parsed.as.1.
84960 30 2e 30 29 27 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 6d 69 0.0)');.}..if.(isset($config['mi
84980 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 29 20 7b 0a 24 72 65 61 6c 50 61 63 6b 61 nimum-stability'])).{.$realPacka
849a0 67 65 2d 3e 73 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 56 65 72 73 69 6f 6e 50 ge->setMinimumStability(VersionP
849c0 61 72 73 65 72 3a 3a 6e 6f 72 6d 61 6c 69 7a 65 53 74 61 62 69 6c 69 74 79 28 24 63 6f 6e 66 69 arser::normalizeStability($confi
849e0 67 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 29 3b 0a 7d 0a 0a 24 61 6c g['minimum-stability']));.}..$al
84a00 69 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 iases.=.array();.$stabilityFlags
84a20 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 61 72 72 61 79 28 .=.array();.$references.=.array(
84a40 29 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 72 65 71 75 69 72 65 27 2c 20 27 72 65 );.foreach.(array('require',.'re
84a60 71 75 69 72 65 2d 64 65 76 27 29 20 61 73 20 24 6c 69 6e 6b 54 79 70 65 29 20 7b 0a 69 66 20 28 quire-dev').as.$linkType).{.if.(
84a80 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 29 29 20 7b 0a 24 6c 69 isset($config[$linkType])).{.$li
84aa0 6e 6b 49 6e 66 6f 20 3d 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 75 70 70 6f 72 74 65 64 nkInfo.=.BasePackage::$supported
84ac0 4c 69 6e 6b 54 79 70 65 73 5b 24 6c 69 6e 6b 54 79 70 65 5d 3b 0a 24 6d 65 74 68 6f 64 20 3d 20 LinkTypes[$linkType];.$method.=.
84ae0 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 6c 69 6e 6b 49 6e 66 6f 5b 27 6d 65 74 68 6f 64 27 'get'.ucfirst($linkInfo['method'
84b00 5d 29 3b 0a 24 6c 69 6e 6b 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 ]);.$links.=.array();.foreach.($
84b20 72 65 61 6c 50 61 63 6b 61 67 65 2d 3e 24 6d 65 74 68 6f 64 28 29 20 61 73 20 24 6c 69 6e 6b 29 realPackage->$method().as.$link)
84b40 20 7b 0a 24 6c 69 6e 6b 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 .{.$links[$link->getTarget()].=.
84b60 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 2d 3e 67 65 74 50 72 65 74 74 $link->getConstraint()->getPrett
84b80 79 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 24 61 6c 69 61 73 65 73 20 3d 20 24 74 68 69 73 2d 3e 65 yString();.}.$aliases.=.$this->e
84ba0 78 74 72 61 63 74 41 6c 69 61 73 65 73 28 24 6c 69 6e 6b 73 2c 20 24 61 6c 69 61 73 65 73 29 3b xtractAliases($links,.$aliases);
84bc0 0a 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 .$stabilityFlags.=.$this->extrac
84be0 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 24 6c 69 6e 6b 73 2c 20 24 73 74 61 62 69 6c 69 tStabilityFlags($links,.$stabili
84c00 74 79 46 6c 61 67 73 2c 20 24 72 65 61 6c 50 61 63 6b 61 67 65 2d 3e 67 65 74 4d 69 6e 69 6d 75 tyFlags,.$realPackage->getMinimu
84c20 6d 53 74 61 62 69 6c 69 74 79 28 29 29 3b 0a 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 24 74 68 mStability());.$references.=.$th
84c40 69 73 2d 3e 65 78 74 72 61 63 74 52 65 66 65 72 65 6e 63 65 73 28 24 6c 69 6e 6b 73 2c 20 24 72 is->extractReferences($links,.$r
84c60 65 66 65 72 65 6e 63 65 73 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6c 69 6e 6b eferences);.}.}..if.(isset($link
84c80 73 5b 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 s[$config['name']])).{.throw.new
84ca0 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e .\InvalidArgumentException(sprin
84cc0 74 66 28 27 52 6f 6f 74 20 70 61 63 6b 61 67 65 20 5c 27 25 73 5c 27 20 63 61 6e 6e 6f 74 20 72 tf('Root.package.\'%s\'.cannot.r
84ce0 65 71 75 69 72 65 20 69 74 73 65 6c 66 20 69 6e 20 69 74 73 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 equire.itself.in.its.composer.js
84d00 6f 6e 27 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 0a 27 44 69 64 20 79 6f 75 20 61 63 63 69 64 65 6e on'...PHP_EOL...'Did.you.acciden
84d20 74 61 6c 6c 79 20 6e 61 6d 65 20 79 6f 75 72 20 72 6f 6f 74 20 70 61 63 6b 61 67 65 20 61 66 74 tally.name.your.root.package.aft
84d40 65 72 20 61 6e 20 65 78 74 65 72 6e 61 6c 20 70 61 63 6b 61 67 65 3f 27 2c 20 24 63 6f 6e 66 69 er.an.external.package?',.$confi
84d60 67 5b 27 6e 61 6d 65 27 5d 29 29 3b 0a 7d 0a 0a 24 72 65 61 6c 50 61 63 6b 61 67 65 2d 3e 73 65 g['name']));.}..$realPackage->se
84d80 74 41 6c 69 61 73 65 73 28 24 61 6c 69 61 73 65 73 29 3b 0a 24 72 65 61 6c 50 61 63 6b 61 67 65 tAliases($aliases);.$realPackage
84da0 2d 3e 73 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 24 73 74 61 62 69 6c 69 74 79 46 6c ->setStabilityFlags($stabilityFl
84dc0 61 67 73 29 3b 0a 24 72 65 61 6c 50 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 66 65 72 65 6e 63 65 ags);.$realPackage->setReference
84de0 73 28 24 72 65 66 65 72 65 6e 63 65 73 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 s($references);..if.(isset($conf
84e00 69 67 5b 27 70 72 65 66 65 72 2d 73 74 61 62 6c 65 27 5d 29 29 20 7b 0a 24 72 65 61 6c 50 61 63 ig['prefer-stable'])).{.$realPac
84e20 6b 61 67 65 2d 3e 73 65 74 50 72 65 66 65 72 53 74 61 62 6c 65 28 28 62 6f 6f 6c 29 20 24 63 6f kage->setPreferStable((bool).$co
84e40 6e 66 69 67 5b 27 70 72 65 66 65 72 2d 73 74 61 62 6c 65 27 5d 29 3b 0a 7d 0a 0a 24 72 65 70 6f nfig['prefer-stable']);.}..$repo
84e60 73 20 3d 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 3a 3a 64 65 66 61 75 6c 74 52 65 s.=.RepositoryFactory::defaultRe
84e80 70 6f 73 28 6e 75 6c 6c 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e pos(null,.$this->config,.$this->
84ea0 6d 61 6e 61 67 65 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 20 61 73 20 24 72 65 manager);.foreach.($repos.as.$re
84ec0 70 6f 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 61 6e 61 67 65 72 2d 3e 61 64 64 52 65 70 6f 73 69 74 po).{.$this->manager->addReposit
84ee0 6f 72 79 28 24 72 65 70 6f 29 3b 0a 7d 0a 24 72 65 61 6c 50 61 63 6b 61 67 65 2d 3e 73 65 74 52 ory($repo);.}.$realPackage->setR
84f00 65 70 6f 73 69 74 6f 72 69 65 73 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 52 65 epositories($this->config->getRe
84f20 70 6f 73 69 74 6f 72 69 65 73 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b positories());..return.$package;
84f40 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 41 6c 69 61 .}..private.function.extractAlia
84f60 73 65 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 73 2c 20 61 72 72 61 79 20 24 61 6c 69 61 ses(array.$requires,.array.$alia
84f80 73 65 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 72 65 ses).{.foreach.($requires.as.$re
84fa0 71 4e 61 6d 65 20 3d 3e 20 24 72 65 71 56 65 72 73 69 6f 6e 29 20 7b 0a 69 66 20 28 70 72 65 67 qName.=>.$reqVersion).{.if.(preg
84fc0 5f 6d 61 74 63 68 28 27 7b 5e 28 5b 5e 2c 5c 73 23 5d 2b 29 28 3f 3a 23 5b 5e 20 5d 2b 29 3f 20 _match('{^([^,\s#]+)(?:#[^.]+)?.
84fe0 2b 61 73 20 2b 28 5b 5e 2c 5c 73 5d 2b 29 24 7d 27 2c 20 24 72 65 71 56 65 72 73 69 6f 6e 2c 20 +as.+([^,\s]+)$}',.$reqVersion,.
85000 24 6d 61 74 63 68 29 29 20 7b 0a 24 61 6c 69 61 73 65 73 5b 5d 20 3d 20 61 72 72 61 79 28 0a 27 $match)).{.$aliases[].=.array(.'
85020 70 61 63 6b 61 67 65 27 20 3d 3e 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 4e 61 6d 65 29 package'.=>.strtolower($reqName)
85040 2c 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 ,.'version'.=>.$this->versionPar
85060 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6d 61 74 63 68 5b 31 5d 2c 20 24 72 65 71 56 65 ser->normalize($match[1],.$reqVe
85080 72 73 69 6f 6e 29 2c 0a 27 61 6c 69 61 73 27 20 3d 3e 20 24 6d 61 74 63 68 5b 32 5d 2c 0a 27 61 rsion),.'alias'.=>.$match[2],.'a
850a0 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 20 3d 3e 20 24 74 68 69 73 2d 3e 76 65 72 73 69 lias_normalized'.=>.$this->versi
850c0 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6d 61 74 63 68 5b 32 5d 2c 20 24 onParser->normalize($match[2],.$
850e0 72 65 71 56 65 72 73 69 6f 6e 29 2c 0a 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 6c 69 reqVersion),.);.}.}..return.$ali
85100 61 73 65 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 ases;.}..private.function.extrac
85120 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 73 2c tStabilityFlags(array.$requires,
85140 20 61 72 72 61 79 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 2c 20 24 6d 69 6e 69 6d 75 6d .array.$stabilityFlags,.$minimum
85160 53 74 61 62 69 6c 69 74 79 29 0a 7b 0a 24 73 74 61 62 69 6c 69 74 69 65 73 20 3d 20 42 61 73 65 Stability).{.$stabilities.=.Base
85180 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 3b 0a 24 6d 69 6e 69 6d 75 6d 53 Package::$stabilities;.$minimumS
851a0 74 61 62 69 6c 69 74 79 20 3d 20 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 6d 69 6e 69 6d 75 6d tability.=.$stabilities[$minimum
851c0 53 74 61 62 69 6c 69 74 79 5d 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 Stability];.foreach.($requires.a
851e0 73 20 24 72 65 71 4e 61 6d 65 20 3d 3e 20 24 72 65 71 56 65 72 73 69 6f 6e 29 20 7b 0a 24 63 6f s.$reqName.=>.$reqVersion).{.$co
85200 6e 73 74 72 61 69 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 24 6f 72 53 70 6c 69 74 nstraints.=.array();....$orSplit
85220 20 3d 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 73 2a 5c 7c 5c 7c 3f 5c 73 2a 7d 27 2c 20 74 .=.preg_split('{\s*\|\|?\s*}',.t
85240 72 69 6d 28 24 72 65 71 56 65 72 73 69 6f 6e 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6f 72 53 rim($reqVersion));.foreach.($orS
85260 70 6c 69 74 20 61 73 20 24 6f 72 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 61 6e 64 53 70 6c plit.as.$orConstraint).{.$andSpl
85280 69 74 20 3d 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 28 3f 3c 21 5e 7c 61 73 7c 5b 3d 3e 3c 20 it.=.preg_split('{(?<!^|as|[=><.
852a0 2c 5d 29 20 2a 28 3f 3c 21 2d 29 5b 2c 20 5d 28 3f 21 2d 29 20 2a 28 3f 21 2c 7c 61 73 7c 24 29 ,]).*(?<!-)[,.](?!-).*(?!,|as|$)
852c0 7d 27 2c 20 24 6f 72 43 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 61 6e }',.$orConstraint);.foreach.($an
852e0 64 53 70 6c 69 74 20 61 73 20 24 61 6e 64 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 63 6f 6e dSplit.as.$andConstraint).{.$con
85300 73 74 72 61 69 6e 74 73 5b 5d 20 3d 20 24 61 6e 64 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 7d straints[].=.$andConstraint;.}.}
85320 0a 0a 0a 20 24 6d 61 74 63 68 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f ....$match.=.false;.foreach.($co
85340 6e 73 74 72 61 69 6e 74 73 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 nstraints.as.$constraint).{.if.(
85360 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5e 40 5d 2a 3f 40 28 27 2e 69 6d 70 6c 6f 64 65 28 preg_match('{^[^@]*?@('.implode(
85380 27 7c 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 73 74 61 62 69 6c 69 74 69 65 73 29 29 2e 27 '|',.array_keys($stabilities)).'
853a0 29 24 7d 69 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 )$}i',.$constraint,.$match)).{.$
853c0 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 4e 61 6d 65 29 3b 0a 24 73 74 name.=.strtolower($reqName);.$st
853e0 61 62 69 6c 69 74 79 20 3d 20 24 73 74 61 62 69 6c 69 74 69 65 73 5b 56 65 72 73 69 6f 6e 50 61 ability.=.$stabilities[VersionPa
85400 72 73 65 72 3a 3a 6e 6f 72 6d 61 6c 69 7a 65 53 74 61 62 69 6c 69 74 79 28 24 6d 61 74 63 68 5b rser::normalizeStability($match[
85420 31 5d 29 5d 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 1])];..if.(isset($stabilityFlags
85440 5b 24 6e 61 6d 65 5d 29 20 26 26 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d [$name]).&&.$stabilityFlags[$nam
85460 65 5d 20 3e 20 24 73 74 61 62 69 6c 69 74 79 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 e].>.$stability).{.continue;.}.$
85480 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 73 74 61 62 69 6c 69 stabilityFlags[$name].=.$stabili
854a0 74 79 3b 0a 24 6d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6d 61 74 ty;.$match.=.true;.}.}..if.($mat
854c0 63 68 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 0a 20 24 72 65 71 56 65 72 73 69 ch).{.continue;.}......$reqVersi
854e0 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 5b 5e 2c 5c 73 40 5d 2b 29 20 on.=.preg_replace('{^([^,\s@]+).
85500 61 73 20 2e 2b 24 7d 27 2c 20 27 24 31 27 2c 20 24 72 65 71 56 65 72 73 69 6f 6e 29 3b 0a 69 66 as..+$}',.'$1',.$reqVersion);.if
85520 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5e 2c 5c 73 40 5d 2b 24 7d 27 2c 20 24 72 65 .(preg_match('{^[^,\s@]+$}',.$re
85540 71 56 65 72 73 69 6f 6e 29 20 26 26 20 27 73 74 61 62 6c 65 27 20 21 3d 3d 20 28 24 73 74 61 62 qVersion).&&.'stable'.!==.($stab
85560 69 6c 69 74 79 4e 61 6d 65 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 65 ilityName.=.VersionParser::parse
85580 53 74 61 62 69 6c 69 74 79 28 24 72 65 71 56 65 72 73 69 6f 6e 29 29 29 20 7b 0a 24 6e 61 6d 65 Stability($reqVersion))).{.$name
855a0 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 4e 61 6d 65 29 3b 0a 24 73 74 61 62 69 6c .=.strtolower($reqName);.$stabil
855c0 69 74 79 20 3d 20 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 69 6c 69 74 79 4e 61 6d ity.=.$stabilities[$stabilityNam
855e0 65 5d 3b 0a 69 66 20 28 28 69 73 73 65 74 28 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 e];.if.((isset($stabilityFlags[$
85600 6e 61 6d 65 5d 29 20 26 26 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d name]).&&.$stabilityFlags[$name]
85620 20 3e 20 24 73 74 61 62 69 6c 69 74 79 29 20 7c 7c 20 28 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 .>.$stability).||.($minimumStabi
85640 6c 69 74 79 20 3e 20 24 73 74 61 62 69 6c 69 74 79 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a lity.>.$stability)).{.continue;.
85660 7d 0a 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 73 74 61 62 }.$stabilityFlags[$name].=.$stab
85680 69 6c 69 74 79 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 ility;.}.}..return.$stabilityFla
856a0 67 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 52 gs;.}..private.function.extractR
856c0 65 66 65 72 65 6e 63 65 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 73 2c 20 61 72 72 61 79 eferences(array.$requires,.array
856e0 20 24 72 65 66 65 72 65 6e 63 65 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 .$references).{.foreach.($requir
85700 65 73 20 61 73 20 24 72 65 71 4e 61 6d 65 20 3d 3e 20 24 72 65 71 56 65 72 73 69 6f 6e 29 20 7b es.as.$reqName.=>.$reqVersion).{
85720 0a 24 72 65 71 56 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 .$reqVersion.=.preg_replace('{^(
85740 5b 5e 2c 5c 73 40 5d 2b 29 20 61 73 20 2e 2b 24 7d 27 2c 20 27 24 31 27 2c 20 24 72 65 71 56 65 [^,\s@]+).as..+$}',.'$1',.$reqVe
85760 72 73 69 6f 6e 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5e 2c 5c 73 40 rsion);.if.(preg_match('{^[^,\s@
85780 5d 2b 3f 23 28 5b 61 2d 66 30 2d 39 5d 2b 29 24 7d 27 2c 20 24 72 65 71 56 65 72 73 69 6f 6e 2c ]+?#([a-f0-9]+)$}',.$reqVersion,
857a0 20 24 6d 61 74 63 68 29 20 26 26 20 27 64 65 76 27 20 3d 3d 3d 20 28 24 73 74 61 62 69 6c 69 74 .$match).&&.'dev'.===.($stabilit
857c0 79 4e 61 6d 65 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 65 53 74 61 62 yName.=.VersionParser::parseStab
857e0 69 6c 69 74 79 28 24 72 65 71 56 65 72 73 69 6f 6e 29 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 ility($reqVersion))).{.$name.=.s
85800 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 4e 61 6d 65 29 3b 0a 24 72 65 66 65 72 65 6e 63 65 73 trtolower($reqName);.$references
85820 5b 24 6e 61 6d 65 5d 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e [$name].=.$match[1];.}.}..return
85840 20 24 72 65 66 65 72 65 6e 63 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a .$references;.}.}.<?php.........
85860 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f ...namespace.Composer\Package\Lo
85880 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 75 73 65 ader;..use.Composer\Package;.use
858a0 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 67 65 3b 0a 75 .Composer\Package\BasePackage;.u
858c0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f se.Composer\Semver\Constraint\Co
858e0 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 nstraint;.use.Composer\Package\V
85900 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 ersion\VersionParser;.use.Compos
85920 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 er\Repository\PlatformRepository
85940 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 ;.....class.ValidatingArrayLoade
85960 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 63 r.implements.LoaderInterface.{.c
85980 6f 6e 73 74 20 43 48 45 43 4b 5f 41 4c 4c 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 43 48 45 43 4b 5f onst.CHECK_ALL.=.1;.const.CHECK_
859a0 55 4e 42 4f 55 4e 44 5f 43 4f 4e 53 54 52 41 49 4e 54 53 20 3d 20 31 3b 0a 0a 70 72 69 76 61 74 UNBOUND_CONSTRAINTS.=.1;..privat
859c0 65 20 24 6c 6f 61 64 65 72 3b 0a 70 72 69 76 61 74 65 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 e.$loader;.private.$versionParse
859e0 72 3b 0a 70 72 69 76 61 74 65 20 24 65 72 72 6f 72 73 3b 0a 70 72 69 76 61 74 65 20 24 77 61 72 r;.private.$errors;.private.$war
85a00 6e 69 6e 67 73 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 70 72 69 76 61 74 65 20 nings;.private.$config;.private.
85a20 24 73 74 72 69 63 74 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 66 6c 61 67 73 3b 0a 0a 70 75 $strictName;.private.$flags;..pu
85a40 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 4c 6f 61 64 65 72 blic.function.__construct(Loader
85a60 49 6e 74 65 72 66 61 63 65 20 24 6c 6f 61 64 65 72 2c 20 24 73 74 72 69 63 74 4e 61 6d 65 20 3d Interface.$loader,.$strictName.=
85a80 20 74 72 75 65 2c 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 24 70 61 72 73 65 72 20 3d 20 6e .true,.VersionParser.$parser.=.n
85aa0 75 6c 6c 2c 20 24 66 6c 61 67 73 20 3d 20 30 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 ull,.$flags.=.0).{.$this->loader
85ac0 20 3d 20 24 6c 6f 61 64 65 72 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 .=.$loader;.$this->versionParser
85ae0 20 3d 20 24 70 61 72 73 65 72 20 3f 3a 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 .=.$parser.?:.new.VersionParser(
85b00 29 3b 0a 24 74 68 69 73 2d 3e 73 74 72 69 63 74 4e 61 6d 65 20 3d 20 24 73 74 72 69 63 74 4e 61 );.$this->strictName.=.$strictNa
85b20 6d 65 3b 0a 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 3d 20 24 66 6c 61 67 73 3b 0a 7d 0a 0a 70 75 me;.$this->flags.=.$flags;.}..pu
85b40 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 61 72 72 61 79 20 24 63 6f 6e 66 69 67 blic.function.load(array.$config
85b60 2c 20 24 63 6c 61 73 73 20 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d ,.$class.=.'Composer\Package\Com
85b80 70 6c 65 74 65 50 61 63 6b 61 67 65 27 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d pletePackage').{.$this->errors.=
85ba0 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 20 3d 20 61 72 72 61 .array();.$this->warnings.=.arra
85bc0 79 28 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 0a 69 y();.$this->config.=.$config;..i
85be0 66 20 28 24 74 68 69 73 2d 3e 73 74 72 69 63 74 4e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 76 f.($this->strictName).{.$this->v
85c00 61 6c 69 64 61 74 65 52 65 67 65 78 28 27 6e 61 6d 65 27 2c 20 27 5b 41 2d 5a 61 2d 7a 30 2d 39 alidateRegex('name',.'[A-Za-z0-9
85c20 5d 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2d 5d 2a 2f 5b 41 2d 5a 61 2d 7a 30 2d 39 5d 5b 41 2d 5a ][A-Za-z0-9_.-]*/[A-Za-z0-9][A-Z
85c40 61 2d 7a 30 2d 39 5f 2e 2d 5d 2a 27 2c 20 74 72 75 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 a-z0-9_.-]*',.true);.}.else.{.$t
85c60 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 27 6e 61 6d 65 27 2c 20 74 72 75 65 his->validateString('name',.true
85c80 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 );.}..if.(!empty($this->config['
85ca0 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 version'])).{.try.{.$this->versi
85cc0 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 onParser->normalize($this->confi
85ce0 67 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 g['version']);.}.catch.(\Excepti
85d00 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 76 65 72 73 on.$e).{.$this->errors[].=.'vers
85d20 69 6f 6e 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f ion.:.invalid.value.('.$this->co
85d40 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 2e 27 29 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 nfig['version'].'):.'.$e->getMes
85d60 73 61 67 65 28 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 76 65 72 sage();.unset($this->config['ver
85d80 73 69 6f 6e 27 5d 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 52 65 67 sion']);.}.}..$this->validateReg
85da0 65 78 28 27 74 79 70 65 27 2c 20 27 5b 41 2d 5a 61 2d 7a 30 2d 39 2d 5d 2b 27 29 3b 0a 24 74 68 ex('type',.'[A-Za-z0-9-]+');.$th
85dc0 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 27 74 61 72 67 65 74 2d 64 69 72 27 29 is->validateString('target-dir')
85de0 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 27 65 78 74 72 61 27 29 3b ;.$this->validateArray('extra');
85e00 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 46 6c 61 74 41 72 72 61 79 28 27 62 69 6e 27 29 .$this->validateFlatArray('bin')
85e20 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 27 73 63 72 69 70 74 73 27 ;.$this->validateArray('scripts'
85e40 29 3b 20 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 27 64 65 73 63 );...$this->validateString('desc
85e60 72 69 70 74 69 6f 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 55 72 6c 28 27 68 ription');.$this->validateUrl('h
85e80 6f 6d 65 70 61 67 65 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 46 6c 61 74 41 72 omepage');.$this->validateFlatAr
85ea0 72 61 79 28 27 6b 65 79 77 6f 72 64 73 27 2c 20 27 5b 5c 70 7b 4e 7d 5c 70 7b 4c 7d 20 2e 5f 2d ray('keywords',.'[\p{N}\p{L}.._-
85ec0 5d 2b 27 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 ]+');..if.(isset($this->config['
85ee0 6c 69 63 65 6e 73 65 27 5d 29 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 74 68 69 license'])).{.if.(is_string($thi
85f00 73 2d 3e 63 6f 6e 66 69 67 5b 27 6c 69 63 65 6e 73 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e s->config['license'])).{.$this->
85f20 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 27 6c 69 63 65 6e 73 65 27 2c 20 27 5b 41 2d 5a 61 2d validateRegex('license',.'[A-Za-
85f40 7a 30 2d 39 2b 2e 20 28 29 2d 5d 2b 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e z0-9+..()-]+');.}.else.{.$this->
85f60 76 61 6c 69 64 61 74 65 46 6c 61 74 41 72 72 61 79 28 27 6c 69 63 65 6e 73 65 27 2c 20 27 5b 41 validateFlatArray('license',.'[A
85f80 2d 5a 61 2d 7a 30 2d 39 2b 2e 20 28 29 2d 5d 2b 27 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e -Za-z0-9+..()-]+');.}.}..$this->
85fa0 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 27 74 69 6d 65 27 29 3b 0a 69 66 20 28 21 65 6d 70 validateString('time');.if.(!emp
85fc0 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 74 72 79 ty($this->config['time'])).{.try
85fe0 20 7b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 24 74 68 69 73 2d 3e .{.$date.=.new.\DateTime($this->
86000 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 2c 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 5a 6f 6e config['time'],.new.\DateTimeZon
86020 65 28 27 55 54 43 27 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 e('UTC'));.}.catch.(\Exception.$
86040 65 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 74 69 6d 65 20 3a 20 69 e).{.$this->errors[].=.'time.:.i
86060 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 nvalid.value.('.$this->config['t
86080 69 6d 65 27 5d 2e 27 29 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 3b 0a 75 6e ime'].'):.'.$e->getMessage();.un
860a0 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 29 3b 0a 7d 0a 7d 0a set($this->config['time']);.}.}.
860c0 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 27 61 75 74 68 6f .if.($this->validateArray('autho
860e0 72 73 27 29 20 26 26 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 rs').&&.!empty($this->config['au
86100 74 68 6f 72 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 thors'])).{.foreach.($this->conf
86120 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 61 75 74 68 6f 72 ig['authors'].as.$key.=>.$author
86140 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 61 75 74 68 6f 72 29 29 20 7b 0a 24 74 ).{.if.(!is_array($author)).{.$t
86160 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 6b 65 79 2e his->errors[].=.'authors.'.$key.
86180 27 20 3a 20 73 68 6f 75 6c 64 20 62 65 20 61 6e 20 61 72 72 61 79 2c 20 27 2e 67 65 74 74 79 70 '.:.should.be.an.array,.'.gettyp
861a0 65 28 24 61 75 74 68 6f 72 29 2e 27 20 67 69 76 65 6e 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 e($author).'.given';.unset($this
861c0 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 29 3b 0a 63 6f 6e 74 ->config['authors'][$key]);.cont
861e0 69 6e 75 65 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 68 6f 6d 65 70 61 67 65 inue;.}.foreach.(array('homepage
86200 27 2c 20 27 65 6d 61 69 6c 27 2c 20 27 6e 61 6d 65 27 2c 20 27 72 6f 6c 65 27 29 20 61 73 20 24 ',.'email',.'name',.'role').as.$
86220 61 75 74 68 6f 72 44 61 74 61 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 68 6f 72 5b authorData).{.if.(isset($author[
86240 24 61 75 74 68 6f 72 44 61 74 61 5d 29 20 26 26 20 21 69 73 5f 73 74 72 69 6e 67 28 24 61 75 74 $authorData]).&&.!is_string($aut
86260 68 6f 72 5b 24 61 75 74 68 6f 72 44 61 74 61 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f hor[$authorData])).{.$this->erro
86280 72 73 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 6b 65 79 2e 27 2e 27 2e 24 61 75 74 68 rs[].=.'authors.'.$key.'.'.$auth
862a0 6f 72 44 61 74 61 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 orData.'.:.invalid.value,.must.b
862c0 65 20 61 20 73 74 72 69 6e 67 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 e.a.string';.unset($this->config
862e0 5b 27 61 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 24 61 75 74 68 6f 72 44 61 74 61 5d 29 3b ['authors'][$key][$authorData]);
86300 0a 7d 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 68 6f 72 5b 27 68 6f 6d 65 70 61 67 65 .}.}.if.(isset($author['homepage
86320 27 5d 29 20 26 26 20 21 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 6c 28 24 61 75 74 68 6f 72 ']).&&.!$this->filterUrl($author
86340 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 ['homepage'])).{.$this->warnings
86360 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 6b 65 79 2e 27 2e 68 6f 6d 65 70 61 67 65 20 [].=.'authors.'.$key.'.homepage.
86380 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 61 75 74 68 6f 72 5b 27 68 6f 6d 65 :.invalid.value.('.$author['home
863a0 70 61 67 65 27 5d 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 61 6e 20 68 74 74 70 2f 68 74 74 70 73 page'].'),.must.be.an.http/https
863c0 20 55 52 4c 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 .URL';.unset($this->config['auth
863e0 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 3b 0a 7d 0a 69 66 20 28 ors'][$key]['homepage']);.}.if.(
86400 69 73 73 65 74 28 24 61 75 74 68 6f 72 5b 27 65 6d 61 69 6c 27 5d 29 20 26 26 20 21 66 69 6c 74 isset($author['email']).&&.!filt
86420 65 72 5f 76 61 72 28 24 61 75 74 68 6f 72 5b 27 65 6d 61 69 6c 27 5d 2c 20 46 49 4c 54 45 52 5f er_var($author['email'],.FILTER_
86440 56 41 4c 49 44 41 54 45 5f 45 4d 41 49 4c 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e VALIDATE_EMAIL)).{.$this->warnin
86460 67 73 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 6b 65 79 2e 27 2e 65 6d 61 69 6c 20 3a gs[].=.'authors.'.$key.'.email.:
86480 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 61 75 74 68 6f 72 5b 27 65 6d 61 69 6c .invalid.value.('.$author['email
864a0 27 5d 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 61 20 76 61 6c 69 64 20 65 6d 61 69 6c 20 61 64 64 '].'),.must.be.a.valid.email.add
864c0 72 65 73 73 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 ress';.unset($this->config['auth
864e0 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 27 65 6d 61 69 6c 27 5d 29 3b 0a 7d 0a 69 66 20 28 65 6d 70 ors'][$key]['email']);.}.if.(emp
86500 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 ty($this->config['authors'][$key
86520 5d 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f ])).{.unset($this->config['autho
86540 72 73 27 5d 5b 24 6b 65 79 5d 29 3b 0a 7d 0a 7d 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 rs'][$key]);.}.}.if.(empty($this
86560 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 ->config['authors'])).{.unset($t
86580 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 his->config['authors']);.}.}..if
865a0 20 28 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 27 73 75 70 70 6f 72 74 27 .($this->validateArray('support'
865c0 29 20 26 26 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f ).&&.!empty($this->config['suppo
865e0 72 74 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 69 73 73 75 65 73 27 rt'])).{.foreach.(array('issues'
86600 2c 20 27 66 6f 72 75 6d 27 2c 20 27 77 69 6b 69 27 2c 20 27 73 6f 75 72 63 65 27 2c 20 27 65 6d ,.'forum',.'wiki',.'source',.'em
86620 61 69 6c 27 2c 20 27 69 72 63 27 2c 20 27 64 6f 63 73 27 29 20 61 73 20 24 6b 65 79 29 20 7b 0a ail',.'irc',.'docs').as.$key).{.
86640 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 if.(isset($this->config['support
86660 27 5d 5b 24 6b 65 79 5d 29 20 26 26 20 21 69 73 5f 73 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 63 '][$key]).&&.!is_string($this->c
86680 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 24 6b 65 79 5d 29 29 20 7b 0a 24 74 68 69 73 onfig['support'][$key])).{.$this
866a0 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 73 75 70 70 6f 72 74 2e 27 2e 24 6b 65 79 2e 27 20 3a ->errors[].=.'support.'.$key.'.:
866c0 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 65 20 61 20 73 74 72 69 6e 67 .invalid.value,.must.be.a.string
866e0 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 ';.unset($this->config['support'
86700 5d 5b 24 6b 65 79 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e ][$key]);.}.}..if.(isset($this->
86720 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 65 6d 61 69 6c 27 5d 29 20 26 26 20 21 config['support']['email']).&&.!
86740 66 69 6c 74 65 72 5f 76 61 72 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 filter_var($this->config['suppor
86760 74 27 5d 5b 27 65 6d 61 69 6c 27 5d 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 45 4d t']['email'],.FILTER_VALIDATE_EM
86780 41 49 4c 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 73 75 70 AIL)).{.$this->warnings[].=.'sup
867a0 70 6f 72 74 2e 65 6d 61 69 6c 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 port.email.:.invalid.value.('.$t
867c0 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 65 6d 61 69 6c 27 5d 2e his->config['support']['email'].
867e0 27 29 2c 20 6d 75 73 74 20 62 65 20 61 20 76 61 6c 69 64 20 65 6d 61 69 6c 20 61 64 64 72 65 73 '),.must.be.a.valid.email.addres
86800 73 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 s';.unset($this->config['support
86820 27 5d 5b 27 65 6d 61 69 6c 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 ']['email']);.}..if.(isset($this
86840 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 72 63 27 5d 29 20 26 26 20 21 ->config['support']['irc']).&&.!
86860 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 6c 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 $this->filterUrl($this->config['
86880 73 75 70 70 6f 72 74 27 5d 5b 27 69 72 63 27 5d 2c 20 61 72 72 61 79 28 27 69 72 63 27 29 29 29 support']['irc'],.array('irc')))
868a0 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 73 75 70 70 6f 72 74 2e .{.$this->warnings[].=.'support.
868c0 69 72 63 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f irc.:.invalid.value.('.$this->co
868e0 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 72 63 27 5d 2e 27 29 2c 20 6d 75 73 74 20 nfig['support']['irc'].'),.must.
86900 62 65 20 61 20 69 72 63 3a 2f 2f 3c 73 65 72 76 65 72 3e 2f 3c 63 68 61 6e 6e 65 6c 3e 20 55 52 be.a.irc://<server>/<channel>.UR
86920 4c 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 L';.unset($this->config['support
86940 27 5d 5b 27 69 72 63 27 5d 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 69 ']['irc']);.}..foreach.(array('i
86960 73 73 75 65 73 27 2c 20 27 66 6f 72 75 6d 27 2c 20 27 77 69 6b 69 27 2c 20 27 73 6f 75 72 63 65 ssues',.'forum',.'wiki',.'source
86980 27 2c 20 27 64 6f 63 73 27 29 20 61 73 20 24 6b 65 79 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 ',.'docs').as.$key).{.if.(isset(
869a0 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 24 6b 65 79 5d 29 20 $this->config['support'][$key]).
869c0 26 26 20 21 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 6c 28 24 74 68 69 73 2d 3e 63 6f 6e 66 &&.!$this->filterUrl($this->conf
869e0 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 24 6b 65 79 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 ig['support'][$key])).{.$this->w
86a00 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 73 75 70 70 6f 72 74 2e 27 2e 24 6b 65 79 2e 27 20 3a 20 arnings[].=.'support.'.$key.'.:.
86a20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 invalid.value.('.$this->config['
86a40 73 75 70 70 6f 72 74 27 5d 5b 24 6b 65 79 5d 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 61 6e 20 68 support'][$key].'),.must.be.an.h
86a60 74 74 70 2f 68 74 74 70 73 20 55 52 4c 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e ttp/https.URL';.unset($this->con
86a80 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 24 6b 65 79 5d 29 3b 0a 7d 0a 7d 0a 69 66 20 28 65 fig['support'][$key]);.}.}.if.(e
86aa0 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 29 29 20 mpty($this->config['support'])).
86ac0 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d {.unset($this->config['support']
86ae0 29 3b 0a 7d 0a 7d 0a 0a 24 75 6e 62 6f 75 6e 64 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 );.}.}..$unboundConstraint.=.new
86b00 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 .Constraint('=',.$this->versionP
86b20 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 27 64 65 76 2d 6d 61 73 74 65 72 27 29 29 3b arser->normalize('dev-master'));
86b40 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6b 65 79 73 28 42 61 73 65 50 61 63 6b 61 67 ..foreach.(array_keys(BasePackag
86b60 65 3a 3a 24 73 75 70 70 6f 72 74 65 64 4c 69 6e 6b 54 79 70 65 73 29 20 61 73 20 24 6c 69 6e 6b e::$supportedLinkTypes).as.$link
86b80 54 79 70 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 Type).{.if.($this->validateArray
86ba0 28 24 6c 69 6e 6b 54 79 70 65 29 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 ($linkType).&&.isset($this->conf
86bc0 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 ig[$linkType])).{.foreach.($this
86be0 2d 3e 63 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 20 61 73 20 24 70 61 63 6b 61 67 65 20 ->config[$linkType].as.$package.
86c00 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 =>.$constraint).{.if.(!preg_matc
86c20 68 28 27 7b 5e 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2f 2d 5d 2b 24 7d 27 2c 20 24 70 61 63 6b 61 h('{^[A-Za-z0-9_./-]+$}',.$packa
86c40 67 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 24 6c 69 6e 6b ge)).{.$this->warnings[].=.$link
86c60 54 79 70 65 2e 27 2e 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 6b 65 Type.'.'.$package.'.:.invalid.ke
86c80 79 2c 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 73 20 6d 75 73 74 20 62 65 20 73 74 72 69 6e 67 73 y,.package.names.must.be.strings
86ca0 20 63 6f 6e 74 61 69 6e 69 6e 67 20 6f 6e 6c 79 20 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2f 2d 5d .containing.only.[A-Za-z0-9_./-]
86cc0 27 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 73 74 72 69 6e 67 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 ';.}.if.(!is_string($constraint)
86ce0 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 6c 69 6e 6b 54 79 70 65 2e ).{.$this->errors[].=.$linkType.
86d00 27 2e 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 '.'.$package.'.:.invalid.value,.
86d20 6d 75 73 74 20 62 65 20 61 20 73 74 72 69 6e 67 20 63 6f 6e 74 61 69 6e 69 6e 67 20 61 20 76 65 must.be.a.string.containing.a.ve
86d40 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e rsion.constraint';.unset($this->
86d60 63 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 5b 24 70 61 63 6b 61 67 65 5d 29 3b 0a 7d 20 config[$linkType][$package]);.}.
86d80 65 6c 73 65 69 66 20 28 27 73 65 6c 66 2e 76 65 72 73 69 6f 6e 27 20 21 3d 3d 20 24 63 6f 6e 73 elseif.('self.version'.!==.$cons
86da0 74 72 61 69 6e 74 29 20 7b 0a 74 72 79 20 7b 0a 24 6c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 20 traint).{.try.{.$linkConstraint.
86dc0 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e =.$this->versionParser->parseCon
86de0 73 74 72 61 69 6e 74 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 20 63 61 74 63 68 20 28 straints($constraint);.}.catch.(
86e00 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d \Exception.$e).{.$this->errors[]
86e20 20 3d 20 24 6c 69 6e 6b 54 79 70 65 2e 27 2e 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 3a 20 69 6e .=.$linkType.'.'.$package.'.:.in
86e40 76 61 6c 69 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 20 28 27 2e 24 65 2d 3e valid.version.constraint.('.$e->
86e60 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 getMessage().')';.unset($this->c
86e80 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 5b 24 70 61 63 6b 61 67 65 5d 29 3b 0a 63 6f 6e onfig[$linkType][$package]);.con
86ea0 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 0a 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 tinue;.}....if.(.($this->flags.&
86ec0 20 73 65 6c 66 3a 3a 43 48 45 43 4b 5f 55 4e 42 4f 55 4e 44 5f 43 4f 4e 53 54 52 41 49 4e 54 53 .self::CHECK_UNBOUND_CONSTRAINTS
86ee0 29 0a 26 26 20 27 72 65 71 75 69 72 65 27 20 3d 3d 3d 20 24 6c 69 6e 6b 54 79 70 65 0a 26 26 20 ).&&.'require'.===.$linkType.&&.
86f00 24 6c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 75 6e 62 6f 75 6e $linkConstraint->matches($unboun
86f20 64 43 6f 6e 73 74 72 61 69 6e 74 29 0a 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 50 6c 61 74 dConstraint).&&.!preg_match(Plat
86f40 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3a 3a 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 formRepository::PLATFORM_PACKAGE
86f60 5f 52 45 47 45 58 2c 20 24 70 61 63 6b 61 67 65 29 0a 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 _REGEX,.$package).).{.$this->war
86f80 6e 69 6e 67 73 5b 5d 20 3d 20 24 6c 69 6e 6b 54 79 70 65 2e 27 2e 27 2e 24 70 61 63 6b 61 67 65 nings[].=.$linkType.'.'.$package
86fa0 2e 27 20 3a 20 75 6e 62 6f 75 6e 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 73 .'.:.unbound.version.constraints
86fc0 20 28 27 2e 24 63 6f 6e 73 74 72 61 69 6e 74 2e 27 29 20 73 68 6f 75 6c 64 20 62 65 20 61 76 6f .('.$constraint.').should.be.avo
86fe0 69 64 65 64 27 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 61 6c ided';.}.}.}.}.}..if.($this->val
87000 69 64 61 74 65 41 72 72 61 79 28 27 73 75 67 67 65 73 74 27 29 20 26 26 20 21 65 6d 70 74 79 28 idateArray('suggest').&&.!empty(
87020 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 29 29 20 7b 0a 66 6f 72 $this->config['suggest'])).{.for
87040 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 20 61 each.($this->config['suggest'].a
87060 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 64 65 73 63 72 69 70 74 69 6f 6e 29 20 7b 0a 69 66 s.$package.=>.$description).{.if
87080 20 28 21 69 73 5f 73 74 72 69 6e 67 28 24 64 65 73 63 72 69 70 74 69 6f 6e 29 29 20 7b 0a 24 74 .(!is_string($description)).{.$t
870a0 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 73 75 67 67 65 73 74 2e 27 2e 24 70 61 63 6b his->errors[].=.'suggest.'.$pack
870c0 61 67 65 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 65 20 61 age.'.:.invalid.value,.must.be.a
870e0 20 73 74 72 69 6e 67 20 64 65 73 63 72 69 62 69 6e 67 20 77 68 79 20 74 68 65 20 70 61 63 6b 61 .string.describing.why.the.packa
87100 67 65 20 69 73 20 73 75 67 67 65 73 74 65 64 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 ge.is.suggested';.unset($this->c
87120 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 5b 24 70 61 63 6b 61 67 65 5d 29 3b 0a 7d 0a 7d onfig['suggest'][$package]);.}.}
87140 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 27 6d .}..if.($this->validateString('m
87160 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 29 20 26 26 20 21 65 6d 70 74 79 28 24 74 68 inimum-stability').&&.!empty($th
87180 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 is->config['minimum-stability'])
871a0 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 ).{.if.(!isset(BasePackage::$sta
871c0 62 69 6c 69 74 69 65 73 5b 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 6d 69 6e 69 6d 75 6d 2d bilities[$this->config['minimum-
871e0 73 74 61 62 69 6c 69 74 79 27 5d 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d stability']])).{.$this->errors[]
87200 20 3d 20 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 20 3a 20 69 6e 76 61 6c 69 64 20 .=.'minimum-stability.:.invalid.
87220 76 61 6c 75 65 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 6d 69 6e 69 6d 75 6d 2d value.('.$this->config['minimum-
87240 73 74 61 62 69 6c 69 74 79 27 5d 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 6f 6e 65 20 6f 66 20 27 stability'].'),.must.be.one.of.'
87260 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 42 61 73 65 50 61 .implode(',.',.array_keys(BasePa
87280 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 29 29 3b 0a 75 6e 73 65 74 28 24 74 68 ckage::$stabilities));.unset($th
872a0 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 is->config['minimum-stability'])
872c0 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 ;.}.}..if.($this->validateArray(
872e0 27 61 75 74 6f 6c 6f 61 64 27 29 20 26 26 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 'autoload').&&.!empty($this->con
87300 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 29 29 20 7b 0a 24 74 79 70 65 73 20 3d 20 61 72 72 fig['autoload'])).{.$types.=.arr
87320 61 79 28 27 70 73 72 2d 30 27 2c 20 27 70 73 72 2d 34 27 2c 20 27 63 6c 61 73 73 6d 61 70 27 2c ay('psr-0',.'psr-4',.'classmap',
87340 20 27 66 69 6c 65 73 27 2c 20 27 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 .'files',.'exclude-from-classmap
87360 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 6f ');.foreach.($this->config['auto
87380 6c 6f 61 64 27 5d 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 74 79 70 65 43 6f 6e 66 69 67 29 20 load'].as.$type.=>.$typeConfig).
873a0 7b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 74 79 70 65 2c 20 24 74 79 70 65 73 29 29 20 {.if.(!in_array($type,.$types)).
873c0 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 61 75 74 6f 6c 6f 61 64 20 3a 20 {.$this->errors[].=.'autoload.:.
873e0 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 79 70 65 2e 27 29 2c 20 6d 75 73 74 20 invalid.value.('.$type.'),.must.
87400 62 65 20 6f 6e 65 20 6f 66 20 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 74 79 70 65 73 be.one.of.'.implode(',.',.$types
87420 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 );.unset($this->config['autoload
87440 27 5d 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 70 73 72 '][$type]);.}.if.($type.===.'psr
87460 2d 34 27 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 79 70 65 43 6f 6e 66 69 67 20 61 73 20 24 -4').{.foreach.($typeConfig.as.$
87480 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 64 69 72 73 29 20 7b 0a 69 66 20 28 24 6e 61 6d 65 73 namespace.=>.$dirs).{.if.($names
874a0 70 61 63 65 20 21 3d 3d 20 27 27 20 26 26 20 27 5c 5c 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 pace.!==.''.&&.'\\'.!==.substr($
874c0 6e 61 6d 65 73 70 61 63 65 2c 20 2d 31 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b namespace,.-1)).{.$this->errors[
874e0 5d 20 3d 20 27 61 75 74 6f 6c 6f 61 64 2e 70 73 72 2d 34 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 ].=.'autoload.psr-4.:.invalid.va
87500 6c 75 65 20 28 27 2e 24 6e 61 6d 65 73 70 61 63 65 2e 27 29 2c 20 6e 61 6d 65 73 70 61 63 65 73 lue.('.$namespace.'),.namespaces
87520 20 6d 75 73 74 20 65 6e 64 20 77 69 74 68 20 61 20 6e 61 6d 65 73 70 61 63 65 20 73 65 70 61 72 .must.end.with.a.namespace.separ
87540 61 74 6f 72 2c 20 73 68 6f 75 6c 64 20 62 65 20 27 2e 24 6e 61 6d 65 73 70 61 63 65 2e 27 5c 5c ator,.should.be.'.$namespace.'\\
87560 5c 5c 27 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 \\';.}.}.}.}.}..if.(!empty($this
87580 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 5b 27 70 73 72 2d 34 27 5d 29 20 26 ->config['autoload']['psr-4']).&
875a0 26 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 61 72 67 65 74 2d 64 &.!empty($this->config['target-d
875c0 69 72 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 74 61 72 67 ir'])).{.$this->errors[].=.'targ
875e0 65 74 2d 64 69 72 20 3a 20 74 68 69 73 20 63 61 6e 20 6e 6f 74 20 62 65 20 75 73 65 64 20 74 6f et-dir.:.this.can.not.be.used.to
87600 67 65 74 68 65 72 20 77 69 74 68 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 2e 70 73 72 2d 34 20 73 gether.with.the.autoload.psr-4.s
87620 65 74 74 69 6e 67 2c 20 72 65 6d 6f 76 65 20 74 61 72 67 65 74 2d 64 69 72 20 74 6f 20 75 70 67 etting,.remove.target-dir.to.upg
87640 72 61 64 65 20 74 6f 20 70 73 72 2d 34 27 3b 0a 0a 20 0a 20 75 6e 73 65 74 28 24 74 68 69 73 2d rade.to.psr-4';.....unset($this-
87660 3e 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 5b 27 70 73 72 2d 34 27 5d 29 3b 0a 7d >config['autoload']['psr-4']);.}
87680 0a 0a 0a 20 0a 0a 0a 20 0a 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 46 6c 61 74 41 72 72 ..........$this->validateFlatArr
876a0 61 79 28 27 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 ay('include-path');.$this->valid
876c0 61 74 65 41 72 72 61 79 28 27 74 72 61 6e 73 70 6f 72 74 2d 6f 70 74 69 6f 6e 73 27 29 3b 0a 0a ateArray('transport-options');..
876e0 0a 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 ..if.(isset($this->config['extra
87700 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 ']['branch-alias'])).{.if.(!is_a
87720 72 72 61 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 rray($this->config['extra']['bra
87740 6e 63 68 2d 61 6c 69 61 73 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 nch-alias'])).{.$this->errors[].
87760 3d 20 27 65 78 74 72 61 2e 62 72 61 6e 63 68 2d 61 6c 69 61 73 20 3a 20 6d 75 73 74 20 62 65 20 =.'extra.branch-alias.:.must.be.
87780 61 6e 20 61 72 72 61 79 20 6f 66 20 76 65 72 73 69 6f 6e 73 20 3d 3e 20 61 6c 69 61 73 65 73 27 an.array.of.versions.=>.aliases'
877a0 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 ;.}.else.{.foreach.($this->confi
877c0 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 20 61 73 20 24 73 g['extra']['branch-alias'].as.$s
877e0 6f 75 72 63 65 42 72 61 6e 63 68 20 3d 3e 20 24 74 61 72 67 65 74 42 72 61 6e 63 68 29 20 7b 0a ourceBranch.=>.$targetBranch).{.
87800 0a 20 69 66 20 28 27 2d 64 65 76 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 74 61 72 67 65 74 42 ..if.('-dev'.!==.substr($targetB
87820 72 61 6e 63 68 2c 20 2d 34 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 ranch,.-4)).{.$this->warnings[].
87840 3d 20 27 65 78 74 72 61 2e 62 72 61 6e 63 68 2d 61 6c 69 61 73 2e 27 2e 24 73 6f 75 72 63 65 42 =.'extra.branch-alias.'.$sourceB
87860 72 61 6e 63 68 2e 27 20 3a 20 74 68 65 20 74 61 72 67 65 74 20 62 72 61 6e 63 68 20 28 27 2e 24 ranch.'.:.the.target.branch.('.$
87880 74 61 72 67 65 74 42 72 61 6e 63 68 2e 27 29 20 6d 75 73 74 20 65 6e 64 20 69 6e 20 2d 64 65 76 targetBranch.').must.end.in.-dev
878a0 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b ';.unset($this->config['extra'][
878c0 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 5b 24 73 6f 75 72 63 65 42 72 61 6e 63 68 5d 29 3b 'branch-alias'][$sourceBranch]);
878e0 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 24 76 61 6c 69 64 61 74 65 64 54 61 72 67 65 ..continue;.}....$validatedTarge
87900 74 42 72 61 6e 63 68 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e tBranch.=.$this->versionParser->
87920 6e 6f 72 6d 61 6c 69 7a 65 42 72 61 6e 63 68 28 73 75 62 73 74 72 28 24 74 61 72 67 65 74 42 72 normalizeBranch(substr($targetBr
87940 61 6e 63 68 2c 20 30 2c 20 2d 34 29 29 3b 0a 69 66 20 28 27 2d 64 65 76 27 20 21 3d 3d 20 73 75 anch,.0,.-4));.if.('-dev'.!==.su
87960 62 73 74 72 28 24 76 61 6c 69 64 61 74 65 64 54 61 72 67 65 74 42 72 61 6e 63 68 2c 20 2d 34 29 bstr($validatedTargetBranch,.-4)
87980 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 65 78 74 72 61 2e 62 ).{.$this->warnings[].=.'extra.b
879a0 72 61 6e 63 68 2d 61 6c 69 61 73 2e 27 2e 24 73 6f 75 72 63 65 42 72 61 6e 63 68 2e 27 20 3a 20 ranch-alias.'.$sourceBranch.'.:.
879c0 74 68 65 20 74 61 72 67 65 74 20 62 72 61 6e 63 68 20 28 27 2e 24 74 61 72 67 65 74 42 72 61 6e the.target.branch.('.$targetBran
879e0 63 68 2e 27 29 20 6d 75 73 74 20 62 65 20 61 20 70 61 72 73 65 61 62 6c 65 20 6e 75 6d 62 65 72 ch.').must.be.a.parseable.number
87a00 20 6c 69 6b 65 20 32 2e 30 2d 64 65 76 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e .like.2.0-dev';.unset($this->con
87a20 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 5b 24 73 6f fig['extra']['branch-alias'][$so
87a40 75 72 63 65 42 72 61 6e 63 68 5d 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 urceBranch]);..continue;.}....if
87a60 20 28 28 24 73 6f 75 72 63 65 50 72 65 66 69 78 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f .(($sourcePrefix.=.$this->versio
87a80 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 4e 75 6d 65 72 69 63 41 6c 69 61 73 50 72 65 66 69 78 nParser->parseNumericAliasPrefix
87aa0 28 24 73 6f 75 72 63 65 42 72 61 6e 63 68 29 29 0a 26 26 20 28 24 74 61 72 67 65 74 50 72 65 66 ($sourceBranch)).&&.($targetPref
87ac0 69 78 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 ix.=.$this->versionParser->parse
87ae0 4e 75 6d 65 72 69 63 41 6c 69 61 73 50 72 65 66 69 78 28 24 74 61 72 67 65 74 42 72 61 6e 63 68 NumericAliasPrefix($targetBranch
87b00 29 29 0a 26 26 20 28 73 74 72 69 70 6f 73 28 24 74 61 72 67 65 74 50 72 65 66 69 78 2c 20 24 73 )).&&.(stripos($targetPrefix,.$s
87b20 6f 75 72 63 65 50 72 65 66 69 78 29 20 21 3d 3d 20 30 29 0a 29 20 7b 0a 24 74 68 69 73 2d 3e 77 ourcePrefix).!==.0).).{.$this->w
87b40 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 65 78 74 72 61 2e 62 72 61 6e 63 68 2d 61 6c 69 61 73 2e arnings[].=.'extra.branch-alias.
87b60 27 2e 24 73 6f 75 72 63 65 42 72 61 6e 63 68 2e 27 20 3a 20 74 68 65 20 74 61 72 67 65 74 20 62 '.$sourceBranch.'.:.the.target.b
87b80 72 61 6e 63 68 20 28 27 2e 24 74 61 72 67 65 74 42 72 61 6e 63 68 2e 27 29 20 69 73 20 6e 6f 74 ranch.('.$targetBranch.').is.not
87ba0 20 61 20 76 61 6c 69 64 20 6e 75 6d 65 72 69 63 20 61 6c 69 61 73 20 66 6f 72 20 74 68 69 73 20 .a.valid.numeric.alias.for.this.
87bc0 76 65 72 73 69 6f 6e 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 65 version';.unset($this->config['e
87be0 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 5b 24 73 6f 75 72 63 65 42 72 xtra']['branch-alias'][$sourceBr
87c00 61 6e 63 68 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 72 72 6f anch]);.}.}.}.}..if.($this->erro
87c20 72 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 50 61 63 6b 61 67 65 45 78 rs).{.throw.new.InvalidPackageEx
87c40 63 65 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 2c 20 24 74 68 69 73 2d 3e 77 61 ception($this->errors,.$this->wa
87c60 72 6e 69 6e 67 73 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 rnings,.$config);.}..$package.=.
87c80 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 $this->loader->load($this->confi
87ca0 67 2c 20 24 63 6c 61 73 73 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c g,.$class);.$this->config.=.null
87cc0 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 ;..return.$package;.}..public.fu
87ce0 6e 63 74 69 6f 6e 20 67 65 74 57 61 72 6e 69 6e 67 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 nction.getWarnings().{.return.$t
87d00 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f his->warnings;.}..public.functio
87d20 6e 20 67 65 74 45 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 72 n.getErrors().{.return.$this->er
87d40 72 6f 72 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 rors;.}..private.function.valida
87d60 74 65 52 65 67 65 78 28 24 70 72 6f 70 65 72 74 79 2c 20 24 72 65 67 65 78 2c 20 24 6d 61 6e 64 teRegex($property,.$regex,.$mand
87d80 61 74 6f 72 79 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c atory.=.false).{.if.(!$this->val
87da0 69 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 idateString($property,.$mandator
87dc0 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 70 72 65 67 y)).{.return.false;.}..if.(!preg
87de0 5f 6d 61 74 63 68 28 27 7b 5e 27 2e 24 72 65 67 65 78 2e 27 24 7d 75 27 2c 20 24 74 68 69 73 2d _match('{^'.$regex.'$}u',.$this-
87e00 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 >config[$property])).{.$message.
87e20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 =.$property.'.:.invalid.value.('
87e40 2e 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 2e 27 29 2c 20 6d 75 .$this->config[$property].'),.mu
87e60 73 74 20 6d 61 74 63 68 20 27 2e 24 72 65 67 65 78 3b 0a 69 66 20 28 24 6d 61 6e 64 61 74 6f 72 st.match.'.$regex;.if.($mandator
87e80 79 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 6d 65 73 73 61 67 65 3b y).{.$this->errors[].=.$message;
87ea0 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 24 6d .}.else.{.$this->warnings[].=.$m
87ec0 65 73 73 61 67 65 3b 0a 7d 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 essage;.}.unset($this->config[$p
87ee0 72 6f 70 65 72 74 79 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 roperty]);..return.false;.}..ret
87f00 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 urn.true;.}..private.function.va
87f20 6c 69 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f lidateString($property,.$mandato
87f40 72 79 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 ry.=.false).{.if.(isset($this->c
87f60 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 26 26 20 21 69 73 5f 73 74 72 69 6e 67 28 onfig[$property]).&&.!is_string(
87f80 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 29 20 7b 0a 24 74 68 $this->config[$property])).{.$th
87fa0 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 73 68 6f is->errors[].=.$property.'.:.sho
87fc0 75 6c 64 20 62 65 20 61 20 73 74 72 69 6e 67 2c 20 27 2e 67 65 74 74 79 70 65 28 24 74 68 69 73 uld.be.a.string,.'.gettype($this
87fe0 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 2e 27 20 67 69 76 65 6e 27 3b 0a 75 ->config[$property]).'.given';.u
88000 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 3b 0a nset($this->config[$property]);.
88020 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 .return.false;.}..if.(!isset($th
88040 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 7c 7c 20 74 72 69 6d 28 24 is->config[$property]).||.trim($
88060 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 3d 3d 3d 20 27 27 29 this->config[$property]).===.'')
88080 20 7b 0a 69 66 20 28 24 6d 61 6e 64 61 74 6f 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f .{.if.($mandatory).{.$this->erro
880a0 72 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 6d 75 73 74 20 62 65 20 70 72 65 rs[].=.$property.'.:.must.be.pre
880c0 73 65 6e 74 27 3b 0a 7d 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 sent';.}.unset($this->config[$pr
880e0 6f 70 65 72 74 79 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 operty]);..return.false;.}..retu
88100 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c rn.true;.}..private.function.val
88120 69 64 61 74 65 41 72 72 61 79 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 idateArray($property,.$mandatory
88140 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e .=.false).{.if.(isset($this->con
88160 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 26 26 20 21 69 73 5f 61 72 72 61 79 28 24 74 68 fig[$property]).&&.!is_array($th
88180 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 29 20 7b 0a 24 74 68 69 73 2d is->config[$property])).{.$this-
881a0 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 73 68 6f 75 6c 64 >errors[].=.$property.'.:.should
881c0 20 62 65 20 61 6e 20 61 72 72 61 79 2c 20 27 2e 67 65 74 74 79 70 65 28 24 74 68 69 73 2d 3e 63 .be.an.array,.'.gettype($this->c
881e0 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 2e 27 20 67 69 76 65 6e 27 3b 0a 75 6e 73 65 onfig[$property]).'.given';.unse
88200 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 3b 0a 0a 72 65 t($this->config[$property]);..re
88220 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d turn.false;.}..if.(!isset($this-
88240 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 7c 7c 20 21 63 6f 75 6e 74 28 24 74 >config[$property]).||.!count($t
88260 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 29 20 7b 0a 69 66 20 28 24 his->config[$property])).{.if.($
88280 6d 61 6e 64 61 74 6f 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 mandatory).{.$this->errors[].=.$
882a0 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 6d 75 73 74 20 62 65 20 70 72 65 73 65 6e 74 20 61 6e 64 property.'.:.must.be.present.and
882c0 20 63 6f 6e 74 61 69 6e 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 20 65 6c 65 6d 65 6e 74 27 3b 0a .contain.at.least.one.element';.
882e0 7d 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d }.unset($this->config[$property]
88300 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 );..return.false;.}..return.true
88320 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 46 6c ;.}..private.function.validateFl
88340 61 74 41 72 72 61 79 28 24 70 72 6f 70 65 72 74 79 2c 20 24 72 65 67 65 78 20 3d 20 6e 75 6c 6c atArray($property,.$regex.=.null
88360 2c 20 24 6d 61 6e 64 61 74 6f 72 79 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 ,.$mandatory.=.false).{.if.(!$th
88380 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 is->validateArray($property,.$ma
883a0 6e 64 61 74 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 61 ndatory)).{.return.false;.}..$pa
883c0 73 73 20 3d 20 74 72 75 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 ss.=.true;.foreach.($this->confi
883e0 67 5b 24 70 72 6f 70 65 72 74 79 5d 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 g[$property].as.$key.=>.$value).
88400 7b 0a 69 66 20 28 21 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 20 26 26 20 21 69 73 5f {.if.(!is_string($value).&&.!is_
88420 6e 75 6d 65 72 69 63 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 numeric($value)).{.$this->errors
88440 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 2e 27 2e 24 6b 65 79 2e 27 20 3a 20 6d 75 73 74 [].=.$property.'.'.$key.'.:.must
88460 20 62 65 20 61 20 73 74 72 69 6e 67 20 6f 72 20 69 6e 74 2c 20 27 2e 67 65 74 74 79 70 65 28 24 .be.a.string.or.int,.'.gettype($
88480 76 61 6c 75 65 29 2e 27 20 67 69 76 65 6e 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f value).'.given';.unset($this->co
884a0 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 5b 24 6b 65 79 5d 29 3b 0a 24 70 61 73 73 20 3d 20 nfig[$property][$key]);.$pass.=.
884c0 66 61 6c 73 65 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 72 65 67 65 78 20 false;..continue;.}..if.($regex.
884e0 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 27 2e 24 72 65 67 65 78 2e 27 24 7d 75 27 &&.!preg_match('{^'.$regex.'$}u'
88500 2c 20 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d ,.$value)).{.$this->warnings[].=
88520 20 24 70 72 6f 70 65 72 74 79 2e 27 2e 27 2e 24 6b 65 79 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 .$property.'.'.$key.'.:.invalid.
88540 76 61 6c 75 65 20 28 27 2e 24 76 61 6c 75 65 2e 27 29 2c 20 6d 75 73 74 20 6d 61 74 63 68 20 27 value.('.$value.'),.must.match.'
88560 2e 24 72 65 67 65 78 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 .$regex;.unset($this->config[$pr
88580 6f 70 65 72 74 79 5d 5b 24 6b 65 79 5d 29 3b 0a 24 70 61 73 73 20 3d 20 66 61 6c 73 65 3b 0a 7d operty][$key]);.$pass.=.false;.}
885a0 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 73 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e .}..return.$pass;.}..private.fun
885c0 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 55 72 6c 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 ction.validateUrl($property,.$ma
885e0 6e 64 61 74 6f 72 79 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 ndatory.=.false).{.if.(!$this->v
88600 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 alidateString($property,.$mandat
88620 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 ory)).{.return.false;.}..if.(!$t
88640 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 6c 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 his->filterUrl($this->config[$pr
88660 6f 70 65 72 74 79 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 operty])).{.$this->warnings[].=.
88680 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 $property.'.:.invalid.value.('.$
886a0 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 2e 27 29 2c 20 6d 75 73 74 this->config[$property].'),.must
886c0 20 62 65 20 61 6e 20 68 74 74 70 2f 68 74 74 70 73 20 55 52 4c 27 3b 0a 75 6e 73 65 74 28 24 74 .be.an.http/https.URL';.unset($t
886e0 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 3b 0a 0a 72 65 74 75 72 6e his->config[$property]);..return
88700 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 .false;.}..return.true;.}..priva
88720 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 74 65 72 55 72 6c 28 24 76 61 6c 75 65 2c 20 61 72 te.function.filterUrl($value,.ar
88740 72 61 79 20 24 73 63 68 65 6d 65 73 20 3d 20 61 72 72 61 79 28 27 68 74 74 70 27 2c 20 27 68 74 ray.$schemes.=.array('http',.'ht
88760 74 70 73 27 29 29 0a 7b 0a 69 66 20 28 24 76 61 6c 75 65 20 3d 3d 3d 20 27 27 29 20 7b 0a 72 65 tps')).{.if.($value.===.'').{.re
88780 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 62 69 74 73 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 turn.true;.}..$bits.=.parse_url(
887a0 24 76 61 6c 75 65 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 62 69 74 73 5b 27 73 63 68 65 6d 65 $value);.if.(empty($bits['scheme
887c0 27 5d 29 20 7c 7c 20 65 6d 70 74 79 28 24 62 69 74 73 5b 27 68 6f 73 74 27 5d 29 29 20 7b 0a 72 ']).||.empty($bits['host'])).{.r
887e0 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 62 eturn.false;.}..if.(!in_array($b
88800 69 74 73 5b 27 73 63 68 65 6d 65 27 5d 2c 20 24 73 63 68 65 6d 65 73 2c 20 74 72 75 65 29 29 20 its['scheme'],.$schemes,.true)).
88820 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a {.return.false;.}..return.true;.
88840 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 }.}.<?php............namespace.C
88860 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a omposer\Package;..use.Composer\J
88880 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 son\JsonFile;.use.Composer\Insta
888a0 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f ller\InstallationManager;.use.Co
888c0 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 mposer\Repository\RepositoryMana
888e0 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 ger;.use.Composer\Util\ProcessEx
88900 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c ecutor;.use.Composer\Repository\
88920 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 ArrayRepository;.use.Composer\Pa
88940 63 6b 61 67 65 5c 44 75 6d 70 65 72 5c 41 72 72 61 79 44 75 6d 70 65 72 3b 0a 75 73 65 20 43 6f ckage\Dumper\ArrayDumper;.use.Co
88960 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 mposer\Package\Loader\ArrayLoade
88980 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 47 69 74 20 61 73 20 47 69 74 55 r;.use.Composer\Util\Git.as.GitU
889a0 74 69 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 til;.use.Composer\IO\IOInterface
889c0 3b 0a 75 73 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 5c 50 61 72 73 69 6e 67 45 78 63 65 70 ;.use.Seld\JsonLint\ParsingExcep
889e0 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 6f 63 6b 65 72 0a 7b 0a 70 72 69 76 tion;........class.Locker.{.priv
88a00 61 74 65 20 24 6c 6f 63 6b 46 69 6c 65 3b 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 73 69 74 6f ate.$lockFile;.private.$reposito
88a20 72 79 4d 61 6e 61 67 65 72 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e ryManager;.private.$installation
88a40 4d 61 6e 61 67 65 72 3b 0a 70 72 69 76 61 74 65 20 24 68 61 73 68 3b 0a 70 72 69 76 61 74 65 20 Manager;.private.$hash;.private.
88a60 24 63 6f 6e 74 65 6e 74 48 61 73 68 3b 0a 70 72 69 76 61 74 65 20 24 6c 6f 61 64 65 72 3b 0a 70 $contentHash;.private.$loader;.p
88a80 72 69 76 61 74 65 20 24 64 75 6d 70 65 72 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 rivate.$dumper;.private.$process
88aa0 3b 0a 70 72 69 76 61 74 65 20 24 6c 6f 63 6b 44 61 74 61 43 61 63 68 65 3b 0a 0a 0a 0a 0a 0a 0a ;.private.$lockDataCache;.......
88ac0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 ....public.function.__construct(
88ae0 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 4a 73 6f 6e 46 69 6c 65 20 24 6c 6f 63 6b 46 IOInterface.$io,.JsonFile.$lockF
88b00 69 6c 65 2c 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 72 65 70 6f 73 69 74 6f ile,.RepositoryManager.$reposito
88b20 72 79 4d 61 6e 61 67 65 72 2c 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 ryManager,.InstallationManager.$
88b40 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 24 63 6f 6d 70 6f 73 65 72 46 69 installationManager,.$composerFi
88b60 6c 65 43 6f 6e 74 65 6e 74 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 20 3d 20 leContents).{.$this->lockFile.=.
88b80 24 6c 6f 63 6b 46 69 6c 65 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 $lockFile;.$this->repositoryMana
88ba0 67 65 72 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d ger.=.$repositoryManager;.$this-
88bc0 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 3d 20 24 69 6e 73 74 61 6c 6c 61 >installationManager.=.$installa
88be0 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 68 61 73 68 20 3d 20 6d 64 35 28 24 tionManager;.$this->hash.=.md5($
88c00 63 6f 6d 70 6f 73 65 72 46 69 6c 65 43 6f 6e 74 65 6e 74 73 29 3b 0a 24 74 68 69 73 2d 3e 63 6f composerFileContents);.$this->co
88c20 6e 74 65 6e 74 48 61 73 68 20 3d 20 73 65 6c 66 3a 3a 67 65 74 43 6f 6e 74 65 6e 74 48 61 73 68 ntentHash.=.self::getContentHash
88c40 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 43 6f 6e 74 65 6e 74 73 29 3b 0a 24 74 68 69 73 2d 3e ($composerFileContents);.$this->
88c60 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 6e 75 6c 6c 2c 20 74 loader.=.new.ArrayLoader(null,.t
88c80 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 64 75 6d 70 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 44 rue);.$this->dumper.=.new.ArrayD
88ca0 75 6d 70 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 50 72 umper();.$this->process.=.new.Pr
88cc0 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ocessExecutor($io);.}.........pu
88ce0 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 48 blic.static.function.getContentH
88d00 61 73 68 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 43 6f 6e 74 65 6e 74 73 29 0a 7b 0a 24 63 6f ash($composerFileContents).{.$co
88d20 6e 74 65 6e 74 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c ntent.=.json_decode($composerFil
88d40 65 43 6f 6e 74 65 6e 74 73 2c 20 74 72 75 65 29 3b 0a 0a 24 72 65 6c 65 76 61 6e 74 4b 65 79 73 eContents,.true);..$relevantKeys
88d60 20 3d 20 61 72 72 61 79 28 0a 27 6e 61 6d 65 27 2c 0a 27 76 65 72 73 69 6f 6e 27 2c 0a 27 72 65 .=.array(.'name',.'version',.'re
88d80 71 75 69 72 65 27 2c 0a 27 72 65 71 75 69 72 65 2d 64 65 76 27 2c 0a 27 63 6f 6e 66 6c 69 63 74 quire',.'require-dev',.'conflict
88da0 27 2c 0a 27 72 65 70 6c 61 63 65 27 2c 0a 27 70 72 6f 76 69 64 65 27 2c 0a 27 6d 69 6e 69 6d 75 ',.'replace',.'provide',.'minimu
88dc0 6d 2d 73 74 61 62 69 6c 69 74 79 27 2c 0a 27 70 72 65 66 65 72 2d 73 74 61 62 6c 65 27 2c 0a 27 m-stability',.'prefer-stable',.'
88de0 72 65 70 6f 73 69 74 6f 72 69 65 73 27 2c 0a 27 65 78 74 72 61 27 2c 0a 29 3b 0a 0a 24 72 65 6c repositories',.'extra',.);..$rel
88e00 65 76 61 6e 74 43 6f 6e 74 65 6e 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 evantContent.=.array();..foreach
88e20 20 28 61 72 72 61 79 5f 69 6e 74 65 72 73 65 63 74 28 24 72 65 6c 65 76 61 6e 74 4b 65 79 73 2c .(array_intersect($relevantKeys,
88e40 20 61 72 72 61 79 5f 6b 65 79 73 28 24 63 6f 6e 74 65 6e 74 29 29 20 61 73 20 24 6b 65 79 29 20 .array_keys($content)).as.$key).
88e60 7b 0a 24 72 65 6c 65 76 61 6e 74 43 6f 6e 74 65 6e 74 5b 24 6b 65 79 5d 20 3d 20 24 63 6f 6e 74 {.$relevantContent[$key].=.$cont
88e80 65 6e 74 5b 24 6b 65 79 5d 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 74 65 6e 74 5b ent[$key];.}.if.(isset($content[
88ea0 27 63 6f 6e 66 69 67 27 5d 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 29 29 20 7b 0a 24 72 65 6c 65 76 'config']['platform'])).{.$relev
88ec0 61 6e 74 43 6f 6e 74 65 6e 74 5b 27 63 6f 6e 66 69 67 27 5d 5b 27 70 6c 61 74 66 6f 72 6d 27 5d antContent['config']['platform']
88ee0 20 3d 20 24 63 6f 6e 74 65 6e 74 5b 27 63 6f 6e 66 69 67 27 5d 5b 27 70 6c 61 74 66 6f 72 6d 27 .=.$content['config']['platform'
88f00 5d 3b 0a 7d 0a 0a 6b 73 6f 72 74 28 24 72 65 6c 65 76 61 6e 74 43 6f 6e 74 65 6e 74 29 3b 0a 0a ];.}..ksort($relevantContent);..
88f20 72 65 74 75 72 6e 20 6d 64 35 28 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 72 65 6c 65 76 61 6e 74 return.md5(json_encode($relevant
88f40 43 6f 6e 74 65 6e 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 Content));.}.......public.functi
88f60 6f 6e 20 69 73 4c 6f 63 6b 65 64 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6c 6f 63 6b on.isLocked().{.if.(!$this->lock
88f80 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a File->exists()).{.return.false;.
88fa0 7d 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b }..$data.=.$this->getLockData();
88fc0 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 64 61 74 61 5b 27 70 61 63 6b 61 67 65 73 27 5d ..return.isset($data['packages']
88fe0 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 46 72 65 );.}.......public.function.isFre
89000 73 68 28 29 0a 7b 0a 24 6c 6f 63 6b 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e sh().{.$lock.=.$this->lockFile->
89020 72 65 61 64 28 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6c 6f 63 6b 5b 27 63 6f 6e 74 65 read();..if.(!empty($lock['conte
89040 6e 74 2d 68 61 73 68 27 5d 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f nt-hash'])).{...return.$this->co
89060 6e 74 65 6e 74 48 61 73 68 20 3d 3d 3d 20 24 6c 6f 63 6b 5b 27 63 6f 6e 74 65 6e 74 2d 68 61 73 ntentHash.===.$lock['content-has
89080 68 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 68 20 3d 3d 3d 20 24 h'];.}..return.$this->hash.===.$
890a0 6c 6f 63 6b 5b 27 68 61 73 68 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 lock['hash'];.}.........public.f
890c0 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 28 24 77 69 74 unction.getLockedRepository($wit
890e0 68 44 65 76 52 65 71 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 hDevReqs.=.false).{.$lockData.=.
89100 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 24 70 61 63 6b 61 67 65 73 20 $this->getLockData();.$packages.
89120 3d 20 6e 65 77 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 0a 24 6c 6f 63 6b 65 =.new.ArrayRepository();..$locke
89140 64 50 61 63 6b 61 67 65 73 20 3d 20 24 6c 6f 63 6b 44 61 74 61 5b 27 70 61 63 6b 61 67 65 73 27 dPackages.=.$lockData['packages'
89160 5d 3b 0a 69 66 20 28 24 77 69 74 68 44 65 76 52 65 71 73 29 20 7b 0a 69 66 20 28 69 73 73 65 74 ];.if.($withDevReqs).{.if.(isset
89180 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 61 63 6b 61 67 65 73 2d 64 65 76 27 5d 29 29 20 7b 0a 24 ($lockData['packages-dev'])).{.$
891a0 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6c 6f lockedPackages.=.array_merge($lo
891c0 63 6b 65 64 50 61 63 6b 61 67 65 73 2c 20 24 6c 6f 63 6b 44 61 74 61 5b 27 70 61 63 6b 61 67 65 ckedPackages,.$lockData['package
891e0 73 2d 64 65 76 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 s-dev']);.}.else.{.throw.new.\Ru
89200 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 6c 6f 63 6b 20 66 69 6c 65 20 64 6f ntimeException('The.lock.file.do
89220 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 72 65 71 75 69 72 65 2d 64 65 76 20 69 6e 66 6f 72 es.not.contain.require-dev.infor
89240 6d 61 74 69 6f 6e 2c 20 72 75 6e 20 69 6e 73 74 61 6c 6c 20 77 69 74 68 20 74 68 65 20 2d 2d 6e mation,.run.install.with.the.--n
89260 6f 2d 64 65 76 20 6f 70 74 69 6f 6e 20 6f 72 20 72 75 6e 20 75 70 64 61 74 65 20 74 6f 20 69 6e o-dev.option.or.run.update.to.in
89280 73 74 61 6c 6c 20 74 68 6f 73 65 20 70 61 63 6b 61 67 65 73 2e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 stall.those.packages.');.}.}..if
892a0 20 28 65 6d 70 74 79 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 29 29 20 7b 0a 72 65 74 75 .(empty($lockedPackages)).{.retu
892c0 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6c 6f 63 6b rn.$packages;.}..if.(isset($lock
892e0 65 64 50 61 63 6b 61 67 65 73 5b 30 5d 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 edPackages[0]['name'])).{.foreac
89300 68 20 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 20 61 73 20 24 69 6e 66 6f 29 20 7b 0a 24 h.($lockedPackages.as.$info).{.$
89320 70 61 63 6b 61 67 65 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 6c 6f 61 64 packages->addPackage($this->load
89340 65 72 2d 3e 6c 6f 61 64 28 24 69 6e 66 6f 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 er->load($info));.}..return.$pac
89360 6b 61 67 65 73 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 kages;.}..throw.new.\RuntimeExce
89380 70 74 69 6f 6e 28 27 59 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e 6c 6f 63 6b 20 77 61 73 20 63 72 ption('Your.composer.lock.was.cr
893a0 65 61 74 65 64 20 62 65 66 6f 72 65 20 32 30 31 32 2d 30 39 2d 31 35 2c 20 61 6e 64 20 69 73 20 eated.before.2012-09-15,.and.is.
893c0 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 61 6e 79 6d 6f 72 65 2e 20 52 75 6e 20 22 63 6f 6d 70 not.supported.anymore..Run."comp
893e0 6f 73 65 72 20 75 70 64 61 74 65 22 20 74 6f 20 67 65 6e 65 72 61 74 65 20 61 20 6e 65 77 20 6f oser.update".to.generate.a.new.o
89400 6e 65 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ne.');.}........public.function.
89420 67 65 74 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 77 69 74 68 44 65 76 getPlatformRequirements($withDev
89440 52 65 71 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 Reqs.=.false).{.$lockData.=.$thi
89460 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 s->getLockData();.$requirements.
89480 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6c 6f 63 6b 44 61 74 61 =.array();..if.(!empty($lockData
894a0 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 29 29 20 7b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d ['platform'])).{.$requirements.=
894c0 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 70 61 72 73 65 4c 69 6e 6b 73 28 0a 27 5f 5f 52 .$this->loader->parseLinks(.'__R
894e0 4f 4f 54 5f 5f 27 2c 0a 27 31 2e 30 2e 30 27 2c 0a 27 72 65 71 75 69 72 65 73 27 2c 0a 69 73 73 OOT__',.'1.0.0',.'requires',.iss
89500 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 29 20 3f 20 24 6c 6f 63 et($lockData['platform']).?.$loc
89520 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 20 3a 20 61 72 72 61 79 28 29 0a 29 3b 0a 7d kData['platform'].:.array().);.}
89540 0a 0a 69 66 20 28 24 77 69 74 68 44 65 76 52 65 71 73 20 26 26 20 21 65 6d 70 74 79 28 24 6c 6f ..if.($withDevReqs.&&.!empty($lo
89560 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 2d 64 65 76 27 5d 29 29 20 7b 0a 24 64 65 76 52 ckData['platform-dev'])).{.$devR
89580 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 70 61 72 equirements.=.$this->loader->par
895a0 73 65 4c 69 6e 6b 73 28 0a 27 5f 5f 52 4f 4f 54 5f 5f 27 2c 0a 27 31 2e 30 2e 30 27 2c 0a 27 72 seLinks(.'__ROOT__',.'1.0.0',.'r
895c0 65 71 75 69 72 65 73 27 2c 0a 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 equires',.isset($lockData['platf
895e0 6f 72 6d 2d 64 65 76 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d orm-dev']).?.$lockData['platform
89600 2d 64 65 76 27 5d 20 3a 20 61 72 72 61 79 28 29 0a 29 3b 0a 0a 24 72 65 71 75 69 72 65 6d 65 6e -dev'].:.array().);..$requiremen
89620 74 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 ts.=.array_merge($requirements,.
89640 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 $devRequirements);.}..return.$re
89660 71 75 69 72 65 6d 65 6e 74 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 quirements;.}..public.function.g
89680 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 etMinimumStability().{.$lockData
896a0 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 72 65 74 75 72 6e .=.$this->getLockData();..return
896c0 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c .isset($lockData['minimum-stabil
896e0 69 74 79 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 ity']).?.$lockData['minimum-stab
89700 69 6c 69 74 79 27 5d 20 3a 20 27 73 74 61 62 6c 65 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 ility'].:.'stable';.}..public.fu
89720 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 0a 7b 0a 24 6c 6f nction.getStabilityFlags().{.$lo
89740 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a ckData.=.$this->getLockData();..
89760 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 73 74 61 62 69 6c 69 74 return.isset($lockData['stabilit
89780 79 2d 66 6c 61 67 73 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 73 74 61 62 69 6c 69 74 y-flags']).?.$lockData['stabilit
897a0 79 2d 66 6c 61 67 73 27 5d 20 3a 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 y-flags'].:.array();.}..public.f
897c0 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 66 65 72 53 74 61 62 6c 65 28 29 0a 7b 0a 24 6c 6f 63 unction.getPreferStable().{.$loc
897e0 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 0a kData.=.$this->getLockData();...
89800 20 0a 20 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 72 65 66 65 ...return.isset($lockData['prefe
89820 72 2d 73 74 61 62 6c 65 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 70 72 65 66 65 72 2d r-stable']).?.$lockData['prefer-
89840 73 74 61 62 6c 65 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 stable'].:.null;.}..public.funct
89860 69 6f 6e 20 67 65 74 50 72 65 66 65 72 4c 6f 77 65 73 74 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 ion.getPreferLowest().{.$lockDat
89880 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 0a 20 0a 20 72 a.=.$this->getLockData();......r
898a0 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 72 65 66 65 72 2d 6c 6f eturn.isset($lockData['prefer-lo
898c0 77 65 73 74 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 70 72 65 66 65 72 2d 6c 6f 77 65 west']).?.$lockData['prefer-lowe
898e0 73 74 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 st'].:.null;.}..public.function.
89900 67 65 74 50 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 getPlatformOverrides().{.$lockDa
89920 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 72 65 74 75 ta.=.$this->getLockData();..retu
89940 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 2d 6f 76 65 rn.isset($lockData['platform-ove
89960 72 72 69 64 65 73 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 2d rrides']).?.$lockData['platform-
89980 6f 76 65 72 72 69 64 65 73 27 5d 20 3a 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 overrides'].:.array();.}..public
899a0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 65 73 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 .function.getAliases().{.$lockDa
899c0 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 72 65 74 75 ta.=.$this->getLockData();..retu
899e0 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 61 6c 69 61 73 65 73 27 5d 29 20 3f rn.isset($lockData['aliases']).?
89a00 20 24 6c 6f 63 6b 44 61 74 61 5b 27 61 6c 69 61 73 65 73 27 5d 20 3a 20 61 72 72 61 79 28 29 3b .$lockData['aliases'].:.array();
89a20 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 6b 44 61 74 61 28 .}..public.function.getLockData(
89a40 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 44 61 74 61 ).{.if.(null.!==.$this->lockData
89a60 43 61 63 68 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 44 61 74 61 43 Cache).{.return.$this->lockDataC
89a80 61 63 68 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 65 ache;.}..if.(!$this->lockFile->e
89aa0 78 69 73 74 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 xists()).{.throw.new.\LogicExcep
89ac0 74 69 6f 6e 28 27 4e 6f 20 6c 6f 63 6b 66 69 6c 65 20 66 6f 75 6e 64 2e 20 55 6e 61 62 6c 65 20 tion('No.lockfile.found..Unable.
89ae0 74 6f 20 72 65 61 64 20 6c 6f 63 6b 65 64 20 70 61 63 6b 61 67 65 73 27 29 3b 0a 7d 0a 0a 72 65 to.read.locked.packages');.}..re
89b00 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 44 61 74 61 43 61 63 68 65 20 3d 20 24 74 68 69 turn.$this->lockDataCache.=.$thi
89b20 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a s->lockFile->read();.}..........
89b40 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 6f 63 6b 44 ........public.function.setLockD
89b60 61 74 61 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 2c 20 24 64 65 76 50 61 63 6b 61 67 65 ata(array.$packages,.$devPackage
89b80 73 2c 20 61 72 72 61 79 20 24 70 6c 61 74 66 6f 72 6d 52 65 71 73 2c 20 24 70 6c 61 74 66 6f 72 s,.array.$platformReqs,.$platfor
89ba0 6d 44 65 76 52 65 71 73 2c 20 61 72 72 61 79 20 24 61 6c 69 61 73 65 73 2c 20 24 6d 69 6e 69 6d mDevReqs,.array.$aliases,.$minim
89bc0 75 6d 53 74 61 62 69 6c 69 74 79 2c 20 61 72 72 61 79 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 umStability,.array.$stabilityFla
89be0 67 73 2c 20 24 70 72 65 66 65 72 53 74 61 62 6c 65 2c 20 24 70 72 65 66 65 72 4c 6f 77 65 73 74 gs,.$preferStable,.$preferLowest
89c00 2c 20 61 72 72 61 79 20 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 29 0a 7b 0a 24 6c ,.array.$platformOverrides).{.$l
89c20 6f 63 6b 20 3d 20 61 72 72 61 79 28 0a 27 5f 72 65 61 64 6d 65 27 20 3d 3e 20 61 72 72 61 79 28 ock.=.array(.'_readme'.=>.array(
89c40 27 54 68 69 73 20 66 69 6c 65 20 6c 6f 63 6b 73 20 74 68 65 20 64 65 70 65 6e 64 65 6e 63 69 65 'This.file.locks.the.dependencie
89c60 73 20 6f 66 20 79 6f 75 72 20 70 72 6f 6a 65 63 74 20 74 6f 20 61 20 6b 6e 6f 77 6e 20 73 74 61 s.of.your.project.to.a.known.sta
89c80 74 65 27 2c 0a 27 52 65 61 64 20 6d 6f 72 65 20 61 62 6f 75 74 20 69 74 20 61 74 20 68 74 74 70 te',.'Read.more.about.it.at.http
89ca0 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 30 31 2d 62 61 73 69 63 s://getcomposer.org/doc/01-basic
89cc0 2d 75 73 61 67 65 2e 6d 64 23 63 6f 6d 70 6f 73 65 72 2d 6c 6f 63 6b 2d 74 68 65 2d 6c 6f 63 6b -usage.md#composer-lock-the-lock
89ce0 2d 66 69 6c 65 27 2c 0a 27 54 68 69 73 20 66 69 6c 65 20 69 73 20 40 67 65 6e 65 72 27 2e 27 61 -file',.'This.file.is.@gener'.'a
89d00 74 65 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 27 2c 20 29 2c 0a 27 68 61 73 68 27 20 3d 3e ted.automatically',.),.'hash'.=>
89d20 20 24 74 68 69 73 2d 3e 68 61 73 68 2c 0a 27 63 6f 6e 74 65 6e 74 2d 68 61 73 68 27 20 3d 3e 20 .$this->hash,.'content-hash'.=>.
89d40 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 48 61 73 68 2c 0a 27 70 61 63 6b 61 67 65 73 27 20 3d $this->contentHash,.'packages'.=
89d60 3e 20 6e 75 6c 6c 2c 0a 27 70 61 63 6b 61 67 65 73 2d 64 65 76 27 20 3d 3e 20 6e 75 6c 6c 2c 0a >.null,.'packages-dev'.=>.null,.
89d80 27 61 6c 69 61 73 65 73 27 20 3d 3e 20 61 72 72 61 79 28 29 2c 0a 27 6d 69 6e 69 6d 75 6d 2d 73 'aliases'.=>.array(),.'minimum-s
89da0 74 61 62 69 6c 69 74 79 27 20 3d 3e 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 2c 0a tability'.=>.$minimumStability,.
89dc0 27 73 74 61 62 69 6c 69 74 79 2d 66 6c 61 67 73 27 20 3d 3e 20 24 73 74 61 62 69 6c 69 74 79 46 'stability-flags'.=>.$stabilityF
89de0 6c 61 67 73 2c 0a 27 70 72 65 66 65 72 2d 73 74 61 62 6c 65 27 20 3d 3e 20 24 70 72 65 66 65 72 lags,.'prefer-stable'.=>.$prefer
89e00 53 74 61 62 6c 65 2c 0a 27 70 72 65 66 65 72 2d 6c 6f 77 65 73 74 27 20 3d 3e 20 24 70 72 65 66 Stable,.'prefer-lowest'.=>.$pref
89e20 65 72 4c 6f 77 65 73 74 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 6c 69 61 73 65 73 20 erLowest,.);..foreach.($aliases.
89e40 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 76 65 72 73 69 6f 6e 73 29 20 7b 0a 66 6f 72 65 as.$package.=>.$versions).{.fore
89e60 61 63 68 20 28 24 76 65 72 73 69 6f 6e 73 20 61 73 20 24 76 65 72 73 69 6f 6e 20 3d 3e 20 24 61 ach.($versions.as.$version.=>.$a
89e80 6c 69 61 73 29 20 7b 0a 24 6c 6f 63 6b 5b 27 61 6c 69 61 73 65 73 27 5d 5b 5d 20 3d 20 61 72 72 lias).{.$lock['aliases'][].=.arr
89ea0 61 79 28 0a 27 61 6c 69 61 73 27 20 3d 3e 20 24 61 6c 69 61 73 5b 27 61 6c 69 61 73 27 5d 2c 0a ay(.'alias'.=>.$alias['alias'],.
89ec0 27 61 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 20 3d 3e 20 24 61 6c 69 61 73 5b 27 61 6c 'alias_normalized'.=>.$alias['al
89ee0 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2c 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 ias_normalized'],.'version'.=>.$
89f00 76 65 72 73 69 6f 6e 2c 0a 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2c 0a version,.'package'.=>.$package,.
89f20 29 3b 0a 7d 0a 7d 0a 0a 24 6c 6f 63 6b 5b 27 70 61 63 6b 61 67 65 73 27 5d 20 3d 20 24 74 68 69 );.}.}..$lock['packages'].=.$thi
89f40 73 2d 3e 6c 6f 63 6b 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 73 29 3b 0a 69 66 20 28 s->lockPackages($packages);.if.(
89f60 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 76 50 61 63 6b 61 67 65 73 29 20 7b 0a 24 6c 6f 63 6b 5b 27 null.!==.$devPackages).{.$lock['
89f80 70 61 63 6b 61 67 65 73 2d 64 65 76 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 50 61 63 6b packages-dev'].=.$this->lockPack
89fa0 61 67 65 73 28 24 64 65 76 50 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 24 6c 6f 63 6b 5b 27 70 6c ages($devPackages);.}..$lock['pl
89fc0 61 74 66 6f 72 6d 27 5d 20 3d 20 24 70 6c 61 74 66 6f 72 6d 52 65 71 73 3b 0a 24 6c 6f 63 6b 5b atform'].=.$platformReqs;.$lock[
89fe0 27 70 6c 61 74 66 6f 72 6d 2d 64 65 76 27 5d 20 3d 20 24 70 6c 61 74 66 6f 72 6d 44 65 76 52 65 'platform-dev'].=.$platformDevRe
8a000 71 73 3b 0a 69 66 20 28 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 29 20 7b 0a 24 6c qs;.if.($platformOverrides).{.$l
8a020 6f 63 6b 5b 27 70 6c 61 74 66 6f 72 6d 2d 6f 76 65 72 72 69 64 65 73 27 5d 20 3d 20 24 70 6c 61 ock['platform-overrides'].=.$pla
8a040 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 6c 6f tformOverrides;.}..if.(empty($lo
8a060 63 6b 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 20 26 26 20 65 6d 70 74 79 28 24 6c 6f 63 6b 5b 27 ck['packages']).&&.empty($lock['
8a080 70 61 63 6b 61 67 65 73 2d 64 65 76 27 5d 29 20 26 26 20 65 6d 70 74 79 28 24 6c 6f 63 6b 5b 27 packages-dev']).&&.empty($lock['
8a0a0 70 6c 61 74 66 6f 72 6d 27 5d 29 20 26 26 20 65 6d 70 74 79 28 24 6c 6f 63 6b 5b 27 70 6c 61 74 platform']).&&.empty($lock['plat
8a0c0 66 6f 72 6d 2d 64 65 76 27 5d 29 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 form-dev'])).{.if.($this->lockFi
8a0e0 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 75 6e 6c 69 6e 6b 28 24 74 68 69 73 2d 3e 6c 6f le->exists()).{.unlink($this->lo
8a100 63 6b 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 ckFile->getPath());.}..return.fa
8a120 6c 73 65 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 69 73 4c 6f 63 6b 65 64 20 3d 20 24 74 68 69 73 2d lse;.}..try.{.$isLocked.=.$this-
8a140 3e 69 73 4c 6f 63 6b 65 64 28 29 3b 0a 7d 20 63 61 74 63 68 20 28 50 61 72 73 69 6e 67 45 78 63 >isLocked();.}.catch.(ParsingExc
8a160 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 69 73 4c 6f 63 6b 65 64 20 3d 20 66 61 6c 73 65 3b 0a eption.$e).{.$isLocked.=.false;.
8a180 7d 0a 69 66 20 28 21 24 69 73 4c 6f 63 6b 65 64 20 7c 7c 20 24 6c 6f 63 6b 20 21 3d 3d 20 24 74 }.if.(!$isLocked.||.$lock.!==.$t
8a1a0 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 63 his->getLockData()).{.$this->loc
8a1c0 6b 46 69 6c 65 2d 3e 77 72 69 74 65 28 24 6c 6f 63 6b 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b kFile->write($lock);.$this->lock
8a1e0 44 61 74 61 43 61 63 68 65 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a DataCache.=.null;..return.true;.
8a200 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 }..return.false;.}..private.func
8a220 74 69 6f 6e 20 6c 6f 63 6b 50 61 63 6b 61 67 65 73 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 tion.lockPackages(array.$package
8a240 73 29 0a 7b 0a 24 6c 6f 63 6b 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 s).{.$locked.=.array();..foreach
8a260 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 .($packages.as.$package).{.if.($
8a280 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 package.instanceof.AliasPackage)
8a2a0 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6e 61 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 .{.continue;.}..$name.=.$package
8a2c0 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 70 ->getPrettyName();.$version.=.$p
8a2e0 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 0a 69 66 20 ackage->getPrettyVersion();..if.
8a300 28 21 24 6e 61 6d 65 20 7c 7c 20 21 24 76 65 72 73 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 (!$name.||.!$version).{.throw.ne
8a320 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 50 61 63 6b w.\LogicException(sprintf(.'Pack
8a340 61 67 65 20 22 25 73 22 20 68 61 73 20 6e 6f 20 76 65 72 73 69 6f 6e 20 6f 72 20 6e 61 6d 65 20 age."%s".has.no.version.or.name.
8a360 61 6e 64 20 63 61 6e 20 6e 6f 74 20 62 65 20 6c 6f 63 6b 65 64 27 2c 20 24 70 61 63 6b 61 67 65 and.can.not.be.locked',.$package
8a380 0a 29 29 3b 0a 7d 0a 0a 24 73 70 65 63 20 3d 20 24 74 68 69 73 2d 3e 64 75 6d 70 65 72 2d 3e 64 .));.}..$spec.=.$this->dumper->d
8a3a0 75 6d 70 28 24 70 61 63 6b 61 67 65 29 3b 0a 75 6e 73 65 74 28 24 73 70 65 63 5b 27 76 65 72 73 ump($package);.unset($spec['vers
8a3c0 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 29 3b 0a 0a 0a 20 24 74 69 6d 65 20 3d 20 69 73 ion_normalized']);....$time.=.is
8a3e0 73 65 74 28 24 73 70 65 63 5b 27 74 69 6d 65 27 5d 29 20 3f 20 24 73 70 65 63 5b 27 74 69 6d 65 set($spec['time']).?.$spec['time
8a400 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 75 6e 73 65 74 28 24 73 70 65 63 5b 27 74 69 6d 65 27 5d 29 3b '].:.null;.unset($spec['time']);
8a420 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 20 26 26 20 24 70 61 63 6b 61 .if.($package->isDev().&&.$packa
8a440 67 65 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 20 3d 3d 3d 20 ge->getInstallationSource().===.
8a460 27 73 6f 75 72 63 65 27 29 20 7b 0a 0a 20 24 74 69 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 'source').{...$time.=.$this->get
8a480 50 61 63 6b 61 67 65 54 69 6d 65 28 24 70 61 63 6b 61 67 65 29 20 3f 3a 20 24 74 69 6d 65 3b 0a PackageTime($package).?:.$time;.
8a4a0 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 69 6d 65 29 20 7b 0a 24 73 70 65 63 5b 27 74 }.if.(null.!==.$time).{.$spec['t
8a4c0 69 6d 65 27 5d 20 3d 20 24 74 69 6d 65 3b 0a 7d 0a 0a 75 6e 73 65 74 28 24 73 70 65 63 5b 27 69 ime'].=.$time;.}..unset($spec['i
8a4e0 6e 73 74 61 6c 6c 61 74 69 6f 6e 2d 73 6f 75 72 63 65 27 5d 29 3b 0a 0a 24 6c 6f 63 6b 65 64 5b nstallation-source']);..$locked[
8a500 5d 20 3d 20 24 73 70 65 63 3b 0a 7d 0a 0a 75 73 6f 72 74 28 24 6c 6f 63 6b 65 64 2c 20 66 75 6e ].=.$spec;.}..usort($locked,.fun
8a520 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 24 63 6f 6d 70 61 72 69 73 6f 6e 20 3d 20 73 ction.($a,.$b).{.$comparison.=.s
8a540 74 72 63 6d 70 28 24 61 5b 27 6e 61 6d 65 27 5d 2c 20 24 62 5b 27 6e 61 6d 65 27 5d 29 3b 0a 0a trcmp($a['name'],.$b['name']);..
8a560 69 66 20 28 30 20 21 3d 3d 20 24 63 6f 6d 70 61 72 69 73 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 if.(0.!==.$comparison).{.return.
8a580 24 63 6f 6d 70 61 72 69 73 6f 6e 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 73 74 72 63 6d 70 28 $comparison;.}....return.strcmp(
8a5a0 24 61 5b 27 76 65 72 73 69 6f 6e 27 5d 2c 20 24 62 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 7d $a['version'],.$b['version']);.}
8a5c0 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6c 6f 63 6b 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 );..return.$locked;.}........pri
8a5e0 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 54 69 6d 65 28 50 61 63 vate.function.getPackageTime(Pac
8a600 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 21 66 kageInterface.$package).{.if.(!f
8a620 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 72 6f 63 5f 6f 70 65 6e 27 29 29 20 7b 0a 72 unction_exists('proc_open')).{.r
8a640 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 24 70 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 28 eturn.null;.}..$path.=.realpath(
8a660 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 67 65 74 49 $this->installationManager->getI
8a680 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 24 73 6f 75 72 63 65 54 79 nstallPath($package));.$sourceTy
8a6a0 70 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a pe.=.$package->getSourceType();.
8a6c0 24 64 61 74 65 74 69 6d 65 20 3d 20 6e 75 6c 6c 3b 0a 0a 69 66 20 28 24 70 61 74 68 20 26 26 20 $datetime.=.null;..if.($path.&&.
8a6e0 69 6e 5f 61 72 72 61 79 28 24 73 6f 75 72 63 65 54 79 70 65 2c 20 61 72 72 61 79 28 27 67 69 74 in_array($sourceType,.array('git
8a700 27 2c 20 27 68 67 27 29 29 29 20 7b 0a 24 73 6f 75 72 63 65 52 65 66 20 3d 20 24 70 61 63 6b 61 ',.'hg'))).{.$sourceRef.=.$packa
8a720 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 20 3f 3a 20 24 70 61 63 ge->getSourceReference().?:.$pac
8a740 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 73 77 69 74 63 68 kage->getDistReference();.switch
8a760 20 28 24 73 6f 75 72 63 65 54 79 70 65 29 20 7b 0a 63 61 73 65 20 27 67 69 74 27 3a 0a 47 69 74 .($sourceType).{.case.'git':.Git
8a780 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 Util::cleanEnv();..if.(0.===.$th
8a7a0 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 6c 6f 67 20 2d 6e is->process->execute('git.log.-n
8a7c0 31 20 2d 2d 70 72 65 74 74 79 3d 25 63 74 20 27 2e 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 1.--pretty=%ct.'.ProcessExecutor
8a7e0 3a 3a 65 73 63 61 70 65 28 24 73 6f 75 72 63 65 52 65 66 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 ::escape($sourceRef),.$output,.$
8a800 70 61 74 68 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2a 5c 64 2b 5c 73 2a path).&&.preg_match('{^\s*\d+\s*
8a820 24 7d 27 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a 24 64 61 74 65 74 69 6d 65 20 3d 20 6e 65 77 $}',.$output)).{.$datetime.=.new
8a840 20 5c 44 61 74 65 54 69 6d 65 28 27 40 27 2e 74 72 69 6d 28 24 6f 75 74 70 75 74 29 2c 20 6e 65 .\DateTime('@'.trim($output),.ne
8a860 77 20 5c 44 61 74 65 54 69 6d 65 5a 6f 6e 65 28 27 55 54 43 27 29 29 3b 0a 7d 0a 62 72 65 61 6b w.\DateTimeZone('UTC'));.}.break
8a880 3b 0a 0a 63 61 73 65 20 27 68 67 27 3a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 ;..case.'hg':.if.(0.===.$this->p
8a8a0 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 67 20 6c 6f 67 20 2d 2d 74 65 6d 70 6c 61 rocess->execute('hg.log.--templa
8a8c0 74 65 20 22 7b 64 61 74 65 7c 68 67 64 61 74 65 7d 22 20 2d 72 20 27 2e 50 72 6f 63 65 73 73 45 te."{date|hgdate}".-r.'.ProcessE
8a8e0 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 73 6f 75 72 63 65 52 65 66 29 2c 20 24 6f 75 xecutor::escape($sourceRef),.$ou
8a900 74 70 75 74 2c 20 24 70 61 74 68 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 tput,.$path).&&.preg_match('{^\s
8a920 2a 28 5c 64 2b 29 5c 73 2a 7d 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 6d 61 74 63 68 29 29 20 7b *(\d+)\s*}',.$output,.$match)).{
8a940 0a 24 64 61 74 65 74 69 6d 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 27 40 27 2e 24 .$datetime.=.new.\DateTime('@'.$
8a960 6d 61 74 63 68 5b 31 5d 2c 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 5a 6f 6e 65 28 27 55 54 43 match[1],.new.\DateTimeZone('UTC
8a980 27 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 61 74 65 74 '));.}.break;.}.}..return.$datet
8a9a0 69 6d 65 20 3f 20 24 64 61 74 65 74 69 6d 65 2d 3e 66 6f 72 6d 61 74 28 27 59 2d 6d 2d 64 20 48 ime.?.$datetime->format('Y-m-d.H
8a9c0 3a 69 3a 73 27 29 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a :i:s').:.null;.}.}.<?php........
8a9e0 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a ....namespace.Composer\Package;.
8aa00 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 .use.Composer\Package\Version\Ve
8aa20 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 43 rsionParser;.use.Composer\Util\C
8aa40 6f 6d 70 6f 73 65 72 4d 69 72 72 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 omposerMirror;.......class.Packa
8aa60 67 65 20 65 78 74 65 6e 64 73 20 42 61 73 65 50 61 63 6b 61 67 65 0a 7b 0a 70 72 6f 74 65 63 74 ge.extends.BasePackage.{.protect
8aa80 65 64 20 24 74 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 72 67 65 74 44 69 72 3b 0a ed.$type;.protected.$targetDir;.
8aaa0 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 3b 0a 70 protected.$installationSource;.p
8aac0 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 54 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 rotected.$sourceType;.protected.
8aae0 24 73 6f 75 72 63 65 55 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 52 65 66 $sourceUrl;.protected.$sourceRef
8ab00 65 72 65 6e 63 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 4d 69 72 72 6f 72 73 erence;.protected.$sourceMirrors
8ab20 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 74 54 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 ;.protected.$distType;.protected
8ab40 20 24 64 69 73 74 55 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 74 52 65 66 65 72 65 .$distUrl;.protected.$distRefere
8ab60 6e 63 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d nce;.protected.$distSha1Checksum
8ab80 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 74 4d 69 72 72 6f 72 73 3b 0a 70 72 6f 74 65 63 ;.protected.$distMirrors;.protec
8aba0 74 65 64 20 24 76 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 56 ted.$version;.protected.$prettyV
8abc0 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 6c 65 61 73 65 44 61 74 65 3b 0a ersion;.protected.$releaseDate;.
8abe0 70 72 6f 74 65 63 74 65 64 20 24 65 78 74 72 61 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 protected.$extra.=.array();.prot
8ac00 65 63 74 65 64 20 24 62 69 6e 61 72 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 ected.$binaries.=.array();.prote
8ac20 63 74 65 64 20 24 64 65 76 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 74 61 62 69 6c 69 74 79 3b cted.$dev;.protected.$stability;
8ac40 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 3b 0a 0a 0a 70 .protected.$notificationUrl;...p
8ac60 72 6f 74 65 63 74 65 64 20 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 rotected.$requires.=.array();..p
8ac80 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 6c 69 63 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a rotected.$conflicts.=.array();..
8aca0 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 76 69 64 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a protected.$provides.=.array();..
8acc0 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6c 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a protected.$replaces.=.array();..
8ace0 70 72 6f 74 65 63 74 65 64 20 24 64 65 76 52 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 protected.$devRequires.=.array()
8ad00 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 75 67 67 65 73 74 73 20 3d 20 61 72 72 61 79 28 29 3b ;.protected.$suggests.=.array();
8ad20 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 6f 6c 6f 61 64 20 3d 20 61 72 72 61 79 28 29 3b 0a .protected.$autoload.=.array();.
8ad40 70 72 6f 74 65 63 74 65 64 20 24 64 65 76 41 75 74 6f 6c 6f 61 64 20 3d 20 61 72 72 61 79 28 29 protected.$devAutoload.=.array()
8ad60 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 63 6c 75 64 65 50 61 74 68 73 20 3d 20 61 72 72 61 ;.protected.$includePaths.=.arra
8ad80 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 20 y();.protected.$archiveExcludes.
8ada0 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 =.array();.........public.functi
8adc0 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 2c 20 on.__construct($name,.$version,.
8ade0 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 $prettyVersion).{.parent::__cons
8ae00 74 72 75 63 74 28 24 6e 61 6d 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 3d 20 truct($name);..$this->version.=.
8ae20 24 76 65 72 73 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d $version;.$this->prettyVersion.=
8ae40 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 0a 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 .$prettyVersion;..$this->stabili
8ae60 74 79 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 65 53 74 61 62 69 6c 69 ty.=.VersionParser::parseStabili
8ae80 74 79 28 24 76 65 72 73 69 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 64 65 76 20 3d 20 24 74 68 69 73 ty($version);.$this->dev.=.$this
8aea0 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 3d 3d 20 27 64 65 76 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 ->stability.===.'dev';.}.....pub
8aec0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 76 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 lic.function.isDev().{.return.$t
8aee0 68 69 73 2d 3e 64 65 76 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 his->dev;.}.....public.function.
8af00 73 65 74 54 79 70 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 24 setType($type).{.$this->type.=.$
8af20 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 type;.}.....public.function.getT
8af40 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 79 70 65 20 3f 3a 20 27 6c ype().{.return.$this->type.?:.'l
8af60 69 62 72 61 72 79 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 ibrary';.}.....public.function.g
8af80 65 74 53 74 61 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 etStability().{.return.$this->st
8afa0 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 ability;.}.....public.function.s
8afc0 65 74 54 61 72 67 65 74 44 69 72 28 24 74 61 72 67 65 74 44 69 72 29 0a 7b 0a 24 74 68 69 73 2d etTargetDir($targetDir).{.$this-
8afe0 3e 74 61 72 67 65 74 44 69 72 20 3d 20 24 74 61 72 67 65 74 44 69 72 3b 0a 7d 0a 0a 0a 0a 0a 70 >targetDir.=.$targetDir;.}.....p
8b000 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 44 69 72 28 29 0a 7b 0a ublic.function.getTargetDir().{.
8b020 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 44 69 72 29 20 7b if.(null.===.$this->targetDir).{
8b040 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6c 74 72 69 6d 28 70 72 65 67 5f 72 65 .return;.}..return.ltrim(preg_re
8b060 70 6c 61 63 65 28 27 7b 20 28 3f 3a 5e 7c 5b 5c 5c 5c 5c 2f 5d 2b 29 20 5c 2e 5c 2e 3f 20 28 3f place('{.(?:^|[\\\\/]+).\.\.?.(?
8b080 3a 5b 5c 5c 5c 5c 2f 5d 2b 7c 24 29 20 28 3f 3a 5c 2e 5c 2e 3f 20 28 3f 3a 5b 5c 5c 5c 5c 2f 5d :[\\\\/]+|$).(?:\.\.?.(?:[\\\\/]
8b0a0 2b 7c 24 29 20 29 2a 7d 78 27 2c 20 27 2f 27 2c 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 44 69 +|$).)*}x',.'/',.$this->targetDi
8b0c0 72 29 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 r),.'/');.}.....public.function.
8b0e0 73 65 74 45 78 74 72 61 28 61 72 72 61 79 20 24 65 78 74 72 61 29 0a 7b 0a 24 74 68 69 73 2d 3e setExtra(array.$extra).{.$this->
8b100 65 78 74 72 61 20 3d 20 24 65 78 74 72 61 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e extra.=.$extra;.}.....public.fun
8b120 63 74 69 6f 6e 20 67 65 74 45 78 74 72 61 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ction.getExtra().{.return.$this-
8b140 3e 65 78 74 72 61 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 >extra;.}.....public.function.se
8b160 74 42 69 6e 61 72 69 65 73 28 61 72 72 61 79 20 24 62 69 6e 61 72 69 65 73 29 0a 7b 0a 24 74 68 tBinaries(array.$binaries).{.$th
8b180 69 73 2d 3e 62 69 6e 61 72 69 65 73 20 3d 20 24 62 69 6e 61 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a is->binaries.=.$binaries;.}.....
8b1a0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 73 28 29 0a 7b 0a public.function.getBinaries().{.
8b1c0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 69 6e 61 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 return.$this->binaries;.}.....pu
8b1e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 blic.function.setInstallationSou
8b200 72 63 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e rce($type).{.$this->installation
8b220 53 6f 75 72 63 65 20 3d 20 24 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e Source.=.$type;.}.....public.fun
8b240 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 0a 7b 0a ction.getInstallationSource().{.
8b260 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 return.$this->installationSource
8b280 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 6f 75 72 63 ;.}.....public.function.setSourc
8b2a0 65 54 79 70 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 54 79 70 65 eType($type).{.$this->sourceType
8b2c0 20 3d 20 24 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 .=.$type;.}.....public.function.
8b2e0 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e getSourceType().{.return.$this->
8b300 73 6f 75 72 63 65 54 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f sourceType;.}.....public.functio
8b320 6e 20 73 65 74 53 6f 75 72 63 65 55 72 6c 28 24 75 72 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f n.setSourceUrl($url).{.$this->so
8b340 75 72 63 65 55 72 6c 20 3d 20 24 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e urceUrl.=.$url;.}.....public.fun
8b360 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 ction.getSourceUrl().{.return.$t
8b380 68 69 73 2d 3e 73 6f 75 72 63 65 55 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e his->sourceUrl;.}.....public.fun
8b3a0 63 74 69 6f 6e 20 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 ction.setSourceReference($refere
8b3c0 6e 63 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 20 3d 20 nce).{.$this->sourceReference.=.
8b3e0 24 72 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f $reference;.}.....public.functio
8b400 6e 20 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 n.getSourceReference().{.return.
8b420 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 $this->sourceReference;.}.....pu
8b440 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 24 blic.function.setSourceMirrors($
8b460 6d 69 72 72 6f 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 4d 69 72 72 6f 72 73 20 mirrors).{.$this->sourceMirrors.
8b480 3d 20 24 6d 69 72 72 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f =.$mirrors;.}.....public.functio
8b4a0 6e 20 67 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 n.getSourceMirrors().{.return.$t
8b4c0 68 69 73 2d 3e 73 6f 75 72 63 65 4d 69 72 72 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 his->sourceMirrors;.}.....public
8b4e0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 55 72 6c 73 28 29 0a 7b 0a 72 65 74 75 .function.getSourceUrls().{.retu
8b500 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 73 28 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 55 rn.$this->getUrls($this->sourceU
8b520 72 6c 2c 20 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 4d 69 72 72 6f 72 73 2c 20 24 74 68 69 73 2d rl,.$this->sourceMirrors,.$this-
8b540 3e 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 2c 20 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 54 >sourceReference,.$this->sourceT
8b560 79 70 65 2c 20 27 73 6f 75 72 63 65 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ype,.'source');.}.....public.fun
8b580 63 74 69 6f 6e 20 73 65 74 44 69 73 74 54 79 70 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 ction.setDistType($type).{.$this
8b5a0 2d 3e 64 69 73 74 54 79 70 65 20 3d 20 24 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ->distType.=.$type;.}.....public
8b5c0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e .function.getDistType().{.return
8b5e0 20 24 74 68 69 73 2d 3e 64 69 73 74 54 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .$this->distType;.}.....public.f
8b600 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 74 55 72 6c 28 24 75 72 6c 29 0a 7b 0a 24 74 68 69 73 unction.setDistUrl($url).{.$this
8b620 2d 3e 64 69 73 74 55 72 6c 20 3d 20 24 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ->distUrl.=.$url;.}.....public.f
8b640 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 unction.getDistUrl().{.return.$t
8b660 68 69 73 2d 3e 64 69 73 74 55 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 his->distUrl;.}.....public.funct
8b680 69 6f 6e 20 73 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 6e 63 65 29 ion.setDistReference($reference)
8b6a0 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 74 52 65 66 65 72 65 6e 63 65 20 3d 20 24 72 65 66 65 72 .{.$this->distReference.=.$refer
8b6c0 65 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 ence;.}.....public.function.getD
8b6e0 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 istReference().{.return.$this->d
8b700 69 73 74 52 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 istReference;.}.....public.funct
8b720 69 6f 6e 20 73 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 24 73 68 61 31 63 68 65 ion.setDistSha1Checksum($sha1che
8b740 63 6b 73 75 6d 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d cksum).{.$this->distSha1Checksum
8b760 20 3d 20 24 73 68 61 31 63 68 65 63 6b 73 75 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .=.$sha1checksum;.}.....public.f
8b780 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 0a 7b 0a unction.getDistSha1Checksum().{.
8b7a0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 3b 0a return.$this->distSha1Checksum;.
8b7c0 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 74 4d 69 72 }.....public.function.setDistMir
8b7e0 72 6f 72 73 28 24 6d 69 72 72 6f 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 74 4d 69 72 72 rors($mirrors).{.$this->distMirr
8b800 6f 72 73 20 3d 20 24 6d 69 72 72 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ors.=.$mirrors;.}.....public.fun
8b820 63 74 69 6f 6e 20 67 65 74 44 69 73 74 4d 69 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 ction.getDistMirrors().{.return.
8b840 24 74 68 69 73 2d 3e 64 69 73 74 4d 69 72 72 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 $this->distMirrors;.}.....public
8b860 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 55 72 6c 73 28 29 0a 7b 0a 72 65 74 75 72 6e .function.getDistUrls().{.return
8b880 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 73 28 24 74 68 69 73 2d 3e 64 69 73 74 55 72 6c 2c 20 .$this->getUrls($this->distUrl,.
8b8a0 24 74 68 69 73 2d 3e 64 69 73 74 4d 69 72 72 6f 72 73 2c 20 24 74 68 69 73 2d 3e 64 69 73 74 52 $this->distMirrors,.$this->distR
8b8c0 65 66 65 72 65 6e 63 65 2c 20 24 74 68 69 73 2d 3e 64 69 73 74 54 79 70 65 2c 20 27 64 69 73 74 eference,.$this->distType,.'dist
8b8e0 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 ');.}.....public.function.getVer
8b900 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 3b 0a sion().{.return.$this->version;.
8b920 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 56 }.....public.function.getPrettyV
8b940 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 56 ersion().{.return.$this->prettyV
8b960 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ersion;.}.......public.function.
8b980 73 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 5c 44 61 74 65 54 69 6d 65 20 24 72 65 6c 65 61 73 setReleaseDate(\DateTime.$releas
8b9a0 65 44 61 74 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 6c 65 61 73 65 44 61 74 65 20 3d 20 24 72 eDate).{.$this->releaseDate.=.$r
8b9c0 65 6c 65 61 73 65 44 61 74 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f eleaseDate;.}.....public.functio
8b9e0 6e 20 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 n.getReleaseDate().{.return.$thi
8ba00 73 2d 3e 72 65 6c 65 61 73 65 44 61 74 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 s->releaseDate;.}.......public.f
8ba20 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 71 75 69 72 65 73 28 61 72 72 61 79 20 24 72 65 71 75 69 unction.setRequires(array.$requi
8ba40 72 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 73 20 3d 20 24 72 65 71 75 69 72 res).{.$this->requires.=.$requir
8ba60 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 71 es;.}.....public.function.getReq
8ba80 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 73 uires().{.return.$this->requires
8baa0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6e ;.}.......public.function.setCon
8bac0 66 6c 69 63 74 73 28 61 72 72 61 79 20 24 63 6f 6e 66 6c 69 63 74 73 29 0a 7b 0a 24 74 68 69 73 flicts(array.$conflicts).{.$this
8bae0 2d 3e 63 6f 6e 66 6c 69 63 74 73 20 3d 20 24 63 6f 6e 66 6c 69 63 74 73 3b 0a 7d 0a 0a 0a 0a 0a ->conflicts.=.$conflicts;.}.....
8bb00 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 0a 7b public.function.getConflicts().{
8bb20 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 6c 69 63 74 73 3b 0a 7d 0a 0a 0a 0a 0a .return.$this->conflicts;.}.....
8bb40 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 6f 76 69 64 65 73 28 61 72 ..public.function.setProvides(ar
8bb60 72 61 79 20 24 70 72 6f 76 69 64 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 73 ray.$provides).{.$this->provides
8bb80 20 3d 20 24 70 72 6f 76 69 64 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .=.$provides;.}.....public.funct
8bba0 69 6f 6e 20 67 65 74 50 72 6f 76 69 64 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ion.getProvides().{.return.$this
8bbc0 2d 3e 70 72 6f 76 69 64 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ->provides;.}.......public.funct
8bbe0 69 6f 6e 20 73 65 74 52 65 70 6c 61 63 65 73 28 61 72 72 61 79 20 24 72 65 70 6c 61 63 65 73 29 ion.setReplaces(array.$replaces)
8bc00 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 20 3d 20 24 72 65 70 6c 61 63 65 73 3b 0a .{.$this->replaces.=.$replaces;.
8bc20 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6c 61 63 65 }.....public.function.getReplace
8bc40 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 3b 0a 7d 0a s().{.return.$this->replaces;.}.
8bc60 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 76 52 65 71 75 ......public.function.setDevRequ
8bc80 69 72 65 73 28 61 72 72 61 79 20 24 64 65 76 52 65 71 75 69 72 65 73 29 0a 7b 0a 24 74 68 69 73 ires(array.$devRequires).{.$this
8bca0 2d 3e 64 65 76 52 65 71 75 69 72 65 73 20 3d 20 24 64 65 76 52 65 71 75 69 72 65 73 3b 0a 7d 0a ->devRequires.=.$devRequires;.}.
8bcc0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 76 52 65 71 75 69 72 ....public.function.getDevRequir
8bce0 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 76 52 65 71 75 69 72 65 73 es().{.return.$this->devRequires
8bd00 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 75 67 ;.}.......public.function.setSug
8bd20 67 65 73 74 73 28 61 72 72 61 79 20 24 73 75 67 67 65 73 74 73 29 0a 7b 0a 24 74 68 69 73 2d 3e gests(array.$suggests).{.$this->
8bd40 73 75 67 67 65 73 74 73 20 3d 20 24 73 75 67 67 65 73 74 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c suggests.=.$suggests;.}.....publ
8bd60 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 67 67 65 73 74 73 28 29 0a 7b 0a 72 65 74 75 ic.function.getSuggests().{.retu
8bd80 72 6e 20 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c rn.$this->suggests;.}.......publ
8bda0 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 6f 6c 6f 61 64 28 61 72 72 61 79 20 24 61 ic.function.setAutoload(array.$a
8bdc0 75 74 6f 6c 6f 61 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 6c 6f 61 64 20 3d 20 24 61 75 utoload).{.$this->autoload.=.$au
8bde0 74 6f 6c 6f 61 64 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 toload;.}.....public.function.ge
8be00 74 41 75 74 6f 6c 6f 61 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 75 74 6f tAutoload().{.return.$this->auto
8be20 6c 6f 61 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 load;.}.......public.function.se
8be40 74 44 65 76 41 75 74 6f 6c 6f 61 64 28 61 72 72 61 79 20 24 64 65 76 41 75 74 6f 6c 6f 61 64 29 tDevAutoload(array.$devAutoload)
8be60 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 76 41 75 74 6f 6c 6f 61 64 20 3d 20 24 64 65 76 41 75 74 6f .{.$this->devAutoload.=.$devAuto
8be80 6c 6f 61 64 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 load;.}.....public.function.getD
8bea0 65 76 41 75 74 6f 6c 6f 61 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 76 evAutoload().{.return.$this->dev
8bec0 41 75 74 6f 6c 6f 61 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f Autoload;.}.......public.functio
8bee0 6e 20 73 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 61 72 72 61 79 20 24 69 6e 63 6c 75 64 65 n.setIncludePaths(array.$include
8bf00 50 61 74 68 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 63 6c 75 64 65 50 61 74 68 73 20 3d 20 24 Paths).{.$this->includePaths.=.$
8bf20 69 6e 63 6c 75 64 65 50 61 74 68 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 includePaths;.}.....public.funct
8bf40 69 6f 6e 20 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 ion.getIncludePaths().{.return.$
8bf60 74 68 69 73 2d 3e 69 6e 63 6c 75 64 65 50 61 74 68 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c this->includePaths;.}.......publ
8bf80 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 28 24 ic.function.setNotificationUrl($
8bfa0 6e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 69 66 69 notificationUrl).{.$this->notifi
8bfc0 63 61 74 69 6f 6e 55 72 6c 20 3d 20 24 6e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 3b 0a 7d 0a cationUrl.=.$notificationUrl;.}.
8bfe0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 6f 74 69 66 69 63 61 74 ....public.function.getNotificat
8c000 69 6f 6e 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 6f 74 69 66 69 63 ionUrl().{.return.$this->notific
8c020 61 74 69 6f 6e 55 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ationUrl;.}.......public.functio
8c040 6e 20 73 65 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 61 72 72 61 79 20 24 65 78 63 6c n.setArchiveExcludes(array.$excl
8c060 75 64 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 20 3d udes).{.$this->archiveExcludes.=
8c080 20 24 65 78 63 6c 75 64 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .$excludes;.}.....public.functio
8c0a0 6e 20 67 65 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 n.getArchiveExcludes().{.return.
8c0c0 24 74 68 69 73 2d 3e 61 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a $this->archiveExcludes;.}.......
8c0e0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 70 6c 61 63 65 56 65 72 73 69 6f 6e ..public.function.replaceVersion
8c100 28 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 0a 7b 0a 24 74 68 ($version,.$prettyVersion).{.$th
8c120 69 73 2d 3e 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 70 is->version.=.$version;.$this->p
8c140 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 0a rettyVersion.=.$prettyVersion;..
8c160 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 $this->stability.=.VersionParser
8c180 3a 3a 70 61 72 73 65 53 74 61 62 69 6c 69 74 79 28 24 76 65 72 73 69 6f 6e 29 3b 0a 24 74 68 69 ::parseStability($version);.$thi
8c1a0 73 2d 3e 64 65 76 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 3d 3d 20 27 64 s->dev.=.$this->stability.===.'d
8c1c0 65 76 27 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 ev';.}..protected.function.getUr
8c1e0 6c 73 28 24 75 72 6c 2c 20 24 6d 69 72 72 6f 72 73 2c 20 24 72 65 66 2c 20 24 74 79 70 65 2c 20 ls($url,.$mirrors,.$ref,.$type,.
8c200 24 75 72 6c 54 79 70 65 29 0a 7b 0a 69 66 20 28 21 24 75 72 6c 29 20 7b 0a 72 65 74 75 72 6e 20 $urlType).{.if.(!$url).{.return.
8c220 61 72 72 61 79 28 29 3b 0a 7d 0a 24 75 72 6c 73 20 3d 20 61 72 72 61 79 28 24 75 72 6c 29 3b 0a array();.}.$urls.=.array($url);.
8c240 69 66 20 28 24 6d 69 72 72 6f 72 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6d 69 72 72 6f 72 if.($mirrors).{.foreach.($mirror
8c260 73 20 61 73 20 24 6d 69 72 72 6f 72 29 20 7b 0a 69 66 20 28 24 75 72 6c 54 79 70 65 20 3d 3d 3d s.as.$mirror).{.if.($urlType.===
8c280 20 27 64 69 73 74 27 29 20 7b 0a 24 6d 69 72 72 6f 72 55 72 6c 20 3d 20 43 6f 6d 70 6f 73 65 72 .'dist').{.$mirrorUrl.=.Composer
8c2a0 4d 69 72 72 6f 72 3a 3a 70 72 6f 63 65 73 73 55 72 6c 28 24 6d 69 72 72 6f 72 5b 27 75 72 6c 27 Mirror::processUrl($mirror['url'
8c2c0 5d 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 2c 20 ],.$this->name,.$this->version,.
8c2e0 24 72 65 66 2c 20 24 74 79 70 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 75 72 6c 54 79 70 65 $ref,.$type);.}.elseif.($urlType
8c300 20 3d 3d 3d 20 27 73 6f 75 72 63 65 27 20 26 26 20 24 74 79 70 65 20 3d 3d 3d 20 27 67 69 74 27 .===.'source'.&&.$type.===.'git'
8c320 29 20 7b 0a 24 6d 69 72 72 6f 72 55 72 6c 20 3d 20 43 6f 6d 70 6f 73 65 72 4d 69 72 72 6f 72 3a ).{.$mirrorUrl.=.ComposerMirror:
8c340 3a 70 72 6f 63 65 73 73 47 69 74 55 72 6c 28 24 6d 69 72 72 6f 72 5b 27 75 72 6c 27 5d 2c 20 24 :processGitUrl($mirror['url'],.$
8c360 74 68 69 73 2d 3e 6e 61 6d 65 2c 20 24 75 72 6c 2c 20 24 74 79 70 65 29 3b 0a 7d 20 65 6c 73 65 this->name,.$url,.$type);.}.else
8c380 69 66 20 28 24 75 72 6c 54 79 70 65 20 3d 3d 3d 20 27 73 6f 75 72 63 65 27 20 26 26 20 24 74 79 if.($urlType.===.'source'.&&.$ty
8c3a0 70 65 20 3d 3d 3d 20 27 68 67 27 29 20 7b 0a 24 6d 69 72 72 6f 72 55 72 6c 20 3d 20 43 6f 6d 70 pe.===.'hg').{.$mirrorUrl.=.Comp
8c3c0 6f 73 65 72 4d 69 72 72 6f 72 3a 3a 70 72 6f 63 65 73 73 48 67 55 72 6c 28 24 6d 69 72 72 6f 72 oserMirror::processHgUrl($mirror
8c3e0 5b 27 75 72 6c 27 5d 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 2c 20 24 75 72 6c 2c 20 24 74 79 70 ['url'],.$this->name,.$url,.$typ
8c400 65 29 3b 0a 7d 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 6d 69 72 72 6f 72 55 72 6c 2c 20 e);.}.if.(!in_array($mirrorUrl,.
8c420 24 75 72 6c 73 29 29 20 7b 0a 24 66 75 6e 63 20 3d 20 24 6d 69 72 72 6f 72 5b 27 70 72 65 66 65 $urls)).{.$func.=.$mirror['prefe
8c440 72 72 65 64 27 5d 20 3f 20 27 61 72 72 61 79 5f 75 6e 73 68 69 66 74 27 20 3a 20 27 61 72 72 61 rred'].?.'array_unshift'.:.'arra
8c460 79 5f 70 75 73 68 27 3b 0a 24 66 75 6e 63 28 24 75 72 6c 73 2c 20 24 6d 69 72 72 6f 72 55 72 6c y_push';.$func($urls,.$mirrorUrl
8c480 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 75 72 6c 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 );.}.}.}..return.$urls;.}.}.<?ph
8c4a0 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c p............namespace.Composer\
8c4c0 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 Package;..use.Composer\Repositor
8c4e0 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 y\RepositoryInterface;.......int
8c500 65 72 66 61 63 65 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 erface.PackageInterface.{......p
8c520 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a ublic.function.getName();.......
8c540 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b public.function.getPrettyName();
8c560 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d ..........public.function.getNam
8c580 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 es();.......public.function.setI
8c5a0 64 28 24 69 64 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 d($id);.......public.function.ge
8c5c0 74 49 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 tId();.......public.function.isD
8c5e0 65 76 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 ev();.......public.function.getT
8c600 79 70 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 ype();.......public.function.get
8c620 54 61 72 67 65 74 44 69 72 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 TargetDir();.......public.functi
8c640 6f 6e 20 67 65 74 45 78 74 72 61 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 on.getExtra();.......public.func
8c660 74 69 6f 6e 20 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 24 74 79 70 65 tion.setInstallationSource($type
8c680 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 );.......public.function.getInst
8c6a0 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 allationSource();.......public.f
8c6c0 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 unction.getSourceType();.......p
8c6e0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 0a ublic.function.getSourceUrl();..
8c700 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 55 72 .....public.function.getSourceUr
8c720 6c 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 ls();.......public.function.getS
8c740 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ourceReference();.......public.f
8c760 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 29 3b 0a 0a 0a 0a 0a unction.getSourceMirrors();.....
8c780 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 54 79 70 65 28 29 3b ..public.function.getDistType();
8c7a0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 55 72 .......public.function.getDistUr
8c7c0 6c 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 l();.......public.function.getDi
8c7e0 73 74 55 72 6c 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 stUrls();.......public.function.
8c800 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 getDistReference();.......public
8c820 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 3b .function.getDistSha1Checksum();
8c840 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 4d 69 .......public.function.getDistMi
8c860 72 72 6f 72 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 rrors();.......public.function.g
8c880 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 etVersion();.......public.functi
8c8a0 6f 6e 20 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a on.getPrettyVersion();..........
8c8c0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 public.function.getFullPrettyVer
8c8e0 73 69 6f 6e 28 24 74 72 75 6e 63 61 74 65 20 3d 20 74 72 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 sion($truncate.=.true);.......pu
8c900 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 3b 0a blic.function.getReleaseDate();.
8c920 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 ......public.function.getStabili
8c940 74 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 ty();........public.function.get
8c960 52 65 71 75 69 72 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 Requires();........public.functi
8c980 6f 6e 20 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 on.getConflicts();........public
8c9a0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 76 69 64 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a .function.getProvides();........
8c9c0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6c 61 63 65 73 28 29 3b 0a 0a public.function.getReplaces();..
8c9e0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 76 52 65 71 75 ......public.function.getDevRequ
8ca00 69 72 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 ires();........public.function.g
8ca20 65 74 53 75 67 67 65 73 74 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 etSuggests();............public.
8ca40 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a function.getAutoload();.........
8ca60 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 76 41 75 74 6f 6c 6f 61 ...public.function.getDevAutoloa
8ca80 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 d();........public.function.getI
8caa0 6e 63 6c 75 64 65 50 61 74 68 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ncludePaths();.......public.func
8cac0 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 tion.setRepository(RepositoryInt
8cae0 65 72 66 61 63 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 erface.$repository);.......publi
8cb00 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 0a 0a 0a 0a c.function.getRepository();.....
8cb20 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 73 28 29 3b ..public.function.getBinaries();
8cb40 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 6e 69 71 75 65 .......public.function.getUnique
8cb60 4e 61 6d 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 Name();.......public.function.ge
8cb80 74 4e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 tNotificationUrl();.......public
8cba0 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 .function.__toString();.......pu
8cbc0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 3b blic.function.getPrettyString();
8cbe0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 63 68 69 76 .......public.function.getArchiv
8cc00 65 45 78 63 6c 75 64 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 eExcludes();.......public.functi
8cc20 6f 6e 20 67 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 29 3b 0a 7d 0a 3c 3f 70 68 on.getTransportOptions();.}.<?ph
8cc40 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c p............namespace.Composer\
8cc60 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 6f 6f 74 41 6c 69 61 73 50 61 63 6b Package;.....class.RootAliasPack
8cc80 61 67 65 20 65 78 74 65 6e 64 73 20 41 6c 69 61 73 50 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d 65 age.extends.AliasPackage.impleme
8cca0 6e 74 73 20 52 6f 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 75 62 6c 69 nts.RootPackageInterface.{.publi
8ccc0 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 52 6f 6f 74 50 61 63 6b 61 c.function.__construct(RootPacka
8cce0 67 65 49 6e 74 65 72 66 61 63 65 20 24 61 6c 69 61 73 4f 66 2c 20 24 76 65 72 73 69 6f 6e 2c 20 geInterface.$aliasOf,.$version,.
8cd00 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 $prettyVersion).{.parent::__cons
8cd20 74 72 75 63 74 28 24 61 6c 69 61 73 4f 66 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 truct($aliasOf,.$version,.$prett
8cd40 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e yVersion);.}.....public.function
8cd60 20 67 65 74 41 6c 69 61 73 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c .getAliases().{.return.$this->al
8cd80 69 61 73 4f 66 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 iasOf->getAliases();.}.....publi
8cda0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 c.function.getMinimumStability()
8cdc0 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 4d 69 6e .{.return.$this->aliasOf->getMin
8cde0 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 imumStability();.}.....public.fu
8ce00 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 0a 7b 0a 72 65 74 nction.getStabilityFlags().{.ret
8ce20 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 urn.$this->aliasOf->getStability
8ce40 46 6c 61 67 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 Flags();.}.....public.function.g
8ce60 65 74 52 65 66 65 72 65 6e 63 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 etReferences().{.return.$this->a
8ce80 6c 69 61 73 4f 66 2d 3e 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 liasOf->getReferences();.}.....p
8cea0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 66 65 72 53 74 61 62 6c 65 28 29 ublic.function.getPreferStable()
8cec0 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 50 72 65 .{.return.$this->aliasOf->getPre
8cee0 66 65 72 53 74 61 62 6c 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ferStable();.}.....public.functi
8cf00 6f 6e 20 73 65 74 52 65 71 75 69 72 65 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 29 0a 7b on.setRequires(array.$require).{
8cf20 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 .$this->requires.=.$this->replac
8cf40 65 53 65 6c 66 56 65 72 73 69 6f 6e 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 72 65 71 75 69 72 eSelfVersionDependencies($requir
8cf60 65 2c 20 27 72 65 71 75 69 72 65 73 27 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d e,.'requires');..$this->aliasOf-
8cf80 3e 73 65 74 52 65 71 75 69 72 65 73 28 24 72 65 71 75 69 72 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 >setRequires($require);.}.....pu
8cfa0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 76 52 65 71 75 69 72 65 73 28 61 72 72 blic.function.setDevRequires(arr
8cfc0 61 79 20 24 64 65 76 52 65 71 75 69 72 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 76 52 65 71 75 ay.$devRequire).{.$this->devRequ
8cfe0 69 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 53 65 6c 66 56 65 72 73 69 6f 6e ires.=.$this->replaceSelfVersion
8d000 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 64 65 76 52 65 71 75 69 72 65 2c 20 27 64 65 76 52 65 Dependencies($devRequire,.'devRe
8d020 71 75 69 72 65 73 27 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 44 65 quires');..$this->aliasOf->setDe
8d040 76 52 65 71 75 69 72 65 73 28 24 64 65 76 52 65 71 75 69 72 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 vRequires($devRequire);.}.....pu
8d060 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 61 72 72 61 79 blic.function.setConflicts(array
8d080 20 24 63 6f 6e 66 6c 69 63 74 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 6c 69 63 74 73 20 .$conflicts).{.$this->conflicts.
8d0a0 3d 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 53 65 6c 66 56 65 72 73 69 6f 6e 44 65 70 65 6e =.$this->replaceSelfVersionDepen
8d0c0 64 65 6e 63 69 65 73 28 24 63 6f 6e 66 6c 69 63 74 73 2c 20 27 63 6f 6e 66 6c 69 63 74 73 27 29 dencies($conflicts,.'conflicts')
8d0e0 3b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 24 ;.$this->aliasOf->setConflicts($
8d100 63 6f 6e 66 6c 69 63 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f conflicts);.}.....public.functio
8d120 6e 20 73 65 74 50 72 6f 76 69 64 65 73 28 61 72 72 61 79 20 24 70 72 6f 76 69 64 65 73 29 0a 7b n.setProvides(array.$provides).{
8d140 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 .$this->provides.=.$this->replac
8d160 65 53 65 6c 66 56 65 72 73 69 6f 6e 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 70 72 6f 76 69 64 eSelfVersionDependencies($provid
8d180 65 73 2c 20 27 70 72 6f 76 69 64 65 73 27 29 3b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d es,.'provides');.$this->aliasOf-
8d1a0 3e 73 65 74 50 72 6f 76 69 64 65 73 28 24 70 72 6f 76 69 64 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 >setProvides($provides);.}.....p
8d1c0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6c 61 63 65 73 28 61 72 72 61 79 ublic.function.setReplaces(array
8d1e0 20 24 72 65 70 6c 61 63 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 20 3d 20 .$replaces).{.$this->replaces.=.
8d200 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 53 65 6c 66 56 65 72 73 69 6f 6e 44 65 70 65 6e 64 65 $this->replaceSelfVersionDepende
8d220 6e 63 69 65 73 28 24 72 65 70 6c 61 63 65 73 2c 20 27 72 65 70 6c 61 63 65 73 27 29 3b 0a 24 74 ncies($replaces,.'replaces');.$t
8d240 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 52 65 70 6c 61 63 65 73 28 24 72 65 70 6c 61 his->aliasOf->setReplaces($repla
8d260 63 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 ces);.}.....public.function.setR
8d280 65 70 6f 73 69 74 6f 72 69 65 73 28 24 72 65 70 6f 73 69 74 6f 72 69 65 73 29 0a 7b 0a 24 74 68 epositories($repositories).{.$th
8d2a0 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 72 65 is->aliasOf->setRepositories($re
8d2c0 70 6f 73 69 74 6f 72 69 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 positories);.}.....public.functi
8d2e0 6f 6e 20 73 65 74 41 75 74 6f 6c 6f 61 64 28 61 72 72 61 79 20 24 61 75 74 6f 6c 6f 61 64 29 0a on.setAutoload(array.$autoload).
8d300 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 41 75 74 6f 6c 6f 61 64 28 24 61 {.$this->aliasOf->setAutoload($a
8d320 75 74 6f 6c 6f 61 64 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 utoload);.}.....public.function.
8d340 73 65 74 44 65 76 41 75 74 6f 6c 6f 61 64 28 61 72 72 61 79 20 24 64 65 76 41 75 74 6f 6c 6f 61 setDevAutoload(array.$devAutoloa
8d360 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 44 65 76 41 75 74 6f 6c d).{.$this->aliasOf->setDevAutol
8d380 6f 61 64 28 24 64 65 76 41 75 74 6f 6c 6f 61 64 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 oad($devAutoload);.}.....public.
8d3a0 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 61 72 72 61 79 function.setStabilityFlags(array
8d3c0 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 .$stabilityFlags).{.$this->alias
8d3e0 4f 66 2d 3e 73 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 24 73 74 61 62 69 6c 69 74 79 Of->setStabilityFlags($stability
8d400 46 6c 61 67 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 Flags);.}.....public.function.se
8d420 74 53 75 67 67 65 73 74 73 28 61 72 72 61 79 20 24 73 75 67 67 65 73 74 73 29 0a 7b 0a 24 74 68 tSuggests(array.$suggests).{.$th
8d440 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 53 75 67 67 65 73 74 73 28 24 73 75 67 67 65 73 is->aliasOf->setSuggests($sugges
8d460 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 78 ts);.}.....public.function.setEx
8d480 74 72 61 28 61 72 72 61 79 20 24 65 78 74 72 61 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 tra(array.$extra).{.$this->alias
8d4a0 4f 66 2d 3e 73 65 74 45 78 74 72 61 28 24 65 78 74 72 61 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 Of->setExtra($extra);.}..public.
8d4c0 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6c 6f 6e 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 function.__clone().{.parent::__c
8d4e0 6c 6f 6e 65 28 29 3b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 20 3d 20 63 6c 6f 6e 65 20 24 lone();.$this->aliasOf.=.clone.$
8d500 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a this->aliasOf;.}.}.<?php........
8d520 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a ....namespace.Composer\Package;.
8d540 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 6f 6f 74 50 61 63 6b 61 67 65 20 65 78 74 65 6e 64 73 20 ......class.RootPackage.extends.
8d560 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 52 6f 6f 74 50 CompletePackage.implements.RootP
8d580 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 69 6e ackageInterface.{.protected.$min
8d5a0 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 27 73 74 61 62 6c 65 27 3b 0a 70 72 6f 74 65 63 imumStability.=.'stable';.protec
8d5c0 74 65 64 20 24 70 72 65 66 65 72 53 74 61 62 6c 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 ted.$preferStable.=.false;.prote
8d5e0 63 74 65 64 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a cted.$stabilityFlags.=.array();.
8d600 70 72 6f 74 65 63 74 65 64 20 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b protected.$references.=.array();
8d620 0a 70 72 6f 74 65 63 74 65 64 20 24 61 6c 69 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a .protected.$aliases.=.array();..
8d640 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4d 69 6e 69 6d 75 6d 53 .....public.function.setMinimumS
8d660 74 61 62 69 6c 69 74 79 28 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 29 0a 7b 0a 24 74 tability($minimumStability).{.$t
8d680 68 69 73 2d 3e 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 24 6d 69 6e 69 6d 75 6d his->minimumStability.=.$minimum
8d6a0 53 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e Stability;.}.....public.function
8d6c0 20 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 .getMinimumStability().{.return.
8d6e0 24 74 68 69 73 2d 3e 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a $this->minimumStability;.}......
8d700 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 .public.function.setStabilityFla
8d720 67 73 28 61 72 72 61 79 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 29 0a 7b 0a 24 74 68 69 gs(array.$stabilityFlags).{.$thi
8d740 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 24 73 74 61 62 69 6c 69 74 79 46 6c s->stabilityFlags.=.$stabilityFl
8d760 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 ags;.}.....public.function.getSt
8d780 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 abilityFlags().{.return.$this->s
8d7a0 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 tabilityFlags;.}.......public.fu
8d7c0 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 66 65 72 53 74 61 62 6c 65 28 24 70 72 65 66 65 72 53 74 nction.setPreferStable($preferSt
8d7e0 61 62 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 74 61 62 6c 65 20 3d 20 24 70 able).{.$this->preferStable.=.$p
8d800 72 65 66 65 72 53 74 61 62 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 referStable;.}.....public.functi
8d820 6f 6e 20 67 65 74 50 72 65 66 65 72 53 74 61 62 6c 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 on.getPreferStable().{.return.$t
8d840 68 69 73 2d 3e 70 72 65 66 65 72 53 74 61 62 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 his->preferStable;.}.......publi
8d860 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 66 65 72 65 6e 63 65 73 28 61 72 72 61 79 20 24 c.function.setReferences(array.$
8d880 72 65 66 65 72 65 6e 63 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 66 65 72 65 6e 63 65 73 20 references).{.$this->references.
8d8a0 3d 20 24 72 65 66 65 72 65 6e 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 =.$references;.}.....public.func
8d8c0 74 69 6f 6e 20 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 tion.getReferences().{.return.$t
8d8e0 68 69 73 2d 3e 72 65 66 65 72 65 6e 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 his->references;.}.......public.
8d900 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 20 24 61 6c 69 61 73 function.setAliases(array.$alias
8d920 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 20 3d 20 24 61 6c 69 61 73 65 73 3b es).{.$this->aliases.=.$aliases;
8d940 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 65 .}.....public.function.getAliase
8d960 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 3b 0a 7d 0a 7d s().{.return.$this->aliases;.}.}
8d980 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
8d9a0 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 52 6f oser\Package;.......interface.Ro
8d9c0 6f 74 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 43 6f 6d 70 6c otPackageInterface.extends.Compl
8d9e0 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 etePackageInterface.{......publi
8da00 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 c.function.getAliases();.......p
8da20 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 ublic.function.getMinimumStabili
8da40 74 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 ty();.........public.function.ge
8da60 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 tStabilityFlags();.........publi
8da80 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 29 3b 0a 0a 0a 0a 0a c.function.getReferences();.....
8daa0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 66 65 72 53 74 61 62 6c ..public.function.getPreferStabl
8dac0 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 e();.......public.function.setRe
8dae0 71 75 69 72 65 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 quires(array.$requires);.......p
8db00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 76 52 65 71 75 69 72 65 73 28 61 72 ublic.function.setDevRequires(ar
8db20 72 61 79 20 24 64 65 76 52 65 71 75 69 72 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ray.$devRequires);.......public.
8db40 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 61 72 72 61 79 20 24 63 6f 6e function.setConflicts(array.$con
8db60 66 6c 69 63 74 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 flicts);.......public.function.s
8db80 65 74 50 72 6f 76 69 64 65 73 28 61 72 72 61 79 20 24 70 72 6f 76 69 64 65 73 29 3b 0a 0a 0a 0a etProvides(array.$provides);....
8dba0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6c 61 63 65 73 28 61 ...public.function.setReplaces(a
8dbc0 72 72 61 79 20 24 72 65 70 6c 61 63 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 rray.$replaces);.......public.fu
8dbe0 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 72 65 70 6f 73 69 74 6f nction.setRepositories($reposito
8dc00 72 69 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 ries);.......public.function.set
8dc20 41 75 74 6f 6c 6f 61 64 28 61 72 72 61 79 20 24 61 75 74 6f 6c 6f 61 64 29 3b 0a 0a 0a 0a 0a 0a Autoload(array.$autoload);......
8dc40 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 76 41 75 74 6f 6c 6f 61 64 28 .public.function.setDevAutoload(
8dc60 61 72 72 61 79 20 24 64 65 76 41 75 74 6f 6c 6f 61 64 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 array.$devAutoload);.......publi
8dc80 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 61 72 72 c.function.setStabilityFlags(arr
8dca0 61 79 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ay.$stabilityFlags);.......publi
8dcc0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 75 67 67 65 73 74 73 28 61 72 72 61 79 20 24 73 75 c.function.setSuggests(array.$su
8dce0 67 67 65 73 74 73 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 ggests);.....public.function.set
8dd00 45 78 74 72 61 28 61 72 72 61 79 20 24 65 78 74 72 61 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a Extra(array.$extra);.}.<?php....
8dd20 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 ........namespace.Composer\Packa
8dd40 67 65 5c 56 65 72 73 69 6f 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 ge\Version;..use.Composer\Config
8dd60 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 48 67 ;.use.Composer\Repository\Vcs\Hg
8dd80 44 72 69 76 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 4e 75 6c 6c 49 4f 3b 0a Driver;.use.Composer\IO\NullIO;.
8dda0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 use.Composer\Semver\VersionParse
8ddc0 72 20 61 73 20 53 65 6d 76 65 72 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f r.as.SemverVersionParser;.use.Co
8dde0 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 47 69 74 20 61 73 20 47 69 74 55 74 69 6c 3b 0a 75 73 65 20 mposer\Util\Git.as.GitUtil;.use.
8de00 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 Composer\Util\ProcessExecutor;.u
8de20 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 76 6e 20 61 73 20 53 76 6e 55 74 69 6c 3b se.Composer\Util\Svn.as.SvnUtil;
8de40 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 65 72 73 69 6f 6e 47 75 65 73 73 65 72 0a 7b 0a 0a ........class.VersionGuesser.{..
8de60 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 ..private.$config;.....private.$
8de80 70 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 65 72 73 69 6f 6e 50 61 72 process;.....private.$versionPar
8dea0 73 65 72 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e ser;.......public.function.__con
8dec0 73 74 72 75 63 74 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 50 72 6f 63 65 73 73 45 78 struct(Config.$config,.ProcessEx
8dee0 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 2c 20 53 65 6d 76 65 72 56 65 72 73 69 6f 6e 50 61 ecutor.$process,.SemverVersionPa
8df00 72 73 65 72 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f rser.$versionParser).{.$this->co
8df20 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d nfig.=.$config;.$this->process.=
8df40 20 24 70 72 6f 63 65 73 73 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 .$process;.$this->versionParser.
8df60 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 =.$versionParser;.}........publi
8df80 63 20 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 56 65 72 73 69 6f 6e 28 61 72 72 61 79 20 24 70 c.function.guessVersion(array.$p
8dfa0 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 66 75 6e 63 74 ackageConfig,.$path).{.if.(funct
8dfc0 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 72 6f 63 5f 6f 70 65 6e 27 29 29 20 7b 0a 24 76 65 72 73 ion_exists('proc_open')).{.$vers
8dfe0 69 6f 6e 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 75 65 73 73 47 69 74 56 65 72 73 69 6f 6e ionData.=.$this->guessGitVersion
8e000 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 70 61 74 68 29 3b 0a 69 66 20 28 6e 75 6c ($packageConfig,.$path);.if.(nul
8e020 6c 20 21 3d 3d 20 24 76 65 72 73 69 6f 6e 44 61 74 61 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 65 l.!==.$versionData).{.return.$ve
8e040 72 73 69 6f 6e 44 61 74 61 3b 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 44 61 74 61 20 3d 20 24 74 68 rsionData;.}..$versionData.=.$th
8e060 69 73 2d 3e 67 75 65 73 73 48 67 56 65 72 73 69 6f 6e 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 is->guessHgVersion($packageConfi
8e080 67 2c 20 24 70 61 74 68 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 65 72 73 69 6f 6e g,.$path);.if.(null.!==.$version
8e0a0 44 61 74 61 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 44 61 74 61 3b 0a 7d 0a 0a Data).{.return.$versionData;.}..
8e0c0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 75 65 73 73 53 76 6e 56 65 72 73 69 6f 6e 28 24 70 return.$this->guessSvnVersion($p
8e0e0 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 ackageConfig,.$path);.}.}..priva
8e100 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 47 69 74 56 65 72 73 69 6f 6e 28 61 72 72 61 te.function.guessGitVersion(arra
8e120 79 20 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 70 61 74 68 29 0a 7b 0a 47 69 74 55 74 y.$packageConfig,.$path).{.GitUt
8e140 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 24 63 6f 6d 6d 69 74 20 3d 20 6e 75 6c 6c 3b 0a il::cleanEnv();.$commit.=.null;.
8e160 24 76 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 74 $version.=.null;....if.(0.===.$t
8e180 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 62 72 61 6e 63 his->process->execute('git.branc
8e1a0 68 20 2d 2d 6e 6f 2d 63 6f 6c 6f 72 20 2d 2d 6e 6f 2d 61 62 62 72 65 76 20 2d 76 27 2c 20 24 6f h.--no-color.--no-abbrev.-v',.$o
8e1c0 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 utput,.$path)).{.$branches.=.arr
8e1e0 61 79 28 29 3b 0a 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 68 20 3d 20 66 61 6c 73 65 3b 0a ay();.$isFeatureBranch.=.false;.
8e200 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 ...foreach.($this->process->spli
8e220 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 62 72 61 6e 63 68 29 20 7b 0a 69 66 tLines($output).as.$branch).{.if
8e240 20 28 24 62 72 61 6e 63 68 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 5c 2a .($branch.&&.preg_match('{^(?:\*
8e260 20 29 20 2a 28 5c 28 6e 6f 20 62 72 61 6e 63 68 5c 29 7c 5c 28 64 65 74 61 63 68 65 64 20 66 72 .).*(\(no.branch\)|\(detached.fr
8e280 6f 6d 20 5c 53 2b 5c 29 7c 5c 53 2b 29 20 2a 28 5b 61 2d 66 30 2d 39 5d 2b 29 20 2e 2a 24 7d 27 om.\S+\)|\S+).*([a-f0-9]+)..*$}'
8e2a0 2c 20 24 62 72 61 6e 63 68 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 28 24 6d 61 74 63 68 ,.$branch,.$match)).{.if.($match
8e2c0 5b 31 5d 20 3d 3d 3d 20 27 28 6e 6f 20 62 72 61 6e 63 68 29 27 20 7c 7c 20 73 75 62 73 74 72 28 [1].===.'(no.branch)'.||.substr(
8e2e0 24 6d 61 74 63 68 5b 31 5d 2c 20 30 2c 20 31 30 29 20 3d 3d 3d 20 27 28 64 65 74 61 63 68 65 64 $match[1],.0,.10).===.'(detached
8e300 20 27 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 64 65 76 2d 27 20 2e 20 24 6d 61 74 63 68 .').{.$version.=.'dev-'...$match
8e320 5b 32 5d 3b 0a 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 68 20 3d 20 74 72 75 65 3b 0a 7d 20 [2];.$isFeatureBranch.=.true;.}.
8e340 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e else.{.$version.=.$this->version
8e360 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 72 61 6e 63 68 28 24 6d 61 74 63 68 5b 31 Parser->normalizeBranch($match[1
8e380 5d 29 3b 0a 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 68 20 3d 20 30 20 3d 3d 3d 20 73 74 72 ]);.$isFeatureBranch.=.0.===.str
8e3a0 70 6f 73 28 24 76 65 72 73 69 6f 6e 2c 20 27 64 65 76 2d 27 29 3b 0a 69 66 20 28 27 39 39 39 39 pos($version,.'dev-');.if.('9999
8e3c0 39 39 39 2d 64 65 76 27 20 3d 3d 3d 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 999-dev'.===.$version).{.$versio
8e3e0 6e 20 3d 20 27 64 65 76 2d 27 20 2e 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 n.=.'dev-'...$match[1];.}.}..if.
8e400 28 24 6d 61 74 63 68 5b 32 5d 29 20 7b 0a 24 63 6f 6d 6d 69 74 20 3d 20 24 6d 61 74 63 68 5b 32 ($match[2]).{.$commit.=.$match[2
8e420 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 62 72 61 6e 63 68 20 26 26 20 21 70 72 65 67 5f 6d 61 74 ];.}.}..if.($branch.&&.!preg_mat
8e440 63 68 28 27 7b 5e 20 2a 5b 5e 2f 5d 2b 2f 48 45 41 44 20 7d 27 2c 20 24 62 72 61 6e 63 68 29 29 ch('{^.*[^/]+/HEAD.}',.$branch))
8e460 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 5c 2a 20 29 3f 20 2a 28 .{.if.(preg_match('{^(?:\*.)?.*(
8e480 5c 53 2b 29 20 2a 28 5b 61 2d 66 30 2d 39 5d 2b 29 20 2e 2a 24 7d 27 2c 20 24 62 72 61 6e 63 68 \S+).*([a-f0-9]+)..*$}',.$branch
8e4a0 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 5b 5d 20 3d 20 24 6d 61 74 63 ,.$match)).{.$branches[].=.$matc
8e4c0 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 h[1];.}.}.}..if.($isFeatureBranc
8e4e0 68 29 20 7b 0a 0a 20 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 75 65 73 73 46 65 h).{...$version.=.$this->guessFe
8e500 61 74 75 72 65 56 65 72 73 69 6f 6e 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 76 65 atureVersion($packageConfig,.$ve
8e520 72 73 69 6f 6e 2c 20 24 62 72 61 6e 63 68 65 73 2c 20 27 67 69 74 20 72 65 76 2d 6c 69 73 74 20 rsion,.$branches,.'git.rev-list.
8e540 25 63 61 6e 64 69 64 61 74 65 25 2e 2e 25 62 72 61 6e 63 68 25 27 2c 20 24 70 61 74 68 29 3b 0a %candidate%..%branch%',.$path);.
8e560 7d 0a 7d 0a 0a 69 66 20 28 21 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d }.}..if.(!$version).{.$version.=
8e580 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 46 72 6f 6d 47 69 74 54 61 67 73 28 24 70 61 74 68 .$this->versionFromGitTags($path
8e5a0 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 );.}..return.array('version'.=>.
8e5c0 24 76 65 72 73 69 6f 6e 2c 20 27 63 6f 6d 6d 69 74 27 20 3d 3e 20 24 63 6f 6d 6d 69 74 29 3b 0a $version,.'commit'.=>.$commit);.
8e5e0 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 65 72 73 69 6f 6e 46 72 6f 6d 47 }..private.function.versionFromG
8e600 69 74 54 61 67 73 28 24 70 61 74 68 29 0a 7b 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 itTags($path).{...if.(0.===.$thi
8e620 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 64 65 73 63 72 69 62 s->process->execute('git.describ
8e640 65 20 2d 2d 65 78 61 63 74 2d 6d 61 74 63 68 20 2d 2d 74 61 67 73 27 2c 20 24 6f 75 74 70 75 74 e.--exact-match.--tags',.$output
8e660 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e ,.$path)).{.try.{.return.$this->
8e680 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 74 72 69 6d 28 24 6f versionParser->normalize(trim($o
8e6a0 75 74 70 75 74 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 utput));.}.catch.(\Exception.$e)
8e6c0 20 7b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 .{.}.}..return.null;.}..private.
8e6e0 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 48 67 56 65 72 73 69 6f 6e 28 61 72 72 61 79 20 24 70 function.guessHgVersion(array.$p
8e700 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 70 61 74 68 29 0a 7b 0a 0a 20 69 66 20 28 30 20 3d ackageConfig,.$path).{...if.(0.=
8e720 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 67 20 62 ==.$this->process->execute('hg.b
8e740 72 61 6e 63 68 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 62 72 61 6e ranch',.$output,.$path)).{.$bran
8e760 63 68 20 3d 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 ch.=.trim($output);.$version.=.$
8e780 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 72 this->versionParser->normalizeBr
8e7a0 61 6e 63 68 28 24 62 72 61 6e 63 68 29 3b 0a 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 68 20 anch($branch);.$isFeatureBranch.
8e7c0 3d 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 76 65 72 73 69 6f 6e 2c 20 27 64 65 76 2d 27 29 =.0.===.strpos($version,.'dev-')
8e7e0 3b 0a 0a 69 66 20 28 27 39 39 39 39 39 39 39 2d 64 65 76 27 20 3d 3d 3d 20 24 76 65 72 73 69 6f ;..if.('9999999-dev'.===.$versio
8e800 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 64 65 76 2d 27 20 2e 20 24 62 72 61 6e 63 68 n).{.$version.=.'dev-'...$branch
8e820 3b 0a 7d 0a 0a 69 66 20 28 21 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 68 29 20 7b 0a 72 65 ;.}..if.(!$isFeatureBranch).{.re
8e840 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 20 24 64 72 69 76 65 72 20 3d 20 6e 65 turn.$version;.}....$driver.=.ne
8e860 77 20 48 67 44 72 69 76 65 72 28 61 72 72 61 79 28 27 75 72 6c 27 20 3d 3e 20 24 70 61 74 68 29 w.HgDriver(array('url'.=>.$path)
8e880 2c 20 6e 65 77 20 4e 75 6c 6c 49 4f 28 29 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 ,.new.NullIO(),.$this->config,.$
8e8a0 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 this->process);.$branches.=.arra
8e8c0 79 5f 6b 65 79 73 28 24 64 72 69 76 65 72 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 29 3b 0a y_keys($driver->getBranches());.
8e8e0 0a 0a 20 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 75 65 73 73 46 65 61 74 75 72 ...$version.=.$this->guessFeatur
8e900 65 56 65 72 73 69 6f 6e 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 76 65 72 73 69 6f eVersion($packageConfig,.$versio
8e920 6e 2c 20 24 62 72 61 6e 63 68 65 73 2c 20 27 68 67 20 6c 6f 67 20 2d 72 20 22 6e 6f 74 20 61 6e n,.$branches,.'hg.log.-r."not.an
8e940 63 65 73 74 6f 72 73 28 5c 27 25 63 61 6e 64 69 64 61 74 65 25 5c 27 29 20 61 6e 64 20 61 6e 63 cestors(\'%candidate%\').and.anc
8e960 65 73 74 6f 72 73 28 5c 27 25 62 72 61 6e 63 68 25 5c 27 29 22 20 2d 2d 74 65 6d 70 6c 61 74 65 estors(\'%branch%\')".--template
8e980 20 22 7b 6e 6f 64 65 7d 5c 5c 6e 22 27 2c 20 24 70 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 61 ."{node}\\n"',.$path);..return.a
8e9a0 72 72 61 79 28 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 65 72 73 69 6f 6e 2c 20 27 63 6f 6d rray('version'.=>.$version,.'com
8e9c0 6d 69 74 27 20 3d 3e 20 27 27 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 mit'.=>.'');.}.}..private.functi
8e9e0 6f 6e 20 67 75 65 73 73 46 65 61 74 75 72 65 56 65 72 73 69 6f 6e 28 61 72 72 61 79 20 24 70 61 on.guessFeatureVersion(array.$pa
8ea00 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 76 65 72 73 69 6f 6e 2c 20 61 72 72 61 79 20 24 62 72 ckageConfig,.$version,.array.$br
8ea20 61 6e 63 68 65 73 2c 20 24 73 63 6d 43 6d 64 6c 69 6e 65 2c 20 24 70 61 74 68 29 0a 7b 0a 0a 20 anches,.$scmCmdline,.$path).{...
8ea40 0a 20 69 66 20 28 28 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 5b 27 65 78 74 ..if.((isset($packageConfig['ext
8ea60 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 20 26 26 20 21 69 73 73 65 74 28 ra']['branch-alias']).&&.!isset(
8ea80 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d $packageConfig['extra']['branch-
8eaa0 61 6c 69 61 73 27 5d 5b 24 76 65 72 73 69 6f 6e 5d 29 29 0a 7c 7c 20 73 74 72 70 6f 73 28 6a 73 alias'][$version])).||.strpos(js
8eac0 6f 6e 5f 65 6e 63 6f 64 65 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 29 2c 20 27 22 73 65 6c on_encode($packageConfig),.'"sel
8eae0 66 2e 76 65 72 73 69 6f 6e 22 27 29 0a 29 20 7b 0a 24 62 72 61 6e 63 68 20 3d 20 70 72 65 67 5f f.version"').).{.$branch.=.preg_
8eb00 72 65 70 6c 61 63 65 28 27 7b 5e 64 65 76 2d 7d 27 2c 20 27 27 2c 20 24 76 65 72 73 69 6f 6e 29 replace('{^dev-}',.'',.$version)
8eb20 3b 0a 24 6c 65 6e 67 74 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 0a 24 6e 6f 6e 46 65 ;.$length.=.PHP_INT_MAX;..$nonFe
8eb40 61 74 75 72 65 42 72 61 6e 63 68 65 73 20 3d 20 27 27 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 atureBranches.=.'';.if.(!empty($
8eb60 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 5b 27 6e 6f 6e 2d 66 65 61 74 75 72 65 2d 62 72 61 6e 63 packageConfig['non-feature-branc
8eb80 68 65 73 27 5d 29 29 20 7b 0a 24 6e 6f 6e 46 65 61 74 75 72 65 42 72 61 6e 63 68 65 73 20 3d 20 hes'])).{.$nonFeatureBranches.=.
8eba0 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 5b 27 6e 6f 6e implode('|',.$packageConfig['non
8ebc0 2d 66 65 61 74 75 72 65 2d 62 72 61 6e 63 68 65 73 27 5d 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 -feature-branches']);.}..foreach
8ebe0 20 28 24 62 72 61 6e 63 68 65 73 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 0a 20 69 .($branches.as.$candidate).{...i
8ec00 66 20 28 24 63 61 6e 64 69 64 61 74 65 20 3d 3d 3d 20 24 62 72 61 6e 63 68 20 26 26 20 70 72 65 f.($candidate.===.$branch.&&.pre
8ec20 67 5f 6d 61 74 63 68 28 27 7b 5e 28 27 20 2e 20 24 6e 6f 6e 46 65 61 74 75 72 65 42 72 61 6e 63 g_match('{^('...$nonFeatureBranc
8ec40 68 65 73 20 2e 20 27 29 24 7d 27 2c 20 24 63 61 6e 64 69 64 61 74 65 29 29 20 7b 0a 72 65 74 75 hes...')$}',.$candidate)).{.retu
8ec60 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 63 61 6e 64 69 64 61 74 65 rn.$version;.}....if.($candidate
8ec80 20 3d 3d 3d 20 24 62 72 61 6e 63 68 20 7c 7c 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 .===.$branch.||.!preg_match('{^(
8eca0 6d 61 73 74 65 72 7c 74 72 75 6e 6b 7c 64 65 66 61 75 6c 74 7c 64 65 76 65 6c 6f 70 7c 5c 64 2b master|trunk|default|develop|\d+
8ecc0 5c 2e 2e 2b 29 24 7d 27 2c 20 24 63 61 6e 64 69 64 61 74 65 2c 20 24 6d 61 74 63 68 29 29 20 7b \..+)$}',.$candidate,.$match)).{
8ece0 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6d 64 4c 69 6e 65 20 3d 20 73 74 72 5f 72 65 70 .continue;.}..$cmdLine.=.str_rep
8ed00 6c 61 63 65 28 61 72 72 61 79 28 27 25 63 61 6e 64 69 64 61 74 65 25 27 2c 20 27 25 62 72 61 6e lace(array('%candidate%',.'%bran
8ed20 63 68 25 27 29 2c 20 61 72 72 61 79 28 24 63 61 6e 64 69 64 61 74 65 2c 20 24 62 72 61 6e 63 68 ch%'),.array($candidate,.$branch
8ed40 29 2c 20 24 73 63 6d 43 6d 64 6c 69 6e 65 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 ),.$scmCmdline);.if.(0.!==.$this
8ed60 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6d 64 4c 69 6e 65 2c 20 24 6f 75 ->process->execute($cmdLine,.$ou
8ed80 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 tput,.$path)).{.continue;.}..if.
8eda0 28 73 74 72 6c 65 6e 28 24 6f 75 74 70 75 74 29 20 3c 20 24 6c 65 6e 67 74 68 29 20 7b 0a 24 6c (strlen($output).<.$length).{.$l
8edc0 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 6f 75 74 70 75 74 29 3b 0a 24 76 65 72 73 69 6f ength.=.strlen($output);.$versio
8ede0 6e 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c n.=.$this->versionParser->normal
8ee00 69 7a 65 42 72 61 6e 63 68 28 24 63 61 6e 64 69 64 61 74 65 29 3b 0a 69 66 20 28 27 39 39 39 39 izeBranch($candidate);.if.('9999
8ee20 39 39 39 2d 64 65 76 27 20 3d 3d 3d 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 999-dev'.===.$version).{.$versio
8ee40 6e 20 3d 20 27 64 65 76 2d 27 20 2e 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a n.=.'dev-'...$match[1];.}.}.}.}.
8ee60 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e .return.$version;.}..private.fun
8ee80 63 74 69 6f 6e 20 67 75 65 73 73 53 76 6e 56 65 72 73 69 6f 6e 28 61 72 72 61 79 20 24 70 61 63 ction.guessSvnVersion(array.$pac
8eea0 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 70 61 74 68 29 0a 7b 0a 53 76 6e 55 74 69 6c 3a 3a 63 6c kageConfig,.$path).{.SvnUtil::cl
8eec0 65 61 6e 45 6e 76 28 29 3b 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 eanEnv();....if.(0.===.$this->pr
8eee0 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 69 6e 66 6f 20 2d 2d 78 6d 6c 27 2c ocess->execute('svn.info.--xml',
8ef00 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 74 72 75 6e 6b 50 61 74 68 20 3d .$output,.$path)).{.$trunkPath.=
8ef20 20 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 5b 27 74 72 75 6e 6b 2d 70 61 74 .isset($packageConfig['trunk-pat
8ef40 68 27 5d 29 20 3f 20 70 72 65 67 5f 71 75 6f 74 65 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 h']).?.preg_quote($packageConfig
8ef60 5b 27 74 72 75 6e 6b 2d 70 61 74 68 27 5d 2c 20 27 23 27 29 20 3a 20 27 74 72 75 6e 6b 27 3b 0a ['trunk-path'],.'#').:.'trunk';.
8ef80 24 62 72 61 6e 63 68 65 73 50 61 74 68 20 3d 20 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 43 6f $branchesPath.=.isset($packageCo
8efa0 6e 66 69 67 5b 27 62 72 61 6e 63 68 65 73 2d 70 61 74 68 27 5d 29 20 3f 20 70 72 65 67 5f 71 75 nfig['branches-path']).?.preg_qu
8efc0 6f 74 65 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 5b 27 62 72 61 6e 63 68 65 73 2d 70 61 74 ote($packageConfig['branches-pat
8efe0 68 27 5d 2c 20 27 23 27 29 20 3a 20 27 62 72 61 6e 63 68 65 73 27 3b 0a 24 74 61 67 73 50 61 74 h'],.'#').:.'branches';.$tagsPat
8f000 68 20 3d 20 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 5b 27 74 61 67 73 2d 70 h.=.isset($packageConfig['tags-p
8f020 61 74 68 27 5d 29 20 3f 20 70 72 65 67 5f 71 75 6f 74 65 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 ath']).?.preg_quote($packageConf
8f040 69 67 5b 27 74 61 67 73 2d 70 61 74 68 27 5d 2c 20 27 23 27 29 20 3a 20 27 74 61 67 73 27 3b 0a ig['tags-path'],.'#').:.'tags';.
8f060 0a 24 75 72 6c 50 61 74 74 65 72 6e 20 3d 20 27 23 3c 75 72 6c 3e 2e 2a 2f 28 27 20 2e 20 24 74 .$urlPattern.=.'#<url>.*/('...$t
8f080 72 75 6e 6b 50 61 74 68 20 2e 20 27 7c 28 27 20 2e 20 24 62 72 61 6e 63 68 65 73 50 61 74 68 20 runkPath...'|('...$branchesPath.
8f0a0 2e 20 27 7c 27 20 2e 20 24 74 61 67 73 50 61 74 68 20 2e 20 27 29 2f 28 2e 2a 29 29 3c 2f 75 72 ..'|'...$tagsPath...')/(.*))</ur
8f0c0 6c 3e 23 27 3b 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 75 72 6c 50 61 74 74 65 72 l>#';..if.(preg_match($urlPatter
8f0e0 6e 2c 20 24 6f 75 74 70 75 74 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 69 66 20 28 69 73 73 n,.$output,.$matches)).{.if.(iss
8f100 65 74 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 26 26 20 28 24 62 72 61 6e 63 68 65 73 50 61 74 et($matches[2]).&&.($branchesPat
8f120 68 20 3d 3d 3d 20 24 6d 61 74 63 68 65 73 5b 32 5d 20 7c 7c 20 24 74 61 67 73 50 61 74 68 20 3d h.===.$matches[2].||.$tagsPath.=
8f140 3d 3d 20 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a 0a 20 24 76 65 72 73 69 6f 6e 20 3d 20 ==.$matches[2])).{...$version.=.
8f160 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 $this->versionParser->normalizeB
8f180 72 61 6e 63 68 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 3b 0a 69 66 20 28 27 39 39 39 39 39 39 39 ranch($matches[3]);.if.('9999999
8f1a0 2d 64 65 76 27 20 3d 3d 3d 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d -dev'.===.$version).{.$version.=
8f1c0 20 27 64 65 76 2d 27 20 2e 20 24 6d 61 74 63 68 65 73 5b 33 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e .'dev-'...$matches[3];.}..return
8f1e0 20 61 72 72 61 79 28 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 65 72 73 69 6f 6e 2c 20 27 63 .array('version'.=>.$version,.'c
8f200 6f 6d 6d 69 74 27 20 3d 3e 20 27 27 29 3b 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 ommit'.=>.'');.}..$version.=.$th
8f220 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 74 72 69 is->versionParser->normalize(tri
8f240 6d 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 m($matches[1]));..return.array('
8f260 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 65 72 73 69 6f 6e 2c 20 27 63 6f 6d 6d 69 74 27 20 3d version'.=>.$version,.'commit'.=
8f280 3e 20 27 27 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a >.'');.}.}.}.}.<?php............
8f2a0 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 namespace.Composer\Package\Versi
8f2c0 6f 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 56 65 72 73 69 6f 6e on;..use.Composer\Semver\Version
8f2e0 50 61 72 73 65 72 20 61 73 20 53 65 6d 76 65 72 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a Parser.as.SemverVersionParser;..
8f300 63 6c 61 73 73 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 65 78 74 65 6e 64 73 20 53 65 6d 76 class.VersionParser.extends.Semv
8f320 65 72 56 65 72 73 69 6f 6e 50 61 72 73 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 erVersionParser.{.private.static
8f340 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 .$constraints.=.array();.....pub
8f360 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 lic.function.parseConstraints($c
8f380 6f 6e 73 74 72 61 69 6e 74 73 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 onstraints).{.if.(!isset(self::$
8f3a0 63 6f 6e 73 74 72 61 69 6e 74 73 5b 24 63 6f 6e 73 74 72 61 69 6e 74 73 5d 29 29 20 7b 0a 73 65 constraints[$constraints])).{.se
8f3c0 6c 66 3a 3a 24 63 6f 6e 73 74 72 61 69 6e 74 73 5b 24 63 6f 6e 73 74 72 61 69 6e 74 73 5d 20 3d lf::$constraints[$constraints].=
8f3e0 20 70 61 72 65 6e 74 3a 3a 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 6f 6e 73 74 .parent::parseConstraints($const
8f400 72 61 69 6e 74 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 63 6f 6e 73 74 72 raints);.}..return.self::$constr
8f420 61 69 6e 74 73 5b 24 63 6f 6e 73 74 72 61 69 6e 74 73 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a aints[$constraints];.}..........
8f440 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 4e 61 6d 65 56 65 72 73 69 ..public.function.parseNameVersi
8f460 6f 6e 50 61 69 72 73 28 61 72 72 61 79 20 24 70 61 69 72 73 29 0a 7b 0a 24 70 61 69 72 73 20 3d onPairs(array.$pairs).{.$pairs.=
8f480 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 70 61 69 72 73 29 3b 0a 24 72 65 73 75 6c 74 20 3d .array_values($pairs);.$result.=
8f4a0 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 63 6f 75 6e 74 20 3d .array();..for.($i.=.0,.$count.=
8f4c0 20 63 6f 75 6e 74 28 24 70 61 69 72 73 29 3b 20 24 69 20 3c 20 24 63 6f 75 6e 74 3b 20 24 69 2b .count($pairs);.$i.<.$count;.$i+
8f4e0 2b 29 20 7b 0a 24 70 61 69 72 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 5b 5e +).{.$pair.=.preg_replace('{^([^
8f500 3d 3a 20 5d 2b 29 5b 3d 3a 20 5d 28 2e 2a 29 24 7d 27 2c 20 27 24 31 20 24 32 27 2c 20 74 72 69 =:.]+)[=:.](.*)$}',.'$1.$2',.tri
8f520 6d 28 24 70 61 69 72 73 5b 24 69 5d 29 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 m($pairs[$i]));.if.(false.===.st
8f540 72 70 6f 73 28 24 70 61 69 72 2c 20 27 20 27 29 20 26 26 20 69 73 73 65 74 28 24 70 61 69 72 73 rpos($pair,.'.').&&.isset($pairs
8f560 5b 24 69 20 2b 20 31 5d 29 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 70 [$i.+.1]).&&.false.===.strpos($p
8f580 61 69 72 73 5b 24 69 20 2b 20 31 5d 2c 20 27 2f 27 29 29 20 7b 0a 24 70 61 69 72 20 2e 3d 20 27 airs[$i.+.1],.'/')).{.$pair..=.'
8f5a0 20 27 2e 24 70 61 69 72 73 5b 24 69 20 2b 20 31 5d 3b 0a 24 69 2b 2b 3b 0a 7d 0a 0a 69 66 20 28 .'.$pairs[$i.+.1];.$i++;.}..if.(
8f5c0 73 74 72 70 6f 73 28 24 70 61 69 72 2c 20 27 20 27 29 29 20 7b 0a 6c 69 73 74 28 24 6e 61 6d 65 strpos($pair,.'.')).{.list($name
8f5e0 2c 20 24 76 65 72 73 69 6f 6e 29 20 3d 20 65 78 70 6c 6f 64 65 28 22 20 22 2c 20 24 70 61 69 72 ,.$version).=.explode(".",.$pair
8f600 2c 20 32 29 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 61 72 72 61 79 28 27 6e 61 6d 65 27 20 3d ,.2);.$result[].=.array('name'.=
8f620 3e 20 24 6e 61 6d 65 2c 20 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 65 72 73 69 6f 6e 29 3b >.$name,.'version'.=>.$version);
8f640 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 61 72 72 61 79 28 27 6e 61 6d .}.else.{.$result[].=.array('nam
8f660 65 27 20 3d 3e 20 24 70 61 69 72 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c e'.=>.$pair);.}.}..return.$resul
8f680 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 t;.}.}.<?php............namespac
8f6a0 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 3b 0a 0a 75 73 65 e.Composer\Package\Version;..use
8f6c0 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6f .Composer\DependencyResolver\Poo
8f6e0 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b l;.use.Composer\Package\BasePack
8f700 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 age;.use.Composer\Package\Packag
8f720 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 eInterface;.use.Composer\Package
8f740 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 \Loader\ArrayLoader;.use.Compose
8f760 72 5c 50 61 63 6b 61 67 65 5c 44 75 6d 70 65 72 5c 41 72 72 61 79 44 75 6d 70 65 72 3b 0a 75 73 r\Package\Dumper\ArrayDumper;.us
8f780 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e e.Composer\Semver\Constraint\Con
8f7a0 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 65 72 73 69 6f 6e 53 65 6c straint;........class.VersionSel
8f7c0 65 63 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 6f 6f 6c 3b 0a 0a 70 72 69 76 61 74 65 20 ector.{.private.$pool;..private.
8f7e0 24 70 61 72 73 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 $parser;..public.function.__cons
8f800 74 72 75 63 74 28 50 6f 6f 6c 20 24 70 6f 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 truct(Pool.$pool).{.$this->pool.
8f820 3d 20 24 70 6f 6f 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e =.$pool;.}............public.fun
8f840 63 74 69 6f 6e 20 66 69 6e 64 42 65 73 74 43 61 6e 64 69 64 61 74 65 28 24 70 61 63 6b 61 67 65 ction.findBestCandidate($package
8f860 4e 61 6d 65 2c 20 24 74 61 72 67 65 74 50 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3d 20 6e 75 Name,.$targetPackageVersion.=.nu
8f880 6c 6c 2c 20 24 74 61 72 67 65 74 50 68 70 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 70 ll,.$targetPhpVersion.=.null,.$p
8f8a0 72 65 66 65 72 72 65 64 53 74 61 62 69 6c 69 74 79 20 3d 20 27 73 74 61 62 6c 65 27 29 0a 7b 0a referredStability.=.'stable').{.
8f8c0 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 61 72 67 65 74 50 61 63 6b 61 67 65 56 65 72 73 $constraint.=.$targetPackageVers
8f8e0 69 6f 6e 20 3f 20 24 74 68 69 73 2d 3e 67 65 74 50 61 72 73 65 72 28 29 2d 3e 70 61 72 73 65 43 ion.?.$this->getParser()->parseC
8f900 6f 6e 73 74 72 61 69 6e 74 73 28 24 74 61 72 67 65 74 50 61 63 6b 61 67 65 56 65 72 73 69 6f 6e onstraints($targetPackageVersion
8f920 29 20 3a 20 6e 75 6c 6c 3b 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 ).:.null;.$candidates.=.$this->p
8f940 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 ool->whatProvides(strtolower($pa
8f960 63 6b 61 67 65 4e 61 6d 65 29 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 74 72 75 65 29 3b 0a ckageName),.$constraint,.true);.
8f980 0a 69 66 20 28 24 74 61 72 67 65 74 50 68 70 56 65 72 73 69 6f 6e 29 20 7b 0a 24 70 68 70 43 6f .if.($targetPhpVersion).{.$phpCo
8f9a0 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 nstraint.=.new.Constraint('==',.
8f9c0 24 74 68 69 73 2d 3e 67 65 74 50 61 72 73 65 72 28 29 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 74 $this->getParser()->normalize($t
8f9e0 61 72 67 65 74 50 68 70 56 65 72 73 69 6f 6e 29 29 3b 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d argetPhpVersion));.$candidates.=
8fa00 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 63 61 6e 64 69 64 61 74 65 73 2c 20 66 75 6e 63 74 .array_filter($candidates,.funct
8fa20 69 6f 6e 20 28 24 70 6b 67 29 20 75 73 65 20 28 24 70 68 70 43 6f 6e 73 74 72 61 69 6e 74 29 20 ion.($pkg).use.($phpConstraint).
8fa40 7b 0a 24 72 65 71 73 20 3d 20 24 70 6b 67 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 0a {.$reqs.=.$pkg->getRequires();..
8fa60 72 65 74 75 72 6e 20 21 69 73 73 65 74 28 24 72 65 71 73 5b 27 70 68 70 27 5d 29 20 7c 7c 20 24 return.!isset($reqs['php']).||.$
8fa80 72 65 71 73 5b 27 70 68 70 27 5d 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 2d 3e 6d 61 reqs['php']->getConstraint()->ma
8faa0 74 63 68 65 73 28 24 70 68 70 43 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 29 3b 0a 7d 0a 0a 69 66 tches($phpConstraint);.});.}..if
8fac0 20 28 21 24 63 61 6e 64 69 64 61 74 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a .(!$candidates).{.return.false;.
8fae0 7d 0a 0a 0a 20 24 70 61 63 6b 61 67 65 20 3d 20 72 65 73 65 74 28 24 63 61 6e 64 69 64 61 74 65 }....$package.=.reset($candidate
8fb00 73 29 3b 0a 24 6d 69 6e 50 72 69 6f 72 69 74 79 20 3d 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a s);.$minPriority.=.BasePackage::
8fb20 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 70 72 65 66 65 72 72 65 64 53 74 61 62 69 6c 69 74 79 $stabilities[$preferredStability
8fb40 5d 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 61 6e 64 69 64 61 74 65 73 20 61 73 20 24 63 61 6e 64 ];.foreach.($candidates.as.$cand
8fb60 69 64 61 74 65 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 50 72 69 6f 72 69 74 79 20 3d 20 24 63 idate).{.$candidatePriority.=.$c
8fb80 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 50 72 69 6f 72 69 74 79 28 29 andidate->getStabilityPriority()
8fba0 3b 0a 24 63 75 72 72 65 6e 74 50 72 69 6f 72 69 74 79 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 ;.$currentPriority.=.$package->g
8fbc0 65 74 53 74 61 62 69 6c 69 74 79 50 72 69 6f 72 69 74 79 28 29 3b 0a 0a 0a 20 69 66 20 28 24 6d etStabilityPriority();....if.($m
8fbe0 69 6e 50 72 69 6f 72 69 74 79 20 3c 20 24 63 61 6e 64 69 64 61 74 65 50 72 69 6f 72 69 74 79 20 inPriority.<.$candidatePriority.
8fc00 26 26 20 24 63 75 72 72 65 6e 74 50 72 69 6f 72 69 74 79 20 3c 20 24 63 61 6e 64 69 64 61 74 65 &&.$currentPriority.<.$candidate
8fc20 50 72 69 6f 72 69 74 79 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 20 69 66 20 28 24 6d Priority).{.continue;.}...if.($m
8fc40 69 6e 50 72 69 6f 72 69 74 79 20 3e 3d 20 24 63 61 6e 64 69 64 61 74 65 50 72 69 6f 72 69 74 79 inPriority.>=.$candidatePriority
8fc60 20 26 26 20 24 6d 69 6e 50 72 69 6f 72 69 74 79 20 3c 20 24 63 75 72 72 65 6e 74 50 72 69 6f 72 .&&.$minPriority.<.$currentPrior
8fc80 69 74 79 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 63 6f ity).{.$package.=.$candidate;.co
8fca0 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 ntinue;.}....if.(version_compare
8fcc0 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 24 63 61 6e 64 69 64 ($package->getVersion(),.$candid
8fce0 61 74 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 27 3c 27 29 29 20 7b 0a 24 70 61 63 6b ate->getVersion(),.'<')).{.$pack
8fd00 61 67 65 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 age.=.$candidate;.}.}..return.$p
8fd20 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ackage;.}.................public
8fd40 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 52 65 63 6f 6d 6d 65 6e 64 65 64 52 65 71 75 69 72 65 .function.findRecommendedRequire
8fd60 56 65 72 73 69 6f 6e 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 Version(PackageInterface.$packag
8fd80 65 29 0a 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 e).{.$version.=.$package->getVer
8fda0 73 69 6f 6e 28 29 3b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 29 20 sion();.if.(!$package->isDev()).
8fdc0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 72 61 6e 73 66 6f 72 6d 56 65 72 73 69 6f 6e {.return.$this->transformVersion
8fde0 28 24 76 65 72 73 69 6f 6e 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 ($version,.$package->getPrettyVe
8fe00 72 73 69 6f 6e 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 rsion(),.$package->getStability(
8fe20 29 29 3b 0a 7d 0a 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 ));.}..$loader.=.new.ArrayLoader
8fe40 28 24 74 68 69 73 2d 3e 67 65 74 50 61 72 73 65 72 28 29 29 3b 0a 24 64 75 6d 70 65 72 20 3d 20 ($this->getParser());.$dumper.=.
8fe60 6e 65 77 20 41 72 72 61 79 44 75 6d 70 65 72 28 29 3b 0a 24 65 78 74 72 61 20 3d 20 24 6c 6f 61 new.ArrayDumper();.$extra.=.$loa
8fe80 64 65 72 2d 3e 67 65 74 42 72 61 6e 63 68 41 6c 69 61 73 28 24 64 75 6d 70 65 72 2d 3e 64 75 6d der->getBranchAlias($dumper->dum
8fea0 70 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 69 66 20 28 24 65 78 74 72 61 29 20 7b 0a 24 65 78 74 p($package));.if.($extra).{.$ext
8fec0 72 61 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 5c 64 2b 5c 2e 5c 64 2b 5c 2e ra.=.preg_replace('{^(\d+\.\d+\.
8fee0 5c 64 2b 29 28 5c 2e 39 39 39 39 39 39 39 29 2d 64 65 76 24 7d 27 2c 20 27 24 31 2e 30 27 2c 20 \d+)(\.9999999)-dev$}',.'$1.0',.
8ff00 24 65 78 74 72 61 2c 20 2d 31 2c 20 24 63 6f 75 6e 74 29 3b 0a 69 66 20 28 24 63 6f 75 6e 74 29 $extra,.-1,.$count);.if.($count)
8ff20 20 7b 0a 24 65 78 74 72 61 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 2e 39 39 39 39 39 39 .{.$extra.=.str_replace('.999999
8ff40 39 27 2c 20 27 2e 30 27 2c 20 24 65 78 74 72 61 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 9',.'.0',.$extra);..return.$this
8ff60 2d 3e 74 72 61 6e 73 66 6f 72 6d 56 65 72 73 69 6f 6e 28 24 65 78 74 72 61 2c 20 24 65 78 74 72 ->transformVersion($extra,.$extr
8ff80 61 2c 20 27 64 65 76 27 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d a,.'dev');.}.}..return.$package-
8ffa0 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 >getPrettyVersion();.}..private.
8ffc0 66 75 6e 63 74 69 6f 6e 20 74 72 61 6e 73 66 6f 72 6d 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 function.transformVersion($versi
8ffe0 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 2c 20 24 73 74 61 62 69 6c 69 74 79 29 0a on,.$prettyVersion,.$stability).
90000 7b 0a 0a 20 0a 20 24 73 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 20 3d 20 65 78 {.....$semanticVersionParts.=.ex
90020 70 6c 6f 64 65 28 27 2e 27 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 0a 0a 20 69 66 20 28 63 6f 75 plode('.',.$version);....if.(cou
90040 6e 74 28 24 73 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 29 20 3d 3d 20 34 20 26 nt($semanticVersionParts).==.4.&
90060 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 30 5c 44 3f 7d 27 2c 20 24 73 65 6d 61 6e 74 69 &.preg_match('{^0\D?}',.$semanti
90080 63 56 65 72 73 69 6f 6e 50 61 72 74 73 5b 33 5d 29 29 20 7b 0a 0a 20 69 66 20 28 24 73 65 6d 61 cVersionParts[3])).{...if.($sema
900a0 6e 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 5b 30 5d 20 3d 3d 3d 20 27 30 27 29 20 7b 0a 75 nticVersionParts[0].===.'0').{.u
900c0 6e 73 65 74 28 24 73 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 5b 33 5d 29 3b 0a nset($semanticVersionParts[3]);.
900e0 7d 20 65 6c 73 65 20 7b 0a 75 6e 73 65 74 28 24 73 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 }.else.{.unset($semanticVersionP
90100 61 72 74 73 5b 32 5d 2c 20 24 73 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 5b 33 arts[2],.$semanticVersionParts[3
90120 5d 29 3b 0a 7d 0a 24 76 65 72 73 69 6f 6e 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2e 27 2c 20 24 73 ]);.}.$version.=.implode('.',.$s
90140 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 72 emanticVersionParts);.}.else.{.r
90160 65 74 75 72 6e 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 eturn.$prettyVersion;.}....if.($
90180 73 74 61 62 69 6c 69 74 79 20 21 3d 20 27 73 74 61 62 6c 65 27 29 20 7b 0a 24 76 65 72 73 69 6f stability.!=.'stable').{.$versio
901a0 6e 20 2e 3d 20 27 40 27 2e 24 73 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e n..=.'@'.$stability;.}....return
901c0 20 27 5e 27 20 2e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 .'^'...$version;.}..private.func
901e0 74 69 6f 6e 20 67 65 74 50 61 72 73 65 72 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 61 tion.getParser().{.if.($this->pa
90200 72 73 65 72 20 3d 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 72 20 3d rser.===.null).{.$this->parser.=
90220 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 .new.VersionParser();.}..return.
90240 24 74 68 69 73 2d 3e 70 61 72 73 65 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a $this->parser;.}.}.<?php........
90260 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 61 ....namespace.Composer\Plugin\Ca
90280 70 61 62 69 6c 69 74 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 61 70 61 62 pability;........interface.Capab
902a0 69 6c 69 74 79 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 ility.{.}.<?php............names
902c0 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e pace.Composer\Plugin;.........in
902e0 74 65 72 66 61 63 65 20 43 61 70 61 62 6c 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a terface.Capable.{...............
90300 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 61 70 61 62 69 6c 69 74 ....public.function.getCapabilit
90320 69 65 73 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 ies();.}.<?php............namesp
90340 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 ace.Composer\Plugin;..use.Compos
90360 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 3b 0a 75 73 65 20 53 79 er\EventDispatcher\Event;.use.Sy
90380 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e mfony\Component\Console\Input\In
903a0 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e putInterface;.use.Symfony\Compon
903c0 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 ent\Console\Output\OutputInterfa
903e0 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 65 78 74 ce;.......class.CommandEvent.ext
90400 65 6e 64 73 20 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 ends.Event.{....private.$command
90420 4e 61 6d 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 3b 0a 0a 0a 0a 0a 70 72 Name;.....private.$input;.....pr
90440 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ivate.$output;............public
90460 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 63 6f .function.__construct($name,.$co
90480 6d 6d 61 6e 64 4e 61 6d 65 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 61 72 72 61 mmandName,.$input,.$output,.arra
904a0 79 20 24 61 72 67 73 20 3d 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 66 6c 61 67 73 20 y.$args.=.array(),.array.$flags.
904c0 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 =.array()).{.parent::__construct
904e0 28 24 6e 61 6d 65 2c 20 24 61 72 67 73 2c 20 24 66 6c 61 67 73 29 3b 0a 24 74 68 69 73 2d 3e 63 ($name,.$args,.$flags);.$this->c
90500 6f 6d 6d 61 6e 64 4e 61 6d 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 3b 0a 24 74 68 69 73 ommandName.=.$commandName;.$this
90520 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 ->input.=.$input;.$this->output.
90540 3d 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 =.$output;.}.......public.functi
90560 6f 6e 20 67 65 74 49 6e 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e on.getInput().{.return.$this->in
90580 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 put;.}.......public.function.get
905a0 4f 75 74 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b Output().{.return.$this->output;
905c0 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d .}.......public.function.getComm
905e0 61 6e 64 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e andName().{.return.$this->comman
90600 64 4e 61 6d 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 dName;.}.}.<?php............name
90620 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 space.Composer\Plugin;.......cla
90640 73 73 20 50 6c 75 67 69 6e 45 76 65 6e 74 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 ss.PluginEvents.{.........const.
90660 43 4f 4d 4d 41 4e 44 20 3d 20 27 63 6f 6d 6d 61 6e 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f COMMAND.=.'command';..........co
90680 6e 73 74 20 50 52 45 5f 46 49 4c 45 5f 44 4f 57 4e 4c 4f 41 44 20 3d 20 27 70 72 65 2d 66 69 6c nst.PRE_FILE_DOWNLOAD.=.'pre-fil
906a0 65 2d 64 6f 77 6e 6c 6f 61 64 27 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a e-download';.}.<?php............
906c0 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 3b 0a 0a 75 73 65 20 namespace.Composer\Plugin;..use.
906e0 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c Composer\Composer;.use.Composer\
90700 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 IO\IOInterface;.......interface.
90720 50 6c 75 67 69 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4c 55 PluginInterface.{......const.PLU
90740 47 49 4e 5f 41 50 49 5f 56 45 52 53 49 4f 4e 20 3d 20 27 31 2e 30 2e 30 27 3b 0a 0a 0a 0a 0a 0a GIN_API_VERSION.=.'1.0.0';......
90760 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 74 69 76 61 74 65 28 43 6f 6d 70 6f ..public.function.activate(Compo
90780 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 3b ser.$composer,.IOInterface.$io);
907a0 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
907c0 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d mposer\Plugin;..use.Composer\Com
907e0 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 poser;.use.Composer\EventDispatc
90800 68 65 72 5c 45 76 65 6e 74 53 75 62 73 63 72 69 62 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 her\EventSubscriberInterface;.us
90820 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 e.Composer\IO\IOInterface;.use.C
90840 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d omposer\Package\Package;.use.Com
90860 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 poser\Package\Version\VersionPar
90880 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 ser;.use.Composer\Repository\Rep
908a0 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 ositoryInterface;.use.Composer\P
908c0 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 ackage\AliasPackage;.use.Compose
908e0 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 r\Package\PackageInterface;.use.
90900 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 3b 0a 75 73 65 20 43 6f 6d 70 6f Composer\Package\Link;.use.Compo
90920 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 ser\Semver\Constraint\Constraint
90940 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 ;.use.Composer\DependencyResolve
90960 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 61 70 61 r\Pool;.use.Composer\Plugin\Capa
90980 62 69 6c 69 74 79 5c 43 61 70 61 62 69 6c 69 74 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 bility\Capability;........class.
909a0 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6d 70 6f PluginManager.{.protected.$compo
909c0 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 67 ser;.protected.$io;.protected.$g
909e0 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 73 69 6f lobalComposer;.protected.$versio
90a00 6e 50 61 72 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 nParser;.protected.$disablePlugi
90a20 6e 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6c 75 67 69 6e 73 20 ns.=.false;..protected.$plugins.
90a40 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 67 69 73 74 65 72 65 64 =.array();.protected.$registered
90a60 50 6c 75 67 69 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 Plugins.=.array();..private.stat
90a80 69 63 20 24 63 6c 61 73 73 43 6f 75 6e 74 65 72 20 3d 20 30 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ic.$classCounter.=.0;..........p
90aa0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 ublic.function.__construct(IOInt
90ac0 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 erface.$io,.Composer.$composer,.
90ae0 43 6f 6d 70 6f 73 65 72 20 24 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 20 3d 20 6e 75 6c 6c 2c Composer.$globalComposer.=.null,
90b00 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 .$disablePlugins.=.false).{.$thi
90b20 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 s->io.=.$io;.$this->composer.=.$
90b40 63 6f 6d 70 6f 73 65 72 3b 0a 24 74 68 69 73 2d 3e 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 20 composer;.$this->globalComposer.
90b60 3d 20 24 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f =.$globalComposer;.$this->versio
90b80 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 nParser.=.new.VersionParser();.$
90ba0 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 20 3d 20 24 64 69 73 61 62 6c 65 50 this->disablePlugins.=.$disableP
90bc0 6c 75 67 69 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f lugins;.}.....public.function.lo
90be0 61 64 49 6e 73 74 61 6c 6c 65 64 50 6c 75 67 69 6e 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 adInstalledPlugins().{.if.($this
90c00 2d 3e 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 ->disablePlugins).{.return;.}..$
90c20 72 65 70 6f 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 repo.=.$this->composer->getRepos
90c40 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f itoryManager()->getLocalReposito
90c60 72 79 28 29 3b 0a 24 67 6c 6f 62 61 6c 52 65 70 6f 20 3d 20 24 74 68 69 73 2d 3e 67 6c 6f 62 61 ry();.$globalRepo.=.$this->globa
90c80 6c 43 6f 6d 70 6f 73 65 72 20 3f 20 24 74 68 69 73 2d 3e 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 lComposer.?.$this->globalCompose
90ca0 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f r->getRepositoryManager()->getLo
90cc0 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 20 3a 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 72 65 70 calRepository().:.null;.if.($rep
90ce0 6f 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f o).{.$this->loadRepository($repo
90d00 29 3b 0a 7d 0a 69 66 20 28 24 67 6c 6f 62 61 6c 52 65 70 6f 29 20 7b 0a 24 74 68 69 73 2d 3e 6c );.}.if.($globalRepo).{.$this->l
90d20 6f 61 64 52 65 70 6f 73 69 74 6f 72 79 28 24 67 6c 6f 62 61 6c 52 65 70 6f 29 3b 0a 7d 0a 7d 0a oadRepository($globalRepo);.}.}.
90d40 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6c 75 67 69 6e 73 ......public.function.getPlugins
90d60 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 6c 75 67 69 6e 73 3b 0a 7d 0a 0a 0a ().{.return.$this->plugins;.}...
90d80 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 67 69 73 74 ..........public.function.regist
90da0 65 72 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b erPackage(PackageInterface.$pack
90dc0 61 67 65 2c 20 24 66 61 69 6c 4f 6e 4d 69 73 73 69 6e 67 43 6c 61 73 73 65 73 20 3d 20 66 61 6c age,.$failOnMissingClasses.=.fal
90de0 73 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 se).{.if.($this->disablePlugins)
90e00 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 .{.return;.}..if.($package->getT
90e20 79 70 65 28 29 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 27 29 20 7b 0a 24 ype().===.'composer-plugin').{.$
90e40 72 65 71 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 20 3d 20 6e 75 6c 6c 3b 0a 66 6f 72 65 61 63 68 requiresComposer.=.null;.foreach
90e60 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 20 61 73 20 24 6c 69 .($package->getRequires().as.$li
90e80 6e 6b 29 20 7b 20 0a 69 66 20 28 27 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 2d 61 70 69 27 nk).{..if.('composer-plugin-api'
90ea0 20 3d 3d 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 29 20 7b 0a 24 72 65 71 75 .===.$link->getTarget()).{.$requ
90ec0 69 72 65 73 43 6f 6d 70 6f 73 65 72 20 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 iresComposer.=.$link->getConstra
90ee0 69 6e 74 28 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 72 65 71 75 69 72 65 int();.break;.}.}..if.(!$require
90f00 73 43 6f 6d 70 6f 73 65 72 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 sComposer).{.throw.new.\RuntimeE
90f20 78 63 65 70 74 69 6f 6e 28 22 50 6c 75 67 69 6e 20 22 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 xception("Plugin.".$package->get
90f40 4e 61 6d 65 28 29 2e 22 20 69 73 20 6d 69 73 73 69 6e 67 20 61 20 72 65 71 75 69 72 65 20 73 74 Name().".is.missing.a.require.st
90f60 61 74 65 6d 65 6e 74 20 66 6f 72 20 61 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 6d atement.for.a.version.of.the.com
90f80 70 6f 73 65 72 2d 70 6c 75 67 69 6e 2d 61 70 69 20 70 61 63 6b 61 67 65 2e 22 29 3b 0a 7d 0a 0a poser-plugin-api.package.");.}..
90fa0 24 63 75 72 72 65 6e 74 50 6c 75 67 69 6e 41 70 69 56 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 $currentPluginApiVersion.=.$this
90fc0 2d 3e 67 65 74 50 6c 75 67 69 6e 41 70 69 56 65 72 73 69 6f 6e 28 29 3b 0a 24 63 75 72 72 65 6e ->getPluginApiVersion();.$curren
90fe0 74 50 6c 75 67 69 6e 41 70 69 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 74 tPluginApiConstraint.=.new.Const
91000 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 raint('==',.$this->versionParser
91020 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 63 75 72 72 65 6e 74 50 6c 75 67 69 6e 41 70 69 56 65 72 ->normalize($currentPluginApiVer
91040 73 69 6f 6e 29 29 3b 0a 0a 69 66 20 28 24 72 65 71 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 2d 3e sion));..if.($requiresComposer->
91060 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 20 3d 3d 3d 20 27 31 2e 30 2e 30 27 20 26 26 getPrettyString().===.'1.0.0'.&&
91080 20 24 74 68 69 73 2d 3e 67 65 74 50 6c 75 67 69 6e 41 70 69 56 65 72 73 69 6f 6e 28 29 20 3d 3d .$this->getPluginApiVersion().==
910a0 3d 20 27 31 2e 30 2e 30 27 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 =.'1.0.0').{.$this->io->writeErr
910c0 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 54 68 65 20 22 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e or('<warning>The."'...$package->
910e0 67 65 74 4e 61 6d 65 28 29 20 2e 20 27 22 20 70 6c 75 67 69 6e 20 72 65 71 75 69 72 65 73 20 63 getName()...'".plugin.requires.c
91100 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 2d 61 70 69 20 31 2e 30 2e 30 2c 20 74 68 69 73 20 2a omposer-plugin-api.1.0.0,.this.*
91120 57 49 4c 4c 2a 20 62 72 65 61 6b 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 20 61 6e 64 20 69 74 WILL*.break.in.the.future.and.it
91140 20 73 68 6f 75 6c 64 20 62 65 20 66 69 78 65 64 20 41 53 41 50 20 28 72 65 71 75 69 72 65 20 5e .should.be.fixed.ASAP.(require.^
91160 31 2e 30 20 66 6f 72 20 65 78 61 6d 70 6c 65 29 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 1.0.for.example).</warning>');.}
91180 20 65 6c 73 65 69 66 20 28 21 24 72 65 71 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 2d 3e 6d 61 74 .elseif.(!$requiresComposer->mat
911a0 63 68 65 73 28 24 63 75 72 72 65 6e 74 50 6c 75 67 69 6e 41 70 69 43 6f 6e 73 74 72 61 69 6e 74 ches($currentPluginApiConstraint
911c0 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 )).{.$this->io->writeError('<war
911e0 6e 69 6e 67 3e 54 68 65 20 22 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 ning>The."'...$package->getName(
91200 29 20 2e 20 27 22 20 70 6c 75 67 69 6e 20 77 61 73 20 73 6b 69 70 70 65 64 20 62 65 63 61 75 73 )...'".plugin.was.skipped.becaus
91220 65 20 69 74 20 72 65 71 75 69 72 65 73 20 61 20 50 6c 75 67 69 6e 20 41 50 49 20 76 65 72 73 69 e.it.requires.a.Plugin.API.versi
91240 6f 6e 20 28 22 27 20 2e 20 24 72 65 71 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 on.("'...$requiresComposer->getP
91260 72 65 74 74 79 53 74 72 69 6e 67 28 29 20 2e 20 27 22 29 20 74 68 61 74 20 64 6f 65 73 20 6e 6f rettyString()...'").that.does.no
91280 74 20 6d 61 74 63 68 20 79 6f 75 72 20 43 6f 6d 70 6f 73 65 72 20 69 6e 73 74 61 6c 6c 61 74 69 t.match.your.Composer.installati
912a0 6f 6e 20 28 22 27 20 2e 20 24 63 75 72 72 65 6e 74 50 6c 75 67 69 6e 41 70 69 56 65 72 73 69 6f on.("'...$currentPluginApiVersio
912c0 6e 20 2e 20 27 22 29 2e 20 59 6f 75 20 6d 61 79 20 6e 65 65 64 20 74 6f 20 72 75 6e 20 63 6f 6d n...'")..You.may.need.to.run.com
912e0 70 6f 73 65 72 20 75 70 64 61 74 65 20 77 69 74 68 20 74 68 65 20 22 2d 2d 6e 6f 2d 70 6c 75 67 poser.update.with.the."--no-plug
91300 69 6e 73 22 20 6f 70 74 69 6f 6e 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 0a 72 65 74 75 72 ins".option.</warning>');..retur
91320 6e 3b 0a 7d 0a 7d 0a 0a 24 6f 6c 64 49 6e 73 74 61 6c 6c 65 72 50 6c 75 67 69 6e 20 3d 20 28 24 n;.}.}..$oldInstallerPlugin.=.($
91340 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 79 70 65 28 29 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 package->getType().===.'composer
91360 2d 69 6e 73 74 61 6c 6c 65 72 27 29 3b 0a 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 70 61 63 -installer');..if.(in_array($pac
91380 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 74 68 69 73 2d 3e 72 65 67 69 73 74 65 72 kage->getName(),.$this->register
913a0 65 64 50 6c 75 67 69 6e 73 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 65 78 74 72 61 20 edPlugins)).{.return;.}..$extra.
913c0 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 45 78 74 72 61 28 29 3b 0a 69 66 20 28 65 6d 70 74 =.$package->getExtra();.if.(empt
913e0 79 28 24 65 78 74 72 61 5b 27 63 6c 61 73 73 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 y($extra['class'])).{.throw.new.
91400 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 45 72 72 6f 72 \UnexpectedValueException('Error
91420 20 77 68 69 6c 65 20 69 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 .while.installing.'.$package->ge
91440 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 2c 20 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e tPrettyName().',.composer-plugin
91460 20 70 61 63 6b 61 67 65 73 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 63 6c 61 73 73 20 64 65 .packages.should.have.a.class.de
91480 66 69 6e 65 64 20 69 6e 20 74 68 65 69 72 20 65 78 74 72 61 20 6b 65 79 20 74 6f 20 62 65 20 75 fined.in.their.extra.key.to.be.u
914a0 73 61 62 6c 65 2e 27 29 3b 0a 7d 0a 24 63 6c 61 73 73 65 73 20 3d 20 69 73 5f 61 72 72 61 79 28 sable.');.}.$classes.=.is_array(
914c0 24 65 78 74 72 61 5b 27 63 6c 61 73 73 27 5d 29 20 3f 20 24 65 78 74 72 61 5b 27 63 6c 61 73 73 $extra['class']).?.$extra['class
914e0 27 5d 20 3a 20 61 72 72 61 79 28 24 65 78 74 72 61 5b 27 63 6c 61 73 73 27 5d 29 3b 0a 0a 24 6c '].:.array($extra['class']);..$l
91500 6f 63 61 6c 52 65 70 6f 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 ocalRepo.=.$this->composer->getR
91520 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f epositoryManager()->getLocalRepo
91540 73 69 74 6f 72 79 28 29 3b 0a 24 67 6c 6f 62 61 6c 52 65 70 6f 20 3d 20 24 74 68 69 73 2d 3e 67 sitory();.$globalRepo.=.$this->g
91560 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 20 3f 20 24 74 68 69 73 2d 3e 67 6c 6f 62 61 6c 43 6f 6d lobalComposer.?.$this->globalCom
91580 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 poser->getRepositoryManager()->g
915a0 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 20 3a 20 6e 75 6c 6c 3b 0a 0a 24 70 6f etLocalRepository().:.null;..$po
915c0 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c 28 27 64 65 76 27 29 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 ol.=.new.Pool('dev');.$pool->add
915e0 52 65 70 6f 73 69 74 6f 72 79 28 24 6c 6f 63 61 6c 52 65 70 6f 29 3b 0a 69 66 20 28 24 67 6c 6f Repository($localRepo);.if.($glo
91600 62 61 6c 52 65 70 6f 29 20 7b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 balRepo).{.$pool->addRepository(
91620 24 67 6c 6f 62 61 6c 52 65 70 6f 29 3b 0a 7d 0a 0a 24 61 75 74 6f 6c 6f 61 64 50 61 63 6b 61 67 $globalRepo);.}..$autoloadPackag
91640 65 73 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d es.=.array($package->getName().=
91660 3e 20 24 70 61 63 6b 61 67 65 29 3b 0a 24 61 75 74 6f 6c 6f 61 64 50 61 63 6b 61 67 65 73 20 3d >.$package);.$autoloadPackages.=
91680 20 24 74 68 69 73 2d 3e 63 6f 6c 6c 65 63 74 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 70 6f 6f .$this->collectDependencies($poo
916a0 6c 2c 20 24 61 75 74 6f 6c 6f 61 64 50 61 63 6b 61 67 65 73 2c 20 24 70 61 63 6b 61 67 65 29 3b l,.$autoloadPackages,.$package);
916c0 0a 0a 24 67 65 6e 65 72 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e ..$generator.=.$this->composer->
916e0 67 65 74 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 28 29 3b 0a 24 61 75 74 6f 6c 6f 61 getAutoloadGenerator();.$autoloa
91700 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 ds.=.array();.foreach.($autoload
91720 50 61 63 6b 61 67 65 73 20 61 73 20 24 61 75 74 6f 6c 6f 61 64 50 61 63 6b 61 67 65 29 20 7b 0a Packages.as.$autoloadPackage).{.
91740 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c $downloadPath.=.$this->getInstal
91760 6c 50 61 74 68 28 24 61 75 74 6f 6c 6f 61 64 50 61 63 6b 61 67 65 2c 20 28 24 67 6c 6f 62 61 6c lPath($autoloadPackage,.($global
91780 52 65 70 6f 20 26 26 20 24 67 6c 6f 62 61 6c 52 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 Repo.&&.$globalRepo->hasPackage(
917a0 24 61 75 74 6f 6c 6f 61 64 50 61 63 6b 61 67 65 29 29 29 3b 0a 24 61 75 74 6f 6c 6f 61 64 73 5b $autoloadPackage)));.$autoloads[
917c0 5d 20 3d 20 61 72 72 61 79 28 24 61 75 74 6f 6c 6f 61 64 50 61 63 6b 61 67 65 2c 20 24 64 6f 77 ].=.array($autoloadPackage,.$dow
917e0 6e 6c 6f 61 64 50 61 74 68 29 3b 0a 7d 0a 0a 24 6d 61 70 20 3d 20 24 67 65 6e 65 72 61 74 6f 72 nloadPath);.}..$map.=.$generator
91800 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 28 24 61 75 74 6f 6c 6f 61 64 73 2c 20 6e 65 77 ->parseAutoloads($autoloads,.new
91820 20 50 61 63 6b 61 67 65 28 27 64 75 6d 6d 79 27 2c 20 27 31 2e 30 2e 30 2e 30 27 2c 20 27 31 2e .Package('dummy',.'1.0.0.0',.'1.
91840 30 2e 30 27 29 29 3b 0a 24 63 6c 61 73 73 4c 6f 61 64 65 72 20 3d 20 24 67 65 6e 65 72 61 74 6f 0.0'));.$classLoader.=.$generato
91860 72 2d 3e 63 72 65 61 74 65 4c 6f 61 64 65 72 28 24 6d 61 70 29 3b 0a 24 63 6c 61 73 73 4c 6f 61 r->createLoader($map);.$classLoa
91880 64 65 72 2d 3e 72 65 67 69 73 74 65 72 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6c 61 73 der->register();..foreach.($clas
918a0 73 65 73 20 61 73 20 24 63 6c 61 73 73 29 20 7b 0a 69 66 20 28 63 6c 61 73 73 5f 65 78 69 73 74 ses.as.$class).{.if.(class_exist
918c0 73 28 24 63 6c 61 73 73 2c 20 66 61 6c 73 65 29 29 20 7b 0a 24 70 61 74 68 20 3d 20 24 63 6c 61 s($class,.false)).{.$path.=.$cla
918e0 73 73 4c 6f 61 64 65 72 2d 3e 66 69 6e 64 46 69 6c 65 28 24 63 6c 61 73 73 29 3b 0a 24 63 6f 64 ssLoader->findFile($class);.$cod
91900 65 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 70 61 74 68 29 3b 0a 24 63 e.=.file_get_contents($path);.$c
91920 6f 64 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 28 3f 3a 66 69 6e 61 6c 5c ode.=.preg_replace('{^((?:final\
91940 73 2b 29 3f 28 3f 3a 5c 73 2a 29 29 63 6c 61 73 73 5c 73 2b 28 5c 53 2b 29 7d 6d 69 27 2c 20 27 s+)?(?:\s*))class\s+(\S+)}mi',.'
91960 24 31 63 6c 61 73 73 20 24 32 5f 63 6f 6d 70 6f 73 65 72 5f 74 6d 70 27 2e 73 65 6c 66 3a 3a 24 $1class.$2_composer_tmp'.self::$
91980 63 6c 61 73 73 43 6f 75 6e 74 65 72 2c 20 24 63 6f 64 65 29 3b 0a 24 63 6f 64 65 20 3d 20 73 74 classCounter,.$code);.$code.=.st
919a0 72 5f 72 65 70 6c 61 63 65 28 27 5f 5f 46 49 4c 45 5f 5f 27 2c 20 76 61 72 5f 65 78 70 6f 72 74 r_replace('__FILE__',.var_export
919c0 28 24 70 61 74 68 2c 20 74 72 75 65 29 2c 20 24 63 6f 64 65 29 3b 0a 24 63 6f 64 65 20 3d 20 73 ($path,.true),.$code);.$code.=.s
919e0 74 72 5f 72 65 70 6c 61 63 65 28 27 5f 5f 44 49 52 5f 5f 27 2c 20 76 61 72 5f 65 78 70 6f 72 74 tr_replace('__DIR__',.var_export
91a00 28 64 69 72 6e 61 6d 65 28 24 70 61 74 68 29 2c 20 74 72 75 65 29 2c 20 24 63 6f 64 65 29 3b 0a (dirname($path),.true),.$code);.
91a20 24 63 6f 64 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5f 5f 43 4c 41 53 53 5f 5f 27 2c $code.=.str_replace('__CLASS__',
91a40 20 76 61 72 5f 65 78 70 6f 72 74 28 24 63 6c 61 73 73 2c 20 74 72 75 65 29 2c 20 24 63 6f 64 65 .var_export($class,.true),.$code
91a60 29 3b 0a 65 76 61 6c 28 27 3f 3e 27 2e 24 63 6f 64 65 29 3b 0a 24 63 6c 61 73 73 20 2e 3d 20 27 );.eval('?>'.$code);.$class..=.'
91a80 5f 63 6f 6d 70 6f 73 65 72 5f 74 6d 70 27 2e 73 65 6c 66 3a 3a 24 63 6c 61 73 73 43 6f 75 6e 74 _composer_tmp'.self::$classCount
91aa0 65 72 3b 0a 73 65 6c 66 3a 3a 24 63 6c 61 73 73 43 6f 75 6e 74 65 72 2b 2b 3b 0a 7d 0a 0a 69 66 er;.self::$classCounter++;.}..if
91ac0 20 28 24 6f 6c 64 49 6e 73 74 61 6c 6c 65 72 50 6c 75 67 69 6e 29 20 7b 0a 24 69 6e 73 74 61 6c .($oldInstallerPlugin).{.$instal
91ae0 6c 65 72 20 3d 20 6e 65 77 20 24 63 6c 61 73 73 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 ler.=.new.$class($this->io,.$thi
91b00 73 2d 3e 63 6f 6d 70 6f 73 65 72 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 s->composer);.$this->composer->g
91b20 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 2d 3e 61 64 64 49 6e 73 74 etInstallationManager()->addInst
91b40 61 6c 6c 65 72 28 24 69 6e 73 74 61 6c 6c 65 72 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 63 6c 61 aller($installer);.}.elseif.(cla
91b60 73 73 5f 65 78 69 73 74 73 28 24 63 6c 61 73 73 29 29 20 7b 0a 24 70 6c 75 67 69 6e 20 3d 20 6e ss_exists($class)).{.$plugin.=.n
91b80 65 77 20 24 63 6c 61 73 73 28 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 50 6c 75 67 69 6e 28 24 70 ew.$class();.$this->addPlugin($p
91ba0 6c 75 67 69 6e 29 3b 0a 24 74 68 69 73 2d 3e 72 65 67 69 73 74 65 72 65 64 50 6c 75 67 69 6e 73 lugin);.$this->registeredPlugins
91bc0 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 7d 20 65 6c 73 65 [].=.$package->getName();.}.else
91be0 69 66 20 28 24 66 61 69 6c 4f 6e 4d 69 73 73 69 6e 67 43 6c 61 73 73 65 73 29 20 7b 0a 74 68 72 if.($failOnMissingClasses).{.thr
91c00 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e ow.new.\UnexpectedValueException
91c20 28 27 50 6c 75 67 69 6e 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 ('Plugin.'.$package->getName().'
91c40 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 2c 20 63 6c 61 73 73 .could.not.be.initialized,.class
91c60 20 6e 6f 74 20 66 6f 75 6e 64 3a 20 27 2e 24 63 6c 61 73 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a .not.found:.'.$class);.}.}.}....
91c80 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6c 75 67 69 6e 41 ...protected.function.getPluginA
91ca0 70 69 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 50 6c 75 67 69 6e 49 6e 74 65 72 piVersion().{.return.PluginInter
91cc0 66 61 63 65 3a 3a 50 4c 55 47 49 4e 5f 41 50 49 5f 56 45 52 53 49 4f 4e 3b 0a 7d 0a 0a 0a 0a 0a face::PLUGIN_API_VERSION;.}.....
91ce0 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 50 6c 75 67 69 6e 28 50 6c 75 ..private.function.addPlugin(Plu
91d00 67 69 6e 49 6e 74 65 72 66 61 63 65 20 24 70 6c 75 67 69 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 ginInterface.$plugin).{.$this->i
91d20 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 4c 6f 61 64 69 6e 67 20 70 6c 75 67 69 6e 20 27 2e o->writeError('Loading.plugin.'.
91d40 67 65 74 5f 63 6c 61 73 73 28 24 70 6c 75 67 69 6e 29 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 get_class($plugin),.true,.IOInte
91d60 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 24 74 68 69 73 2d 3e 70 6c 75 67 69 6e 73 5b 5d 20 rface::DEBUG);.$this->plugins[].
91d80 3d 20 24 70 6c 75 67 69 6e 3b 0a 24 70 6c 75 67 69 6e 2d 3e 61 63 74 69 76 61 74 65 28 24 74 68 =.$plugin;.$plugin->activate($th
91da0 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2c 20 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 0a 69 66 20 28 24 is->composer,.$this->io);..if.($
91dc0 70 6c 75 67 69 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 45 76 65 6e 74 53 75 62 73 63 72 69 62 65 plugin.instanceof.EventSubscribe
91de0 72 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 rInterface).{.$this->composer->g
91e00 65 74 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 28 29 2d 3e 61 64 64 53 75 62 73 63 72 69 62 etEventDispatcher()->addSubscrib
91e20 65 72 28 24 70 6c 75 67 69 6e 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 er($plugin);.}.}.............pri
91e40 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 vate.function.loadRepository(Rep
91e60 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 29 0a 7b 0a 66 6f 72 65 61 63 ositoryInterface.$repo).{.foreac
91e80 68 20 28 24 72 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b h.($repo->getPackages().as.$pack
91ea0 61 67 65 29 20 7b 20 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 age).{..if.($package.instanceof.
91ec0 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 AliasPackage).{.continue;.}.if.(
91ee0 27 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 27 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 'composer-plugin'.===.$package->
91f00 67 65 74 54 79 70 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 67 69 73 74 65 72 50 61 63 6b getType()).{.$this->registerPack
91f20 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 20 7d 20 65 6c 73 65 69 66 20 28 27 63 6f 6d 70 age($package);...}.elseif.('comp
91f40 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 27 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 oser-installer'.===.$package->ge
91f60 74 54 79 70 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 67 69 73 74 65 72 50 61 63 6b 61 67 tType()).{.$this->registerPackag
91f80 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 e($package);.}.}.}...........pri
91fa0 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6c 6c 65 63 74 44 65 70 65 6e 64 65 6e 63 69 65 vate.function.collectDependencie
91fc0 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 63 6f 6c 6c 65 63 74 65 64 2c 20 s(Pool.$pool,.array.$collected,.
91fe0 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 72 65 PackageInterface.$package).{.$re
92000 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 24 70 61 63 6b 61 67 65 2d 3e quires.=.array_merge(.$package->
92020 67 65 74 52 65 71 75 69 72 65 73 28 29 2c 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 getRequires(),.$package->getDevR
92040 65 71 75 69 72 65 73 28 29 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 equires().);..foreach.($requires
92060 20 61 73 20 24 72 65 71 75 69 72 65 4c 69 6e 6b 29 20 7b 0a 24 72 65 71 75 69 72 65 64 50 61 63 .as.$requireLink).{.$requiredPac
92080 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 6f 6b 75 70 49 6e 73 74 61 6c 6c 65 64 50 61 63 kage.=.$this->lookupInstalledPac
920a0 6b 61 67 65 28 24 70 6f 6f 6c 2c 20 24 72 65 71 75 69 72 65 4c 69 6e 6b 29 3b 0a 69 66 20 28 24 kage($pool,.$requireLink);.if.($
920c0 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 26 26 20 21 69 73 73 65 74 28 24 63 6f 6c 6c 65 requiredPackage.&&.!isset($colle
920e0 63 74 65 64 5b 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 cted[$requiredPackage->getName()
92100 5d 29 29 20 7b 0a 24 63 6f 6c 6c 65 63 74 65 64 5b 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 ])).{.$collected[$requiredPackag
92120 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 e->getName()].=.$requiredPackage
92140 3b 0a 24 63 6f 6c 6c 65 63 74 65 64 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6c 6c 65 63 74 44 65 70 ;.$collected.=.$this->collectDep
92160 65 6e 64 65 6e 63 69 65 73 28 24 70 6f 6f 6c 2c 20 24 63 6f 6c 6c 65 63 74 65 64 2c 20 24 72 65 endencies($pool,.$collected,.$re
92180 71 75 69 72 65 64 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6c quiredPackage);.}.}..return.$col
921a0 6c 65 63 74 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e lected;.}............private.fun
921c0 63 74 69 6f 6e 20 6c 6f 6f 6b 75 70 49 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 28 50 6f 6f ction.lookupInstalledPackage(Poo
921e0 6c 20 24 70 6f 6f 6c 2c 20 4c 69 6e 6b 20 24 6c 69 6e 6b 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 l.$pool,.Link.$link).{.$packages
92200 20 3d 20 24 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 .=.$pool->whatProvides($link->ge
92220 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 tTarget(),.$link->getConstraint(
92240 29 29 3b 0a 0a 72 65 74 75 72 6e 20 28 21 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 73 29 29 20 ));..return.(!empty($packages)).
92260 3f 20 24 70 61 63 6b 61 67 65 73 5b 30 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ?.$packages[0].:.null;.}........
92280 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 ..private.function.getInstallPat
922a0 68 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 67 6c h(PackageInterface.$package,.$gl
922c0 6f 62 61 6c 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 67 6c 6f 62 61 6c 29 20 7b 0a obal.=.false).{.if.(!$global).{.
922e0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 61 return.$this->composer->getInsta
92300 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 llationManager()->getInstallPath
92320 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 6c 6f ($package);.}..return.$this->glo
92340 62 61 6c 43 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 balComposer->getInstallationMana
92360 67 65 72 28 29 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b ger()->getInstallPath($package);
92380 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 .}........protected.function.get
923a0 43 61 70 61 62 69 6c 69 74 79 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 43 6c 61 73 73 4e 61 6d CapabilityImplementationClassNam
923c0 65 28 50 6c 75 67 69 6e 49 6e 74 65 72 66 61 63 65 20 24 70 6c 75 67 69 6e 2c 20 24 63 61 70 61 e(PluginInterface.$plugin,.$capa
923e0 62 69 6c 69 74 79 29 0a 7b 0a 69 66 20 28 21 28 24 70 6c 75 67 69 6e 20 69 6e 73 74 61 6e 63 65 bility).{.if.(!($plugin.instance
92400 6f 66 20 43 61 70 61 62 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 24 of.Capable)).{.return.null;.}..$
92420 63 61 70 61 62 69 6c 69 74 69 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 70 6c 75 67 69 6e 2d 3e capabilities.=.(array).$plugin->
92440 67 65 74 43 61 70 61 62 69 6c 69 74 69 65 73 28 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 getCapabilities();..if.(!empty($
92460 63 61 70 61 62 69 6c 69 74 69 65 73 5b 24 63 61 70 61 62 69 6c 69 74 79 5d 29 20 26 26 20 69 73 capabilities[$capability]).&&.is
92480 5f 73 74 72 69 6e 67 28 24 63 61 70 61 62 69 6c 69 74 69 65 73 5b 24 63 61 70 61 62 69 6c 69 74 _string($capabilities[$capabilit
924a0 79 5d 29 20 26 26 20 74 72 69 6d 28 24 63 61 70 61 62 69 6c 69 74 69 65 73 5b 24 63 61 70 61 62 y]).&&.trim($capabilities[$capab
924c0 69 6c 69 74 79 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 69 6d 28 24 63 61 70 61 62 69 6c 69 ility])).{.return.trim($capabili
924e0 74 69 65 73 5b 24 63 61 70 61 62 69 6c 69 74 79 5d 29 3b 0a 7d 0a 0a 69 66 20 28 0a 61 72 72 61 ties[$capability]);.}..if.(.arra
92500 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 63 61 70 61 62 69 6c 69 74 79 2c 20 24 63 61 70 61 62 y_key_exists($capability,.$capab
92520 69 6c 69 74 69 65 73 29 0a 26 26 20 28 65 6d 70 74 79 28 24 63 61 70 61 62 69 6c 69 74 69 65 73 ilities).&&.(empty($capabilities
92540 5b 24 63 61 70 61 62 69 6c 69 74 79 5d 29 20 7c 7c 20 21 69 73 5f 73 74 72 69 6e 67 28 24 63 61 [$capability]).||.!is_string($ca
92560 70 61 62 69 6c 69 74 69 65 73 5b 24 63 61 70 61 62 69 6c 69 74 79 5d 29 20 7c 7c 20 21 74 72 69 pabilities[$capability]).||.!tri
92580 6d 28 24 63 61 70 61 62 69 6c 69 74 69 65 73 5b 24 63 61 70 61 62 69 6c 69 74 79 5d 29 29 0a 29 m($capabilities[$capability])).)
925a0 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 .{.throw.new.\UnexpectedValueExc
925c0 65 70 74 69 6f 6e 28 27 50 6c 75 67 69 6e 20 27 2e 67 65 74 5f 63 6c 61 73 73 28 24 70 6c 75 67 eption('Plugin.'.get_class($plug
925e0 69 6e 29 2e 27 20 70 72 6f 76 69 64 65 64 20 69 6e 76 61 6c 69 64 20 63 61 70 61 62 69 6c 69 74 in).'.provided.invalid.capabilit
92600 79 20 63 6c 61 73 73 20 6e 61 6d 65 28 73 29 2c 20 67 6f 74 20 27 2e 76 61 72 5f 65 78 70 6f 72 y.class.name(s),.got.'.var_expor
92620 74 28 24 63 61 70 61 62 69 6c 69 74 69 65 73 5b 24 63 61 70 61 62 69 6c 69 74 79 5d 2c 20 31 29 t($capabilities[$capability],.1)
92640 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 );.}.}..........public.function.
92660 67 65 74 50 6c 75 67 69 6e 43 61 70 61 62 69 6c 69 74 79 28 50 6c 75 67 69 6e 49 6e 74 65 72 66 getPluginCapability(PluginInterf
92680 61 63 65 20 24 70 6c 75 67 69 6e 2c 20 24 63 61 70 61 62 69 6c 69 74 79 43 6c 61 73 73 4e 61 6d ace.$plugin,.$capabilityClassNam
926a0 65 2c 20 61 72 72 61 79 20 24 63 74 6f 72 41 72 67 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a e,.array.$ctorArgs.=.array()).{.
926c0 69 66 20 28 24 63 61 70 61 62 69 6c 69 74 79 43 6c 61 73 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 if.($capabilityClass.=.$this->ge
926e0 74 43 61 70 61 62 69 6c 69 74 79 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 43 6c 61 73 73 4e 61 tCapabilityImplementationClassNa
92700 6d 65 28 24 70 6c 75 67 69 6e 2c 20 24 63 61 70 61 62 69 6c 69 74 79 43 6c 61 73 73 4e 61 6d 65 me($plugin,.$capabilityClassName
92720 29 29 20 7b 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 24 63 61 70 61 62 69 6c 69 )).{.if.(!class_exists($capabili
92740 74 79 43 6c 61 73 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 tyClass)).{.throw.new.\RuntimeEx
92760 63 65 70 74 69 6f 6e 28 22 43 61 6e 6e 6f 74 20 69 6e 73 74 61 6e 74 69 61 74 65 20 43 61 70 61 ception("Cannot.instantiate.Capa
92780 62 69 6c 69 74 79 2c 20 61 73 20 63 6c 61 73 73 20 24 63 61 70 61 62 69 6c 69 74 79 43 6c 61 73 bility,.as.class.$capabilityClas
927a0 73 20 66 72 6f 6d 20 70 6c 75 67 69 6e 20 22 2e 67 65 74 5f 63 6c 61 73 73 28 24 70 6c 75 67 69 s.from.plugin.".get_class($plugi
927c0 6e 29 2e 22 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 22 29 3b 0a 7d 0a 0a 24 63 61 70 61 n).".does.not.exist.");.}..$capa
927e0 62 69 6c 69 74 79 4f 62 6a 20 3d 20 6e 65 77 20 24 63 61 70 61 62 69 6c 69 74 79 43 6c 61 73 73 bilityObj.=.new.$capabilityClass
92800 28 24 63 74 6f 72 41 72 67 73 29 3b 0a 0a 0a 20 69 66 20 28 21 24 63 61 70 61 62 69 6c 69 74 79 ($ctorArgs);....if.(!$capability
92820 4f 62 6a 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 61 70 61 62 69 6c 69 74 79 20 7c 7c 20 21 24 63 Obj.instanceof.Capability.||.!$c
92840 61 70 61 62 69 6c 69 74 79 4f 62 6a 20 69 6e 73 74 61 6e 63 65 6f 66 20 24 63 61 70 61 62 69 6c apabilityObj.instanceof.$capabil
92860 69 74 79 43 6c 61 73 73 4e 61 6d 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 ityClassName).{.throw.new.\Runti
92880 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 27 43 6c 61 73 73 20 27 20 2e 20 24 63 61 70 61 62 69 6c meException(.'Class.'...$capabil
928a0 69 74 79 43 6c 61 73 73 20 2e 20 27 20 6d 75 73 74 20 69 6d 70 6c 65 6d 65 6e 74 20 62 6f 74 68 ityClass...'.must.implement.both
928c0 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 61 70 61 62 69 6c 69 74 79 5c 43 61 70 61 .Composer\Plugin\Capability\Capa
928e0 62 69 6c 69 74 79 20 61 6e 64 20 27 2e 20 24 63 61 70 61 62 69 6c 69 74 79 43 6c 61 73 73 4e 61 bility.and.'..$capabilityClassNa
92900 6d 65 20 2e 20 27 2e 27 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 61 70 61 62 69 6c 69 74 me...'.'.);.}..return.$capabilit
92920 79 4f 62 6a 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d yObj;.}.}.}.<?php............nam
92940 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 3b 0a 0a 75 73 65 20 43 6f 6d espace.Composer\Plugin;..use.Com
92960 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 3b 0a 75 73 65 poser\EventDispatcher\Event;.use
92980 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b .Composer\Util\RemoteFilesystem;
929a0 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e .......class.PreFileDownloadEven
929c0 74 20 65 78 74 65 6e 64 73 20 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 66 t.extends.Event.{....private.$rf
929e0 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 65 64 55 72 6c 3b 0a 0a 0a s;.....private.$processedUrl;...
92a00 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ......public.function.__construc
92a20 74 28 24 6e 61 6d 65 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 2c 20 t($name,.RemoteFilesystem.$rfs,.
92a40 24 70 72 6f 63 65 73 73 65 64 55 72 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 $processedUrl).{.parent::__const
92a60 72 75 63 74 28 24 6e 61 6d 65 29 3b 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 73 3b 0a ruct($name);.$this->rfs.=.$rfs;.
92a80 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 65 64 55 72 6c 20 3d 20 24 70 72 6f 63 65 73 73 65 64 $this->processedUrl.=.$processed
92aa0 55 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 Url;.}.......public.function.get
92ac0 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 RemoteFilesystem().{.return.$thi
92ae0 73 2d 3e 72 66 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 s->rfs;.}.......public.function.
92b00 73 65 74 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 52 65 6d 6f 74 65 46 69 6c 65 73 79 setRemoteFilesystem(RemoteFilesy
92b20 73 74 65 6d 20 24 72 66 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 73 3b 0a stem.$rfs).{.$this->rfs.=.$rfs;.
92b40 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 63 65 }.......public.function.getProce
92b60 73 73 65 64 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 ssedUrl().{.return.$this->proces
92b80 73 65 64 55 72 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d sedUrl;.}.}.<?php............nam
92ba0 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 espace.Composer\Repository;..use
92bc0 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a .Composer\Package\AliasPackage;.
92be0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 use.Composer\Package\PackageInte
92c00 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 rface;.use.Composer\Package\Comp
92c20 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 letePackageInterface;.use.Compos
92c40 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 er\Package\Version\VersionParser
92c60 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 ;.use.Composer\Semver\Constraint
92c80 5c 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 \ConstraintInterface;.use.Compos
92ca0 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 3b er\Semver\Constraint\Constraint;
92cc0 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 .......class.ArrayRepository.ext
92ce0 65 6e 64 73 20 42 61 73 65 52 65 70 6f 73 69 74 6f 72 79 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 ends.BaseRepository.{..protected
92d00 20 24 70 61 63 6b 61 67 65 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 .$packages;..public.function.__c
92d20 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 onstruct(array.$packages.=.array
92d40 28 29 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 ()).{.foreach.($packages.as.$pac
92d60 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 kage).{.$this->addPackage($packa
92d80 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e ge);.}.}.....public.function.fin
92da0 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 7b 0a 24 dPackage($name,.$constraint).{.$
92dc0 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 21 name.=.strtolower($name);..if.(!
92de0 24 63 6f 6e 73 74 72 61 69 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 74 72 61 69 6e $constraint.instanceof.Constrain
92e00 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e tInterface).{.$versionParser.=.n
92e20 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 ew.VersionParser();.$constraint.
92e40 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e =.$versionParser->parseConstrain
92e60 74 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 ts($constraint);.}..foreach.($th
92e80 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b is->getPackages().as.$package).{
92ea0 0a 69 66 20 28 24 6e 61 6d 65 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 .if.($name.===.$package->getName
92ec0 28 29 29 20 7b 0a 24 70 6b 67 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 74 ()).{.$pkgConstraint.=.new.Const
92ee0 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e raint('==',.$package->getVersion
92f00 28 29 29 3b 0a 69 66 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 70 ());.if.($constraint->matches($p
92f20 6b 67 43 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 kgConstraint)).{.return.$package
92f40 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 ;.}.}.}.}.....public.function.fi
92f60 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 ndPackages($name,.$constraint.=.
92f80 6e 75 6c 6c 29 0a 7b 0a 0a 20 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 null).{...$name.=.strtolower($na
92fa0 6d 65 29 3b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 6e me);.$packages.=.array();..if.(n
92fc0 75 6c 6c 20 21 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 26 26 20 21 24 63 6f 6e 73 74 72 61 ull.!==.$constraint.&&.!$constra
92fe0 69 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 int.instanceof.ConstraintInterfa
93000 63 65 29 20 7b 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 ce).{.$versionParser.=.new.Versi
93020 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 76 65 72 73 69 onParser();.$constraint.=.$versi
93040 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 6f 6e 73 onParser->parseConstraints($cons
93060 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 traint);.}..foreach.($this->getP
93080 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 6e 61 ackages().as.$package).{.if.($na
930a0 6d 65 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 70 me.===.$package->getName()).{.$p
930c0 6b 67 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d kgConstraint.=.new.Constraint('=
930e0 3d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 69 66 20 =',.$package->getVersion());.if.
93100 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 7c 7c 20 24 63 6f 6e 73 74 72 (null.===.$constraint.||.$constr
93120 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 70 6b 67 43 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b aint->matches($pkgConstraint)).{
93140 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 0a .$packages[].=.$package;.}.}.}..
93160 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 return.$packages;.}.....public.f
93180 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 28 24 71 75 65 72 79 2c 20 24 6d 6f 64 65 20 3d 20 30 unction.search($query,.$mode.=.0
931a0 29 0a 7b 0a 24 72 65 67 65 78 20 3d 20 27 7b 28 3f 3a 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 27 2c ).{.$regex.=.'{(?:'.implode('|',
931c0 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 73 2b 7d 27 2c 20 24 71 75 65 72 79 29 29 2e 27 29 .preg_split('{\s+}',.$query)).')
931e0 7d 69 27 3b 0a 0a 24 6d 61 74 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 }i';..$matches.=.array();.foreac
93200 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b h.($this->getPackages().as.$pack
93220 61 67 65 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 age).{.$name.=.$package->getName
93240 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 24 6e 61 6d 65 5d 29 29 20 ();.if.(isset($matches[$name])).
93260 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 {.continue;.}.if.(preg_match($re
93280 67 65 78 2c 20 24 6e 61 6d 65 29 0a 7c 7c 20 28 24 6d 6f 64 65 20 3d 3d 3d 20 73 65 6c 66 3a 3a gex,.$name).||.($mode.===.self::
932a0 53 45 41 52 43 48 5f 46 55 4c 4c 54 45 58 54 20 26 26 20 24 70 61 63 6b 61 67 65 20 69 6e 73 74 SEARCH_FULLTEXT.&&.$package.inst
932c0 61 6e 63 65 6f 66 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 anceof.CompletePackageInterface.
932e0 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 67 65 78 2c 20 69 6d 70 6c 6f 64 65 28 27 20 &&.preg_match($regex,.implode('.
93300 27 2c 20 28 61 72 72 61 79 29 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4b 65 79 77 6f 72 64 73 ',.(array).$package->getKeywords
93320 28 29 29 20 2e 20 27 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 72 69 70 ())...'.'...$package->getDescrip
93340 74 69 6f 6e 28 29 29 29 0a 29 20 7b 0a 24 6d 61 74 63 68 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 61 tion())).).{.$matches[$name].=.a
93360 72 72 61 79 28 0a 27 6e 61 6d 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 rray(.'name'.=>.$package->getPre
93380 74 74 79 4e 61 6d 65 28 29 2c 0a 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 24 70 61 63 ttyName(),.'description'.=>.$pac
933a0 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 2c 0a 29 3b 0a 7d 0a 7d 0a 0a kage->getDescription(),.);.}.}..
933c0 72 65 74 75 72 6e 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 6d 61 74 63 68 65 73 29 3b 0a 7d return.array_values($matches);.}
933e0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 63 6b 61 67 65 28 .....public.function.hasPackage(
93400 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 70 61 PackageInterface.$package).{.$pa
93420 63 6b 61 67 65 49 64 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 55 6e 69 71 75 65 4e 61 6d ckageId.=.$package->getUniqueNam
93440 65 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 e();..foreach.($this->getPackage
93460 73 28 29 20 61 73 20 24 72 65 70 6f 50 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 61 63 6b s().as.$repoPackage).{.if.($pack
93480 61 67 65 49 64 20 3d 3d 3d 20 24 72 65 70 6f 50 61 63 6b 61 67 65 2d 3e 67 65 74 55 6e 69 71 75 ageId.===.$repoPackage->getUniqu
934a0 65 4e 61 6d 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 eName()).{.return.true;.}.}..ret
934c0 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 urn.false;.}.......public.functi
934e0 6f 6e 20 61 64 64 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 on.addPackage(PackageInterface.$
93500 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 package).{.if.(null.===.$this->p
93520 61 63 6b 61 67 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a ackages).{.$this->initialize();.
93540 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 28 24 74 68 69 73 29 }.$package->setRepository($this)
93560 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a ;.$this->packages[].=.$package;.
93580 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 .if.($package.instanceof.AliasPa
935a0 63 6b 61 67 65 29 20 7b 0a 24 61 6c 69 61 73 65 64 50 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b ckage).{.$aliasedPackage.=.$pack
935c0 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 age->getAliasOf();.if.(null.===.
935e0 24 61 6c 69 61 73 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 $aliasedPackage->getRepository()
93600 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 61 6c 69 61 73 65 64 50 61 ).{.$this->addPackage($aliasedPa
93620 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f ckage);.}.}.}..protected.functio
93640 6e 20 63 72 65 61 74 65 41 6c 69 61 73 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 n.createAliasPackage(PackageInte
93660 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 61 6c 69 61 73 2c 20 24 70 72 65 74 74 79 41 rface.$package,.$alias,.$prettyA
93680 6c 69 61 73 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 41 6c 69 61 73 50 61 63 6b 61 67 65 28 lias).{.return.new.AliasPackage(
936a0 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 $package.instanceof.AliasPackage
936c0 20 3f 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 20 3a 20 24 70 61 63 .?.$package->getAliasOf().:.$pac
936e0 6b 61 67 65 2c 20 24 61 6c 69 61 73 2c 20 24 70 72 65 74 74 79 41 6c 69 61 73 29 3b 0a 7d 0a 0a kage,.$alias,.$prettyAlias);.}..
93700 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 50 61 63 6b 61 .....public.function.removePacka
93720 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a ge(PackageInterface.$package).{.
93740 24 70 61 63 6b 61 67 65 49 64 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 55 6e 69 71 75 65 $packageId.=.$package->getUnique
93760 4e 61 6d 65 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b Name();..foreach.($this->getPack
93780 61 67 65 73 28 29 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 72 65 70 6f 50 61 63 6b 61 67 65 29 20 ages().as.$key.=>.$repoPackage).
937a0 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 49 64 20 3d 3d 3d 20 24 72 65 70 6f 50 61 63 6b 61 67 {.if.($packageId.===.$repoPackag
937c0 65 2d 3e 67 65 74 55 6e 69 71 75 65 4e 61 6d 65 28 29 29 20 7b 0a 61 72 72 61 79 5f 73 70 6c 69 e->getUniqueName()).{.array_spli
937e0 63 65 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 2c 20 24 6b 65 79 2c 20 31 29 3b 0a 0a 72 ce($this->packages,.$key,.1);..r
93800 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e eturn;.}.}.}.....public.function
93820 20 67 65 74 50 61 63 6b 61 67 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 .getPackages().{.if.(null.===.$t
93840 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 his->packages).{.$this->initiali
93860 7a 65 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 3b ze();.}..return.$this->packages;
93880 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 75 6e 74 28 29 .}.......public.function.count()
938a0 0a 7b 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 29 .{.return.count($this->packages)
938c0 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 ;.}.....protected.function.initi
938e0 61 6c 69 7a 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 alize().{.$this->packages.=.arra
93900 79 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 y();.}.}.<?php............namesp
93920 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f ace.Composer\Repository;..use.Co
93940 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f mposer\IO\IOInterface;.use.Compo
93960 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c ser\Json\JsonFile;.use.Composer\
93980 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 Package\Loader\ArrayLoader;.use.
939a0 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 4c 6f 61 64 65 72 49 6e Composer\Package\Loader\LoaderIn
939c0 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 74 69 66 61 63 74 52 65 70 6f 73 terface;.....class.ArtifactRepos
939e0 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 20 69 6d itory.extends.ArrayRepository.im
93a00 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 66 69 67 75 72 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 plements.ConfigurableRepositoryI
93a20 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 61 64 65 72 3b 0a 0a nterface.{..protected.$loader;..
93a40 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 6f 6b 75 70 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 protected.$lookup;.protected.$re
93a60 70 6f 43 6f 6e 66 69 67 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e poConfig;..public.function.__con
93a80 73 74 72 75 63 74 28 61 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 65 struct(array.$repoConfig,.IOInte
93aa0 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 rface.$io).{.parent::__construct
93ac0 28 29 3b 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 7a 69 70 27 29 ();.if.(!extension_loaded('zip')
93ae0 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 ).{.throw.new.\RuntimeException(
93b00 27 54 68 65 20 61 72 74 69 66 61 63 74 20 72 65 70 6f 73 69 74 6f 72 79 20 72 65 71 75 69 72 65 'The.artifact.repository.require
93b20 73 20 50 48 50 5c 27 73 20 7a 69 70 20 65 78 74 65 6e 73 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 74 68 s.PHP\'s.zip.extension');.}..$th
93b40 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 29 3b 0a is->loader.=.new.ArrayLoader();.
93b60 24 74 68 69 73 2d 3e 6c 6f 6f 6b 75 70 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c $this->lookup.=.$repoConfig['url
93b80 27 5d 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f '];.$this->io.=.$io;.$this->repo
93ba0 43 6f 6e 66 69 67 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 Config.=.$repoConfig;.}..public.
93bc0 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 28 29 0a 7b 0a 72 65 74 75 72 function.getRepoConfig().{.retur
93be0 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 n.$this->repoConfig;.}..protecte
93c00 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 d.function.initialize().{.parent
93c20 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 63 61 6e 44 69 72 65 ::initialize();..$this->scanDire
93c40 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 6c 6f 6f 6b 75 70 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 ctory($this->lookup);.}..private
93c60 20 66 75 6e 63 74 69 6f 6e 20 73 63 61 6e 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 0a 7b .function.scanDirectory($path).{
93c80 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 69 6f 3b 0a 0a 24 64 69 72 65 63 74 6f 72 79 20 3d 20 .$io.=.$this->io;..$directory.=.
93ca0 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 28 new.\RecursiveDirectoryIterator(
93cc0 24 70 61 74 68 2c 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 $path,.\RecursiveDirectoryIterat
93ce0 6f 72 3a 3a 46 4f 4c 4c 4f 57 5f 53 59 4d 4c 49 4e 4b 53 29 3b 0a 24 69 74 65 72 61 74 6f 72 20 or::FOLLOW_SYMLINKS);.$iterator.
93d00 3d 20 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 =.new.\RecursiveIteratorIterator
93d20 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 24 72 65 67 65 78 20 3d 20 6e 65 77 20 5c 52 65 67 65 ($directory);.$regex.=.new.\Rege
93d40 78 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 27 2f 5e 2e 2b 5c 2e 28 7a 69 70 xIterator($iterator,.'/^.+\.(zip
93d60 7c 70 68 61 72 29 24 2f 69 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 67 65 78 20 61 73 20 |phar)$/i');.foreach.($regex.as.
93d80 24 66 69 6c 65 29 20 7b 0a 0a 69 66 20 28 21 24 66 69 6c 65 2d 3e 69 73 46 69 6c 65 28 29 29 20 $file).{..if.(!$file->isFile()).
93da0 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d {.continue;.}..$package.=.$this-
93dc0 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 66 69 6c 65 29 3b 0a >getComposerInformation($file);.
93de0 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 if.(!$package).{.$io->writeError
93e00 28 22 46 69 6c 65 20 3c 63 6f 6d 6d 65 6e 74 3e 7b 24 66 69 6c 65 2d 3e 67 65 74 42 61 73 65 6e ("File.<comment>{$file->getBasen
93e20 61 6d 65 28 29 7d 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 64 6f 65 73 6e 27 74 20 73 65 65 6d 20 74 6f ame()}</comment>.doesn't.seem.to
93e40 20 68 6f 6c 64 20 61 20 70 61 63 6b 61 67 65 22 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 .hold.a.package",.true,.IOInterf
93e60 61 63 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 74 65 6d ace::VERBOSE);.continue;.}..$tem
93e80 70 6c 61 74 65 20 3d 20 27 46 6f 75 6e 64 20 70 61 63 6b 61 67 65 20 3c 69 6e 66 6f 3e 25 73 3c plate.=.'Found.package.<info>%s<
93ea0 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 20 69 /info>.(<comment>%s</comment>).i
93ec0 6e 20 66 69 6c 65 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 3b 0a 24 69 6f 2d 3e 77 72 n.file.<info>%s</info>';.$io->wr
93ee0 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 24 74 65 6d 70 6c 61 74 65 2c 20 24 70 61 63 iteError(sprintf($template,.$pac
93f00 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 kage->getName(),.$package->getPr
93f20 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 24 66 69 6c 65 2d 3e 67 65 74 42 61 73 65 6e 61 6d ettyVersion(),.$file->getBasenam
93f40 65 28 29 29 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 45 e()),.true,.IOInterface::VERBOSE
93f60 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b );..$this->addPackage($package);
93f80 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f .}.}.........private.function.lo
93fa0 63 61 74 65 46 69 6c 65 28 5c 5a 69 70 41 72 63 68 69 76 65 20 24 7a 69 70 2c 20 24 66 69 6c 65 cateFile(\ZipArchive.$zip,.$file
93fc0 6e 61 6d 65 29 0a 7b 0a 24 69 6e 64 65 78 4f 66 53 68 6f 72 74 65 73 74 4d 61 74 63 68 20 3d 20 name).{.$indexOfShortestMatch.=.
93fe0 66 61 6c 73 65 3b 0a 24 6c 65 6e 67 74 68 4f 66 53 68 6f 72 74 65 73 74 4d 61 74 63 68 20 3d 20 false;.$lengthOfShortestMatch.=.
94000 2d 31 3b 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 24 7a 69 70 2d 3e 6e 75 6d -1;..for.($i.=.0;.$i.<.$zip->num
94020 46 69 6c 65 73 3b 20 24 69 2b 2b 29 20 7b 0a 24 73 74 61 74 20 3d 20 24 7a 69 70 2d 3e 73 74 61 Files;.$i++).{.$stat.=.$zip->sta
94040 74 49 6e 64 65 78 28 24 69 29 3b 0a 69 66 20 28 73 74 72 63 6d 70 28 62 61 73 65 6e 61 6d 65 28 tIndex($i);.if.(strcmp(basename(
94060 24 73 74 61 74 5b 27 6e 61 6d 65 27 5d 29 2c 20 24 66 69 6c 65 6e 61 6d 65 29 20 3d 3d 3d 20 30 $stat['name']),.$filename).===.0
94080 29 20 7b 0a 24 64 69 72 65 63 74 6f 72 79 4e 61 6d 65 20 3d 20 64 69 72 6e 61 6d 65 28 24 73 74 ).{.$directoryName.=.dirname($st
940a0 61 74 5b 27 6e 61 6d 65 27 5d 29 3b 0a 69 66 20 28 24 64 69 72 65 63 74 6f 72 79 4e 61 6d 65 20 at['name']);.if.($directoryName.
940c0 3d 3d 20 27 2e 27 29 20 7b 0a 0a 20 0a 20 72 65 74 75 72 6e 20 24 69 3b 0a 7d 0a 0a 69 66 20 28 ==.'.').{.....return.$i;.}..if.(
940e0 73 74 72 70 6f 73 28 24 64 69 72 65 63 74 6f 72 79 4e 61 6d 65 2c 20 27 5c 5c 27 29 20 21 3d 3d strpos($directoryName,.'\\').!==
94100 20 66 61 6c 73 65 20 7c 7c 0a 73 74 72 70 6f 73 28 24 64 69 72 65 63 74 6f 72 79 4e 61 6d 65 2c .false.||.strpos($directoryName,
94120 20 27 2f 27 29 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 0a 20 63 6f 6e 74 69 6e 75 65 3b 0a 7d .'/').!==.false).{...continue;.}
94140 0a 0a 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 73 74 61 74 5b 27 6e 61 6d 65 27 5d ..$length.=.strlen($stat['name']
94160 29 3b 0a 69 66 20 28 24 69 6e 64 65 78 4f 66 53 68 6f 72 74 65 73 74 4d 61 74 63 68 20 3d 3d 20 );.if.($indexOfShortestMatch.==.
94180 66 61 6c 73 65 20 7c 7c 20 24 6c 65 6e 67 74 68 20 3c 20 24 6c 65 6e 67 74 68 4f 66 53 68 6f 72 false.||.$length.<.$lengthOfShor
941a0 74 65 73 74 4d 61 74 63 68 29 20 7b 0a 0a 20 24 63 6f 6e 74 65 6e 74 73 20 3d 20 24 7a 69 70 2d testMatch).{...$contents.=.$zip-
941c0 3e 67 65 74 46 72 6f 6d 49 6e 64 65 78 28 24 69 29 3b 0a 69 66 20 28 24 63 6f 6e 74 65 6e 74 73 >getFromIndex($i);.if.($contents
941e0 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 69 6e 64 65 78 4f 66 53 68 6f 72 74 65 73 74 4d 61 .!==.false).{.$indexOfShortestMa
94200 74 63 68 20 3d 20 24 69 3b 0a 24 6c 65 6e 67 74 68 4f 66 53 68 6f 72 74 65 73 74 4d 61 74 63 68 tch.=.$i;.$lengthOfShortestMatch
94220 20 3d 20 24 6c 65 6e 67 74 68 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 64 .=.$length;.}.}.}.}..return.$ind
94240 65 78 4f 66 53 68 6f 72 74 65 73 74 4d 61 74 63 68 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 exOfShortestMatch;.}..private.fu
94260 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 5c 53 nction.getComposerInformation(\S
94280 70 6c 46 69 6c 65 49 6e 66 6f 20 24 66 69 6c 65 29 0a 7b 0a 24 7a 69 70 20 3d 20 6e 65 77 20 5c plFileInfo.$file).{.$zip.=.new.\
942a0 5a 69 70 41 72 63 68 69 76 65 28 29 3b 0a 24 7a 69 70 2d 3e 6f 70 65 6e 28 24 66 69 6c 65 2d 3e ZipArchive();.$zip->open($file->
942c0 67 65 74 50 61 74 68 6e 61 6d 65 28 29 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 20 24 7a 69 70 2d 3e getPathname());..if.(0.==.$zip->
942e0 6e 75 6d 46 69 6c 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 66 6f numFiles).{.return.false;.}..$fo
94300 75 6e 64 46 69 6c 65 49 6e 64 65 78 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 61 74 65 46 69 6c 65 undFileIndex.=.$this->locateFile
94320 28 24 7a 69 70 2c 20 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 3b 0a 69 66 20 28 66 61 6c ($zip,.'composer.json');.if.(fal
94340 73 65 20 3d 3d 3d 20 24 66 6f 75 6e 64 46 69 6c 65 49 6e 64 65 78 29 20 7b 0a 72 65 74 75 72 6e se.===.$foundFileIndex).{.return
94360 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 46 69 6c 65 4e 61 6d .false;.}..$configurationFileNam
94380 65 20 3d 20 24 7a 69 70 2d 3e 67 65 74 4e 61 6d 65 49 6e 64 65 78 28 24 66 6f 75 6e 64 46 69 6c e.=.$zip->getNameIndex($foundFil
943a0 65 49 6e 64 65 78 29 3b 0a 0a 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 20 3d 20 22 7a 69 70 3a 2f eIndex);..$composerFile.=."zip:/
943c0 2f 7b 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 7d 23 24 63 6f 6e 66 69 67 75 /{$file->getPathname()}#$configu
943e0 72 61 74 69 6f 6e 46 69 6c 65 4e 61 6d 65 22 3b 0a 24 6a 73 6f 6e 20 3d 20 66 69 6c 65 5f 67 65 rationFileName";.$json.=.file_ge
94400 74 5f 63 6f 6e 74 65 6e 74 73 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 29 3b 0a 0a 24 70 61 63 t_contents($composerFile);..$pac
94420 6b 61 67 65 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e kage.=.JsonFile::parseJson($json
94440 2c 20 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 29 3b 0a 24 70 61 63 6b 61 67 65 5b 27 64 69 73 74 ,.$composerFile);.$package['dist
94460 27 5d 20 3d 20 61 72 72 61 79 28 0a 27 74 79 70 65 27 20 3d 3e 20 27 7a 69 70 27 2c 0a 27 75 72 '].=.array(.'type'.=>.'zip',.'ur
94480 6c 27 20 3d 3e 20 73 74 72 74 72 28 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 l'.=>.strtr($file->getPathname()
944a0 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 2c 0a 27 73 68 61 73 75 6d 27 20 3d 3e 20 73 68 61 31 5f 66 ,.'\\',.'/'),.'shasum'.=>.sha1_f
944c0 69 6c 65 28 24 66 69 6c 65 2d 3e 67 65 74 52 65 61 6c 50 61 74 68 28 29 29 2c 0a 29 3b 0a 0a 74 ile($file->getRealPath()),.);..t
944e0 72 79 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c ry.{.$package.=.$this->loader->l
94500 6f 61 64 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 65 63 oad($package);.}.catch.(\Unexpec
94520 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 tedValueException.$e).{.throw.ne
94540 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 w.\UnexpectedValueException('Fai
94560 6c 65 64 20 6c 6f 61 64 69 6e 67 20 70 61 63 6b 61 67 65 20 69 6e 20 27 2e 24 66 69 6c 65 2e 27 led.loading.package.in.'.$file.'
94580 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 30 2c 20 24 65 29 3b 0a 7d 0a :.'.$e->getMessage(),.0,.$e);.}.
945a0 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a .return.$package;.}.}.<?php.....
945c0 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 .......namespace.Composer\Reposi
945e0 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 52 6f 6f 74 tory;..use.Composer\Package\Root
94600 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 PackageInterface;.use.Composer\S
94620 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 emver\Constraint\ConstraintInter
94640 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 face;.use.Composer\Semver\Constr
94660 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 aint\Constraint;.......abstract.
94680 63 6c 61 73 73 20 42 61 73 65 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 class.BaseRepository.implements.
946a0 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a RepositoryInterface.{...........
946c0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 70 65 6e 64 65 6e 74 73 ...public.function.getDependents
946e0 28 24 6e 65 65 64 6c 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 2c 20 24 69 ($needle,.$constraint.=.null,.$i
94700 6e 76 65 72 74 20 3d 20 66 61 6c 73 65 2c 20 24 72 65 63 75 72 73 65 20 3d 20 74 72 75 65 2c 20 nvert.=.false,.$recurse.=.true,.
94720 24 70 61 63 6b 61 67 65 73 46 6f 75 6e 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6e 65 65 64 6c 65 $packagesFound.=.null).{.$needle
94740 73 20 3d 20 28 61 72 72 61 79 29 20 24 6e 65 65 64 6c 65 3b 0a 24 72 65 73 75 6c 74 73 20 3d 20 s.=.(array).$needle;.$results.=.
94760 61 72 72 61 79 28 29 3b 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 70 61 63 6b 61 67 array();....if.(null.===.$packag
94780 65 73 46 6f 75 6e 64 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 46 6f 75 6e 64 20 3d 20 24 6e 65 65 esFound).{.$packagesFound.=.$nee
947a0 64 6c 65 73 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 61 dles;.}....foreach.($this->getPa
947c0 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d ckages().as.$package).{.$links.=
947e0 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 0a 0a 20 0a 20 24 .$package->getRequires();......$
94800 70 61 63 6b 61 67 65 73 49 6e 54 72 65 65 20 3d 20 24 70 61 63 6b 61 67 65 73 46 6f 75 6e 64 3b packagesInTree.=.$packagesFound;
94820 0a 0a 0a 20 69 66 20 28 21 24 69 6e 76 65 72 74 29 20 7b 0a 24 6c 69 6e 6b 73 20 2b 3d 20 24 70 ....if.(!$invert).{.$links.+=.$p
94840 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 ackage->getReplaces();.}....if.(
94860 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 6f 6f 74 50 61 63 6b 61 67 65 49 $package.instanceof.RootPackageI
94880 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 6c 69 6e 6b 73 20 2b 3d 20 24 70 61 63 6b 61 67 65 2d 3e nterface).{.$links.+=.$package->
948a0 67 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 getDevRequires();.}....foreach.(
948c0 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6e 65 65 $links.as.$link).{.foreach.($nee
948e0 64 6c 65 73 20 61 73 20 24 6e 65 65 64 6c 65 29 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 2d 3e 67 65 dles.as.$needle).{.if.($link->ge
94900 74 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 6e 65 65 64 6c 65 29 20 7b 0a 69 66 20 28 69 73 5f tTarget().===.$needle).{.if.(is_
94920 6e 75 6c 6c 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7c 7c 20 28 28 24 6c 69 6e 6b 2d 3e 67 65 null($constraint).||.(($link->ge
94940 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 2d 3e 6d 61 74 63 68 65 73 28 24 63 6f 6e 73 74 72 61 69 tConstraint()->matches($constrai
94960 6e 74 29 20 3d 3d 3d 20 21 24 69 6e 76 65 72 74 29 29 29 20 7b 0a 0a 20 69 66 20 28 69 6e 5f 61 nt).===.!$invert))).{...if.(in_a
94980 72 72 61 79 28 24 6c 69 6e 6b 2d 3e 67 65 74 53 6f 75 72 63 65 28 29 2c 20 24 70 61 63 6b 61 67 rray($link->getSource(),.$packag
949a0 65 73 49 6e 54 72 65 65 29 29 20 7b 0a 24 72 65 73 75 6c 74 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 esInTree)).{.$results[$link->get
949c0 53 6f 75 72 63 65 28 29 5d 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2c 20 24 6c 69 6e Source()].=.array($package,.$lin
949e0 6b 2c 20 66 61 6c 73 65 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 73 k,.false);.continue;.}.$packages
94a00 49 6e 54 72 65 65 5b 5d 20 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 53 6f 75 72 63 65 28 29 3b 0a 24 InTree[].=.$link->getSource();.$
94a20 64 65 70 65 6e 64 65 6e 74 73 20 3d 20 24 72 65 63 75 72 73 65 20 3f 20 24 74 68 69 73 2d 3e 67 dependents.=.$recurse.?.$this->g
94a40 65 74 44 65 70 65 6e 64 65 6e 74 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 53 6f 75 72 63 65 28 29 2c etDependents($link->getSource(),
94a60 20 6e 75 6c 6c 2c 20 66 61 6c 73 65 2c 20 74 72 75 65 2c 20 24 70 61 63 6b 61 67 65 73 49 6e 54 .null,.false,.true,.$packagesInT
94a80 72 65 65 29 20 3a 20 61 72 72 61 79 28 29 3b 0a 24 72 65 73 75 6c 74 73 5b 24 6c 69 6e 6b 2d 3e ree).:.array();.$results[$link->
94aa0 67 65 74 53 6f 75 72 63 65 28 29 5d 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2c 20 24 getSource()].=.array($package,.$
94ac0 6c 69 6e 6b 2c 20 24 64 65 70 65 6e 64 65 6e 74 73 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 link,.$dependents);.}.}.}.}....i
94ae0 66 20 28 24 69 6e 76 65 72 74 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d f.($invert.&&.in_array($package-
94b00 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 6e 65 65 64 6c 65 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 >getName(),.$needles)).{.foreach
94b20 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 20 61 73 20 24 6c .($package->getConflicts().as.$l
94b40 69 6e 6b 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 69 6e 64 50 61 63 6b 61 ink).{.foreach.($this->findPacka
94b60 67 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 29 20 61 73 20 24 70 6b 67 29 ges($link->getTarget()).as.$pkg)
94b80 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 .{.$version.=.new.Constraint('='
94ba0 2c 20 24 70 6b 67 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 69 66 20 28 24 6c 69 6e 6b ,.$pkg->getVersion());.if.($link
94bc0 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 2d 3e 6d 61 74 63 68 65 73 28 24 76 65 72 73 ->getConstraint()->matches($vers
94be0 69 6f 6e 29 20 3d 3d 3d 20 24 69 6e 76 65 72 74 29 20 7b 0a 24 72 65 73 75 6c 74 73 5b 24 70 61 ion).===.$invert).{.$results[$pa
94c00 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b 61 ckage->getName()].=.array($packa
94c20 67 65 2c 20 24 6c 69 6e 6b 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 6b 73 ge,.$link,.false);.}.}.}.}.}..ks
94c40 6f 72 74 28 24 72 65 73 75 6c 74 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 73 3b ort($results);..return.$results;
94c60 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 .}.}.<?php............namespace.
94c80 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 Composer\Repository;..use.Compos
94ca0 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 er\Package\Loader\ArrayLoader;.u
94cc0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 se.Composer\Package\PackageInter
94ce0 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 face;.use.Composer\Package\Alias
94d00 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 Package;.use.Composer\Package\Ve
94d20 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 rsion\VersionParser;.use.Compose
94d40 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 r\DependencyResolver\Pool;.use.C
94d60 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f omposer\Json\JsonFile;.use.Compo
94d80 73 65 72 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a ser\Cache;.use.Composer\Config;.
94da0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 use.Composer\Factory;.use.Compos
94dc0 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c er\IO\IOInterface;.use.Composer\
94de0 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f Util\RemoteFilesystem;.use.Compo
94e00 73 65 72 5c 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 45 76 65 6e 74 73 3b 0a 75 73 65 20 43 6f 6d ser\Plugin\PluginEvents;.use.Com
94e20 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 50 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e poser\Plugin\PreFileDownloadEven
94e40 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c t;.use.Composer\EventDispatcher\
94e60 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f EventDispatcher;.use.Composer\Do
94e80 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 wnloader\TransportException;.use
94ea0 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 .Composer\Semver\Constraint\Cons
94ec0 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 traintInterface;.use.Composer\Se
94ee0 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a mver\Constraint\Constraint;.....
94f00 63 6c 61 73 73 20 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 class.ComposerRepository.extends
94f20 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 66 .ArrayRepository.implements.Conf
94f40 69 67 75 72 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 igurableRepositoryInterface.{.pr
94f60 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f otected.$config;.protected.$repo
94f80 43 6f 6e 66 69 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 70 74 69 6f 6e 73 3b 0a 70 72 6f 74 Config;.protected.$options;.prot
94fa0 65 63 74 65 64 20 24 75 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 61 73 65 55 72 6c 3b 0a ected.$url;.protected.$baseUrl;.
94fc0 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 66 73 3b 0a 70 protected.$io;.protected.$rfs;.p
94fe0 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 6f 74 69 rotected.$cache;.protected.$noti
95000 66 79 55 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 65 61 72 63 68 55 72 6c 3b 0a 70 72 6f fyUrl;.protected.$searchUrl;.pro
95020 74 65 63 74 65 64 20 24 68 61 73 50 72 6f 76 69 64 65 72 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 tected.$hasProviders.=.false;.pr
95040 6f 74 65 63 74 65 64 20 24 70 72 6f 76 69 64 65 72 73 55 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 otected.$providersUrl;.protected
95060 20 24 6c 61 7a 79 50 72 6f 76 69 64 65 72 73 55 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 .$lazyProvidersUrl;.protected.$p
95080 72 6f 76 69 64 65 72 4c 69 73 74 69 6e 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 76 69 roviderListing;.protected.$provi
950a0 64 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 76 69 ders.=.array();.protected.$provi
950c0 64 65 72 73 42 79 55 69 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 dersByUid.=.array();.protected.$
950e0 6c 6f 61 64 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 41 6c 69 61 73 65 73 3b 0a loader;.protected.$rootAliases;.
95100 70 72 6f 74 65 63 74 65 64 20 24 61 6c 6c 6f 77 53 73 6c 44 6f 77 6e 67 72 61 64 65 20 3d 20 66 protected.$allowSslDowngrade.=.f
95120 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 alse;.protected.$eventDispatcher
95140 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 4d 69 72 72 6f 72 73 3b 0a 70 72 6f 74 ;.protected.$sourceMirrors;.prot
95160 65 63 74 65 64 20 24 64 69 73 74 4d 69 72 72 6f 72 73 3b 0a 70 72 69 76 61 74 65 20 24 64 65 67 ected.$distMirrors;.private.$deg
95180 72 61 64 65 64 4d 6f 64 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 72 6f 6f 74 radedMode.=.false;.private.$root
951a0 44 61 74 61 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 Data;..public.function.__constru
951c0 63 74 28 61 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 65 72 66 61 63 ct(array.$repoConfig,.IOInterfac
951e0 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 44 69 73 70 e.$io,.Config.$config,.EventDisp
95200 61 74 63 68 65 72 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 atcher.$eventDispatcher.=.null,.
95220 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a RemoteFilesystem.$rfs.=.null).{.
95240 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 3b 0a 69 66 20 28 21 70 72 65 67 parent::__construct();.if.(!preg
95260 5f 6d 61 74 63 68 28 27 7b 5e 5b 5c 77 2e 5d 2b 5c 3f 3f 3a 2f 2f 7d 27 2c 20 24 72 65 70 6f 43 _match('{^[\w.]+\??://}',.$repoC
95280 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 29 29 20 7b 0a 0a 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 onfig['url'])).{...$repoConfig['
952a0 75 72 6c 27 5d 20 3d 20 27 68 74 74 70 3a 2f 2f 27 2e 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 url'].=.'http://'.$repoConfig['u
952c0 72 6c 27 5d 3b 0a 7d 0a 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 20 3d 20 72 74 72 rl'];.}.$repoConfig['url'].=.rtr
952e0 69 6d 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 2c 20 27 2f 27 29 3b 0a 0a 69 66 im($repoConfig['url'],.'/');..if
95300 20 28 27 68 74 74 70 73 3f 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 72 65 70 6f 43 6f 6e 66 69 .('https?'.===.substr($repoConfi
95320 67 5b 27 75 72 6c 27 5d 2c 20 30 2c 20 36 29 29 20 7b 0a 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 g['url'],.0,.6)).{.$repoConfig['
95340 75 72 6c 27 5d 20 3d 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 url'].=.(extension_loaded('opens
95360 73 6c 27 29 20 3f 20 27 68 74 74 70 73 27 20 3a 20 27 68 74 74 70 27 29 20 2e 20 73 75 62 73 74 sl').?.'https'.:.'http')...subst
95380 72 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 2c 20 36 29 3b 0a 7d 0a 0a 24 75 72 r($repoConfig['url'],.6);.}..$ur
953a0 6c 42 69 74 73 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 lBits.=.parse_url($repoConfig['u
953c0 72 6c 27 5d 29 3b 0a 69 66 20 28 24 75 72 6c 42 69 74 73 20 3d 3d 3d 20 66 61 6c 73 65 20 7c 7c rl']);.if.($urlBits.===.false.||
953e0 20 65 6d 70 74 79 28 24 75 72 6c 42 69 74 73 5b 27 73 63 68 65 6d 65 27 5d 29 29 20 7b 0a 74 68 .empty($urlBits['scheme'])).{.th
95400 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f row.new.\UnexpectedValueExceptio
95420 6e 28 27 49 6e 76 61 6c 69 64 20 75 72 6c 20 67 69 76 65 6e 20 66 6f 72 20 43 6f 6d 70 6f 73 65 n('Invalid.url.given.for.Compose
95440 72 20 72 65 70 6f 73 69 74 6f 72 79 3a 20 27 2e 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c r.repository:.'.$repoConfig['url
95460 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 ']);.}..if.(!isset($repoConfig['
95480 6f 70 74 69 6f 6e 73 27 5d 29 29 20 7b 0a 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 6f 70 74 69 6f options'])).{.$repoConfig['optio
954a0 6e 73 27 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 70 ns'].=.array();.}.if.(isset($rep
954c0 6f 43 6f 6e 66 69 67 5b 27 61 6c 6c 6f 77 5f 73 73 6c 5f 64 6f 77 6e 67 72 61 64 65 27 5d 29 20 oConfig['allow_ssl_downgrade']).
954e0 26 26 20 74 72 75 65 20 3d 3d 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 61 6c 6c 6f 77 5f 73 &&.true.===.$repoConfig['allow_s
95500 73 6c 5f 64 6f 77 6e 67 72 61 64 65 27 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 6c 6c 6f 77 53 73 sl_downgrade']).{.$this->allowSs
95520 6c 44 6f 77 6e 67 72 61 64 65 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e lDowngrade.=.true;.}..$this->con
95540 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 fig.=.$config;.$this->options.=.
95560 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 6f 70 74 69 6f 6e 73 27 5d 3b 0a 24 74 68 69 73 2d 3e 75 $repoConfig['options'];.$this->u
95580 72 6c 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 3b 0a 24 74 68 69 73 2d 3e rl.=.$repoConfig['url'];.$this->
955a0 62 61 73 65 55 72 6c 20 3d 20 72 74 72 69 6d 28 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e baseUrl.=.rtrim(preg_replace('{^
955c0 28 2e 2a 29 28 3f 3a 2f 5b 5e 2f 5c 5c 5d 2b 2e 6a 73 6f 6e 29 3f 28 3f 3a 5b 3f 23 5d 2e 2a 29 (.*)(?:/[^/\\]+.json)?(?:[?#].*)
955e0 3f 24 7d 27 2c 20 27 24 31 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 2c 20 27 2f 27 29 3b 0a 24 ?$}',.'$1',.$this->url),.'/');.$
95600 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 6e this->io.=.$io;.$this->cache.=.n
95620 65 77 20 43 61 63 68 65 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 ew.Cache($io,.$config->get('cach
95640 65 2d 72 65 70 6f 2d 64 69 72 27 29 2e 27 2f 27 2e 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b e-repo-dir').'/'.preg_replace('{
95660 5b 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 2c [^a-z0-9.]}i',.'-',.$this->url),
95680 20 27 61 2d 7a 30 2d 39 2e 24 27 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 6e 65 .'a-z0-9.$');.$this->loader.=.ne
956a0 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 29 3b 0a 69 66 20 28 24 72 66 73 20 26 26 20 24 74 68 w.ArrayLoader();.if.($rfs.&&.$th
956c0 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 20 7b 0a 24 72 66 73 20 3d 20 63 6c 6f 6e 65 20 24 72 66 73 is->options).{.$rfs.=.clone.$rfs
956e0 3b 0a 24 72 66 73 2d 3e 73 65 74 4f 70 74 69 6f 6e 73 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e ;.$rfs->setOptions($this->option
95700 73 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 73 20 3f 3a 20 46 61 63 74 6f s);.}.$this->rfs.=.$rfs.?:.Facto
95720 72 79 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 74 68 69 73 ry::createRemoteFilesystem($this
95740 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 ->io,.$this->config,.$this->opti
95760 6f 6e 73 29 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 24 ons);.$this->eventDispatcher.=.$
95780 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 eventDispatcher;.$this->repoConf
957a0 69 67 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ig.=.$repoConfig;.}..public.func
957c0 74 69 6f 6e 20 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 tion.getRepoConfig().{.return.$t
957e0 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 his->repoConfig;.}..public.funct
95800 69 6f 6e 20 73 65 74 52 6f 6f 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 20 24 72 6f 6f 74 41 6c ion.setRootAliases(array.$rootAl
95820 69 61 73 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 41 6c 69 61 73 65 73 20 3d 20 24 72 iases).{.$this->rootAliases.=.$r
95840 6f 6f 74 41 6c 69 61 73 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ootAliases;.}.....public.functio
95860 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 n.findPackage($name,.$constraint
95880 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 50 72 6f 76 69 64 65 72 73 28 29 29 20 ).{.if.(!$this->hasProviders()).
958a0 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 {.return.parent::findPackage($na
958c0 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 24 6e 61 6d 65 20 3d 20 73 74 72 me,.$constraint);.}..$name.=.str
958e0 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 69 66 20 28 21 24 63 6f 6e 73 74 72 61 69 6e 74 tolower($name);.if.(!$constraint
95900 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 29 .instanceof.ConstraintInterface)
95920 20 7b 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 .{.$versionParser.=.new.VersionP
95940 61 72 73 65 72 28 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 76 65 72 73 69 6f 6e 50 arser();.$constraint.=.$versionP
95960 61 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 6f 6e 73 74 72 61 arser->parseConstraints($constra
95980 69 6e 74 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 76 int);.}..foreach.($this->getProv
959a0 69 64 65 72 4e 61 6d 65 73 28 29 20 61 73 20 24 70 72 6f 76 69 64 65 72 4e 61 6d 65 29 20 7b 0a iderNames().as.$providerName).{.
959c0 69 66 20 28 24 6e 61 6d 65 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 4e 61 6d 65 29 20 7b 0a 24 if.($name.===.$providerName).{.$
959e0 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 6e packages.=.$this->whatProvides(n
95a00 65 77 20 50 6f 6f 6c 28 27 64 65 76 27 29 2c 20 24 70 72 6f 76 69 64 65 72 4e 61 6d 65 29 3b 0a ew.Pool('dev'),.$providerName);.
95a20 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 foreach.($packages.as.$package).
95a40 7b 0a 69 66 20 28 24 6e 61 6d 65 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d {.if.($name.===.$package->getNam
95a60 65 28 29 29 20 7b 0a 24 70 6b 67 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 e()).{.$pkgConstraint.=.new.Cons
95a80 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f traint('==',.$package->getVersio
95aa0 6e 28 29 29 3b 0a 69 66 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 n());.if.($constraint->matches($
95ac0 70 6b 67 43 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 pkgConstraint)).{.return.$packag
95ae0 65 3b 0a 7d 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 e;.}.}.}.break;.}.}.}.....public
95b00 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 63 .function.findPackages($name,.$c
95b20 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e onstraint.=.null).{.if.(!$this->
95b40 68 61 73 50 72 6f 76 69 64 65 72 73 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a hasProviders()).{.return.parent:
95b60 3a 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 :findPackages($name,.$constraint
95b80 29 3b 0a 7d 0a 0a 20 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 );.}...$name.=.strtolower($name)
95ba0 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 26 26 20 21 ;..if.(null.!==.$constraint.&&.!
95bc0 24 63 6f 6e 73 74 72 61 69 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 74 72 61 69 6e $constraint.instanceof.Constrain
95be0 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e tInterface).{.$versionParser.=.n
95c00 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 ew.VersionParser();.$constraint.
95c20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e =.$versionParser->parseConstrain
95c40 74 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 ts($constraint);.}..$packages.=.
95c60 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 72 6f array();..foreach.($this->getPro
95c80 76 69 64 65 72 4e 61 6d 65 73 28 29 20 61 73 20 24 70 72 6f 76 69 64 65 72 4e 61 6d 65 29 20 7b viderNames().as.$providerName).{
95ca0 0a 69 66 20 28 24 6e 61 6d 65 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 4e 61 6d 65 29 20 7b 0a .if.($name.===.$providerName).{.
95cc0 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 $candidates.=.$this->whatProvide
95ce0 73 28 6e 65 77 20 50 6f 6f 6c 28 27 64 65 76 27 29 2c 20 24 70 72 6f 76 69 64 65 72 4e 61 6d 65 s(new.Pool('dev'),.$providerName
95d00 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 61 6e 64 69 64 61 74 65 73 20 61 73 20 24 70 61 63 6b );.foreach.($candidates.as.$pack
95d20 61 67 65 29 20 7b 0a 69 66 20 28 24 6e 61 6d 65 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 age).{.if.($name.===.$package->g
95d40 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 70 6b 67 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 etName()).{.$pkgConstraint.=.new
95d60 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 .Constraint('==',.$package->getV
95d80 65 72 73 69 6f 6e 28 29 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6e 73 74 72 61 ersion());.if.(null.===.$constra
95da0 69 6e 74 20 7c 7c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 70 6b 67 int.||.$constraint->matches($pkg
95dc0 43 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 70 61 Constraint)).{.$packages[].=.$pa
95de0 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 ckage;.}.}.}.break;.}.}..return.
95e00 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 $packages;.}..public.function.ge
95e20 74 50 61 63 6b 61 67 65 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 50 72 6f 76 tPackages().{.if.($this->hasProv
95e40 69 64 65 72 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 iders()).{.throw.new.\LogicExcep
95e60 74 69 6f 6e 28 27 43 6f 6d 70 6f 73 65 72 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 74 68 61 74 tion('Composer.repositories.that
95e80 20 68 61 76 65 20 70 72 6f 76 69 64 65 72 73 20 63 61 6e 20 6e 6f 74 20 6c 6f 61 64 20 74 68 65 .have.providers.can.not.load.the
95ea0 20 63 6f 6d 70 6c 65 74 65 20 6c 69 73 74 20 6f 66 20 70 61 63 6b 61 67 65 73 2c 20 75 73 65 20 .complete.list.of.packages,.use.
95ec0 67 65 74 50 72 6f 76 69 64 65 72 4e 61 6d 65 73 20 69 6e 73 74 65 61 64 2e 27 29 3b 0a 7d 0a 0a getProviderNames.instead.');.}..
95ee0 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 7d 0a return.parent::getPackages();.}.
95f00 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 28 24 71 75 65 72 ....public.function.search($quer
95f20 79 2c 20 24 6d 6f 64 65 20 3d 20 30 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 52 6f 6f 74 53 y,.$mode.=.0).{.$this->loadRootS
95f40 65 72 76 65 72 46 69 6c 65 28 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 65 61 72 63 68 55 erverFile();..if.($this->searchU
95f60 72 6c 20 26 26 20 24 6d 6f 64 65 20 3d 3d 3d 20 73 65 6c 66 3a 3a 53 45 41 52 43 48 5f 46 55 4c rl.&&.$mode.===.self::SEARCH_FUL
95f80 4c 54 45 58 54 29 20 7b 0a 24 75 72 6c 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 25 71 75 LTEXT).{.$url.=.str_replace('%qu
95fa0 65 72 79 25 27 2c 20 24 71 75 65 72 79 2c 20 24 74 68 69 73 2d 3e 73 65 61 72 63 68 55 72 6c 29 ery%',.$query,.$this->searchUrl)
95fc0 3b 0a 0a 24 68 6f 73 74 6e 61 6d 65 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 ;..$hostname.=.parse_url($url,.P
95fe0 48 50 5f 55 52 4c 5f 48 4f 53 54 29 20 3f 3a 20 24 75 72 6c 3b 0a 24 6a 73 6f 6e 20 3d 20 24 74 HP_URL_HOST).?:.$url;.$json.=.$t
96000 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 68 6f 73 74 6e 61 6d 65 2c his->rfs->getContents($hostname,
96020 20 24 75 72 6c 2c 20 66 61 6c 73 65 29 3b 0a 24 72 65 73 75 6c 74 73 20 3d 20 4a 73 6f 6e 46 69 .$url,.false);.$results.=.JsonFi
96040 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e 2c 20 24 75 72 6c 29 3b 0a 0a 72 65 74 le::parseJson($json,.$url);..ret
96060 75 72 6e 20 24 72 65 73 75 6c 74 73 5b 27 72 65 73 75 6c 74 73 27 5d 3b 0a 7d 0a 0a 69 66 20 28 urn.$results['results'];.}..if.(
96080 24 74 68 69 73 2d 3e 68 61 73 50 72 6f 76 69 64 65 72 73 28 29 29 20 7b 0a 24 72 65 73 75 6c 74 $this->hasProviders()).{.$result
960a0 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 67 65 78 20 3d 20 27 7b 28 3f 3a 27 2e 69 6d 70 s.=.array();.$regex.=.'{(?:'.imp
960c0 6c 6f 64 65 28 27 7c 27 2c 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 73 2b 7d 27 2c 20 24 71 lode('|',.preg_split('{\s+}',.$q
960e0 75 65 72 79 29 29 2e 27 29 7d 69 27 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 uery)).')}i';..foreach.($this->g
96100 65 74 50 72 6f 76 69 64 65 72 4e 61 6d 65 73 28 29 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 69 66 etProviderNames().as.$name).{.if
96120 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 67 65 78 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 24 .(preg_match($regex,.$name)).{.$
96140 72 65 73 75 6c 74 73 5b 5d 20 3d 20 61 72 72 61 79 28 27 6e 61 6d 65 27 20 3d 3e 20 24 6e 61 6d results[].=.array('name'.=>.$nam
96160 65 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 73 3b 0a 7d 0a 0a 72 65 74 e);.}.}..return.$results;.}..ret
96180 75 72 6e 20 70 61 72 65 6e 74 3a 3a 73 65 61 72 63 68 28 24 71 75 65 72 79 2c 20 24 6d 6f 64 65 urn.parent::search($query,.$mode
961a0 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 76 69 64 65 );.}..public.function.getProvide
961c0 72 4e 61 6d 65 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 52 6f 6f 74 53 65 72 76 65 72 rNames().{.$this->loadRootServer
961e0 46 69 6c 65 28 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f File();..if.(null.===.$this->pro
96200 76 69 64 65 72 4c 69 73 74 69 6e 67 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 50 72 6f 76 69 viderListing).{.$this->loadProvi
96220 64 65 72 4c 69 73 74 69 6e 67 73 28 24 74 68 69 73 2d 3e 6c 6f 61 64 52 6f 6f 74 53 65 72 76 65 derListings($this->loadRootServe
96240 72 46 69 6c 65 28 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 61 7a 79 50 72 6f 76 rFile());.}..if.($this->lazyProv
96260 69 64 65 72 73 55 72 6c 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a idersUrl).{...return.array();.}.
96280 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 55 72 6c 29 20 7b 0a 72 65 74 75 .if.($this->providersUrl).{.retu
962a0 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 4c 69 73 rn.array_keys($this->providerLis
962c0 74 69 6e 67 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 72 6f ting);.}..return.array();.}..pro
962e0 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 50 61 63 6b 61 67 65 tected.function.configurePackage
96300 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 TransportOptions(PackageInterfac
96320 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d e.$package).{.foreach.($package-
96340 3e 67 65 74 44 69 73 74 55 72 6c 73 28 29 20 61 73 20 24 75 72 6c 29 20 7b 0a 69 66 20 28 73 74 >getDistUrls().as.$url).{.if.(st
96360 72 70 6f 73 28 24 75 72 6c 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 29 20 3d 3d 3d 20 30 rpos($url,.$this->baseUrl).===.0
96380 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e ).{.$package->setTransportOption
963a0 73 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a s($this->options);..return;.}.}.
963c0 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 72 6f 76 69 64 65 72 73 28 }..public.function.hasProviders(
963e0 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 52 6f 6f 74 53 65 72 76 65 72 46 69 6c 65 28 29 3b ).{.$this->loadRootServerFile();
96400 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 50 72 6f 76 69 64 65 72 73 3b 0a 7d 0a ..return.$this->hasProviders;.}.
96420 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 50 61 63 6b 61 67 65 49 64 73 .public.function.resetPackageIds
96440 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 ().{.foreach.($this->providersBy
96460 55 69 64 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 Uid.as.$package).{.if.($package.
96480 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b instanceof.AliasPackage).{.$pack
964a0 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 2d 3e 73 65 74 49 64 28 2d 31 29 3b 0a 7d 0a age->getAliasOf()->setId(-1);.}.
964c0 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 64 28 2d 31 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 $package->setId(-1);.}.}..public
964e0 20 66 75 6e 63 74 69 6f 6e 20 77 68 61 74 50 72 6f 76 69 64 65 73 28 50 6f 6f 6c 20 24 70 6f 6f .function.whatProvides(Pool.$poo
96500 6c 2c 20 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 6f l,.$name).{.if.(isset($this->pro
96520 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e viders[$name])).{.return.$this->
96540 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f providers[$name];.}....if.(preg_
96560 6d 61 74 63 68 28 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3a 3a 50 4c 41 54 46 4f match(PlatformRepository::PLATFO
96580 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 6e 61 6d 65 29 20 7c 7c 20 27 5f 5f 72 RM_PACKAGE_REGEX,.$name).||.'__r
965a0 6f 6f 74 5f 5f 27 20 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 oot__'.===.$name).{.return.array
965c0 28 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 ();.}..if.(null.===.$this->provi
965e0 64 65 72 4c 69 73 74 69 6e 67 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 50 72 6f 76 69 64 65 derListing).{.$this->loadProvide
96600 72 4c 69 73 74 69 6e 67 73 28 24 74 68 69 73 2d 3e 6c 6f 61 64 52 6f 6f 74 53 65 72 76 65 72 46 rListings($this->loadRootServerF
96620 69 6c 65 28 29 29 3b 0a 7d 0a 0a 24 75 73 65 4c 61 73 74 4d 6f 64 69 66 69 65 64 43 68 65 63 6b ile());.}..$useLastModifiedCheck
96640 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 61 7a 79 50 72 6f 76 69 64 65 .=.false;.if.($this->lazyProvide
96660 72 73 55 72 6c 20 26 26 20 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 4c rsUrl.&&.!isset($this->providerL
96680 69 73 74 69 6e 67 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 68 61 73 68 20 3d 20 6e 75 6c 6c 3b 0a isting[$name])).{.$hash.=.null;.
966a0 24 75 72 6c 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 25 70 61 63 6b 61 67 65 25 27 2c 20 $url.=.str_replace('%package%',.
966c0 24 6e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 6c 61 7a 79 50 72 6f 76 69 64 65 72 73 55 72 6c 29 3b $name,.$this->lazyProvidersUrl);
966e0 0a 24 63 61 63 68 65 4b 65 79 20 3d 20 27 70 72 6f 76 69 64 65 72 2d 27 2e 73 74 72 74 72 28 24 .$cacheKey.=.'provider-'.strtr($
96700 6e 61 6d 65 2c 20 27 2f 27 2c 20 27 24 27 29 2e 27 2e 6a 73 6f 6e 27 3b 0a 24 75 73 65 4c 61 73 name,.'/',.'$').'.json';.$useLas
96720 74 4d 6f 64 69 66 69 65 64 43 68 65 63 6b 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 tModifiedCheck.=.true;.}.elseif.
96740 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 55 72 6c 29 20 7b 0a 0a 20 69 66 20 28 21 69 ($this->providersUrl).{...if.(!i
96760 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 4c 69 73 74 69 6e 67 5b 24 6e 61 6d sset($this->providerListing[$nam
96780 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 24 68 61 73 68 20 e])).{.return.array();.}..$hash.
967a0 3d 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 4c 69 73 74 69 6e 67 5b 24 6e 61 6d 65 5d 5b =.$this->providerListing[$name][
967c0 27 73 68 61 32 35 36 27 5d 3b 0a 24 75 72 6c 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 'sha256'];.$url.=.str_replace(ar
967e0 72 61 79 28 27 25 70 61 63 6b 61 67 65 25 27 2c 20 27 25 68 61 73 68 25 27 29 2c 20 61 72 72 61 ray('%package%',.'%hash%'),.arra
96800 79 28 24 6e 61 6d 65 2c 20 24 68 61 73 68 29 2c 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 y($name,.$hash),.$this->provider
96820 73 55 72 6c 29 3b 0a 24 63 61 63 68 65 4b 65 79 20 3d 20 27 70 72 6f 76 69 64 65 72 2d 27 2e 73 sUrl);.$cacheKey.=.'provider-'.s
96840 74 72 74 72 28 24 6e 61 6d 65 2c 20 27 2f 27 2c 20 27 24 27 29 2e 27 2e 6a 73 6f 6e 27 3b 0a 7d trtr($name,.'/',.'$').'.json';.}
96860 20 65 6c 73 65 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 24 70 61 63 6b .else.{.return.array();.}..$pack
96880 61 67 65 73 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 63 61 63 68 65 4b 65 79 29 20 7b 0a 69 66 ages.=.null;.if.($cacheKey).{.if
968a0 20 28 21 24 75 73 65 4c 61 73 74 4d 6f 64 69 66 69 65 64 43 68 65 63 6b 20 26 26 20 24 68 61 73 .(!$useLastModifiedCheck.&&.$has
968c0 68 20 26 26 20 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 73 68 61 32 35 36 28 24 63 61 63 68 65 h.&&.$this->cache->sha256($cache
968e0 4b 65 79 29 20 3d 3d 3d 20 24 68 61 73 68 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 6a 73 Key).===.$hash).{.$packages.=.js
96900 6f 6e 5f 64 65 63 6f 64 65 28 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 63 61 on_decode($this->cache->read($ca
96920 63 68 65 4b 65 79 29 2c 20 74 72 75 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 75 73 65 4c 61 cheKey),.true);.}.elseif.($useLa
96940 73 74 4d 6f 64 69 66 69 65 64 43 68 65 63 6b 29 20 7b 0a 69 66 20 28 24 63 6f 6e 74 65 6e 74 73 stModifiedCheck).{.if.($contents
96960 20 3d 20 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 63 61 63 68 65 4b 65 79 29 .=.$this->cache->read($cacheKey)
96980 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 63 6f 6e ).{.$contents.=.json_decode($con
969a0 74 65 6e 74 73 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 74 65 6e 74 tents,.true);.if.(isset($content
969c0 73 5b 27 6c 61 73 74 2d 6d 6f 64 69 66 69 65 64 27 5d 29 29 20 7b 0a 24 72 65 73 70 6f 6e 73 65 s['last-modified'])).{.$response
969e0 20 3d 20 24 74 68 69 73 2d 3e 66 65 74 63 68 46 69 6c 65 49 66 4c 61 73 74 4d 6f 64 69 66 69 65 .=.$this->fetchFileIfLastModifie
96a00 64 28 24 75 72 6c 2c 20 24 63 61 63 68 65 4b 65 79 2c 20 24 63 6f 6e 74 65 6e 74 73 5b 27 6c 61 d($url,.$cacheKey,.$contents['la
96a20 73 74 2d 6d 6f 64 69 66 69 65 64 27 5d 29 3b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 72 65 st-modified']);.if.(true.===.$re
96a40 73 70 6f 6e 73 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 63 6f 6e 74 65 6e 74 73 3b sponse).{.$packages.=.$contents;
96a60 0a 7d 20 65 6c 73 65 69 66 20 28 24 72 65 73 70 6f 6e 73 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 .}.elseif.($response).{.$package
96a80 73 20 3d 20 24 72 65 73 70 6f 6e 73 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 s.=.$response;.}.}.}.}.}..if.(!$
96aa0 70 61 63 6b 61 67 65 73 29 20 7b 0a 74 72 79 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 packages).{.try.{.$packages.=.$t
96ac0 68 69 73 2d 3e 66 65 74 63 68 46 69 6c 65 28 24 75 72 6c 2c 20 24 63 61 63 68 65 4b 65 79 2c 20 his->fetchFile($url,.$cacheKey,.
96ae0 24 68 61 73 68 2c 20 24 75 73 65 4c 61 73 74 4d 6f 64 69 66 69 65 64 43 68 65 63 6b 29 3b 0a 7d $hash,.$useLastModifiedCheck);.}
96b00 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b .catch.(TransportException.$e).{
96b20 0a 0a 20 69 66 20 28 24 65 2d 3e 67 65 74 53 74 61 74 75 73 43 6f 64 65 28 29 20 3d 3d 3d 20 34 ...if.($e->getStatusCode().===.4
96b40 30 34 20 26 26 20 24 74 68 69 73 2d 3e 6c 61 7a 79 50 72 6f 76 69 64 65 72 73 55 72 6c 29 20 7b 04.&&.$this->lazyProvidersUrl).{
96b60 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 27 70 61 63 6b 61 67 65 73 27 20 3d 3e .$packages.=.array('packages'.=>
96b80 20 61 72 72 61 79 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a .array());.}.else.{.throw.$e;.}.
96ba0 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 20 3d 20 61 }.}..$this->providers[$name].=.a
96bc0 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 5b 27 70 61 63 6b rray();.foreach.($packages['pack
96be0 61 67 65 73 27 5d 20 61 73 20 24 76 65 72 73 69 6f 6e 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 ages'].as.$versions).{.foreach.(
96c00 24 76 65 72 73 69 6f 6e 73 20 61 73 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 0a 20 69 66 20 28 69 $versions.as.$version).{...if.(i
96c20 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b 24 76 65 72 73 sset($this->providersByUid[$vers
96c40 69 6f 6e 5b 27 75 69 64 27 5d 5d 29 29 20 7b 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 74 68 ion['uid']])).{...if.(!isset($th
96c60 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 5b 24 76 65 72 73 69 6f 6e 5b 27 75 is->providers[$name][$version['u
96c80 69 64 27 5d 5d 29 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 id']])).{...if.($this->providers
96ca0 42 79 55 69 64 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 5d 20 69 6e 73 74 61 6e 63 65 6f ByUid[$version['uid']].instanceo
96cc0 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 f.AliasPackage).{.$this->provide
96ce0 72 73 5b 24 6e 61 6d 65 5d 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 5d 20 3d 20 24 74 68 rs[$name][$version['uid']].=.$th
96d00 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 is->providersByUid[$version['uid
96d20 27 5d 5d 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 ']]->getAliasOf();.$this->provid
96d40 65 72 73 5b 24 6e 61 6d 65 5d 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 2e 27 2d 61 6c 69 ers[$name][$version['uid'].'-ali
96d60 61 73 27 5d 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b 24 76 65 as'].=.$this->providersByUid[$ve
96d80 72 73 69 6f 6e 5b 27 75 69 64 27 5d 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 rsion['uid']];.}.else.{.$this->p
96da0 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 5d roviders[$name][$version['uid']]
96dc0 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b 24 76 65 72 73 69 6f .=.$this->providersByUid[$versio
96de0 6e 5b 27 75 69 64 27 5d 5d 3b 0a 7d 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e n['uid']];.}...if.(isset($this->
96e00 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 2e 27 providersByUid[$version['uid'].'
96e20 2d 72 6f 6f 74 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 -root'])).{.$this->providers[$na
96e40 6d 65 5d 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 2e 27 2d 72 6f 6f 74 27 5d 20 3d 20 24 me][$version['uid'].'-root'].=.$
96e60 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b 24 76 65 72 73 69 6f 6e 5b 27 75 this->providersByUid[$version['u
96e80 69 64 27 5d 2e 27 2d 72 6f 6f 74 27 5d 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 id'].'-root'];.}.}.}.else.{.if.(
96ea0 21 24 70 6f 6f 6c 2d 3e 69 73 50 61 63 6b 61 67 65 41 63 63 65 70 74 61 62 6c 65 28 73 74 72 74 !$pool->isPackageAcceptable(strt
96ec0 6f 6c 6f 77 65 72 28 24 76 65 72 73 69 6f 6e 5b 27 6e 61 6d 65 27 5d 29 2c 20 56 65 72 73 69 6f olower($version['name']),.Versio
96ee0 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 65 53 74 61 62 69 6c 69 74 79 28 24 76 65 72 73 69 6f 6e nParser::parseStability($version
96f00 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 ['version']))).{.continue;.}....
96f20 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 50 61 63 6b 61 67 65 28 $package.=.$this->createPackage(
96f40 24 76 65 72 73 69 6f 6e 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 $version,.'Composer\Package\Comp
96f60 6c 65 74 65 50 61 63 6b 61 67 65 27 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 70 6f letePackage');.$package->setRepo
96f80 73 69 74 6f 72 79 28 24 74 68 69 73 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 sitory($this);..if.($package.ins
96fa0 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 61 6c 69 61 73 65 64 tanceof.AliasPackage).{.$aliased
96fc0 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 24 61 6c 69 61 .=.$package->getAliasOf();.$alia
96fe0 73 65 64 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 28 24 74 68 69 73 29 3b 0a 0a 24 74 68 69 sed->setRepository($this);..$thi
97000 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 s->providers[$name][$version['ui
97020 64 27 5d 5d 20 3d 20 24 61 6c 69 61 73 65 64 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 d']].=.$aliased;.$this->provider
97040 73 5b 24 6e 61 6d 65 5d 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 2e 27 2d 61 6c 69 61 73 s[$name][$version['uid'].'-alias
97060 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 '].=.$package;....$this->provide
97080 72 73 42 79 55 69 64 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 5d 20 3d 20 24 70 61 63 6b rsByUid[$version['uid']].=.$pack
970a0 61 67 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 age;.}.else.{.$this->providers[$
970c0 6e 61 6d 65 5d 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 5d 20 3d 20 24 70 61 63 6b 61 67 name][$version['uid']].=.$packag
970e0 65 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b 24 76 65 72 73 69 6f e;.$this->providersByUid[$versio
97100 6e 5b 27 75 69 64 27 5d 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 20 75 6e 73 65 74 n['uid']].=.$package;.}....unset
97120 28 24 72 6f 6f 74 41 6c 69 61 73 44 61 74 61 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 ($rootAliasData);..if.(isset($th
97140 69 73 2d 3e 72 6f 6f 74 41 6c 69 61 73 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d is->rootAliases[$package->getNam
97160 65 28 29 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 5d 29 29 20 7b e()][$package->getVersion()])).{
97180 0a 24 72 6f 6f 74 41 6c 69 61 73 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 41 6c 69 .$rootAliasData.=.$this->rootAli
971a0 61 73 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 24 70 61 63 6b 61 ases[$package->getName()][$packa
971c0 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 ge->getVersion()];.}.elseif.($pa
971e0 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 20 26 26 ckage.instanceof.AliasPackage.&&
97200 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 6f 6f 74 41 6c 69 61 73 65 73 5b 24 70 61 63 6b 61 .isset($this->rootAliases[$packa
97220 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 ge->getName()][$package->getAlia
97240 73 4f 66 28 29 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 5d 29 29 20 7b 0a 24 72 6f 6f 74 41 6c sOf()->getVersion()])).{.$rootAl
97260 69 61 73 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 41 6c 69 61 73 65 73 5b 24 70 61 iasData.=.$this->rootAliases[$pa
97280 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 ckage->getName()][$package->getA
972a0 6c 69 61 73 4f 66 28 29 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 5d 3b 0a 7d 0a 0a 69 66 20 28 liasOf()->getVersion()];.}..if.(
972c0 69 73 73 65 74 28 24 72 6f 6f 74 41 6c 69 61 73 44 61 74 61 29 29 20 7b 0a 24 61 6c 69 61 73 20 isset($rootAliasData)).{.$alias.
972e0 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 41 6c 69 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 =.$this->createAliasPackage($pac
97300 6b 61 67 65 2c 20 24 72 6f 6f 74 41 6c 69 61 73 44 61 74 61 5b 27 61 6c 69 61 73 5f 6e 6f 72 6d kage,.$rootAliasData['alias_norm
97320 61 6c 69 7a 65 64 27 5d 2c 20 24 72 6f 6f 74 41 6c 69 61 73 44 61 74 61 5b 27 61 6c 69 61 73 27 alized'],.$rootAliasData['alias'
97340 5d 29 3b 0a 24 61 6c 69 61 73 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 28 24 74 68 69 73 29 ]);.$alias->setRepository($this)
97360 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 5b 24 76 65 72 73 ;..$this->providers[$name][$vers
97380 69 6f 6e 5b 27 75 69 64 27 5d 2e 27 2d 72 6f 6f 74 27 5d 20 3d 20 24 61 6c 69 61 73 3b 0a 24 74 ion['uid'].'-root'].=.$alias;.$t
973a0 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 his->providersByUid[$version['ui
973c0 64 27 5d 2e 27 2d 72 6f 6f 74 27 5d 20 3d 20 24 61 6c 69 61 73 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a d'].'-root'].=.$alias;.}.}.}.}..
973e0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 3b 0a return.$this->providers[$name];.
97400 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c }.....protected.function.initial
97420 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 ize().{.parent::initialize();..$
97440 72 65 70 6f 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 44 61 74 61 46 72 6f 6d 53 65 repoData.=.$this->loadDataFromSe
97460 72 76 65 72 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 44 61 74 61 20 61 73 20 24 rver();..foreach.($repoData.as.$
97480 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 74 68 package).{.$this->addPackage($th
974a0 69 73 2d 3e 63 72 65 61 74 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 27 43 6f 6d is->createPackage($package,.'Com
974c0 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 27 29 29 poser\Package\CompletePackage'))
974e0 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 50 ;.}.}.......public.function.addP
97500 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 ackage(PackageInterface.$package
97520 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 ).{.parent::addPackage($package)
97540 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 75 72 65 50 61 63 6b 61 67 65 54 72 61 6e 73 70 6f ;.$this->configurePackageTranspo
97560 72 74 4f 70 74 69 6f 6e 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 rtOptions($package);.}..protecte
97580 64 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 52 6f 6f 74 53 65 72 76 65 72 46 69 6c 65 28 29 0a d.function.loadRootServerFile().
975a0 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 44 61 74 61 29 20 {.if.(null.!==.$this->rootData).
975c0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 44 61 74 61 3b 0a 7d 0a 0a 69 66 20 {.return.$this->rootData;.}..if.
975e0 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 20 26 26 (!extension_loaded('openssl').&&
97600 20 27 68 74 74 70 73 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 75 72 6c 2c 20 .'https'.===.substr($this->url,.
97620 30 2c 20 35 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 0,.5)).{.throw.new.\RuntimeExcep
97640 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 65 6e 61 62 6c 65 20 74 68 65 20 6f 70 65 6e 73 73 tion('You.must.enable.the.openss
97660 6c 20 65 78 74 65 6e 73 69 6f 6e 20 69 6e 20 79 6f 75 72 20 70 68 70 2e 69 6e 69 20 74 6f 20 6c l.extension.in.your.php.ini.to.l
97680 6f 61 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 72 6f 6d 20 27 2e 24 74 68 69 73 2d 3e 75 72 oad.information.from.'.$this->ur
976a0 6c 29 3b 0a 7d 0a 0a 24 6a 73 6f 6e 55 72 6c 50 61 72 74 73 20 3d 20 70 61 72 73 65 5f 75 72 6c l);.}..$jsonUrlParts.=.parse_url
976c0 28 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6a 73 6f 6e 55 72 ($this->url);..if.(isset($jsonUr
976e0 6c 50 61 72 74 73 5b 27 70 61 74 68 27 5d 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 lParts['path']).&&.false.!==.str
97700 70 6f 73 28 24 6a 73 6f 6e 55 72 6c 50 61 72 74 73 5b 27 70 61 74 68 27 5d 2c 20 27 2e 6a 73 6f pos($jsonUrlParts['path'],.'.jso
97720 6e 27 29 29 20 7b 0a 24 6a 73 6f 6e 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 20 n')).{.$jsonUrl.=.$this->url;.}.
97740 65 6c 73 65 20 7b 0a 24 6a 73 6f 6e 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 75 72 6c 20 2e 20 27 else.{.$jsonUrl.=.$this->url...'
97760 2f 70 61 63 6b 61 67 65 73 2e 6a 73 6f 6e 27 3b 0a 7d 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 /packages.json';.}..$data.=.$thi
97780 73 2d 3e 66 65 74 63 68 46 69 6c 65 28 24 6a 73 6f 6e 55 72 6c 2c 20 27 70 61 63 6b 61 67 65 73 s->fetchFile($jsonUrl,.'packages
977a0 2e 6a 73 6f 6e 27 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 6e 6f 74 69 .json');..if.(!empty($data['noti
977c0 66 79 2d 62 61 74 63 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 69 66 79 55 72 6c 20 fy-batch'])).{.$this->notifyUrl.
977e0 3d 20 24 74 68 69 73 2d 3e 63 61 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 28 24 64 61 74 61 5b 27 =.$this->canonicalizeUrl($data['
97800 6e 6f 74 69 66 79 2d 62 61 74 63 68 27 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 65 6d 70 74 notify-batch']);.}.elseif.(!empt
97820 79 28 24 64 61 74 61 5b 27 6e 6f 74 69 66 79 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 y($data['notify'])).{.$this->not
97840 69 66 79 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 63 61 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 28 ifyUrl.=.$this->canonicalizeUrl(
97860 24 64 61 74 61 5b 27 6e 6f 74 69 66 79 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 $data['notify']);.}..if.(!empty(
97880 24 64 61 74 61 5b 27 73 65 61 72 63 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 61 72 63 $data['search'])).{.$this->searc
978a0 68 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 63 61 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 28 24 64 hUrl.=.$this->canonicalizeUrl($d
978c0 61 74 61 5b 27 73 65 61 72 63 68 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 64 ata['search']);.}..if.(!empty($d
978e0 61 74 61 5b 27 6d 69 72 72 6f 72 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 ata['mirrors'])).{.foreach.($dat
97900 61 5b 27 6d 69 72 72 6f 72 73 27 5d 20 61 73 20 24 6d 69 72 72 6f 72 29 20 7b 0a 69 66 20 28 21 a['mirrors'].as.$mirror).{.if.(!
97920 65 6d 70 74 79 28 24 6d 69 72 72 6f 72 5b 27 67 69 74 2d 75 72 6c 27 5d 29 29 20 7b 0a 24 74 68 empty($mirror['git-url'])).{.$th
97940 69 73 2d 3e 73 6f 75 72 63 65 4d 69 72 72 6f 72 73 5b 27 67 69 74 27 5d 5b 5d 20 3d 20 61 72 72 is->sourceMirrors['git'][].=.arr
97960 61 79 28 27 75 72 6c 27 20 3d 3e 20 24 6d 69 72 72 6f 72 5b 27 67 69 74 2d 75 72 6c 27 5d 2c 20 ay('url'.=>.$mirror['git-url'],.
97980 27 70 72 65 66 65 72 72 65 64 27 20 3d 3e 20 21 65 6d 70 74 79 28 24 6d 69 72 72 6f 72 5b 27 70 'preferred'.=>.!empty($mirror['p
979a0 72 65 66 65 72 72 65 64 27 5d 29 29 3b 0a 7d 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 69 72 72 referred']));.}.if.(!empty($mirr
979c0 6f 72 5b 27 68 67 2d 75 72 6c 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 4d 69 or['hg-url'])).{.$this->sourceMi
979e0 72 72 6f 72 73 5b 27 68 67 27 5d 5b 5d 20 3d 20 61 72 72 61 79 28 27 75 72 6c 27 20 3d 3e 20 24 rrors['hg'][].=.array('url'.=>.$
97a00 6d 69 72 72 6f 72 5b 27 68 67 2d 75 72 6c 27 5d 2c 20 27 70 72 65 66 65 72 72 65 64 27 20 3d 3e mirror['hg-url'],.'preferred'.=>
97a20 20 21 65 6d 70 74 79 28 24 6d 69 72 72 6f 72 5b 27 70 72 65 66 65 72 72 65 64 27 5d 29 29 3b 0a .!empty($mirror['preferred']));.
97a40 7d 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 69 72 72 6f 72 5b 27 64 69 73 74 2d 75 72 6c 27 5d }.if.(!empty($mirror['dist-url']
97a60 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 69 73 74 4d 69 72 72 6f 72 73 5b 5d 20 3d 20 61 72 72 61 )).{.$this->distMirrors[].=.arra
97a80 79 28 27 75 72 6c 27 20 3d 3e 20 24 6d 69 72 72 6f 72 5b 27 64 69 73 74 2d 75 72 6c 27 5d 2c 20 y('url'.=>.$mirror['dist-url'],.
97aa0 27 70 72 65 66 65 72 72 65 64 27 20 3d 3e 20 21 65 6d 70 74 79 28 24 6d 69 72 72 6f 72 5b 27 70 'preferred'.=>.!empty($mirror['p
97ac0 72 65 66 65 72 72 65 64 27 5d 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 referred']));.}.}.}..if.(!empty(
97ae0 24 64 61 74 61 5b 27 77 61 72 6e 69 6e 67 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e $data['warning'])).{.$this->io->
97b00 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 57 61 72 6e 69 6e 67 20 66 72 6f writeError('<warning>Warning.fro
97b20 6d 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 3a 20 27 2e 24 64 61 74 61 5b 27 77 61 72 6e 69 m.'.$this->url.':.'.$data['warni
97b40 6e 67 27 5d 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 ng'].'</warning>');.}..if.(!empt
97b60 79 28 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 72 73 2d 6c 61 7a 79 2d 75 72 6c 27 5d 29 29 20 y($data['providers-lazy-url'])).
97b80 7b 0a 24 74 68 69 73 2d 3e 6c 61 7a 79 50 72 6f 76 69 64 65 72 73 55 72 6c 20 3d 20 24 74 68 69 {.$this->lazyProvidersUrl.=.$thi
97ba0 73 2d 3e 63 61 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 28 24 64 61 74 61 5b 27 70 72 6f 76 69 64 s->canonicalizeUrl($data['provid
97bc0 65 72 73 2d 6c 61 7a 79 2d 75 72 6c 27 5d 29 3b 0a 24 74 68 69 73 2d 3e 68 61 73 50 72 6f 76 69 ers-lazy-url']);.$this->hasProvi
97be0 64 65 72 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 6c 6c 6f 77 ders.=.true;.}..if.($this->allow
97c00 53 73 6c 44 6f 77 6e 67 72 61 64 65 29 20 7b 0a 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 73 74 72 SslDowngrade).{.$this->url.=.str
97c20 5f 72 65 70 6c 61 63 65 28 27 68 74 74 70 73 3a 2f 2f 27 2c 20 27 68 74 74 70 3a 2f 2f 27 2c 20 _replace('https://',.'http://',.
97c40 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 3d 20 73 74 $this->url);.$this->baseUrl.=.st
97c60 72 5f 72 65 70 6c 61 63 65 28 27 68 74 74 70 73 3a 2f 2f 27 2c 20 27 68 74 74 70 3a 2f 2f 27 2c r_replace('https://',.'http://',
97c80 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 .$this->baseUrl);.}..if.(!empty(
97ca0 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 72 73 2d 75 72 6c 27 5d 29 29 20 7b 0a 24 74 68 69 73 $data['providers-url'])).{.$this
97cc0 2d 3e 70 72 6f 76 69 64 65 72 73 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 63 61 6e 6f 6e 69 63 61 ->providersUrl.=.$this->canonica
97ce0 6c 69 7a 65 55 72 6c 28 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 72 73 2d 75 72 6c 27 5d 29 3b lizeUrl($data['providers-url']);
97d00 0a 24 74 68 69 73 2d 3e 68 61 73 50 72 6f 76 69 64 65 72 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a .$this->hasProviders.=.true;.}..
97d20 69 66 20 28 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 72 73 27 5d 29 20 7c if.(!empty($data['providers']).|
97d40 7c 20 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 72 73 2d 69 6e 63 6c 75 64 |.!empty($data['providers-includ
97d60 65 73 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 68 61 73 50 72 6f 76 69 64 65 72 73 20 3d 20 74 es'])).{.$this->hasProviders.=.t
97d80 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 rue;.}....if.(preg_match('{^http
97da0 73 3f 3a 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 2f 3f 24 7d 69 27 2c 20 24 74 68 69 73 2d s?://packagist.org/?$}i',.$this-
97dc0 3e 75 72 6c 29 20 26 26 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 >url).&&.!empty($this->repoConfi
97de0 67 5b 27 66 6f 72 63 65 2d 6c 61 7a 79 2d 70 72 6f 76 69 64 65 72 73 27 5d 29 29 20 7b 0a 24 74 g['force-lazy-providers'])).{.$t
97e00 68 69 73 2d 3e 75 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 his->url.=.'https://packagist.or
97e20 67 27 3b 0a 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 70 61 g';.$this->baseUrl.=.'https://pa
97e40 63 6b 61 67 69 73 74 2e 6f 72 67 27 3b 0a 24 74 68 69 73 2d 3e 6c 61 7a 79 50 72 6f 76 69 64 65 ckagist.org';.$this->lazyProvide
97e60 72 73 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 63 61 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 28 27 rsUrl.=.$this->canonicalizeUrl('
97e80 68 74 74 70 73 3a 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 2f 70 2f 25 70 61 63 6b 61 67 65 https://packagist.org/p/%package
97ea0 25 2e 6a 73 6f 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 55 72 6c 20 3d 20 %.json');.$this->providersUrl.=.
97ec0 6e 75 6c 6c 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 72 65 null;.}.elseif.(!empty($this->re
97ee0 70 6f 43 6f 6e 66 69 67 5b 27 66 6f 72 63 65 2d 6c 61 7a 79 2d 70 72 6f 76 69 64 65 72 73 27 5d poConfig['force-lazy-providers']
97f00 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 61 7a 79 50 72 6f 76 69 64 65 72 73 55 72 6c 20 3d 20 24 )).{.$this->lazyProvidersUrl.=.$
97f20 74 68 69 73 2d 3e 63 61 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 28 27 2f 70 2f 25 70 61 63 6b 61 this->canonicalizeUrl('/p/%packa
97f40 67 65 25 2e 6a 73 6f 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 55 72 6c 20 ge%.json');.$this->providersUrl.
97f60 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 44 61 74 =.null;.}..return.$this->rootDat
97f80 61 20 3d 20 24 64 61 74 61 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e a.=.$data;.}..protected.function
97fa0 20 63 61 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 28 24 75 72 6c 29 0a 7b 0a 69 66 20 28 27 2f 27 .canonicalizeUrl($url).{.if.('/'
97fc0 20 3d 3d 3d 20 24 75 72 6c 5b 30 5d 29 20 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c .===.$url[0]).{.return.preg_repl
97fe0 61 63 65 28 27 7b 28 68 74 74 70 73 3f 3a 2f 2f 5b 5e 2f 5d 2b 29 2e 2a 7d 69 27 2c 20 27 24 31 ace('{(https?://[^/]+).*}i',.'$1
98000 27 20 2e 20 24 75 72 6c 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e '...$url,.$this->url);.}..return
98020 20 24 75 72 6c 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 .$url;.}..protected.function.loa
98040 64 44 61 74 61 46 72 6f 6d 53 65 72 76 65 72 28 29 0a 7b 0a 24 64 61 74 61 20 3d 20 24 74 68 69 dDataFromServer().{.$data.=.$thi
98060 73 2d 3e 6c 6f 61 64 52 6f 6f 74 53 65 72 76 65 72 46 69 6c 65 28 29 3b 0a 0a 72 65 74 75 72 6e s->loadRootServerFile();..return
98080 20 24 74 68 69 73 2d 3e 6c 6f 61 64 49 6e 63 6c 75 64 65 73 28 24 64 61 74 61 29 3b 0a 7d 0a 0a .$this->loadIncludes($data);.}..
980a0 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 50 72 6f 76 69 64 65 72 4c protected.function.loadProviderL
980c0 69 73 74 69 6e 67 73 28 24 64 61 74 61 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 istings($data).{.if.(isset($data
980e0 5b 27 70 72 6f 76 69 64 65 72 73 27 5d 29 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 ['providers'])).{.if.(!is_array(
98100 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 4c 69 73 74 69 6e 67 29 29 20 7b 0a 24 74 68 69 73 $this->providerListing)).{.$this
98120 2d 3e 70 72 6f 76 69 64 65 72 4c 69 73 74 69 6e 67 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 24 ->providerListing.=.array();.}.$
98140 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 4c 69 73 74 69 6e 67 20 3d 20 61 72 72 61 79 5f 6d 65 this->providerListing.=.array_me
98160 72 67 65 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 4c 69 73 74 69 6e 67 2c 20 24 64 61 74 rge($this->providerListing,.$dat
98180 61 5b 27 70 72 6f 76 69 64 65 72 73 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 a['providers']);.}..if.($this->p
981a0 72 6f 76 69 64 65 72 73 55 72 6c 20 26 26 20 69 73 73 65 74 28 24 64 61 74 61 5b 27 70 72 6f 76 rovidersUrl.&&.isset($data['prov
981c0 69 64 65 72 2d 69 6e 63 6c 75 64 65 73 27 5d 29 29 20 7b 0a 24 69 6e 63 6c 75 64 65 73 20 3d 20 ider-includes'])).{.$includes.=.
981e0 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 72 2d 69 6e 63 6c 75 64 65 73 27 5d 3b 0a 66 6f 72 65 $data['provider-includes'];.fore
98200 61 63 68 20 28 24 69 6e 63 6c 75 64 65 73 20 61 73 20 24 69 6e 63 6c 75 64 65 20 3d 3e 20 24 6d ach.($includes.as.$include.=>.$m
98220 65 74 61 64 61 74 61 29 20 7b 0a 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c etadata).{.$url.=.$this->baseUrl
98240 20 2e 20 27 2f 27 20 2e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 25 68 61 73 68 25 27 2c 20 24 ...'/'...str_replace('%hash%',.$
98260 6d 65 74 61 64 61 74 61 5b 27 73 68 61 32 35 36 27 5d 2c 20 24 69 6e 63 6c 75 64 65 29 3b 0a 24 metadata['sha256'],.$include);.$
98280 63 61 63 68 65 4b 65 79 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 25 68 cacheKey.=.str_replace(array('%h
982a0 61 73 68 25 27 2c 27 24 27 29 2c 20 27 27 2c 20 24 69 6e 63 6c 75 64 65 29 3b 0a 69 66 20 28 24 ash%','$'),.'',.$include);.if.($
982c0 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 73 68 61 32 35 36 28 24 63 61 63 68 65 4b 65 79 29 20 3d this->cache->sha256($cacheKey).=
982e0 3d 3d 20 24 6d 65 74 61 64 61 74 61 5b 27 73 68 61 32 35 36 27 5d 29 20 7b 0a 24 69 6e 63 6c 75 ==.$metadata['sha256']).{.$inclu
98300 64 65 64 44 61 74 61 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 74 68 69 73 2d 3e 63 61 63 dedData.=.json_decode($this->cac
98320 68 65 2d 3e 72 65 61 64 28 24 63 61 63 68 65 4b 65 79 29 2c 20 74 72 75 65 29 3b 0a 7d 20 65 6c he->read($cacheKey),.true);.}.el
98340 73 65 20 7b 0a 24 69 6e 63 6c 75 64 65 64 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 66 65 74 63 se.{.$includedData.=.$this->fetc
98360 68 46 69 6c 65 28 24 75 72 6c 2c 20 24 63 61 63 68 65 4b 65 79 2c 20 24 6d 65 74 61 64 61 74 61 hFile($url,.$cacheKey,.$metadata
98380 5b 27 73 68 61 32 35 36 27 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 50 72 6f 76 69 ['sha256']);.}..$this->loadProvi
983a0 64 65 72 4c 69 73 74 69 6e 67 73 28 24 69 6e 63 6c 75 64 65 64 44 61 74 61 29 3b 0a 7d 0a 7d 0a derListings($includedData);.}.}.
983c0 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 49 6e 63 6c 75 64 }..protected.function.loadInclud
983e0 65 73 28 24 64 61 74 61 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b es($data).{.$packages.=.array();
98400 0a 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 64 61 74 61 5b 27 70 61 63 6b 61 67 65 73 27 5d ....if.(!isset($data['packages']
98420 29 20 26 26 20 21 69 73 73 65 74 28 24 64 61 74 61 5b 27 69 6e 63 6c 75 64 65 73 27 5d 29 29 20 ).&&.!isset($data['includes'])).
98440 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 20 61 73 20 24 70 6b 67 29 20 7b 0a 66 6f 72 65 {.foreach.($data.as.$pkg).{.fore
98460 61 63 68 20 28 24 70 6b 67 5b 27 76 65 72 73 69 6f 6e 73 27 5d 20 61 73 20 24 6d 65 74 61 64 61 ach.($pkg['versions'].as.$metada
98480 74 61 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 6d 65 74 61 64 61 74 61 3b 0a 7d ta).{.$packages[].=.$metadata;.}
984a0 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 .}..return.$packages;.}..if.(iss
984c0 65 74 28 24 64 61 74 61 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 et($data['packages'])).{.foreach
984e0 20 28 24 64 61 74 61 5b 27 70 61 63 6b 61 67 65 73 27 5d 20 61 73 20 24 70 61 63 6b 61 67 65 20 .($data['packages'].as.$package.
98500 3d 3e 20 24 76 65 72 73 69 6f 6e 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 76 65 72 73 69 6f =>.$versions).{.foreach.($versio
98520 6e 73 20 61 73 20 24 76 65 72 73 69 6f 6e 20 3d 3e 20 24 6d 65 74 61 64 61 74 61 29 20 7b 0a 24 ns.as.$version.=>.$metadata).{.$
98540 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 6d 65 74 61 64 61 74 61 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 packages[].=.$metadata;.}.}.}..i
98560 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 69 6e 63 6c 75 64 65 73 27 5d 29 29 20 7b 0a 66 f.(isset($data['includes'])).{.f
98580 6f 72 65 61 63 68 20 28 24 64 61 74 61 5b 27 69 6e 63 6c 75 64 65 73 27 5d 20 61 73 20 24 69 6e oreach.($data['includes'].as.$in
985a0 63 6c 75 64 65 20 3d 3e 20 24 6d 65 74 61 64 61 74 61 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d clude.=>.$metadata).{.if.($this-
985c0 3e 63 61 63 68 65 2d 3e 73 68 61 31 28 24 69 6e 63 6c 75 64 65 29 20 3d 3d 3d 20 24 6d 65 74 61 >cache->sha1($include).===.$meta
985e0 64 61 74 61 5b 27 73 68 61 31 27 5d 29 20 7b 0a 24 69 6e 63 6c 75 64 65 64 44 61 74 61 20 3d 20 data['sha1']).{.$includedData.=.
98600 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 json_decode($this->cache->read($
98620 69 6e 63 6c 75 64 65 29 2c 20 74 72 75 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6e 63 6c 75 include),.true);.}.else.{.$inclu
98640 64 65 64 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 66 65 74 63 68 46 69 6c 65 28 24 69 6e 63 6c dedData.=.$this->fetchFile($incl
98660 75 64 65 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 ude);.}.$packages.=.array_merge(
98680 24 70 61 63 6b 61 67 65 73 2c 20 24 74 68 69 73 2d 3e 6c 6f 61 64 49 6e 63 6c 75 64 65 73 28 24 $packages,.$this->loadIncludes($
986a0 69 6e 63 6c 75 64 65 64 44 61 74 61 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 includedData));.}.}..return.$pac
986c0 6b 61 67 65 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 kages;.}..protected.function.cre
986e0 61 74 65 50 61 63 6b 61 67 65 28 61 72 72 61 79 20 24 64 61 74 61 2c 20 24 63 6c 61 73 73 20 3d atePackage(array.$data,.$class.=
98700 20 27 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 .'Composer\Package\CompletePacka
98720 67 65 27 29 0a 7b 0a 74 72 79 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 64 61 74 61 5b 27 6e ge').{.try.{.if.(!isset($data['n
98740 6f 74 69 66 69 63 61 74 69 6f 6e 2d 75 72 6c 27 5d 29 29 20 7b 0a 24 64 61 74 61 5b 27 6e 6f 74 otification-url'])).{.$data['not
98760 69 66 69 63 61 74 69 6f 6e 2d 75 72 6c 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 74 69 66 79 55 ification-url'].=.$this->notifyU
98780 72 6c 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d rl;.}..$package.=.$this->loader-
987a0 3e 6c 6f 61 64 28 24 64 61 74 61 2c 20 24 63 6c 61 73 73 29 3b 0a 69 66 20 28 69 73 73 65 74 28 >load($data,.$class);.if.(isset(
987c0 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 4d 69 72 72 6f 72 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 $this->sourceMirrors[$package->g
987e0 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 etSourceType()])).{.$package->se
98800 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 4d 69 72 72 tSourceMirrors($this->sourceMirr
98820 6f 72 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 5d 29 3b ors[$package->getSourceType()]);
98840 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 4d 69 72 72 6f 72 73 28 24 74 68 69 .}.$package->setDistMirrors($thi
98860 73 2d 3e 64 69 73 74 4d 69 72 72 6f 72 73 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 75 72 s->distMirrors);.$this->configur
98880 65 50 61 63 6b 61 67 65 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 24 70 61 63 6b 61 67 ePackageTransportOptions($packag
988a0 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 20 63 61 74 63 68 20 28 5c e);..return.$package;.}.catch.(\
988c0 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 Exception.$e).{.throw.new.\Runti
988e0 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 6c 6f 61 64 20 70 61 63 6b meException('Could.not.load.pack
98900 61 67 65 20 27 2e 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 29 20 3f 20 24 64 age.'.(isset($data['name']).?.$d
98920 61 74 61 5b 27 6e 61 6d 65 27 5d 20 3a 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 61 74 61 29 ata['name'].:.json_encode($data)
98940 29 2e 27 20 69 6e 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 3a 20 5b 27 2e 67 65 74 5f 63 6c ).'.in.'.$this->url.':.['.get_cl
98960 61 73 73 28 24 65 29 2e 27 5d 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 30 ass($e).'].'.$e->getMessage(),.0
98980 2c 20 24 65 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 ,.$e);.}.}..protected.function.f
989a0 65 74 63 68 46 69 6c 65 28 24 66 69 6c 65 6e 61 6d 65 2c 20 24 63 61 63 68 65 4b 65 79 20 3d 20 etchFile($filename,.$cacheKey.=.
989c0 6e 75 6c 6c 2c 20 24 73 68 61 32 35 36 20 3d 20 6e 75 6c 6c 2c 20 24 73 74 6f 72 65 4c 61 73 74 null,.$sha256.=.null,.$storeLast
989e0 4d 6f 64 69 66 69 65 64 54 69 6d 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c ModifiedTime.=.false).{.if.(null
98a00 20 3d 3d 3d 20 24 63 61 63 68 65 4b 65 79 29 20 7b 0a 24 63 61 63 68 65 4b 65 79 20 3d 20 24 66 .===.$cacheKey).{.$cacheKey.=.$f
98a20 69 6c 65 6e 61 6d 65 3b 0a 24 66 69 6c 65 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 62 61 73 65 ilename;.$filename.=.$this->base
98a40 55 72 6c 2e 27 2f 27 2e 24 66 69 6c 65 6e 61 6d 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 28 24 70 6f Url.'/'.$filename;.}....if.(($po
98a60 73 20 3d 20 73 74 72 70 6f 73 28 24 66 69 6c 65 6e 61 6d 65 2c 20 27 24 27 29 29 20 26 26 20 70 s.=.strpos($filename,.'$')).&&.p
98a80 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 2e 2a 7d 69 27 2c 20 24 66 69 reg_match('{^https?://.*}i',.$fi
98aa0 6c 65 6e 61 6d 65 29 29 20 7b 0a 24 66 69 6c 65 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 66 lename)).{.$filename.=.substr($f
98ac0 69 6c 65 6e 61 6d 65 2c 20 30 2c 20 24 70 6f 73 29 20 2e 20 27 25 32 34 27 20 2e 20 73 75 62 73 ilename,.0,.$pos)...'%24'...subs
98ae0 74 72 28 24 66 69 6c 65 6e 61 6d 65 2c 20 24 70 6f 73 20 2b 20 31 29 3b 0a 7d 0a 0a 24 72 65 74 tr($filename,.$pos.+.1);.}..$ret
98b00 72 69 65 73 20 3d 20 33 3b 0a 77 68 69 6c 65 20 28 24 72 65 74 72 69 65 73 2d 2d 29 20 7b 0a 74 ries.=.3;.while.($retries--).{.t
98b20 72 79 20 7b 0a 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 20 3d 20 6e 65 77 ry.{.$preFileDownloadEvent.=.new
98b40 20 50 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 28 50 6c 75 67 69 6e 45 76 65 6e .PreFileDownloadEvent(PluginEven
98b60 74 73 3a 3a 50 52 45 5f 46 49 4c 45 5f 44 4f 57 4e 4c 4f 41 44 2c 20 24 74 68 69 73 2d 3e 72 66 ts::PRE_FILE_DOWNLOAD,.$this->rf
98b80 73 2c 20 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 s,.$filename);.if.($this->eventD
98ba0 69 73 70 61 74 63 68 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 ispatcher).{.$this->eventDispatc
98bc0 68 65 72 2d 3e 64 69 73 70 61 74 63 68 28 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 her->dispatch($preFileDownloadEv
98be0 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 ent->getName(),.$preFileDownload
98c00 45 76 65 6e 74 29 3b 0a 7d 0a 0a 24 68 6f 73 74 6e 61 6d 65 20 3d 20 70 61 72 73 65 5f 75 72 6c Event);.}..$hostname.=.parse_url
98c20 28 24 66 69 6c 65 6e 61 6d 65 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 20 3f 3a 20 24 66 69 ($filename,.PHP_URL_HOST).?:.$fi
98c40 6c 65 6e 61 6d 65 3b 0a 24 72 66 73 20 3d 20 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 lename;.$rfs.=.$preFileDownloadE
98c60 76 65 6e 74 2d 3e 67 65 74 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 6a 73 vent->getRemoteFilesystem();.$js
98c80 6f 6e 20 3d 20 24 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 68 6f 73 74 6e 61 6d 65 on.=.$rfs->getContents($hostname
98ca0 2c 20 24 66 69 6c 65 6e 61 6d 65 2c 20 66 61 6c 73 65 29 3b 0a 69 66 20 28 24 73 68 61 32 35 36 ,.$filename,.false);.if.($sha256
98cc0 20 26 26 20 24 73 68 61 32 35 36 20 21 3d 3d 20 68 61 73 68 28 27 73 68 61 32 35 36 27 2c 20 24 .&&.$sha256.!==.hash('sha256',.$
98ce0 6a 73 6f 6e 29 29 20 7b 0a 69 66 20 28 24 72 65 74 72 69 65 73 29 20 7b 0a 75 73 6c 65 65 70 28 json)).{.if.($retries).{.usleep(
98d00 31 30 30 30 30 30 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 74 68 72 6f 77 20 6e 100000);..continue;.}....throw.n
98d20 65 77 20 52 65 70 6f 73 69 74 6f 72 79 53 65 63 75 72 69 74 79 45 78 63 65 70 74 69 6f 6e 28 27 ew.RepositorySecurityException('
98d40 54 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 27 2e 24 66 69 6c 65 6e 61 6d 65 2e 27 20 64 6f The.contents.of.'.$filename.'.do
98d60 20 6e 6f 74 20 6d 61 74 63 68 20 69 74 73 20 73 69 67 6e 61 74 75 72 65 2e 20 54 68 69 73 20 73 .not.match.its.signature..This.s
98d80 68 6f 75 6c 64 20 69 6e 64 69 63 61 74 65 20 61 20 6d 61 6e 2d 69 6e 2d 74 68 65 2d 6d 69 64 64 hould.indicate.a.man-in-the-midd
98da0 6c 65 20 61 74 74 61 63 6b 2e 20 54 72 79 20 72 75 6e 6e 69 6e 67 20 63 6f 6d 70 6f 73 65 72 20 le.attack..Try.running.composer.
98dc0 61 67 61 69 6e 20 61 6e 64 20 72 65 70 6f 72 74 20 74 68 69 73 20 69 66 20 79 6f 75 20 74 68 69 again.and.report.this.if.you.thi
98de0 6e 6b 20 69 74 20 69 73 20 61 20 6d 69 73 74 61 6b 65 2e 27 29 3b 0a 7d 0a 0a 24 64 61 74 61 20 nk.it.is.a.mistake.');.}..$data.
98e00 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e 2c 20 24 66 69 =.JsonFile::parseJson($json,.$fi
98e20 6c 65 6e 61 6d 65 29 3b 0a 69 66 20 28 24 63 61 63 68 65 4b 65 79 29 20 7b 0a 69 66 20 28 24 73 lename);.if.($cacheKey).{.if.($s
98e40 74 6f 72 65 4c 61 73 74 4d 6f 64 69 66 69 65 64 54 69 6d 65 29 20 7b 0a 24 6c 61 73 74 4d 6f 64 toreLastModifiedTime).{.$lastMod
98e60 69 66 69 65 64 44 61 74 65 20 3d 20 24 72 66 73 2d 3e 66 69 6e 64 48 65 61 64 65 72 56 61 6c 75 ifiedDate.=.$rfs->findHeaderValu
98e80 65 28 24 72 66 73 2d 3e 67 65 74 4c 61 73 74 48 65 61 64 65 72 73 28 29 2c 20 27 6c 61 73 74 2d e($rfs->getLastHeaders(),.'last-
98ea0 6d 6f 64 69 66 69 65 64 27 29 3b 0a 69 66 20 28 24 6c 61 73 74 4d 6f 64 69 66 69 65 64 44 61 74 modified');.if.($lastModifiedDat
98ec0 65 29 20 7b 0a 24 64 61 74 61 5b 27 6c 61 73 74 2d 6d 6f 64 69 66 69 65 64 27 5d 20 3d 20 24 6c e).{.$data['last-modified'].=.$l
98ee0 61 73 74 4d 6f 64 69 66 69 65 64 44 61 74 65 3b 0a 24 6a 73 6f 6e 20 3d 20 6a 73 6f 6e 5f 65 6e astModifiedDate;.$json.=.json_en
98f00 63 6f 64 65 28 24 64 61 74 61 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 77 code($data);.}.}.$this->cache->w
98f20 72 69 74 65 28 24 63 61 63 68 65 4b 65 79 2c 20 24 6a 73 6f 6e 29 3b 0a 7d 0a 0a 62 72 65 61 6b rite($cacheKey,.$json);.}..break
98f40 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 ;.}.catch.(\Exception.$e).{.if.(
98f60 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e $e.instanceof.TransportException
98f80 20 26 26 20 24 65 2d 3e 67 65 74 53 74 61 74 75 73 43 6f 64 65 28 29 20 3d 3d 3d 20 34 30 34 29 .&&.$e->getStatusCode().===.404)
98fa0 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 69 66 20 28 24 72 65 74 72 69 65 73 29 20 7b 0a .{.throw.$e;.}..if.($retries).{.
98fc0 75 73 6c 65 65 70 28 31 30 30 30 30 30 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 usleep(100000);.continue;.}..if.
98fe0 28 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 65 70 6f 73 69 74 6f 72 79 53 65 63 75 72 69 74 ($e.instanceof.RepositorySecurit
99000 79 45 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 69 66 20 28 24 yException).{.throw.$e;.}..if.($
99020 63 61 63 68 65 4b 65 79 20 26 26 20 28 24 63 6f 6e 74 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e cacheKey.&&.($contents.=.$this->
99040 63 61 63 68 65 2d 3e 72 65 61 64 28 24 63 61 63 68 65 4b 65 79 29 29 29 20 7b 0a 69 66 20 28 21 cache->read($cacheKey))).{.if.(!
99060 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f $this->degradedMode).{.$this->io
99080 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 27 2e 24 65 2d 3e 67 65 74 ->writeError('<warning>'.$e->get
990a0 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 24 74 68 69 73 2d 3e Message().'</warning>');.$this->
990c0 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 27 2e 24 74 68 69 73 io->writeError('<warning>'.$this
990e0 2d 3e 75 72 6c 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 75 6c 6c 79 20 6c 6f 61 64 65 ->url.'.could.not.be.fully.loade
99100 64 2c 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 77 61 73 20 6c 6f 61 64 65 d,.package.information.was.loade
99120 64 20 66 72 6f 6d 20 74 68 65 20 6c 6f 63 61 6c 20 63 61 63 68 65 20 61 6e 64 20 6d 61 79 20 62 d.from.the.local.cache.and.may.b
99140 65 20 6f 75 74 20 6f 66 20 64 61 74 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 24 74 68 e.out.of.date</warning>');.}.$th
99160 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 20 3d 20 74 72 75 65 3b 0a 24 64 61 74 61 20 3d is->degradedMode.=.true;.$data.=
99180 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f 6e 74 65 6e 74 73 2c 20 .JsonFile::parseJson($contents,.
991a0 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 67 65 74 52 6f 6f 74 28 29 2e 24 63 61 63 68 65 4b 65 $this->cache->getRoot().$cacheKe
991c0 79 29 3b 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 0a 72 65 y);..break;.}..throw.$e;.}.}..re
991e0 74 75 72 6e 20 24 64 61 74 61 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f turn.$data;.}..protected.functio
99200 6e 20 66 65 74 63 68 46 69 6c 65 49 66 4c 61 73 74 4d 6f 64 69 66 69 65 64 28 24 66 69 6c 65 6e n.fetchFileIfLastModified($filen
99220 61 6d 65 2c 20 24 63 61 63 68 65 4b 65 79 2c 20 24 6c 61 73 74 4d 6f 64 69 66 69 65 64 54 69 6d ame,.$cacheKey,.$lastModifiedTim
99240 65 29 0a 7b 0a 24 72 65 74 72 69 65 73 20 3d 20 33 3b 0a 77 68 69 6c 65 20 28 24 72 65 74 72 69 e).{.$retries.=.3;.while.($retri
99260 65 73 2d 2d 29 20 7b 0a 74 72 79 20 7b 0a 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 es--).{.try.{.$preFileDownloadEv
99280 65 6e 74 20 3d 20 6e 65 77 20 50 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 28 50 ent.=.new.PreFileDownloadEvent(P
992a0 6c 75 67 69 6e 45 76 65 6e 74 73 3a 3a 50 52 45 5f 46 49 4c 45 5f 44 4f 57 4e 4c 4f 41 44 2c 20 luginEvents::PRE_FILE_DOWNLOAD,.
992c0 24 74 68 69 73 2d 3e 72 66 73 2c 20 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 69 66 20 28 24 74 68 69 $this->rfs,.$filename);.if.($thi
992e0 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 65 76 65 s->eventDispatcher).{.$this->eve
99300 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 28 24 70 72 65 46 69 6c 65 44 ntDispatcher->dispatch($preFileD
99320 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 70 72 65 46 69 6c ownloadEvent->getName(),.$preFil
99340 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 29 3b 0a 7d 0a 0a 24 68 6f 73 74 6e 61 6d 65 20 3d 20 eDownloadEvent);.}..$hostname.=.
99360 70 61 72 73 65 5f 75 72 6c 28 24 66 69 6c 65 6e 61 6d 65 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 parse_url($filename,.PHP_URL_HOS
99380 54 29 20 3f 3a 20 24 66 69 6c 65 6e 61 6d 65 3b 0a 24 72 66 73 20 3d 20 24 70 72 65 46 69 6c 65 T).?:.$filename;.$rfs.=.$preFile
993a0 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 2d 3e 67 65 74 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 DownloadEvent->getRemoteFilesyst
993c0 65 6d 28 29 3b 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 27 68 74 74 70 27 20 3d 3e em();.$options.=.array('http'.=>
993e0 20 61 72 72 61 79 28 27 68 65 61 64 65 72 27 20 3d 3e 20 61 72 72 61 79 28 27 49 66 2d 4d 6f 64 .array('header'.=>.array('If-Mod
99400 69 66 69 65 64 2d 53 69 6e 63 65 3a 20 27 2e 24 6c 61 73 74 4d 6f 64 69 66 69 65 64 54 69 6d 65 ified-Since:.'.$lastModifiedTime
99420 29 29 29 3b 0a 24 6a 73 6f 6e 20 3d 20 24 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 )));.$json.=.$rfs->getContents($
99440 68 6f 73 74 6e 61 6d 65 2c 20 24 66 69 6c 65 6e 61 6d 65 2c 20 66 61 6c 73 65 2c 20 24 6f 70 74 hostname,.$filename,.false,.$opt
99460 69 6f 6e 73 29 3b 0a 69 66 20 28 24 6a 73 6f 6e 20 3d 3d 3d 20 27 27 20 26 26 20 24 72 66 73 2d ions);.if.($json.===.''.&&.$rfs-
99480 3e 66 69 6e 64 53 74 61 74 75 73 43 6f 64 65 28 24 72 66 73 2d 3e 67 65 74 4c 61 73 74 48 65 61 >findStatusCode($rfs->getLastHea
994a0 64 65 72 73 28 29 29 20 3d 3d 3d 20 33 30 34 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a ders()).===.304).{.return.true;.
994c0 7d 0a 0a 24 64 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 }..$data.=.JsonFile::parseJson($
994e0 6a 73 6f 6e 2c 20 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 24 6c 61 73 74 4d 6f 64 69 66 69 65 64 44 json,.$filename);.$lastModifiedD
99500 61 74 65 20 3d 20 24 72 66 73 2d 3e 66 69 6e 64 48 65 61 64 65 72 56 61 6c 75 65 28 24 72 66 73 ate.=.$rfs->findHeaderValue($rfs
99520 2d 3e 67 65 74 4c 61 73 74 48 65 61 64 65 72 73 28 29 2c 20 27 6c 61 73 74 2d 6d 6f 64 69 66 69 ->getLastHeaders(),.'last-modifi
99540 65 64 27 29 3b 0a 69 66 20 28 24 6c 61 73 74 4d 6f 64 69 66 69 65 64 44 61 74 65 29 20 7b 0a 24 ed');.if.($lastModifiedDate).{.$
99560 64 61 74 61 5b 27 6c 61 73 74 2d 6d 6f 64 69 66 69 65 64 27 5d 20 3d 20 24 6c 61 73 74 4d 6f 64 data['last-modified'].=.$lastMod
99580 69 66 69 65 64 44 61 74 65 3b 0a 24 6a 73 6f 6e 20 3d 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 ifiedDate;.$json.=.json_encode($
995a0 64 61 74 61 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 77 72 69 74 65 28 24 63 61 data);.}.$this->cache->write($ca
995c0 63 68 65 4b 65 79 2c 20 24 6a 73 6f 6e 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 61 74 61 3b 0a 7d cheKey,.$json);..return.$data;.}
995e0 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 65 20 .catch.(\Exception.$e).{.if.($e.
99600 69 6e 73 74 61 6e 63 65 6f 66 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 26 26 instanceof.TransportException.&&
99620 20 24 65 2d 3e 67 65 74 53 74 61 74 75 73 43 6f 64 65 28 29 20 3d 3d 3d 20 34 30 34 29 20 7b 0a .$e->getStatusCode().===.404).{.
99640 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 69 66 20 28 24 72 65 74 72 69 65 73 29 20 7b 0a 75 73 6c throw.$e;.}..if.($retries).{.usl
99660 65 65 70 28 31 30 30 30 30 30 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 eep(100000);.continue;.}..if.(!$
99680 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d this->degradedMode).{.$this->io-
996a0 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 27 2e 24 65 2d 3e 67 65 74 4d >writeError('<warning>'.$e->getM
996c0 65 73 73 61 67 65 28 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 24 74 68 69 73 2d 3e 69 essage().'</warning>');.$this->i
996e0 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 27 2e 24 74 68 69 73 2d o->writeError('<warning>'.$this-
99700 3e 75 72 6c 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 75 6c 6c 79 20 6c 6f 61 64 65 64 >url.'.could.not.be.fully.loaded
99720 2c 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 77 61 73 20 6c 6f 61 64 65 64 ,.package.information.was.loaded
99740 20 66 72 6f 6d 20 74 68 65 20 6c 6f 63 61 6c 20 63 61 63 68 65 20 61 6e 64 20 6d 61 79 20 62 65 .from.the.local.cache.and.may.be
99760 20 6f 75 74 20 6f 66 20 64 61 74 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 24 74 68 69 .out.of.date</warning>');.}.$thi
99780 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 20 3d 20 74 72 75 65 3b 0a 0a 72 65 74 75 72 6e 20 s->degradedMode.=.true;..return.
997a0 74 72 75 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e true;.}.}.}.}.<?php............n
997c0 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 amespace.Composer\Repository;..u
997e0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 se.Composer\Package\PackageInter
99800 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 face;.......class.CompositeRepos
99820 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 42 61 73 65 52 65 70 6f 73 69 74 6f 72 79 0a 7b 0a 0a itory.extends.BaseRepository.{..
99840 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 0a 0a 0a 0a 0a 70 ...private.$repositories;......p
99860 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 ublic.function.__construct(array
99880 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 .$repositories).{.$this->reposit
998a0 6f 72 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 ories.=.array();.foreach.($repos
998c0 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 65 itories.as.$repo).{.$this->addRe
998e0 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 pository($repo);.}.}.......publi
99900 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 0a 7b 0a 72 c.function.getRepositories().{.r
99920 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a eturn.$this->repositories;.}....
99940 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 63 6b 61 67 65 28 50 61 63 6b .public.function.hasPackage(Pack
99960 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 66 6f 72 65 61 63 68 ageInterface.$package).{.foreach
99980 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 .($this->repositories.as.$reposi
999a0 74 6f 72 79 29 20 7b 0a 0a 69 66 20 28 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 68 61 73 50 61 63 tory).{..if.($repository->hasPac
999c0 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d kage($package)).{.return.true;.}
999e0 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .}..return.false;.}.....public.f
99a00 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 unction.findPackage($name,.$cons
99a20 74 72 61 69 6e 74 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 traint).{.foreach.($this->reposi
99a40 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 70 61 63 6b 61 tories.as.$repository).{..$packa
99a60 67 65 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e ge.=.$repository->findPackage($n
99a80 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 ame,.$constraint);.if.(null.!==.
99aa0 24 70 61 63 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d $package).{.return.$package;.}.}
99ac0 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ..return.null;.}.....public.func
99ae0 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 tion.findPackages($name,.$constr
99b00 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 aint.=.null).{.$packages.=.array
99b20 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 ();.foreach.($this->repositories
99b40 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 .as.$repository).{..$packages[].
99b60 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d =.$repository->findPackages($nam
99b80 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b e,.$constraint);.}..return.$pack
99ba0 61 67 65 73 20 3f 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 72 72 ages.?.call_user_func_array('arr
99bc0 61 79 5f 6d 65 72 67 65 27 2c 20 24 70 61 63 6b 61 67 65 73 29 20 3a 20 61 72 72 61 79 28 29 3b ay_merge',.$packages).:.array();
99be0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 28 24 71 .}.....public.function.search($q
99c00 75 65 72 79 2c 20 24 6d 6f 64 65 20 3d 20 30 29 0a 7b 0a 24 6d 61 74 63 68 65 73 20 3d 20 61 72 uery,.$mode.=.0).{.$matches.=.ar
99c20 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 ray();.foreach.($this->repositor
99c40 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 6d 61 74 63 68 65 73 5b ies.as.$repository).{..$matches[
99c60 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 73 65 61 72 63 68 28 24 71 75 65 72 79 2c 20 ].=.$repository->search($query,.
99c80 24 6d 6f 64 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 20 3f 20 63 61 6c $mode);.}..return.$matches.?.cal
99ca0 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 72 72 61 79 5f 6d 65 72 67 65 27 2c l_user_func_array('array_merge',
99cc0 20 24 6d 61 74 63 68 65 73 29 20 3a 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c .$matches).:.array();.}.....publ
99ce0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 73 28 29 0a 7b 0a 24 70 61 63 ic.function.getPackages().{.$pac
99d00 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d kages.=.array();.foreach.($this-
99d20 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a >repositories.as.$repository).{.
99d40 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 67 65 74 50 .$packages[].=.$repository->getP
99d60 61 63 6b 61 67 65 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 20 3f ackages();.}..return.$packages.?
99d80 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 72 72 61 79 5f 6d 65 72 .call_user_func_array('array_mer
99da0 67 65 27 2c 20 24 70 61 63 6b 61 67 65 73 29 20 3a 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a ge',.$packages).:.array();.}....
99dc0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 50 .public.function.removePackage(P
99de0 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 66 6f 72 65 ackageInterface.$package).{.fore
99e00 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 ach.($this->repositories.as.$rep
99e20 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 72 65 6d 6f 76 65 50 ository).{..$repository->removeP
99e40 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ackage($package);.}.}.....public
99e60 20 66 75 6e 63 74 69 6f 6e 20 63 6f 75 6e 74 28 29 0a 7b 0a 24 74 6f 74 61 6c 20 3d 20 30 3b 0a .function.count().{.$total.=.0;.
99e80 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 foreach.($this->repositories.as.
99ea0 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 74 6f 74 61 6c 20 2b 3d 20 24 72 65 70 6f 73 $repository).{..$total.+=.$repos
99ec0 69 74 6f 72 79 2d 3e 63 6f 75 6e 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 74 61 6c itory->count();.}..return.$total
99ee0 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 65 70 6f ;.}......public.function.addRepo
99f00 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f sitory(RepositoryInterface.$repo
99f20 73 69 74 6f 72 79 29 0a 7b 0a 69 66 20 28 24 72 65 70 6f 73 69 74 6f 72 79 20 69 6e 73 74 61 6e sitory).{.if.($repository.instan
99f40 63 65 6f 66 20 73 65 6c 66 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 69 74 6f 72 ceof.self).{.foreach.($repositor
99f60 79 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 20 61 73 20 24 72 65 70 6f 29 20 7b y->getRepositories().as.$repo).{
99f80 0a 24 74 68 69 73 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 29 3b 0a 7d 0a .$this->addRepository($repo);.}.
99fa0 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 5d 20 3d }.else.{.$this->repositories[].=
99fc0 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a .$repository;.}.}.}.<?php.......
99fe0 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f .....namespace.Composer\Reposito
9a000 72 79 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6e 66 69 67 75 72 61 62 6c 65 ry;.......interface.Configurable
9a020 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e RepositoryInterface.{.public.fun
9a040 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a ction.getRepoConfig();.}.<?php..
9a060 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 ..........namespace.Composer\Rep
9a080 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e ository;..use.Composer\Json\Json
9a0a0 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 File;.use.Composer\Package\Loade
9a0c0 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b r\ArrayLoader;.use.Composer\Pack
9a0e0 61 67 65 5c 44 75 6d 70 65 72 5c 41 72 72 61 79 44 75 6d 70 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 age\Dumper\ArrayDumper;........c
9a100 6c 61 73 73 20 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 lass.FilesystemRepository.extend
9a120 73 20 57 72 69 74 61 62 6c 65 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 0a 7b 0a 70 72 69 76 s.WritableArrayRepository.{.priv
9a140 61 74 65 20 24 66 69 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ate.$file;.......public.function
9a160 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 4a 73 6f 6e 46 69 6c 65 20 24 72 65 70 6f 73 69 74 6f 72 .__construct(JsonFile.$repositor
9a180 79 46 69 6c 65 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 3b 0a yFile).{.parent::__construct();.
9a1a0 24 74 68 69 73 2d 3e 66 69 6c 65 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 46 69 6c 65 3b 0a 7d $this->file.=.$repositoryFile;.}
9a1c0 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 .....protected.function.initiali
9a1e0 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 69 66 ze().{.parent::initialize();..if
9a200 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 72 65 74 75 .(!$this->file->exists()).{.retu
9a220 72 6e 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e rn;.}..try.{.$packages.=.$this->
9a240 66 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 70 61 file->read();..if.(!is_array($pa
9a260 63 6b 61 67 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 ckages)).{.throw.new.\Unexpected
9a280 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 70 61 72 73 65 20 ValueException('Could.not.parse.
9a2a0 70 61 63 6b 61 67 65 20 6c 69 73 74 20 66 72 6f 6d 20 74 68 65 20 72 65 70 6f 73 69 74 6f 72 79 package.list.from.the.repository
9a2c0 27 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a ');.}.}.catch.(\Exception.$e).{.
9a2e0 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 52 65 70 6f 73 69 74 6f 72 79 45 78 63 65 70 throw.new.InvalidRepositoryExcep
9a300 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 72 65 70 6f 73 69 74 6f 72 79 20 64 61 74 61 20 69 6e tion('Invalid.repository.data.in
9a320 20 27 2e 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 2e 27 2c 20 70 61 63 .'.$this->file->getPath().',.pac
9a340 6b 61 67 65 73 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 6c 6f 61 64 65 64 3a 20 5b 27 2e 67 65 kages.could.not.be.loaded:.['.ge
9a360 74 5f 63 6c 61 73 73 28 24 65 29 2e 27 5d 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 t_class($e).'].'.$e->getMessage(
9a380 29 29 3b 0a 7d 0a 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 ));.}..$loader.=.new.ArrayLoader
9a3a0 28 6e 75 6c 6c 2c 20 74 72 75 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 (null,.true);.foreach.($packages
9a3c0 20 61 73 20 24 70 61 63 6b 61 67 65 44 61 74 61 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 .as.$packageData).{.$package.=.$
9a3e0 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 44 61 74 61 29 3b 0a 24 74 68 69 loader->load($packageData);.$thi
9a400 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 70 75 s->addPackage($package);.}.}..pu
9a420 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6c 6f 61 64 28 29 0a 7b 0a 24 74 68 69 73 2d 3e blic.function.reload().{.$this->
9a440 70 61 63 6b 61 67 65 73 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 packages.=.null;.$this->initiali
9a460 7a 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 ze();.}.....public.function.writ
9a480 65 28 29 0a 7b 0a 24 64 61 74 61 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 64 75 6d 70 65 72 20 3d e().{.$data.=.array();.$dumper.=
9a4a0 20 6e 65 77 20 41 72 72 61 79 44 75 6d 70 65 72 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 .new.ArrayDumper();..foreach.($t
9a4c0 68 69 73 2d 3e 67 65 74 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 his->getCanonicalPackages().as.$
9a4e0 70 61 63 6b 61 67 65 29 20 7b 0a 24 64 61 74 61 5b 5d 20 3d 20 24 64 75 6d 70 65 72 2d 3e 64 75 package).{.$data[].=.$dumper->du
9a500 6d 70 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 77 72 mp($package);.}..$this->file->wr
9a520 69 74 65 28 24 64 61 74 61 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ite($data);.}.}.<?php...........
9a540 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a .namespace.Composer\Repository;.
9a560 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 65 64 41 72 72 61 79 52 65 70 6f ........class.InstalledArrayRepo
9a580 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 57 72 69 74 61 62 6c 65 41 72 72 61 79 52 65 70 6f sitory.extends.WritableArrayRepo
9a5a0 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 sitory.implements.InstalledRepos
9a5c0 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a itoryInterface.{.}.<?php........
9a5e0 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 ....namespace.Composer\Repositor
9a600 79 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 65 64 46 69 6c 65 73 79 73 74 y;.......class.InstalledFilesyst
9a620 65 6d 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 46 69 6c 65 73 79 73 74 65 6d 52 emRepository.extends.FilesystemR
9a640 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 73 74 61 6c 6c 65 64 52 65 epository.implements.InstalledRe
9a660 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a positoryInterface.{.}.<?php.....
9a680 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 .......namespace.Composer\Reposi
9a6a0 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 6e 73 74 61 6c 6c 65 tory;.........interface.Installe
9a6c0 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 57 72 69 dRepositoryInterface.extends.Wri
9a6e0 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 tableRepositoryInterface.{.}.<?p
9a700 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
9a720 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 76 61 6c 69 64 \Repository;.......class.Invalid
9a740 52 65 70 6f 73 69 74 6f 72 79 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 45 78 63 RepositoryException.extends.\Exc
9a760 65 70 74 69 6f 6e 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 eption.{.}.<?php............name
9a780 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 space.Composer\Repository;..use.
9a7a0 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 Composer\Package\Loader\ArrayLoa
9a7c0 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 der;.use.Composer\Package\Loader
9a7e0 5c 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c \ValidatingArrayLoader;.......cl
9a800 61 73 73 20 50 61 63 6b 61 67 65 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 ass.PackageRepository.extends.Ar
9a820 72 61 79 52 65 70 6f 73 69 74 6f 72 79 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b rayRepository.{.private.$config;
9a840 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 .......public.function.__constru
9a860 63 74 28 61 72 72 61 79 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f ct(array.$config).{.parent::__co
9a880 6e 73 74 72 75 63 74 28 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 nstruct();.$this->config.=.$conf
9a8a0 69 67 5b 27 70 61 63 6b 61 67 65 27 5d 3b 0a 0a 0a 20 69 66 20 28 21 69 73 5f 6e 75 6d 65 72 69 ig['package'];....if.(!is_numeri
9a8c0 63 28 6b 65 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e c(key($this->config))).{.$this->
9a8e0 63 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 7d config.=.array($this->config);.}
9a900 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 .}.....protected.function.initia
9a920 6c 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a lize().{.parent::initialize();..
9a940 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 $loader.=.new.ValidatingArrayLoa
9a960 64 65 72 28 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 6e 75 6c 6c 2c 20 74 72 75 65 29 2c der(new.ArrayLoader(null,.true),
9a980 20 66 61 6c 73 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 .false);.foreach.($this->config.
9a9a0 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 74 72 79 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 as.$package).{.try.{.$package.=.
9a9c0 24 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 20 63 61 74 63 68 $loader->load($package);.}.catch
9a9e0 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 .(\Exception.$e).{.throw.new.Inv
9aa00 61 6c 69 64 52 65 70 6f 73 69 74 6f 72 79 45 78 63 65 70 74 69 6f 6e 28 27 41 20 72 65 70 6f 73 alidRepositoryException('A.repos
9aa20 69 74 6f 72 79 20 6f 66 20 74 79 70 65 20 22 70 61 63 6b 61 67 65 22 20 63 6f 6e 74 61 69 6e 73 itory.of.type."package".contains
9aa40 20 61 6e 20 69 6e 76 61 6c 69 64 20 70 61 63 6b 61 67 65 20 64 65 66 69 6e 69 74 69 6f 6e 3a 20 .an.invalid.package.definition:.
9aa60 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 22 5c 6e 5c 6e 49 6e 76 61 6c 69 64 20 '.$e->getMessage()."\n\nInvalid.
9aa80 70 61 63 6b 61 67 65 20 64 65 66 69 6e 69 74 69 6f 6e 3a 5c 6e 22 2e 6a 73 6f 6e 5f 65 6e 63 6f package.definition:\n".json_enco
9aaa0 64 65 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b de($package));.}..$this->addPack
9aac0 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a age($package);.}.}.}.<?php......
9aae0 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 ......namespace.Composer\Reposit
9ab00 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 ory;..use.Composer\Config;.use.C
9ab20 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 omposer\IO\IOInterface;.use.Comp
9ab40 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 oser\Json\JsonFile;.use.Composer
9ab60 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 \Package\Loader\ArrayLoader;.use
9ab80 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f .Composer\Package\Version\Versio
9aba0 6e 47 75 65 73 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 nGuesser;.use.Composer\Package\V
9abc0 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 ersion\VersionParser;.use.Compos
9abe0 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a er\Util\ProcessExecutor;........
9ac00 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 .............................cla
9ac20 73 73 20 50 61 74 68 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 ss.PathRepository.extends.ArrayR
9ac40 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 66 69 67 75 72 61 62 6c epository.implements.Configurabl
9ac60 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 eRepositoryInterface.{....privat
9ac80 65 20 24 6c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 65 72 73 69 6f 6e 47 e.$loader;.....private.$versionG
9aca0 75 65 73 73 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 75 72 6c 3b 0a 0a 0a 0a 0a 70 72 uesser;.....private.$url;.....pr
9acc0 69 76 61 74 65 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 ivate.$repoConfig;.....private.$
9ace0 70 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 3b 0a 0a process;.....private.$options;..
9ad00 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 .......public.function.__constru
9ad20 63 74 28 61 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 65 72 66 61 63 ct(array.$repoConfig,.IOInterfac
9ad40 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 21 69 73 e.$io,.Config.$config).{.if.(!is
9ad60 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 29 29 20 7b 0a 74 68 72 6f 77 set($repoConfig['url'])).{.throw
9ad80 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 .new.\RuntimeException('You.must
9ada0 20 73 70 65 63 69 66 79 20 74 68 65 20 60 75 72 6c 60 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e .specify.the.`url`.configuration
9adc0 20 66 6f 72 20 74 68 65 20 70 61 74 68 20 72 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 7d 0a 0a 24 .for.the.path.repository');.}..$
9ade0 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 6e this->loader.=.new.ArrayLoader(n
9ae00 75 6c 6c 2c 20 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 24 72 65 70 6f 43 6f ull,.true);.$this->url.=.$repoCo
9ae20 6e 66 69 67 5b 27 75 72 6c 27 5d 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 6e 65 nfig['url'];.$this->process.=.ne
9ae40 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 76 w.ProcessExecutor($io);.$this->v
9ae60 65 72 73 69 6f 6e 47 75 65 73 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 47 75 65 73 73 ersionGuesser.=.new.VersionGuess
9ae80 65 72 28 24 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2c 20 6e 65 77 20 er($config,.$this->process,.new.
9aea0 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 29 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e VersionParser());.$this->repoCon
9aec0 66 69 67 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e fig.=.$repoConfig;.$this->option
9aee0 73 20 3d 20 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 6f 70 74 69 6f 6e 73 27 5d s.=.isset($repoConfig['options']
9af00 29 20 3f 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 6f 70 74 69 6f 6e 73 27 5d 20 3a 20 61 72 72 ).?.$repoConfig['options'].:.arr
9af20 61 79 28 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 3b 0a 7d 0a ay();..parent::__construct();.}.
9af40 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 28 29 .public.function.getRepoConfig()
9af60 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a .{.return.$this->repoConfig;.}..
9af80 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 .....protected.function.initiali
9afa0 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 66 6f ze().{.parent::initialize();..fo
9afc0 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 4d 61 74 63 68 65 73 28 29 20 61 73 reach.($this->getUrlMatches().as
9afe0 20 24 75 72 6c 29 20 7b 0a 24 70 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 28 24 75 72 6c 29 20 .$url).{.$path.=.realpath($url).
9b000 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 3b 0a 24 63 6f 6d 70 6f 73 65 72 ..DIRECTORY_SEPARATOR;.$composer
9b020 46 69 6c 65 50 61 74 68 20 3d 20 24 70 61 74 68 2e 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 FilePath.=.$path.'composer.json'
9b040 3b 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c ;..if.(!file_exists($composerFil
9b060 65 50 61 74 68 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6a 73 6f 6e 20 3d 20 66 ePath)).{.continue;.}..$json.=.f
9b080 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 50 61 ile_get_contents($composerFilePa
9b0a0 74 68 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a th);.$package.=.JsonFile::parseJ
9b0c0 73 6f 6e 28 24 6a 73 6f 6e 2c 20 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 50 61 74 68 29 3b 0a 24 son($json,.$composerFilePath);.$
9b0e0 70 61 63 6b 61 67 65 5b 27 64 69 73 74 27 5d 20 3d 20 61 72 72 61 79 28 0a 27 74 79 70 65 27 20 package['dist'].=.array(.'type'.
9b100 3d 3e 20 27 70 61 74 68 27 2c 0a 27 75 72 6c 27 20 3d 3e 20 24 75 72 6c 2c 0a 27 72 65 66 65 72 =>.'path',.'url'.=>.$url,.'refer
9b120 65 6e 63 65 27 20 3d 3e 20 73 68 61 31 28 24 6a 73 6f 6e 20 2e 20 73 65 72 69 61 6c 69 7a 65 28 ence'.=>.sha1($json...serialize(
9b140 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 29 2c 0a 29 3b 0a 24 70 61 63 6b 61 67 65 5b 27 74 $this->options)),.);.$package['t
9b160 72 61 6e 73 70 6f 72 74 2d 6f 70 74 69 6f 6e 73 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6f 70 74 69 ransport-options'].=.$this->opti
9b180 6f 6e 73 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 5b 27 76 65 72 73 69 ons;..if.(!isset($package['versi
9b1a0 6f 6e 27 5d 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 76 on'])).{.$versionData.=.$this->v
9b1c0 65 72 73 69 6f 6e 47 75 65 73 73 65 72 2d 3e 67 75 65 73 73 56 65 72 73 69 6f 6e 28 24 70 61 63 ersionGuesser->guessVersion($pac
9b1e0 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 24 70 61 63 6b 61 67 65 5b 27 76 65 72 73 69 6f 6e 27 kage,.$path);.$package['version'
9b200 5d 20 3d 20 24 76 65 72 73 69 6f 6e 44 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3f 3a 20 27 ].=.$versionData['version'].?:.'
9b220 64 65 76 2d 6d 61 73 74 65 72 27 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 20 3d 20 27 27 3b 0a 69 66 dev-master';.}..$output.=.'';.if
9b240 20 28 69 73 5f 64 69 72 28 24 70 61 74 68 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 .(is_dir($path...DIRECTORY_SEPAR
9b260 41 54 4f 52 20 2e 20 27 2e 67 69 74 27 29 20 26 26 20 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 ATOR...'.git').&&.0.===.$this->p
9b280 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 6c 6f 67 20 2d 6e 31 20 2d 2d 70 rocess->execute('git.log.-n1.--p
9b2a0 72 65 74 74 79 3d 25 48 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 70 retty=%H',.$output,.$path)).{.$p
9b2c0 61 63 6b 61 67 65 5b 27 64 69 73 74 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 27 5d 20 3d 20 74 72 ackage['dist']['reference'].=.tr
9b2e0 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d im($output);.}.$package.=.$this-
9b300 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e >loader->load($package);.$this->
9b320 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a addPackage($package);.}.}.......
9b340 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 4d 61 74 63 68 65 73 28 29 private.function.getUrlMatches()
9b360 0a 7b 0a 0a 20 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 .{...return.array_map(function.(
9b380 24 76 61 6c 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 44 49 52 45 43 $val).{.return.str_replace(DIREC
9b3a0 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 2c 20 27 2f 27 2c 20 24 76 61 6c 29 3b 0a 7d 2c 20 67 TORY_SEPARATOR,.'/',.$val);.},.g
9b3c0 6c 6f 62 28 24 74 68 69 73 2d 3e 75 72 6c 2c 20 47 4c 4f 42 5f 4d 41 52 4b 20 7c 20 47 4c 4f 42 lob($this->url,.GLOB_MARK.|.GLOB
9b3e0 5f 4f 4e 4c 59 44 49 52 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a _ONLYDIR));.}.}.<?php...........
9b400 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 .namespace.Composer\Repository\P
9b420 65 61 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 ear;..use.Composer\Util\RemoteFi
9b440 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 lesystem;.........abstract.class
9b460 20 42 61 73 65 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 0a 7b 0a 0a 0a 0a 63 6f 6e 73 74 20 43 48 .BaseChannelReader.{....const.CH
9b480 41 4e 4e 45 4c 5f 4e 53 20 3d 20 27 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f ANNEL_NS.=.'http://pear.php.net/
9b4a0 63 68 61 6e 6e 65 6c 2d 31 2e 30 27 3b 0a 63 6f 6e 73 74 20 41 4c 4c 5f 43 41 54 45 47 4f 52 49 channel-1.0';.const.ALL_CATEGORI
9b4c0 45 53 5f 4e 53 20 3d 20 27 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 ES_NS.=.'http://pear.php.net/dtd
9b4e0 2f 72 65 73 74 2e 61 6c 6c 63 61 74 65 67 6f 72 69 65 73 27 3b 0a 63 6f 6e 73 74 20 43 41 54 45 /rest.allcategories';.const.CATE
9b500 47 4f 52 59 5f 50 41 43 4b 41 47 45 53 5f 49 4e 46 4f 5f 4e 53 20 3d 20 27 68 74 74 70 3a 2f 2f GORY_PACKAGES_INFO_NS.=.'http://
9b520 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 74 2e 63 61 74 65 67 6f 72 79 70 61 pear.php.net/dtd/rest.categorypa
9b540 63 6b 61 67 65 69 6e 66 6f 27 3b 0a 63 6f 6e 73 74 20 41 4c 4c 5f 50 41 43 4b 41 47 45 53 5f 4e ckageinfo';.const.ALL_PACKAGES_N
9b560 53 20 3d 20 27 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 S.=.'http://pear.php.net/dtd/res
9b580 74 2e 61 6c 6c 70 61 63 6b 61 67 65 73 27 3b 0a 63 6f 6e 73 74 20 41 4c 4c 5f 52 45 4c 45 41 53 t.allpackages';.const.ALL_RELEAS
9b5a0 45 53 5f 4e 53 20 3d 20 27 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 ES_NS.=.'http://pear.php.net/dtd
9b5c0 2f 72 65 73 74 2e 61 6c 6c 72 65 6c 65 61 73 65 73 27 3b 0a 63 6f 6e 73 74 20 50 41 43 4b 41 47 /rest.allreleases';.const.PACKAG
9b5e0 45 5f 49 4e 46 4f 5f 4e 53 20 3d 20 27 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 E_INFO_NS.=.'http://pear.php.net
9b600 2f 64 74 64 2f 72 65 73 74 2e 70 61 63 6b 61 67 65 27 3b 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 /dtd/rest.package';...private.$r
9b620 66 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 fs;..protected.function.__constr
9b640 75 63 74 28 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 29 0a 7b 0a 24 74 68 uct(RemoteFilesystem.$rfs).{.$th
9b660 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 is->rfs.=.$rfs;.}..........prote
9b680 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 65 73 74 43 6f 6e 74 65 6e 74 28 24 6f 72 cted.function.requestContent($or
9b6a0 69 67 69 6e 2c 20 24 70 61 74 68 29 0a 7b 0a 24 75 72 6c 20 3d 20 72 74 72 69 6d 28 24 6f 72 69 igin,.$path).{.$url.=.rtrim($ori
9b6c0 67 69 6e 2c 20 27 2f 27 29 20 2e 20 27 2f 27 20 2e 20 6c 74 72 69 6d 28 24 70 61 74 68 2c 20 27 gin,.'/')...'/'...ltrim($path,.'
9b6e0 2f 27 29 3b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 /');.$content.=.$this->rfs->getC
9b700 6f 6e 74 65 6e 74 73 28 24 6f 72 69 67 69 6e 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 29 3b 0a 69 ontents($origin,.$url,.false);.i
9b720 66 20 28 21 24 63 6f 6e 74 65 6e 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 f.(!$content).{.throw.new.\Unexp
9b740 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 50 45 41 52 20 63 68 ectedValueException('The.PEAR.ch
9b760 61 6e 6e 65 6c 20 61 74 20 27 20 2e 20 24 75 72 6c 20 2e 20 27 20 64 69 64 20 6e 6f 74 20 72 65 annel.at.'...$url...'.did.not.re
9b780 73 70 6f 6e 64 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 spond.');.}..return.str_replace(
9b7a0 27 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 72 65 73 74 2f 27 2c 20 27 68 74 'http://pear.php.net/rest/',.'ht
9b7c0 74 70 73 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 72 65 73 74 2f 27 2c 20 24 63 6f 6e 74 tps://pear.php.net/rest/',.$cont
9b7e0 65 6e 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 ent);.}..........protected.funct
9b800 69 6f 6e 20 72 65 71 75 65 73 74 58 6d 6c 28 24 6f 72 69 67 69 6e 2c 20 24 70 61 74 68 29 0a 7b ion.requestXml($origin,.$path).{
9b820 0a 0a 20 24 78 6d 6c 20 3d 20 73 69 6d 70 6c 65 78 6d 6c 5f 6c 6f 61 64 5f 73 74 72 69 6e 67 28 ...$xml.=.simplexml_load_string(
9b840 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 43 6f 6e 74 65 6e 74 28 24 6f 72 69 67 69 6e 2c 20 24 $this->requestContent($origin,.$
9b860 70 61 74 68 29 2c 20 22 53 69 6d 70 6c 65 58 4d 4c 45 6c 65 6d 65 6e 74 22 2c 20 4c 49 42 58 4d path),."SimpleXMLElement",.LIBXM
9b880 4c 5f 4e 4f 45 52 52 4f 52 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 20 24 78 6d 6c 29 20 L_NOERROR);..if.(false.==.$xml).
9b8a0 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 {.throw.new.\UnexpectedValueExce
9b8c0 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 50 45 41 52 20 63 68 61 6e 6e 65 6c 20 ption(sprintf('The.PEAR.channel.
9b8e0 61 74 20 27 20 2e 20 24 6f 72 69 67 69 6e 20 2e 20 27 20 69 73 20 62 72 6f 6b 65 6e 2e 20 28 49 at.'...$origin...'.is.broken..(I
9b900 6e 76 61 6c 69 64 20 58 4d 4c 20 61 74 20 66 69 6c 65 20 60 25 73 60 29 27 2c 20 24 70 61 74 68 nvalid.XML.at.file.`%s`)',.$path
9b920 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 78 6d 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ));.}..return.$xml;.}.}.<?php...
9b940 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f .........namespace.Composer\Repo
9b960 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 68 61 6e 6e 65 6c sitory\Pear;.......class.Channel
9b980 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 61 Info.{.private.$name;.private.$a
9b9a0 6c 69 61 73 3b 0a 70 72 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 73 3b 0a 0a 0a 0a 0a 0a 0a 70 lias;.private.$packages;.......p
9b9c0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 ublic.function.__construct($name
9b9e0 2c 20 24 61 6c 69 61 73 2c 20 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 24 74 68 ,.$alias,.array.$packages).{.$th
9ba00 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 20 3d is->name.=.$name;.$this->alias.=
9ba20 20 24 61 6c 69 61 73 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 20 3d 20 24 70 61 63 6b .$alias;.$this->packages.=.$pack
9ba40 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 ages;.}.......public.function.ge
9ba60 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a tName().{.return.$this->name;.}.
9ba80 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 28 29 ......public.function.getAlias()
9baa0 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a .{.return.$this->alias;.}.......
9bac0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 73 28 29 0a 7b 0a public.function.getPackages().{.
9bae0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 return.$this->packages;.}.}.<?ph
9bb00 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c p............namespace.Composer\
9bb20 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 Repository\Pear;..use.Composer\U
9bb40 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c til\RemoteFilesystem;.........cl
9bb60 61 73 73 20 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 68 ass.ChannelReader.extends.BaseCh
9bb80 61 6e 6e 65 6c 52 65 61 64 65 72 0a 7b 0a 0a 70 72 69 76 61 74 65 20 24 72 65 61 64 65 72 4d 61 annelReader.{..private.$readerMa
9bba0 70 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 p;..public.function.__construct(
9bbc0 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 29 0a 7b 0a 70 61 72 65 6e 74 3a RemoteFilesystem.$rfs).{.parent:
9bbe0 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 3b 0a 0a 24 72 65 73 74 31 30 72 65 61 64 :__construct($rfs);..$rest10read
9bc00 65 72 20 3d 20 6e 65 77 20 43 68 61 6e 6e 65 6c 52 65 73 74 31 30 52 65 61 64 65 72 28 24 72 66 er.=.new.ChannelRest10Reader($rf
9bc20 73 29 3b 0a 24 72 65 73 74 31 31 72 65 61 64 65 72 20 3d 20 6e 65 77 20 43 68 61 6e 6e 65 6c 52 s);.$rest11reader.=.new.ChannelR
9bc40 65 73 74 31 31 52 65 61 64 65 72 28 24 72 66 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 61 64 65 est11Reader($rfs);..$this->reade
9bc60 72 4d 61 70 20 3d 20 61 72 72 61 79 28 0a 27 52 45 53 54 31 2e 33 27 20 3d 3e 20 24 72 65 73 74 rMap.=.array(.'REST1.3'.=>.$rest
9bc80 31 31 72 65 61 64 65 72 2c 0a 27 52 45 53 54 31 2e 32 27 20 3d 3e 20 24 72 65 73 74 31 31 72 65 11reader,.'REST1.2'.=>.$rest11re
9bca0 61 64 65 72 2c 0a 27 52 45 53 54 31 2e 31 27 20 3d 3e 20 24 72 65 73 74 31 31 72 65 61 64 65 72 ader,.'REST1.1'.=>.$rest11reader
9bcc0 2c 0a 27 52 45 53 54 31 2e 30 27 20 3d 3e 20 24 72 65 73 74 31 30 72 65 61 64 65 72 2c 0a 29 3b ,.'REST1.0'.=>.$rest10reader,.);
9bce0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 .}.........public.function.read(
9bd00 24 75 72 6c 29 0a 7b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c $url).{.$xml.=.$this->requestXml
9bd20 28 24 75 72 6c 2c 20 22 2f 63 68 61 6e 6e 65 6c 2e 78 6d 6c 22 29 3b 0a 0a 24 63 68 61 6e 6e 65 ($url,."/channel.xml");..$channe
9bd40 6c 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 6e 61 6d 65 3b 0a 24 63 68 lName.=.(string).$xml->name;.$ch
9bd60 61 6e 6e 65 6c 53 75 6d 6d 61 72 79 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 73 75 annelSummary.=.(string).$xml->su
9bd80 6d 6d 61 72 79 3b 0a 24 63 68 61 6e 6e 65 6c 41 6c 69 61 73 20 3d 20 28 73 74 72 69 6e 67 29 20 mmary;.$channelAlias.=.(string).
9bda0 24 78 6d 6c 2d 3e 73 75 67 67 65 73 74 65 64 61 6c 69 61 73 3b 0a 0a 24 73 75 70 70 6f 72 74 65 $xml->suggestedalias;..$supporte
9bdc0 64 56 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 72 65 dVersions.=.array_keys($this->re
9bde0 61 64 65 72 4d 61 70 29 3b 0a 24 73 65 6c 65 63 74 65 64 52 65 73 74 56 65 72 73 69 6f 6e 20 3d aderMap);.$selectedRestVersion.=
9be00 20 24 74 68 69 73 2d 3e 73 65 6c 65 63 74 52 65 73 74 56 65 72 73 69 6f 6e 28 24 78 6d 6c 2c 20 .$this->selectRestVersion($xml,.
9be20 24 73 75 70 70 6f 72 74 65 64 56 65 72 73 69 6f 6e 73 29 3b 0a 69 66 20 28 21 24 73 65 6c 65 63 $supportedVersions);.if.(!$selec
9be40 74 65 64 52 65 73 74 56 65 72 73 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 tedRestVersion).{.throw.new.\Une
9be60 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 50 xpectedValueException(sprintf('P
9be80 45 41 52 20 72 65 70 6f 73 69 74 6f 72 79 20 25 73 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f EAR.repository.%s.does.not.suppo
9bea0 72 74 73 20 61 6e 79 20 6f 66 20 25 73 20 70 72 6f 74 6f 63 6f 6c 73 2e 27 2c 20 24 75 72 6c 2c rts.any.of.%s.protocols.',.$url,
9bec0 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 73 75 70 70 6f 72 74 65 64 56 65 72 73 69 6f 6e .implode(',.',.$supportedVersion
9bee0 73 29 29 29 3b 0a 7d 0a 0a 24 72 65 61 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 65 72 s)));.}..$reader.=.$this->reader
9bf00 4d 61 70 5b 24 73 65 6c 65 63 74 65 64 52 65 73 74 56 65 72 73 69 6f 6e 5b 27 76 65 72 73 69 6f Map[$selectedRestVersion['versio
9bf20 6e 27 5d 5d 3b 0a 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 73 20 3d 20 24 72 65 61 n']];.$packageDefinitions.=.$rea
9bf40 64 65 72 2d 3e 72 65 61 64 28 24 73 65 6c 65 63 74 65 64 52 65 73 74 56 65 72 73 69 6f 6e 5b 27 der->read($selectedRestVersion['
9bf60 62 61 73 65 55 72 6c 27 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 43 68 61 6e 6e 65 6c 49 baseUrl']);..return.new.ChannelI
9bf80 6e 66 6f 28 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 24 63 68 61 6e 6e 65 6c 41 6c 69 61 73 2c nfo($channelName,.$channelAlias,
9bfa0 20 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a .$packageDefinitions);.}........
9bfc0 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 52 65 73 74 56 65 72 73 .private.function.selectRestVers
9bfe0 69 6f 6e 28 24 63 68 61 6e 6e 65 6c 58 6d 6c 2c 20 24 73 75 70 70 6f 72 74 65 64 56 65 72 73 69 ion($channelXml,.$supportedVersi
9c000 6f 6e 73 29 0a 7b 0a 24 63 68 61 6e 6e 65 6c 58 6d 6c 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 ons).{.$channelXml->registerXPat
9c020 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 43 48 41 4e 4e 45 4c 5f 4e hNamespace('ns',.self::CHANNEL_N
9c040 53 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 73 75 70 70 6f 72 74 65 64 56 65 72 73 69 6f 6e 73 S);..foreach.($supportedVersions
9c060 20 61 73 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 78 70 61 74 68 54 65 73 74 20 3d 20 22 6e 73 .as.$version).{.$xpathTest.=."ns
9c080 3a 73 65 72 76 65 72 73 2f 6e 73 3a 2a 2f 6e 73 3a 72 65 73 74 2f 6e 73 3a 62 61 73 65 75 72 6c :servers/ns:*/ns:rest/ns:baseurl
9c0a0 5b 40 74 79 70 65 3d 27 7b 24 76 65 72 73 69 6f 6e 7d 27 5d 22 3b 0a 24 74 65 73 74 52 65 73 75 [@type='{$version}']";.$testResu
9c0c0 6c 74 20 3d 20 24 63 68 61 6e 6e 65 6c 58 6d 6c 2d 3e 78 70 61 74 68 28 24 78 70 61 74 68 54 65 lt.=.$channelXml->xpath($xpathTe
9c0e0 73 74 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 65 73 74 52 65 73 75 6c 74 20 61 73 20 24 72 st);..foreach.($testResult.as.$r
9c100 65 73 75 6c 74 29 20 7b 0a 0a 20 24 72 65 73 75 6c 74 20 3d 20 28 73 74 72 69 6e 67 29 20 24 72 esult).{...$result.=.(string).$r
9c120 65 73 75 6c 74 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3a 2f esult;.if.(preg_match('{^https:/
9c140 2f 7d 69 27 2c 20 24 72 65 73 75 6c 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 /}i',.$result)).{.return.array('
9c160 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 65 72 73 69 6f 6e 2c 20 27 62 61 73 65 55 72 6c 27 20 version'.=>.$version,.'baseUrl'.
9c180 3d 3e 20 24 72 65 73 75 6c 74 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 74 =>.$result);.}.}....if.(count($t
9c1a0 65 73 74 52 65 73 75 6c 74 29 20 3e 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 estResult).>.0).{.return.array('
9c1c0 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 65 72 73 69 6f 6e 2c 20 27 62 61 73 65 55 72 6c 27 20 version'.=>.$version,.'baseUrl'.
9c1e0 3d 3e 20 28 73 74 72 69 6e 67 29 20 24 74 65 73 74 52 65 73 75 6c 74 5b 30 5d 29 3b 0a 7d 0a 7d =>.(string).$testResult[0]);.}.}
9c200 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a ..return.null;.}.}.<?php........
9c220 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 ....namespace.Composer\Repositor
9c240 79 5c 50 65 61 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 y\Pear;..use.Composer\Downloader
9c260 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a \TransportException;............
9c280 0a 63 6c 61 73 73 20 43 68 61 6e 6e 65 6c 52 65 73 74 31 30 52 65 61 64 65 72 20 65 78 74 65 6e .class.ChannelRest10Reader.exten
9c2a0 64 73 20 42 61 73 65 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 ds.BaseChannelReader.{.private.$
9c2c0 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 dependencyReader;..public.functi
9c2e0 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f on.__construct($rfs).{.parent::_
9c300 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 _construct($rfs);..$this->depend
9c320 65 6e 63 79 52 65 61 64 65 72 20 3d 20 6e 65 77 20 50 61 63 6b 61 67 65 44 65 70 65 6e 64 65 6e encyReader.=.new.PackageDependen
9c340 63 79 50 61 72 73 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e cyParser();.}.........public.fun
9c360 63 74 69 6f 6e 20 72 65 61 64 28 24 62 61 73 65 55 72 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 ction.read($baseUrl).{.return.$t
9c380 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 73 28 24 62 61 73 65 55 72 6c 29 3b 0a 7d 0a 0a his->readPackages($baseUrl);.}..
9c3a0 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 50 61 63 6b .......private.function.readPack
9c3c0 61 67 65 73 28 24 62 61 73 65 55 72 6c 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 ages($baseUrl).{.$result.=.array
9c3e0 28 29 3b 0a 0a 24 78 6d 6c 50 61 74 68 20 3d 20 27 2f 70 2f 70 61 63 6b 61 67 65 73 2e 78 6d 6c ();..$xmlPath.=.'/p/packages.xml
9c400 27 3b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c 28 24 62 61 73 ';.$xml.=.$this->requestXml($bas
9c420 65 55 72 6c 2c 20 24 78 6d 6c 50 61 74 68 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 73 74 65 72 58 eUrl,.$xmlPath);.$xml->registerX
9c440 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 41 4c 4c 5f 50 41 PathNamespace('ns',.self::ALL_PA
9c460 43 4b 41 47 45 53 5f 4e 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c 2d 3e 78 70 61 74 68 CKAGES_NS);.foreach.($xml->xpath
9c480 28 27 6e 73 3a 70 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 4e 61 6d ('ns:p').as.$node).{.$packageNam
9c4a0 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 3b 0a 24 70 61 63 6b 61 67 65 49 6e 66 6f e.=.(string).$node;.$packageInfo
9c4c0 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 28 24 62 61 73 65 55 72 6c 2c 20 .=.$this->readPackage($baseUrl,.
9c4e0 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 24 70 61 63 6b $packageName);.$result[].=.$pack
9c500 61 67 65 49 6e 66 6f 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a ageInfo;.}..return.$result;.}...
9c520 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 50 61 63 6b .......private.function.readPack
9c540 61 67 65 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 78 age($baseUrl,.$packageName).{.$x
9c560 6d 6c 50 61 74 68 20 3d 20 27 2f 70 2f 27 20 2e 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 mlPath.=.'/p/'...strtolower($pac
9c580 6b 61 67 65 4e 61 6d 65 29 20 2e 20 27 2f 69 6e 66 6f 2e 78 6d 6c 27 3b 0a 24 78 6d 6c 20 3d 20 kageName)...'/info.xml';.$xml.=.
9c5a0 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c 28 24 62 61 73 65 55 72 6c 2c 20 24 78 6d 6c $this->requestXml($baseUrl,.$xml
9c5c0 50 61 74 68 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 Path);.$xml->registerXPathNamesp
9c5e0 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 50 41 43 4b 41 47 45 5f 49 4e 46 4f 5f 4e 53 29 ace('ns',.self::PACKAGE_INFO_NS)
9c600 3b 0a 0a 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d ;..$channelName.=.(string).$xml-
9c620 3e 63 3b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c >c;.$packageName.=.(string).$xml
9c640 2d 3e 6e 3b 0a 24 6c 69 63 65 6e 73 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 6c ->n;.$license.=.(string).$xml->l
9c660 3b 0a 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 ;.$shortDescription.=.(string).$
9c680 78 6d 6c 2d 3e 73 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 xml->s;.$description.=.(string).
9c6a0 24 78 6d 6c 2d 3e 64 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 61 63 6b 61 67 65 49 6e 66 6f $xml->d;..return.new.PackageInfo
9c6c0 28 0a 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 0a 24 6c (.$channelName,.$packageName,.$l
9c6e0 69 63 65 6e 73 65 2c 0a 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 2c 0a 24 64 65 73 63 icense,.$shortDescription,.$desc
9c700 72 69 70 74 69 6f 6e 2c 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 52 65 6c 65 61 ription,.$this->readPackageRelea
9c720 73 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 29 3b 0a 7d ses($baseUrl,.$packageName).);.}
9c740 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 ...........private.function.read
9c760 50 61 63 6b 61 67 65 52 65 6c 65 61 73 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 63 6b 61 PackageReleases($baseUrl,.$packa
9c780 67 65 4e 61 6d 65 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 74 72 geName).{.$result.=.array();..tr
9c7a0 79 20 7b 0a 24 78 6d 6c 50 61 74 68 20 3d 20 27 2f 72 2f 27 20 2e 20 73 74 72 74 6f 6c 6f 77 65 y.{.$xmlPath.=.'/r/'...strtolowe
9c7c0 72 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 2e 20 27 2f 61 6c 6c 72 65 6c 65 61 73 65 73 2e r($packageName)...'/allreleases.
9c7e0 78 6d 6c 27 3b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c 28 24 xml';.$xml.=.$this->requestXml($
9c800 62 61 73 65 55 72 6c 2c 20 24 78 6d 6c 50 61 74 68 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 73 74 baseUrl,.$xmlPath);.$xml->regist
9c820 65 72 58 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 41 4c 4c erXPathNamespace('ns',.self::ALL
9c840 5f 52 45 4c 45 41 53 45 53 5f 4e 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c 2d 3e 78 70 _RELEASES_NS);.foreach.($xml->xp
9c860 61 74 68 28 27 6e 73 3a 72 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 72 65 6c 65 61 73 65 ath('ns:r').as.$node).{.$release
9c880 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 76 3b 0a 24 72 65 Version.=.(string).$node->v;.$re
9c8a0 6c 65 61 73 65 53 74 61 62 69 6c 69 74 79 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d leaseStability.=.(string).$node-
9c8c0 3e 73 3b 0a 0a 74 72 79 20 7b 0a 24 72 65 73 75 6c 74 5b 24 72 65 6c 65 61 73 65 56 65 72 73 69 >s;..try.{.$result[$releaseVersi
9c8e0 6f 6e 5d 20 3d 20 6e 65 77 20 52 65 6c 65 61 73 65 49 6e 66 6f 28 0a 24 72 65 6c 65 61 73 65 53 on].=.new.ReleaseInfo(.$releaseS
9c900 74 61 62 69 6c 69 74 79 2c 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 52 65 6c 65 tability,.$this->readPackageRele
9c920 61 73 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 63 6b 61 aseDependencies($baseUrl,.$packa
9c940 67 65 4e 61 6d 65 2c 20 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 29 0a 29 3b 0a 7d 20 63 61 geName,.$releaseVersion).);.}.ca
9c960 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 tch.(TransportException.$excepti
9c980 6f 6e 29 20 7b 0a 69 66 20 28 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 64 65 28 29 20 on).{.if.($exception->getCode().
9c9a0 21 3d 20 34 30 34 29 20 7b 0a 74 68 72 6f 77 20 24 65 78 63 65 70 74 69 6f 6e 3b 0a 7d 0a 7d 0a !=.404).{.throw.$exception;.}.}.
9c9c0 7d 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 }.}.catch.(TransportException.$e
9c9e0 78 63 65 70 74 69 6f 6e 29 20 7b 0a 69 66 20 28 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 65 74 43 xception).{.if.($exception->getC
9ca00 6f 64 65 28 29 20 21 3d 20 34 30 34 29 20 7b 0a 74 68 72 6f 77 20 24 65 78 63 65 70 74 69 6f 6e ode().!=.404).{.throw.$exception
9ca20 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ;.}.}..return.$result;.}........
9ca40 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 50 61 63 6b 61 67 65 52 ...private.function.readPackageR
9ca60 65 6c 65 61 73 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 eleaseDependencies($baseUrl,.$pa
9ca80 63 6b 61 67 65 4e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 64 65 70 65 6e 64 65 6e ckageName,.$version).{.$dependen
9caa0 63 79 52 65 61 64 65 72 20 3d 20 6e 65 77 20 50 61 63 6b 61 67 65 44 65 70 65 6e 64 65 6e 63 79 cyReader.=.new.PackageDependency
9cac0 50 61 72 73 65 72 28 29 3b 0a 0a 24 64 65 70 74 68 50 61 74 68 20 3d 20 27 2f 72 2f 27 20 2e 20 Parser();..$depthPath.=.'/r/'...
9cae0 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 2e 20 27 2f 64 65 70 strtolower($packageName)...'/dep
9cb00 73 2e 27 20 2e 20 24 76 65 72 73 69 6f 6e 20 2e 20 27 2e 74 78 74 27 3b 0a 24 63 6f 6e 74 65 6e s.'...$version...'.txt';.$conten
9cb20 74 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 43 6f 6e 74 65 6e 74 28 24 62 61 73 65 55 t.=.$this->requestContent($baseU
9cb40 72 6c 2c 20 24 64 65 70 74 68 50 61 74 68 29 3b 0a 24 64 65 70 65 6e 64 65 6e 63 79 41 72 72 61 rl,.$depthPath);.$dependencyArra
9cb60 79 20 3d 20 75 6e 73 65 72 69 61 6c 69 7a 65 28 24 63 6f 6e 74 65 6e 74 29 3b 0a 24 72 65 73 75 y.=.unserialize($content);.$resu
9cb80 6c 74 20 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 2d 3e 62 75 69 6c 64 44 65 70 lt.=.$dependencyReader->buildDep
9cba0 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 64 65 70 65 6e 64 65 6e 63 79 41 72 72 61 79 29 3b 0a 0a endencyInfo($dependencyArray);..
9cbc0 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a return.$result;.}.}.<?php.......
9cbe0 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f .....namespace.Composer\Reposito
9cc00 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 68 61 6e 6e 65 6c ry\Pear;...........class.Channel
9cc20 52 65 73 74 31 31 52 65 61 64 65 72 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 68 61 6e 6e 65 6c Rest11Reader.extends.BaseChannel
9cc40 52 65 61 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 Reader.{.private.$dependencyRead
9cc60 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 er;..public.function.__construct
9cc80 28 24 72 66 73 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 ($rfs).{.parent::__construct($rf
9cca0 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 20 3d 20 6e s);..$this->dependencyReader.=.n
9ccc0 65 77 20 50 61 63 6b 61 67 65 44 65 70 65 6e 64 65 6e 63 79 50 61 72 73 65 72 28 29 3b 0a 7d 0a ew.PackageDependencyParser();.}.
9cce0 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 24 62 61 ........public.function.read($ba
9cd00 73 65 55 72 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 64 43 68 61 6e 6e seUrl).{.return.$this->readChann
9cd20 65 6c 50 61 63 6b 61 67 65 73 28 24 62 61 73 65 55 72 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a elPackages($baseUrl);.}.........
9cd40 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 43 68 61 6e 6e 65 6c 50 61 63 6b private.function.readChannelPack
9cd60 61 67 65 73 28 24 62 61 73 65 55 72 6c 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 ages($baseUrl).{.$result.=.array
9cd80 28 29 3b 0a 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c 28 24 62 ();..$xml.=.$this->requestXml($b
9cda0 61 73 65 55 72 6c 2c 20 22 2f 63 2f 63 61 74 65 67 6f 72 69 65 73 2e 78 6d 6c 22 29 3b 0a 24 78 aseUrl,."/c/categories.xml");.$x
9cdc0 6d 6c 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c ml->registerXPathNamespace('ns',
9cde0 20 73 65 6c 66 3a 3a 41 4c 4c 5f 43 41 54 45 47 4f 52 49 45 53 5f 4e 53 29 3b 0a 66 6f 72 65 61 .self::ALL_CATEGORIES_NS);.forea
9ce00 63 68 20 28 24 78 6d 6c 2d 3e 78 70 61 74 68 28 27 6e 73 3a 63 27 29 20 61 73 20 24 6e 6f 64 65 ch.($xml->xpath('ns:c').as.$node
9ce20 29 20 7b 0a 24 63 61 74 65 67 6f 72 79 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f ).{.$categoryName.=.(string).$no
9ce40 64 65 3b 0a 24 63 61 74 65 67 6f 72 79 50 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 de;.$categoryPackages.=.$this->r
9ce60 65 61 64 43 61 74 65 67 6f 72 79 50 61 63 6b 61 67 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 63 eadCategoryPackages($baseUrl,.$c
9ce80 61 74 65 67 6f 72 79 4e 61 6d 65 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 5f 6d 65 ategoryName);.$result.=.array_me
9cea0 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 63 61 74 65 67 6f 72 79 50 61 63 6b 61 67 65 73 29 3b rge($result,.$categoryPackages);
9cec0 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 .}..return.$result;.}..........p
9cee0 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 43 61 74 65 67 6f 72 79 50 61 63 6b rivate.function.readCategoryPack
9cf00 61 67 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 63 61 74 65 67 6f 72 79 4e 61 6d 65 29 0a 7b 0a ages($baseUrl,.$categoryName).{.
9cf20 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 63 61 74 65 67 6f 72 79 50 61 74 $result.=.array();..$categoryPat
9cf40 68 20 3d 20 27 2f 63 2f 27 2e 75 72 6c 65 6e 63 6f 64 65 28 24 63 61 74 65 67 6f 72 79 4e 61 6d h.=.'/c/'.urlencode($categoryNam
9cf60 65 29 2e 27 2f 70 61 63 6b 61 67 65 73 69 6e 66 6f 2e 78 6d 6c 27 3b 0a 24 78 6d 6c 20 3d 20 24 e).'/packagesinfo.xml';.$xml.=.$
9cf80 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c 28 24 62 61 73 65 55 72 6c 2c 20 24 63 61 74 65 this->requestXml($baseUrl,.$cate
9cfa0 67 6f 72 79 50 61 74 68 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 goryPath);.$xml->registerXPathNa
9cfc0 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 43 41 54 45 47 4f 52 59 5f 50 41 43 mespace('ns',.self::CATEGORY_PAC
9cfe0 4b 41 47 45 53 5f 49 4e 46 4f 5f 4e 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c 2d 3e 78 KAGES_INFO_NS);.foreach.($xml->x
9d000 70 61 74 68 28 27 6e 73 3a 70 69 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 70 61 63 6b 61 path('ns:pi').as.$node).{.$packa
9d020 67 65 49 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 50 61 63 6b 61 67 65 28 24 6e 6f geInfo.=.$this->parsePackage($no
9d040 64 65 29 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 3b 0a 7d de);.$result[].=.$packageInfo;.}
9d060 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 ..return.$result;.}........priva
9d080 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 te.function.parsePackage($packag
9d0a0 65 49 6e 66 6f 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 72 65 67 69 73 74 65 72 58 eInfo).{.$packageInfo->registerX
9d0c0 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 43 41 54 45 47 4f PathNamespace('ns',.self::CATEGO
9d0e0 52 59 5f 50 41 43 4b 41 47 45 53 5f 49 4e 46 4f 5f 4e 53 29 3b 0a 24 63 68 61 6e 6e 65 6c 4e 61 RY_PACKAGES_INFO_NS);.$channelNa
9d100 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 70 2d 3e 63 me.=.(string).$packageInfo->p->c
9d120 3b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 ;.$packageName.=.(string).$packa
9d140 67 65 49 6e 66 6f 2d 3e 70 2d 3e 6e 3b 0a 24 6c 69 63 65 6e 73 65 20 3d 20 28 73 74 72 69 6e 67 geInfo->p->n;.$license.=.(string
9d160 29 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 70 2d 3e 6c 3b 0a 24 73 68 6f 72 74 44 65 73 63 ).$packageInfo->p->l;.$shortDesc
9d180 72 69 70 74 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d ription.=.(string).$packageInfo-
9d1a0 3e 70 2d 3e 73 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 >p->s;.$description.=.(string).$
9d1c0 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 70 2d 3e 64 3b 0a 0a 24 64 65 70 65 6e 64 65 6e 63 69 65 packageInfo->p->d;..$dependencie
9d1e0 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 49 6e s.=.array();.foreach.($packageIn
9d200 66 6f 2d 3e 78 70 61 74 68 28 27 6e 73 3a 64 65 70 73 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b fo->xpath('ns:deps').as.$node).{
9d220 0a 24 64 65 70 65 6e 64 65 6e 63 79 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 .$dependencyVersion.=.(string).$
9d240 6e 6f 64 65 2d 3e 76 3b 0a 24 64 65 70 65 6e 64 65 6e 63 79 41 72 72 61 79 20 3d 20 75 6e 73 65 node->v;.$dependencyArray.=.unse
9d260 72 69 61 6c 69 7a 65 28 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 64 29 3b 0a 0a 24 64 65 rialize((string).$node->d);..$de
9d280 70 65 6e 64 65 6e 63 79 49 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 pendencyInfo.=.$this->dependency
9d2a0 52 65 61 64 65 72 2d 3e 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 64 65 70 Reader->buildDependencyInfo($dep
9d2c0 65 6e 64 65 6e 63 79 41 72 72 61 79 29 3b 0a 0a 24 64 65 70 65 6e 64 65 6e 63 69 65 73 5b 24 64 endencyArray);..$dependencies[$d
9d2e0 65 70 65 6e 64 65 6e 63 79 56 65 72 73 69 6f 6e 5d 20 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 49 ependencyVersion].=.$dependencyI
9d300 6e 66 6f 3b 0a 7d 0a 0a 24 72 65 6c 65 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 nfo;.}..$releases.=.array();.$re
9d320 6c 65 61 73 65 73 49 6e 66 6f 20 3d 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 78 70 61 74 68 leasesInfo.=.$packageInfo->xpath
9d340 28 27 6e 73 3a 61 2f 6e 73 3a 72 27 29 3b 0a 69 66 20 28 24 72 65 6c 65 61 73 65 73 49 6e 66 6f ('ns:a/ns:r');.if.($releasesInfo
9d360 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 6c 65 61 73 65 73 49 6e 66 6f 20 61 73 20 24 6e ).{.foreach.($releasesInfo.as.$n
9d380 6f 64 65 29 20 7b 0a 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 ode).{.$releaseVersion.=.(string
9d3a0 29 20 24 6e 6f 64 65 2d 3e 76 3b 0a 24 72 65 6c 65 61 73 65 53 74 61 62 69 6c 69 74 79 20 3d 20 ).$node->v;.$releaseStability.=.
9d3c0 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 73 3b 0a 24 72 65 6c 65 61 73 65 73 5b 24 72 65 (string).$node->s;.$releases[$re
9d3e0 6c 65 61 73 65 56 65 72 73 69 6f 6e 5d 20 3d 20 6e 65 77 20 52 65 6c 65 61 73 65 49 6e 66 6f 28 leaseVersion].=.new.ReleaseInfo(
9d400 0a 24 72 65 6c 65 61 73 65 53 74 61 62 69 6c 69 74 79 2c 0a 69 73 73 65 74 28 24 64 65 70 65 6e .$releaseStability,.isset($depen
9d420 64 65 6e 63 69 65 73 5b 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 5d 29 20 3f 20 24 64 65 70 dencies[$releaseVersion]).?.$dep
9d440 65 6e 64 65 6e 63 69 65 73 5b 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 5d 20 3a 20 6e 65 77 endencies[$releaseVersion].:.new
9d460 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 28 29 .DependencyInfo(array(),.array()
9d480 29 0a 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 61 63 6b 61 67 65 49 6e 66 6f ).);.}.}..return.new.PackageInfo
9d4a0 28 0a 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 0a 24 6c (.$channelName,.$packageName,.$l
9d4c0 69 63 65 6e 73 65 2c 0a 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 2c 0a 24 64 65 73 63 icense,.$shortDescription,.$desc
9d4e0 72 69 70 74 69 6f 6e 2c 0a 24 72 65 6c 65 61 73 65 73 0a 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a ription,.$releases.);.}.}.<?php.
9d500 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 ...........namespace.Composer\Re
9d520 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 70 65 6e pository\Pear;.......class.Depen
9d540 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 79 70 65 3b dencyConstraint.{.private.$type;
9d560 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 70 72 69 76 61 74 65 20 24 63 .private.$constraint;.private.$c
9d580 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 hannelName;.private.$packageName
9d5a0 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 ;........public.function.__const
9d5c0 72 75 63 74 28 24 74 79 70 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 63 68 61 6e 6e 65 ruct($type,.$constraint,.$channe
9d5e0 6c 4e 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 79 lName,.$packageName).{.$this->ty
9d600 70 65 20 3d 20 24 74 79 70 65 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 pe.=.$type;.$this->constraint.=.
9d620 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 $constraint;.$this->channelName.
9d640 3d 20 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 =.$channelName;.$this->packageNa
9d660 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e me.=.$packageName;.}..public.fun
9d680 63 74 69 6f 6e 20 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 ction.getChannelName().{.return.
9d6a0 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 $this->channelName;.}..public.fu
9d6c0 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 nction.getConstraint().{.return.
9d6e0 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e $this->constraint;.}..public.fun
9d700 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 ction.getPackageName().{.return.
9d720 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 $this->packageName;.}..public.fu
9d740 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d nction.getType().{.return.$this-
9d760 3e 74 79 70 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 >type;.}.}.<?php............name
9d780 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a space.Composer\Repository\Pear;.
9d7a0 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 0a 7b 0a 70 72 69 ......class.DependencyInfo.{.pri
9d7c0 76 61 74 65 20 24 72 65 71 75 69 72 65 73 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 61 vate.$requires;.private.$optiona
9d7e0 6c 73 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 ls;......public.function.__const
9d800 72 75 63 74 28 24 72 65 71 75 69 72 65 73 2c 20 24 6f 70 74 69 6f 6e 61 6c 73 29 0a 7b 0a 24 74 ruct($requires,.$optionals).{.$t
9d820 68 69 73 2d 3e 72 65 71 75 69 72 65 73 20 3d 20 24 72 65 71 75 69 72 65 73 3b 0a 24 74 68 69 73 his->requires.=.$requires;.$this
9d840 2d 3e 6f 70 74 69 6f 6e 61 6c 73 20 3d 20 24 6f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 0a 0a 0a 0a ->optionals.=.$optionals;.}.....
9d860 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 71 75 69 72 65 73 28 29 0a 7b 0a public.function.getRequires().{.
9d880 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 return.$this->requires;.}.....pu
9d8a0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 61 6c 73 28 29 0a 7b 0a 72 blic.function.getOptionals().{.r
9d8c0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 eturn.$this->optionals;.}.}.<?ph
9d8e0 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c p............namespace.Composer\
9d900 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 Repository\Pear;.......class.Pac
9d920 6b 61 67 65 44 65 70 65 6e 64 65 6e 63 79 50 61 72 73 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 kageDependencyParser.{.......pub
9d940 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f lic.function.buildDependencyInfo
9d960 28 24 64 65 70 41 72 72 61 79 29 0a 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 64 65 70 ($depArray).{.if.(!is_array($dep
9d980 41 72 72 61 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 44 65 70 65 6e 64 65 6e 63 79 49 Array)).{.return.new.DependencyI
9d9a0 6e 66 6f 28 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 69 66 20 28 21 24 74 nfo(array(),.array());.}.if.(!$t
9d9c0 68 69 73 2d 3e 69 73 48 61 73 68 28 24 64 65 70 41 72 72 61 79 29 29 20 7b 0a 72 65 74 75 72 6e his->isHash($depArray)).{.return
9d9e0 20 6e 65 77 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 74 68 69 73 2d 3e 62 75 69 6c 64 .new.DependencyInfo($this->build
9da00 44 65 70 65 6e 64 65 6e 63 79 31 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 2c 20 61 72 72 Dependency10Info($depArray),.arr
9da20 61 79 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 ay());.}..return.$this->buildDep
9da40 65 6e 64 65 6e 63 79 32 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 3b 0a 7d 0a 0a 0a 0a 0a endency20Info($depArray);.}.....
9da60 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 44 .........private.function.buildD
9da80 65 70 65 6e 64 65 6e 63 79 31 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 0a 7b 0a 73 74 61 ependency10Info($depArray).{.sta
9daa0 74 69 63 20 24 64 65 70 31 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 20 3d 20 61 72 72 61 79 28 tic.$dep10toOperatorMap.=.array(
9dac0 27 68 61 73 27 20 3d 3e 20 27 3d 3d 27 2c 20 27 65 71 27 20 3d 3e 20 27 3d 3d 27 2c 20 27 67 65 'has'.=>.'==',.'eq'.=>.'==',.'ge
9dae0 27 20 3d 3e 20 27 3e 3d 27 2c 20 27 67 74 27 20 3d 3e 20 27 3e 27 2c 20 27 6c 65 27 20 3d 3e 20 '.=>.'>=',.'gt'.=>.'>',.'le'.=>.
9db00 27 3c 3d 27 2c 20 27 6c 74 27 20 3d 3e 20 27 3c 27 2c 20 27 6e 6f 74 27 20 3d 3e 20 27 21 3d 27 '<=',.'lt'.=>.'<',.'not'.=>.'!='
9db20 29 3b 0a 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 );..$result.=.array();..foreach.
9db40 28 24 64 65 70 41 72 72 61 79 20 61 73 20 24 64 65 70 49 74 65 6d 29 20 7b 0a 69 66 20 28 65 6d ($depArray.as.$depItem).{.if.(em
9db60 70 74 79 28 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 29 20 7c 7c 20 21 61 72 72 61 79 5f 6b pty($depItem['rel']).||.!array_k
9db80 65 79 5f 65 78 69 73 74 73 28 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 2c 20 24 64 65 70 31 ey_exists($depItem['rel'],.$dep1
9dba0 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 29 29 20 7b 0a 0a 20 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0toOperatorMap)).{...continue;.}
9dbc0 0a 0a 24 64 65 70 54 79 70 65 20 3d 20 21 65 6d 70 74 79 28 24 64 65 70 49 74 65 6d 5b 27 6f 70 ..$depType.=.!empty($depItem['op
9dbe0 74 69 6f 6e 61 6c 27 5d 29 20 26 26 20 27 79 65 73 27 20 3d 3d 20 24 64 65 70 49 74 65 6d 5b 27 tional']).&&.'yes'.==.$depItem['
9dc00 6f 70 74 69 6f 6e 61 6c 27 5d 0a 3f 20 27 6f 70 74 69 6f 6e 61 6c 27 0a 3a 20 27 72 65 71 75 69 optional'].?.'optional'.:.'requi
9dc20 72 65 64 27 3b 0a 24 64 65 70 54 79 70 65 20 3d 20 27 6e 6f 74 27 20 3d 3d 20 24 64 65 70 49 74 red';.$depType.=.'not'.==.$depIt
9dc40 65 6d 5b 27 72 65 6c 27 5d 0a 3f 20 27 63 6f 6e 66 6c 69 63 74 73 27 0a 3a 20 24 64 65 70 54 79 em['rel'].?.'conflicts'.:.$depTy
9dc60 70 65 3b 0a 0a 24 64 65 70 56 65 72 73 69 6f 6e 20 3d 20 21 65 6d 70 74 79 28 24 64 65 70 49 74 pe;..$depVersion.=.!empty($depIt
9dc80 65 6d 5b 27 76 65 72 73 69 6f 6e 27 5d 29 20 3f 20 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 72 em['version']).?.$this->parseVer
9dca0 73 69 6f 6e 28 24 64 65 70 49 74 65 6d 5b 27 76 65 72 73 69 6f 6e 27 5d 29 20 3a 20 27 2a 27 3b sion($depItem['version']).:.'*';
9dcc0 0a 0a 0a 20 24 64 65 70 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 28 27 68 61 ....$depVersionConstraint.=.('ha
9dce0 73 27 20 3d 3d 20 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 20 7c 7c 20 27 6e 6f 74 27 20 3d s'.==.$depItem['rel'].||.'not'.=
9dd00 3d 20 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 29 20 26 26 20 27 2a 27 20 3d 3d 20 24 64 65 =.$depItem['rel']).&&.'*'.==.$de
9dd20 70 56 65 72 73 69 6f 6e 0a 3f 20 27 2a 27 0a 3a 20 24 64 65 70 31 30 74 6f 4f 70 65 72 61 74 6f pVersion.?.'*'.:.$dep10toOperato
9dd40 72 4d 61 70 5b 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 5d 20 2e 20 24 64 65 70 56 65 72 73 rMap[$depItem['rel']]...$depVers
9dd60 69 6f 6e 3b 0a 0a 73 77 69 74 63 68 20 28 24 64 65 70 49 74 65 6d 5b 27 74 79 70 65 27 5d 29 20 ion;..switch.($depItem['type']).
9dd80 7b 0a 63 61 73 65 20 27 70 68 70 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 {.case.'php':.$depChannelName.=.
9dda0 27 70 68 70 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 27 27 3b 0a 62 72 65 'php';.$depPackageName.=.'';.bre
9ddc0 61 6b 3b 0a 63 61 73 65 20 27 70 6b 67 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 ak;.case.'pkg':.$depChannelName.
9dde0 3d 20 21 65 6d 70 74 79 28 24 64 65 70 49 74 65 6d 5b 27 63 68 61 6e 6e 65 6c 27 5d 29 20 3f 20 =.!empty($depItem['channel']).?.
9de00 24 64 65 70 49 74 65 6d 5b 27 63 68 61 6e 6e 65 6c 27 5d 20 3a 20 27 70 65 61 72 2e 70 68 70 2e $depItem['channel'].:.'pear.php.
9de20 6e 65 74 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 64 65 70 49 74 65 6d net';.$depPackageName.=.$depItem
9de40 5b 27 6e 61 6d 65 27 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 65 78 74 27 3a 0a 24 64 65 ['name'];.break;.case.'ext':.$de
9de60 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 27 65 78 74 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 pChannelName.=.'ext';.$depPackag
9de80 65 4e 61 6d 65 20 3d 20 24 64 65 70 49 74 65 6d 5b 27 6e 61 6d 65 27 5d 3b 0a 62 72 65 61 6b 3b eName.=.$depItem['name'];.break;
9dea0 0a 63 61 73 65 20 27 6f 73 27 3a 0a 63 61 73 65 20 27 73 61 70 69 27 3a 0a 24 64 65 70 43 68 61 .case.'os':.case.'sapi':.$depCha
9dec0 6e 6e 65 6c 4e 61 6d 65 20 3d 20 27 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d nnelName.=.'';.$depPackageName.=
9dee0 20 27 27 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c .'';.break;.default:.$depChannel
9df00 4e 61 6d 65 20 3d 20 27 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 27 27 3b Name.=.'';.$depPackageName.=.'';
9df20 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 69 66 20 28 27 27 20 21 3d 20 24 64 65 70 43 68 61 6e 6e 65 6c .break;.}..if.(''.!=.$depChannel
9df40 4e 61 6d 65 29 20 7b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 6e 65 77 20 44 65 70 65 6e 64 65 6e Name).{.$result[].=.new.Dependen
9df60 63 79 43 6f 6e 73 74 72 61 69 6e 74 28 0a 24 64 65 70 54 79 70 65 2c 0a 24 64 65 70 56 65 72 73 cyConstraint(.$depType,.$depVers
9df80 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 2c 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 2c 0a ionConstraint,.$depChannelName,.
9dfa0 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 0a 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 $depPackageName.);.}.}..return.$
9dfc0 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f result;.}........private.functio
9dfe0 6e 20 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 32 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 n.buildDependency20Info($depArra
9e000 79 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6f 70 74 69 6f 6e 61 y).{.$result.=.array();.$optiona
9e020 6c 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 61 6c 73 20 ls.=.array();.$defaultOptionals.
9e040 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 41 72 72 61 79 20 61 73 =.array();.foreach.($depArray.as
9e060 20 24 64 65 70 54 79 70 65 20 3d 3e 20 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 20 7b 0a 69 66 .$depType.=>.$depTypeGroup).{.if
9e080 20 28 21 69 73 5f 61 72 72 61 79 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 29 20 7b 0a 63 6f .(!is_array($depTypeGroup)).{.co
9e0a0 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 27 72 65 71 75 69 72 65 64 27 20 3d 3d 20 24 64 65 70 ntinue;.}.if.('required'.==.$dep
9e0c0 54 79 70 65 20 7c 7c 20 27 6f 70 74 69 6f 6e 61 6c 27 20 3d 3d 20 24 64 65 70 54 79 70 65 29 20 Type.||.'optional'.==.$depType).
9e0e0 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 20 61 73 20 24 64 65 70 {.foreach.($depTypeGroup.as.$dep
9e100 49 74 65 6d 54 79 70 65 20 3d 3e 20 24 64 65 70 49 74 65 6d 29 20 7b 0a 73 77 69 74 63 68 20 28 ItemType.=>.$depItem).{.switch.(
9e120 24 64 65 70 49 74 65 6d 54 79 70 65 29 20 7b 0a 63 61 73 65 20 27 70 68 70 27 3a 0a 24 72 65 73 $depItemType).{.case.'php':.$res
9e140 75 6c 74 5b 5d 20 3d 20 6e 65 77 20 44 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 ult[].=.new.DependencyConstraint
9e160 28 0a 24 64 65 70 54 79 70 65 2c 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 32 30 56 65 72 73 69 6f (.$depType,.$this->parse20Versio
9e180 6e 43 6f 6e 73 74 72 61 69 6e 74 28 24 64 65 70 49 74 65 6d 29 2c 0a 27 70 68 70 27 2c 0a 27 27 nConstraint($depItem),.'php',.''
9e1a0 0a 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 70 61 63 6b 61 67 65 27 3a 0a 24 64 65 70 73 .);.break;.case.'package':.$deps
9e1c0 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 61 .=.$this->buildDepPackageConstra
9e1e0 69 6e 74 73 28 24 64 65 70 49 74 65 6d 2c 20 24 64 65 70 54 79 70 65 29 3b 0a 24 72 65 73 75 6c ints($depItem,.$depType);.$resul
9e200 74 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 64 65 70 73 29 3b t.=.array_merge($result,.$deps);
9e220 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 65 78 74 65 6e 73 69 6f 6e 27 3a 0a 24 64 65 70 73 20 .break;.case.'extension':.$deps.
9e240 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 45 78 74 65 6e 73 69 6f 6e 43 6f 6e 73 74 72 =.$this->buildDepExtensionConstr
9e260 61 69 6e 74 73 28 24 64 65 70 49 74 65 6d 2c 20 24 64 65 70 54 79 70 65 29 3b 0a 24 72 65 73 75 aints($depItem,.$depType);.$resu
9e280 6c 74 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 64 65 70 73 29 lt.=.array_merge($result,.$deps)
9e2a0 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 73 75 62 70 61 63 6b 61 67 65 27 3a 0a 24 64 65 70 ;.break;.case.'subpackage':.$dep
9e2c0 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 s.=.$this->buildDepPackageConstr
9e2e0 61 69 6e 74 73 28 24 64 65 70 49 74 65 6d 2c 20 27 72 65 70 6c 61 63 65 73 27 29 3b 0a 24 64 65 aints($depItem,.'replaces');.$de
9e300 66 61 75 6c 74 4f 70 74 69 6f 6e 61 6c 73 20 2b 3d 20 24 64 65 70 73 3b 0a 62 72 65 61 6b 3b 0a faultOptionals.+=.$deps;.break;.
9e320 63 61 73 65 20 27 6f 73 27 3a 0a 63 61 73 65 20 27 70 65 61 72 69 6e 73 74 61 6c 6c 65 72 27 3a case.'os':.case.'pearinstaller':
9e340 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 20 65 6c .break;.default:.break;.}.}.}.el
9e360 73 65 69 66 20 28 27 67 72 6f 75 70 27 20 3d 3d 20 24 64 65 70 54 79 70 65 29 20 7b 0a 69 66 20 seif.('group'.==.$depType).{.if.
9e380 28 24 74 68 69 73 2d 3e 69 73 48 61 73 68 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 29 20 7b ($this->isHash($depTypeGroup)).{
9e3a0 0a 24 64 65 70 54 79 70 65 47 72 6f 75 70 20 3d 20 61 72 72 61 79 28 24 64 65 70 54 79 70 65 47 .$depTypeGroup.=.array($depTypeG
9e3c0 72 6f 75 70 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 roup);.}..foreach.($depTypeGroup
9e3e0 20 61 73 20 24 64 65 70 49 74 65 6d 29 20 7b 0a 24 67 72 6f 75 70 4e 61 6d 65 20 3d 20 24 64 65 .as.$depItem).{.$groupName.=.$de
9e400 70 49 74 65 6d 5b 27 61 74 74 72 69 62 73 27 5d 5b 27 6e 61 6d 65 27 5d 3b 0a 69 66 20 28 21 69 pItem['attribs']['name'];.if.(!i
9e420 73 73 65 74 28 24 6f 70 74 69 6f 6e 61 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d 29 29 20 7b 0a sset($optionals[$groupName])).{.
9e440 24 6f 70 74 69 6f 6e 61 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d 20 3d 20 61 72 72 61 79 28 29 $optionals[$groupName].=.array()
9e460 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 65 70 49 74 65 6d 5b 27 73 75 62 70 61 63 6b ;.}..if.(isset($depItem['subpack
9e480 61 67 65 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 61 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d age'])).{.$optionals[$groupName]
9e4a0 20 2b 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 .+=.$this->buildDepPackageConstr
9e4c0 61 69 6e 74 73 28 24 64 65 70 49 74 65 6d 5b 27 73 75 62 70 61 63 6b 61 67 65 27 5d 2c 20 27 72 aints($depItem['subpackage'],.'r
9e4e0 65 70 6c 61 63 65 73 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 73 75 6c 74 20 2b 3d 20 24 eplaces');.}.else.{.$result.+=.$
9e500 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 61 69 6e 74 73 this->buildDepPackageConstraints
9e520 28 24 64 65 70 49 74 65 6d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 27 6f 70 74 69 6f 6e 61 6c 27 ($depItem['package'],.'optional'
9e540 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 64 65 66 61 75 6c 74 4f 70 );.}.}.}.}..if.(count($defaultOp
9e560 74 69 6f 6e 61 6c 73 29 20 3e 20 30 29 20 7b 0a 24 6f 70 74 69 6f 6e 61 6c 73 5b 27 2a 27 5d 20 tionals).>.0).{.$optionals['*'].
9e580 3d 20 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e =.$defaultOptionals;.}..return.n
9e5a0 65 77 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 72 65 73 75 6c 74 2c 20 24 6f 70 74 69 ew.DependencyInfo($result,.$opti
9e5c0 6f 6e 61 6c 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 onals);.}.........private.functi
9e5e0 6f 6e 20 62 75 69 6c 64 44 65 70 45 78 74 65 6e 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 73 28 on.buildDepExtensionConstraints(
9e600 24 64 65 70 49 74 65 6d 2c 20 24 64 65 70 54 79 70 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d $depItem,.$depType).{.if.($this-
9e620 3e 69 73 48 61 73 68 28 24 64 65 70 49 74 65 6d 29 29 20 7b 0a 24 64 65 70 49 74 65 6d 20 3d 20 >isHash($depItem)).{.$depItem.=.
9e640 61 72 72 61 79 28 24 64 65 70 49 74 65 6d 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 array($depItem);.}..$result.=.ar
9e660 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 49 74 65 6d 20 61 73 20 24 73 75 62 ray();.foreach.($depItem.as.$sub
9e680 44 65 70 49 74 65 6d 29 20 7b 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 27 65 78 DepItem).{.$depChannelName.=.'ex
9e6a0 74 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 73 75 62 44 65 70 49 74 65 t';.$depPackageName.=.$subDepIte
9e6c0 6d 5b 27 6e 61 6d 65 27 5d 3b 0a 24 64 65 70 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 m['name'];.$depVersionConstraint
9e6e0 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 32 30 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 .=.$this->parse20VersionConstrai
9e700 6e 74 28 24 73 75 62 44 65 70 49 74 65 6d 29 3b 0a 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 6e 65 nt($subDepItem);..$result[].=.ne
9e720 77 20 44 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 28 0a 24 64 65 70 54 79 70 65 w.DependencyConstraint(.$depType
9e740 2c 0a 24 64 65 70 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 2c 0a 24 64 65 70 43 68 61 ,.$depVersionConstraint,.$depCha
9e760 6e 6e 65 6c 4e 61 6d 65 2c 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 0a 29 3b 0a 7d 0a 0a nnelName,.$depPackageName.);.}..
9e780 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 return.$result;.}.........privat
9e7a0 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 e.function.buildDepPackageConstr
9e7c0 61 69 6e 74 73 28 24 64 65 70 49 74 65 6d 2c 20 24 64 65 70 54 79 70 65 29 0a 7b 0a 69 66 20 28 aints($depItem,.$depType).{.if.(
9e7e0 24 74 68 69 73 2d 3e 69 73 48 61 73 68 28 24 64 65 70 49 74 65 6d 29 29 20 7b 0a 24 64 65 70 49 $this->isHash($depItem)).{.$depI
9e800 74 65 6d 20 3d 20 61 72 72 61 79 28 24 64 65 70 49 74 65 6d 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c tem.=.array($depItem);.}..$resul
9e820 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 49 74 65 6d 20 61 t.=.array();.foreach.($depItem.a
9e840 73 20 24 73 75 62 44 65 70 49 74 65 6d 29 20 7b 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 s.$subDepItem).{.$depChannelName
9e860 20 3d 20 24 73 75 62 44 65 70 49 74 65 6d 5b 27 63 68 61 6e 6e 65 6c 27 5d 3b 0a 24 64 65 70 50 .=.$subDepItem['channel'];.$depP
9e880 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 73 75 62 44 65 70 49 74 65 6d 5b 27 6e 61 6d 65 27 5d ackageName.=.$subDepItem['name']
9e8a0 3b 0a 24 64 65 70 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 68 69 73 2d ;.$depVersionConstraint.=.$this-
9e8c0 3e 70 61 72 73 65 32 30 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 24 73 75 62 44 65 >parse20VersionConstraint($subDe
9e8e0 70 49 74 65 6d 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 73 75 62 44 65 70 49 74 65 6d 5b 27 63 pItem);.if.(isset($subDepItem['c
9e900 6f 6e 66 6c 69 63 74 73 27 5d 29 29 20 7b 0a 24 64 65 70 54 79 70 65 20 3d 20 27 63 6f 6e 66 6c onflicts'])).{.$depType.=.'confl
9e920 69 63 74 73 27 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 6e 65 77 20 44 65 70 65 6e 64 icts';.}..$result[].=.new.Depend
9e940 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 28 0a 24 64 65 70 54 79 70 65 2c 0a 24 64 65 70 56 65 encyConstraint(.$depType,.$depVe
9e960 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 2c 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 rsionConstraint,.$depChannelName
9e980 2c 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ,.$depPackageName.);.}..return.$
9e9a0 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f result;.}........private.functio
9e9c0 6e 20 70 61 72 73 65 32 30 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 61 72 72 61 79 n.parse20VersionConstraint(array
9e9e0 20 24 64 61 74 61 29 0a 7b 0a 73 74 61 74 69 63 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f .$data).{.static.$dep20toOperato
9ea00 72 4d 61 70 20 3d 20 61 72 72 61 79 28 27 68 61 73 27 20 3d 3e 20 27 3d 3d 27 2c 20 27 6d 69 6e rMap.=.array('has'.=>.'==',.'min
9ea20 27 20 3d 3e 20 27 3e 3d 27 2c 20 27 6d 61 78 27 20 3d 3e 20 27 3c 3d 27 2c 20 27 65 78 63 6c 75 '.=>.'>=',.'max'.=>.'<=',.'exclu
9ea40 64 65 27 20 3d 3e 20 27 21 3d 27 29 3b 0a 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 de'.=>.'!=');..$versions.=.array
9ea60 28 29 3b 0a 24 76 61 6c 75 65 73 20 3d 20 61 72 72 61 79 5f 69 6e 74 65 72 73 65 63 74 5f 6b 65 ();.$values.=.array_intersect_ke
9ea80 79 28 24 64 61 74 61 2c 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 29 3b 0a 69 y($data,.$dep20toOperatorMap);.i
9eaa0 66 20 28 30 20 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e f.(0.==.count($values)).{.return
9eac0 20 27 2a 27 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 76 61 6c 75 65 73 5b 27 6d 69 6e 27 5d .'*';.}.if.(isset($values['min']
9eae0 29 20 26 26 20 69 73 73 65 74 28 24 76 61 6c 75 65 73 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 26 ).&&.isset($values['exclude']).&
9eb00 26 20 24 64 61 74 61 5b 27 6d 69 6e 27 5d 20 3d 3d 20 24 64 61 74 61 5b 27 65 78 63 6c 75 64 65 &.$data['min'].==.$data['exclude
9eb20 27 5d 29 20 7b 0a 24 76 65 72 73 69 6f 6e 73 5b 5d 20 3d 20 27 3e 27 20 2e 20 24 74 68 69 73 2d ']).{.$versions[].=.'>'...$this-
9eb40 3e 70 61 72 73 65 56 65 72 73 69 6f 6e 28 24 76 61 6c 75 65 73 5b 27 6d 69 6e 27 5d 29 3b 0a 7d >parseVersion($values['min']);.}
9eb60 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 76 61 6c 75 65 73 5b 27 6d 61 78 27 5d 29 20 26 .elseif.(isset($values['max']).&
9eb80 26 20 69 73 73 65 74 28 24 76 61 6c 75 65 73 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 26 26 20 24 &.isset($values['exclude']).&&.$
9eba0 64 61 74 61 5b 27 6d 61 78 27 5d 20 3d 3d 20 24 64 61 74 61 5b 27 65 78 63 6c 75 64 65 27 5d 29 data['max'].==.$data['exclude'])
9ebc0 20 7b 0a 24 76 65 72 73 69 6f 6e 73 5b 5d 20 3d 20 27 3c 27 20 2e 20 24 74 68 69 73 2d 3e 70 61 .{.$versions[].=.'<'...$this->pa
9ebe0 72 73 65 56 65 72 73 69 6f 6e 28 24 76 61 6c 75 65 73 5b 27 6d 61 78 27 5d 29 3b 0a 7d 20 65 6c rseVersion($values['max']);.}.el
9ec00 73 65 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 76 61 6c 75 65 73 20 61 73 20 24 6f 70 20 3d 3e 20 se.{.foreach.($values.as.$op.=>.
9ec20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 69 66 20 28 27 65 78 63 6c 75 64 65 27 20 3d 3d 20 24 6f 70 $version).{.if.('exclude'.==.$op
9ec40 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 76 65 72 73 69 6f 6e 29 29 20 7b 0a 66 6f 72 65 61 63 .&&.is_array($version)).{.foreac
9ec60 68 20 28 24 76 65 72 73 69 6f 6e 20 61 73 20 24 76 65 72 73 69 6f 6e 50 61 72 74 29 20 7b 0a 24 h.($version.as.$versionPart).{.$
9ec80 76 65 72 73 69 6f 6e 73 5b 5d 20 3d 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 versions[].=.$dep20toOperatorMap
9eca0 5b 24 6f 70 5d 20 2e 20 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 72 73 69 6f 6e 28 24 76 65 72 [$op]...$this->parseVersion($ver
9ecc0 73 69 6f 6e 50 61 72 74 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 73 5b sionPart);.}.}.else.{.$versions[
9ece0 5d 20 3d 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 5b 24 6f 70 5d 20 2e 20 24 ].=.$dep20toOperatorMap[$op]...$
9ed00 74 68 69 73 2d 3e 70 61 72 73 65 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 0a this->parseVersion($version);.}.
9ed20 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 2c 27 2c 20 24 76 65 72 73 69 6f }.}..return.implode(',',.$versio
9ed40 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 ns);.}........private.function.p
9ed60 61 72 73 65 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 69 66 20 28 70 72 65 67 arseVersion($version).{.if.(preg
9ed80 5f 6d 61 74 63 68 28 27 7b 5e 76 3f 28 5c 64 7b 31 2c 33 7d 29 28 5c 2e 5c 64 2b 29 3f 28 5c 2e _match('{^v?(\d{1,3})(\.\d+)?(\.
9eda0 5c 64 2b 29 3f 28 5c 2e 5c 64 2b 29 3f 7d 69 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6d 61 74 \d+)?(\.\d+)?}i',.$version,.$mat
9edc0 63 68 65 73 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 0a ches)).{.$version.=.$matches[1].
9ede0 2e 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 .(!empty($matches[2]).?.$matches
9ee00 5b 32 5d 20 3a 20 27 2e 30 27 29 0a 2e 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 33 5d [2].:.'.0')..(!empty($matches[3]
9ee20 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 33 5d 20 3a 20 27 2e 30 27 29 0a 2e 28 21 65 6d 70 74 79 ).?.$matches[3].:.'.0')..(!empty
9ee40 28 24 6d 61 74 63 68 65 73 5b 34 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 34 5d 20 3a 20 27 2e ($matches[4]).?.$matches[4].:.'.
9ee60 30 27 29 3b 0a 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 0');..return.$version;.}..return
9ee80 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e .null;.}........private.function
9eea0 20 69 73 48 61 73 68 28 61 72 72 61 79 20 24 61 72 72 61 79 29 0a 7b 0a 72 65 74 75 72 6e 20 21 .isHash(array.$array).{.return.!
9eec0 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 31 2c 20 24 61 72 72 61 79 29 20 26 26 20 21 array_key_exists(1,.$array).&&.!
9eee0 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 30 2c 20 24 61 72 72 61 79 29 3b 0a 7d 0a 7d array_key_exists(0,.$array);.}.}
9ef00 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
9ef20 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 oser\Repository\Pear;.......clas
9ef40 73 20 50 61 63 6b 61 67 65 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 68 61 6e 6e 65 6c s.PackageInfo.{.private.$channel
9ef60 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 70 72 69 76 Name;.private.$packageName;.priv
9ef80 61 74 65 20 24 6c 69 63 65 6e 73 65 3b 0a 70 72 69 76 61 74 65 20 24 73 68 6f 72 74 44 65 73 63 ate.$license;.private.$shortDesc
9efa0 72 69 70 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 70 ription;.private.$description;.p
9efc0 72 69 76 61 74 65 20 24 72 65 6c 65 61 73 65 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 rivate.$releases;..........publi
9efe0 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 63 68 61 6e 6e 65 6c 4e c.function.__construct($channelN
9f000 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 6c 69 63 65 6e 73 65 2c 20 24 73 68 ame,.$packageName,.$license,.$sh
9f020 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 72 ortDescription,.$description,.$r
9f040 65 6c 65 61 73 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 eleases).{.$this->channelName.=.
9f060 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 $channelName;.$this->packageName
9f080 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 20 .=.$packageName;.$this->license.
9f0a0 3d 20 24 6c 69 63 65 6e 73 65 3b 0a 24 74 68 69 73 2d 3e 73 68 6f 72 74 44 65 73 63 72 69 70 74 =.$license;.$this->shortDescript
9f0c0 69 6f 6e 20 3d 20 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e ion.=.$shortDescription;.$this->
9f0e0 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 24 74 68 69 description.=.$description;.$thi
9f100 73 2d 3e 72 65 6c 65 61 73 65 73 20 3d 20 24 72 65 6c 65 61 73 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 s->releases.=.$releases;.}.....p
9f120 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 0a ublic.function.getChannelName().
9f140 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 7d 0a 0a {.return.$this->channelName;.}..
9f160 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 4e 61 6d ...public.function.getPackageNam
9f180 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 3b e().{.return.$this->packageName;
9f1a0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 .}.....public.function.getDescri
9f1c0 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 ption().{.return.$this->descript
9f1e0 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 68 ion;.}.....public.function.getSh
9f200 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ortDescription().{.return.$this-
9f220 3e 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 >shortDescription;.}.....public.
9f240 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 function.getLicense().{.return.$
9f260 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 this->license;.}.....public.func
9f280 74 69 6f 6e 20 67 65 74 52 65 6c 65 61 73 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 tion.getReleases().{.return.$thi
9f2a0 73 2d 3e 72 65 6c 65 61 73 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a s->releases;.}.}.<?php..........
9f2c0 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c ..namespace.Composer\Repository\
9f2e0 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 6c 65 61 73 65 49 6e 66 6f 0a 7b 0a Pear;.......class.ReleaseInfo.{.
9f300 70 72 69 76 61 74 65 20 24 73 74 61 62 69 6c 69 74 79 3b 0a 70 72 69 76 61 74 65 20 24 64 65 70 private.$stability;.private.$dep
9f320 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f endencyInfo;......public.functio
9f340 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 74 61 62 69 6c 69 74 79 2c 20 24 64 65 70 65 6e n.__construct($stability,.$depen
9f360 64 65 6e 63 79 49 6e 66 6f 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 20 dencyInfo).{.$this->stability.=.
9f380 24 73 74 61 62 69 6c 69 74 79 3b 0a 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 $stability;.$this->dependencyInf
9f3a0 6f 20 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 o.=.$dependencyInfo;.}.....publi
9f3c0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 29 0a 7b c.function.getDependencyInfo().{
9f3e0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 7d .return.$this->dependencyInfo;.}
9f400 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 .....public.function.getStabilit
9f420 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 3b 0a 7d y().{.return.$this->stability;.}
9f440 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
9f460 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 mposer\Repository;..use.Composer
9f480 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 \IO\IOInterface;.use.Composer\Se
9f4a0 6d 76 65 72 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 61 73 20 53 65 6d 76 65 72 56 65 72 73 mver\VersionParser.as.SemverVers
9f4c0 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c ionParser;.use.Composer\Package\
9f4e0 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f Version\VersionParser;.use.Compo
9f500 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 5c 43 68 61 6e 6e 65 6c 52 65 61 64 65 ser\Repository\Pear\ChannelReade
9f520 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 r;.use.Composer\Package\Complete
9f540 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 Package;.use.Composer\Repository
9f560 5c 50 65 61 72 5c 43 68 61 6e 6e 65 6c 49 6e 66 6f 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c \Pear\ChannelInfo;.use.Composer\
9f580 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b EventDispatcher\EventDispatcher;
9f5a0 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 3b 0a 75 73 65 20 .use.Composer\Package\Link;.use.
9f5c0 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 Composer\Semver\Constraint\Const
9f5e0 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 raint;.use.Composer\Util\RemoteF
9f600 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a ilesystem;.use.Composer\Config;.
9f620 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a use.Composer\Factory;...........
9f640 63 6c 61 73 73 20 50 65 61 72 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 class.PearRepository.extends.Arr
9f660 61 79 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 66 69 67 75 72 ayRepository.implements.Configur
9f680 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 ableRepositoryInterface.{.privat
9f6a0 65 20 24 75 72 6c 3b 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 72 66 e.$url;.private.$io;.private.$rf
9f6c0 73 3b 0a 70 72 69 76 61 74 65 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 70 72 69 76 61 s;.private.$versionParser;.priva
9f6e0 74 65 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 65 6e te.$repoConfig;.....private.$ven
9f700 64 6f 72 41 6c 69 61 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e dorAlias;..public.function.__con
9f720 73 74 72 75 63 74 28 61 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 65 struct(array.$repoConfig,.IOInte
9f740 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 rface.$io,.Config.$config,.Event
9f760 44 69 73 70 61 74 63 68 65 72 20 24 64 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 52 Dispatcher.$dispatcher.=.null,.R
9f780 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 emoteFilesystem.$rfs.=.null).{.p
9f7a0 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 3b 0a 69 66 20 28 21 70 72 65 67 5f arent::__construct();.if.(!preg_
9f7c0 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 7d 27 2c 20 24 72 65 70 6f 43 6f 6e 66 69 match('{^https?://}',.$repoConfi
9f7e0 67 5b 27 75 72 6c 27 5d 29 29 20 7b 0a 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 20 g['url'])).{.$repoConfig['url'].
9f800 3d 20 27 68 74 74 70 3a 2f 2f 27 2e 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 3b 0a =.'http://'.$repoConfig['url'];.
9f820 7d 0a 0a 24 75 72 6c 42 69 74 73 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 72 65 70 6f 43 6f 6e }..$urlBits.=.parse_url($repoCon
9f840 66 69 67 5b 27 75 72 6c 27 5d 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 75 72 6c 42 69 74 73 5b fig['url']);.if.(empty($urlBits[
9f860 27 73 63 68 65 6d 65 27 5d 29 20 7c 7c 20 65 6d 70 74 79 28 24 75 72 6c 42 69 74 73 5b 27 68 6f 'scheme']).||.empty($urlBits['ho
9f880 73 74 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 st'])).{.throw.new.\UnexpectedVa
9f8a0 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 75 72 6c 20 67 69 76 65 6e 20 lueException('Invalid.url.given.
9f8c0 66 6f 72 20 50 45 41 52 20 72 65 70 6f 73 69 74 6f 72 79 3a 20 27 2e 24 72 65 70 6f 43 6f 6e 66 for.PEAR.repository:.'.$repoConf
9f8e0 69 67 5b 27 75 72 6c 27 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 72 74 72 69 ig['url']);.}..$this->url.=.rtri
9f900 6d 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 2c 20 27 2f 27 29 3b 0a 24 74 68 69 m($repoConfig['url'],.'/');.$thi
9f920 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 73 20 3f s->io.=.$io;.$this->rfs.=.$rfs.?
9f940 3a 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 :.Factory::createRemoteFilesyste
9f960 6d 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 24 74 68 69 73 2d 3e 76 65 m($this->io,.$config);.$this->ve
9f980 6e 64 6f 72 41 6c 69 61 73 20 3d 20 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 76 ndorAlias.=.isset($repoConfig['v
9f9a0 65 6e 64 6f 72 2d 61 6c 69 61 73 27 5d 29 20 3f 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 76 65 endor-alias']).?.$repoConfig['ve
9f9c0 6e 64 6f 72 2d 61 6c 69 61 73 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 ndor-alias'].:.null;.$this->vers
9f9e0 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b ionParser.=.new.VersionParser();
9fa00 0a 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 .$this->repoConfig.=.$repoConfig
9fa20 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 43 6f 6e 66 ;.}..public.function.getRepoConf
9fa40 69 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 3b ig().{.return.$this->repoConfig;
9fa60 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a .}..protected.function.initializ
9fa80 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 74 68 e().{.parent::initialize();..$th
9faa0 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 49 6e 69 74 69 61 6c 69 7a 69 6e 67 is->io->writeError('Initializing
9fac0 20 50 45 41 52 20 72 65 70 6f 73 69 74 6f 72 79 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a .PEAR.repository.'.$this->url);.
9fae0 0a 24 72 65 61 64 65 72 20 3d 20 6e 65 77 20 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 28 24 74 68 .$reader.=.new.ChannelReader($th
9fb00 69 73 2d 3e 72 66 73 29 3b 0a 74 72 79 20 7b 0a 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 20 3d 20 24 is->rfs);.try.{.$channelInfo.=.$
9fb20 72 65 61 64 65 72 2d 3e 72 65 61 64 28 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 20 63 61 74 63 reader->read($this->url);.}.catc
9fb40 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 h.(\Exception.$e).{.$this->io->w
9fb60 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 50 45 41 52 20 72 65 70 6f 73 69 74 riteError('<warning>PEAR.reposit
9fb80 6f 72 79 20 66 72 6f 6d 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 63 6f 75 6c 64 20 6e 6f ory.from.'.$this->url.'.could.no
9fba0 74 20 62 65 20 6c 6f 61 64 65 64 2e 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e t.be.loaded..'.$e->getMessage().
9fbc0 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 70 61 63 6b 61 '</warning>');..return;.}.$packa
9fbe0 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 ges.=.$this->buildComposerPackag
9fc00 65 73 28 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 es($channelInfo,.$this->versionP
9fc20 61 72 73 65 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 arser);.foreach.($packages.as.$p
9fc40 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 ackage).{.$this->addPackage($pac
9fc60 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 kage);.}.}.........private.funct
9fc80 69 6f 6e 20 62 75 69 6c 64 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 73 28 43 68 61 6e 6e 65 ion.buildComposerPackages(Channe
9fca0 6c 49 6e 66 6f 20 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 2c 20 53 65 6d 76 65 72 56 65 72 73 69 6f lInfo.$channelInfo,.SemverVersio
9fcc0 6e 50 61 72 73 65 72 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 0a 7b 0a 24 72 65 73 75 6c nParser.$versionParser).{.$resul
9fce0 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 68 61 6e 6e 65 6c 49 6e t.=.array();.foreach.($channelIn
9fd00 66 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 44 65 66 fo->getPackages().as.$packageDef
9fd20 69 6e 69 74 69 6f 6e 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 44 65 66 69 inition).{.foreach.($packageDefi
9fd40 6e 69 74 69 6f 6e 2d 3e 67 65 74 52 65 6c 65 61 73 65 73 28 29 20 61 73 20 24 76 65 72 73 69 6f nition->getReleases().as.$versio
9fd60 6e 20 3d 3e 20 24 72 65 6c 65 61 73 65 49 6e 66 6f 29 20 7b 0a 74 72 79 20 7b 0a 24 6e 6f 72 6d n.=>.$releaseInfo).{.try.{.$norm
9fd80 61 6c 69 7a 65 64 56 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e alizedVersion.=.$versionParser->
9fda0 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 normalize($version);.}.catch.(\U
9fdc0 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 nexpectedValueException.$e).{.$t
9fde0 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 43 6f 75 6c 64 20 6e 6f 74 20 6c his->io->writeError('Could.not.l
9fe00 6f 61 64 20 27 2e 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 50 61 63 oad.'.$packageDefinition->getPac
9fe20 6b 61 67 65 4e 61 6d 65 28 29 2e 27 20 27 2e 24 76 65 72 73 69 6f 6e 2e 27 3a 20 27 2e 24 65 2d kageName().'.'.$version.':.'.$e-
9fe40 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 >getMessage(),.true,.IOInterface
9fe60 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 ::VERBOSE);.continue;.}..$compos
9fe80 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 6d 70 erPackageName.=.$this->buildComp
9fea0 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 oserPackageName($packageDefiniti
9fec0 6f 6e 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 2c 20 24 70 61 63 6b 61 67 65 44 65 on->getChannelName(),.$packageDe
9fee0 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 29 3b 0a 0a 0a 20 finition->getPackageName());....
9ff00 0a 20 24 75 72 6c 42 69 74 73 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d 3e 75 72 ..$urlBits.=.parse_url($this->ur
9ff20 6c 29 3b 0a 24 73 63 68 65 6d 65 20 3d 20 28 69 73 73 65 74 28 24 75 72 6c 42 69 74 73 5b 27 73 l);.$scheme.=.(isset($urlBits['s
9ff40 63 68 65 6d 65 27 5d 29 20 26 26 20 27 68 74 74 70 73 27 20 3d 3d 3d 20 24 75 72 6c 42 69 74 73 cheme']).&&.'https'.===.$urlBits
9ff60 5b 27 73 63 68 65 6d 65 27 5d 20 26 26 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 ['scheme'].&&.extension_loaded('
9ff80 6f 70 65 6e 73 73 6c 27 29 29 20 3f 20 27 68 74 74 70 73 27 20 3a 20 27 68 74 74 70 27 3b 0a 24 openssl')).?.'https'.:.'http';.$
9ffa0 64 69 73 74 55 72 6c 20 3d 20 22 7b 24 73 63 68 65 6d 65 7d 3a 2f 2f 7b 24 70 61 63 6b 61 67 65 distUrl.=."{$scheme}://{$package
9ffc0 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 7d 2f 67 65 Definition->getChannelName()}/ge
9ffe0 74 2f 7b 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 t/{$packageDefinition->getPackag
a0000 65 4e 61 6d 65 28 29 7d 2d 7b 24 76 65 72 73 69 6f 6e 7d 2e 74 67 7a 22 3b 0a 0a 24 72 65 71 75 eName()}-{$version}.tgz";..$requ
a0020 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 73 75 67 67 65 73 74 73 20 3d 20 61 72 72 61 ires.=.array();.$suggests.=.arra
a0040 79 28 29 3b 0a 24 63 6f 6e 66 6c 69 63 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 70 6c y();.$conflicts.=.array();.$repl
a0060 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 0a 20 69 66 20 28 24 63 68 61 6e 6e 65 aces.=.array();......if.($channe
a0080 6c 49 6e 66 6f 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 20 24 70 61 63 6b 61 67 65 44 65 66 69 lInfo->getName().==.$packageDefi
a00a0 6e 69 74 69 6f 6e 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 29 20 7b 0a 24 63 6f 6d nition->getChannelName()).{.$com
a00c0 70 6f 73 65 72 50 61 63 6b 61 67 65 41 6c 69 61 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 poserPackageAlias.=.$this->build
a00e0 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 63 68 61 6e 6e 65 6c 49 6e 66 6f ComposerPackageName($channelInfo
a0100 2d 3e 67 65 74 41 6c 69 61 73 28 29 2c 20 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e ->getAlias(),.$packageDefinition
a0120 2d 3e 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 29 3b 0a 24 61 6c 69 61 73 43 6f 6e 73 74 ->getPackageName());.$aliasConst
a0140 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 6e 6f raint.=.new.Constraint('==',.$no
a0160 72 6d 61 6c 69 7a 65 64 56 65 72 73 69 6f 6e 29 3b 0a 24 72 65 70 6c 61 63 65 73 5b 5d 20 3d 20 rmalizedVersion);.$replaces[].=.
a0180 6e 65 77 20 4c 69 6e 6b 28 24 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 new.Link($composerPackageName,.$
a01a0 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 41 6c 69 61 73 2c 20 24 61 6c 69 61 73 43 6f 6e 73 composerPackageAlias,.$aliasCons
a01c0 74 72 61 69 6e 74 2c 20 27 72 65 70 6c 61 63 65 73 27 2c 20 28 73 74 72 69 6e 67 29 20 24 61 6c traint,.'replaces',.(string).$al
a01e0 69 61 73 43 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 65 6d 70 74 79 28 iasConstraint);.}....if.(!empty(
a0200 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 41 6c 69 61 73 29 0a 26 26 20 28 24 74 68 69 73 2d 3e 76 $this->vendorAlias).&&.($this->v
a0220 65 6e 64 6f 72 41 6c 69 61 73 20 21 3d 20 27 70 65 61 72 2d 27 2e 24 63 68 61 6e 6e 65 6c 49 6e endorAlias.!=.'pear-'.$channelIn
a0240 66 6f 2d 3e 67 65 74 41 6c 69 61 73 28 29 20 7c 7c 20 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 2d 3e fo->getAlias().||.$channelInfo->
a0260 67 65 74 4e 61 6d 65 28 29 20 21 3d 20 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d getName().!=.$packageDefinition-
a0280 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 29 0a 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 >getChannelName()).).{.$composer
a02a0 50 61 63 6b 61 67 65 41 6c 69 61 73 20 3d 20 22 7b 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 41 6c PackageAlias.=."{$this->vendorAl
a02c0 69 61 73 7d 2f 7b 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 50 61 63 ias}/{$packageDefinition->getPac
a02e0 6b 61 67 65 4e 61 6d 65 28 29 7d 22 3b 0a 24 61 6c 69 61 73 43 6f 6e 73 74 72 61 69 6e 74 20 3d kageName()}";.$aliasConstraint.=
a0300 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 .new.Constraint('==',.$normalize
a0320 64 56 65 72 73 69 6f 6e 29 3b 0a 24 72 65 70 6c 61 63 65 73 5b 5d 20 3d 20 6e 65 77 20 4c 69 6e dVersion);.$replaces[].=.new.Lin
a0340 6b 28 24 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 63 6f 6d 70 6f 73 65 k($composerPackageName,.$compose
a0360 72 50 61 63 6b 61 67 65 41 6c 69 61 73 2c 20 24 61 6c 69 61 73 43 6f 6e 73 74 72 61 69 6e 74 2c rPackageAlias,.$aliasConstraint,
a0380 20 27 72 65 70 6c 61 63 65 73 27 2c 20 28 73 74 72 69 6e 67 29 20 24 61 6c 69 61 73 43 6f 6e 73 .'replaces',.(string).$aliasCons
a03a0 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 6c 65 61 73 65 49 6e 66 traint);.}..foreach.($releaseInf
a03c0 6f 2d 3e 67 65 74 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 29 2d 3e 67 65 74 52 65 71 75 69 o->getDependencyInfo()->getRequi
a03e0 72 65 73 28 29 20 61 73 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 29 20 res().as.$dependencyConstraint).
a0400 7b 0a 24 64 65 70 65 6e 64 65 6e 63 79 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 74 68 69 73 {.$dependencyPackageName.=.$this
a0420 2d 3e 62 75 69 6c 64 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 64 65 70 65 ->buildComposerPackageName($depe
a0440 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 ndencyConstraint->getChannelName
a0460 28 29 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 50 61 (),.$dependencyConstraint->getPa
a0480 63 6b 61 67 65 4e 61 6d 65 28 29 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 76 65 72 ckageName());.$constraint.=.$ver
a04a0 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 64 65 sionParser->parseConstraints($de
a04c0 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e pendencyConstraint->getConstrain
a04e0 74 28 29 29 3b 0a 24 6c 69 6e 6b 20 3d 20 6e 65 77 20 4c 69 6e 6b 28 24 63 6f 6d 70 6f 73 65 72 t());.$link.=.new.Link($composer
a0500 50 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 50 61 63 6b 61 67 65 4e PackageName,.$dependencyPackageN
a0520 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e ame,.$constraint,.$dependencyCon
a0540 73 74 72 61 69 6e 74 2d 3e 67 65 74 54 79 70 65 28 29 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 43 straint->getType(),.$dependencyC
a0560 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 73 77 69 onstraint->getConstraint());.swi
a0580 74 63 68 20 28 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 54 tch.($dependencyConstraint->getT
a05a0 79 70 65 28 29 29 20 7b 0a 63 61 73 65 20 27 72 65 71 75 69 72 65 64 27 3a 0a 24 72 65 71 75 69 ype()).{.case.'required':.$requi
a05c0 72 65 73 5b 5d 20 3d 20 24 6c 69 6e 6b 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 63 6f 6e 66 res[].=.$link;.break;.case.'conf
a05e0 6c 69 63 74 73 27 3a 0a 24 63 6f 6e 66 6c 69 63 74 73 5b 5d 20 3d 20 24 6c 69 6e 6b 3b 0a 62 72 licts':.$conflicts[].=.$link;.br
a0600 65 61 6b 3b 0a 63 61 73 65 20 27 72 65 70 6c 61 63 65 73 27 3a 0a 24 72 65 70 6c 61 63 65 73 5b eak;.case.'replaces':.$replaces[
a0620 5d 20 3d 20 24 6c 69 6e 6b 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 ].=.$link;.break;.}.}..foreach.(
a0640 24 72 65 6c 65 61 73 65 49 6e 66 6f 2d 3e 67 65 74 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 $releaseInfo->getDependencyInfo(
a0660 29 2d 3e 67 65 74 4f 70 74 69 6f 6e 61 6c 73 28 29 20 61 73 20 24 67 72 6f 75 70 20 3d 3e 20 24 )->getOptionals().as.$group.=>.$
a0680 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 73 29 20 7b 0a 66 6f 72 65 61 63 68 dependencyConstraints).{.foreach
a06a0 20 28 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 73 20 61 73 20 24 64 65 70 .($dependencyConstraints.as.$dep
a06c0 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 64 65 70 65 6e 64 65 6e 63 79 endencyConstraint).{.$dependency
a06e0 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 6d 70 6f 73 PackageName.=.$this->buildCompos
a0700 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 erPackageName($dependencyConstra
a0720 69 6e 74 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 2c 20 24 64 65 70 65 6e 64 65 6e int->getChannelName(),.$dependen
a0740 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 29 3b cyConstraint->getPackageName());
a0760 0a 24 73 75 67 67 65 73 74 73 5b 24 67 72 6f 75 70 2e 27 2d 27 2e 24 64 65 70 65 6e 64 65 6e 63 .$suggests[$group.'-'.$dependenc
a0780 79 50 61 63 6b 61 67 65 4e 61 6d 65 5d 20 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 yPackageName].=.$dependencyConst
a07a0 72 61 69 6e 74 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 3b 0a 7d 0a 7d 0a 0a 24 70 61 raint->getConstraint();.}.}..$pa
a07c0 63 6b 61 67 65 20 3d 20 6e 65 77 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 28 24 63 6f 6d ckage.=.new.CompletePackage($com
a07e0 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 64 56 65 72 poserPackageName,.$normalizedVer
a0800 73 69 6f 6e 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 54 79 sion,.$version);.$package->setTy
a0820 70 65 28 27 70 65 61 72 2d 6c 69 62 72 61 72 79 27 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 pe('pear-library');.$package->se
a0840 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d tDescription($packageDefinition-
a0860 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 >getDescription());.$package->se
a0880 74 4c 69 63 65 6e 73 65 28 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f tLicense(array($packageDefinitio
a08a0 6e 2d 3e 67 65 74 4c 69 63 65 6e 73 65 28 29 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 n->getLicense()));.$package->set
a08c0 44 69 73 74 54 79 70 65 28 27 66 69 6c 65 27 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 DistType('file');.$package->setD
a08e0 69 73 74 55 72 6c 28 24 64 69 73 74 55 72 6c 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 istUrl($distUrl);.$package->setA
a0900 75 74 6f 6c 6f 61 64 28 61 72 72 61 79 28 27 63 6c 61 73 73 6d 61 70 27 20 3d 3e 20 61 72 72 61 utoload(array('classmap'.=>.arra
a0920 79 28 27 27 29 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 6e 63 6c 75 64 65 50 61 74 y('')));.$package->setIncludePat
a0940 68 73 28 61 72 72 61 79 28 27 2f 27 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 71 hs(array('/'));.$package->setReq
a0960 75 69 72 65 73 28 24 72 65 71 75 69 72 65 73 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 43 uires($requires);.$package->setC
a0980 6f 6e 66 6c 69 63 74 73 28 24 63 6f 6e 66 6c 69 63 74 73 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e onflicts($conflicts);.$package->
a09a0 73 65 74 53 75 67 67 65 73 74 73 28 24 73 75 67 67 65 73 74 73 29 3b 0a 24 70 61 63 6b 61 67 65 setSuggests($suggests);.$package
a09c0 2d 3e 73 65 74 52 65 70 6c 61 63 65 73 28 24 72 65 70 6c 61 63 65 73 29 3b 0a 24 72 65 73 75 6c ->setReplaces($replaces);.$resul
a09e0 74 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 t[].=.$package;.}.}..return.$res
a0a00 75 6c 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 6f ult;.}..private.function.buildCo
a0a20 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 mposerPackageName($channelName,.
a0a40 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 69 66 20 28 27 70 68 70 27 20 3d 3d 3d 20 24 63 $packageName).{.if.('php'.===.$c
a0a60 68 61 6e 6e 65 6c 4e 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 22 70 68 70 22 3b 0a 7d 0a 69 66 hannelName).{.return."php";.}.if
a0a80 20 28 27 65 78 74 27 20 3d 3d 3d 20 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 29 20 7b 0a 72 65 74 75 .('ext'.===.$channelName).{.retu
a0aa0 72 6e 20 22 65 78 74 2d 7b 24 70 61 63 6b 61 67 65 4e 61 6d 65 7d 22 3b 0a 7d 0a 0a 72 65 74 75 rn."ext-{$packageName}";.}..retu
a0ac0 72 6e 20 22 70 65 61 72 2d 7b 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 7d 2f 7b 24 70 61 63 6b 61 67 rn."pear-{$channelName}/{$packag
a0ae0 65 4e 61 6d 65 7d 22 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 eName}";.}.}.<?php............na
a0b00 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 mespace.Composer\Repository;..us
a0b20 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c e.Composer\Config;.use.Composer\
a0b40 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f Package\PackageInterface;.use.Co
a0b60 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 3b 0a mposer\Package\CompletePackage;.
a0b80 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 use.Composer\Package\Version\Ver
a0ba0 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c sionParser;.use.Composer\Plugin\
a0bc0 50 6c 75 67 69 6e 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6c 61 74 66 PluginInterface;.....class.Platf
a0be0 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 6f 73 ormRepository.extends.ArrayRepos
a0c00 69 74 6f 72 79 0a 7b 0a 63 6f 6e 73 74 20 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 itory.{.const.PLATFORM_PACKAGE_R
a0c20 45 47 45 58 20 3d 20 27 7b 5e 28 3f 3a 70 68 70 28 3f 3a 2d 36 34 62 69 74 29 3f 7c 68 68 76 6d EGEX.=.'{^(?:php(?:-64bit)?|hhvm
a0c40 7c 28 3f 3a 65 78 74 7c 6c 69 62 29 2d 5b 5e 2f 5d 2b 29 24 7d 69 27 3b 0a 0a 0a 0a 0a 0a 0a 0a |(?:ext|lib)-[^/]+)$}i';........
a0c60 0a 70 72 69 76 61 74 65 20 24 6f 76 65 72 72 69 64 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a .private.$overrides.=.array();..
a0c80 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 public.function.__construct(arra
a0ca0 79 20 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 6f 76 y.$packages.=.array(),.array.$ov
a0cc0 65 72 72 69 64 65 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 6f errides.=.array()).{.foreach.($o
a0ce0 76 65 72 72 69 64 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 76 65 72 73 69 6f 6e 29 20 7b verrides.as.$name.=>.$version).{
a0d00 0a 24 74 68 69 73 2d 3e 6f 76 65 72 72 69 64 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 .$this->overrides[strtolower($na
a0d20 6d 65 29 5d 20 3d 20 61 72 72 61 79 28 27 6e 61 6d 65 27 20 3d 3e 20 24 6e 61 6d 65 2c 20 27 76 me)].=.array('name'.=>.$name,.'v
a0d40 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 0a 70 61 72 65 6e 74 3a 3a ersion'.=>.$version);.}.parent::
a0d60 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 70 72 6f 74 65 __construct($packages);.}..prote
a0d80 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 61 72 cted.function.initialize().{.par
a0da0 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 ent::initialize();..$versionPars
a0dc0 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 0a 0a 20 0a 20 66 er.=.new.VersionParser();......f
a0de0 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6f 76 65 72 72 69 64 65 73 20 61 73 20 24 6f 76 65 oreach.($this->overrides.as.$ove
a0e00 72 72 69 64 65 29 20 7b 0a 0a 20 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 73 65 6c 66 3a rride).{...if.(!preg_match(self:
a0e20 3a 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 6f 76 65 72 72 69 :PLATFORM_PACKAGE_REGEX,.$overri
a0e40 64 65 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 de['name'])).{.throw.new.\Invali
a0e60 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 70 6c 61 74 dArgumentException('Invalid.plat
a0e80 66 6f 72 6d 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 69 6e 20 63 6f 6e 66 69 67 2e 70 6c 61 74 form.package.name.in.config.plat
a0ea0 66 6f 72 6d 3a 20 27 2e 24 6f 76 65 72 72 69 64 65 5b 27 6e 61 6d 65 27 5d 29 3b 0a 7d 0a 0a 24 form:.'.$override['name']);.}..$
a0ec0 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c version.=.$versionParser->normal
a0ee0 69 7a 65 28 24 6f 76 65 72 72 69 64 65 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 24 70 61 63 6b ize($override['version']);.$pack
a0f00 61 67 65 20 3d 20 6e 65 77 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 28 24 6f 76 65 72 72 age.=.new.CompletePackage($overr
a0f20 69 64 65 5b 27 6e 61 6d 65 27 5d 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6f 76 65 72 72 69 64 65 ide['name'],.$version,.$override
a0f40 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 65 73 63 72 ['version']);.$package->setDescr
a0f60 69 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 20 63 iption('Package.overridden.via.c
a0f80 6f 6e 66 69 67 2e 70 6c 61 74 66 6f 72 6d 27 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 45 onfig.platform');.$package->setE
a0fa0 78 74 72 61 28 61 72 72 61 79 28 27 63 6f 6e 66 69 67 2e 70 6c 61 74 66 6f 72 6d 27 20 3d 3e 20 xtra(array('config.platform'.=>.
a0fc0 74 72 75 65 29 29 3b 0a 70 61 72 65 6e 74 3a 3a 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b true));.parent::addPackage($pack
a0fe0 61 67 65 29 3b 0a 7d 0a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 50 6c 75 67 69 6e age);.}..$prettyVersion.=.Plugin
a1000 49 6e 74 65 72 66 61 63 65 3a 3a 50 4c 55 47 49 4e 5f 41 50 49 5f 56 45 52 53 49 4f 4e 3b 0a 24 Interface::PLUGIN_API_VERSION;.$
a1020 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c version.=.$versionParser->normal
a1040 69 7a 65 28 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 50 6c ize($prettyVersion);.$composerPl
a1060 75 67 69 6e 41 70 69 20 3d 20 6e 65 77 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 28 27 63 uginApi.=.new.CompletePackage('c
a1080 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 2d 61 70 69 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 omposer-plugin-api',.$version,.$
a10a0 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 50 6c 75 67 69 6e 41 prettyVersion);.$composerPluginA
a10c0 70 69 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 54 68 65 20 43 6f 6d 70 6f 73 65 72 pi->setDescription('The.Composer
a10e0 20 50 6c 75 67 69 6e 20 41 50 49 27 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 .Plugin.API');.$this->addPackage
a1100 28 24 63 6f 6d 70 6f 73 65 72 50 6c 75 67 69 6e 41 70 69 29 3b 0a 0a 74 72 79 20 7b 0a 24 70 72 ($composerPluginApi);..try.{.$pr
a1120 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 50 48 50 5f 56 45 52 53 49 4f 4e 3b 0a 24 76 65 72 73 ettyVersion.=.PHP_VERSION;.$vers
a1140 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 ion.=.$versionParser->normalize(
a1160 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 $prettyVersion);.}.catch.(\Unexp
a1180 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 70 72 65 74 74 ectedValueException.$e).{.$prett
a11a0 79 56 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 23 5e 28 5b 5e 7e 2b yVersion.=.preg_replace('#^([^~+
a11c0 2d 5d 2b 29 2e 2a 24 23 27 2c 20 27 24 31 27 2c 20 50 48 50 5f 56 45 52 53 49 4f 4e 29 3b 0a 24 -]+).*$#',.'$1',.PHP_VERSION);.$
a11e0 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c version.=.$versionParser->normal
a1200 69 7a 65 28 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 24 70 68 70 20 3d 20 6e ize($prettyVersion);.}..$php.=.n
a1220 65 77 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 28 27 70 68 70 27 2c 20 24 76 65 72 73 69 ew.CompletePackage('php',.$versi
a1240 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 24 70 68 70 2d 3e 73 65 74 44 65 on,.$prettyVersion);.$php->setDe
a1260 73 63 72 69 70 74 69 6f 6e 28 27 54 68 65 20 50 48 50 20 69 6e 74 65 72 70 72 65 74 65 72 27 29 scription('The.PHP.interpreter')
a1280 3b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 70 68 70 29 3b 0a 0a 69 66 20 28 ;.$this->addPackage($php);..if.(
a12a0 50 48 50 5f 49 4e 54 5f 53 49 5a 45 20 3d 3d 3d 20 38 29 20 7b 0a 24 70 68 70 36 34 20 3d 20 6e PHP_INT_SIZE.===.8).{.$php64.=.n
a12c0 65 77 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 28 27 70 68 70 2d 36 34 62 69 74 27 2c 20 ew.CompletePackage('php-64bit',.
a12e0 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 24 70 68 70 36 $version,.$prettyVersion);.$php6
a1300 34 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 54 68 65 20 50 48 50 20 69 6e 74 65 72 4->setDescription('The.PHP.inter
a1320 70 72 65 74 65 72 2c 20 36 34 62 69 74 27 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 preter,.64bit');.$this->addPacka
a1340 67 65 28 24 70 68 70 36 34 29 3b 0a 7d 0a 0a 24 6c 6f 61 64 65 64 45 78 74 65 6e 73 69 6f 6e 73 ge($php64);.}..$loadedExtensions
a1360 20 3d 20 67 65 74 5f 6c 6f 61 64 65 64 5f 65 78 74 65 6e 73 69 6f 6e 73 28 29 3b 0a 0a 0a 20 66 .=.get_loaded_extensions();....f
a1380 6f 72 65 61 63 68 20 28 24 6c 6f 61 64 65 64 45 78 74 65 6e 73 69 6f 6e 73 20 61 73 20 24 6e 61 oreach.($loadedExtensions.as.$na
a13a0 6d 65 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6e 61 6d 65 2c 20 61 72 72 61 79 28 me).{.if.(in_array($name,.array(
a13c0 27 73 74 61 6e 64 61 72 64 27 2c 20 27 43 6f 72 65 27 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 'standard',.'Core'))).{.continue
a13e0 3b 0a 7d 0a 0a 24 72 65 66 6c 45 78 74 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 69 6f 6e 45 ;.}..$reflExt.=.new.\ReflectionE
a1400 78 74 65 6e 73 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 74 72 79 20 7b 0a 24 70 72 65 74 74 79 56 65 xtension($name);.try.{.$prettyVe
a1420 72 73 69 6f 6e 20 3d 20 24 72 65 66 6c 45 78 74 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a rsion.=.$reflExt->getVersion();.
a1440 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 $version.=.$versionParser->norma
a1460 6c 69 7a 65 28 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c lize($prettyVersion);.}.catch.(\
a1480 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 UnexpectedValueException.$e).{.$
a14a0 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 27 30 27 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 prettyVersion.=.'0';.$version.=.
a14c0 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 70 72 65 74 74 $versionParser->normalize($prett
a14e0 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 74 68 yVersion);.}..$packageName.=.$th
a1500 69 73 2d 3e 62 75 69 6c 64 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 6e 61 6d 65 29 3b 0a 24 65 78 is->buildPackageName($name);.$ex
a1520 74 20 3d 20 6e 65 77 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 t.=.new.CompletePackage($package
a1540 4e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b Name,.$version,.$prettyVersion);
a1560 0a 24 65 78 74 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 54 68 65 20 27 2e 24 6e 61 .$ext->setDescription('The.'.$na
a1580 6d 65 2e 27 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 me.'.PHP.extension');.$this->add
a15a0 50 61 63 6b 61 67 65 28 24 65 78 74 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 66 6f 72 65 61 63 68 20 Package($ext);.}........foreach.
a15c0 28 24 6c 6f 61 64 65 64 45 78 74 65 6e 73 69 6f 6e 73 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 ($loadedExtensions.as.$name).{.$
a15e0 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 24 64 65 73 63 72 69 70 74 69 prettyVersion.=.null;.$descripti
a1600 6f 6e 20 3d 20 27 54 68 65 20 27 2e 24 6e 61 6d 65 2e 27 20 50 48 50 20 6c 69 62 72 61 72 79 27 on.=.'The.'.$name.'.PHP.library'
a1620 3b 0a 73 77 69 74 63 68 20 28 24 6e 61 6d 65 29 20 7b 0a 63 61 73 65 20 27 63 75 72 6c 27 3a 0a ;.switch.($name).{.case.'curl':.
a1640 24 63 75 72 6c 56 65 72 73 69 6f 6e 20 3d 20 63 75 72 6c 5f 76 65 72 73 69 6f 6e 28 29 3b 0a 24 $curlVersion.=.curl_version();.$
a1660 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 24 63 75 72 6c 56 65 72 73 69 6f 6e 5b 27 76 65 prettyVersion.=.$curlVersion['ve
a1680 72 73 69 6f 6e 27 5d 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 69 63 6f 6e 76 27 3a 0a 24 rsion'];.break;..case.'iconv':.$
a16a0 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 49 43 4f 4e 56 5f 56 45 52 53 49 4f 4e 3b 0a 62 prettyVersion.=.ICONV_VERSION;.b
a16c0 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 69 6e 74 6c 27 3a 0a 24 6e 61 6d 65 20 3d 20 27 49 43 55 reak;..case.'intl':.$name.=.'ICU
a16e0 27 3b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 49 4e 54 4c 5f 49 43 55 5f 56 45 52 53 49 4f 4e ';.if.(defined('INTL_ICU_VERSION
a1700 27 29 29 20 7b 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 49 4e 54 4c 5f 49 43 55 5f ')).{.$prettyVersion.=.INTL_ICU_
a1720 56 45 52 53 49 4f 4e 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 66 6c 65 63 74 6f 72 20 3d 20 6e VERSION;.}.else.{.$reflector.=.n
a1740 65 77 20 5c 52 65 66 6c 65 63 74 69 6f 6e 45 78 74 65 6e 73 69 6f 6e 28 27 69 6e 74 6c 27 29 3b ew.\ReflectionExtension('intl');
a1760 0a 0a 6f 62 5f 73 74 61 72 74 28 29 3b 0a 24 72 65 66 6c 65 63 74 6f 72 2d 3e 69 6e 66 6f 28 29 ..ob_start();.$reflector->info()
a1780 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6f 62 5f 67 65 74 5f 63 6c 65 61 6e 28 29 3b 0a 0a 70 72 65 ;.$output.=.ob_get_clean();..pre
a17a0 67 5f 6d 61 74 63 68 28 27 2f 5e 49 43 55 20 76 65 72 73 69 6f 6e 20 3d 3e 20 28 2e 2a 29 24 2f g_match('/^ICU.version.=>.(.*)$/
a17c0 6d 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 6d 61 74 63 68 65 73 29 3b 0a 24 70 72 65 74 74 79 56 m',.$output,.$matches);.$prettyV
a17e0 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 3b 0a 7d 0a 0a 62 72 65 61 6b 3b 0a ersion.=.$matches[1];.}..break;.
a1800 0a 63 61 73 65 20 27 6c 69 62 78 6d 6c 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d .case.'libxml':.$prettyVersion.=
a1820 20 4c 49 42 58 4d 4c 5f 44 4f 54 54 45 44 5f 56 45 52 53 49 4f 4e 3b 0a 62 72 65 61 6b 3b 0a 0a .LIBXML_DOTTED_VERSION;.break;..
a1840 63 61 73 65 20 27 6f 70 65 6e 73 73 6c 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d case.'openssl':.$prettyVersion.=
a1860 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 7b 5e 28 3f 3a 4f 70 65 .preg_replace_callback('{^(?:Ope
a1880 6e 53 53 4c 5c 73 2a 29 3f 28 5b 30 2d 39 2e 5d 2b 29 28 5b 61 2d 7a 5d 2a 29 2e 2a 7d 27 2c 20 nSSL\s*)?([0-9.]+)([a-z]*).*}',.
a18a0 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 68 29 20 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 6d function.($match).{.if.(empty($m
a18c0 61 74 63 68 5b 32 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a atch[2])).{.return.$match[1];.}.
a18e0 0a 0a 20 0a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 7a 2a 5b 61 2d 7a 5d 24 .....if.(!preg_match('{^z*[a-z]$
a1900 7d 27 2c 20 24 6d 61 74 63 68 5b 32 5d 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 30 3b 0a 7d 0a }',.$match[2])).{...return.0;.}.
a1920 0a 24 6c 65 6e 20 3d 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 32 5d 29 3b 0a 24 70 61 74 63 .$len.=.strlen($match[2]);.$patc
a1940 68 56 65 72 73 69 6f 6e 20 3d 20 28 24 6c 65 6e 20 2d 20 31 29 20 2a 20 32 36 3b 20 0a 20 24 70 hVersion.=.($len.-.1).*.26;...$p
a1960 61 74 63 68 56 65 72 73 69 6f 6e 20 2b 3d 20 6f 72 64 28 24 6d 61 74 63 68 5b 32 5d 5b 24 6c 65 atchVersion.+=.ord($match[2][$le
a1980 6e 20 2d 20 31 5d 29 20 2d 20 39 36 3b 0a 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 31 5d 2e n.-.1]).-.96;..return.$match[1].
a19a0 27 2e 27 2e 24 70 61 74 63 68 56 65 72 73 69 6f 6e 3b 0a 7d 2c 20 4f 50 45 4e 53 53 4c 5f 56 45 '.'.$patchVersion;.},.OPENSSL_VE
a19c0 52 53 49 4f 4e 5f 54 45 58 54 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 4f 50 45 RSION_TEXT);..$description.=.OPE
a19e0 4e 53 53 4c 5f 56 45 52 53 49 4f 4e 5f 54 45 58 54 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 NSSL_VERSION_TEXT;.break;..case.
a1a00 27 70 63 72 65 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 'pcre':.$prettyVersion.=.preg_re
a1a20 70 6c 61 63 65 28 27 7b 5e 28 5c 53 2b 29 2e 2a 7d 27 2c 20 27 24 31 27 2c 20 50 43 52 45 5f 56 place('{^(\S+).*}',.'$1',.PCRE_V
a1a40 45 52 53 49 4f 4e 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 75 75 69 64 27 3a 0a 24 70 ERSION);.break;..case.'uuid':.$p
a1a60 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 70 68 70 76 65 72 73 69 6f 6e 28 27 75 75 69 64 27 rettyVersion.=.phpversion('uuid'
a1a80 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 78 73 6c 27 3a 0a 24 70 72 65 74 74 79 56 65 );.break;..case.'xsl':.$prettyVe
a1aa0 72 73 69 6f 6e 20 3d 20 4c 49 42 58 53 4c 54 5f 44 4f 54 54 45 44 5f 56 45 52 53 49 4f 4e 3b 0a rsion.=.LIBXSLT_DOTTED_VERSION;.
a1ac0 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 0a 20 63 6f 6e 74 69 6e 75 65 20 32 3b 0a 7d break;..default:...continue.2;.}
a1ae0 0a 0a 74 72 79 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 ..try.{.$version.=.$versionParse
a1b00 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 20 r->normalize($prettyVersion);.}.
a1b20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e catch.(\UnexpectedValueException
a1b40 20 24 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6c 69 62 20 3d 20 6e 65 77 20 43 .$e).{.continue;.}..$lib.=.new.C
a1b60 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 28 27 6c 69 62 2d 27 2e 24 6e 61 6d 65 2c 20 24 76 65 ompletePackage('lib-'.$name,.$ve
a1b80 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 24 6c 69 62 2d 3e 73 65 rsion,.$prettyVersion);.$lib->se
a1ba0 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 64 65 73 63 72 69 70 74 69 6f 6e 29 3b 0a 24 74 68 69 tDescription($description);.$thi
a1bc0 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 6c 69 62 29 3b 0a 7d 0a 0a 69 66 20 28 64 65 66 69 s->addPackage($lib);.}..if.(defi
a1be0 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 74 72 79 20 7b 0a 24 70 72 ned('HHVM_VERSION')).{.try.{.$pr
a1c00 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 48 48 56 4d 5f 56 45 52 53 49 4f 4e 3b 0a 24 76 65 72 ettyVersion.=.HHVM_VERSION;.$ver
a1c20 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 sion.=.$versionParser->normalize
a1c40 28 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 ($prettyVersion);.}.catch.(\Unex
a1c60 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 70 72 65 74 pectedValueException.$e).{.$pret
a1c80 74 79 56 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 23 5e 28 5b 5e 7e tyVersion.=.preg_replace('#^([^~
a1ca0 2b 2d 5d 2b 29 2e 2a 24 23 27 2c 20 27 24 31 27 2c 20 48 48 56 4d 5f 56 45 52 53 49 4f 4e 29 3b +-]+).*$#',.'$1',.HHVM_VERSION);
a1cc0 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d .$version.=.$versionParser->norm
a1ce0 61 6c 69 7a 65 28 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 24 68 68 76 6d 20 alize($prettyVersion);.}..$hhvm.
a1d00 3d 20 6e 65 77 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 28 27 68 68 76 6d 27 2c 20 24 76 =.new.CompletePackage('hhvm',.$v
a1d20 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 24 68 68 76 6d 2d 3e ersion,.$prettyVersion);.$hhvm->
a1d40 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 54 68 65 20 48 48 56 4d 20 52 75 6e 74 69 6d 65 setDescription('The.HHVM.Runtime
a1d60 20 28 36 34 62 69 74 29 27 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 68 .(64bit)');.$this->addPackage($h
a1d80 68 76 6d 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 hvm);.}.}.....public.function.ad
a1da0 64 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 dPackage(PackageInterface.$packa
a1dc0 67 65 29 0a 7b 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 76 65 72 72 69 64 ge).{...if.(isset($this->overrid
a1de0 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 es[strtolower($package->getName(
a1e00 29 29 5d 29 29 20 7b 0a 24 6f 76 65 72 72 69 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 ))])).{.$overrider.=.$this->find
a1e20 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 27 2a 27 Package($package->getName(),.'*'
a1e40 29 3b 0a 24 6f 76 65 72 72 69 64 65 72 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 6f );.$overrider->setDescription($o
a1e60 76 65 72 72 69 64 65 72 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 2e 27 20 28 61 63 verrider->getDescription().'.(ac
a1e80 74 75 61 6c 3a 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 tual:.'.$package->getPrettyVersi
a1ea0 6f 6e 28 29 2e 27 29 27 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 70 61 72 65 6e 74 3a 3a 61 64 on().')');..return;.}.parent::ad
a1ec0 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 dPackage($package);.}..private.f
a1ee0 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 6e 61 6d 65 29 0a unction.buildPackageName($name).
a1f00 7b 0a 72 65 74 75 72 6e 20 27 65 78 74 2d 27 20 2e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 20 {.return.'ext-'...str_replace('.
a1f20 27 2c 20 27 2d 27 2c 20 24 6e 61 6d 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a ',.'-',.$name);.}.}.<?php.......
a1f40 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f .....namespace.Composer\Reposito
a1f60 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 ry;..use.Composer\Factory;.use.C
a1f80 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 omposer\IO\IOInterface;.use.Comp
a1fa0 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 oser\Config;.use.Composer\EventD
a1fc0 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 ispatcher\EventDispatcher;.use.C
a1fe0 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 omposer\Util\RemoteFilesystem;.u
a2000 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 0a 0a 0a 0a 63 se.Composer\Json\JsonFile;.....c
a2020 6c 61 73 73 20 52 65 70 6f 73 69 74 6f 72 79 46 61 63 74 6f 72 79 0a 7b 0a 0a 0a 0a 70 75 62 6c lass.RepositoryFactory.{....publ
a2040 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 46 72 6f 6d 53 74 72 ic.static.function.configFromStr
a2060 69 6e 67 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e ing(IOInterface.$io,.Config.$con
a2080 66 69 67 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 2c 20 24 61 6c 6c 6f 77 46 69 6c 65 73 79 73 74 fig,.$repository,.$allowFilesyst
a20a0 65 6d 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 22 6a 73 6f 6e 22 20 3d 3d 3d 20 70 61 74 em.=.false).{.if.("json".===.pat
a20c0 68 69 6e 66 6f 28 24 72 65 70 6f 73 69 74 6f 72 79 2c 20 50 41 54 48 49 4e 46 4f 5f 45 58 54 45 hinfo($repository,.PATHINFO_EXTE
a20e0 4e 53 49 4f 4e 29 29 20 7b 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 NSION)).{.$json.=.new.JsonFile($
a2100 72 65 70 6f 73 69 74 6f 72 79 2c 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 repository,.Factory::createRemot
a2120 65 46 69 6c 65 73 79 73 74 65 6d 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 24 64 61 74 eFilesystem($io,.$config));.$dat
a2140 61 20 3d 20 24 6a 73 6f 6e 2d 3e 72 65 61 64 28 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 64 a.=.$json->read();.if.(!empty($d
a2160 61 74 61 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 64 61 74 61 ata['packages']).||.!empty($data
a2180 5b 27 69 6e 63 6c 75 64 65 73 27 5d 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 70 ['includes']).||.!empty($data['p
a21a0 72 6f 76 69 64 65 72 2d 69 6e 63 6c 75 64 65 73 27 5d 29 29 20 7b 0a 24 72 65 70 6f 43 6f 6e 66 rovider-includes'])).{.$repoConf
a21c0 69 67 20 3d 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 63 6f 6d 70 6f 73 65 72 27 2c ig.=.array('type'.=>.'composer',
a21e0 20 27 75 72 6c 27 20 3d 3e 20 27 66 69 6c 65 3a 2f 2f 27 20 2e 20 73 74 72 74 72 28 72 65 61 6c .'url'.=>.'file://'...strtr(real
a2200 70 61 74 68 28 24 72 65 70 6f 73 69 74 6f 72 79 29 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 3b 0a path($repository),.'\\',.'/'));.
a2220 7d 20 65 6c 73 65 69 66 20 28 24 61 6c 6c 6f 77 46 69 6c 65 73 79 73 74 65 6d 29 20 7b 0a 24 72 }.elseif.($allowFilesystem).{.$r
a2240 65 70 6f 43 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 66 69 6c epoConfig.=.array('type'.=>.'fil
a2260 65 73 79 73 74 65 6d 27 2c 20 27 6a 73 6f 6e 27 20 3d 3e 20 24 6a 73 6f 6e 29 3b 0a 7d 20 65 6c esystem',.'json'.=>.$json);.}.el
a2280 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 se.{.throw.new.\InvalidArgumentE
a22a0 78 63 65 70 74 69 6f 6e 28 22 49 6e 76 61 6c 69 64 20 72 65 70 6f 73 69 74 6f 72 79 20 55 52 4c xception("Invalid.repository.URL
a22c0 20 28 24 72 65 70 6f 73 69 74 6f 72 79 29 20 67 69 76 65 6e 2e 20 54 68 69 73 20 66 69 6c 65 20 .($repository).given..This.file.
a22e0 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 61 20 76 61 6c 69 64 20 63 6f 6d 70 6f 73 65 does.not.contain.a.valid.compose
a2300 72 20 72 65 70 6f 73 69 74 6f 72 79 2e 22 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 30 20 3d r.repository.");.}.}.elseif.(0.=
a2320 3d 3d 20 73 74 72 70 6f 73 28 24 72 65 70 6f 73 69 74 6f 72 79 2c 20 27 68 74 74 70 27 29 29 20 ==.strpos($repository,.'http')).
a2340 7b 0a 24 72 65 70 6f 43 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 {.$repoConfig.=.array('type'.=>.
a2360 27 63 6f 6d 70 6f 73 65 72 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 72 65 70 6f 73 69 74 6f 72 79 'composer',.'url'.=>.$repository
a2380 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 7b 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 72 65 70 );.}.elseif.('{'.===.substr($rep
a23a0 6f 73 69 74 6f 72 79 2c 20 30 2c 20 31 29 29 20 7b 0a 0a 20 24 72 65 70 6f 43 6f 6e 66 69 67 20 ository,.0,.1)).{...$repoConfig.
a23c0 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 =.JsonFile::parseJson($repositor
a23e0 79 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 y);.}.else.{.throw.new.\InvalidA
a2400 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 49 6e 76 61 6c 69 64 20 72 65 70 6f 73 69 rgumentException("Invalid.reposi
a2420 74 6f 72 79 20 75 72 6c 20 28 24 72 65 70 6f 73 69 74 6f 72 79 29 20 67 69 76 65 6e 2e 20 48 61 tory.url.($repository).given..Ha
a2440 73 20 74 6f 20 62 65 20 61 20 2e 6a 73 6f 6e 20 66 69 6c 65 2c 20 61 6e 20 68 74 74 70 20 75 72 s.to.be.a..json.file,.an.http.ur
a2460 6c 20 6f 72 20 61 20 4a 53 4f 4e 20 6f 62 6a 65 63 74 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e l.or.a.JSON.object.");.}..return
a2480 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 .$repoConfig;.}.....public.stati
a24a0 63 20 66 75 6e 63 74 69 6f 6e 20 66 72 6f 6d 53 74 72 69 6e 67 28 49 4f 49 6e 74 65 72 66 61 63 c.function.fromString(IOInterfac
a24c0 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 24 72 65 70 6f 73 69 74 6f e.$io,.Config.$config,.$reposito
a24e0 72 79 2c 20 24 61 6c 6c 6f 77 46 69 6c 65 73 79 73 74 65 6d 20 3d 20 66 61 6c 73 65 29 0a 7b 0a ry,.$allowFilesystem.=.false).{.
a2500 24 72 65 70 6f 43 6f 6e 66 69 67 20 3d 20 73 74 61 74 69 63 3a 3a 63 6f 6e 66 69 67 46 72 6f 6d $repoConfig.=.static::configFrom
a2520 53 74 72 69 6e 67 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 String($io,.$config,.$repository
a2540 2c 20 24 61 6c 6c 6f 77 46 69 6c 65 73 79 73 74 65 6d 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 61 ,.$allowFilesystem);..return.sta
a2560 74 69 63 3a 3a 63 72 65 61 74 65 52 65 70 6f 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 72 tic::createRepo($io,.$config,.$r
a2580 65 70 6f 43 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 epoConfig);.}.....public.static.
a25a0 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 52 65 70 6f 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 function.createRepo($io,.$config
a25c0 2c 20 61 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 29 0a 7b 0a 24 72 6d 20 3d 20 73 74 61 ,.array.$repoConfig).{.$rm.=.sta
a25e0 74 69 63 3a 3a 6d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 6e 75 6c 6c 2c tic::manager($io,.$config,.null,
a2600 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d .Factory::createRemoteFilesystem
a2620 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 24 72 65 70 6f 73 20 3d 20 73 74 61 74 69 63 ($io,.$config));.$repos.=.static
a2640 3a 3a 63 72 65 61 74 65 52 65 70 6f 73 28 24 72 6d 2c 20 61 72 72 61 79 28 24 72 65 70 6f 43 6f ::createRepos($rm,.array($repoCo
a2660 6e 66 69 67 29 29 3b 0a 0a 72 65 74 75 72 6e 20 72 65 73 65 74 28 24 72 65 70 6f 73 29 3b 0a 7d nfig));..return.reset($repos);.}
a2680 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 61 .....public.static.function.defa
a26a0 75 6c 74 52 65 70 6f 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d 20 6e 75 6c 6c 2c ultRepos(IOInterface.$io.=.null,
a26c0 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 2c 20 52 65 70 6f 73 69 74 6f .Config.$config.=.null,.Reposito
a26e0 72 79 4d 61 6e 61 67 65 72 20 24 72 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 24 63 6f ryManager.$rm.=.null).{.if.(!$co
a2700 6e 66 69 67 29 20 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 nfig).{.$config.=.Factory::creat
a2720 65 43 6f 6e 66 69 67 28 24 69 6f 29 3b 0a 7d 0a 69 66 20 28 21 24 72 6d 29 20 7b 0a 69 66 20 28 eConfig($io);.}.if.(!$rm).{.if.(
a2740 21 24 69 6f 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 !$io).{.throw.new.\InvalidArgume
a2760 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 69 ntException('This.function.requi
a2780 72 65 73 20 65 69 74 68 65 72 20 61 6e 20 49 4f 49 6e 74 65 72 66 61 63 65 20 6f 72 20 61 20 52 res.either.an.IOInterface.or.a.R
a27a0 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 27 29 3b 0a 7d 0a 24 72 6d 20 3d 20 73 74 61 74 epositoryManager');.}.$rm.=.stat
a27c0 69 63 3a 3a 6d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 6e 75 6c 6c 2c 20 ic::manager($io,.$config,.null,.
a27e0 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 Factory::createRemoteFilesystem(
a2800 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 61 74 69 63 $io,.$config));.}..return.static
a2820 3a 3a 63 72 65 61 74 65 52 65 70 6f 73 28 24 72 6d 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 52 ::createRepos($rm,.$config->getR
a2840 65 70 6f 73 69 74 6f 72 69 65 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 epositories());.}.........public
a2860 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 6e 61 67 65 72 28 49 4f 49 6e 74 65 72 .static.function.manager(IOInter
a2880 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 44 face.$io,.Config.$config,.EventD
a28a0 69 73 70 61 74 63 68 65 72 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c ispatcher.$eventDispatcher.=.nul
a28c0 6c 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 l,.RemoteFilesystem.$rfs.=.null)
a28e0 0a 7b 0a 24 72 6d 20 3d 20 6e 65 77 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 24 .{.$rm.=.new.RepositoryManager($
a2900 69 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 io,.$config,.$eventDispatcher,.$
a2920 72 66 73 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 63 rfs);.$rm->setRepositoryClass('c
a2940 6f 6d 70 6f 73 65 72 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 omposer',.'Composer\Repository\C
a2960 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 omposerRepository');.$rm->setRep
a2980 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 76 63 73 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 ositoryClass('vcs',.'Composer\Re
a29a0 70 6f 73 69 74 6f 72 79 5c 56 63 73 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 pository\VcsRepository');.$rm->s
a29c0 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 70 61 63 6b 61 67 65 27 2c 20 27 43 6f etRepositoryClass('package',.'Co
a29e0 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 61 63 6b 61 67 65 52 65 70 6f 73 69 74 mposer\Repository\PackageReposit
a2a00 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 ory');.$rm->setRepositoryClass('
a2a20 70 65 61 72 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 pear',.'Composer\Repository\Pear
a2a40 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 Repository');.$rm->setRepository
a2a60 43 6c 61 73 73 28 27 67 69 74 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 Class('git',.'Composer\Repositor
a2a80 79 5c 56 63 73 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 y\VcsRepository');.$rm->setRepos
a2aa0 69 74 6f 72 79 43 6c 61 73 73 28 27 67 69 74 6c 61 62 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 itoryClass('gitlab',.'Composer\R
a2ac0 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e epository\VcsRepository');.$rm->
a2ae0 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 73 76 6e 27 2c 20 27 43 6f 6d 70 6f setRepositoryClass('svn',.'Compo
a2b00 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a ser\Repository\VcsRepository');.
a2b20 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 70 65 72 66 6f 72 63 $rm->setRepositoryClass('perforc
a2b40 65 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 52 65 70 6f e',.'Composer\Repository\VcsRepo
a2b60 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 sitory');.$rm->setRepositoryClas
a2b80 73 28 27 68 67 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 s('hg',.'Composer\Repository\Vcs
a2ba0 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 Repository');.$rm->setRepository
a2bc0 43 6c 61 73 73 28 27 61 72 74 69 66 61 63 74 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f Class('artifact',.'Composer\Repo
a2be0 73 69 74 6f 72 79 5c 41 72 74 69 66 61 63 74 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d sitory\ArtifactRepository');.$rm
a2c00 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 70 61 74 68 27 2c 20 27 43 6f ->setRepositoryClass('path',.'Co
a2c20 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 61 74 68 52 65 70 6f 73 69 74 6f 72 79 mposer\Repository\PathRepository
a2c40 27 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 ');..return.$rm;.}.....private.s
a2c60 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 52 65 70 6f 73 28 52 65 70 6f 73 tatic.function.createRepos(Repos
a2c80 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 72 6d 2c 20 61 72 72 61 79 20 24 72 65 70 6f 43 6f 6e itoryManager.$rm,.array.$repoCon
a2ca0 66 69 67 73 29 0a 7b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 figs).{.$repos.=.array();..forea
a2cc0 63 68 20 28 24 72 65 70 6f 43 6f 6e 66 69 67 73 20 61 73 20 24 69 6e 64 65 78 20 3d 3e 20 24 72 ch.($repoConfigs.as.$index.=>.$r
a2ce0 65 70 6f 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 72 65 70 6f 29 29 20 7b 0a 74 epo).{.if.(is_string($repo)).{.t
a2d00 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 hrow.new.\UnexpectedValueExcepti
a2d20 6f 6e 28 27 22 72 65 70 6f 73 69 74 6f 72 69 65 73 22 20 73 68 6f 75 6c 64 20 62 65 20 61 6e 20 on('"repositories".should.be.an.
a2d40 61 72 72 61 79 20 6f 66 20 72 65 70 6f 73 69 74 6f 72 79 20 64 65 66 69 6e 69 74 69 6f 6e 73 2c array.of.repository.definitions,
a2d60 20 6f 6e 6c 79 20 61 20 73 69 6e 67 6c 65 20 72 65 70 6f 73 69 74 6f 72 79 20 77 61 73 20 67 69 .only.a.single.repository.was.gi
a2d80 76 65 6e 27 29 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 72 65 70 6f 29 29 20 7b ven');.}.if.(!is_array($repo)).{
a2da0 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 .throw.new.\UnexpectedValueExcep
a2dc0 74 69 6f 6e 28 27 52 65 70 6f 73 69 74 6f 72 79 20 22 27 2e 24 69 6e 64 65 78 2e 27 22 20 28 27 tion('Repository."'.$index.'".('
a2de0 2e 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 72 65 70 6f 29 2e 27 29 20 73 68 6f 75 6c 64 20 62 65 .json_encode($repo).').should.be
a2e00 20 61 6e 20 61 72 72 61 79 2c 20 27 2e 67 65 74 74 79 70 65 28 24 72 65 70 6f 29 2e 27 20 67 69 .an.array,.'.gettype($repo).'.gi
a2e20 76 65 6e 27 29 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 72 65 70 6f 5b 27 74 79 70 65 27 ven');.}.if.(!isset($repo['type'
a2e40 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 ])).{.throw.new.\UnexpectedValue
a2e60 45 78 63 65 70 74 69 6f 6e 28 27 52 65 70 6f 73 69 74 6f 72 79 20 22 27 2e 24 69 6e 64 65 78 2e Exception('Repository."'.$index.
a2e80 27 22 20 28 27 2e 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 72 65 70 6f 29 2e 27 29 20 6d 75 73 74 '".('.json_encode($repo).').must
a2ea0 20 68 61 76 65 20 61 20 74 79 70 65 20 64 65 66 69 6e 65 64 27 29 3b 0a 7d 0a 24 6e 61 6d 65 20 .have.a.type.defined');.}.$name.
a2ec0 3d 20 69 73 5f 69 6e 74 28 24 69 6e 64 65 78 29 20 26 26 20 69 73 73 65 74 28 24 72 65 70 6f 5b =.is_int($index).&&.isset($repo[
a2ee0 27 75 72 6c 27 5d 29 20 3f 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 68 74 74 70 73 3f 'url']).?.preg_replace('{^https?
a2f00 3a 2f 2f 7d 69 27 2c 20 27 27 2c 20 24 72 65 70 6f 5b 27 75 72 6c 27 5d 29 20 3a 20 24 69 6e 64 ://}i',.'',.$repo['url']).:.$ind
a2f20 65 78 3b 0a 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 72 65 70 6f 73 5b 24 6e 61 6d 65 5d 29 29 ex;.while.(isset($repos[$name]))
a2f40 20 7b 0a 24 6e 61 6d 65 20 2e 3d 20 27 32 27 3b 0a 7d 0a 69 66 20 28 24 72 65 70 6f 5b 27 74 79 .{.$name..=.'2';.}.if.($repo['ty
a2f60 70 65 27 5d 20 3d 3d 3d 20 27 66 69 6c 65 73 79 73 74 65 6d 27 29 20 7b 0a 24 72 65 70 6f 73 5b pe'].===.'filesystem').{.$repos[
a2f80 24 6e 61 6d 65 5d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 $name].=.new.FilesystemRepositor
a2fa0 79 28 24 72 65 70 6f 5b 27 6a 73 6f 6e 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 70 6f y($repo['json']);.}.else.{.$repo
a2fc0 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 72 6d 2d 3e 63 72 65 61 74 65 52 65 70 6f 73 69 74 6f 72 79 s[$name].=.$rm->createRepository
a2fe0 28 24 72 65 70 6f 5b 27 74 79 70 65 27 5d 2c 20 24 72 65 70 6f 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 ($repo['type'],.$repo);.}.}..ret
a3000 75 72 6e 20 24 72 65 70 6f 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a urn.$repos;.}.}.<?php...........
a3020 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a .namespace.Composer\Repository;.
a3040 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 .use.Composer\Package\PackageInt
a3060 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 52 65 70 6f 73 69 erface;.........interface.Reposi
a3080 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 5c 43 6f 75 6e 74 61 62 6c 65 toryInterface.extends.\Countable
a30a0 0a 7b 0a 63 6f 6e 73 74 20 53 45 41 52 43 48 5f 46 55 4c 4c 54 45 58 54 20 3d 20 30 3b 0a 63 6f .{.const.SEARCH_FULLTEXT.=.0;.co
a30c0 6e 73 74 20 53 45 41 52 43 48 5f 4e 41 4d 45 20 3d 20 31 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 nst.SEARCH_NAME.=.1;.........pub
a30e0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 lic.function.hasPackage(PackageI
a3100 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 nterface.$package);..........pub
a3120 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 lic.function.findPackage($name,.
a3140 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 $constraint);..........public.fu
a3160 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 nction.findPackages($name,.$cons
a3180 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e traint.=.null);.......public.fun
a31a0 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ction.getPackages();.........pub
a31c0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 28 24 71 75 65 72 79 2c 20 24 6d 6f 64 lic.function.search($query,.$mod
a31e0 65 20 3d 20 30 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 e.=.0);.}.<?php............names
a3200 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 pace.Composer\Repository;..use.C
a3220 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 omposer\IO\IOInterface;.use.Comp
a3240 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 oser\Config;.use.Composer\EventD
a3260 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 ispatcher\EventDispatcher;.use.C
a3280 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 omposer\Package\PackageInterface
a32a0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 ;.use.Composer\Util\RemoteFilesy
a32c0 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 stem;.........class.RepositoryMa
a32e0 6e 61 67 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 nager.{.private.$localRepository
a3300 3b 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 28 ;.private.$repositories.=.array(
a3320 29 3b 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 65 73 20 3d 20 );.private.$repositoryClasses.=.
a3340 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 63 array();.private.$io;.private.$c
a3360 6f 6e 66 69 67 3b 0a 70 72 69 76 61 74 65 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b onfig;.private.$eventDispatcher;
a3380 0a 70 72 69 76 61 74 65 20 24 72 66 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 .private.$rfs;..public.function.
a33a0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e __construct(IOInterface.$io,.Con
a33c0 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 24 65 76 fig.$config,.EventDispatcher.$ev
a33e0 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 52 65 6d 6f 74 65 46 69 6c 65 entDispatcher.=.null,.RemoteFile
a3400 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 system.$rfs.=.null).{.$this->io.
a3420 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a =.$io;.$this->config.=.$config;.
a3440 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 24 65 76 65 6e 74 44 $this->eventDispatcher.=.$eventD
a3460 69 73 70 61 74 63 68 65 72 3b 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 73 3b 0a 7d 0a ispatcher;.$this->rfs.=.$rfs;.}.
a3480 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 .........public.function.findPac
a34a0 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 7b 0a 66 6f 72 65 61 kage($name,.$constraint).{.forea
a34c0 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f ch.($this->repositories.as.$repo
a34e0 73 69 74 6f 72 79 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 3d 20 24 72 65 70 6f 73 69 sitory).{.if.($package.=.$reposi
a3500 74 6f 72 79 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 tory->findPackage($name,.$constr
a3520 61 69 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a aint)).{.return.$package;.}.}.}.
a3540 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 .........public.function.findPac
a3560 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 7b 0a 24 70 61 63 kages($name,.$constraint).{.$pac
a3580 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 kages.=.array();..foreach.($this
a35a0 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b ->repositories.as.$repository).{
a35c0 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 70 61 63 6b 61 67 .$packages.=.array_merge($packag
a35e0 65 73 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 6e es,.$repository->findPackages($n
a3600 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 ame,.$constraint));.}..return.$p
a3620 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ackages;.}.......public.function
a3640 20 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 .addRepository(RepositoryInterfa
a3660 63 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 ce.$repository).{.$this->reposit
a3680 6f 72 69 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ories[].=.$repository;.}........
a36a0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 65 70 65 6e 64 52 65 70 6f 73 69 74 6f .public.function.prependReposito
a36c0 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 69 74 6f ry(RepositoryInterface.$reposito
a36e0 72 79 29 0a 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 ry).{.array_unshift($this->repos
a3700 69 74 6f 72 69 65 73 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a itories,.$repository);.}........
a3720 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 52 65 70 6f 73 69 74 6f ..public.function.createReposito
a3740 72 79 28 24 74 79 70 65 2c 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 ry($type,.$config).{.if.(!isset(
a3760 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 65 73 5b 24 74 79 70 65 5d 29 $this->repositoryClasses[$type])
a3780 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 ).{.throw.new.\InvalidArgumentEx
a37a0 63 65 70 74 69 6f 6e 28 27 52 65 70 6f 73 69 74 6f 72 79 20 74 79 70 65 20 69 73 20 6e 6f 74 20 ception('Repository.type.is.not.
a37c0 72 65 67 69 73 74 65 72 65 64 3a 20 27 2e 24 74 79 70 65 29 3b 0a 7d 0a 0a 24 63 6c 61 73 73 20 registered:.'.$type);.}..$class.
a37e0 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 65 73 5b 24 74 79 70 65 =.$this->repositoryClasses[$type
a3800 5d 3b 0a 0a 24 72 65 66 6c 4d 65 74 68 6f 64 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 69 6f ];..$reflMethod.=.new.\Reflectio
a3820 6e 4d 65 74 68 6f 64 28 24 63 6c 61 73 73 2c 20 27 5f 5f 63 6f 6e 73 74 72 75 63 74 27 29 3b 0a nMethod($class,.'__construct');.
a3840 24 70 61 72 61 6d 73 20 3d 20 24 72 65 66 6c 4d 65 74 68 6f 64 2d 3e 67 65 74 50 61 72 61 6d 65 $params.=.$reflMethod->getParame
a3860 74 65 72 73 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 70 61 72 61 6d 73 5b 34 5d 29 20 26 26 ters();.if.(isset($params[4]).&&
a3880 20 24 70 61 72 61 6d 73 5b 34 5d 2d 3e 67 65 74 43 6c 61 73 73 28 29 20 26 26 20 24 70 61 72 61 .$params[4]->getClass().&&.$para
a38a0 6d 73 5b 34 5d 2d 3e 67 65 74 43 6c 61 73 73 28 29 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d ms[4]->getClass()->getName().===
a38c0 20 27 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d .'Composer\Util\RemoteFilesystem
a38e0 27 29 20 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 24 63 6c 61 73 73 28 24 63 6f 6e 66 69 67 2c 20 ').{.return.new.$class($config,.
a3900 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d $this->io,.$this->config,.$this-
a3920 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 74 68 69 73 2d 3e 72 66 73 29 3b 0a 7d >eventDispatcher,.$this->rfs);.}
a3940 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 24 63 6c 61 73 73 28 24 63 6f 6e 66 69 67 2c 20 24 74 68 ..return.new.$class($config,.$th
a3960 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 65 76 is->io,.$this->config,.$this->ev
a3980 65 6e 74 44 69 73 70 61 74 63 68 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 entDispatcher);.}........public.
a39a0 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 24 74 79 70 function.setRepositoryClass($typ
a39c0 65 2c 20 24 63 6c 61 73 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 43 6c e,.$class).{.$this->repositoryCl
a39e0 61 73 73 65 73 5b 24 74 79 70 65 5d 20 3d 20 24 63 6c 61 73 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 asses[$type].=.$class;.}.......p
a3a00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 ublic.function.getRepositories()
a3a20 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d .{.return.$this->repositories;.}
a3a40 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 6f 63 61 6c 52 .......public.function.setLocalR
a3a60 65 70 6f 73 69 74 6f 72 79 28 57 72 69 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 epository(WritableRepositoryInte
a3a80 72 66 61 63 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 63 61 rface.$repository).{.$this->loca
a3aa0 6c 52 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a lRepository.=.$repository;.}....
a3ac0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 ...public.function.getLocalRepos
a3ae0 69 74 6f 72 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 61 6c 52 65 70 itory().{.return.$this->localRep
a3b00 6f 73 69 74 6f 72 79 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 ository;.}.}.<?php............na
a3b20 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a mespace.Composer\Repository;....
a3b40 0a 0a 0a 63 6c 61 73 73 20 52 65 70 6f 73 69 74 6f 72 79 53 65 63 75 72 69 74 79 45 78 63 65 70 ...class.RepositorySecurityExcep
a3b60 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d 0a 3c 3f 70 68 tion.extends.\Exception.{.}.<?ph
a3b80 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c p............namespace.Composer\
a3ba0 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 61 Repository\Vcs;..use.Composer\Ca
a3bc0 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f che;.use.Composer\Config;.use.Co
a3be0 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 mposer\Json\JsonFile;.use.Compos
a3c00 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 er\IO\IOInterface;.....class.Git
a3c20 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 BitbucketDriver.extends.VcsDrive
a3c40 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 0a r.implements.VcsDriverInterface.
a3c60 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f {.protected.$cache;.protected.$o
a3c80 77 6e 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 70 72 6f wner;.protected.$repository;.pro
a3ca0 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 tected.$tags;.protected.$branche
a3cc0 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 70 72 s;.protected.$rootIdentifier;.pr
a3ce0 6f 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a otected.$infoCache.=.array();...
a3d00 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b ..public.function.initialize().{
a3d20 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 68 74 74 70 73 3f 3a 2f 2f 62 69 74 62 75 63 6b 65 .preg_match('#^https?://bitbucke
a3d40 74 5c 2e 6f 72 67 2f 28 5b 5e 2f 5d 2b 29 2f 28 2e 2b 3f 29 5c 2e 67 69 74 24 23 27 2c 20 24 74 t\.org/([^/]+)/(.+?)\.git$#',.$t
a3d60 68 69 73 2d 3e 75 72 6c 2c 20 24 6d 61 74 63 68 29 3b 0a 24 74 68 69 73 2d 3e 6f 77 6e 65 72 20 his->url,.$match);.$this->owner.
a3d80 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d =.$match[1];.$this->repository.=
a3da0 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 20 27 .$match[2];.$this->originUrl.=.'
a3dc0 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 27 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 6e bitbucket.org';.$this->cache.=.n
a3de0 65 77 20 43 61 63 68 65 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 ew.Cache($this->io,.$this->confi
a3e00 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 29 2e 27 2f 27 2e 24 74 68 g->get('cache-repo-dir').'/'.$th
a3e20 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 is->originUrl.'/'.$this->owner.'
a3e40 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 /'.$this->repository);.}.....pub
a3e60 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 lic.function.getRootIdentifier()
a3e80 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 .{.if.(null.===.$this->rootIdent
a3ea0 69 66 69 65 72 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 ifier).{.$resource.=.$this->getS
a3ec0 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f cheme()...'://api.bitbucket.org/
a3ee0 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 1.0/repositories/'.$this->owner.
a3f00 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 3b 0a 24 72 65 70 6f 44 61 74 61 '/'.$this->repository;.$repoData
a3f20 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 .=.JsonFile::parseJson($this->ge
a3f40 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 tContents($resource),.$resource)
a3f60 3b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 21 65 6d 70 74 79 ;.$this->rootIdentifier.=.!empty
a3f80 28 24 72 65 70 6f 44 61 74 61 5b 27 6d 61 69 6e 5f 62 72 61 6e 63 68 27 5d 29 20 3f 20 24 72 65 ($repoData['main_branch']).?.$re
a3fa0 70 6f 44 61 74 61 5b 27 6d 61 69 6e 5f 62 72 61 6e 63 68 27 5d 20 3a 20 27 6d 61 73 74 65 72 27 poData['main_branch'].:.'master'
a3fc0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 ;.}..return.$this->rootIdentifie
a3fe0 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 r;.}.....public.function.getUrl(
a4000 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 ).{.return.$this->url;.}.....pub
a4020 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 lic.function.getSource($identifi
a4040 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 67 69 er).{.return.array('type'.=>.'gi
a4060 74 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 28 29 2c 20 27 72 t',.'url'.=>.$this->getUrl(),.'r
a4080 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 0a 0a eference'.=>.$identifier);.}....
a40a0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 .public.function.getDist($identi
a40c0 66 69 65 72 29 0a 7b 0a 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 fier).{.$url.=.$this->getScheme(
a40e0 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 27 2e 24 74 68 69 73 2d 3e 6f )...'://bitbucket.org/'.$this->o
a4100 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 67 65 74 wner.'/'.$this->repository.'/get
a4120 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 2e 27 2e 7a 69 70 27 3b 0a 0a 72 65 74 75 72 6e 20 61 /'.$identifier.'.zip';..return.a
a4140 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 7a 69 70 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 rray('type'.=>.'zip',.'url'.=>.$
a4160 75 72 6c 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 2c url,.'reference'.=>.$identifier,
a4180 20 27 73 68 61 73 75 6d 27 20 3d 3e 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .'shasum'.=>.'');.}.....public.f
a41a0 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 unction.getComposerInformation($
a41c0 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b identifier).{.if.(preg_match('{[
a41e0 61 2d 66 30 2d 39 5d 7b 34 30 7d 7d 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 20 26 26 20 a-f0-9]{40}}i',.$identifier).&&.
a4200 24 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 69 64 65 6e 74 $res.=.$this->cache->read($ident
a4220 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e ifier)).{.$this->infoCache[$iden
a4240 74 69 66 69 65 72 5d 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 72 tifier].=.JsonFile::parseJson($r
a4260 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 es);.}..if.(!isset($this->infoCa
a4280 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d che[$identifier])).{.$resource.=
a42a0 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 .$this->getScheme()...'://bitbuc
a42c0 6b 65 74 2e 6f 72 67 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 ket.org/'.$this->owner.'/'.$this
a42e0 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 72 61 77 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 ->repository.'/raw/'.$identifier
a4300 2e 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 .'/composer.json';.$composer.=.$
a4320 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 3b 0a 69 66 this->getContents($resource);.if
a4340 20 28 21 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 70 .(!$composer).{.return;.}..$comp
a4360 6f 73 65 72 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f 6d 70 oser.=.JsonFile::parseJson($comp
a4380 6f 73 65 72 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 63 6f oser,.$resource);..if.(empty($co
a43a0 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 mposer['time'])).{.$resource.=.$
a43c0 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e 62 69 74 62 this->getScheme()...'://api.bitb
a43e0 75 63 6b 65 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 ucket.org/1.0/repositories/'.$th
a4400 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e is->owner.'/'.$this->repository.
a4420 27 2f 63 68 61 6e 67 65 73 65 74 73 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 63 68 61 '/changesets/'.$identifier;.$cha
a4440 6e 67 65 73 65 74 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 ngeset.=.JsonFile::parseJson($th
a4460 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 is->getContents($resource),.$res
a4480 6f 75 72 63 65 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 63 68 61 ource);.$composer['time'].=.$cha
a44a0 6e 67 65 73 65 74 5b 27 74 69 6d 65 73 74 61 6d 70 27 5d 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 ngeset['timestamp'];.}..if.(preg
a44c0 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 7d 69 27 2c 20 24 69 64 65 6e 74 _match('{[a-f0-9]{40}}i',.$ident
a44e0 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 77 72 69 74 65 28 24 69 ifier)).{.$this->cache->write($i
a4500 64 65 6e 74 69 66 69 65 72 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 63 6f 6d 70 6f 73 65 72 dentifier,.json_encode($composer
a4520 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 ));.}..$this->infoCache[$identif
a4540 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 ier].=.$composer;.}..return.$thi
a4560 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 7d 0a 0a 0a 0a s->infoCache[$identifier];.}....
a4580 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 69 66 20 .public.function.getTags().{.if.
a45a0 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 61 67 73 29 20 7b 0a 24 72 65 73 6f 75 72 (null.===.$this->tags).{.$resour
a45c0 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 ce.=.$this->getScheme()...'://ap
a45e0 69 2e 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 i.bitbucket.org/1.0/repositories
a4600 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 /'.$this->owner.'/'.$this->repos
a4620 69 74 6f 72 79 2e 27 2f 74 61 67 73 27 3b 0a 24 74 61 67 73 44 61 74 61 20 3d 20 4a 73 6f 6e 46 itory.'/tags';.$tagsData.=.JsonF
a4640 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 ile::parseJson($this->getContent
a4660 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d s($resource),.$resource);.$this-
a4680 3e 74 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 61 67 73 44 >tags.=.array();.foreach.($tagsD
a46a0 61 74 61 20 61 73 20 24 74 61 67 20 3d 3e 20 24 64 61 74 61 29 20 7b 0a 24 74 68 69 73 2d 3e 74 ata.as.$tag.=>.$data).{.$this->t
a46c0 61 67 73 5b 24 74 61 67 5d 20 3d 20 24 64 61 74 61 5b 27 72 61 77 5f 6e 6f 64 65 27 5d 3b 0a 7d ags[$tag].=.$data['raw_node'];.}
a46e0 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 .}..return.$this->tags;.}.....pu
a4700 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 blic.function.getBranches().{.if
a4720 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 72 .(null.===.$this->branches).{.$r
a4740 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 esource.=.$this->getScheme()...'
a4760 3a 2f 2f 61 70 69 2e 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 ://api.bitbucket.org/1.0/reposit
a4780 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e ories/'.$this->owner.'/'.$this->
a47a0 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 62 72 61 6e 63 68 65 73 27 3b 0a 24 62 72 61 6e 63 68 44 repository.'/branches';.$branchD
a47c0 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d ata.=.JsonFile::parseJson($this-
a47e0 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 >getContents($resource),.$resour
a4800 63 65 29 3b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a ce);.$this->branches.=.array();.
a4820 66 6f 72 65 61 63 68 20 28 24 62 72 61 6e 63 68 44 61 74 61 20 61 73 20 24 62 72 61 6e 63 68 20 foreach.($branchData.as.$branch.
a4840 3d 3e 20 24 64 61 74 61 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 62 72 61 =>.$data).{.$this->branches[$bra
a4860 6e 63 68 5d 20 3d 20 24 64 61 74 61 5b 27 72 61 77 5f 6e 6f 64 65 27 5d 3b 0a 7d 0a 7d 0a 0a 72 nch].=.$data['raw_node'];.}.}..r
a4880 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 eturn.$this->branches;.}.....pub
a48a0 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 lic.static.function.supports(IOI
a48c0 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 24 75 nterface.$io,.Config.$config,.$u
a48e0 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d rl,.$deep.=.false).{.if.(!preg_m
a4900 61 74 63 68 28 27 23 5e 68 74 74 70 73 3f 3a 2f 2f 62 69 74 62 75 63 6b 65 74 5c 2e 6f 72 67 2f atch('#^https?://bitbucket\.org/
a4920 28 5b 5e 2f 5d 2b 29 2f 28 2e 2b 3f 29 5c 2e 67 69 74 24 23 27 2c 20 24 75 72 6c 29 29 20 7b 0a ([^/]+)/(.+?)\.git$#',.$url)).{.
a4940 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f return.false;.}..if.(!extension_
a4960 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 loaded('openssl')).{.$io->writeE
a4980 72 72 6f 72 28 27 53 6b 69 70 70 69 6e 67 20 42 69 74 62 75 63 6b 65 74 20 67 69 74 20 64 72 69 rror('Skipping.Bitbucket.git.dri
a49a0 76 65 72 20 66 6f 72 20 27 2e 24 75 72 6c 2e 27 20 62 65 63 61 75 73 65 20 74 68 65 20 4f 70 65 ver.for.'.$url.'.because.the.Ope
a49c0 6e 53 53 4c 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2e 27 2c nSSL.PHP.extension.is.missing.',
a49e0 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 0a 72 .true,.IOInterface::VERBOSE);..r
a4a00 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d eturn.false;.}..return.true;.}.}
a4a20 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
a4a40 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 oser\Repository\Vcs;..use.Compos
a4a60 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 er\Json\JsonFile;.use.Composer\U
a4a80 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 til\ProcessExecutor;.use.Compose
a4aa0 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c r\Util\Filesystem;.use.Composer\
a4ac0 55 74 69 6c 5c 47 69 74 20 61 73 20 47 69 74 55 74 69 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 Util\Git.as.GitUtil;.use.Compose
a4ae0 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 r\IO\IOInterface;.use.Composer\C
a4b00 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 63 ache;.use.Composer\Config;.....c
a4b20 6c 61 73 73 20 47 69 74 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 72 lass.GitDriver.extends.VcsDriver
a4b40 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 .{.protected.$cache;.protected.$
a4b60 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 73 3b 0a 70 72 6f 74 65 tags;.protected.$branches;.prote
a4b80 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 cted.$rootIdentifier;.protected.
a4ba0 24 72 65 70 6f 44 69 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 20 3d $repoDir;.protected.$infoCache.=
a4bc0 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e .array();.....public.function.in
a4be0 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 69 66 20 28 46 69 6c 65 73 79 73 74 65 6d 3a 3a 69 73 4c itialize().{.if.(Filesystem::isL
a4c00 6f 63 61 6c 50 61 74 68 28 24 74 68 69 73 2d 3e 75 72 6c 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 ocalPath($this->url)).{.$this->r
a4c20 65 70 6f 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 24 63 61 63 68 65 55 72 6c 20 3d epoDir.=.$this->url;.$cacheUrl.=
a4c40 20 72 65 61 6c 70 61 74 68 28 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a .realpath($this->url);.}.else.{.
a4c60 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e $this->repoDir.=.$this->config->
a4c80 67 65 74 28 27 63 61 63 68 65 2d 76 63 73 2d 64 69 72 27 29 20 2e 20 27 2f 27 20 2e 20 70 72 65 get('cache-vcs-dir')...'/'...pre
a4ca0 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 g_replace('{[^a-z0-9.]}i',.'-',.
a4cc0 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 27 2f 27 3b 0a 0a 47 69 74 55 74 69 6c 3a 3a 63 6c 65 $this->url)...'/';..GitUtil::cle
a4ce0 61 6e 45 6e 76 28 29 3b 0a 0a 24 66 73 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 anEnv();..$fs.=.new.Filesystem()
a4d00 3b 0a 24 66 73 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 64 69 72 ;.$fs->ensureDirectoryExists(dir
a4d20 6e 61 6d 65 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 29 3b 0a 0a 69 66 20 28 21 69 73 5f name($this->repoDir));..if.(!is_
a4d40 77 72 69 74 61 62 6c 65 28 64 69 72 6e 61 6d 65 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 writable(dirname($this->repoDir)
a4d60 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e )).{.throw.new.\RuntimeException
a4d80 28 27 43 61 6e 20 6e 6f 74 20 63 6c 6f 6e 65 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 74 ('Can.not.clone.'.$this->url.'.t
a4da0 6f 20 61 63 63 65 73 73 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 o.access.package.information..Th
a4dc0 65 20 22 27 2e 64 69 72 6e 61 6d 65 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 2e 27 22 20 e."'.dirname($this->repoDir).'".
a4de0 64 69 72 65 63 74 6f 72 79 20 69 73 20 6e 6f 74 20 77 72 69 74 61 62 6c 65 20 62 79 20 74 68 65 directory.is.not.writable.by.the
a4e00 20 63 75 72 72 65 6e 74 20 75 73 65 72 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 .current.user.');.}..if.(preg_ma
a4e20 74 63 68 28 27 7b 5e 73 73 68 3a 2f 2f 5b 5e 40 5d 2b 40 5b 5e 3a 5d 2b 3a 5b 5e 30 2d 39 5d 2b tch('{^ssh://[^@]+@[^:]+:[^0-9]+
a4e40 7d 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e }',.$this->url)).{.throw.new.\In
a4e60 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 73 6f 75 72 validArgumentException('The.sour
a4e80 63 65 20 55 52 4c 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 69 73 20 69 6e 76 61 6c 69 64 ce.URL.'.$this->url.'.is.invalid
a4ea0 2c 20 73 73 68 20 55 52 4c 73 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 70 6f 72 74 20 6e 75 ,.ssh.URLs.should.have.a.port.nu
a4ec0 6d 62 65 72 20 61 66 74 65 72 20 22 3a 22 2e 27 2e 22 5c 6e 22 2e 27 55 73 65 20 73 73 68 3a 2f mber.after.":".'."\n".'Use.ssh:/
a4ee0 2f 67 69 74 40 65 78 61 6d 70 6c 65 2e 63 6f 6d 3a 32 32 2f 70 61 74 68 20 6f 72 20 6a 75 73 74 /git@example.com:22/path.or.just
a4f00 20 67 69 74 40 65 78 61 6d 70 6c 65 2e 63 6f 6d 3a 70 61 74 68 20 69 66 20 79 6f 75 20 64 6f 20 .git@example.com:path.if.you.do.
a4f20 6e 6f 74 20 77 61 6e 74 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 70 61 73 73 77 6f 72 64 20 6f not.want.to.provide.a.password.o
a4f40 72 20 63 75 73 74 6f 6d 20 70 6f 72 74 2e 27 29 3b 0a 7d 0a 0a 24 67 69 74 55 74 69 6c 20 3d 20 r.custom.port.');.}..$gitUtil.=.
a4f60 6e 65 77 20 47 69 74 55 74 69 6c 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f new.GitUtil($this->io,.$this->co
a4f80 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2c 20 24 66 73 29 3b 0a 0a 0a 20 69 nfig,.$this->process,.$fs);....i
a4fa0 66 20 28 69 73 5f 64 69 72 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 20 26 26 20 30 20 3d f.(is_dir($this->repoDir).&&.0.=
a4fc0 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 ==.$this->process->execute('git.
a4fe0 72 65 76 2d 70 61 72 73 65 20 2d 2d 67 69 74 2d 64 69 72 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 rev-parse.--git-dir',.$output,.$
a5000 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 20 26 26 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 20 this->repoDir).&&.trim($output).
a5020 3d 3d 3d 20 27 2e 27 29 20 7b 0a 74 72 79 20 7b 0a 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c ===.'.').{.try.{.$commandCallabl
a5040 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 75 72 6c 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 e.=.function.($url).{.return.spr
a5060 69 6e 74 66 28 27 67 69 74 20 72 65 6d 6f 74 65 20 73 65 74 2d 75 72 6c 20 6f 72 69 67 69 6e 20 intf('git.remote.set-url.origin.
a5080 25 73 20 26 26 20 67 69 74 20 72 65 6d 6f 74 65 20 75 70 64 61 74 65 20 2d 2d 70 72 75 6e 65 20 %s.&&.git.remote.update.--prune.
a50a0 6f 72 69 67 69 6e 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 origin',.ProcessExecutor::escape
a50c0 28 24 75 72 6c 29 29 3b 0a 7d 3b 0a 24 67 69 74 55 74 69 6c 2d 3e 72 75 6e 43 6f 6d 6d 61 6e 64 ($url));.};.$gitUtil->runCommand
a50e0 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 ($commandCallable,.$this->url,.$
a5100 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 this->repoDir);.}.catch.(\Except
a5120 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 ion.$e).{.$this->io->writeError(
a5140 27 3c 65 72 72 6f 72 3e 46 61 69 6c 65 64 20 74 6f 20 75 70 64 61 74 65 20 27 2e 24 74 68 69 73 '<error>Failed.to.update.'.$this
a5160 2d 3e 75 72 6c 2e 27 2c 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 72 6f ->url.',.package.information.fro
a5180 6d 20 74 68 69 73 20 72 65 70 6f 73 69 74 6f 72 79 20 6d 61 79 20 62 65 20 6f 75 74 64 61 74 65 m.this.repository.may.be.outdate
a51a0 64 20 28 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 3c 2f 65 72 72 6f 72 3e d.('.$e->getMessage().')</error>
a51c0 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 66 73 2d 3e 72 65 6d 6f 76 65 44 69 72 65 ');.}.}.else.{...$fs->removeDire
a51e0 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 0a 24 72 65 70 6f 44 69 72 ctory($this->repoDir);..$repoDir
a5200 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 3b 0a 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 .=.$this->repoDir;.$commandCalla
a5220 62 6c 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 75 72 6c 29 20 75 73 65 20 28 24 72 65 70 6f ble.=.function.($url).use.($repo
a5240 44 69 72 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 67 69 74 20 63 6c 6f 6e 65 Dir).{.return.sprintf('git.clone
a5260 20 2d 2d 6d 69 72 72 6f 72 20 25 73 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f .--mirror.%s.%s',.ProcessExecuto
a5280 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 r::escape($url),.ProcessExecutor
a52a0 3a 3a 65 73 63 61 70 65 28 24 72 65 70 6f 44 69 72 29 29 3b 0a 7d 3b 0a 0a 24 67 69 74 55 74 69 ::escape($repoDir));.};..$gitUti
a52c0 6c 2d 3e 72 75 6e 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 l->runCommand($commandCallable,.
a52e0 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 2c 20 74 72 75 65 $this->url,.$this->repoDir,.true
a5300 29 3b 0a 7d 0a 0a 24 63 61 63 68 65 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 0a );.}..$cacheUrl.=.$this->url;.}.
a5320 0a 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 3b 0a 24 74 68 69 73 2d 3e 67 65 74 42 72 61 .$this->getTags();.$this->getBra
a5340 6e 63 68 65 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 6e 65 77 20 43 61 63 nches();..$this->cache.=.new.Cac
a5360 68 65 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 he($this->io,.$this->config->get
a5380 28 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 29 2e 27 2f 27 2e 70 72 65 67 5f 72 65 70 6c ('cache-repo-dir').'/'.preg_repl
a53a0 61 63 65 28 27 7b 5b 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 63 61 63 68 65 ace('{[^a-z0-9.]}i',.'-',.$cache
a53c0 55 72 6c 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 Url));.}.....public.function.get
a53e0 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 RootIdentifier().{.if.(null.===.
a5400 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e $this->rootIdentifier).{.$this->
a5420 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 27 6d 61 73 74 65 72 27 3b 0a 0a 0a 20 24 74 rootIdentifier.=.'master';....$t
a5440 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 62 72 61 6e 63 his->process->execute('git.branc
a5460 68 20 2d 2d 6e 6f 2d 63 6f 6c 6f 72 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 h.--no-color',.$output,.$this->r
a5480 65 70 6f 44 69 72 29 3b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 epoDir);.$branches.=.$this->proc
a54a0 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 3b 0a 69 66 20 28 21 69 ess->splitLines($output);.if.(!i
a54c0 6e 5f 61 72 72 61 79 28 27 2a 20 6d 61 73 74 65 72 27 2c 20 24 62 72 61 6e 63 68 65 73 29 29 20 n_array('*.master',.$branches)).
a54e0 7b 0a 66 6f 72 65 61 63 68 20 28 24 62 72 61 6e 63 68 65 73 20 61 73 20 24 62 72 61 6e 63 68 29 {.foreach.($branches.as.$branch)
a5500 20 7b 0a 69 66 20 28 24 62 72 61 6e 63 68 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e .{.if.($branch.&&.preg_match('{^
a5520 5c 2a 20 2b 28 5c 53 2b 29 7d 27 2c 20 24 62 72 61 6e 63 68 2c 20 24 6d 61 74 63 68 29 29 20 7b \*.+(\S+)}',.$branch,.$match)).{
a5540 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 24 6d 61 74 63 68 5b .$this->rootIdentifier.=.$match[
a5560 31 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 1];.break;.}.}.}.}..return.$this
a5580 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ->rootIdentifier;.}.....public.f
a55a0 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d unction.getUrl().{.return.$this-
a55c0 3e 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 >url;.}.....public.function.getS
a55e0 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 ource($identifier).{.return.arra
a5600 79 28 27 74 79 70 65 27 20 3d 3e 20 27 67 69 74 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 69 y('type'.=>.'git',.'url'.=>.$thi
a5620 73 2d 3e 67 65 74 55 72 6c 28 29 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 s->getUrl(),.'reference'.=>.$ide
a5640 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ntifier);.}.....public.function.
a5660 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 getDist($identifier).{.return.nu
a5680 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d ll;.}.....public.function.getCom
a56a0 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a poserInformation($identifier).{.
a56c0 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 7d 69 27 if.(preg_match('{[a-f0-9]{40}}i'
a56e0 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 20 26 26 20 24 72 65 73 20 3d 20 24 74 68 69 73 2d 3e ,.$identifier).&&.$res.=.$this->
a5700 63 61 63 68 65 2d 3e 72 65 61 64 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 cache->read($identifier)).{.$thi
a5720 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 4a 73 6f 6e s->infoCache[$identifier].=.Json
a5740 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 72 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 File::parseJson($res);.}..if.(!i
a5760 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 sset($this->infoCache[$identifie
a5780 72 5d 29 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 3a 63 r])).{.$resource.=.sprintf('%s:c
a57a0 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a omposer.json',.ProcessExecutor::
a57c0 65 73 63 61 70 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f escape($identifier));.$this->pro
a57e0 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 67 69 74 20 73 68 6f 77 20 cess->execute(sprintf('git.show.
a5800 25 73 27 2c 20 24 72 65 73 6f 75 72 63 65 29 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 68 69 %s',.$resource),.$composer,.$thi
a5820 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 0a 69 66 20 28 21 74 72 69 6d 28 24 63 6f 6d 70 6f 73 65 s->repoDir);..if.(!trim($compose
a5840 72 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 4a 73 6f r)).{.return;.}..$composer.=.Jso
a5860 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f 6d 70 6f 73 65 72 2c 20 24 72 65 73 nFile::parseJson($composer,.$res
a5880 6f 75 72 63 65 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 ource);..if.(empty($composer['ti
a58a0 6d 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 me'])).{.$this->process->execute
a58c0 28 73 70 72 69 6e 74 66 28 27 67 69 74 20 6c 6f 67 20 2d 31 20 2d 2d 66 6f 72 6d 61 74 3d 25 25 (sprintf('git.log.-1.--format=%%
a58e0 61 74 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 at.%s',.ProcessExecutor::escape(
a5900 24 69 64 65 6e 74 69 66 69 65 72 29 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 $identifier)),.$output,.$this->r
a5920 65 70 6f 44 69 72 29 3b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 27 epoDir);.$date.=.new.\DateTime('
a5940 40 27 2e 74 72 69 6d 28 24 6f 75 74 70 75 74 29 2c 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 5a @'.trim($output),.new.\DateTimeZ
a5960 6f 6e 65 28 27 55 54 43 27 29 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d one('UTC'));.$composer['time'].=
a5980 20 24 64 61 74 65 2d 3e 66 6f 72 6d 61 74 28 27 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 29 3b 0a 7d .$date->format('Y-m-d.H:i:s');.}
a59a0 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 7d ..if.(preg_match('{[a-f0-9]{40}}
a59c0 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 i',.$identifier)).{.$this->cache
a59e0 2d 3e 77 72 69 74 65 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 ->write($identifier,.json_encode
a5a00 28 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 ($composer));.}..$this->infoCach
a5a20 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 72 e[$identifier].=.$composer;.}..r
a5a40 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 eturn.$this->infoCache[$identifi
a5a60 65 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 er];.}.....public.function.getTa
a5a80 67 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 61 67 73 29 gs().{.if.(null.===.$this->tags)
a5aa0 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 74 68 69 73 .{.$this->tags.=.array();..$this
a5ac0 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 73 68 6f 77 2d 72 65 66 ->process->execute('git.show-ref
a5ae0 20 2d 2d 74 61 67 73 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 .--tags',.$output,.$this->repoDi
a5b00 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 r);.foreach.($output.=.$this->pr
a5b20 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 74 ocess->splitLines($output).as.$t
a5b40 61 67 29 20 7b 0a 69 66 20 28 24 74 61 67 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e ag).{.if.($tag.&&.preg_match('{^
a5b60 28 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 29 20 72 65 66 73 2f 74 61 67 73 2f 28 5c 53 2b 29 24 7d ([a-f0-9]{40}).refs/tags/(\S+)$}
a5b80 27 2c 20 24 74 61 67 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 5b ',.$tag,.$match)).{.$this->tags[
a5ba0 24 6d 61 74 63 68 5b 32 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 $match[2]].=.$match[1];.}.}.}..r
a5bc0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 eturn.$this->tags;.}.....public.
a5be0 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c function.getBranches().{.if.(nul
a5c00 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 62 72 61 6e 63 68 l.===.$this->branches).{.$branch
a5c20 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 es.=.array();..$this->process->e
a5c40 78 65 63 75 74 65 28 27 67 69 74 20 62 72 61 6e 63 68 20 2d 2d 6e 6f 2d 63 6f 6c 6f 72 20 2d 2d xecute('git.branch.--no-color.--
a5c60 6e 6f 2d 61 62 62 72 65 76 20 2d 76 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 no-abbrev.-v',.$output,.$this->r
a5c80 65 70 6f 44 69 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 epoDir);.foreach.($this->process
a5ca0 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 62 72 61 6e 63 68 ->splitLines($output).as.$branch
a5cc0 29 20 7b 0a 69 66 20 28 24 62 72 61 6e 63 68 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 ).{.if.($branch.&&.!preg_match('
a5ce0 7b 5e 20 2a 5b 5e 2f 5d 2b 2f 48 45 41 44 20 7d 27 2c 20 24 62 72 61 6e 63 68 29 29 20 7b 0a 69 {^.*[^/]+/HEAD.}',.$branch)).{.i
a5d00 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 5c 2a 20 29 3f 20 2a 28 5c 53 2b 29 f.(preg_match('{^(?:\*.)?.*(\S+)
a5d20 20 2a 28 5b 61 2d 66 30 2d 39 5d 2b 29 28 3f 3a 20 2e 2a 29 3f 24 7d 27 2c 20 24 62 72 61 6e 63 .*([a-f0-9]+)(?:..*)?$}',.$branc
a5d40 68 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 5b 24 6d 61 74 63 68 5b 31 h,.$match)).{.$branches[$match[1
a5d60 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 72 ]].=.$match[2];.}.}.}..$this->br
a5d80 61 6e 63 68 65 73 20 3d 20 24 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 anches.=.$branches;.}..return.$t
a5da0 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 his->branches;.}.....public.stat
a5dc0 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 ic.function.supports(IOInterface
a5de0 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 24 75 72 6c 2c 20 24 64 65 65 .$io,.Config.$config,.$url,.$dee
a5e00 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 28 5e p.=.false).{.if.(preg_match('#(^
a5e20 67 69 74 3a 2f 2f 7c 5c 2e 67 69 74 24 7c 67 69 74 28 3f 3a 6f 6c 69 74 65 29 3f 40 7c 2f 2f 67 git://|\.git$|git(?:olite)?@|//g
a5e40 69 74 5c 2e 7c 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 29 23 69 27 2c 20 24 75 72 6c 29 29 20 7b it\.|//github.com/)#i',.$url)).{
a5e60 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 46 69 6c 65 73 79 73 74 65 .return.true;.}....if.(Filesyste
a5e80 6d 3a 3a 69 73 4c 6f 63 61 6c 50 61 74 68 28 24 75 72 6c 29 29 20 7b 0a 24 75 72 6c 20 3d 20 46 m::isLocalPath($url)).{.$url.=.F
a5ea0 69 6c 65 73 79 73 74 65 6d 3a 3a 67 65 74 50 6c 61 74 66 6f 72 6d 50 61 74 68 28 24 75 72 6c 29 ilesystem::getPlatformPath($url)
a5ec0 3b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 ;.if.(!is_dir($url)).{.return.fa
a5ee0 6c 73 65 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 lse;.}..$process.=.new.ProcessEx
a5f00 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 0a 20 69 66 20 28 24 70 72 6f 63 65 73 73 2d 3e 65 78 65 ecutor($io);...if.($process->exe
a5f20 63 75 74 65 28 27 67 69 74 20 74 61 67 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 75 72 6c 29 20 3d cute('git.tag',.$output,.$url).=
a5f40 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 ==.0).{.return.true;.}.}..if.(!$
a5f60 64 65 65 70 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 deep).{.return.false;.}..$proces
a5f80 73 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 69 66 s.=.new.ProcessExecutor($io);.if
a5fa0 20 28 24 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 6c 73 2d 72 65 6d 6f .($process->execute('git.ls-remo
a5fc0 74 65 20 2d 2d 68 65 61 64 73 20 27 20 2e 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a te.--heads.'...ProcessExecutor::
a5fe0 65 73 63 61 70 65 28 24 75 72 6c 29 2c 20 24 6f 75 74 70 75 74 29 20 3d 3d 3d 20 30 29 20 7b 0a escape($url),.$output).===.0).{.
a6000 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a return.true;.}..return.false;.}.
a6020 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d }.<?php............namespace.Com
a6040 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f poser\Repository\Vcs;..use.Compo
a6060 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 ser\Config;.use.Composer\Downloa
a6080 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 der\TransportException;.use.Comp
a60a0 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 oser\Json\JsonFile;.use.Composer
a60c0 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 \Cache;.use.Composer\IO\IOInterf
a60e0 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 47 69 74 48 75 62 3b 0a 0a ace;.use.Composer\Util\GitHub;..
a6100 0a 0a 0a 63 6c 61 73 73 20 47 69 74 48 75 62 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 ...class.GitHubDriver.extends.Vc
a6120 73 44 72 69 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 3b 0a 70 72 6f 74 sDriver.{.protected.$cache;.prot
a6140 65 63 74 65 64 20 24 6f 77 6e 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 ected.$owner;.protected.$reposit
a6160 6f 72 79 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 ory;.protected.$tags;.protected.
a6180 24 62 72 61 6e 63 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e 74 69 $branches;.protected.$rootIdenti
a61a0 66 69 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 61 73 49 73 73 75 65 73 3b 0a 70 72 6f 74 fier;.protected.$hasIssues;.prot
a61c0 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 ected.$infoCache.=.array();.prot
a61e0 65 63 74 65 64 20 24 69 73 50 72 69 76 61 74 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 0a 0a ected.$isPrivate.=.false;.......
a6200 70 72 6f 74 65 63 74 65 64 20 24 67 69 74 44 72 69 76 65 72 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 protected.$gitDriver;.....public
a6220 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 72 65 67 5f 6d 61 .function.initialize().{.preg_ma
a6240 74 63 68 28 27 23 5e 28 3f 3a 28 3f 3a 68 74 74 70 73 3f 7c 67 69 74 29 3a 2f 2f 28 5b 5e 2f 5d tch('#^(?:(?:https?|git)://([^/]
a6260 2b 29 2f 7c 67 69 74 40 28 5b 5e 3a 5d 2b 29 3a 29 28 5b 5e 2f 5d 2b 29 2f 28 2e 2b 3f 29 28 3f +)/|git@([^:]+):)([^/]+)/(.+?)(?
a6280 3a 5c 2e 67 69 74 7c 2f 29 3f 24 23 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 6d 61 74 63 :\.git|/)?$#',.$this->url,.$matc
a62a0 68 29 3b 0a 24 74 68 69 73 2d 3e 6f 77 6e 65 72 20 3d 20 24 6d 61 74 63 68 5b 33 5d 3b 0a 24 74 h);.$this->owner.=.$match[3];.$t
a62c0 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 6d 61 74 63 68 5b 34 5d 3b 0a 24 74 68 his->repository.=.$match[4];.$th
a62e0 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 31 5d is->originUrl.=.!empty($match[1]
a6300 29 20 3f 20 24 6d 61 74 63 68 5b 31 5d 20 3a 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 69 66 20 28 24 ).?.$match[1].:.$match[2];.if.($
a6320 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 3d 3d 20 27 77 77 77 2e 67 69 74 68 75 62 2e this->originUrl.===.'www.github.
a6340 63 6f 6d 27 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 20 27 67 69 74 68 com').{.$this->originUrl.=.'gith
a6360 75 62 2e 63 6f 6d 27 3b 0a 7d 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 6e 65 77 20 43 61 ub.com';.}.$this->cache.=.new.Ca
a6380 63 68 65 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 che($this->io,.$this->config->ge
a63a0 74 28 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 29 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 6f t('cache-repo-dir').'/'.$this->o
a63c0 72 69 67 69 6e 55 72 6c 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 riginUrl.'/'.$this->owner.'/'.$t
a63e0 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 his->repository);..if.(isset($th
a6400 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 6e 6f 2d 61 70 69 27 5d 29 20 26 26 20 24 74 68 is->repoConfig['no-api']).&&.$th
a6420 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 6e 6f 2d 61 70 69 27 5d 29 20 7b 0a 24 74 68 69 is->repoConfig['no-api']).{.$thi
a6440 73 2d 3e 73 65 74 75 70 47 69 74 44 72 69 76 65 72 28 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 0a s->setupGitDriver($this->url);..
a6460 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 65 74 63 68 52 6f 6f 74 49 64 65 6e 74 return;.}..$this->fetchRootIdent
a6480 69 66 69 65 72 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 ifier();.}..public.function.getR
a64a0 65 70 6f 73 69 74 6f 72 79 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 68 74 74 70 73 3a 2f epositoryUrl().{.return.'https:/
a64c0 2f 27 2e 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 6f /'.$this->originUrl.'/'.$this->o
a64e0 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a wner.'/'.$this->repository;.}...
a6500 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 ..public.function.getRootIdentif
a6520 69 65 72 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 29 20 7b 0a ier().{.if.($this->gitDriver).{.
a6540 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 67 65 74 52 6f 6f 74 return.$this->gitDriver->getRoot
a6560 49 64 65 6e 74 69 66 69 65 72 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 Identifier();.}..return.$this->r
a6580 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ootIdentifier;.}.....public.func
a65a0 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 tion.getUrl().{.if.($this->gitDr
a65c0 69 76 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d iver).{.return.$this->gitDriver-
a65e0 3e 67 65 74 55 72 6c 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 68 74 74 70 73 3a 2f 2f 27 20 >getUrl();.}..return.'https://'.
a6600 2e 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 2e 20 27 2f 27 2e 24 74 68 69 73 2d 3e ..$this->originUrl...'/'.$this->
a6620 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2e 67 69 owner.'/'.$this->repository.'.gi
a6640 74 27 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 t';.}.....protected.function.get
a6660 41 70 69 55 72 6c 28 29 0a 7b 0a 69 66 20 28 27 67 69 74 68 75 62 2e 63 6f 6d 27 20 3d 3d 3d 20 ApiUrl().{.if.('github.com'.===.
a6680 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 29 20 7b 0a 24 61 70 69 55 72 6c 20 3d 20 27 61 $this->originUrl).{.$apiUrl.=.'a
a66a0 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 70 69 55 72 6c pi.github.com';.}.else.{.$apiUrl
a66c0 20 3d 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 2e 20 27 2f 61 70 69 2f 76 33 27 3b .=.$this->originUrl...'/api/v3';
a66e0 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 68 74 74 70 73 3a 2f 2f 27 20 2e 20 24 61 70 69 55 72 6c 3b .}..return.'https://'...$apiUrl;
a6700 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 .}.....public.function.getSource
a6720 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 ($identifier).{.if.($this->gitDr
a6740 69 76 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d iver).{.return.$this->gitDriver-
a6760 3e 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 69 66 20 28 24 >getSource($identifier);.}.if.($
a6780 74 68 69 73 2d 3e 69 73 50 72 69 76 61 74 65 29 20 7b 0a 0a 20 0a 20 24 75 72 6c 20 3d 20 24 74 this->isPrivate).{.....$url.=.$t
a67a0 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 53 73 68 55 72 6c 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a his->generateSshUrl();.}.else.{.
a67c0 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 $url.=.$this->getUrl();.}..retur
a67e0 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 67 69 74 27 2c 20 27 75 72 6c 27 20 3d n.array('type'.=>.'git',.'url'.=
a6800 3e 20 24 75 72 6c 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 >.$url,.'reference'.=>.$identifi
a6820 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 er);.}.....public.function.getDi
a6840 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e st($identifier).{.$url.=.$this->
a6860 67 65 74 41 70 69 55 72 6c 28 29 20 2e 20 27 2f 72 65 70 6f 73 2f 27 2e 24 74 68 69 73 2d 3e 6f getApiUrl()...'/repos/'.$this->o
a6880 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 7a 69 70 wner.'/'.$this->repository.'/zip
a68a0 62 61 6c 6c 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 ball/'.$identifier;..return.arra
a68c0 79 28 27 74 79 70 65 27 20 3d 3e 20 27 7a 69 70 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 75 72 6c y('type'.=>.'zip',.'url'.=>.$url
a68e0 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 2c 20 27 73 ,.'reference'.=>.$identifier,.'s
a6900 68 61 73 75 6d 27 20 3d 3e 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 hasum'.=>.'');.}.....public.func
a6920 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 tion.getComposerInformation($ide
a6940 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 29 ntifier).{.if.($this->gitDriver)
a6960 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 67 65 74 43 .{.return.$this->gitDriver->getC
a6980 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b omposerInformation($identifier);
a69a0 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 5d 7b 34 30 .}..if.(preg_match('{[a-f0-9]{40
a69c0 7d 7d 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 20 26 26 20 24 72 65 73 20 3d 20 24 74 68 }}i',.$identifier).&&.$res.=.$th
a69e0 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a is->cache->read($identifier)).{.
a6a00 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 $this->infoCache[$identifier].=.
a6a20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 72 65 73 29 3b 0a 7d 0a 0a 69 66 JsonFile::parseJson($res);.}..if
a6a40 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 .(!isset($this->infoCache[$ident
a6a60 69 66 69 65 72 5d 29 29 20 7b 0a 24 6e 6f 74 46 6f 75 6e 64 52 65 74 72 69 65 73 20 3d 20 32 3b ifier])).{.$notFoundRetries.=.2;
a6a80 0a 77 68 69 6c 65 20 28 24 6e 6f 74 46 6f 75 6e 64 52 65 74 72 69 65 73 29 20 7b 0a 74 72 79 20 .while.($notFoundRetries).{.try.
a6aa0 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 69 55 72 6c 28 29 {.$resource.=.$this->getApiUrl()
a6ac0 20 2e 20 27 2f 72 65 70 6f 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 ...'/repos/'.$this->owner.'/'.$t
a6ae0 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 63 6f 6e 74 65 6e 74 73 2f 63 6f 6d 70 6f his->repository.'/contents/compo
a6b00 73 65 72 2e 6a 73 6f 6e 3f 72 65 66 3d 27 2e 75 72 6c 65 6e 63 6f 64 65 28 24 69 64 65 6e 74 69 ser.json?ref='.urlencode($identi
a6b20 66 69 65 72 29 3b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 fier);.$resource.=.JsonFile::par
a6b40 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 seJson($this->getContents($resou
a6b60 72 63 65 29 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 72 65 73 6f 75 72 63 65 5b 27 63 6f 6e 74 rce));.if.(empty($resource['cont
a6b80 65 6e 74 27 5d 29 20 7c 7c 20 24 72 65 73 6f 75 72 63 65 5b 27 65 6e 63 6f 64 69 6e 67 27 5d 20 ent']).||.$resource['encoding'].
a6ba0 21 3d 3d 20 27 62 61 73 65 36 34 27 20 7c 7c 20 21 28 24 63 6f 6d 70 6f 73 65 72 20 3d 20 62 61 !==.'base64'.||.!($composer.=.ba
a6bc0 73 65 36 34 5f 64 65 63 6f 64 65 28 24 72 65 73 6f 75 72 63 65 5b 27 63 6f 6e 74 65 6e 74 27 5d se64_decode($resource['content']
a6be0 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f ))).{.throw.new.\RuntimeExceptio
a6c00 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 72 65 74 72 69 65 76 65 20 63 6f 6d 70 6f 73 65 72 2e 6a n('Could.not.retrieve.composer.j
a6c20 73 6f 6e 20 66 6f 72 20 27 2e 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 62 72 65 61 6b 3b son.for.'.$identifier);.}.break;
a6c40 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 .}.catch.(TransportException.$e)
a6c60 20 7b 0a 69 66 20 28 34 30 34 20 21 3d 3d 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 29 20 7b 0a .{.if.(404.!==.$e->getCode()).{.
a6c80 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 0a 20 0a 20 24 6e 6f 74 46 6f 75 6e 64 52 65 74 72 69 65 throw.$e;.}......$notFoundRetrie
a6ca0 73 2d 2d 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 s--;.$composer.=.null;.}.}..if.(
a6cc0 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 4a 73 6f 6e 46 69 6c $composer).{.$composer.=.JsonFil
a6ce0 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f 6d 70 6f 73 65 72 2c 20 24 72 65 73 6f 75 72 63 e::parseJson($composer,.$resourc
a6d00 65 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d e);..if.(empty($composer['time']
a6d20 29 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 69 55 72 )).{.$resource.=.$this->getApiUr
a6d40 6c 28 29 20 2e 20 27 2f 72 65 70 6f 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 l()...'/repos/'.$this->owner.'/'
a6d60 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 63 6f 6d 6d 69 74 73 2f 27 2e 75 .$this->repository.'/commits/'.u
a6d80 72 6c 65 6e 63 6f 64 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 24 63 6f 6d 6d 69 74 20 3d rlencode($identifier);.$commit.=
a6da0 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 .JsonFile::parseJson($this->getC
a6dc0 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a ontents($resource),.$resource);.
a6de0 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 63 6f 6d 6d 69 74 5b 27 63 6f 6d $composer['time'].=.$commit['com
a6e00 6d 69 74 27 5d 5b 27 63 6f 6d 6d 69 74 74 65 72 27 5d 5b 27 64 61 74 65 27 5d 3b 0a 7d 0a 69 66 mit']['committer']['date'];.}.if
a6e20 20 28 21 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 73 .(!isset($composer['support']['s
a6e40 6f 75 72 63 65 27 5d 29 29 20 7b 0a 24 6c 61 62 65 6c 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 ource'])).{.$label.=.array_searc
a6e60 68 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 29 h($identifier,.$this->getTags())
a6e80 20 3f 3a 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 74 .?:.array_search($identifier,.$t
a6ea0 68 69 73 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 29 20 3f 3a 20 24 69 64 65 6e 74 69 66 69 his->getBranches()).?:.$identifi
a6ec0 65 72 3b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 73 6f 75 72 63 65 er;.$composer['support']['source
a6ee0 27 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 68 74 74 70 73 3a 2f 2f 25 73 2f 25 73 2f 25 73 2f 74 '].=.sprintf('https://%s/%s/%s/t
a6f00 72 65 65 2f 25 73 27 2c 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 68 69 73 ree/%s',.$this->originUrl,.$this
a6f20 2d 3e 6f 77 6e 65 72 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2c 20 24 6c 61 62 ->owner,.$this->repository,.$lab
a6f40 65 6c 29 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 el);.}.if.(!isset($composer['sup
a6f60 70 6f 72 74 27 5d 5b 27 69 73 73 75 65 73 27 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 68 61 73 49 port']['issues']).&&.$this->hasI
a6f80 73 73 75 65 73 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 ssues).{.$composer['support']['i
a6fa0 73 73 75 65 73 27 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 68 74 74 70 73 3a 2f 2f 25 73 2f 25 73 ssues'].=.sprintf('https://%s/%s
a6fc0 2f 25 73 2f 69 73 73 75 65 73 27 2c 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 /%s/issues',.$this->originUrl,.$
a6fe0 74 68 69 73 2d 3e 6f 77 6e 65 72 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 29 3b this->owner,.$this->repository);
a7000 0a 7d 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 5d 7b .}.}..if.(preg_match('{[a-f0-9]{
a7020 34 30 7d 7d 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 40}}i',.$identifier)).{.$this->c
a7040 61 63 68 65 2d 3e 77 72 69 74 65 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 6a 73 6f 6e 5f 65 6e ache->write($identifier,.json_en
a7060 63 6f 64 65 28 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 66 6f code($composer));.}..$this->info
a7080 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a Cache[$identifier].=.$composer;.
a70a0 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e }..return.$this->infoCache[$iden
a70c0 74 69 66 69 65 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 tifier];.}.....public.function.g
a70e0 65 74 54 61 67 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 29 etTags().{.if.($this->gitDriver)
a7100 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 67 65 74 54 .{.return.$this->gitDriver->getT
a7120 61 67 73 28 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 61 67 ags();.}.if.(null.===.$this->tag
a7140 73 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 73 s).{.$this->tags.=.array();.$res
a7160 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 69 55 72 6c 28 29 20 2e 20 27 2f 72 ource.=.$this->getApiUrl()...'/r
a7180 65 70 6f 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 epos/'.$this->owner.'/'.$this->r
a71a0 65 70 6f 73 69 74 6f 72 79 2e 27 2f 74 61 67 73 3f 70 65 72 5f 70 61 67 65 3d 31 30 30 27 3b 0a epository.'/tags?per_page=100';.
a71c0 0a 64 6f 20 7b 0a 24 74 61 67 73 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 .do.{.$tagsData.=.JsonFile::pars
a71e0 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 eJson($this->getContents($resour
a7200 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 61 67 73 44 ce),.$resource);.foreach.($tagsD
a7220 61 74 61 20 61 73 20 24 74 61 67 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 5b 24 74 61 67 5b ata.as.$tag).{.$this->tags[$tag[
a7240 27 6e 61 6d 65 27 5d 5d 20 3d 20 24 74 61 67 5b 27 63 6f 6d 6d 69 74 27 5d 5b 27 73 68 61 27 5d 'name']].=.$tag['commit']['sha']
a7260 3b 0a 7d 0a 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 65 78 74 50 ;.}..$resource.=.$this->getNextP
a7280 61 67 65 28 29 3b 0a 7d 20 77 68 69 6c 65 20 28 24 72 65 73 6f 75 72 63 65 29 3b 0a 7d 0a 0a 72 age();.}.while.($resource);.}..r
a72a0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 eturn.$this->tags;.}.....public.
a72c0 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 function.getBranches().{.if.($th
a72e0 69 73 2d 3e 67 69 74 44 72 69 76 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 is->gitDriver).{.return.$this->g
a7300 69 74 44 72 69 76 65 72 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 7d 0a 69 66 20 28 6e itDriver->getBranches();.}.if.(n
a7320 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 74 68 69 73 ull.===.$this->branches).{.$this
a7340 2d 3e 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 73 6f 75 72 63 65 20 ->branches.=.array();.$resource.
a7360 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 69 55 72 6c 28 29 20 2e 20 27 2f 72 65 70 6f 73 2f 27 =.$this->getApiUrl()...'/repos/'
a7380 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 .$this->owner.'/'.$this->reposit
a73a0 6f 72 79 2e 27 2f 67 69 74 2f 72 65 66 73 2f 68 65 61 64 73 3f 70 65 72 5f 70 61 67 65 3d 31 30 ory.'/git/refs/heads?per_page=10
a73c0 30 27 3b 0a 0a 24 62 72 61 6e 63 68 42 6c 61 63 6b 6c 69 73 74 20 3d 20 61 72 72 61 79 28 27 67 0';..$branchBlacklist.=.array('g
a73e0 68 2d 70 61 67 65 73 27 29 3b 0a 0a 64 6f 20 7b 0a 24 62 72 61 6e 63 68 44 61 74 61 20 3d 20 4a h-pages');..do.{.$branchData.=.J
a7400 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e sonFile::parseJson($this->getCon
a7420 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 66 6f tents($resource),.$resource);.fo
a7440 72 65 61 63 68 20 28 24 62 72 61 6e 63 68 44 61 74 61 20 61 73 20 24 62 72 61 6e 63 68 29 20 7b reach.($branchData.as.$branch).{
a7460 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 62 72 61 6e 63 68 5b 27 72 65 66 27 5d 2c 20 .$name.=.substr($branch['ref'],.
a7480 31 31 29 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 6e 61 6d 65 2c 20 24 62 72 61 6e 63 11);.if.(!in_array($name,.$branc
a74a0 68 42 6c 61 63 6b 6c 69 73 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 hBlacklist)).{.$this->branches[$
a74c0 6e 61 6d 65 5d 20 3d 20 24 62 72 61 6e 63 68 5b 27 6f 62 6a 65 63 74 27 5d 5b 27 73 68 61 27 5d name].=.$branch['object']['sha']
a74e0 3b 0a 7d 0a 7d 0a 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 65 78 ;.}.}..$resource.=.$this->getNex
a7500 74 50 61 67 65 28 29 3b 0a 7d 20 77 68 69 6c 65 20 28 24 72 65 73 6f 75 72 63 65 29 3b 0a 7d 0a tPage();.}.while.($resource);.}.
a7520 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 .return.$this->branches;.}.....p
a7540 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 ublic.static.function.supports(I
a7560 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 OInterface.$io,.Config.$config,.
a7580 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 $url,.$deep.=.false).{.if.(!preg
a75a0 5f 6d 61 74 63 68 28 27 23 5e 28 28 3f 3a 68 74 74 70 73 3f 7c 67 69 74 29 3a 2f 2f 28 5b 5e 2f _match('#^((?:https?|git)://([^/
a75c0 5d 2b 29 2f 7c 67 69 74 40 28 5b 5e 3a 5d 2b 29 3a 29 28 5b 5e 2f 5d 2b 29 2f 28 2e 2b 3f 29 28 ]+)/|git@([^:]+):)([^/]+)/(.+?)(
a75e0 3f 3a 5c 2e 67 69 74 7c 2f 29 3f 24 23 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 65 73 29 29 ?:\.git|/)?$#',.$url,.$matches))
a7600 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 6f 72 69 67 69 6e 55 72 6c 20 3d .{.return.false;.}..$originUrl.=
a7620 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b .!empty($matches[2]).?.$matches[
a7640 32 5d 20 3a 20 24 6d 61 74 63 68 65 73 5b 33 5d 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 2].:.$matches[3];.if.(!in_array(
a7660 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 77 77 77 5c 2e 7d 69 27 2c 20 27 27 2c 20 24 6f preg_replace('{^www\.}i',.'',.$o
a7680 72 69 67 69 6e 55 72 6c 29 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d riginUrl),.$config->get('github-
a76a0 64 6f 6d 61 69 6e 73 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 domains'))).{.return.false;.}..i
a76c0 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 f.(!extension_loaded('openssl'))
a76e0 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 53 6b 69 70 70 69 6e 67 20 47 69 74 .{.$io->writeError('Skipping.Git
a7700 48 75 62 20 64 72 69 76 65 72 20 66 6f 72 20 27 2e 24 75 72 6c 2e 27 20 62 65 63 61 75 73 65 20 Hub.driver.for.'.$url.'.because.
a7720 74 68 65 20 4f 70 65 6e 53 53 4c 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 the.OpenSSL.PHP.extension.is.mis
a7740 73 69 6e 67 2e 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f sing.',.true,.IOInterface::VERBO
a7760 53 45 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 SE);..return.false;.}..return.tr
a7780 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 ue;.}.......protected.function.g
a77a0 65 6e 65 72 61 74 65 53 73 68 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 67 69 74 40 27 20 enerateSshUrl().{.return.'git@'.
a77c0 2e 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 2e 20 27 3a 27 2e 24 74 68 69 73 2d 3e ..$this->originUrl...':'.$this->
a77e0 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2e 67 69 owner.'/'.$this->repository.'.gi
a7800 74 27 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 t';.}.....protected.function.get
a7820 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 2c 20 24 66 65 74 63 68 69 6e 67 52 65 70 6f 44 61 74 61 Contents($url,.$fetchingRepoData
a7840 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a .=.false).{.try.{.return.parent:
a7860 3a 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 :getContents($url);.}.catch.(Tra
a7880 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 67 69 74 48 75 62 55 74 69 nsportException.$e).{.$gitHubUti
a78a0 6c 20 3d 20 6e 65 77 20 47 69 74 48 75 62 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d l.=.new.GitHub($this->io,.$this-
a78c0 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2c 20 24 74 68 69 73 2d 3e >config,.$this->process,.$this->
a78e0 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 29 3b 0a 0a 73 77 69 74 63 68 20 28 24 65 2d 3e remoteFilesystem);..switch.($e->
a7900 67 65 74 43 6f 64 65 28 29 29 20 7b 0a 63 61 73 65 20 34 30 31 3a 0a 63 61 73 65 20 34 30 34 3a getCode()).{.case.401:.case.404:
a7920 0a 0a 20 69 66 20 28 21 24 66 65 74 63 68 69 6e 67 52 65 70 6f 44 61 74 61 29 20 7b 0a 74 68 72 ...if.(!$fetchingRepoData).{.thr
a7940 6f 77 20 24 65 3b 0a 7d 0a 0a 69 66 20 28 24 67 69 74 48 75 62 55 74 69 6c 2d 3e 61 75 74 68 6f ow.$e;.}..if.($gitHubUtil->autho
a7960 72 69 7a 65 4f 41 75 74 68 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 29 29 20 7b 0a 72 rizeOAuth($this->originUrl)).{.r
a7980 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 3b eturn.parent::getContents($url);
a79a0 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 .}..if.(!$this->io->isInteractiv
a79c0 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 74 74 65 6d 70 74 43 6c 6f 6e e()).{.return.$this->attemptClon
a79e0 65 46 61 6c 6c 62 61 63 6b 28 29 3b 0a 7d 0a 0a 24 67 69 74 48 75 62 55 74 69 6c 2d 3e 61 75 74 eFallback();.}..$gitHubUtil->aut
a7a00 68 6f 72 69 7a 65 4f 41 75 74 68 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 24 74 68 69 73 2d 3e horizeOAuthInteractively($this->
a7a20 6f 72 69 67 69 6e 55 72 6c 2c 20 27 59 6f 75 72 20 47 69 74 48 75 62 20 63 72 65 64 65 6e 74 69 originUrl,.'Your.GitHub.credenti
a7a40 61 6c 73 20 61 72 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 66 65 74 63 68 20 70 72 69 76 61 74 als.are.required.to.fetch.privat
a7a60 65 20 72 65 70 6f 73 69 74 6f 72 79 20 6d 65 74 61 64 61 74 61 20 28 3c 69 6e 66 6f 3e 27 2e 24 e.repository.metadata.(<info>'.$
a7a80 74 68 69 73 2d 3e 75 72 6c 2e 27 3c 2f 69 6e 66 6f 3e 29 27 29 3b 0a 0a 72 65 74 75 72 6e 20 70 this->url.'</info>)');..return.p
a7aa0 61 72 65 6e 74 3a 3a 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 3b 0a 0a 63 61 73 65 20 arent::getContents($url);..case.
a7ac0 34 30 33 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 68 61 73 41 75 74 68 65 6e 74 69 403:.if.(!$this->io->hasAuthenti
a7ae0 63 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 29 20 26 26 20 24 67 69 74 cation($this->originUrl).&&.$git
a7b00 48 75 62 55 74 69 6c 2d 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 28 24 74 68 69 73 2d 3e 6f HubUtil->authorizeOAuth($this->o
a7b20 72 69 67 69 6e 55 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 67 65 74 43 riginUrl)).{.return.parent::getC
a7b40 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f ontents($url);.}..if.(!$this->io
a7b60 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 20 26 26 20 24 66 65 74 63 68 69 6e 67 52 65 ->isInteractive().&&.$fetchingRe
a7b80 70 6f 44 61 74 61 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 74 74 65 6d 70 74 43 poData).{.return.$this->attemptC
a7ba0 6c 6f 6e 65 46 61 6c 6c 62 61 63 6b 28 29 3b 0a 7d 0a 0a 24 72 61 74 65 4c 69 6d 69 74 65 64 20 loneFallback();.}..$rateLimited.
a7bc0 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 65 2d 3e 67 65 74 48 65 61 64 65 72 73 =.false;.foreach.($e->getHeaders
a7be0 28 29 20 61 73 20 24 68 65 61 64 65 72 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 ().as.$header).{.if.(preg_match(
a7c00 27 7b 5e 58 2d 52 61 74 65 4c 69 6d 69 74 2d 52 65 6d 61 69 6e 69 6e 67 3a 20 2a 30 24 7d 69 27 '{^X-RateLimit-Remaining:.*0$}i'
a7c20 2c 20 74 72 69 6d 28 24 68 65 61 64 65 72 29 29 29 20 7b 0a 24 72 61 74 65 4c 69 6d 69 74 65 64 ,.trim($header))).{.$rateLimited
a7c40 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 68 61 .=.true;.}.}..if.(!$this->io->ha
a7c60 73 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c sAuthentication($this->originUrl
a7c80 29 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 )).{.if.(!$this->io->isInteracti
a7ca0 76 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c ve()).{.$this->io->writeError('<
a7cc0 65 72 72 6f 72 3e 47 69 74 48 75 62 20 41 50 49 20 6c 69 6d 69 74 20 65 78 68 61 75 73 74 65 64 error>GitHub.API.limit.exhausted
a7ce0 2e 20 46 61 69 6c 65 64 20 74 6f 20 67 65 74 20 6d 65 74 61 64 61 74 61 20 66 6f 72 20 74 68 65 ..Failed.to.get.metadata.for.the
a7d00 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 72 65 70 6f 73 69 74 6f 72 79 2c 20 74 72 79 20 .'.$this->url.'.repository,.try.
a7d20 72 75 6e 6e 69 6e 67 20 69 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 20 73 6f 20 74 running.in.interactive.mode.so.t
a7d40 68 61 74 20 79 6f 75 20 63 61 6e 20 65 6e 74 65 72 20 79 6f 75 72 20 47 69 74 48 75 62 20 63 72 hat.you.can.enter.your.GitHub.cr
a7d60 65 64 65 6e 74 69 61 6c 73 20 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 20 41 50 49 20 6c 69 edentials.to.increase.the.API.li
a7d80 6d 69 74 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 67 69 74 mit</error>');.throw.$e;.}..$git
a7da0 48 75 62 55 74 69 6c 2d 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 49 6e 74 65 72 61 63 74 69 HubUtil->authorizeOAuthInteracti
a7dc0 76 65 6c 79 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 27 41 50 49 20 6c 69 6d 69 vely($this->originUrl,.'API.limi
a7de0 74 20 65 78 68 61 75 73 74 65 64 2e 20 45 6e 74 65 72 20 79 6f 75 72 20 47 69 74 48 75 62 20 63 t.exhausted..Enter.your.GitHub.c
a7e00 72 65 64 65 6e 74 69 61 6c 73 20 74 6f 20 67 65 74 20 61 20 6c 61 72 67 65 72 20 41 50 49 20 6c redentials.to.get.a.larger.API.l
a7e20 69 6d 69 74 20 28 3c 69 6e 66 6f 3e 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 3c 2f 69 6e 66 6f imit.(<info>'.$this->url.'</info
a7e40 3e 29 27 29 3b 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 67 65 74 43 6f 6e 74 65 6e 74 >)');..return.parent::getContent
a7e60 73 28 24 75 72 6c 29 3b 0a 7d 0a 0a 69 66 20 28 24 72 61 74 65 4c 69 6d 69 74 65 64 29 20 7b 0a s($url);.}..if.($rateLimited).{.
a7e80 24 72 61 74 65 4c 69 6d 69 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 52 61 74 65 4c 69 6d 69 74 $rateLimit.=.$this->getRateLimit
a7ea0 28 24 65 2d 3e 67 65 74 48 65 61 64 65 72 73 28 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 ($e->getHeaders());.$this->io->w
a7ec0 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 0a 27 3c 65 72 72 6f 72 3e 47 69 74 48 75 riteError(sprintf(.'<error>GitHu
a7ee0 62 20 41 50 49 20 6c 69 6d 69 74 20 28 25 64 20 63 61 6c 6c 73 2f 68 72 29 20 69 73 20 65 78 68 b.API.limit.(%d.calls/hr).is.exh
a7f00 61 75 73 74 65 64 2e 20 59 6f 75 20 61 72 65 20 61 6c 72 65 61 64 79 20 61 75 74 68 6f 72 69 7a austed..You.are.already.authoriz
a7f20 65 64 20 73 6f 20 79 6f 75 20 68 61 76 65 20 74 6f 20 77 61 69 74 20 75 6e 74 69 6c 20 25 73 20 ed.so.you.have.to.wait.until.%s.
a7f40 62 65 66 6f 72 65 20 64 6f 69 6e 67 20 6d 6f 72 65 20 72 65 71 75 65 73 74 73 3c 2f 65 72 72 6f before.doing.more.requests</erro
a7f60 72 3e 27 2c 0a 24 72 61 74 65 4c 69 6d 69 74 5b 27 6c 69 6d 69 74 27 5d 2c 0a 24 72 61 74 65 4c r>',.$rateLimit['limit'],.$rateL
a7f80 69 6d 69 74 5b 27 72 65 73 65 74 27 5d 0a 29 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 0a imit['reset'].));.}..throw.$e;..
a7fa0 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a default:.throw.$e;.}.}.}........
a7fc0 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 61 74 65 4c 69 6d 69 74 .protected.function.getRateLimit
a7fe0 28 61 72 72 61 79 20 24 68 65 61 64 65 72 73 29 0a 7b 0a 24 72 61 74 65 4c 69 6d 69 74 20 3d 20 (array.$headers).{.$rateLimit.=.
a8000 61 72 72 61 79 28 0a 27 6c 69 6d 69 74 27 20 3d 3e 20 27 3f 27 2c 0a 27 72 65 73 65 74 27 20 3d array(.'limit'.=>.'?',.'reset'.=
a8020 3e 20 27 3f 27 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 68 65 61 64 65 72 73 20 61 73 20 >.'?',.);..foreach.($headers.as.
a8040 24 68 65 61 64 65 72 29 20 7b 0a 24 68 65 61 64 65 72 20 3d 20 74 72 69 6d 28 24 68 65 61 64 65 $header).{.$header.=.trim($heade
a8060 72 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 68 65 61 64 65 72 r);.if.(false.===.strpos($header
a8080 2c 20 27 58 2d 52 61 74 65 4c 69 6d 69 74 2d 27 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d ,.'X-RateLimit-')).{.continue;.}
a80a0 0a 6c 69 73 74 28 24 74 79 70 65 2c 20 24 76 61 6c 75 65 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 .list($type,.$value).=.explode('
a80c0 3a 27 2c 20 24 68 65 61 64 65 72 2c 20 32 29 3b 0a 73 77 69 74 63 68 20 28 24 74 79 70 65 29 20 :',.$header,.2);.switch.($type).
a80e0 7b 0a 63 61 73 65 20 27 58 2d 52 61 74 65 4c 69 6d 69 74 2d 4c 69 6d 69 74 27 3a 0a 24 72 61 74 {.case.'X-RateLimit-Limit':.$rat
a8100 65 4c 69 6d 69 74 5b 27 6c 69 6d 69 74 27 5d 20 3d 20 28 69 6e 74 29 20 74 72 69 6d 28 24 76 61 eLimit['limit'].=.(int).trim($va
a8120 6c 75 65 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 58 2d 52 61 74 65 4c 69 6d 69 74 2d 52 lue);.break;.case.'X-RateLimit-R
a8140 65 73 65 74 27 3a 0a 24 72 61 74 65 4c 69 6d 69 74 5b 27 72 65 73 65 74 27 5d 20 3d 20 64 61 74 eset':.$rateLimit['reset'].=.dat
a8160 65 28 27 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 2c 20 28 69 6e 74 29 20 74 72 69 6d 28 24 76 61 6c e('Y-m-d.H:i:s',.(int).trim($val
a8180 75 65 29 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 61 74 65 4c 69 ue));.break;.}.}..return.$rateLi
a81a0 6d 69 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 mit;.}.......protected.function.
a81c0 66 65 74 63 68 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 0a 7b 0a 24 72 65 70 6f 44 61 74 fetchRootIdentifier().{.$repoDat
a81e0 61 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 69 55 72 6c 28 29 20 2e 20 27 2f 72 65 aUrl.=.$this->getApiUrl()...'/re
a8200 70 6f 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 pos/'.$this->owner.'/'.$this->re
a8220 70 6f 73 69 74 6f 72 79 3b 0a 0a 24 72 65 70 6f 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a pository;..$repoData.=.JsonFile:
a8240 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 :parseJson($this->getContents($r
a8260 65 70 6f 44 61 74 61 55 72 6c 2c 20 74 72 75 65 29 2c 20 24 72 65 70 6f 44 61 74 61 55 72 6c 29 epoDataUrl,.true),.$repoDataUrl)
a8280 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 72 65 70 6f 44 61 74 61 20 26 26 20 6e 75 6c 6c ;.if.(null.===.$repoData.&&.null
a82a0 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 29 20 7b 0a 72 65 74 75 72 6e 3b .!==.$this->gitDriver).{.return;
a82c0 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 77 6e 65 72 20 3d 20 24 72 65 70 6f 44 61 74 61 5b 27 6f 77 .}..$this->owner.=.$repoData['ow
a82e0 6e 65 72 27 5d 5b 27 6c 6f 67 69 6e 27 5d 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 ner']['login'];.$this->repositor
a8300 79 20 3d 20 24 72 65 70 6f 44 61 74 61 5b 27 6e 61 6d 65 27 5d 3b 0a 0a 24 74 68 69 73 2d 3e 69 y.=.$repoData['name'];..$this->i
a8320 73 50 72 69 76 61 74 65 20 3d 20 21 65 6d 70 74 79 28 24 72 65 70 6f 44 61 74 61 5b 27 70 72 69 sPrivate.=.!empty($repoData['pri
a8340 76 61 74 65 27 5d 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6f 44 61 74 61 5b 27 64 65 vate']);.if.(isset($repoData['de
a8360 66 61 75 6c 74 5f 62 72 61 6e 63 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 fault_branch'])).{.$this->rootId
a8380 65 6e 74 69 66 69 65 72 20 3d 20 24 72 65 70 6f 44 61 74 61 5b 27 64 65 66 61 75 6c 74 5f 62 72 entifier.=.$repoData['default_br
a83a0 61 6e 63 68 27 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6f 44 61 74 anch'];.}.elseif.(isset($repoDat
a83c0 61 5b 27 6d 61 73 74 65 72 5f 62 72 61 6e 63 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f a['master_branch'])).{.$this->ro
a83e0 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 24 72 65 70 6f 44 61 74 61 5b 27 6d 61 73 74 65 72 otIdentifier.=.$repoData['master
a8400 5f 62 72 61 6e 63 68 27 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 _branch'];.}.else.{.$this->rootI
a8420 64 65 6e 74 69 66 69 65 72 20 3d 20 27 6d 61 73 74 65 72 27 3b 0a 7d 0a 24 74 68 69 73 2d 3e 68 dentifier.=.'master';.}.$this->h
a8440 61 73 49 73 73 75 65 73 20 3d 20 21 65 6d 70 74 79 28 24 72 65 70 6f 44 61 74 61 5b 27 68 61 73 asIssues.=.!empty($repoData['has
a8460 5f 69 73 73 75 65 73 27 5d 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f _issues']);.}..protected.functio
a8480 6e 20 61 74 74 65 6d 70 74 43 6c 6f 6e 65 46 61 6c 6c 62 61 63 6b 28 29 0a 7b 0a 24 74 68 69 73 n.attemptCloneFallback().{.$this
a84a0 2d 3e 69 73 50 72 69 76 61 74 65 20 3d 20 74 72 75 65 3b 0a 0a 74 72 79 20 7b 0a 0a 20 0a 20 0a ->isPrivate.=.true;..try.{......
a84c0 20 0a 20 24 74 68 69 73 2d 3e 73 65 74 75 70 47 69 74 44 72 69 76 65 72 28 24 74 68 69 73 2d 3e ...$this->setupGitDriver($this->
a84e0 67 65 6e 65 72 61 74 65 53 73 68 55 72 6c 28 29 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 20 63 61 generateSshUrl());..return;.}.ca
a8500 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 tch.(\RuntimeException.$e).{.$th
a8520 69 73 2d 3e 67 69 74 44 72 69 76 65 72 20 3d 20 6e 75 6c 6c 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f is->gitDriver.=.null;..$this->io
a8540 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 46 61 69 6c 65 64 20 74 6f 20 63 ->writeError('<error>Failed.to.c
a8560 6c 6f 6e 65 20 74 68 65 20 27 2e 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 53 73 68 55 72 6c lone.the.'.$this->generateSshUrl
a8580 28 29 2e 27 20 72 65 70 6f 73 69 74 6f 72 79 2c 20 74 72 79 20 72 75 6e 6e 69 6e 67 20 69 6e 20 ().'.repository,.try.running.in.
a85a0 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 20 73 6f 20 74 68 61 74 20 79 6f 75 20 63 61 6e interactive.mode.so.that.you.can
a85c0 20 65 6e 74 65 72 20 79 6f 75 72 20 47 69 74 48 75 62 20 63 72 65 64 65 6e 74 69 61 6c 73 3c 2f .enter.your.GitHub.credentials</
a85e0 65 72 72 6f 72 3e 27 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 error>');.throw.$e;.}.}..protect
a8600 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 75 70 47 69 74 44 72 69 76 65 72 28 24 75 72 6c 29 ed.function.setupGitDriver($url)
a8620 0a 7b 0a 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 20 3d 20 6e 65 77 20 47 69 74 44 72 69 .{.$this->gitDriver.=.new.GitDri
a8640 76 65 72 28 0a 61 72 72 61 79 28 27 75 72 6c 27 20 3d 3e 20 24 75 72 6c 29 2c 0a 24 74 68 69 73 ver(.array('url'.=>.$url),.$this
a8660 2d 3e 69 6f 2c 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 0a 24 74 68 69 73 2d 3e 70 72 6f 63 ->io,.$this->config,.$this->proc
a8680 65 73 73 2c 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 0a 29 3b 0a ess,.$this->remoteFilesystem.);.
a86a0 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a $this->gitDriver->initialize();.
a86c0 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 65 78 74 50 61 67 }..protected.function.getNextPag
a86e0 65 28 29 0a 7b 0a 24 68 65 61 64 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 e().{.$headers.=.$this->remoteFi
a8700 6c 65 73 79 73 74 65 6d 2d 3e 67 65 74 4c 61 73 74 48 65 61 64 65 72 73 28 29 3b 0a 66 6f 72 65 lesystem->getLastHeaders();.fore
a8720 61 63 68 20 28 24 68 65 61 64 65 72 73 20 61 73 20 24 68 65 61 64 65 72 29 20 7b 0a 69 66 20 28 ach.($headers.as.$header).{.if.(
a8740 73 75 62 73 74 72 28 24 68 65 61 64 65 72 2c 20 30 2c 20 35 29 20 3d 3d 3d 20 27 4c 69 6e 6b 3a substr($header,.0,.5).===.'Link:
a8760 27 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 2c 27 2c 20 73 75 62 73 74 ').{.$links.=.explode(',',.subst
a8780 72 28 24 68 65 61 64 65 72 2c 20 35 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 r($header,.5));.foreach.($links.
a87a0 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 3c 28 2e as.$link).{.if.(preg_match('{<(.
a87c0 2b 3f 29 3e 3b 20 2a 72 65 6c 3d 22 6e 65 78 74 22 7d 27 2c 20 24 6c 69 6e 6b 2c 20 24 6d 61 74 +?)>;.*rel="next"}',.$link,.$mat
a87e0 63 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 7d ch)).{.return.$match[1];.}.}.}.}
a8800 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 .}.}.<?php............namespace.
a8820 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f Composer\Repository\Vcs;..use.Co
a8840 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 61 63 68 mposer\Config;.use.Composer\Cach
a8860 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a e;.use.Composer\IO\IOInterface;.
a8880 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 use.Composer\Json\JsonFile;.use.
a88a0 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 Composer\Downloader\TransportExc
a88c0 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 eption;.use.Composer\Util\Remote
a88e0 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 47 69 Filesystem;.use.Composer\Util\Gi
a8900 74 4c 61 62 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 4c 61 62 44 72 69 76 65 72 20 tLab;........class.GitLabDriver.
a8920 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 73 63 68 extends.VcsDriver.{.private.$sch
a8940 65 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 6f 77 6e 65 72 3b 0a 70 72 69 76 61 74 65 20 24 72 65 eme;.private.$owner;.private.$re
a8960 70 6f 73 69 74 6f 72 79 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 61 63 68 65 3b 0a 70 72 69 76 61 pository;..private.$cache;.priva
a8980 74 65 20 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 72 69 te.$infoCache.=.array();.....pri
a89a0 76 61 74 65 20 24 70 72 6f 6a 65 63 74 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d vate.$project;.....private.$comm
a89c0 69 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 74 61 67 73 its.=.array();.....private.$tags
a89e0 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 62 72 61 6e 63 68 65 73 3b 0a 0a 0a 0a 0a 0a 0a 70 ;.....private.$branches;.......p
a8a00 72 6f 74 65 63 74 65 64 20 24 67 69 74 44 72 69 76 65 72 3b 0a 0a 63 6f 6e 73 74 20 55 52 4c 5f rotected.$gitDriver;..const.URL_
a8a20 52 45 47 45 58 20 3d 20 27 23 5e 28 3f 3a 28 3f 50 3c 73 63 68 65 6d 65 3e 68 74 74 70 73 3f 29 REGEX.=.'#^(?:(?P<scheme>https?)
a8a40 3a 2f 2f 28 3f 50 3c 64 6f 6d 61 69 6e 3e 2e 2b 3f 29 2f 7c 67 69 74 40 28 3f 50 3c 64 6f 6d 61 ://(?P<domain>.+?)/|git@(?P<doma
a8a60 69 6e 32 3e 5b 5e 3a 5d 2b 29 3a 29 28 3f 50 3c 6f 77 6e 65 72 3e 5b 5e 2f 5d 2b 29 2f 28 3f 50 in2>[^:]+):)(?P<owner>[^/]+)/(?P
a8a80 3c 72 65 70 6f 3e 5b 5e 2f 5d 2b 3f 29 28 3f 3a 5c 2e 67 69 74 7c 2f 29 3f 24 23 27 3b 0a 0a 0a <repo>[^/]+?)(?:\.git|/)?$#';...
a8aa0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 .....public.function.initialize(
a8ac0 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 73 65 6c 66 3a 3a 55 52 4c 5f 52 45 ).{.if.(!preg_match(self::URL_RE
a8ae0 47 45 58 2c 20 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 74 68 72 6f GEX,.$this->url,.$match)).{.thro
a8b00 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 w.new.\InvalidArgumentException(
a8b20 27 54 68 65 20 55 52 4c 20 70 72 6f 76 69 64 65 64 20 69 73 20 69 6e 76 61 6c 69 64 2e 20 49 74 'The.URL.provided.is.invalid..It
a8b40 20 6d 75 73 74 20 62 65 20 74 68 65 20 48 54 54 50 20 55 52 4c 20 6f 66 20 61 20 47 69 74 4c 61 .must.be.the.HTTP.URL.of.a.GitLa
a8b60 62 20 70 72 6f 6a 65 63 74 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 63 68 65 6d 65 20 3d b.project.');.}..$this->scheme.=
a8b80 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 27 73 63 68 65 6d 65 27 5d 29 20 3f 20 24 6d 61 74 .!empty($match['scheme']).?.$mat
a8ba0 63 68 5b 27 73 63 68 65 6d 65 27 5d 20 3a 20 27 68 74 74 70 73 27 3b 0a 24 74 68 69 73 2d 3e 6f ch['scheme'].:.'https';.$this->o
a8bc0 72 69 67 69 6e 55 72 6c 20 3d 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 27 64 6f 6d 61 69 6e riginUrl.=.!empty($match['domain
a8be0 27 5d 29 20 3f 20 24 6d 61 74 63 68 5b 27 64 6f 6d 61 69 6e 27 5d 20 3a 20 24 6d 61 74 63 68 5b ']).?.$match['domain'].:.$match[
a8c00 27 64 6f 6d 61 69 6e 32 27 5d 3b 0a 24 74 68 69 73 2d 3e 6f 77 6e 65 72 20 3d 20 24 6d 61 74 63 'domain2'];.$this->owner.=.$matc
a8c20 68 5b 27 6f 77 6e 65 72 27 5d 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 h['owner'];.$this->repository.=.
a8c40 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 23 28 5c 2e 67 69 74 29 24 23 27 2c 20 27 27 2c 20 24 preg_replace('#(\.git)$#',.'',.$
a8c60 6d 61 74 63 68 5b 27 72 65 70 6f 27 5d 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 match['repo']);..$this->cache.=.
a8c80 6e 65 77 20 43 61 63 68 65 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 new.Cache($this->io,.$this->conf
a8ca0 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 29 2e 27 2f 27 2e 24 74 ig->get('cache-repo-dir').'/'.$t
a8cc0 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e his->originUrl.'/'.$this->owner.
a8ce0 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 0a 24 74 68 69 73 2d 3e '/'.$this->repository);..$this->
a8d00 66 65 74 63 68 50 72 6f 6a 65 63 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 fetchProject();.}........public.
a8d20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 52 65 6d function.setRemoteFilesystem(Rem
a8d40 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 29 oteFilesystem.$remoteFilesystem)
a8d60 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 72 65 .{.$this->remoteFilesystem.=.$re
a8d80 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 moteFilesystem;.}.........public
a8da0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e .function.getComposerInformation
a8dc0 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 0a 20 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 ($identifier).{...if.(!preg_matc
a8de0 68 28 27 7b 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 7d 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 h('{[a-f0-9]{40}}i',.$identifier
a8e00 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 42 72 61 6e 63 )).{.$branches.=.$this->getBranc
a8e20 68 65 73 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 62 72 61 6e 63 68 65 73 5b 24 69 64 65 6e hes();.if.(isset($branches[$iden
a8e40 74 69 66 69 65 72 5d 29 29 20 7b 0a 24 69 64 65 6e 74 69 66 69 65 72 20 3d 20 24 62 72 61 6e 63 tifier])).{.$identifier.=.$branc
a8e60 68 65 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 hes[$identifier];.}.}..if.(isset
a8e80 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 ($this->infoCache[$identifier]))
a8ea0 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e .{.return.$this->infoCache[$iden
a8ec0 74 69 66 69 65 72 5d 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d tifier];.}..if.(preg_match('{[a-
a8ee0 66 30 2d 39 5d 7b 34 30 7d 7d 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 20 26 26 20 24 72 f0-9]{40}}i',.$identifier).&&.$r
a8f00 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 69 64 65 6e 74 69 66 es.=.$this->cache->read($identif
a8f20 69 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b ier)).{.return.$this->infoCache[
a8f40 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 $identifier].=.JsonFile::parseJs
a8f60 6f 6e 28 24 72 65 73 2c 20 24 72 65 73 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 63 6f 6d 70 6f 73 on($res,.$res);.}..try.{.$compos
a8f80 65 72 20 3d 20 24 74 68 69 73 2d 3e 66 65 74 63 68 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 24 69 er.=.$this->fetchComposerFile($i
a8fa0 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 dentifier);.}.catch.(TransportEx
a8fc0 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 20 ception.$e).{.if.($e->getCode().
a8fe0 21 3d 3d 20 34 30 34 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 24 63 6f 6d 70 6f 73 65 72 !==.404).{.throw.$e;.}.$composer
a9000 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 20 26 26 20 21 69 .=.false;.}..if.($composer.&&.!i
a9020 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 20 26 26 20 69 73 73 65 74 sset($composer['time']).&&.isset
a9040 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 69 74 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b ($this->commits[$identifier])).{
a9060 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d .$composer['time'].=.$this->comm
a9080 69 74 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 5b 27 63 6f 6d 6d 69 74 74 65 64 5f 64 61 74 65 its[$identifier]['committed_date
a90a0 27 5d 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 5d '];.}..if.(preg_match('{[a-f0-9]
a90c0 7b 34 30 7d 7d 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e {40}}i',.$identifier)).{.$this->
a90e0 63 61 63 68 65 2d 3e 77 72 69 74 65 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 6a 73 6f 6e 5f 65 cache->write($identifier,.json_e
a9100 6e 63 6f 64 65 28 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 ncode($composer));.}..return.$th
a9120 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f is->infoCache[$identifier].=.$co
a9140 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 mposer;.}.....public.function.ge
a9160 74 52 65 70 6f 73 69 74 6f 72 79 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d tRepositoryUrl().{.return.$this-
a9180 3e 70 72 6f 6a 65 63 74 5b 27 73 73 68 5f 75 72 6c 5f 74 6f 5f 72 65 70 6f 27 5d 3b 0a 7d 0a 0a >project['ssh_url_to_repo'];.}..
a91a0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 72 65 ...public.function.getUrl().{.re
a91c0 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 6a 65 63 74 5b 27 77 65 62 5f 75 72 6c 27 5d 3b 0a turn.$this->project['web_url'];.
a91e0 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 24 69 }.....public.function.getDist($i
a9200 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 dentifier).{.$url.=.$this->getAp
a9220 69 55 72 6c 28 29 2e 27 2f 72 65 70 6f 73 69 74 6f 72 79 2f 61 72 63 68 69 76 65 2e 7a 69 70 3f iUrl().'/repository/archive.zip?
a9240 73 68 61 3d 27 2e 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 sha='.$identifier;..return.array
a9260 28 27 74 79 70 65 27 20 3d 3e 20 27 7a 69 70 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 75 72 6c 2c ('type'.=>.'zip',.'url'.=>.$url,
a9280 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 2c 20 27 73 68 .'reference'.=>.$identifier,.'sh
a92a0 61 73 75 6d 27 20 3d 3e 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 asum'.=>.'');.}.....public.funct
a92c0 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 ion.getSource($identifier).{.ret
a92e0 75 72 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 67 69 74 27 2c 20 27 75 72 6c 27 urn.array('type'.=>.'git',.'url'
a9300 20 3d 3e 20 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 55 72 6c 28 29 2c 20 27 .=>.$this->getRepositoryUrl(),.'
a9320 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 0a reference'.=>.$identifier);.}...
a9340 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 ..public.function.getRootIdentif
a9360 69 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 6a 65 63 74 5b 27 64 ier().{.return.$this->project['d
a9380 65 66 61 75 6c 74 5f 62 72 61 6e 63 68 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 efault_branch'];.}.....public.fu
a93a0 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 nction.getBranches().{.if.(!$thi
a93c0 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d s->branches).{.$this->branches.=
a93e0 20 24 74 68 69 73 2d 3e 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 27 62 72 61 6e 63 68 65 73 27 .$this->getReferences('branches'
a9400 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a );.}..return.$this->branches;.}.
a9420 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a ....public.function.getTags().{.
a9440 69 66 20 28 21 24 74 68 69 73 2d 3e 74 61 67 73 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 if.(!$this->tags).{.$this->tags.
a9460 3d 20 24 74 68 69 73 2d 3e 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 27 74 61 67 73 27 29 3b 0a =.$this->getReferences('tags');.
a9480 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a }..return.$this->tags;.}........
a94a0 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 65 74 63 68 43 6f 6d 70 6f 73 65 .protected.function.fetchCompose
a94c0 72 46 69 6c 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d rFile($identifier).{.$resource.=
a94e0 20 24 74 68 69 73 2d 3e 67 65 74 41 70 69 55 72 6c 28 29 2e 27 2f 72 65 70 6f 73 69 74 6f 72 79 .$this->getApiUrl().'/repository
a9500 2f 62 6c 6f 62 73 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 2e 27 3f 66 69 6c 65 70 61 74 68 3d /blobs/'.$identifier.'?filepath=
a9520 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 0a 72 65 74 75 72 6e 20 4a 73 6f 6e 46 69 6c 65 composer.json';..return.JsonFile
a9540 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 ::parseJson($this->getContents($
a9560 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 resource),.$resource);.}.....pub
a9580 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 70 69 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 lic.function.getApiUrl().{.retur
a95a0 6e 20 24 74 68 69 73 2d 3e 73 63 68 65 6d 65 2e 27 3a 2f 2f 27 2e 24 74 68 69 73 2d 3e 6f 72 69 n.$this->scheme.'://'.$this->ori
a95c0 67 69 6e 55 72 6c 2e 27 2f 61 70 69 2f 76 33 2f 70 72 6f 6a 65 63 74 73 2f 27 2e 24 74 68 69 73 ginUrl.'/api/v3/projects/'.$this
a95e0 2d 3e 6f 77 6e 65 72 2e 27 25 32 46 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 3b ->owner.'%2F'.$this->repository;
a9600 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 .}.......protected.function.getR
a9620 65 66 65 72 65 6e 63 65 73 28 24 74 79 70 65 29 0a 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 eferences($type).{.$resource.=.$
a9640 74 68 69 73 2d 3e 67 65 74 41 70 69 55 72 6c 28 29 2e 27 2f 72 65 70 6f 73 69 74 6f 72 79 2f 27 this->getApiUrl().'/repository/'
a9660 2e 24 74 79 70 65 3b 0a 0a 24 64 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 .$type;..$data.=.JsonFile::parse
a9680 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 Json($this->getContents($resourc
a96a0 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 0a 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 61 e),.$resource);..$references.=.a
a96c0 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 20 61 73 20 24 64 61 74 75 rray();..foreach.($data.as.$datu
a96e0 6d 29 20 7b 0a 24 72 65 66 65 72 65 6e 63 65 73 5b 24 64 61 74 75 6d 5b 27 6e 61 6d 65 27 5d 5d m).{.$references[$datum['name']]
a9700 20 3d 20 24 64 61 74 75 6d 5b 27 63 6f 6d 6d 69 74 27 5d 5b 27 69 64 27 5d 3b 0a 0a 0a 20 0a 20 .=.$datum['commit']['id'];......
a9720 24 74 68 69 73 2d 3e 63 6f 6d 6d 69 74 73 5b 24 64 61 74 75 6d 5b 27 63 6f 6d 6d 69 74 27 5d 5b $this->commits[$datum['commit'][
a9740 27 69 64 27 5d 5d 20 3d 20 24 64 61 74 75 6d 5b 27 63 6f 6d 6d 69 74 27 5d 3b 0a 7d 0a 0a 72 65 'id']].=.$datum['commit'];.}..re
a9760 74 75 72 6e 20 24 72 65 66 65 72 65 6e 63 65 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 turn.$references;.}..protected.f
a9780 75 6e 63 74 69 6f 6e 20 66 65 74 63 68 50 72 6f 6a 65 63 74 28 29 0a 7b 0a 0a 20 24 72 65 73 6f unction.fetchProject().{...$reso
a97a0 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 69 55 72 6c 28 29 3b 0a 24 74 68 69 73 urce.=.$this->getApiUrl();.$this
a97c0 2d 3e 70 72 6f 6a 65 63 74 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 ->project.=.JsonFile::parseJson(
a97e0 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 2c 20 74 72 $this->getContents($resource,.tr
a9800 75 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 ue),.$resource);.}..protected.fu
a9820 6e 63 74 69 6f 6e 20 61 74 74 65 6d 70 74 43 6c 6f 6e 65 46 61 6c 6c 62 61 63 6b 28 29 0a 7b 0a nction.attemptCloneFallback().{.
a9840 74 72 79 20 7b 0a 0a 20 0a 20 0a 20 24 74 68 69 73 2d 3e 73 65 74 75 70 47 69 74 44 72 69 76 65 try.{.......$this->setupGitDrive
a9860 72 28 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 53 73 68 55 72 6c 28 29 29 3b 0a 0a 72 65 74 r($this->generateSshUrl());..ret
a9880 75 72 6e 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 urn;.}.catch.(\RuntimeException.
a98a0 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 20 3d 20 6e 75 6c 6c 3b 0a 0a $e).{.$this->gitDriver.=.null;..
a98c0 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 46 61 $this->io->writeError('<error>Fa
a98e0 69 6c 65 64 20 74 6f 20 63 6c 6f 6e 65 20 74 68 65 20 27 2e 24 74 68 69 73 2d 3e 67 65 6e 65 72 iled.to.clone.the.'.$this->gener
a9900 61 74 65 53 73 68 55 72 6c 28 29 2e 27 20 72 65 70 6f 73 69 74 6f 72 79 2c 20 74 72 79 20 72 75 ateSshUrl().'.repository,.try.ru
a9920 6e 6e 69 6e 67 20 69 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 20 73 6f 20 74 68 61 nning.in.interactive.mode.so.tha
a9940 74 20 79 6f 75 20 63 61 6e 20 65 6e 74 65 72 20 79 6f 75 72 20 63 72 65 64 65 6e 74 69 61 6c 73 t.you.can.enter.your.credentials
a9960 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a </error>');.throw.$e;.}.}.......
a9980 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 53 73 68 55 72 protected.function.generateSshUr
a99a0 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 67 69 74 40 27 20 2e 20 24 74 68 69 73 2d 3e 6f 72 69 l().{.return.'git@'...$this->ori
a99c0 67 69 6e 55 72 6c 20 2e 20 27 3a 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 ginUrl...':'.$this->owner.'/'.$t
a99e0 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2e 67 69 74 27 3b 0a 7d 0a 0a 70 72 6f 74 65 his->repository.'.git';.}..prote
a9a00 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 75 70 47 69 74 44 72 69 76 65 72 28 24 75 72 cted.function.setupGitDriver($ur
a9a20 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 20 3d 20 6e 65 77 20 47 69 74 44 l).{.$this->gitDriver.=.new.GitD
a9a40 72 69 76 65 72 28 0a 61 72 72 61 79 28 27 75 72 6c 27 20 3d 3e 20 24 75 72 6c 29 2c 0a 24 74 68 river(.array('url'.=>.$url),.$th
a9a60 69 73 2d 3e 69 6f 2c 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 0a 24 74 68 69 73 2d 3e 70 72 is->io,.$this->config,.$this->pr
a9a80 6f 63 65 73 73 2c 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 0a 29 ocess,.$this->remoteFilesystem.)
a9aa0 3b 0a 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 ;.$this->gitDriver->initialize()
a9ac0 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f ;.}.....protected.function.getCo
a9ae0 6e 74 65 6e 74 73 28 24 75 72 6c 2c 20 24 66 65 74 63 68 69 6e 67 52 65 70 6f 44 61 74 61 20 3d ntents($url,.$fetchingRepoData.=
a9b00 20 66 61 6c 73 65 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 67 .false).{.try.{.return.parent::g
a9b20 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 etContents($url);.}.catch.(Trans
a9b40 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 67 69 74 4c 61 62 55 74 69 6c 20 portException.$e).{.$gitLabUtil.
a9b60 3d 20 6e 65 77 20 47 69 74 4c 61 62 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 =.new.GitLab($this->io,.$this->c
a9b80 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2c 20 24 74 68 69 73 2d 3e 72 65 onfig,.$this->process,.$this->re
a9ba0 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 29 3b 0a 0a 73 77 69 74 63 68 20 28 24 65 2d 3e 67 65 moteFilesystem);..switch.($e->ge
a9bc0 74 43 6f 64 65 28 29 29 20 7b 0a 63 61 73 65 20 34 30 31 3a 0a 63 61 73 65 20 34 30 34 3a 0a 0a tCode()).{.case.401:.case.404:..
a9be0 20 69 66 20 28 21 24 66 65 74 63 68 69 6e 67 52 65 70 6f 44 61 74 61 29 20 7b 0a 74 68 72 6f 77 .if.(!$fetchingRepoData).{.throw
a9c00 20 24 65 3b 0a 7d 0a 0a 69 66 20 28 24 67 69 74 4c 61 62 55 74 69 6c 2d 3e 61 75 74 68 6f 72 69 .$e;.}..if.($gitLabUtil->authori
a9c20 7a 65 4f 41 75 74 68 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 29 29 20 7b 0a 72 65 74 zeOAuth($this->originUrl)).{.ret
a9c40 75 72 6e 20 70 61 72 65 6e 74 3a 3a 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 3b 0a 7d urn.parent::getContents($url);.}
a9c60 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 ..if.(!$this->io->isInteractive(
a9c80 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 74 74 65 6d 70 74 43 6c 6f 6e 65 46 )).{.return.$this->attemptCloneF
a9ca0 61 6c 6c 62 61 63 6b 28 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 allback();.}.$this->io->writeErr
a9cc0 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 46 61 69 6c 65 64 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 or('<warning>Failed.to.download.
a9ce0 27 20 2e 20 24 74 68 69 73 2d 3e 6f 77 6e 65 72 20 2e 20 27 2f 27 20 2e 20 24 74 68 69 73 2d 3e '...$this->owner...'/'...$this->
a9d00 72 65 70 6f 73 69 74 6f 72 79 20 2e 20 27 3a 27 20 2e 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 repository...':'...$e->getMessag
a9d20 65 28 29 20 2e 20 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 24 67 69 74 4c 61 62 55 74 69 6c e()...'</warning>');.$gitLabUtil
a9d40 2d 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 24 74 ->authorizeOAuthInteractively($t
a9d60 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 27 59 6f 75 72 20 63 72 65 64 65 6e 74 69 61 6c his->originUrl,.'Your.credential
a9d80 73 20 61 72 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 66 65 74 63 68 20 70 72 69 76 61 74 65 20 s.are.required.to.fetch.private.
a9da0 72 65 70 6f 73 69 74 6f 72 79 20 6d 65 74 61 64 61 74 61 20 28 3c 69 6e 66 6f 3e 27 2e 24 74 68 repository.metadata.(<info>'.$th
a9dc0 69 73 2d 3e 75 72 6c 2e 27 3c 2f 69 6e 66 6f 3e 29 27 29 3b 0a 0a 72 65 74 75 72 6e 20 70 61 72 is->url.'</info>)');..return.par
a9de0 65 6e 74 3a 3a 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 3b 0a 0a 63 61 73 65 20 34 30 ent::getContents($url);..case.40
a9e00 33 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 68 61 73 41 75 74 68 65 6e 74 69 63 61 3:.if.(!$this->io->hasAuthentica
a9e20 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 29 20 26 26 20 24 67 69 74 4c 61 tion($this->originUrl).&&.$gitLa
a9e40 62 55 74 69 6c 2d 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 28 24 74 68 69 73 2d 3e 6f 72 69 bUtil->authorizeOAuth($this->ori
a9e60 67 69 6e 55 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 67 65 74 43 6f 6e ginUrl)).{.return.parent::getCon
a9e80 74 65 6e 74 73 28 24 75 72 6c 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e tents($url);.}..if.(!$this->io->
a9ea0 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 20 26 26 20 24 66 65 74 63 68 69 6e 67 52 65 70 6f isInteractive().&&.$fetchingRepo
a9ec0 44 61 74 61 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 74 74 65 6d 70 74 43 6c 6f Data).{.return.$this->attemptClo
a9ee0 6e 65 46 61 6c 6c 62 61 63 6b 28 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 0a 64 65 66 61 neFallback();.}..throw.$e;..defa
a9f00 75 6c 74 3a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ult:.throw.$e;.}.}.}........publ
a9f20 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e ic.static.function.supports(IOIn
a9f40 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 24 75 72 terface.$io,.Config.$config,.$ur
a9f60 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 l,.$deep.=.false).{.if.(!preg_ma
a9f80 74 63 68 28 73 65 6c 66 3a 3a 55 52 4c 5f 52 45 47 45 58 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 tch(self::URL_REGEX,.$url,.$matc
a9fa0 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 73 63 68 65 6d 65 20 3d h)).{.return.false;.}..$scheme.=
a9fc0 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 27 73 63 68 65 6d 65 27 5d 29 20 3f 20 24 6d 61 74 .!empty($match['scheme']).?.$mat
a9fe0 63 68 5b 27 73 63 68 65 6d 65 27 5d 20 3a 20 27 68 74 74 70 73 27 3b 0a 24 6f 72 69 67 69 6e 55 ch['scheme'].:.'https';.$originU
aa000 72 6c 20 3d 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 27 64 6f 6d 61 69 6e 27 5d 29 20 3f 20 rl.=.!empty($match['domain']).?.
aa020 24 6d 61 74 63 68 5b 27 64 6f 6d 61 69 6e 27 5d 20 3a 20 24 6d 61 74 63 68 5b 27 64 6f 6d 61 69 $match['domain'].:.$match['domai
aa040 6e 32 27 5d 3b 0a 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 6f 72 69 67 69 6e 55 72 6c 2c n2'];..if.(!in_array($originUrl,
aa060 20 28 61 72 72 61 79 29 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 6c 61 62 2d 64 6f .(array).$config->get('gitlab-do
aa080 6d 61 69 6e 73 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 mains'))).{.return.false;.}..if.
aa0a0 28 27 68 74 74 70 73 27 20 3d 3d 3d 20 24 73 63 68 65 6d 65 20 26 26 20 21 65 78 74 65 6e 73 69 ('https'.===.$scheme.&&.!extensi
aa0c0 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 on_loaded('openssl')).{.$io->wri
aa0e0 74 65 45 72 72 6f 72 28 27 53 6b 69 70 70 69 6e 67 20 47 69 74 4c 61 62 20 64 72 69 76 65 72 20 teError('Skipping.GitLab.driver.
aa100 66 6f 72 20 27 2e 24 75 72 6c 2e 27 20 62 65 63 61 75 73 65 20 74 68 65 20 4f 70 65 6e 53 53 4c for.'.$url.'.because.the.OpenSSL
aa120 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2e 27 2c 20 74 72 75 .PHP.extension.is.missing.',.tru
aa140 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 45 29 3b 0a 0a 72 65 74 75 72 e,.IOInterface::VERBOSE);..retur
aa160 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 n.false;.}..return.true;.}.}.<?p
aa180 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
aa1a0 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 \Repository\Vcs;..use.Composer\C
aa1c0 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 ache;.use.Composer\Config;.use.C
aa1e0 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f omposer\Json\JsonFile;.use.Compo
aa200 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 67 ser\IO\IOInterface;.....class.Hg
aa220 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 BitbucketDriver.extends.VcsDrive
aa240 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 r.{.protected.$cache;.protected.
aa260 24 6f 77 6e 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 70 $owner;.protected.$repository;.p
aa280 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 rotected.$tags;.protected.$branc
aa2a0 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a hes;.protected.$rootIdentifier;.
aa2c0 70 72 6f 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a protected.$infoCache.=.array();.
aa2e0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 ....public.function.initialize()
aa300 0a 7b 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 68 74 74 70 73 3f 3a 2f 2f 62 69 74 62 75 63 .{.preg_match('#^https?://bitbuc
aa320 6b 65 74 5c 2e 6f 72 67 2f 28 5b 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 29 2f 3f 24 23 27 2c 20 24 ket\.org/([^/]+)/([^/]+)/?$#',.$
aa340 74 68 69 73 2d 3e 75 72 6c 2c 20 24 6d 61 74 63 68 29 3b 0a 24 74 68 69 73 2d 3e 6f 77 6e 65 72 this->url,.$match);.$this->owner
aa360 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 .=.$match[1];.$this->repository.
aa380 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 20 =.$match[2];.$this->originUrl.=.
aa3a0 27 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 27 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 'bitbucket.org';.$this->cache.=.
aa3c0 6e 65 77 20 43 61 63 68 65 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 new.Cache($this->io,.$this->conf
aa3e0 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 29 2e 27 2f 27 2e 24 74 ig->get('cache-repo-dir').'/'.$t
aa400 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e his->originUrl.'/'.$this->owner.
aa420 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 '/'.$this->repository);.}.....pu
aa440 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 blic.function.getRootIdentifier(
aa460 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e ).{.if.(null.===.$this->rootIden
aa480 74 69 66 69 65 72 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 tifier).{.$resource.=.$this->get
aa4a0 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 61 70 69 Scheme()...'://bitbucket.org/api
aa4c0 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 /1.0/repositories/'.$this->owner
aa4e0 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 74 61 67 73 27 3b 0a .'/'.$this->repository.'/tags';.
aa500 24 72 65 70 6f 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 $repoData.=.JsonFile::parseJson(
aa520 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 $this->getContents($resource),.$
aa540 72 65 73 6f 75 72 63 65 29 3b 0a 69 66 20 28 61 72 72 61 79 28 29 20 3d 3d 3d 20 24 72 65 70 6f resource);.if.(array().===.$repo
aa560 44 61 74 61 20 7c 7c 20 21 69 73 73 65 74 28 24 72 65 70 6f 44 61 74 61 5b 27 74 69 70 27 5d 29 Data.||.!isset($repoData['tip'])
aa580 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 ).{.throw.new.\RuntimeException(
aa5a0 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 64 6f 65 73 20 6e 6f 74 20 61 70 70 65 61 72 20 74 6f 20 $this->url.'.does.not.appear.to.
aa5c0 62 65 20 61 20 6d 65 72 63 75 72 69 61 6c 20 72 65 70 6f 73 69 74 6f 72 79 2c 20 75 73 65 20 27 be.a.mercurial.repository,.use.'
aa5e0 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2e 67 69 74 20 69 66 20 74 68 69 73 20 69 73 20 61 20 67 .$this->url.'.git.if.this.is.a.g
aa600 69 74 20 62 69 74 62 75 63 6b 65 74 20 72 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 7d 0a 24 74 68 it.bitbucket.repository');.}.$th
aa620 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 24 72 65 70 6f 44 61 74 61 5b 27 is->rootIdentifier.=.$repoData['
aa640 74 69 70 27 5d 5b 27 72 61 77 5f 6e 6f 64 65 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 tip']['raw_node'];.}..return.$th
aa660 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 is->rootIdentifier;.}.....public
aa680 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 .function.getUrl().{.return.$thi
aa6a0 73 2d 3e 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 s->url;.}.....public.function.ge
aa6c0 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 tSource($identifier).{.return.ar
aa6e0 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 68 67 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 ray('type'.=>.'hg',.'url'.=>.$th
aa700 69 73 2d 3e 67 65 74 55 72 6c 28 29 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 is->getUrl(),.'reference'.=>.$id
aa720 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e entifier);.}.....public.function
aa740 20 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 75 72 6c 20 3d 20 24 .getDist($identifier).{.$url.=.$
aa760 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 this->getScheme()...'://bitbucke
aa780 74 2e 6f 72 67 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e t.org/'.$this->owner.'/'.$this->
aa7a0 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 67 65 74 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 2e 27 repository.'/get/'.$identifier.'
aa7c0 2e 7a 69 70 27 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 .zip';..return.array('type'.=>.'
aa7e0 7a 69 70 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 75 72 6c 2c 20 27 72 65 66 65 72 65 6e 63 65 27 zip',.'url'.=>.$url,.'reference'
aa800 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 2c 20 27 73 68 61 73 75 6d 27 20 3d 3e 20 27 27 29 .=>.$identifier,.'shasum'.=>.'')
aa820 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f ;.}.....public.function.getCompo
aa840 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 serInformation($identifier).{.if
aa860 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 7d 69 27 2c 20 .(preg_match('{[a-f0-9]{40}}i',.
aa880 24 69 64 65 6e 74 69 66 69 65 72 29 20 26 26 20 24 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 61 $identifier).&&.$res.=.$this->ca
aa8a0 63 68 65 2d 3e 72 65 61 64 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 73 2d che->read($identifier)).{.$this-
aa8c0 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 4a 73 6f 6e 46 69 >infoCache[$identifier].=.JsonFi
aa8e0 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 72 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 le::parseJson($res);.}..if.(!iss
aa900 65 74 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d et($this->infoCache[$identifier]
aa920 29 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d )).{.$resource.=.$this->getSchem
aa940 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 61 70 69 2f 31 2e 30 2f e()...'://bitbucket.org/api/1.0/
aa960 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e repositories/'.$this->owner.'/'.
aa980 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 73 72 63 2f 27 2e 24 69 64 65 6e 74 $this->repository.'/src/'.$ident
aa9a0 69 66 69 65 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 24 72 65 70 6f 44 61 74 ifier.'/composer.json';.$repoDat
aa9c0 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 a.=.JsonFile::parseJson($this->g
aa9e0 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 etContents($resource),.$resource
aaa00 29 3b 0a 0a 0a 20 0a 20 0a 20 0a 0a 69 66 20 28 21 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 );..........if.(!array_key_exist
aaa20 73 28 27 64 61 74 61 27 2c 20 24 72 65 70 6f 44 61 74 61 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a s('data',.$repoData)).{.return;.
aaa40 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 }..$composer.=.JsonFile::parseJs
aaa60 6f 6e 28 24 72 65 70 6f 44 61 74 61 5b 27 64 61 74 61 27 5d 2c 20 24 72 65 73 6f 75 72 63 65 29 on($repoData['data'],.$resource)
aaa80 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 29 ;..if.(empty($composer['time']))
aaaa0 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 .{.$resource.=.$this->getScheme(
aaac0 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 61 70 69 2f 31 2e 30 2f 72 65 )...'://bitbucket.org/api/1.0/re
aaae0 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 positories/'.$this->owner.'/'.$t
aab00 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 63 68 61 6e 67 65 73 65 74 73 2f 27 2e 24 his->repository.'/changesets/'.$
aab20 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 63 68 61 6e 67 65 73 65 74 20 3d 20 4a 73 6f 6e 46 69 6c identifier;.$changeset.=.JsonFil
aab40 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 e::parseJson($this->getContents(
aab60 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 63 6f 6d 70 6f 73 65 $resource),.$resource);.$compose
aab80 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 63 68 61 6e 67 65 73 65 74 5b 27 74 69 6d 65 73 74 61 6d r['time'].=.$changeset['timestam
aaba0 70 27 5d 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 p'];.}..if.(preg_match('{[a-f0-9
aabc0 5d 7b 34 30 7d 7d 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 73 2d ]{40}}i',.$identifier)).{.$this-
aabe0 3e 63 61 63 68 65 2d 3e 77 72 69 74 65 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 6a 73 6f 6e 5f >cache->write($identifier,.json_
aac00 65 6e 63 6f 64 65 28 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e encode($composer));.}..$this->in
aac20 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 foCache[$identifier].=.$composer
aac40 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 ;.}..return.$this->infoCache[$id
aac60 65 6e 74 69 66 69 65 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e entifier];.}.....public.function
aac80 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d .getTags().{.if.(null.===.$this-
aaca0 3e 74 61 67 73 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 >tags).{.$resource.=.$this->getS
aacc0 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 61 70 69 2f cheme()...'://bitbucket.org/api/
aace0 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 1.0/repositories/'.$this->owner.
aad00 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 74 61 67 73 27 3b 0a 24 '/'.$this->repository.'/tags';.$
aad20 74 61 67 73 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 tagsData.=.JsonFile::parseJson($
aad40 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 this->getContents($resource),.$r
aad60 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b esource);.$this->tags.=.array();
aad80 0a 66 6f 72 65 61 63 68 20 28 24 74 61 67 73 44 61 74 61 20 61 73 20 24 74 61 67 20 3d 3e 20 24 .foreach.($tagsData.as.$tag.=>.$
aada0 64 61 74 61 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 5b 24 74 61 67 5d 20 3d 20 24 64 61 74 data).{.$this->tags[$tag].=.$dat
aadc0 61 5b 27 72 61 77 5f 6e 6f 64 65 27 5d 3b 0a 7d 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 74 61 a['raw_node'];.}.unset($this->ta
aade0 67 73 5b 27 74 69 70 27 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 gs['tip']);.}..return.$this->tag
aae00 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e s;.}.....public.function.getBran
aae20 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 ches().{.if.(null.===.$this->bra
aae40 6e 63 68 65 73 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 nches).{.$resource.=.$this->getS
aae60 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 61 70 69 2f cheme()...'://bitbucket.org/api/
aae80 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 1.0/repositories/'.$this->owner.
aaea0 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 62 72 61 6e 63 68 65 73 '/'.$this->repository.'/branches
aaec0 27 3b 0a 24 62 72 61 6e 63 68 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 ';.$branchData.=.JsonFile::parse
aaee0 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 Json($this->getContents($resourc
aaf00 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 e),.$resource);.$this->branches.
aaf20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 62 72 61 6e 63 68 44 61 74 61 20 =.array();.foreach.($branchData.
aaf40 61 73 20 24 62 72 61 6e 63 68 20 3d 3e 20 24 64 61 74 61 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 as.$branch.=>.$data).{.$this->br
aaf60 61 6e 63 68 65 73 5b 24 62 72 61 6e 63 68 5d 20 3d 20 24 64 61 74 61 5b 27 72 61 77 5f 6e 6f 64 anches[$branch].=.$data['raw_nod
aaf80 65 27 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 e'];.}.}..return.$this->branches
aafa0 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 ;.}.....public.static.function.s
aafc0 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 upports(IOInterface.$io,.Config.
aafe0 24 63 6f 6e 66 69 67 2c 20 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a $config,.$url,.$deep.=.false).{.
ab000 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 68 74 74 70 73 3f 3a 2f 2f 62 69 74 62 if.(!preg_match('#^https?://bitb
ab020 75 63 6b 65 74 5c 2e 6f 72 67 2f 28 5b 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 29 2f 3f 24 23 27 2c ucket\.org/([^/]+)/([^/]+)/?$#',
ab040 20 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 .$url)).{.return.false;.}..if.(!
ab060 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 24 extension_loaded('openssl')).{.$
ab080 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 53 6b 69 70 70 69 6e 67 20 42 69 74 62 75 63 6b io->writeError('Skipping.Bitbuck
ab0a0 65 74 20 68 67 20 64 72 69 76 65 72 20 66 6f 72 20 27 2e 24 75 72 6c 2e 27 20 62 65 63 61 75 73 et.hg.driver.for.'.$url.'.becaus
ab0c0 65 20 74 68 65 20 4f 70 65 6e 53 53 4c 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d e.the.OpenSSL.PHP.extension.is.m
ab0e0 69 73 73 69 6e 67 2e 27 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 issing.',.true,.IOInterface::VER
ab100 42 4f 53 45 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 BOSE);..return.false;.}..return.
ab120 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 true;.}.}.<?php............names
ab140 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 pace.Composer\Repository\Vcs;..u
ab160 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 se.Composer\Config;.use.Composer
ab180 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 \Json\JsonFile;.use.Composer\Uti
ab1a0 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c l\ProcessExecutor;.use.Composer\
ab1c0 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f Util\Filesystem;.use.Composer\IO
ab1e0 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c \IOInterface;.use.Composer\Downl
ab200 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c oader\TransportException;.....cl
ab220 61 73 73 20 48 67 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 72 0a 7b ass.HgDriver.extends.VcsDriver.{
ab240 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 .protected.$tags;.protected.$bra
ab260 6e 63 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 nches;.protected.$rootIdentifier
ab280 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 44 69 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 ;.protected.$repoDir;.protected.
ab2a0 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 $infoCache.=.array();.....public
ab2c0 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 69 66 20 28 46 69 6c .function.initialize().{.if.(Fil
ab2e0 65 73 79 73 74 65 6d 3a 3a 69 73 4c 6f 63 61 6c 50 61 74 68 28 24 74 68 69 73 2d 3e 75 72 6c 29 esystem::isLocalPath($this->url)
ab300 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 75 72 6c 3b ).{.$this->repoDir.=.$this->url;
ab320 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 61 63 68 65 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e .}.else.{.$cacheDir.=.$this->con
ab340 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 76 63 73 2d 64 69 72 27 29 3b 0a 24 74 68 69 73 fig->get('cache-vcs-dir');.$this
ab360 2d 3e 72 65 70 6f 44 69 72 20 3d 20 24 63 61 63 68 65 44 69 72 20 2e 20 27 2f 27 20 2e 20 70 72 ->repoDir.=.$cacheDir...'/'...pr
ab380 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 5e 61 2d 7a 30 2d 39 5d 7d 69 27 2c 20 27 2d 27 2c 20 eg_replace('{[^a-z0-9]}i',.'-',.
ab3a0 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 27 2f 27 3b 0a 0a 24 66 73 20 3d 20 6e 65 77 20 46 69 $this->url)...'/';..$fs.=.new.Fi
ab3c0 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 66 73 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 lesystem();.$fs->ensureDirectory
ab3e0 45 78 69 73 74 73 28 24 63 61 63 68 65 44 69 72 29 3b 0a 0a 69 66 20 28 21 69 73 5f 77 72 69 74 Exists($cacheDir);..if.(!is_writ
ab400 61 62 6c 65 28 64 69 72 6e 61 6d 65 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 29 29 20 7b able(dirname($this->repoDir))).{
ab420 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 61 .throw.new.\RuntimeException('Ca
ab440 6e 20 6e 6f 74 20 63 6c 6f 6e 65 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 74 6f 20 61 63 n.not.clone.'.$this->url.'.to.ac
ab460 63 65 73 73 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 65 20 22 27 cess.package.information..The."'
ab480 2e 24 63 61 63 68 65 44 69 72 2e 27 22 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 6e 6f 74 20 77 .$cacheDir.'".directory.is.not.w
ab4a0 72 69 74 61 62 6c 65 20 62 79 20 74 68 65 20 63 75 72 72 65 6e 74 20 75 73 65 72 2e 27 29 3b 0a ritable.by.the.current.user.');.
ab4c0 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 3a 7d 69 27 2c 20 24 }..if.(preg_match('{^http:}i',.$
ab4e0 74 68 69 73 2d 3e 75 72 6c 29 20 26 26 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 this->url).&&.$this->config->get
ab500 28 27 73 65 63 75 72 65 2d 68 74 74 70 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 ('secure-http')).{.throw.new.Tra
ab520 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 22 59 6f 75 72 20 63 6f 6e 66 69 67 75 72 61 74 nsportException("Your.configurat
ab540 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f ion.does.not.allow.connection.to
ab560 20 24 75 72 6c 2e 20 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f .$url..See.https://getcomposer.o
ab580 72 67 2f 64 6f 63 2f 30 36 2d 63 6f 6e 66 69 67 2e 6d 64 23 73 65 63 75 72 65 2d 68 74 74 70 20 rg/doc/06-config.md#secure-http.
ab5a0 66 6f 72 20 64 65 74 61 69 6c 73 2e 22 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 64 69 72 28 for.details.");.}....if.(is_dir(
ab5c0 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 20 26 26 20 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e $this->repoDir).&&.0.===.$this->
ab5e0 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 67 20 73 75 6d 6d 61 72 79 27 2c 20 24 process->execute('hg.summary',.$
ab600 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 29 20 7b 0a 69 66 20 28 30 output,.$this->repoDir)).{.if.(0
ab620 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 67 .!==.$this->process->execute('hg
ab640 20 70 75 6c 6c 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 .pull',.$output,.$this->repoDir)
ab660 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f ).{.$this->io->writeError('<erro
ab680 72 3e 46 61 69 6c 65 64 20 74 6f 20 75 70 64 61 74 65 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e r>Failed.to.update.'.$this->url.
ab6a0 27 2c 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 72 6f 6d 20 74 68 69 73 ',.package.information.from.this
ab6c0 20 72 65 70 6f 73 69 74 6f 72 79 20 6d 61 79 20 62 65 20 6f 75 74 64 61 74 65 64 20 28 27 2e 24 .repository.may.be.outdated.('.$
ab6e0 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2e this->process->getErrorOutput().
ab700 27 29 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 66 73 2d 3e ')</error>');.}.}.else.{...$fs->
ab720 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b removeDirectory($this->repoDir);
ab740 0a 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 ..if.(0.!==.$this->process->exec
ab760 75 74 65 28 73 70 72 69 6e 74 66 28 27 68 67 20 63 6c 6f 6e 65 20 2d 2d 6e 6f 75 70 64 61 74 65 ute(sprintf('hg.clone.--noupdate
ab780 20 25 73 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 .%s.%s',.ProcessExecutor::escape
ab7a0 28 24 74 68 69 73 2d 3e 75 72 6c 29 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 ($this->url),.ProcessExecutor::e
ab7c0 73 63 61 70 65 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 29 2c 20 24 6f 75 74 70 75 74 2c scape($this->repoDir)),.$output,
ab7e0 20 24 63 61 63 68 65 44 69 72 29 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e .$cacheDir)).{.$output.=.$this->
ab800 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 0a 69 66 20 28 process->getErrorOutput();..if.(
ab820 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 0.!==.$this->process->execute('h
ab840 67 20 2d 2d 76 65 72 73 69 6f 6e 27 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b g.--version',.$ignoredOutput)).{
ab860 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 .throw.new.\RuntimeException('Fa
ab880 69 6c 65 64 20 74 6f 20 63 6c 6f 6e 65 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2c 20 68 67 iled.to.clone.'.$this->url.',.hg
ab8a0 20 77 61 73 20 6e 6f 74 20 66 6f 75 6e 64 2c 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 20 69 73 .was.not.found,.check.that.it.is
ab8c0 20 69 6e 73 74 61 6c 6c 65 64 20 61 6e 64 20 69 6e 20 79 6f 75 72 20 50 41 54 48 20 65 6e 76 2e .installed.and.in.your.PATH.env.
ab8e0 27 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 '..."\n\n"...$this->process->get
ab900 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 ErrorOutput());.}..throw.new.\Ru
ab920 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6c 6f 6e 65 20 ntimeException('Failed.to.clone.
ab940 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2c 20 63 6f 75 6c 64 20 6e 6f 74 20 72 65 61 64 20 70 '.$this->url.',.could.not.read.p
ab960 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 69 74 27 20 2e 20 22 5c 6e 5c 6e 22 20 2e 24 6f 75 74 70 ackages.from.it'..."\n\n"..$outp
ab980 75 74 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 3b 0a 24 74 ut);.}.}.}..$this->getTags();.$t
ab9a0 68 69 73 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 his->getBranches();.}.....public
ab9c0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 0a 7b 0a .function.getRootIdentifier().{.
ab9e0 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 if.(null.===.$this->rootIdentifi
aba00 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 er).{.$this->process->execute(sp
aba20 72 69 6e 74 66 28 27 68 67 20 74 69 70 20 2d 2d 74 65 6d 70 6c 61 74 65 20 22 7b 6e 6f 64 65 7d rintf('hg.tip.--template."{node}
aba40 22 27 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 24 "'),.$output,.$this->repoDir);.$
aba60 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 output.=.$this->process->splitLi
aba80 6e 65 73 28 24 6f 75 74 70 75 74 29 3b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 nes($output);.$this->rootIdentif
abaa0 69 65 72 20 3d 20 24 6f 75 74 70 75 74 5b 30 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 ier.=.$output[0];.}..return.$thi
abac0 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 s->rootIdentifier;.}.....public.
abae0 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 function.getUrl().{.return.$this
abb00 2d 3e 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 ->url;.}.....public.function.get
abb20 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 Source($identifier).{.return.arr
abb40 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 68 67 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 69 ay('type'.=>.'hg',.'url'.=>.$thi
abb60 73 2d 3e 67 65 74 55 72 6c 28 29 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 s->getUrl(),.'reference'.=>.$ide
abb80 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ntifier);.}.....public.function.
abba0 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 getDist($identifier).{.return.nu
abbc0 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d ll;.}.....public.function.getCom
abbe0 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a poserInformation($identifier).{.
abc00 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 if.(!isset($this->infoCache[$ide
abc20 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 ntifier])).{.$this->process->exe
abc40 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 68 67 20 63 61 74 20 2d 72 20 25 73 20 63 6f 6d 70 6f cute(sprintf('hg.cat.-r.%s.compo
abc60 73 65 72 2e 6a 73 6f 6e 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 ser.json',.ProcessExecutor::esca
abc80 70 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 68 pe($identifier)),.$composer,.$th
abca0 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 0a 69 66 20 28 21 74 72 69 6d 28 24 63 6f 6d 70 6f 73 is->repoDir);..if.(!trim($compos
abcc0 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 4a 73 er)).{.return;.}..$composer.=.Js
abce0 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f 6d 70 6f 73 65 72 2c 20 24 69 64 onFile::parseJson($composer,.$id
abd00 65 6e 74 69 66 69 65 72 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 63 6f 6d 70 6f 73 65 72 5b entifier);..if.(empty($composer[
abd20 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 'time'])).{.$this->process->exec
abd40 75 74 65 28 73 70 72 69 6e 74 66 28 27 68 67 20 6c 6f 67 20 2d 2d 74 65 6d 70 6c 61 74 65 20 22 ute(sprintf('hg.log.--template."
abd60 7b 64 61 74 65 7c 72 66 63 33 33 33 39 64 61 74 65 7d 22 20 2d 72 20 25 73 27 2c 20 50 72 6f 63 {date|rfc3339date}".-r.%s',.Proc
abd80 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 essExecutor::escape($identifier)
abda0 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 24 64 61 ),.$output,.$this->repoDir);.$da
abdc0 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 74 72 69 6d 28 24 6f 75 74 70 75 74 29 te.=.new.\DateTime(trim($output)
abde0 2c 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 5a 6f 6e 65 28 27 55 54 43 27 29 29 3b 0a 24 63 6f ,.new.\DateTimeZone('UTC'));.$co
abe00 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 64 61 74 65 2d 3e 66 6f 72 6d 61 74 28 27 mposer['time'].=.$date->format('
abe20 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 Y-m-d.H:i:s');.}.$this->infoCach
abe40 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 72 e[$identifier].=.$composer;.}..r
abe60 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 eturn.$this->infoCache[$identifi
abe80 65 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 er];.}.....public.function.getTa
abea0 67 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 61 67 73 29 gs().{.if.(null.===.$this->tags)
abec0 20 7b 0a 24 74 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 .{.$tags.=.array();..$this->proc
abee0 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 67 20 74 61 67 73 27 2c 20 24 6f 75 74 70 75 74 2c ess->execute('hg.tags',.$output,
abf00 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 .$this->repoDir);.foreach.($this
abf20 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 ->process->splitLines($output).a
abf40 73 20 24 74 61 67 29 20 7b 0a 69 66 20 28 24 74 61 67 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 s.$tag).{.if.($tag.&&.preg_match
abf60 28 27 28 5e 28 5b 5e 5c 73 5d 2b 29 5c 73 2b 5c 64 2b 3a 28 2e 2a 29 24 29 27 2c 20 24 74 61 67 ('(^([^\s]+)\s+\d+:(.*)$)',.$tag
abf80 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 61 67 73 5b 24 6d 61 74 63 68 5b 31 5d 5d 20 3d 20 ,.$match)).{.$tags[$match[1]].=.
abfa0 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 75 6e 73 65 74 28 24 74 61 67 73 5b 27 74 69 70 27 $match[2];.}.}.unset($tags['tip'
abfc0 5d 29 3b 0a 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 24 74 61 67 73 3b 0a 7d 0a 0a 72 65 74 ]);..$this->tags.=.$tags;.}..ret
abfe0 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 urn.$this->tags;.}.....public.fu
ac000 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 nction.getBranches().{.if.(null.
ac020 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 ===.$this->branches).{.$branches
ac040 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 62 6f 6f 6b 6d 61 72 6b 73 20 3d 20 61 72 72 61 79 28 29 .=.array();.$bookmarks.=.array()
ac060 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 67 20 62 ;..$this->process->execute('hg.b
ac080 72 61 6e 63 68 65 73 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 ranches',.$output,.$this->repoDi
ac0a0 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c r);.foreach.($this->process->spl
ac0c0 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 62 72 61 6e 63 68 29 20 7b 0a 69 itLines($output).as.$branch).{.i
ac0e0 66 20 28 24 62 72 61 6e 63 68 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 28 5e 28 5b 5e 5c f.($branch.&&.preg_match('(^([^\
ac100 73 5d 2b 29 5c 73 2b 5c 64 2b 3a 28 5b 61 2d 66 30 2d 39 5d 2b 29 29 27 2c 20 24 62 72 61 6e 63 s]+)\s+\d+:([a-f0-9]+))',.$branc
ac120 68 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 5b 24 6d 61 74 63 68 5b 31 h,.$match)).{.$branches[$match[1
ac140 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 ]].=.$match[2];.}.}..$this->proc
ac160 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 67 20 62 6f 6f 6b 6d 61 72 6b 73 27 2c 20 24 6f 75 ess->execute('hg.bookmarks',.$ou
ac180 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 tput,.$this->repoDir);.foreach.(
ac1a0 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 $this->process->splitLines($outp
ac1c0 75 74 29 20 61 73 20 24 62 72 61 6e 63 68 29 20 7b 0a 69 66 20 28 24 62 72 61 6e 63 68 20 26 26 ut).as.$branch).{.if.($branch.&&
ac1e0 20 70 72 65 67 5f 6d 61 74 63 68 28 27 28 5e 28 3f 3a 5b 5c 73 2a 5d 2a 29 28 5b 5e 5c 73 5d 2b .preg_match('(^(?:[\s*]*)([^\s]+
ac200 29 5c 73 2b 5c 64 2b 3a 28 2e 2a 29 24 29 27 2c 20 24 62 72 61 6e 63 68 2c 20 24 6d 61 74 63 68 )\s+\d+:(.*)$)',.$branch,.$match
ac220 29 29 20 7b 0a 24 62 6f 6f 6b 6d 61 72 6b 73 5b 24 6d 61 74 63 68 5b 31 5d 5d 20 3d 20 24 6d 61 )).{.$bookmarks[$match[1]].=.$ma
ac240 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d tch[2];.}.}....$this->branches.=
ac260 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 62 6f 6f 6b 6d 61 72 6b 73 2c 20 24 62 72 61 6e 63 68 .array_merge($bookmarks,.$branch
ac280 65 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a es);.}..return.$this->branches;.
ac2a0 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 }.....public.static.function.sup
ac2c0 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 ports(IOInterface.$io,.Config.$c
ac2e0 6f 6e 66 69 67 2c 20 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 onfig,.$url,.$deep.=.false).{.if
ac300 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 28 5e 28 3f 3a 68 74 74 70 73 3f 7c 73 73 68 29 3a .(preg_match('#(^(?:https?|ssh):
ac320 2f 2f 28 3f 3a 5b 5e 40 5d 40 29 3f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 7c 68 74 74 70 73 3a //(?:[^@]@)?bitbucket.org|https:
ac340 2f 2f 28 3f 3a 2e 2a 3f 29 5c 2e 6b 69 6c 6e 68 67 2e 63 6f 6d 29 23 69 27 2c 20 24 75 72 6c 29 //(?:.*?)\.kilnhg.com)#i',.$url)
ac360 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 46 69 6c 65 73 79 ).{.return.true;.}....if.(Filesy
ac380 73 74 65 6d 3a 3a 69 73 4c 6f 63 61 6c 50 61 74 68 28 24 75 72 6c 29 29 20 7b 0a 24 75 72 6c 20 stem::isLocalPath($url)).{.$url.
ac3a0 3d 20 46 69 6c 65 73 79 73 74 65 6d 3a 3a 67 65 74 50 6c 61 74 66 6f 72 6d 50 61 74 68 28 24 75 =.Filesystem::getPlatformPath($u
ac3c0 72 6c 29 3b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e rl);.if.(!is_dir($url)).{.return
ac3e0 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 .false;.}..$process.=.new.Proces
ac400 73 45 78 65 63 75 74 6f 72 28 29 3b 0a 0a 20 69 66 20 28 24 70 72 6f 63 65 73 73 2d 3e 65 78 65 sExecutor();...if.($process->exe
ac420 63 75 74 65 28 27 68 67 20 73 75 6d 6d 61 72 79 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 75 72 6c cute('hg.summary',.$output,.$url
ac440 29 20 3d 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 ).===.0).{.return.true;.}.}..if.
ac460 28 21 24 64 65 65 70 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 72 6f (!$deep).{.return.false;.}..$pro
ac480 63 65 73 73 45 78 65 63 75 74 6f 72 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 cessExecutor.=.new.ProcessExecut
ac4a0 6f 72 28 29 3b 0a 24 65 78 69 74 20 3d 20 24 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 2d 3e or();.$exit.=.$processExecutor->
ac4c0 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 68 67 20 69 64 65 6e 74 69 66 79 20 25 73 27 execute(sprintf('hg.identify.%s'
ac4e0 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 29 ,.ProcessExecutor::escape($url))
ac500 2c 20 24 69 67 6e 6f 72 65 64 29 3b 0a 0a 72 65 74 75 72 6e 20 24 65 78 69 74 20 3d 3d 3d 20 30 ,.$ignored);..return.$exit.===.0
ac520 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 ;.}.}.<?php............namespace
ac540 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 .Composer\Repository\Vcs;..use.C
ac560 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c omposer\Config;.use.Composer\IO\
ac580 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 IOInterface;.use.Composer\Util\P
ac5a0 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 rocessExecutor;.use.Composer\Uti
ac5c0 6c 5c 50 65 72 66 6f 72 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 72 66 6f 72 63 65 44 72 l\Perforce;.....class.PerforceDr
ac5e0 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 iver.extends.VcsDriver.{.protect
ac600 65 64 20 24 64 65 70 6f 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 3b 0a 70 72 ed.$depot;.protected.$branch;.pr
ac620 6f 74 65 63 74 65 64 20 24 70 65 72 66 6f 72 63 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f otected.$perforce;.protected.$co
ac640 6d 70 6f 73 65 72 49 6e 66 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6d 70 6f 73 65 72 49 mposerInfo;.protected.$composerI
ac660 6e 66 6f 49 64 65 6e 74 69 66 69 65 72 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 nfoIdentifier;.....public.functi
ac680 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 70 6f 74 20 3d on.initialize().{.$this->depot.=
ac6a0 20 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 64 65 70 6f 74 27 5d 3b 0a 24 74 68 .$this->repoConfig['depot'];.$th
ac6c0 69 73 2d 3e 62 72 61 6e 63 68 20 3d 20 27 27 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 is->branch.=.'';.if.(!empty($thi
ac6e0 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 62 72 61 6e 63 68 27 5d 29 29 20 7b 0a 24 74 68 69 s->repoConfig['branch'])).{.$thi
ac700 73 2d 3e 62 72 61 6e 63 68 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 62 s->branch.=.$this->repoConfig['b
ac720 72 61 6e 63 68 27 5d 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 50 65 72 66 6f 72 63 65 28 ranch'];.}..$this->initPerforce(
ac740 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f $this->repoConfig);.$this->perfo
ac760 72 63 65 2d 3e 70 34 4c 6f 67 69 6e 28 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 24 74 68 69 73 2d 3e rce->p4Login($this->io);.$this->
ac780 70 65 72 66 6f 72 63 65 2d 3e 63 68 65 63 6b 53 74 72 65 61 6d 28 24 74 68 69 73 2d 3e 64 65 70 perforce->checkStream($this->dep
ac7a0 6f 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 77 72 69 74 65 50 34 43 6c ot);..$this->perforce->writeP4Cl
ac7c0 69 65 6e 74 53 70 65 63 28 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 63 6f 6e ientSpec();.$this->perforce->con
ac7e0 6e 65 63 74 43 6c 69 65 6e 74 28 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 nectClient();..return.true;.}..p
ac800 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 50 65 72 66 6f 72 63 65 28 24 72 65 rivate.function.initPerforce($re
ac820 70 6f 43 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 70 65 poConfig).{.if.(!empty($this->pe
ac840 72 66 6f 72 63 65 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 72 65 70 6f 44 69 72 20 3d rforce)).{.return;.}..$repoDir.=
ac860 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 76 63 73 2d 64 .$this->config->get('cache-vcs-d
ac880 69 72 27 29 20 2e 20 27 2f 27 20 2e 20 24 74 68 69 73 2d 3e 64 65 70 6f 74 3b 0a 24 74 68 69 73 ir')...'/'...$this->depot;.$this
ac8a0 2d 3e 70 65 72 66 6f 72 63 65 20 3d 20 50 65 72 66 6f 72 63 65 3a 3a 63 72 65 61 74 65 28 24 72 ->perforce.=.Perforce::create($r
ac8c0 65 70 6f 43 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 28 29 2c 20 24 72 65 70 epoConfig,.$this->getUrl(),.$rep
ac8e0 6f 44 69 72 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2c 20 24 74 68 69 73 2d 3e 69 6f 29 oDir,.$this->process,.$this->io)
ac900 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f ;.}.....public.function.getCompo
ac920 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 serInformation($identifier).{.if
ac940 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 49 6e 66 6f 49 64 65 6e .(!empty($this->composerInfoIden
ac960 74 69 66 69 65 72 29 29 20 7b 0a 69 66 20 28 73 74 72 63 6d 70 28 24 69 64 65 6e 74 69 66 69 65 tifier)).{.if.(strcmp($identifie
ac980 72 2c 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 49 6e 66 6f 49 64 65 6e 74 69 66 69 65 72 r,.$this->composerInfoIdentifier
ac9a0 29 20 3d 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 ).===.0).{.return.$this->compose
ac9c0 72 49 6e 66 6f 3b 0a 7d 0a 7d 0a 24 63 6f 6d 70 6f 73 65 72 5f 69 6e 66 6f 20 3d 20 24 74 68 69 rInfo;.}.}.$composer_info.=.$thi
ac9e0 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 s->perforce->getComposerInformat
aca00 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f ion($identifier);..return.$compo
aca20 73 65 72 5f 69 6e 66 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ser_info;.}.....public.function.
aca40 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 getRootIdentifier().{.return.$th
aca60 69 73 2d 3e 62 72 61 6e 63 68 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f is->branch;.}.....public.functio
aca80 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 24 74 n.getBranches().{.$branches.=.$t
acaa0 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 0a 72 his->perforce->getBranches();..r
acac0 65 74 75 72 6e 20 24 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 eturn.$branches;.}.....public.fu
acae0 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 24 74 61 67 73 20 3d 20 24 74 68 69 73 nction.getTags().{.$tags.=.$this
acb00 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 67 65 74 54 61 67 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 ->perforce->getTags();..return.$
acb20 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 tags;.}.....public.function.getD
acb40 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a ist($identifier).{.return.null;.
acb60 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 }.....public.function.getSource(
acb80 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 73 6f 75 72 63 65 20 3d 20 61 72 72 61 79 28 0a $identifier).{.$source.=.array(.
acba0 27 74 79 70 65 27 20 3d 3e 20 27 70 65 72 66 6f 72 63 65 27 2c 0a 27 75 72 6c 27 20 3d 3e 20 24 'type'.=>.'perforce',.'url'.=>.$
acbc0 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 2c 0a 27 72 65 66 65 72 65 this->repoConfig['url'],.'refere
acbe0 6e 63 65 27 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 2c 0a 27 70 34 75 73 65 72 27 20 3d 3e nce'.=>.$identifier,.'p4user'.=>
acc00 20 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 67 65 74 55 73 65 72 28 29 2c 0a 29 3b 0a .$this->perforce->getUser(),.);.
acc20 0a 72 65 74 75 72 6e 20 24 73 6f 75 72 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 .return.$source;.}.....public.fu
acc40 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e nction.getUrl().{.return.$this->
acc60 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 43 6f url;.}.....public.function.hasCo
acc80 6d 70 6f 73 65 72 46 69 6c 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 74 68 69 73 2d mposerFile($identifier).{.$this-
acca0 3e 63 6f 6d 70 6f 73 65 72 49 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d >composerInfo.=.$this->perforce-
accc0 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 27 2f 2f 27 20 2e 20 24 >getComposerInformation('//'...$
acce0 74 68 69 73 2d 3e 64 65 70 6f 74 20 2e 20 27 2f 27 20 2e 20 24 69 64 65 6e 74 69 66 69 65 72 29 this->depot...'/'...$identifier)
acd00 3b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 49 6e 66 6f 49 64 65 6e 74 69 66 69 65 72 20 ;.$this->composerInfoIdentifier.
acd20 3d 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 0a 72 65 74 75 72 6e 20 21 65 6d 70 74 79 28 24 74 =.$identifier;..return.!empty($t
acd40 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 49 6e 66 6f 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 his->composerInfo);.}.....public
acd60 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 0a 7b 0a 72 65 .function.getContents($url).{.re
acd80 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 turn.false;.}.....public.static.
acda0 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 function.supports(IOInterface.$i
acdc0 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 24 75 72 6c 2c 20 24 64 65 65 70 20 3d o,.Config.$config,.$url,.$deep.=
acde0 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 24 64 65 65 70 20 7c 7c 20 70 72 65 67 5f 6d 61 74 63 .false).{.if.($deep.||.preg_matc
ace00 68 28 27 23 5c 62 28 70 65 72 66 6f 72 63 65 7c 70 34 29 5c 62 23 69 27 2c 20 24 75 72 6c 29 29 h('#\b(perforce|p4)\b#i',.$url))
ace20 20 7b 0a 72 65 74 75 72 6e 20 50 65 72 66 6f 72 63 65 3a 3a 63 68 65 63 6b 53 65 72 76 65 72 45 .{.return.Perforce::checkServerE
ace40 78 69 73 74 73 28 24 75 72 6c 2c 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 xists($url,.new.ProcessExecutor(
ace60 24 69 6f 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 $io));.}..return.false;.}.....pu
ace80 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 75 70 28 29 0a 7b 0a 24 74 68 69 73 2d blic.function.cleanup().{.$this-
acea0 3e 70 65 72 66 6f 72 63 65 2d 3e 63 6c 65 61 6e 75 70 43 6c 69 65 6e 74 53 70 65 63 28 29 3b 0a >perforce->cleanupClientSpec();.
acec0 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 $this->perforce.=.null;.}..publi
acee0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 70 6f 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 c.function.getDepot().{.return.$
acf00 74 68 69 73 2d 3e 64 65 70 6f 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 this->depot;.}..public.function.
acf20 67 65 74 42 72 61 6e 63 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e getBranch().{.return.$this->bran
acf40 63 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 ch;.}.}.<?php............namespa
acf60 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 ce.Composer\Repository\Vcs;..use
acf80 20 43 6f 6d 70 6f 73 65 72 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f .Composer\Cache;.use.Composer\Co
acfa0 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 nfig;.use.Composer\Json\JsonFile
acfc0 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 ;.use.Composer\Util\ProcessExecu
acfe0 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 tor;.use.Composer\Util\Filesyste
ad000 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 76 6e 20 61 73 20 53 76 6e 55 m;.use.Composer\Util\Svn.as.SvnU
ad020 74 69 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 til;.use.Composer\IO\IOInterface
ad040 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 ;.use.Composer\Downloader\Transp
ad060 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 76 6e 44 72 69 76 ortException;......class.SvnDriv
ad080 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 er.extends.VcsDriver.{....protec
ad0a0 74 65 64 20 24 63 61 63 68 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 61 73 65 55 72 6c 3b 0a ted.$cache;.protected.$baseUrl;.
ad0c0 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e protected.$tags;.protected.$bran
ad0e0 63 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b ches;.protected.$rootIdentifier;
ad100 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b .protected.$infoCache.=.array();
ad120 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 74 72 75 6e 6b 50 61 74 68 20 3d 20 27 74 72 75 6e 6b 27 ..protected.$trunkPath.=.'trunk'
ad140 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 73 50 61 74 68 20 3d 20 27 62 72 61 ;.protected.$branchesPath.=.'bra
ad160 6e 63 68 65 73 27 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 50 61 74 68 20 3d 20 27 74 nches';.protected.$tagsPath.=.'t
ad180 61 67 73 27 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 50 61 74 68 20 3d 20 27 ags';.protected.$packagePath.=.'
ad1a0 27 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3d ';.protected.$cacheCredentials.=
ad1c0 20 74 72 75 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 75 74 69 6c 3b 0a 0a 0a 0a 0a 70 75 .true;.....private.$util;.....pu
ad1e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 24 74 68 blic.function.initialize().{.$th
ad200 69 73 2d 3e 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 3d 20 72 74 72 69 6d is->url.=.$this->baseUrl.=.rtrim
ad220 28 73 65 6c 66 3a 3a 6e 6f 72 6d 61 6c 69 7a 65 55 72 6c 28 24 74 68 69 73 2d 3e 75 72 6c 29 2c (self::normalizeUrl($this->url),
ad240 20 27 2f 27 29 3b 0a 0a 53 76 6e 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 0a 69 66 .'/');..SvnUtil::cleanEnv();..if
ad260 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 74 72 75 6e 6b .(isset($this->repoConfig['trunk
ad280 2d 70 61 74 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 74 72 75 6e 6b 50 61 74 68 20 3d 20 24 -path'])).{.$this->trunkPath.=.$
ad2a0 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 74 72 75 6e 6b 2d 70 61 74 68 27 5d 3b 0a this->repoConfig['trunk-path'];.
ad2c0 7d 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 62 }.if.(isset($this->repoConfig['b
ad2e0 72 61 6e 63 68 65 73 2d 70 61 74 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 ranches-path'])).{.$this->branch
ad300 65 73 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 62 72 61 6e esPath.=.$this->repoConfig['bran
ad320 63 68 65 73 2d 70 61 74 68 27 5d 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e ches-path'];.}.if.(isset($this->
ad340 72 65 70 6f 43 6f 6e 66 69 67 5b 27 74 61 67 73 2d 70 61 74 68 27 5d 29 29 20 7b 0a 24 74 68 69 repoConfig['tags-path'])).{.$thi
ad360 73 2d 3e 74 61 67 73 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b s->tagsPath.=.$this->repoConfig[
ad380 27 74 61 67 73 2d 70 61 74 68 27 5d 3b 0a 7d 0a 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 'tags-path'];.}.if.(array_key_ex
ad3a0 69 73 74 73 28 27 73 76 6e 2d 63 61 63 68 65 2d 63 72 65 64 65 6e 74 69 61 6c 73 27 2c 20 24 74 ists('svn-cache-credentials',.$t
ad3c0 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 his->repoConfig)).{.$this->cache
ad3e0 43 72 65 64 65 6e 74 69 61 6c 73 20 3d 20 28 62 6f 6f 6c 29 20 24 74 68 69 73 2d 3e 72 65 70 6f Credentials.=.(bool).$this->repo
ad400 43 6f 6e 66 69 67 5b 27 73 76 6e 2d 63 61 63 68 65 2d 63 72 65 64 65 6e 74 69 61 6c 73 27 5d 3b Config['svn-cache-credentials'];
ad420 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 .}.if.(isset($this->repoConfig['
ad440 70 61 63 6b 61 67 65 2d 70 61 74 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 package-path'])).{.$this->packag
ad460 65 50 61 74 68 20 3d 20 27 2f 27 20 2e 20 74 72 69 6d 28 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f ePath.=.'/'...trim($this->repoCo
ad480 6e 66 69 67 5b 27 70 61 63 6b 61 67 65 2d 70 61 74 68 27 5d 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 69 nfig['package-path'],.'/');.}..i
ad4a0 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 28 24 70 6f 73 20 3d 20 73 74 72 72 70 6f 73 28 24 74 68 f.(false.!==.($pos.=.strrpos($th
ad4c0 69 73 2d 3e 75 72 6c 2c 20 27 2f 27 20 2e 20 24 74 68 69 73 2d 3e 74 72 75 6e 6b 50 61 74 68 29 is->url,.'/'...$this->trunkPath)
ad4e0 29 29 20 7b 0a 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 3d 20 73 75 62 73 74 72 28 24 74 68 )).{.$this->baseUrl.=.substr($th
ad500 69 73 2d 3e 75 72 6c 2c 20 30 2c 20 24 70 6f 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 61 63 is->url,.0,.$pos);.}..$this->cac
ad520 68 65 20 3d 20 6e 65 77 20 43 61 63 68 65 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d he.=.new.Cache($this->io,.$this-
ad540 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 29 2e 27 >config->get('cache-repo-dir').'
ad560 2f 27 2e 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c /'.preg_replace('{[^a-z0-9.]}i',
ad580 20 27 2d 27 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 29 29 3b 0a 0a 24 74 68 69 73 2d 3e .'-',.$this->baseUrl));..$this->
ad5a0 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 3b getBranches();.$this->getTags();
ad5c0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 .}.....public.function.getRootId
ad5e0 65 6e 74 69 66 69 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 entifier().{.return.$this->rootI
ad600 64 65 6e 74 69 66 69 65 72 20 3f 3a 20 24 74 68 69 73 2d 3e 74 72 75 6e 6b 50 61 74 68 3b 0a 7d dentifier.?:.$this->trunkPath;.}
ad620 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a .....public.function.getUrl().{.
ad640 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 return.$this->url;.}.....public.
ad660 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a function.getSource($identifier).
ad680 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 73 76 6e 27 2c 20 {.return.array('type'.=>.'svn',.
ad6a0 27 75 72 6c 27 20 3d 3e 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 2c 20 27 72 65 66 65 72 65 'url'.=>.$this->baseUrl,.'refere
ad6c0 6e 63 65 27 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c nce'.=>.$identifier);.}.....publ
ad6e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 ic.function.getDist($identifier)
ad700 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .{.return.null;.}.....public.fun
ad720 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 ction.getComposerInformation($id
ad740 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 69 64 65 6e 74 69 66 69 65 72 20 3d 20 27 2f 27 20 2e 20 entifier).{.$identifier.=.'/'...
ad760 74 72 69 6d 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 27 2f 27 29 20 2e 20 27 2f 27 3b 0a 0a 69 trim($identifier,.'/')...'/';..i
ad780 66 20 28 24 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 69 64 f.($res.=.$this->cache->read($id
ad7a0 65 6e 74 69 66 69 65 72 2e 27 2e 6a 73 6f 6e 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 66 6f entifier.'.json')).{.$this->info
ad7c0 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 Cache[$identifier].=.JsonFile::p
ad7e0 61 72 73 65 4a 73 6f 6e 28 24 72 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 arseJson($res);.}..if.(!isset($t
ad800 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a his->infoCache[$identifier])).{.
ad820 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 2e 2b 3f 29 28 40 5c 64 2b 29 3f 2f 24 7d 27 2c 20 preg_match('{^(.+?)(@\d+)?/$}',.
ad840 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 6d 61 74 63 68 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 $identifier,.$match);.if.(!empty
ad860 28 24 6d 61 74 63 68 5b 32 5d 29 29 20 7b 0a 24 70 61 74 68 20 3d 20 24 6d 61 74 63 68 5b 31 5d ($match[2])).{.$path.=.$match[1]
ad880 3b 0a 24 72 65 76 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 ;.$rev.=.$match[2];.}.else.{.$pa
ad8a0 74 68 20 3d 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 72 65 76 20 3d 20 27 27 3b 0a 7d 0a 0a th.=.$identifier;.$rev.=.'';.}..
ad8c0 74 72 79 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 70 61 74 68 2e 27 63 6f 6d 70 6f 73 65 try.{.$resource.=.$path.'compose
ad8e0 72 2e 6a 73 6f 6e 27 3b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 r.json';.$output.=.$this->execut
ad900 65 28 27 73 76 6e 20 63 61 74 27 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 2e 20 24 72 e('svn.cat',.$this->baseUrl...$r
ad920 65 73 6f 75 72 63 65 20 2e 20 24 72 65 76 29 3b 0a 69 66 20 28 21 74 72 69 6d 28 24 6f 75 74 70 esource...$rev);.if.(!trim($outp
ad940 75 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 ut)).{.return;.}.}.catch.(\Runti
ad960 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 6e meException.$e).{.throw.new.Tran
ad980 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 sportException($e->getMessage())
ad9a0 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 ;.}..$composer.=.JsonFile::parse
ad9c0 4a 73 6f 6e 28 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 2e 20 24 Json($output,.$this->baseUrl...$
ad9e0 72 65 73 6f 75 72 63 65 20 2e 20 24 72 65 76 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 63 6f resource...$rev);..if.(empty($co
ada00 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 mposer['time'])).{.$output.=.$th
ada20 69 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 69 6e 66 6f 27 2c 20 24 74 68 69 73 2d 3e 62 is->execute('svn.info',.$this->b
ada40 61 73 65 55 72 6c 20 2e 20 24 70 61 74 68 20 2e 20 24 72 65 76 29 3b 0a 66 6f 72 65 61 63 68 20 aseUrl...$path...$rev);.foreach.
ada60 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 ($this->process->splitLines($out
ada80 70 75 74 29 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 69 66 20 28 24 6c 69 6e 65 20 26 26 20 70 72 put).as.$line).{.if.($line.&&.pr
adaa0 65 67 5f 6d 61 74 63 68 28 27 7b 5e 4c 61 73 74 20 43 68 61 6e 67 65 64 20 44 61 74 65 3a 20 28 eg_match('{^Last.Changed.Date:.(
adac0 5b 5e 28 5d 2b 29 7d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 64 61 74 [^(]+)}',.$line,.$match)).{.$dat
adae0 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 24 6d 61 74 63 68 5b 31 5d 2c 20 6e 65 77 e.=.new.\DateTime($match[1],.new
adb00 20 5c 44 61 74 65 54 69 6d 65 5a 6f 6e 65 28 27 55 54 43 27 29 29 3b 0a 24 63 6f 6d 70 6f 73 65 .\DateTimeZone('UTC'));.$compose
adb20 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 64 61 74 65 2d 3e 66 6f 72 6d 61 74 28 27 59 2d 6d 2d 64 r['time'].=.$date->format('Y-m-d
adb40 20 48 3a 69 3a 73 27 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 .H:i:s');.break;.}.}.}..$this->c
adb60 61 63 68 65 2d 3e 77 72 69 74 65 28 24 69 64 65 6e 74 69 66 69 65 72 2e 27 2e 6a 73 6f 6e 27 2c ache->write($identifier.'.json',
adb80 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 24 74 68 69 73 2d .json_encode($composer));.$this-
adba0 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f >infoCache[$identifier].=.$compo
adbc0 73 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b ser;.}..return.$this->infoCache[
adbe0 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 $identifier];.}.....public.funct
adc00 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 ion.getTags().{.if.(null.===.$th
adc20 69 73 2d 3e 74 61 67 73 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 61 72 72 61 79 28 is->tags).{.$this->tags.=.array(
adc40 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 74 61 67 73 50 61 74 68 20 21 3d 3d 20 66 61 6c 73 );..if.($this->tagsPath.!==.fals
adc60 65 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 27 73 e).{.$output.=.$this->execute('s
adc80 76 6e 20 6c 73 20 2d 2d 76 65 72 62 6f 73 65 27 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c vn.ls.--verbose',.$this->baseUrl
adca0 20 2e 20 27 2f 27 20 2e 20 24 74 68 69 73 2d 3e 74 61 67 73 50 61 74 68 29 3b 0a 69 66 20 28 24 ...'/'...$this->tagsPath);.if.($
adcc0 6f 75 74 70 75 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 output).{.foreach.($this->proces
adce0 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 6c 69 6e 65 29 s->splitLines($output).as.$line)
add00 20 7b 0a 24 6c 69 6e 65 20 3d 20 74 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 69 66 20 28 24 6c 69 6e .{.$line.=.trim($line);.if.($lin
add20 65 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2a 28 5c 53 2b 29 2e 2a 3f 28 5c e.&&.preg_match('{^\s*(\S+).*?(\
add40 53 2b 29 5c 73 2a 24 7d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 S+)\s*$}',.$line,.$match)).{.if.
add60 28 69 73 73 65 74 28 24 6d 61 74 63 68 5b 31 5d 29 20 26 26 20 69 73 73 65 74 28 24 6d 61 74 63 (isset($match[1]).&&.isset($matc
add80 68 5b 32 5d 29 20 26 26 20 24 6d 61 74 63 68 5b 32 5d 20 21 3d 3d 20 27 2e 2f 27 29 20 7b 0a 24 h[2]).&&.$match[2].!==.'./').{.$
adda0 74 68 69 73 2d 3e 74 61 67 73 5b 72 74 72 69 6d 28 24 6d 61 74 63 68 5b 32 5d 2c 20 27 2f 27 29 this->tags[rtrim($match[2],.'/')
addc0 5d 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 49 64 65 6e 74 69 66 69 65 72 28 0a 27 2f 27 20 ].=.$this->buildIdentifier(.'/'.
adde0 2e 20 24 74 68 69 73 2d 3e 74 61 67 73 50 61 74 68 20 2e 20 27 2f 27 20 2e 20 24 6d 61 74 63 68 ..$this->tagsPath...'/'...$match
ade00 5b 32 5d 2c 0a 24 6d 61 74 63 68 5b 31 5d 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 [2],.$match[1].);.}.}.}.}.}.}..r
ade20 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 eturn.$this->tags;.}.....public.
ade40 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c function.getBranches().{.if.(nul
ade60 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e l.===.$this->branches).{.$this->
ade80 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d branches.=.array();..if.(false.=
adea0 3d 3d 20 24 74 68 69 73 2d 3e 74 72 75 6e 6b 50 61 74 68 29 20 7b 0a 24 74 72 75 6e 6b 50 61 72 ==.$this->trunkPath).{.$trunkPar
adec0 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 2e 20 27 2f 27 3b 0a 7d 20 65 6c ent.=.$this->baseUrl...'/';.}.el
adee0 73 65 20 7b 0a 24 74 72 75 6e 6b 50 61 72 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 62 61 73 65 55 se.{.$trunkParent.=.$this->baseU
adf00 72 6c 20 2e 20 27 2f 27 20 2e 20 24 74 68 69 73 2d 3e 74 72 75 6e 6b 50 61 74 68 3b 0a 7d 0a 0a rl...'/'...$this->trunkPath;.}..
adf20 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 6c 73 $output.=.$this->execute('svn.ls
adf40 20 2d 2d 76 65 72 62 6f 73 65 27 2c 20 24 74 72 75 6e 6b 50 61 72 65 6e 74 29 3b 0a 69 66 20 28 .--verbose',.$trunkParent);.if.(
adf60 24 6f 75 74 70 75 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 $output).{.foreach.($this->proce
adf80 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 6c 69 6e 65 ss->splitLines($output).as.$line
adfa0 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 74 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 69 66 20 28 24 6c 69 ).{.$line.=.trim($line);.if.($li
adfc0 6e 65 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2a 28 5c 53 2b 29 2e 2a 3f 28 ne.&&.preg_match('{^\s*(\S+).*?(
adfe0 5c 53 2b 29 5c 73 2a 24 7d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 \S+)\s*$}',.$line,.$match)).{.if
ae000 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 5b 31 5d 29 20 26 26 20 69 73 73 65 74 28 24 6d 61 74 .(isset($match[1]).&&.isset($mat
ae020 63 68 5b 32 5d 29 20 26 26 20 24 6d 61 74 63 68 5b 32 5d 20 3d 3d 3d 20 27 2e 2f 27 29 20 7b 0a ch[2]).&&.$match[2].===.'./').{.
ae040 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 27 74 72 75 6e 6b 27 5d 20 3d 20 24 74 68 69 73 $this->branches['trunk'].=.$this
ae060 2d 3e 62 75 69 6c 64 49 64 65 6e 74 69 66 69 65 72 28 0a 27 2f 27 20 2e 20 24 74 68 69 73 2d 3e ->buildIdentifier(.'/'...$this->
ae080 74 72 75 6e 6b 50 61 74 68 2c 0a 24 6d 61 74 63 68 5b 31 5d 0a 29 3b 0a 24 74 68 69 73 2d 3e 72 trunkPath,.$match[1].);.$this->r
ae0a0 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b ootIdentifier.=.$this->branches[
ae0c0 27 74 72 75 6e 6b 27 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 75 6e 73 65 74 28 24 'trunk'];.break;.}.}.}.}.unset($
ae0e0 6f 75 74 70 75 74 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 50 61 74 output);..if.($this->branchesPat
ae100 68 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e h.!==.false).{.$output.=.$this->
ae120 65 78 65 63 75 74 65 28 27 73 76 6e 20 6c 73 20 2d 2d 76 65 72 62 6f 73 65 27 2c 20 24 74 68 69 execute('svn.ls.--verbose',.$thi
ae140 73 2d 3e 62 61 73 65 55 72 6c 20 2e 20 27 2f 27 20 2e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 s->baseUrl...'/'...$this->branch
ae160 65 73 50 61 74 68 29 3b 0a 69 66 20 28 24 6f 75 74 70 75 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 esPath);.if.($output).{.foreach.
ae180 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 74 72 69 6d ($this->process->splitLines(trim
ae1a0 28 24 6f 75 74 70 75 74 29 29 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 74 ($output)).as.$line).{.$line.=.t
ae1c0 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 69 66 20 28 24 6c 69 6e 65 20 26 26 20 70 72 65 67 5f 6d 61 rim($line);.if.($line.&&.preg_ma
ae1e0 74 63 68 28 27 7b 5e 5c 73 2a 28 5c 53 2b 29 2e 2a 3f 28 5c 53 2b 29 5c 73 2a 24 7d 27 2c 20 24 tch('{^\s*(\S+).*?(\S+)\s*$}',.$
ae200 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 line,.$match)).{.if.(isset($matc
ae220 68 5b 31 5d 29 20 26 26 20 69 73 73 65 74 28 24 6d 61 74 63 68 5b 32 5d 29 20 26 26 20 24 6d 61 h[1]).&&.isset($match[2]).&&.$ma
ae240 74 63 68 5b 32 5d 20 21 3d 3d 20 27 2e 2f 27 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 tch[2].!==.'./').{.$this->branch
ae260 65 73 5b 72 74 72 69 6d 28 24 6d 61 74 63 68 5b 32 5d 2c 20 27 2f 27 29 5d 20 3d 20 24 74 68 69 es[rtrim($match[2],.'/')].=.$thi
ae280 73 2d 3e 62 75 69 6c 64 49 64 65 6e 74 69 66 69 65 72 28 0a 27 2f 27 20 2e 20 24 74 68 69 73 2d s->buildIdentifier(.'/'...$this-
ae2a0 3e 62 72 61 6e 63 68 65 73 50 61 74 68 20 2e 20 27 2f 27 20 2e 20 24 6d 61 74 63 68 5b 32 5d 2c >branchesPath...'/'...$match[2],
ae2c0 0a 24 6d 61 74 63 68 5b 31 5d 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 .$match[1].);.}.}.}.}.}.}..retur
ae2e0 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 n.$this->branches;.}.....public.
ae300 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 static.function.supports(IOInter
ae320 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 24 75 72 6c 2c 20 face.$io,.Config.$config,.$url,.
ae340 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 75 72 6c 20 3d 20 73 65 6c 66 3a 3a 6e 6f $deep.=.false).{.$url.=.self::no
ae360 72 6d 61 6c 69 7a 65 55 72 6c 28 24 75 72 6c 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 rmalizeUrl($url);.if.(preg_match
ae380 28 27 23 28 5e 73 76 6e 3a 2f 2f 7c 5e 73 76 6e 5c 2b 73 73 68 3a 2f 2f 7c 73 76 6e 5c 2e 29 23 ('#(^svn://|^svn\+ssh://|svn\.)#
ae3a0 69 27 2c 20 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 i',.$url)).{.return.true;.}....i
ae3c0 66 20 28 21 24 64 65 65 70 20 26 26 20 21 46 69 6c 65 73 79 73 74 65 6d 3a 3a 69 73 4c 6f 63 61 f.(!$deep.&&.!Filesystem::isLoca
ae3e0 6c 50 61 74 68 28 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a lPath($url)).{.return.false;.}..
ae400 24 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 $processExecutor.=.new.ProcessEx
ae420 65 63 75 74 6f 72 28 29 3b 0a 0a 24 65 78 69 74 20 3d 20 24 70 72 6f 63 65 73 73 45 78 65 63 75 ecutor();..$exit.=.$processExecu
ae440 74 6f 72 2d 3e 65 78 65 63 75 74 65 28 0a 22 73 76 6e 20 69 6e 66 6f 20 2d 2d 6e 6f 6e 2d 69 6e tor->execute(."svn.info.--non-in
ae460 74 65 72 61 63 74 69 76 65 20 7b 24 75 72 6c 7d 22 2c 0a 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 teractive.{$url}",.$ignoredOutpu
ae480 74 0a 29 3b 0a 0a 69 66 20 28 24 65 78 69 74 20 3d 3d 3d 20 30 29 20 7b 0a 0a 20 72 65 74 75 72 t.);..if.($exit.===.0).{...retur
ae4a0 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 69 70 6f 73 n.true;.}..if.(false.!==.stripos
ae4c0 28 24 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 ($processExecutor->getErrorOutpu
ae4e0 74 28 29 2c 20 27 61 75 74 68 6f 72 69 7a 61 74 69 6f 6e 20 66 61 69 6c 65 64 3a 27 29 29 20 7b t(),.'authorization.failed:')).{
ae500 0a 0a 20 0a 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 .....return.true;.}..return.fals
ae520 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 66 75 e;.}.........protected.static.fu
ae540 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 55 72 6c 28 24 75 72 6c 29 0a 7b 0a 24 66 73 20 nction.normalizeUrl($url).{.$fs.
ae560 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 69 66 20 28 24 66 73 2d 3e 69 73 41 =.new.Filesystem();.if.($fs->isA
ae580 62 73 6f 6c 75 74 65 50 61 74 68 28 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 66 69 6c bsolutePath($url)).{.return.'fil
ae5a0 65 3a 2f 2f 27 20 2e 20 73 74 72 74 72 28 24 75 72 6c 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a e://'...strtr($url,.'\\',.'/');.
ae5c0 7d 0a 0a 72 65 74 75 72 6e 20 24 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 }..return.$url;.}...........prot
ae5e0 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c ected.function.execute($command,
ae600 20 24 75 72 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 75 74 69 .$url).{.if.(null.===.$this->uti
ae620 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 75 74 69 6c 20 3d 20 6e 65 77 20 53 76 6e 55 74 69 6c 28 24 l).{.$this->util.=.new.SvnUtil($
ae640 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d this->baseUrl,.$this->io,.$this-
ae660 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b 0a 24 74 68 69 73 2d >config,.$this->process);.$this-
ae680 3e 75 74 69 6c 2d 3e 73 65 74 43 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 28 24 74 68 69 73 >util->setCacheCredentials($this
ae6a0 2d 3e 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 72 65 ->cacheCredentials);.}..try.{.re
ae6c0 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 74 69 6c 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 turn.$this->util->execute($comma
ae6e0 6e 64 2c 20 24 75 72 6c 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 nd,.$url);.}.catch.(\RuntimeExce
ae700 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f ption.$e).{.if.(0.!==.$this->pro
ae720 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 2d 2d 76 65 72 73 69 6f 6e 27 2c 20 24 cess->execute('svn.--version',.$
ae740 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e ignoredOutput)).{.throw.new.\Run
ae760 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 6c 6f 61 64 20 27 2e timeException('Failed.to.load.'.
ae780 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2c 20 73 76 6e 20 77 61 73 20 6e 6f 74 20 66 6f 75 6e 64 2c $this->url.',.svn.was.not.found,
ae7a0 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 20 61 6e 64 20 .check.that.it.is.installed.and.
ae7c0 69 6e 20 79 6f 75 72 20 50 41 54 48 20 65 6e 76 2e 27 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 in.your.PATH.env.'..."\n\n"...$t
ae7e0 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b his->process->getErrorOutput());
ae800 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 .}..throw.new.\RuntimeException(
ae820 0a 27 52 65 70 6f 73 69 74 6f 72 79 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 63 6f 75 6c .'Repository.'.$this->url.'.coul
ae840 64 20 6e 6f 74 20 62 65 20 70 72 6f 63 65 73 73 65 64 2c 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 d.not.be.processed,.'.$e->getMes
ae860 73 61 67 65 28 29 0a 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 sage().);.}.}..........protected
ae880 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 49 64 65 6e 74 69 66 69 65 72 28 24 62 61 73 65 44 .function.buildIdentifier($baseD
ae8a0 69 72 2c 20 24 72 65 76 69 73 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 72 74 72 69 6d 28 24 62 ir,.$revision).{.return.rtrim($b
ae8c0 61 73 65 44 69 72 2c 20 27 2f 27 29 20 2e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 50 61 74 aseDir,.'/')...$this->packagePat
ae8e0 68 20 2e 20 27 2f 40 27 20 2e 20 24 72 65 76 69 73 69 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a h...'/@'...$revision;.}.}.<?php.
ae900 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 ...........namespace.Composer\Re
ae920 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e pository\Vcs;..use.Composer\Down
ae940 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 loader\TransportException;.use.C
ae960 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 omposer\Config;.use.Composer\Fac
ae980 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 tory;.use.Composer\IO\IOInterfac
ae9a0 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 e;.use.Composer\Util\ProcessExec
ae9c0 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 utor;.use.Composer\Util\RemoteFi
ae9e0 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 lesystem;.use.Composer\Util\File
aea00 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 56 63 73 system;.......abstract.class.Vcs
aea20 44 72 69 76 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 Driver.implements.VcsDriverInter
aea40 66 61 63 65 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 75 72 6c 3b 0a 0a 70 72 6f 74 65 63 74 face.{..protected.$url;..protect
aea60 65 64 20 24 6f 72 69 67 69 6e 55 72 6c 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 43 ed.$originUrl;..protected.$repoC
aea80 6f 6e 66 69 67 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 70 72 6f 74 65 63 74 65 onfig;..protected.$io;..protecte
aeaa0 64 20 24 63 6f 6e 66 69 67 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a d.$config;..protected.$process;.
aeac0 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a .protected.$remoteFilesystem;...
aeae0 0a 0a 0a 0a 0a 0a 0a 0a 66 69 6e 61 6c 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f ........final.public.function.__
aeb00 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 construct(array.$repoConfig,.IOI
aeb20 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 50 72 nterface.$io,.Config.$config,.Pr
aeb40 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 2c 20 52 ocessExecutor.$process.=.null,.R
aeb60 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 emoteFilesystem.$remoteFilesyste
aeb80 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 46 69 6c 65 73 79 73 74 65 6d 3a 3a 69 73 4c 6f m.=.null).{.if.(Filesystem::isLo
aeba0 63 61 6c 50 61 74 68 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 29 29 20 7b 0a 24 calPath($repoConfig['url'])).{.$
aebc0 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 20 3d 20 46 69 6c 65 73 79 73 74 65 6d 3a 3a repoConfig['url'].=.Filesystem::
aebe0 67 65 74 50 6c 61 74 66 6f 72 6d 50 61 74 68 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c getPlatformPath($repoConfig['url
aec00 27 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 ']);.}..$this->url.=.$repoConfig
aec20 5b 27 75 72 6c 27 5d 3b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 20 24 72 65 70 ['url'];.$this->originUrl.=.$rep
aec40 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 oConfig['url'];.$this->repoConfi
aec60 67 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f g.=.$repoConfig;.$this->io.=.$io
aec80 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 ;.$this->config.=.$config;.$this
aeca0 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 ->process.=.$process.?:.new.Proc
aecc0 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 essExecutor($io);.$this->remoteF
aece0 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3f 3a ilesystem.=.$remoteFilesystem.?:
aed00 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d .Factory::createRemoteFilesystem
aed20 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c ($this->io,.$config);.}.....publ
aed40 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 24 69 64 65 ic.function.hasComposerFile($ide
aed60 6e 74 69 66 69 65 72 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 24 ntifier).{.try.{.return.(bool).$
aed80 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 this->getComposerInformation($id
aeda0 65 6e 74 69 66 69 65 72 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 entifier);.}.catch.(TransportExc
aedc0 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a eption.$e).{.}..return.false;.}.
aede0 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 63 ........protected.function.getSc
aee00 68 65 6d 65 28 29 0a 7b 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f heme().{.if.(extension_loaded('o
aee20 70 65 6e 73 73 6c 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 68 74 74 70 73 27 3b 0a 7d 0a 0a 72 penssl')).{.return.'https';.}..r
aee40 65 74 75 72 6e 20 27 68 74 74 70 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 eturn.'http';.}.........protecte
aee60 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 0a 7b 0a 72 d.function.getContents($url).{.r
aee80 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 2d 3e 67 eturn.$this->remoteFilesystem->g
aeea0 65 74 43 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 75 72 etContents($this->originUrl,.$ur
aeec0 6c 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e l,.false);.}.....public.function
aeee0 20 63 6c 65 61 6e 75 70 28 29 0a 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a .cleanup().{.return;.}.}.<?php..
aef00 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 ..........namespace.Composer\Rep
aef20 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 ository\Vcs;..use.Composer\Confi
aef40 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a g;.use.Composer\IO\IOInterface;.
aef60 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 ....interface.VcsDriverInterface
aef80 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 .{....public.function.initialize
aefa0 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f ();........public.function.getCo
aefc0 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a mposerInformation($identifier);.
aefe0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 ......public.function.getRootIde
af000 6e 74 69 66 69 65 72 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ntifier();.......public.function
af020 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .getBranches();.......public.fun
af040 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ction.getTags();......public.fun
af060 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 0a 0a 0a 0a ction.getDist($identifier);.....
af080 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e .public.function.getSource($iden
af0a0 74 69 66 69 65 72 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 tifier);.......public.function.g
af0c0 65 74 55 72 6c 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e etUrl();.........public.function
af0e0 20 68 61 73 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 0a .hasComposerFile($identifier);..
af100 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 75 70 28 29 3b 0a 0a 0a ...public.function.cleanup();...
af120 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 ........public.static.function.s
af140 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 upports(IOInterface.$io,.Config.
af160 24 63 6f 6e 66 69 67 2c 20 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 3b 0a 7d $config,.$url,.$deep.=.false);.}
af180 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 .<?php............namespace.Comp
af1a0 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 oser\Repository;..use.Composer\D
af1c0 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 ownloader\TransportException;.us
af1e0 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 56 63 73 44 72 69 e.Composer\Repository\Vcs\VcsDri
af200 76 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 verInterface;.use.Composer\Packa
af220 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f ge\Version\VersionParser;.use.Co
af240 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 mposer\Package\Loader\ArrayLoade
af260 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 56 r;.use.Composer\Package\Loader\V
af280 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 alidatingArrayLoader;.use.Compos
af2a0 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 49 6e 76 61 6c 69 64 50 61 63 6b 61 67 65 er\Package\Loader\InvalidPackage
af2c0 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c Exception;.use.Composer\Package\
af2e0 4c 6f 61 64 65 72 5c 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 Loader\LoaderInterface;.use.Comp
af300 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 oser\EventDispatcher\EventDispat
af320 63 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 cher;.use.Composer\IO\IOInterfac
af340 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 63 6c 61 73 e;.use.Composer\Config;.....clas
af360 73 20 56 63 73 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 s.VcsRepository.extends.ArrayRep
af380 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 66 69 67 75 72 61 62 6c 65 52 ository.implements.ConfigurableR
af3a0 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 epositoryInterface.{.protected.$
af3c0 75 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 70 72 6f url;.protected.$packageName;.pro
af3e0 74 65 63 74 65 64 20 24 76 65 72 62 6f 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a tected.$verbose;.protected.$io;.
af400 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 protected.$config;.protected.$ve
af420 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 79 70 65 3b 0a 70 72 rsionParser;.protected.$type;.pr
af440 6f 74 65 63 74 65 64 20 24 6c 6f 61 64 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f otected.$loader;.protected.$repo
af460 43 6f 6e 66 69 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 45 72 72 6f 72 4f 63 Config;.protected.$branchErrorOc
af480 63 75 72 72 65 64 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 64 72 69 76 65 72 73 curred.=.false;.private.$drivers
af4a0 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 ;..public.function.__construct(a
af4c0 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 rray.$repoConfig,.IOInterface.$i
af4e0 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 o,.Config.$config,.EventDispatch
af500 65 72 20 24 64 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 64 72 er.$dispatcher.=.null,.array.$dr
af520 69 76 65 72 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 ivers.=.null).{.parent::__constr
af540 75 63 74 28 29 3b 0a 24 74 68 69 73 2d 3e 64 72 69 76 65 72 73 20 3d 20 24 64 72 69 76 65 72 73 uct();.$this->drivers.=.$drivers
af560 20 3f 3a 20 61 72 72 61 79 28 0a 27 67 69 74 68 75 62 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 .?:.array(.'github'.=>.'Composer
af580 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 47 69 74 48 75 62 44 72 69 76 65 72 27 2c 0a 27 \Repository\Vcs\GitHubDriver',.'
af5a0 67 69 74 6c 61 62 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c gitlab'.=>.'Composer\Repository\
af5c0 56 63 73 5c 47 69 74 4c 61 62 44 72 69 76 65 72 27 2c 0a 27 67 69 74 2d 62 69 74 62 75 63 6b 65 Vcs\GitLabDriver',.'git-bitbucke
af5e0 74 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 47 t'.=>.'Composer\Repository\Vcs\G
af600 69 74 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 27 2c 0a 27 67 69 74 27 20 3d 3e 20 27 43 6f itBitbucketDriver',.'git'.=>.'Co
af620 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 47 69 74 44 72 69 76 65 72 27 mposer\Repository\Vcs\GitDriver'
af640 2c 0a 27 68 67 2d 62 69 74 62 75 63 6b 65 74 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 ,.'hg-bitbucket'.=>.'Composer\Re
af660 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 48 67 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 27 2c pository\Vcs\HgBitbucketDriver',
af680 0a 27 68 67 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 .'hg'.=>.'Composer\Repository\Vc
af6a0 73 5c 48 67 44 72 69 76 65 72 27 2c 0a 27 70 65 72 66 6f 72 63 65 27 20 3d 3e 20 27 43 6f 6d 70 s\HgDriver',.'perforce'.=>.'Comp
af6c0 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 50 65 72 66 6f 72 63 65 44 72 69 76 oser\Repository\Vcs\PerforceDriv
af6e0 65 72 27 2c 0a 0a 20 27 73 76 6e 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 er',...'svn'.=>.'Composer\Reposi
af700 74 6f 72 79 5c 56 63 73 5c 53 76 6e 44 72 69 76 65 72 27 2c 0a 29 3b 0a 0a 24 74 68 69 73 2d 3e tory\Vcs\SvnDriver',.);..$this->
af720 75 72 6c 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 3b 0a 24 74 68 69 73 2d url.=.$repoConfig['url'];.$this-
af740 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 69 73 73 65 74 28 24 >io.=.$io;.$this->type.=.isset($
af760 72 65 70 6f 43 6f 6e 66 69 67 5b 27 74 79 70 65 27 5d 29 20 3f 20 24 72 65 70 6f 43 6f 6e 66 69 repoConfig['type']).?.$repoConfi
af780 67 5b 27 74 79 70 65 27 5d 20 3a 20 27 76 63 73 27 3b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 g['type'].:.'vcs';.$this->verbos
af7a0 65 20 3d 20 24 69 6f 2d 3e 69 73 56 65 72 79 56 65 72 62 6f 73 65 28 29 3b 0a 24 74 68 69 73 2d e.=.$io->isVeryVerbose();.$this-
af7c0 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f >config.=.$config;.$this->repoCo
af7e0 6e 66 69 67 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 nfig.=.$repoConfig;.}..public.fu
af800 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 43 6f 6e 66 69 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 nction.getRepoConfig().{.return.
af820 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e $this->repoConfig;.}..public.fun
af840 63 74 69 6f 6e 20 73 65 74 4c 6f 61 64 65 72 28 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 20 ction.setLoader(LoaderInterface.
af860 24 6c 6f 61 64 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 24 6c 6f 61 64 $loader).{.$this->loader.=.$load
af880 65 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 72 69 76 65 72 er;.}..public.function.getDriver
af8a0 28 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 64 72 69 76 65 72 73 5b 24 74 ().{.if.(isset($this->drivers[$t
af8c0 68 69 73 2d 3e 74 79 70 65 5d 29 29 20 7b 0a 24 63 6c 61 73 73 20 3d 20 24 74 68 69 73 2d 3e 64 his->type])).{.$class.=.$this->d
af8e0 72 69 76 65 72 73 5b 24 74 68 69 73 2d 3e 74 79 70 65 5d 3b 0a 24 64 72 69 76 65 72 20 3d 20 6e rivers[$this->type];.$driver.=.n
af900 65 77 20 24 63 6c 61 73 73 28 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 2c 20 24 74 68 ew.$class($this->repoConfig,.$th
af920 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 0a 24 64 72 69 76 65 72 is->io,.$this->config);..$driver
af940 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 72 69 76 65 72 3b ->initialize();..return.$driver;
af960 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 72 69 76 65 72 73 20 61 73 20 24 .}..foreach.($this->drivers.as.$
af980 64 72 69 76 65 72 29 20 7b 0a 69 66 20 28 24 64 72 69 76 65 72 3a 3a 73 75 70 70 6f 72 74 73 28 driver).{.if.($driver::supports(
af9a0 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d $this->io,.$this->config,.$this-
af9c0 3e 75 72 6c 29 29 20 7b 0a 24 64 72 69 76 65 72 20 3d 20 6e 65 77 20 24 64 72 69 76 65 72 28 24 >url)).{.$driver.=.new.$driver($
af9e0 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 this->repoConfig,.$this->io,.$th
afa00 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 0a 24 64 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a is->config);..$driver->initializ
afa20 65 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 72 69 76 65 72 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 e();..return.$driver;.}.}..forea
afa40 63 68 20 28 24 74 68 69 73 2d 3e 64 72 69 76 65 72 73 20 61 73 20 24 64 72 69 76 65 72 29 20 7b ch.($this->drivers.as.$driver).{
afa60 0a 69 66 20 28 24 64 72 69 76 65 72 3a 3a 73 75 70 70 6f 72 74 73 28 24 74 68 69 73 2d 3e 69 6f .if.($driver::supports($this->io
afa80 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 75 72 6c 2c 20 74 72 75 ,.$this->config,.$this->url,.tru
afaa0 65 29 29 20 7b 0a 24 64 72 69 76 65 72 20 3d 20 6e 65 77 20 24 64 72 69 76 65 72 28 24 74 68 69 e)).{.$driver.=.new.$driver($thi
afac0 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d s->repoConfig,.$this->io,.$this-
afae0 3e 63 6f 6e 66 69 67 29 3b 0a 0a 24 64 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 >config);..$driver->initialize()
afb00 3b 0a 0a 72 65 74 75 72 6e 20 24 64 72 69 76 65 72 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 ;..return.$driver;.}.}.}..public
afb20 20 66 75 6e 63 74 69 6f 6e 20 68 61 64 49 6e 76 61 6c 69 64 42 72 61 6e 63 68 65 73 28 29 0a 7b .function.hadInvalidBranches().{
afb40 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 45 72 72 6f 72 4f 63 63 75 72 72 .return.$this->branchErrorOccurr
afb60 65 64 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 ed;.}..protected.function.initia
afb80 6c 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a lize().{.parent::initialize();..
afba0 24 76 65 72 62 6f 73 65 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 65 3b 0a 0a 24 64 72 69 $verbose.=.$this->verbose;..$dri
afbc0 76 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 72 69 76 65 72 28 29 3b 0a 69 66 20 28 21 24 ver.=.$this->getDriver();.if.(!$
afbe0 64 72 69 76 65 72 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 driver).{.throw.new.\InvalidArgu
afc00 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 4e 6f 20 64 72 69 76 65 72 20 66 6f 75 6e 64 20 74 mentException('No.driver.found.t
afc20 6f 20 68 61 6e 64 6c 65 20 56 43 53 20 72 65 70 6f 73 69 74 6f 72 79 20 27 2e 24 74 68 69 73 2d o.handle.VCS.repository.'.$this-
afc40 3e 75 72 6c 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d >url);.}..$this->versionParser.=
afc60 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e .new.VersionParser;.if.(!$this->
afc80 6c 6f 61 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 loader).{.$this->loader.=.new.Ar
afca0 72 61 79 4c 6f 61 64 65 72 28 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 3b rayLoader($this->versionParser);
afcc0 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 20 28 24 64 72 69 76 65 72 2d 3e 68 61 73 43 6f 6d 70 6f 73 .}..try.{.if.($driver->hasCompos
afce0 65 72 46 69 6c 65 28 24 64 72 69 76 65 72 2d 3e 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 erFile($driver->getRootIdentifie
afd00 72 28 29 29 29 20 7b 0a 24 64 61 74 61 20 3d 20 24 64 72 69 76 65 72 2d 3e 67 65 74 43 6f 6d 70 r())).{.$data.=.$driver->getComp
afd20 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 64 72 69 76 65 72 2d 3e 67 65 74 52 6f 6f 74 oserInformation($driver->getRoot
afd40 49 64 65 6e 74 69 66 69 65 72 28 29 29 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d Identifier());.$this->packageNam
afd60 65 20 3d 20 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 29 20 3f 20 24 64 61 74 e.=.!empty($data['name']).?.$dat
afd80 61 5b 27 6e 61 6d 65 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 a['name'].:.null;.}.}.catch.(\Ex
afda0 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 ception.$e).{.if.($verbose).{.$t
afdc0 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 53 6b 69 70 his->io->writeError('<error>Skip
afde0 70 65 64 20 70 61 72 73 69 6e 67 20 27 2e 24 64 72 69 76 65 72 2d 3e 67 65 74 52 6f 6f 74 49 64 ped.parsing.'.$driver->getRootId
afe00 65 6e 74 69 66 69 65 72 28 29 2e 27 2c 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 entifier().',.'.$e->getMessage()
afe20 2e 27 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 72 69 .'</error>');.}.}..foreach.($dri
afe40 76 65 72 2d 3e 67 65 74 54 61 67 73 28 29 20 61 73 20 24 74 61 67 20 3d 3e 20 24 69 64 65 6e 74 ver->getTags().as.$tag.=>.$ident
afe60 69 66 69 65 72 29 20 7b 0a 24 6d 73 67 20 3d 20 27 52 65 61 64 69 6e 67 20 63 6f 6d 70 6f 73 65 ifier).{.$msg.=.'Reading.compose
afe80 72 2e 6a 73 6f 6e 20 6f 66 20 3c 69 6e 66 6f 3e 27 20 2e 20 28 24 74 68 69 73 2d 3e 70 61 63 6b r.json.of.<info>'...($this->pack
afea0 61 67 65 4e 61 6d 65 20 3f 3a 20 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 27 3c 2f 69 6e 66 6f ageName.?:.$this->url)...'</info
afec0 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 74 61 67 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e >.(<comment>'...$tag...'</commen
afee0 74 3e 29 27 3b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d t>)';.if.($verbose).{.$this->io-
aff00 3e 77 72 69 74 65 45 72 72 6f 72 28 24 6d 73 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 >writeError($msg);.}.else.{.$thi
aff20 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 24 6d 73 67 2c 20 66 61 6c 73 s->io->overwriteError($msg,.fals
aff40 65 29 3b 0a 7d 0a 0a 0a 20 24 74 61 67 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 72 65 6c e);.}....$tag.=.str_replace('rel
aff60 65 61 73 65 2d 27 2c 20 27 27 2c 20 24 74 61 67 29 3b 0a 0a 69 66 20 28 21 24 70 61 72 73 65 64 ease-',.'',.$tag);..if.(!$parsed
aff80 54 61 67 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 54 61 67 28 24 74 61 67 29 29 20 Tag.=.$this->validateTag($tag)).
affa0 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 {.if.($verbose).{.$this->io->wri
affc0 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 53 6b 69 70 70 65 64 20 74 61 67 20 27 2e teError('<warning>Skipped.tag.'.
affe0 24 74 61 67 2e 27 2c 20 69 6e 76 61 6c 69 64 20 74 61 67 20 6e 61 6d 65 3c 2f 77 61 72 6e 69 6e $tag.',.invalid.tag.name</warnin
b0000 67 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 20 28 21 g>');.}.continue;.}..try.{.if.(!
b0020 24 64 61 74 61 20 3d 20 24 64 72 69 76 65 72 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f $data.=.$driver->getComposerInfo
b0040 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 69 66 20 28 24 76 65 72 rmation($identifier)).{.if.($ver
b0060 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c bose).{.$this->io->writeError('<
b0080 77 61 72 6e 69 6e 67 3e 53 6b 69 70 70 65 64 20 74 61 67 20 27 2e 24 74 61 67 2e 27 2c 20 6e 6f warning>Skipped.tag.'.$tag.',.no
b00a0 20 63 6f 6d 70 6f 73 65 72 20 66 69 6c 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 63 6f .composer.file</warning>');.}.co
b00c0 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 76 65 ntinue;.}....if.(isset($data['ve
b00e0 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 rsion'])).{.$data['version_norma
b0100 6c 69 7a 65 64 27 5d 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e lized'].=.$this->versionParser->
b0120 6e 6f 72 6d 61 6c 69 7a 65 28 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 7d 20 65 normalize($data['version']);.}.e
b0140 6c 73 65 20 7b 0a 0a 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 74 61 67 3b lse.{...$data['version'].=.$tag;
b0160 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 24 .$data['version_normalized'].=.$
b0180 70 61 72 73 65 64 54 61 67 3b 0a 7d 0a 0a 0a 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d parsedTag;.}....$data['version']
b01a0 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 2e 2d 5d 3f 64 65 76 24 7d 69 27 2c 20 .=.preg_replace('{[.-]?dev$}i',.
b01c0 27 27 2c 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 24 64 61 74 61 5b 27 76 65 '',.$data['version']);.$data['ve
b01e0 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 rsion_normalized'].=.preg_replac
b0200 65 28 27 7b 28 5e 64 65 76 2d 7c 5b 2e 2d 5d 3f 64 65 76 24 29 7d 69 27 2c 20 27 27 2c 20 24 64 e('{(^dev-|[.-]?dev$)}i',.'',.$d
b0220 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 29 3b 0a 0a 0a 20 69 ata['version_normalized']);....i
b0240 66 20 28 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 21 f.($data['version_normalized'].!
b0260 3d 3d 20 24 70 61 72 73 65 64 54 61 67 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b ==.$parsedTag).{.if.($verbose).{
b0280 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 .$this->io->writeError('<warning
b02a0 3e 53 6b 69 70 70 65 64 20 74 61 67 20 27 2e 24 74 61 67 2e 27 2c 20 74 61 67 20 28 27 2e 24 70 >Skipped.tag.'.$tag.',.tag.('.$p
b02c0 61 72 73 65 64 54 61 67 2e 27 29 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 76 65 72 73 69 arsedTag.').does.not.match.versi
b02e0 6f 6e 20 28 27 2e 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 on.('.$data['version_normalized'
b0300 5d 2e 27 29 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 3c 2f 77 61 72 6e 69 6e 67 3e 27 ].').in.composer.json</warning>'
b0320 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 );.}.continue;.}..if.($verbose).
b0340 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 49 6d 70 6f 72 74 69 {.$this->io->writeError('Importi
b0360 6e 67 20 74 61 67 20 27 2e 24 74 61 67 2e 27 20 28 27 2e 24 64 61 74 61 5b 27 76 65 72 73 69 6f ng.tag.'.$tag.'.('.$data['versio
b0380 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2e 27 29 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 n_normalized'].')');.}..$this->a
b03a0 64 64 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 74 ddPackage($this->loader->load($t
b03c0 68 69 73 2d 3e 70 72 65 50 72 6f 63 65 73 73 28 24 64 72 69 76 65 72 2c 20 24 64 61 74 61 2c 20 his->preProcess($driver,.$data,.
b03e0 24 69 64 65 6e 74 69 66 69 65 72 29 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 $identifier)));.}.catch.(\Except
b0400 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d ion.$e).{.if.($verbose).{.$this-
b0420 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 53 6b 69 70 70 65 >io->writeError('<warning>Skippe
b0440 64 20 74 61 67 20 27 2e 24 74 61 67 2e 27 2c 20 27 2e 28 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 d.tag.'.$tag.',.'.($e.instanceof
b0460 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 3f 20 27 6e 6f 20 63 6f 6d 70 6f 73 .TransportException.?.'no.compos
b0480 65 72 20 66 69 6c 65 20 77 61 73 20 66 6f 75 6e 64 27 20 3a 20 24 65 2d 3e 67 65 74 4d 65 73 73 er.file.was.found'.:.$e->getMess
b04a0 61 67 65 28 29 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 age()).'</warning>');.}.continue
b04c0 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 ;.}.}..if.(!$verbose).{.$this->i
b04e0 6f 2d 3e 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 27 27 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a o->overwriteError('',.false);.}.
b0500 0a 66 6f 72 65 61 63 68 20 28 24 64 72 69 76 65 72 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 .foreach.($driver->getBranches()
b0520 20 61 73 20 24 62 72 61 6e 63 68 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 29 20 7b 0a 24 6d .as.$branch.=>.$identifier).{.$m
b0540 73 67 20 3d 20 27 52 65 61 64 69 6e 67 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 66 20 3c sg.=.'Reading.composer.json.of.<
b0560 69 6e 66 6f 3e 27 20 2e 20 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 20 3f 3a 20 info>'...($this->packageName.?:.
b0580 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 27 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 $this->url)...'</info>.(<comment
b05a0 3e 27 20 2e 20 24 62 72 61 6e 63 68 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 27 3b 0a 69 66 >'...$branch...'</comment>)';.if
b05c0 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 .($verbose).{.$this->io->writeEr
b05e0 72 6f 72 28 24 6d 73 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f ror($msg);.}.else.{.$this->io->o
b0600 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 24 6d 73 67 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 verwriteError($msg,.false);.}..i
b0620 66 20 28 21 24 70 61 72 73 65 64 42 72 61 6e 63 68 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 f.(!$parsedBranch.=.$this->valid
b0640 61 74 65 42 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f ateBranch($branch)).{.if.($verbo
b0660 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 se).{.$this->io->writeError('<wa
b0680 72 6e 69 6e 67 3e 53 6b 69 70 70 65 64 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 rning>Skipped.branch.'.$branch.'
b06a0 2c 20 69 6e 76 61 6c 69 64 20 6e 61 6d 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 63 6f ,.invalid.name</warning>');.}.co
b06c0 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 20 28 21 24 64 61 74 61 20 3d 20 24 64 ntinue;.}..try.{.if.(!$data.=.$d
b06e0 72 69 76 65 72 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 river->getComposerInformation($i
b0700 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 dentifier)).{.if.($verbose).{.$t
b0720 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 53 6b his->io->writeError('<warning>Sk
b0740 69 70 70 65 64 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 6e 6f 20 63 6f 6d ipped.branch.'.$branch.',.no.com
b0760 70 6f 73 65 72 20 66 69 6c 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e poser.file</warning>');.}.contin
b0780 75 65 3b 0a 7d 0a 0a 0a 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 62 72 61 ue;.}....$data['version'].=.$bra
b07a0 6e 63 68 3b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d nch;.$data['version_normalized']
b07c0 20 3d 20 24 70 61 72 73 65 64 42 72 61 6e 63 68 3b 0a 0a 0a 20 69 66 20 28 27 64 65 76 2d 27 20 .=.$parsedBranch;....if.('dev-'.
b07e0 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 72 73 65 64 42 72 61 6e 63 68 2c 20 30 2c 20 34 29 20 ===.substr($parsedBranch,.0,.4).
b0800 7c 7c 20 27 39 39 39 39 39 39 39 2d 64 65 76 27 20 3d 3d 3d 20 24 70 61 72 73 65 64 42 72 61 6e ||.'9999999-dev'.===.$parsedBran
b0820 63 68 29 20 7b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 27 64 65 76 2d 27 20 ch).{.$data['version'].=.'dev-'.
b0840 2e 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 72 ..$data['version'];.}.else.{.$pr
b0860 65 66 69 78 20 3d 20 73 75 62 73 74 72 28 24 62 72 61 6e 63 68 2c 20 30 2c 20 31 29 20 3d 3d 3d efix.=.substr($branch,.0,.1).===
b0880 20 27 76 27 20 3f 20 27 76 27 20 3a 20 27 27 3b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 .'v'.?.'v'.:.'';.$data['version'
b08a0 5d 20 3d 20 24 70 72 65 66 69 78 20 2e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 5c 2e ].=.$prefix...preg_replace('{(\.
b08c0 39 7b 37 7d 29 2b 7d 27 2c 20 27 2e 78 27 2c 20 24 70 61 72 73 65 64 42 72 61 6e 63 68 29 3b 0a 9{7})+}',.'.x',.$parsedBranch);.
b08e0 7d 0a 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 }..if.($verbose).{.$this->io->wr
b0900 69 74 65 45 72 72 6f 72 28 27 49 6d 70 6f 72 74 69 6e 67 20 62 72 61 6e 63 68 20 27 2e 24 62 72 iteError('Importing.branch.'.$br
b0920 61 6e 63 68 2e 27 20 28 27 2e 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 2e 27 29 27 29 3b anch.'.('.$data['version'].')');
b0940 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 70 72 65 50 72 6f .}..$packageData.=.$this->prePro
b0960 63 65 73 73 28 24 64 72 69 76 65 72 2c 20 24 64 61 74 61 2c 20 24 69 64 65 6e 74 69 66 69 65 72 cess($driver,.$data,.$identifier
b0980 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 );.$package.=.$this->loader->loa
b09a0 64 28 24 70 61 63 6b 61 67 65 44 61 74 61 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 6f 61 64 d($packageData);.if.($this->load
b09c0 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 er.instanceof.ValidatingArrayLoa
b09e0 64 65 72 20 26 26 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 67 65 74 57 61 72 6e 69 6e 67 der.&&.$this->loader->getWarning
b0a00 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 50 61 63 6b 61 67 65 45 s()).{.throw.new.InvalidPackageE
b0a20 78 63 65 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 67 65 74 45 72 72 6f 72 xception($this->loader->getError
b0a40 73 28 29 2c 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 67 65 74 57 61 72 6e 69 6e 67 73 28 s(),.$this->loader->getWarnings(
b0a60 29 2c 20 24 70 61 63 6b 61 67 65 44 61 74 61 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 ),.$packageData);.}.$this->addPa
b0a80 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 ckage($package);.}.catch.(Transp
b0aa0 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 ortException.$e).{.if.($verbose)
b0ac0 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 .{.$this->io->writeError('<warni
b0ae0 6e 67 3e 53 6b 69 70 70 65 64 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 6e ng>Skipped.branch.'.$branch.',.n
b0b00 6f 20 63 6f 6d 70 6f 73 65 72 20 66 69 6c 65 20 77 61 73 20 66 6f 75 6e 64 3c 2f 77 61 72 6e 69 o.composer.file.was.found</warni
b0b20 6e 67 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 ng>');.}.continue;.}.catch.(\Exc
b0b40 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 21 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 eption.$e).{.if.(!$verbose).{.$t
b0b60 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 7d 0a 24 74 68 69 73 his->io->writeError('');.}.$this
b0b80 2d 3e 62 72 61 6e 63 68 45 72 72 6f 72 4f 63 63 75 72 72 65 64 20 3d 20 74 72 75 65 3b 0a 24 74 ->branchErrorOccurred.=.true;.$t
b0ba0 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 53 6b 69 70 his->io->writeError('<error>Skip
b0bc0 70 65 64 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 27 2e 24 65 2d 3e 67 65 ped.branch.'.$branch.',.'.$e->ge
b0be0 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 74 68 69 73 2d 3e 69 tMessage().'</error>');.$this->i
b0c00 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d o->writeError('');.continue;.}.}
b0c20 0a 24 64 72 69 76 65 72 2d 3e 63 6c 65 61 6e 75 70 28 29 3b 0a 0a 69 66 20 28 21 24 76 65 72 62 .$driver->cleanup();..if.(!$verb
b0c40 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 ose).{.$this->io->overwriteError
b0c60 28 27 27 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 67 65 74 50 ('',.false);.}..if.(!$this->getP
b0c80 61 63 6b 61 67 65 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 52 65 ackages()).{.throw.new.InvalidRe
b0ca0 70 6f 73 69 74 6f 72 79 45 78 63 65 70 74 69 6f 6e 28 27 4e 6f 20 76 61 6c 69 64 20 63 6f 6d 70 positoryException('No.valid.comp
b0cc0 6f 73 65 72 2e 6a 73 6f 6e 20 77 61 73 20 66 6f 75 6e 64 20 69 6e 20 61 6e 79 20 62 72 61 6e 63 oser.json.was.found.in.any.branc
b0ce0 68 20 6f 72 20 74 61 67 20 6f 66 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2c 20 63 6f 75 6c h.or.tag.of.'.$this->url.',.coul
b0d00 64 20 6e 6f 74 20 6c 6f 61 64 20 61 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 69 74 2e 27 29 3b d.not.load.a.package.from.it.');
b0d20 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 65 50 72 6f 63 .}.}..protected.function.preProc
b0d40 65 73 73 28 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 20 24 64 72 69 76 65 72 2c 20 ess(VcsDriverInterface.$driver,.
b0d60 61 72 72 61 79 20 24 64 61 74 61 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 0a 20 24 64 array.$data,.$identifier).{...$d
b0d80 61 74 61 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 ata['name'].=.$this->packageName
b0da0 20 3f 3a 20 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 .?:.$data['name'];..if.(!isset($
b0dc0 64 61 74 61 5b 27 64 69 73 74 27 5d 29 29 20 7b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 20 3d data['dist'])).{.$data['dist'].=
b0de0 20 24 64 72 69 76 65 72 2d 3e 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a .$driver->getDist($identifier);.
b0e00 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 29 29 20 7b }.if.(!isset($data['source'])).{
b0e20 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 20 3d 20 24 64 72 69 76 65 72 2d 3e 67 65 74 53 .$data['source'].=.$driver->getS
b0e40 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 ource($identifier);.}..return.$d
b0e60 61 74 61 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 ata;.}..private.function.validat
b0e80 65 42 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 eBranch($branch).{.try.{.return.
b0ea0 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 $this->versionParser->normalizeB
b0ec0 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 ranch($branch);.}.catch.(\Except
b0ee0 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 ion.$e).{.}..return.false;.}..pr
b0f00 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 54 61 67 28 24 76 65 72 73 ivate.function.validateTag($vers
b0f20 69 6f 6e 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 65 72 73 69 ion).{.try.{.return.$this->versi
b0f40 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d onParser->normalize($version);.}
b0f60 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 0a 72 65 74 75 .catch.(\Exception.$e).{.}..retu
b0f80 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e rn.false;.}.}.<?php............n
b0fa0 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 amespace.Composer\Repository;..u
b0fc0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 se.Composer\Package\AliasPackage
b0fe0 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 57 72 69 74 61 62 6c 65 41 72 72 61 79 52 65 70 6f 73 ;.......class.WritableArrayRepos
b1000 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 20 69 6d itory.extends.ArrayRepository.im
b1020 70 6c 65 6d 65 6e 74 73 20 57 72 69 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 plements.WritableRepositoryInter
b1040 66 61 63 65 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 face.{....public.function.write(
b1060 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6c 6f 61 64 ).{.}.....public.function.reload
b1080 28 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 61 ().{.}.....public.function.getCa
b10a0 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 nonicalPackages().{.$packages.=.
b10c0 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 0a 0a 20 24 70 61 63 6b 61 67 $this->getPackages();....$packag
b10e0 65 73 42 79 4e 61 6d 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 esByName.=.array();.foreach.($pa
b1100 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 ckages.as.$package).{.if.(!isset
b1120 28 24 70 61 63 6b 61 67 65 73 42 79 4e 61 6d 65 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 ($packagesByName[$package->getNa
b1140 6d 65 28 29 5d 29 20 7c 7c 20 24 70 61 63 6b 61 67 65 73 42 79 4e 61 6d 65 5b 24 70 61 63 6b 61 me()]).||.$packagesByName[$packa
b1160 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 ge->getName()].instanceof.AliasP
b1180 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 42 79 4e 61 6d 65 5b 24 70 61 63 6b 61 ackage).{.$packagesByName[$packa
b11a0 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a ge->getName()].=.$package;.}.}..
b11c0 24 63 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a $canonicalPackages.=.array();...
b11e0 20 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 42 79 4e 61 6d 65 20 61 73 20 24 70 61 .foreach.($packagesByName.as.$pa
b1200 63 6b 61 67 65 29 20 7b 0a 77 68 69 6c 65 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 ckage).{.while.($package.instanc
b1220 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 eof.AliasPackage).{.$package.=.$
b1240 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 7d 0a 0a 24 63 61 6e 6f 6e package->getAliasOf();.}..$canon
b1260 69 63 61 6c 50 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 72 65 icalPackages[].=.$package;.}..re
b1280 74 75 72 6e 20 24 63 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 turn.$canonicalPackages;.}.}.<?p
b12a0 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
b12c0 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 \Repository;..use.Composer\Packa
b12e0 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 ge\PackageInterface;.......inter
b1300 66 61 63 65 20 57 72 69 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 face.WritableRepositoryInterface
b1320 20 65 78 74 65 6e 64 73 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a .extends.RepositoryInterface.{..
b1340 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 29 3b 0a 0a 0a 0a 0a 0a ..public.function.write();......
b1360 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 50 61 63 6b 61 67 65 28 50 61 63 6b .public.function.addPackage(Pack
b1380 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 ageInterface.$package);.......pu
b13a0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 50 61 63 6b blic.function.removePackage(Pack
b13c0 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 ageInterface.$package);.......pu
b13e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 blic.function.getCanonicalPackag
b1400 65 73 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6c 6f 61 64 es();.....public.function.reload
b1420 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 ();.}.<?php............namespace
b1440 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f .Composer\Script;.......class.Co
b1460 6d 6d 61 6e 64 45 76 65 6e 74 20 65 78 74 65 6e 64 73 20 45 76 65 6e 74 0a 7b 0a 7d 0a 3c 3f 70 mmandEvent.extends.Event.{.}.<?p
b1480 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 hp............namespace.Composer
b14a0 5c 53 63 72 69 70 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b \Script;..use.Composer\Composer;
b14c0 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 .use.Composer\IO\IOInterface;.us
b14e0 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 e.Composer\EventDispatcher\Event
b1500 20 61 73 20 42 61 73 65 45 76 65 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 76 65 6e .as.BaseEvent;........class.Even
b1520 74 20 65 78 74 65 6e 64 73 20 42 61 73 65 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 t.extends.BaseEvent.{....private
b1540 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 0a 0a 0a .$composer;.....private.$io;....
b1560 0a 70 72 69 76 61 74 65 20 24 64 65 76 4d 6f 64 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 .private.$devMode;............pu
b1580 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c blic.function.__construct($name,
b15a0 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 .Composer.$composer,.IOInterface
b15c0 20 24 69 6f 2c 20 24 64 65 76 4d 6f 64 65 20 3d 20 66 61 6c 73 65 2c 20 61 72 72 61 79 20 24 61 .$io,.$devMode.=.false,.array.$a
b15e0 72 67 73 20 3d 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 66 6c 61 67 73 20 3d 20 61 72 rgs.=.array(),.array.$flags.=.ar
b1600 72 61 79 28 29 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 ray()).{.parent::__construct($na
b1620 6d 65 2c 20 24 61 72 67 73 2c 20 24 66 6c 61 67 73 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f me,.$args,.$flags);.$this->compo
b1640 73 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f ser.=.$composer;.$this->io.=.$io
b1660 3b 0a 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 20 3d 20 24 64 65 76 4d 6f 64 65 3b 0a 7d 0a 0a ;.$this->devMode.=.$devMode;.}..
b1680 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 .....public.function.getComposer
b16a0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a ().{.return.$this->composer;.}..
b16c0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 4f 28 29 0a 7b 0a 72 .....public.function.getIO().{.r
b16e0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 eturn.$this->io;.}.......public.
b1700 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 76 4d 6f 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 function.isDevMode().{.return.$t
b1720 68 69 73 2d 3e 64 65 76 4d 6f 64 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a his->devMode;.}.}.<?php.........
b1740 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 0a 75 ...namespace.Composer\Script;..u
b1760 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 50 61 63 6b 61 67 65 45 76 65 se.Composer\Installer\PackageEve
b1780 6e 74 20 61 73 20 42 61 73 65 50 61 63 6b 61 67 65 45 76 65 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c nt.as.BasePackageEvent;.......cl
b17a0 61 73 73 20 50 61 63 6b 61 67 65 45 76 65 6e 74 20 65 78 74 65 6e 64 73 20 42 61 73 65 50 61 63 ass.PackageEvent.extends.BasePac
b17c0 6b 61 67 65 45 76 65 6e 74 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e kageEvent.{.}.<?php............n
b17e0 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 0a 0a 0a 0a 0a 0a amespace.Composer\Script;.......
b1800 0a 63 6c 61 73 73 20 53 63 72 69 70 74 45 76 65 6e 74 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e .class.ScriptEvents.{........con
b1820 73 74 20 50 52 45 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 20 3d 20 27 70 72 65 2d 69 6e 73 74 61 6c st.PRE_INSTALL_CMD.=.'pre-instal
b1840 6c 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 49 4e 53 54 41 l-cmd';.........const.POST_INSTA
b1860 4c 4c 5f 43 4d 44 20 3d 20 27 70 6f 73 74 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 27 3b 0a 0a 0a 0a LL_CMD.=.'post-install-cmd';....
b1880 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 55 50 44 41 54 45 5f 43 4d 44 20 3d 20 27 70 72 65 .....const.PRE_UPDATE_CMD.=.'pre
b18a0 2d 75 70 64 61 74 65 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 -update-cmd';.........const.POST
b18c0 5f 55 50 44 41 54 45 5f 43 4d 44 20 3d 20 27 70 6f 73 74 2d 75 70 64 61 74 65 2d 63 6d 64 27 3b _UPDATE_CMD.=.'post-update-cmd';
b18e0 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 53 54 41 54 55 53 5f 43 4d 44 20 3d 20 .........const.PRE_STATUS_CMD.=.
b1900 27 70 72 65 2d 73 74 61 74 75 73 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 'pre-status-cmd';.........const.
b1920 50 4f 53 54 5f 53 54 41 54 55 53 5f 43 4d 44 20 3d 20 27 70 6f 73 74 2d 73 74 61 74 75 73 2d 63 POST_STATUS_CMD.=.'post-status-c
b1940 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 41 55 54 4f 4c 4f 41 44 5f md';.........const.PRE_AUTOLOAD_
b1960 44 55 4d 50 20 3d 20 27 70 72 65 2d 61 75 74 6f 6c 6f 61 64 2d 64 75 6d 70 27 3b 0a 0a 0a 0a 0a DUMP.=.'pre-autoload-dump';.....
b1980 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 41 55 54 4f 4c 4f 41 44 5f 44 55 4d 50 20 3d 20 27 ....const.POST_AUTOLOAD_DUMP.=.'
b19a0 70 6f 73 74 2d 61 75 74 6f 6c 6f 61 64 2d 64 75 6d 70 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e post-autoload-dump';.........con
b19c0 73 74 20 50 4f 53 54 5f 52 4f 4f 54 5f 50 41 43 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 st.POST_ROOT_PACKAGE_INSTALL.=.'
b19e0 70 6f 73 74 2d 72 6f 6f 74 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a post-root-package-install';.....
b1a00 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 43 52 45 41 54 45 5f 50 52 4f 4a 45 43 54 5f 43 .....const.POST_CREATE_PROJECT_C
b1a20 4d 44 20 3d 20 27 70 6f 73 74 2d 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 74 2d 63 6d 64 27 3b 0a MD.=.'post-create-project-cmd';.
b1a40 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 41 52 43 48 49 56 45 5f 43 4d 44 20 3d 20 ........const.PRE_ARCHIVE_CMD.=.
b1a60 27 70 72 65 2d 61 72 63 68 69 76 65 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 'pre-archive-cmd';.........const
b1a80 20 50 4f 53 54 5f 41 52 43 48 49 56 45 5f 43 4d 44 20 3d 20 27 70 6f 73 74 2d 61 72 63 68 69 76 .POST_ARCHIVE_CMD.=.'post-archiv
b1aa0 65 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 e-cmd';............const.PRE_PAC
b1ac0 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 72 65 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 KAGE_INSTALL.=.'pre-package-inst
b1ae0 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 50 41 43 4b 41 47 all';..........const.POST_PACKAG
b1b00 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c E_INSTALL.=.'post-package-instal
b1b20 6c 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 4b 41 47 45 5f 55 l';..........const.PRE_PACKAGE_U
b1b40 50 44 41 54 45 20 3d 20 27 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 70 64 61 74 65 27 3b 0a 0a 0a PDATE.=.'pre-package-update';...
b1b60 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 50 41 43 4b 41 47 45 5f 55 50 44 41 54 45 .......const.POST_PACKAGE_UPDATE
b1b80 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 70 64 61 74 65 27 3b 0a 0a 0a 0a 0a 0a 0a .=.'post-package-update';.......
b1ba0 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 4b 41 47 45 5f 55 4e 49 4e 53 54 41 4c 4c 20 3d ...const.PRE_PACKAGE_UNINSTALL.=
b1bc0 20 27 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a 0a .'pre-package-uninstall';.......
b1be0 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 50 41 43 4b 41 47 45 5f 55 4e 49 4e 53 54 41 4c 4c 20 ...const.POST_PACKAGE_UNINSTALL.
b1c00 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a 3c 3f =.'post-package-uninstall';.}.<?
b1c20 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 php............namespace.Compose
b1c40 72 5c 53 65 6c 66 55 70 64 61 74 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4b 65 79 73 0a 7b 0a 70 r\SelfUpdate;.....class.Keys.{.p
b1c60 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 67 65 72 70 72 69 6e ublic.static.function.fingerprin
b1c80 74 28 24 70 61 74 68 29 0a 7b 0a 24 68 61 73 68 20 3d 20 73 74 72 74 6f 75 70 70 65 72 28 68 61 t($path).{.$hash.=.strtoupper(ha
b1ca0 73 68 28 27 73 68 61 32 35 36 27 2c 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5c 73 7d 27 sh('sha256',.preg_replace('{\s}'
b1cc0 2c 20 27 27 2c 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 70 61 74 68 29 29 29 ,.'',.file_get_contents($path)))
b1ce0 29 3b 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 61 72 72 61 79 28 0a 73 );..return.implode('.',.array(.s
b1d00 75 62 73 74 72 28 24 68 61 73 68 2c 20 30 2c 20 38 29 2c 0a 73 75 62 73 74 72 28 24 68 61 73 68 ubstr($hash,.0,.8),.substr($hash
b1d20 2c 20 38 2c 20 38 29 2c 0a 73 75 62 73 74 72 28 24 68 61 73 68 2c 20 31 36 2c 20 38 29 2c 0a 73 ,.8,.8),.substr($hash,.16,.8),.s
b1d40 75 62 73 74 72 28 24 68 61 73 68 2c 20 32 34 2c 20 38 29 2c 0a 27 27 2c 20 0a 20 73 75 62 73 74 ubstr($hash,.24,.8),.'',...subst
b1d60 72 28 24 68 61 73 68 2c 20 33 32 2c 20 38 29 2c 0a 73 75 62 73 74 72 28 24 68 61 73 68 2c 20 34 r($hash,.32,.8),.substr($hash,.4
b1d80 30 2c 20 38 29 2c 0a 73 75 62 73 74 72 28 24 68 61 73 68 2c 20 34 38 2c 20 38 29 2c 0a 73 75 62 0,.8),.substr($hash,.48,.8),.sub
b1da0 73 74 72 28 24 68 61 73 68 2c 20 35 36 2c 20 38 29 2c 0a 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 str($hash,.56,.8),.));.}.}.<?php
b1dc0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 ............namespace.Composer\S
b1de0 65 6c 66 55 70 64 61 74 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 elfUpdate;..use.Composer\Util\Re
b1e00 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e moteFilesystem;.use.Composer\Con
b1e20 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b fig;.use.Composer\Json\JsonFile;
b1e40 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 65 72 73 69 6f 6e 73 0a 7b 0a 70 72 69 76 61 74 65 20 24 72 .....class.Versions.{.private.$r
b1e60 66 73 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 70 72 69 76 61 74 65 20 24 63 68 fs;.private.$config;.private.$ch
b1e80 61 6e 6e 65 6c 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 annel;..public.function.__constr
b1ea0 75 63 74 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 uct(Config.$config,.RemoteFilesy
b1ec0 73 74 65 6d 20 24 72 66 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 73 3b 0a stem.$rfs).{.$this->rfs.=.$rfs;.
b1ee0 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c $this->config.=.$config;.}..publ
b1f00 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 68 61 6e 6e 65 6c 28 29 0a 7b 0a 69 66 20 28 24 ic.function.getChannel().{.if.($
b1f20 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 this->channel).{.return.$this->c
b1f40 68 61 6e 6e 65 6c 3b 0a 7d 0a 0a 24 63 68 61 6e 6e 65 6c 46 69 6c 65 20 3d 20 24 74 68 69 73 2d hannel;.}..$channelFile.=.$this-
b1f60 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2e 27 2f 75 70 64 61 74 65 2d 63 68 >config->get('home').'/update-ch
b1f80 61 6e 6e 65 6c 27 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 63 68 61 6e 6e 65 6c annel';.if.(file_exists($channel
b1fa0 46 69 6c 65 29 29 20 7b 0a 24 63 68 61 6e 6e 65 6c 20 3d 20 74 72 69 6d 28 66 69 6c 65 5f 67 65 File)).{.$channel.=.trim(file_ge
b1fc0 74 5f 63 6f 6e 74 65 6e 74 73 28 24 63 68 61 6e 6e 65 6c 46 69 6c 65 29 29 3b 0a 69 66 20 28 69 t_contents($channelFile));.if.(i
b1fe0 6e 5f 61 72 72 61 79 28 24 63 68 61 6e 6e 65 6c 2c 20 61 72 72 61 79 28 27 73 74 61 62 6c 65 27 n_array($channel,.array('stable'
b2000 2c 20 27 70 72 65 76 69 65 77 27 2c 20 27 73 6e 61 70 73 68 6f 74 27 29 2c 20 74 72 75 65 29 29 ,.'preview',.'snapshot'),.true))
b2020 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 20 3d 20 24 63 68 61 6e .{.return.$this->channel.=.$chan
b2040 6e 65 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 20 nel;.}.}..return.$this->channel.
b2060 3d 20 27 73 74 61 62 6c 65 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 =.'stable';.}..public.function.s
b2080 65 74 43 68 61 6e 6e 65 6c 28 24 63 68 61 6e 6e 65 6c 29 0a 7b 0a 69 66 20 28 21 69 6e 5f 61 72 etChannel($channel).{.if.(!in_ar
b20a0 72 61 79 28 24 63 68 61 6e 6e 65 6c 2c 20 61 72 72 61 79 28 27 73 74 61 62 6c 65 27 2c 20 27 70 ray($channel,.array('stable',.'p
b20c0 72 65 76 69 65 77 27 2c 20 27 73 6e 61 70 73 68 6f 74 27 29 2c 20 74 72 75 65 29 29 20 7b 0a 74 review',.'snapshot'),.true)).{.t
b20e0 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 hrow.new.\InvalidArgumentExcepti
b2100 6f 6e 28 27 49 6e 76 61 6c 69 64 20 63 68 61 6e 6e 65 6c 20 27 2e 24 63 68 61 6e 6e 65 6c 2e 27 on('Invalid.channel.'.$channel.'
b2120 2c 20 6d 75 73 74 20 62 65 20 6f 6e 65 20 6f 66 3a 20 73 74 61 62 6c 65 2c 20 70 72 65 76 69 65 ,.must.be.one.of:.stable,.previe
b2140 77 2c 20 73 6e 61 70 73 68 6f 74 27 29 3b 0a 7d 0a 0a 24 63 68 61 6e 6e 65 6c 46 69 6c 65 20 3d w,.snapshot');.}..$channelFile.=
b2160 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2e 27 2f 75 70 .$this->config->get('home').'/up
b2180 64 61 74 65 2d 63 68 61 6e 6e 65 6c 27 3b 0a 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 20 3d 20 date-channel';.$this->channel.=.
b21a0 24 63 68 61 6e 6e 65 6c 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 63 68 61 $channel;.file_put_contents($cha
b21c0 6e 6e 65 6c 46 69 6c 65 2c 20 24 63 68 61 6e 6e 65 6c 2e 50 48 50 5f 45 4f 4c 29 3b 0a 7d 0a 0a nnelFile,.$channel.PHP_EOL);.}..
b21e0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 61 74 65 73 74 28 29 0a 7b 0a 24 70 public.function.getLatest().{.$p
b2200 72 6f 74 6f 63 6f 6c 20 3d 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e rotocol.=.extension_loaded('open
b2220 73 73 6c 27 29 20 3f 20 27 68 74 74 70 73 27 20 3a 20 27 68 74 74 70 27 3b 0a 24 76 65 72 73 69 ssl').?.'https'.:.'http';.$versi
b2240 6f 6e 73 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d ons.=.JsonFile::parseJson($this-
b2260 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f >rfs->getContents('getcomposer.o
b2280 72 67 27 2c 20 24 70 72 6f 74 6f 63 6f 6c 20 2e 20 27 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 rg',.$protocol...'://getcomposer
b22a0 2e 6f 72 67 2f 76 65 72 73 69 6f 6e 73 27 2c 20 66 61 6c 73 65 29 29 3b 0a 0a 66 6f 72 65 61 63 .org/versions',.false));..foreac
b22c0 68 20 28 24 76 65 72 73 69 6f 6e 73 5b 24 74 68 69 73 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 28 29 h.($versions[$this->getChannel()
b22e0 5d 20 61 73 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 69 66 20 28 24 76 65 72 73 69 6f 6e 5b 27 6d ].as.$version).{.if.($version['m
b2300 69 6e 2d 70 68 70 27 5d 20 3c 3d 20 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 29 20 7b 0a 72 65 in-php'].<=.PHP_VERSION_ID).{.re
b2320 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c turn.$version;.}.}..throw.new.\L
b2340 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 72 65 20 69 73 20 6e 6f 20 76 65 72 73 69 ogicException('There.is.no.versi
b2360 6f 6e 20 6f 66 20 43 6f 6d 70 6f 73 65 72 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 79 6f 75 on.of.Composer.available.for.you
b2380 72 20 50 48 50 20 76 65 72 73 69 6f 6e 20 28 27 2e 50 48 50 5f 56 45 52 53 49 4f 4e 2e 27 29 27 r.PHP.version.('.PHP_VERSION.')'
b23a0 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 );.}.}.<?php............namespac
b23c0 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 e.Composer\Util;..use.Composer\C
b23e0 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 onfig;.use.Composer\IO\IOInterfa
b2400 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 75 74 68 48 65 6c 70 65 72 0a 7b 0a 70 72 6f 74 65 ce;.....class.AuthHelper.{.prote
b2420 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 0a 70 75 cted.$io;.protected.$config;..pu
b2440 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 blic.function.__construct(IOInte
b2460 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 rface.$io,.Config.$config).{.$th
b2480 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 is->io.=.$io;.$this->config.=.$c
b24a0 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 6f 72 65 41 onfig;.}..public.function.storeA
b24c0 75 74 68 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 73 74 6f 72 65 41 75 74 68 29 0a 7b 0a 24 73 uth($originUrl,.$storeAuth).{.$s
b24e0 74 6f 72 65 20 3d 20 66 61 6c 73 65 3b 0a 24 63 6f 6e 66 69 67 53 6f 75 72 63 65 20 3d 20 24 74 tore.=.false;.$configSource.=.$t
b2500 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 41 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 his->config->getAuthConfigSource
b2520 28 29 3b 0a 69 66 20 28 24 73 74 6f 72 65 41 75 74 68 20 3d 3d 3d 20 74 72 75 65 29 20 7b 0a 24 ();.if.($storeAuth.===.true).{.$
b2540 73 74 6f 72 65 20 3d 20 24 63 6f 6e 66 69 67 53 6f 75 72 63 65 3b 0a 7d 20 65 6c 73 65 69 66 20 store.=.$configSource;.}.elseif.
b2560 28 24 73 74 6f 72 65 41 75 74 68 20 3d 3d 3d 20 27 70 72 6f 6d 70 74 27 29 20 7b 0a 24 61 6e 73 ($storeAuth.===.'prompt').{.$ans
b2580 77 65 72 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 wer.=.$this->io->askAndValidate(
b25a0 0a 27 44 6f 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 73 74 6f 72 65 20 63 72 65 64 65 6e 74 69 61 .'Do.you.want.to.store.credentia
b25c0 6c 73 20 66 6f 72 20 27 2e 24 6f 72 69 67 69 6e 55 72 6c 2e 27 20 69 6e 20 27 2e 24 63 6f 6e 66 ls.for.'.$originUrl.'.in.'.$conf
b25e0 69 67 53 6f 75 72 63 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 3f 20 5b 59 6e 5d 20 27 2c 0a igSource->getName().'.?.[Yn].',.
b2600 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 7b 0a 24 69 6e 70 75 74 20 3d 20 73 74 72 function.($value).{.$input.=.str
b2620 74 6f 6c 6f 77 65 72 28 73 75 62 73 74 72 28 74 72 69 6d 28 24 76 61 6c 75 65 29 2c 20 30 2c 20 tolower(substr(trim($value),.0,.
b2640 31 29 29 3b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 69 6e 70 75 74 2c 20 61 72 72 61 79 28 1));.if.(in_array($input,.array(
b2660 27 79 27 2c 27 6e 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 6e 70 75 74 3b 0a 7d 0a 74 68 'y','n'))).{.return.$input;.}.th
b2680 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 50 6c 65 61 73 row.new.\RuntimeException('Pleas
b26a0 65 20 61 6e 73 77 65 72 20 28 79 29 65 73 20 6f 72 20 28 6e 29 6f 27 29 3b 0a 7d 2c 0a 6e 75 6c e.answer.(y)es.or.(n)o');.},.nul
b26c0 6c 2c 0a 27 79 27 0a 29 3b 0a 0a 69 66 20 28 24 61 6e 73 77 65 72 20 3d 3d 3d 20 27 79 27 29 20 l,.'y'.);..if.($answer.===.'y').
b26e0 7b 0a 24 73 74 6f 72 65 20 3d 20 24 63 6f 6e 66 69 67 53 6f 75 72 63 65 3b 0a 7d 0a 7d 0a 69 66 {.$store.=.$configSource;.}.}.if
b2700 20 28 24 73 74 6f 72 65 29 20 7b 0a 24 73 74 6f 72 65 2d 3e 61 64 64 43 6f 6e 66 69 67 53 65 74 .($store).{.$store->addConfigSet
b2720 74 69 6e 67 28 0a 27 68 74 74 70 2d 62 61 73 69 63 2e 27 2e 24 6f 72 69 67 69 6e 55 72 6c 2c 0a ting(.'http-basic.'.$originUrl,.
b2740 24 74 68 69 73 2d 3e 69 6f 2d 3e 67 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6f 72 $this->io->getAuthentication($or
b2760 69 67 69 6e 55 72 6c 29 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a iginUrl).);.}.}.}.<?php.........
b2780 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 0a 0a 0a ...namespace.Composer\Util;.....
b27a0 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6f 73 65 72 4d 69 72 72 6f 72 0a 7b 0a 70 75 62 6c 69 63 20 ..class.ComposerMirror.{.public.
b27c0 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 55 72 6c 28 24 6d 69 72 72 static.function.processUrl($mirr
b27e0 6f 72 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 orUrl,.$packageName,.$version,.$
b2800 72 65 66 65 72 65 6e 63 65 2c 20 24 74 79 70 65 29 0a 7b 0a 69 66 20 28 24 72 65 66 65 72 65 6e reference,.$type).{.if.($referen
b2820 63 65 29 20 7b 0a 24 72 65 66 65 72 65 6e 63 65 20 3d 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b ce).{.$reference.=.preg_match('{
b2840 5e 28 5b 61 2d 66 30 2d 39 5d 2a 7c 25 72 65 66 65 72 65 6e 63 65 25 29 24 7d 27 2c 20 24 72 65 ^([a-f0-9]*|%reference%)$}',.$re
b2860 66 65 72 65 6e 63 65 29 20 3f 20 24 72 65 66 65 72 65 6e 63 65 20 3a 20 6d 64 35 28 24 72 65 66 ference).?.$reference.:.md5($ref
b2880 65 72 65 6e 63 65 29 3b 0a 7d 0a 24 76 65 72 73 69 6f 6e 20 3d 20 73 74 72 70 6f 73 28 24 76 65 erence);.}.$version.=.strpos($ve
b28a0 72 73 69 6f 6e 2c 20 27 2f 27 29 20 3d 3d 3d 20 66 61 6c 73 65 20 3f 20 24 76 65 72 73 69 6f 6e rsion,.'/').===.false.?.$version
b28c0 20 3a 20 6d 64 35 28 24 76 65 72 73 69 6f 6e 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 .:.md5($version);..return.str_re
b28e0 70 6c 61 63 65 28 0a 61 72 72 61 79 28 27 25 70 61 63 6b 61 67 65 25 27 2c 20 27 25 76 65 72 73 place(.array('%package%',.'%vers
b2900 69 6f 6e 25 27 2c 20 27 25 72 65 66 65 72 65 6e 63 65 25 27 2c 20 27 25 74 79 70 65 25 27 29 2c ion%',.'%reference%',.'%type%'),
b2920 0a 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 .array($packageName,.$version,.$
b2940 72 65 66 65 72 65 6e 63 65 2c 20 24 74 79 70 65 29 2c 0a 24 6d 69 72 72 6f 72 55 72 6c 0a 29 3b reference,.$type),.$mirrorUrl.);
b2960 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 .}..public.static.function.proce
b2980 73 73 47 69 74 55 72 6c 28 24 6d 69 72 72 6f 72 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d ssGitUrl($mirrorUrl,.$packageNam
b29a0 65 2c 20 24 75 72 6c 2c 20 24 74 79 70 65 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 e,.$url,.$type).{.if.(preg_match
b29c0 28 27 23 5e 28 3f 3a 28 3f 3a 68 74 74 70 73 3f 7c 67 69 74 29 3a 2f 2f 67 69 74 68 75 62 5c 2e ('#^(?:(?:https?|git)://github\.
b29e0 63 6f 6d 2f 7c 67 69 74 40 67 69 74 68 75 62 5c 2e 63 6f 6d 3a 29 28 5b 5e 2f 5d 2b 29 2f 28 2e com/|git@github\.com:)([^/]+)/(.
b2a00 2b 3f 29 28 3f 3a 5c 2e 67 69 74 29 3f 24 23 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 29 +?)(?:\.git)?$#',.$url,.$match))
b2a20 20 7b 0a 24 75 72 6c 20 3d 20 27 67 68 2d 27 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 2f 27 2e 24 6d .{.$url.=.'gh-'.$match[1].'/'.$m
b2a40 61 74 63 68 5b 32 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 atch[2];.}.elseif.(preg_match('#
b2a60 5e 68 74 74 70 73 3a 2f 2f 62 69 74 62 75 63 6b 65 74 5c 2e 6f 72 67 2f 28 5b 5e 2f 5d 2b 29 2f ^https://bitbucket\.org/([^/]+)/
b2a80 28 2e 2b 3f 29 28 3f 3a 5c 2e 67 69 74 29 3f 2f 3f 24 23 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 (.+?)(?:\.git)?/?$#',.$url,.$mat
b2aa0 63 68 29 29 20 7b 0a 24 75 72 6c 20 3d 20 27 62 62 2d 27 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 2f ch)).{.$url.=.'bb-'.$match[1].'/
b2ac0 27 2e 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 75 72 6c 20 3d 20 70 72 65 '.$match[2];.}.else.{.$url.=.pre
b2ae0 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 5e 61 2d 7a 30 2d 39 5f 2e 2d 5d 7d 69 27 2c 20 27 2d 27 g_replace('{[^a-z0-9_.-]}i',.'-'
b2b00 2c 20 74 72 69 6d 28 24 75 72 6c 2c 20 27 2f 27 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 ,.trim($url,.'/'));.}..return.st
b2b20 72 5f 72 65 70 6c 61 63 65 28 0a 61 72 72 61 79 28 27 25 70 61 63 6b 61 67 65 25 27 2c 20 27 25 r_replace(.array('%package%',.'%
b2b40 6e 6f 72 6d 61 6c 69 7a 65 64 55 72 6c 25 27 2c 20 27 25 74 79 70 65 25 27 29 2c 0a 61 72 72 61 normalizedUrl%',.'%type%'),.arra
b2b60 79 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 75 72 6c 2c 20 24 74 79 70 65 29 2c 0a 24 6d y($packageName,.$url,.$type),.$m
b2b80 69 72 72 6f 72 55 72 6c 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e irrorUrl.);.}..public.static.fun
b2ba0 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 48 67 55 72 6c 28 24 6d 69 72 72 6f 72 55 72 6c 2c 20 24 ction.processHgUrl($mirrorUrl,.$
b2bc0 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 75 72 6c 2c 20 24 74 79 70 65 29 0a 7b 0a 72 65 74 75 packageName,.$url,.$type).{.retu
b2be0 72 6e 20 73 65 6c 66 3a 3a 70 72 6f 63 65 73 73 47 69 74 55 72 6c 28 24 6d 69 72 72 6f 72 55 72 rn.self::processGitUrl($mirrorUr
b2c00 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 75 72 6c 2c 20 24 74 79 70 65 29 3b 0a 7d l,.$packageName,.$url,.$type);.}
b2c20 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f .}.<?php............namespace.Co
b2c40 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 mposer\Util;..use.Composer\Packa
b2c60 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f ge\Loader\ArrayLoader;.use.Compo
b2c80 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 56 61 6c 69 64 61 74 69 6e 67 41 72 72 ser\Package\Loader\ValidatingArr
b2ca0 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c ayLoader;.use.Composer\Package\L
b2cc0 6f 61 64 65 72 5c 49 6e 76 61 6c 69 64 50 61 63 6b 61 67 65 45 78 63 65 70 74 69 6f 6e 3b 0a 75 oader\InvalidPackageException;.u
b2ce0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 se.Composer\Json\JsonValidationE
b2d00 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 xception;.use.Composer\IO\IOInte
b2d20 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c rface;.use.Composer\Json\JsonFil
b2d40 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 70 64 78 5c 53 70 64 78 4c 69 63 65 6e 73 65 e;.use.Composer\Spdx\SpdxLicense
b2d60 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 66 69 67 56 61 6c 69 64 61 74 6f 72 0a s;........class.ConfigValidator.
b2d80 7b 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 {.private.$io;..public.function.
b2da0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 24 __construct(IOInterface.$io).{.$
b2dc0 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 this->io.=.$io;.}..........publi
b2de0 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 28 24 66 69 6c 65 2c 20 24 61 72 72 61 c.function.validate($file,.$arra
b2e00 79 4c 6f 61 64 65 72 56 61 6c 69 64 61 74 69 6f 6e 46 6c 61 67 73 20 3d 20 56 61 6c 69 64 61 74 yLoaderValidationFlags.=.Validat
b2e20 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 3a 3a 43 48 45 43 4b 5f 41 4c 4c 29 0a 7b 0a 24 65 72 ingArrayLoader::CHECK_ALL).{.$er
b2e40 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 20 3d rors.=.array();.$publishErrors.=
b2e60 20 61 72 72 61 79 28 29 3b 0a 24 77 61 72 6e 69 6e 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a .array();.$warnings.=.array();..
b2e80 0a 20 24 6c 61 78 56 61 6c 69 64 20 3d 20 66 61 6c 73 65 3b 0a 74 72 79 20 7b 0a 24 6a 73 6f 6e ..$laxValid.=.false;.try.{.$json
b2ea0 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 66 69 6c 65 2c 20 6e 75 6c 6c 2c 20 24 74 68 .=.new.JsonFile($file,.null,.$th
b2ec0 69 73 2d 3e 69 6f 29 3b 0a 24 6d 61 6e 69 66 65 73 74 20 3d 20 24 6a 73 6f 6e 2d 3e 72 65 61 64 is->io);.$manifest.=.$json->read
b2ee0 28 29 3b 0a 0a 24 6a 73 6f 6e 2d 3e 76 61 6c 69 64 61 74 65 53 63 68 65 6d 61 28 4a 73 6f 6e 46 ();..$json->validateSchema(JsonF
b2f00 69 6c 65 3a 3a 4c 41 58 5f 53 43 48 45 4d 41 29 3b 0a 24 6c 61 78 56 61 6c 69 64 20 3d 20 74 72 ile::LAX_SCHEMA);.$laxValid.=.tr
b2f20 75 65 3b 0a 24 6a 73 6f 6e 2d 3e 76 61 6c 69 64 61 74 65 53 63 68 65 6d 61 28 29 3b 0a 7d 20 63 ue;.$json->validateSchema();.}.c
b2f40 61 74 63 68 20 28 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 20 24 65 atch.(JsonValidationException.$e
b2f60 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 65 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 20 61 73 20 ).{.foreach.($e->getErrors().as.
b2f80 24 6d 65 73 73 61 67 65 29 20 7b 0a 69 66 20 28 24 6c 61 78 56 61 6c 69 64 29 20 7b 0a 24 70 75 $message).{.if.($laxValid).{.$pu
b2fa0 62 6c 69 73 68 45 72 72 6f 72 73 5b 5d 20 3d 20 24 6d 65 73 73 61 67 65 3b 0a 7d 20 65 6c 73 65 blishErrors[].=.$message;.}.else
b2fc0 20 7b 0a 24 65 72 72 6f 72 73 5b 5d 20 3d 20 24 6d 65 73 73 61 67 65 3b 0a 7d 0a 7d 0a 7d 20 63 .{.$errors[].=.$message;.}.}.}.c
b2fe0 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 65 72 72 6f 72 73 5b 5d atch.(\Exception.$e).{.$errors[]
b3000 20 3d 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 .=.$e->getMessage();..return.arr
b3020 61 79 28 24 65 72 72 6f 72 73 2c 20 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 2c 20 24 77 61 72 ay($errors,.$publishErrors,.$war
b3040 6e 69 6e 67 73 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 6e 69 66 65 73 nings);.}....if.(!empty($manifes
b3060 74 5b 27 6c 69 63 65 6e 73 65 27 5d 29 29 20 7b 0a 0a 20 69 66 20 28 69 73 5f 61 72 72 61 79 28 t['license'])).{...if.(is_array(
b3080 24 6d 61 6e 69 66 65 73 74 5b 27 6c 69 63 65 6e 73 65 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 $manifest['license'])).{.foreach
b30a0 20 28 24 6d 61 6e 69 66 65 73 74 5b 27 6c 69 63 65 6e 73 65 27 5d 20 61 73 20 24 6b 65 79 20 3d .($manifest['license'].as.$key.=
b30c0 3e 20 24 6c 69 63 65 6e 73 65 29 20 7b 0a 69 66 20 28 27 70 72 6f 70 72 69 65 74 61 72 79 27 20 >.$license).{.if.('proprietary'.
b30e0 3d 3d 3d 20 24 6c 69 63 65 6e 73 65 29 20 7b 0a 75 6e 73 65 74 28 24 6d 61 6e 69 66 65 73 74 5b ===.$license).{.unset($manifest[
b3100 27 6c 69 63 65 6e 73 65 27 5d 5b 24 6b 65 79 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 6c 69 63 65 6e 'license'][$key]);.}.}.}..$licen
b3120 73 65 56 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 53 70 64 78 4c 69 63 65 6e 73 65 73 28 29 seValidator.=.new.SpdxLicenses()
b3140 3b 0a 69 66 20 28 27 70 72 6f 70 72 69 65 74 61 72 79 27 20 21 3d 3d 20 24 6d 61 6e 69 66 65 73 ;.if.('proprietary'.!==.$manifes
b3160 74 5b 27 6c 69 63 65 6e 73 65 27 5d 20 26 26 20 61 72 72 61 79 28 29 20 21 3d 3d 20 24 6d 61 6e t['license'].&&.array().!==.$man
b3180 69 66 65 73 74 5b 27 6c 69 63 65 6e 73 65 27 5d 20 26 26 20 21 24 6c 69 63 65 6e 73 65 56 61 6c ifest['license'].&&.!$licenseVal
b31a0 69 64 61 74 6f 72 2d 3e 76 61 6c 69 64 61 74 65 28 24 6d 61 6e 69 66 65 73 74 5b 27 6c 69 63 65 idator->validate($manifest['lice
b31c0 6e 73 65 27 5d 29 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 nse'])).{.$warnings[].=.sprintf(
b31e0 0a 27 4c 69 63 65 6e 73 65 20 25 73 20 69 73 20 6e 6f 74 20 61 20 76 61 6c 69 64 20 53 50 44 58 .'License.%s.is.not.a.valid.SPDX
b3200 20 6c 69 63 65 6e 73 65 20 69 64 65 6e 74 69 66 69 65 72 2c 20 73 65 65 20 68 74 74 70 73 3a 2f .license.identifier,.see.https:/
b3220 2f 73 70 64 78 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 20 69 66 20 79 6f 75 20 75 73 65 20 61 /spdx.org/licenses/.if.you.use.a
b3240 6e 20 6f 70 65 6e 20 6c 69 63 65 6e 73 65 2e 27 0a 2e 22 5c 6e 49 66 20 74 68 65 20 73 6f 66 74 n.open.license.'.."\nIf.the.soft
b3260 77 61 72 65 20 69 73 20 63 6c 6f 73 65 64 2d 73 6f 75 72 63 65 2c 20 79 6f 75 20 6d 61 79 20 75 ware.is.closed-source,.you.may.u
b3280 73 65 20 5c 22 70 72 6f 70 72 69 65 74 61 72 79 5c 22 20 61 73 20 6c 69 63 65 6e 73 65 2e 22 2c se.\"proprietary\".as.license.",
b32a0 0a 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 6d 61 6e 69 66 65 73 74 5b 27 6c 69 63 65 6e 73 65 27 .json_encode($manifest['license'
b32c0 5d 29 0a 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 ]).);.}.}.else.{.$warnings[].=.'
b32e0 4e 6f 20 6c 69 63 65 6e 73 65 20 73 70 65 63 69 66 69 65 64 2c 20 69 74 20 69 73 20 72 65 63 6f No.license.specified,.it.is.reco
b3300 6d 6d 65 6e 64 65 64 20 74 6f 20 64 6f 20 73 6f 2e 20 46 6f 72 20 63 6c 6f 73 65 64 2d 73 6f 75 mmended.to.do.so..For.closed-sou
b3320 72 63 65 20 73 6f 66 74 77 61 72 65 20 79 6f 75 20 6d 61 79 20 75 73 65 20 22 70 72 6f 70 72 69 rce.software.you.may.use."propri
b3340 65 74 61 72 79 22 20 61 73 20 6c 69 63 65 6e 73 65 2e 27 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 etary".as.license.';.}..if.(isse
b3360 74 28 24 6d 61 6e 69 66 65 73 74 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 77 61 72 6e t($manifest['version'])).{.$warn
b3380 69 6e 67 73 5b 5d 20 3d 20 27 54 68 65 20 76 65 72 73 69 6f 6e 20 66 69 65 6c 64 20 69 73 20 70 ings[].=.'The.version.field.is.p
b33a0 72 65 73 65 6e 74 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 6c 65 61 resent,.it.is.recommended.to.lea
b33c0 76 65 20 69 74 20 6f 75 74 20 69 66 20 74 68 65 20 70 61 63 6b 61 67 65 20 69 73 20 70 75 62 6c ve.it.out.if.the.package.is.publ
b33e0 69 73 68 65 64 20 6f 6e 20 50 61 63 6b 61 67 69 73 74 2e 27 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d ished.on.Packagist.';.}..if.(!em
b3400 70 74 79 28 24 6d 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 29 20 26 26 20 70 72 65 67 5f 6d pty($manifest['name']).&&.preg_m
b3420 61 74 63 68 28 27 7b 5b 41 2d 5a 5d 7d 27 2c 20 24 6d 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 atch('{[A-Z]}',.$manifest['name'
b3440 5d 29 29 20 7b 0a 24 73 75 67 67 65 73 74 4e 61 6d 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 ])).{.$suggestName.=.preg_replac
b3460 65 28 27 7b 28 3f 3a 28 5b 61 2d 7a 5d 29 28 5b 41 2d 5a 5d 29 7c 28 5b 41 2d 5a 5d 29 28 5b 41 e('{(?:([a-z])([A-Z])|([A-Z])([A
b3480 2d 5a 5d 5b 61 2d 7a 5d 29 29 7d 27 2c 20 27 5c 5c 31 5c 5c 33 2d 5c 5c 32 5c 5c 34 27 2c 20 24 -Z][a-z]))}',.'\\1\\3-\\2\\4',.$
b34a0 6d 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 29 3b 0a 24 73 75 67 67 65 73 74 4e 61 6d 65 20 manifest['name']);.$suggestName.
b34c0 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 75 67 67 65 73 74 4e 61 6d 65 29 3b 0a 0a 24 70 75 =.strtolower($suggestName);..$pu
b34e0 62 6c 69 73 68 45 72 72 6f 72 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 4e 61 6d 65 20 22 blishErrors[].=.sprintf(.'Name."
b3500 25 73 22 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 74 68 65 20 62 65 73 74 20 70 72 61 63 %s".does.not.match.the.best.prac
b3520 74 69 63 65 20 28 65 2e 67 2e 20 6c 6f 77 65 72 2d 63 61 73 65 64 2f 77 69 74 68 2d 64 61 73 68 tice.(e.g..lower-cased/with-dash
b3540 65 73 29 2e 20 57 65 20 73 75 67 67 65 73 74 20 75 73 69 6e 67 20 22 25 73 22 20 69 6e 73 74 65 es)..We.suggest.using."%s".inste
b3560 61 64 2e 20 41 73 20 73 75 63 68 20 79 6f 75 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 61 62 6c 65 ad..As.such.you.will.not.be.able
b3580 20 74 6f 20 73 75 62 6d 69 74 20 69 74 20 74 6f 20 50 61 63 6b 61 67 69 73 74 2e 27 2c 0a 24 6d .to.submit.it.to.Packagist.',.$m
b35a0 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 2c 0a 24 73 75 67 67 65 73 74 4e 61 6d 65 0a 29 3b anifest['name'],.$suggestName.);
b35c0 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 6e 69 66 65 73 74 5b 27 74 79 70 65 27 5d .}..if.(!empty($manifest['type']
b35e0 29 20 26 26 20 24 6d 61 6e 69 66 65 73 74 5b 27 74 79 70 65 27 5d 20 3d 3d 20 27 63 6f 6d 70 6f ).&&.$manifest['type'].==.'compo
b3600 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 27 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 ser-installer').{.$warnings[].=.
b3620 22 54 68 65 20 70 61 63 6b 61 67 65 20 74 79 70 65 20 27 63 6f 6d 70 6f 73 65 72 2d 69 6e 73 74 "The.package.type.'composer-inst
b3640 61 6c 6c 65 72 27 20 69 73 20 64 65 70 72 65 63 61 74 65 64 2e 20 50 6c 65 61 73 65 20 64 69 73 aller'.is.deprecated..Please.dis
b3660 74 72 69 62 75 74 65 20 79 6f 75 72 20 63 75 73 74 6f 6d 20 69 6e 73 74 61 6c 6c 65 72 73 20 61 tribute.your.custom.installers.a
b3680 73 20 70 6c 75 67 69 6e 73 20 66 72 6f 6d 20 6e 6f 77 20 6f 6e 2e 20 53 65 65 20 68 74 74 70 73 s.plugins.from.now.on..See.https
b36a0 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 61 72 74 69 63 6c 65 73 2f ://getcomposer.org/doc/articles/
b36c0 70 6c 75 67 69 6e 73 2e 6d 64 20 66 6f 72 20 70 6c 75 67 69 6e 20 64 6f 63 75 6d 65 6e 74 61 74 plugins.md.for.plugin.documentat
b36e0 69 6f 6e 2e 22 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 6d 61 6e 69 66 65 73 74 5b ion.";.}....if.(isset($manifest[
b3700 27 72 65 71 75 69 72 65 27 5d 29 20 26 26 20 69 73 73 65 74 28 24 6d 61 6e 69 66 65 73 74 5b 27 'require']).&&.isset($manifest['
b3720 72 65 71 75 69 72 65 2d 64 65 76 27 5d 29 29 20 7b 0a 24 72 65 71 75 69 72 65 4f 76 65 72 72 69 require-dev'])).{.$requireOverri
b3740 64 65 73 20 3d 20 61 72 72 61 79 5f 69 6e 74 65 72 73 65 63 74 5f 6b 65 79 28 24 6d 61 6e 69 66 des.=.array_intersect_key($manif
b3760 65 73 74 5b 27 72 65 71 75 69 72 65 27 5d 2c 20 24 6d 61 6e 69 66 65 73 74 5b 27 72 65 71 75 69 est['require'],.$manifest['requi
b3780 72 65 2d 64 65 76 27 5d 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 72 65 71 75 69 72 65 4f re-dev']);..if.(!empty($requireO
b37a0 76 65 72 72 69 64 65 73 29 29 20 7b 0a 24 70 6c 75 72 61 6c 20 3d 20 28 63 6f 75 6e 74 28 24 72 verrides)).{.$plural.=.(count($r
b37c0 65 71 75 69 72 65 4f 76 65 72 72 69 64 65 73 29 20 3e 20 31 29 20 3f 20 27 61 72 65 27 20 3a 20 equireOverrides).>.1).?.'are'.:.
b37e0 27 69 73 27 3b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 'is';.$warnings[].=.implode(',.'
b3800 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 72 65 71 75 69 72 65 4f 76 65 72 72 69 64 65 73 29 29 ,.array_keys($requireOverrides))
b3820 2e 20 22 20 7b 24 70 6c 75 72 61 6c 7d 20 72 65 71 75 69 72 65 64 20 62 6f 74 68 20 69 6e 20 72 ..".{$plural}.required.both.in.r
b3840 65 71 75 69 72 65 20 61 6e 64 20 72 65 71 75 69 72 65 2d 64 65 76 2c 20 74 68 69 73 20 63 61 6e equire.and.require-dev,.this.can
b3860 20 6c 65 61 64 20 74 6f 20 75 6e 65 78 70 65 63 74 65 64 20 62 65 68 61 76 69 6f 72 22 3b 0a 7d .lead.to.unexpected.behavior";.}
b3880 0a 7d 0a 0a 0a 20 24 72 65 71 75 69 72 65 20 3d 20 69 73 73 65 74 28 24 6d 61 6e 69 66 65 73 74 .}....$require.=.isset($manifest
b38a0 5b 27 72 65 71 75 69 72 65 27 5d 29 20 3f 20 24 6d 61 6e 69 66 65 73 74 5b 27 72 65 71 75 69 72 ['require']).?.$manifest['requir
b38c0 65 27 5d 20 3a 20 61 72 72 61 79 28 29 3b 0a 24 72 65 71 75 69 72 65 44 65 76 20 3d 20 69 73 73 e'].:.array();.$requireDev.=.iss
b38e0 65 74 28 24 6d 61 6e 69 66 65 73 74 5b 27 72 65 71 75 69 72 65 2d 64 65 76 27 5d 29 20 3f 20 24 et($manifest['require-dev']).?.$
b3900 6d 61 6e 69 66 65 73 74 5b 27 72 65 71 75 69 72 65 2d 64 65 76 27 5d 20 3a 20 61 72 72 61 79 28 manifest['require-dev'].:.array(
b3920 29 3b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 71 75 );.$packages.=.array_merge($requ
b3940 69 72 65 2c 20 24 72 65 71 75 69 72 65 44 65 76 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 ire,.$requireDev);.foreach.($pac
b3960 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 76 65 72 73 69 6f 6e 29 20 7b kages.as.$package.=>.$version).{
b3980 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 23 2f 27 2c 20 24 76 65 72 73 69 6f 6e 29 .if.(preg_match('/#/',.$version)
b39a0 20 3d 3d 3d 20 31 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 .===.1).{.$warnings[].=.sprintf(
b39c0 0a 27 54 68 65 20 70 61 63 6b 61 67 65 20 22 25 73 22 20 69 73 20 70 6f 69 6e 74 69 6e 67 20 74 .'The.package."%s".is.pointing.t
b39e0 6f 20 61 20 63 6f 6d 6d 69 74 2d 72 65 66 2c 20 74 68 69 73 20 69 73 20 62 61 64 20 70 72 61 63 o.a.commit-ref,.this.is.bad.prac
b3a00 74 69 63 65 20 61 6e 64 20 63 61 6e 20 63 61 75 73 65 20 75 6e 66 6f 72 65 73 65 65 6e 20 69 73 tice.and.can.cause.unforeseen.is
b3a20 73 75 65 73 2e 27 2c 0a 24 70 61 63 6b 61 67 65 0a 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 sues.',.$package.);.}.}....if.(i
b3a40 73 73 65 74 28 24 6d 61 6e 69 66 65 73 74 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 5b 27 70 73 72 2d sset($manifest['autoload']['psr-
b3a60 30 27 5d 5b 27 27 5d 29 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 22 44 65 66 69 6e 0'][''])).{.$warnings[].=."Defin
b3a80 69 6e 67 20 61 75 74 6f 6c 6f 61 64 2e 70 73 72 2d 30 20 77 69 74 68 20 61 6e 20 65 6d 70 74 79 ing.autoload.psr-0.with.an.empty
b3aa0 20 6e 61 6d 65 73 70 61 63 65 20 70 72 65 66 69 78 20 69 73 20 61 20 62 61 64 20 69 64 65 61 20 .namespace.prefix.is.a.bad.idea.
b3ac0 66 6f 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 22 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 6d for.performance";.}.if.(isset($m
b3ae0 61 6e 69 66 65 73 74 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 5b 27 70 73 72 2d 34 27 5d 5b 27 27 5d anifest['autoload']['psr-4']['']
b3b00 29 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 22 44 65 66 69 6e 69 6e 67 20 61 75 74 )).{.$warnings[].=."Defining.aut
b3b20 6f 6c 6f 61 64 2e 70 73 72 2d 34 20 77 69 74 68 20 61 6e 20 65 6d 70 74 79 20 6e 61 6d 65 73 70 oload.psr-4.with.an.empty.namesp
b3b40 61 63 65 20 70 72 65 66 69 78 20 69 73 20 61 20 62 61 64 20 69 64 65 61 20 66 6f 72 20 70 65 72 ace.prefix.is.a.bad.idea.for.per
b3b60 66 6f 72 6d 61 6e 63 65 22 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 formance";.}..try.{.$loader.=.ne
b3b80 77 20 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 28 6e 65 77 20 41 72 72 61 w.ValidatingArrayLoader(new.Arra
b3ba0 79 4c 6f 61 64 65 72 28 29 2c 20 74 72 75 65 2c 20 6e 75 6c 6c 2c 20 24 61 72 72 61 79 4c 6f 61 yLoader(),.true,.null,.$arrayLoa
b3bc0 64 65 72 56 61 6c 69 64 61 74 69 6f 6e 46 6c 61 67 73 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 derValidationFlags);.if.(!isset(
b3be0 24 6d 61 6e 69 66 65 73 74 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 6d 61 6e 69 66 65 $manifest['version'])).{.$manife
b3c00 73 74 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 27 31 2e 30 2e 30 27 3b 0a 7d 0a 69 66 20 28 21 st['version'].=.'1.0.0';.}.if.(!
b3c20 69 73 73 65 74 28 24 6d 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a 24 6d 61 6e isset($manifest['name'])).{.$man
b3c40 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 20 3d 20 27 64 75 6d 6d 79 2f 64 75 6d 6d 79 27 3b 0a 7d ifest['name'].=.'dummy/dummy';.}
b3c60 0a 24 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 6d 61 6e 69 66 65 73 74 29 3b 0a 7d 20 63 61 74 .$loader->load($manifest);.}.cat
b3c80 63 68 20 28 49 6e 76 61 6c 69 64 50 61 63 6b 61 67 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 ch.(InvalidPackageException.$e).
b3ca0 7b 0a 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 65 72 72 6f 72 73 2c {.$errors.=.array_merge($errors,
b3cc0 20 24 65 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 24 77 61 72 6e 69 6e 67 73 20 .$e->getErrors());.}..$warnings.
b3ce0 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 77 61 72 6e 69 6e 67 73 2c 20 24 6c 6f 61 64 65 72 =.array_merge($warnings,.$loader
b3d00 2d 3e 67 65 74 57 61 72 6e 69 6e 67 73 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 ->getWarnings());..return.array(
b3d20 24 65 72 72 6f 72 73 2c 20 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 2c 20 24 77 61 72 6e 69 6e $errors,.$publishErrors,.$warnin
b3d40 67 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 gs);.}.}.<?php............namesp
b3d60 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 ace.Composer\Util;..use.Composer
b3d80 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 72 72 \IO\IOInterface;.......class.Err
b3da0 6f 72 48 61 6e 64 6c 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 69 6f 3b 0a orHandler.{.private.static.$io;.
b3dc0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 ............public.static.functi
b3de0 6f 6e 20 68 61 6e 64 6c 65 28 24 6c 65 76 65 6c 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 66 69 6c on.handle($level,.$message,.$fil
b3e00 65 2c 20 24 6c 69 6e 65 29 0a 7b 0a 0a 20 69 66 20 28 21 28 65 72 72 6f 72 5f 72 65 70 6f 72 74 e,.$line).{...if.(!(error_report
b3e20 69 6e 67 28 29 20 26 20 24 6c 65 76 65 6c 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 ing().&.$level)).{.return;.}..if
b3e40 20 28 69 6e 69 5f 67 65 74 28 27 78 64 65 62 75 67 2e 73 63 72 65 61 6d 27 29 29 20 7b 0a 24 6d .(ini_get('xdebug.scream')).{.$m
b3e60 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e 57 61 72 6e 69 6e 67 3a 20 59 6f 75 20 68 61 76 65 essage..=."\n\nWarning:.You.have
b3e80 20 78 64 65 62 75 67 2e 73 63 72 65 61 6d 20 65 6e 61 62 6c 65 64 2c 20 74 68 65 20 77 61 72 6e .xdebug.scream.enabled,.the.warn
b3ea0 69 6e 67 20 61 62 6f 76 65 20 6d 61 79 20 62 65 22 2e 0a 22 5c 6e 61 20 6c 65 67 69 74 69 6d 61 ing.above.may.be".."\na.legitima
b3ec0 74 65 6c 79 20 73 75 70 70 72 65 73 73 65 64 20 65 72 72 6f 72 20 74 68 61 74 20 79 6f 75 20 77 tely.suppressed.error.that.you.w
b3ee0 65 72 65 20 6e 6f 74 20 73 75 70 70 6f 73 65 64 20 74 6f 20 73 65 65 2e 22 3b 0a 7d 0a 0a 69 66 ere.not.supposed.to.see.";.}..if
b3f00 20 28 24 6c 65 76 65 6c 20 21 3d 3d 20 45 5f 44 45 50 52 45 43 41 54 45 44 20 26 26 20 24 6c 65 .($level.!==.E_DEPRECATED.&&.$le
b3f20 76 65 6c 20 21 3d 3d 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 20 7b 0a 74 68 72 vel.!==.E_USER_DEPRECATED).{.thr
b3f40 6f 77 20 6e 65 77 20 5c 45 72 72 6f 72 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2c ow.new.\ErrorException($message,
b3f60 20 30 2c 20 24 6c 65 76 65 6c 2c 20 24 66 69 6c 65 2c 20 24 6c 69 6e 65 29 3b 0a 7d 0a 0a 69 66 .0,.$level,.$file,.$line);.}..if
b3f80 20 28 73 65 6c 66 3a 3a 24 69 6f 29 20 7b 0a 73 65 6c 66 3a 3a 24 69 6f 2d 3e 77 72 69 74 65 45 .(self::$io).{.self::$io->writeE
b3fa0 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 44 65 70 72 65 63 61 74 69 6f 6e 20 4e 6f 74 69 63 rror('<warning>Deprecation.Notic
b3fc0 65 3a 20 27 2e 24 6d 65 73 73 61 67 65 2e 27 20 69 6e 20 27 2e 24 66 69 6c 65 2e 27 3a 27 2e 24 e:.'.$message.'.in.'.$file.':'.$
b3fe0 6c 69 6e 65 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 69 66 20 28 73 65 6c 66 3a 3a 24 69 line.'</warning>');.if.(self::$i
b4000 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 73 65 6c 66 3a 3a 24 69 6f 2d 3e 77 72 69 o->isVerbose()).{.self::$io->wri
b4020 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 53 74 61 63 6b 20 74 72 61 63 65 3a 3c 2f teError('<warning>Stack.trace:</
b4040 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 73 65 6c 66 3a 3a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f warning>');.self::$io->writeErro
b4060 72 28 61 72 72 61 79 5f 66 69 6c 74 65 72 28 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f r(array_filter(array_map(functio
b4080 6e 20 28 24 61 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 61 5b 27 6c 69 6e 65 27 5d 2c 20 24 n.($a).{.if.(isset($a['line'],.$
b40a0 61 5b 27 66 69 6c 65 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 3c 77 61 72 6e 69 6e 67 3e 20 a['file'])).{.return.'<warning>.
b40c0 27 2e 24 61 5b 27 66 69 6c 65 27 5d 2e 27 3a 27 2e 24 61 5b 27 6c 69 6e 65 27 5d 2e 27 3c 2f 77 '.$a['file'].':'.$a['line'].'</w
b40e0 61 72 6e 69 6e 67 3e 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 2c 20 61 72 72 arning>';.}..return.null;.},.arr
b4100 61 79 5f 73 6c 69 63 65 28 64 65 62 75 67 5f 62 61 63 6b 74 72 61 63 65 28 29 2c 20 32 29 29 29 ay_slice(debug_backtrace(),.2)))
b4120 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e );.}.}.}.......public.static.fun
b4140 63 74 69 6f 6e 20 72 65 67 69 73 74 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d ction.register(IOInterface.$io.=
b4160 20 6e 75 6c 6c 29 0a 7b 0a 73 65 74 5f 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 61 72 72 61 79 .null).{.set_error_handler(array
b4180 28 5f 5f 43 4c 41 53 53 5f 5f 2c 20 27 68 61 6e 64 6c 65 27 29 29 3b 0a 65 72 72 6f 72 5f 72 65 (__CLASS__,.'handle'));.error_re
b41a0 70 6f 72 74 69 6e 67 28 45 5f 41 4c 4c 20 7c 20 45 5f 53 54 52 49 43 54 29 3b 0a 73 65 6c 66 3a porting(E_ALL.|.E_STRICT);.self:
b41c0 3a 24 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a :$io.=.$io;.}.}.<?php...........
b41e0 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 52 .namespace.Composer\Util;..use.R
b4200 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 52 ecursiveDirectoryIterator;.use.R
b4220 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 ecursiveIteratorIterator;.use.Sy
b4240 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6c 65 73 79 73 74 65 6d 5c 45 78 63 65 70 mfony\Component\Filesystem\Excep
b4260 74 69 6f 6e 5c 49 4f 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f tion\IOException;.use.Symfony\Co
b4280 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 mponent\Finder\Finder;......clas
b42a0 73 20 46 69 6c 65 73 79 73 74 65 6d 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 45 s.Filesystem.{.private.$processE
b42c0 78 65 63 75 74 6f 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 xecutor;..public.function.__cons
b42e0 74 72 75 63 74 28 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 65 78 65 63 75 74 6f 72 20 truct(ProcessExecutor.$executor.
b4300 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 =.null).{.$this->processExecutor
b4320 20 3d 20 24 65 78 65 63 75 74 6f 72 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 .=.$executor.?:.new.ProcessExecu
b4340 74 6f 72 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 tor();.}..public.function.remove
b4360 28 24 66 69 6c 65 29 0a 7b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 66 69 6c 65 29 29 20 7b 0a 72 ($file).{.if.(is_dir($file)).{.r
b4380 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 66 69 eturn.$this->removeDirectory($fi
b43a0 6c 65 29 3b 0a 7d 0a 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 29 20 le);.}..if.(file_exists($file)).
b43c0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 29 3b 0a 7d {.return.$this->unlink($file);.}
b43e0 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ..return.false;.}........public.
b4400 66 75 6e 63 74 69 6f 6e 20 69 73 44 69 72 45 6d 70 74 79 28 24 64 69 72 29 0a 7b 0a 24 66 69 6e function.isDirEmpty($dir).{.$fin
b4420 64 65 72 20 3d 20 46 69 6e 64 65 72 3a 3a 63 72 65 61 74 65 28 29 0a 2d 3e 69 67 6e 6f 72 65 56 der.=.Finder::create().->ignoreV
b4440 43 53 28 66 61 6c 73 65 29 0a 2d 3e 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 28 66 61 6c 73 65 CS(false).->ignoreDotFiles(false
b4460 29 0a 2d 3e 64 65 70 74 68 28 30 29 0a 2d 3e 69 6e 28 24 64 69 72 29 3b 0a 0a 72 65 74 75 72 6e ).->depth(0).->in($dir);..return
b4480 20 63 6f 75 6e 74 28 24 66 69 6e 64 65 72 29 20 3d 3d 3d 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 63 .count($finder).===.0;.}..public
b44a0 20 66 75 6e 63 74 69 6f 6e 20 65 6d 70 74 79 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 2c 20 24 .function.emptyDirectory($dir,.$
b44c0 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 20 3d 20 74 72 75 65 29 0a 7b 0a ensureDirectoryExists.=.true).{.
b44e0 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 29 20 26 26 20 69 73 5f 6c 69 6e 6b if.(file_exists($dir).&&.is_link
b4500 28 24 64 69 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 75 6e 6c 69 6e 6b 28 24 64 69 72 29 3b 0a 7d ($dir)).{.$this->unlink($dir);.}
b4520 0a 0a 69 66 20 28 24 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 29 20 7b 0a ..if.($ensureDirectoryExists).{.
b4540 24 74 68 69 73 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 64 69 $this->ensureDirectoryExists($di
b4560 72 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b 0a 24 66 69 6e 64 r);.}..if.(is_dir($dir)).{.$find
b4580 65 72 20 3d 20 46 69 6e 64 65 72 3a 3a 63 72 65 61 74 65 28 29 0a 2d 3e 69 67 6e 6f 72 65 56 43 er.=.Finder::create().->ignoreVC
b45a0 53 28 66 61 6c 73 65 29 0a 2d 3e 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 28 66 61 6c 73 65 29 S(false).->ignoreDotFiles(false)
b45c0 0a 2d 3e 64 65 70 74 68 28 30 29 0a 2d 3e 69 6e 28 24 64 69 72 29 3b 0a 0a 66 6f 72 65 61 63 68 .->depth(0).->in($dir);..foreach
b45e0 20 28 24 66 69 6e 64 65 72 20 61 73 20 24 70 61 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6d .($finder.as.$path).{.$this->rem
b4600 6f 76 65 28 28 73 74 72 69 6e 67 29 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a ove((string).$path);.}.}.}......
b4620 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 44 69 72 65 ......public.function.removeDire
b4640 63 74 6f 72 79 28 24 64 69 72 65 63 74 6f 72 79 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 ctory($directory).{.if.($this->i
b4660 73 53 79 6d 6c 69 6e 6b 65 64 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 65 63 74 6f 72 79 29 29 sSymlinkedDirectory($directory))
b4680 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 6e 6c 69 6e 6b 53 79 6d 6c 69 6e 6b 65 64 .{.return.$this->unlinkSymlinked
b46a0 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 Directory($directory);.}..if.($t
b46c0 68 69 73 2d 3e 69 73 4a 75 6e 63 74 69 6f 6e 28 24 64 69 72 65 63 74 6f 72 79 29 29 20 7b 0a 72 his->isJunction($directory)).{.r
b46e0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 4a 75 6e 63 74 69 6f 6e 28 24 64 69 72 eturn.$this->removeJunction($dir
b4700 65 63 74 6f 72 79 29 3b 0a 7d 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 ectory);.}..if.(!file_exists($di
b4720 72 65 63 74 6f 72 79 29 20 7c 7c 20 21 69 73 5f 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 29 29 rectory).||.!is_dir($directory))
b4740 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 .{.return.true;.}..if.(preg_matc
b4760 68 28 27 7b 5e 28 3f 3a 5b 61 2d 7a 5d 3a 29 3f 5b 2f 5c 5c 5c 5c 5d 2b 24 7d 69 27 2c 20 24 64 h('{^(?:[a-z]:)?[/\\\\]+$}i',.$d
b4780 69 72 65 63 74 6f 72 79 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 irectory)).{.throw.new.\RuntimeE
b47a0 78 63 65 70 74 69 6f 6e 28 27 41 62 6f 72 74 69 6e 67 20 61 6e 20 61 74 74 65 6d 70 74 65 64 20 xception('Aborting.an.attempted.
b47c0 64 65 6c 65 74 69 6f 6e 20 6f 66 20 27 2e 24 64 69 72 65 63 74 6f 72 79 2e 27 2c 20 74 68 69 73 deletion.of.'.$directory.',.this
b47e0 20 77 61 73 20 70 72 6f 62 61 62 6c 79 20 6e 6f 74 20 69 6e 74 65 6e 64 65 64 2c 20 69 66 20 69 .was.probably.not.intended,.if.i
b4800 74 20 69 73 20 61 20 72 65 61 6c 20 75 73 65 20 63 61 73 65 20 70 6c 65 61 73 65 20 72 65 70 6f t.is.a.real.use.case.please.repo
b4820 72 74 20 69 74 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 rt.it.');.}..if.(!function_exist
b4840 73 28 27 70 72 6f 63 5f 6f 70 65 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e s('proc_open')).{.return.$this->
b4860 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 50 68 70 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a removeDirectoryPhp($directory);.
b4880 7d 0a 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a }..if.(Platform::isWindows()).{.
b48a0 24 63 6d 64 20 3d 20 73 70 72 69 6e 74 66 28 27 72 6d 64 69 72 20 2f 53 20 2f 51 20 25 73 27 2c $cmd.=.sprintf('rmdir./S./Q.%s',
b48c0 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 72 65 61 6c 70 61 74 .ProcessExecutor::escape(realpat
b48e0 68 28 24 64 69 72 65 63 74 6f 72 79 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6d 64 20 3d h($directory)));.}.else.{.$cmd.=
b4900 20 73 70 72 69 6e 74 66 28 27 72 6d 20 2d 72 66 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 78 65 .sprintf('rm.-rf.%s',.ProcessExe
b4920 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 64 69 72 65 63 74 6f 72 79 29 29 3b 0a 7d 0a 0a 24 cutor::escape($directory));.}..$
b4940 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 63 65 73 73 28 29 2d 3e 65 78 result.=.$this->getProcess()->ex
b4960 65 63 75 74 65 28 24 63 6d 64 2c 20 24 6f 75 74 70 75 74 29 20 3d 3d 3d 20 30 3b 0a 0a 0a 20 63 ecute($cmd,.$output).===.0;....c
b4980 6c 65 61 72 73 74 61 74 63 61 63 68 65 28 29 3b 0a 0a 69 66 20 28 24 72 65 73 75 6c 74 20 26 26 learstatcache();..if.($result.&&
b49a0 20 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 65 63 74 6f 72 79 29 29 20 7b 0a 72 65 74 .!file_exists($directory)).{.ret
b49c0 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6d 6f 76 urn.true;.}..return.$this->remov
b49e0 65 44 69 72 65 63 74 6f 72 79 50 68 70 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 7d 0a 0a 0a 0a eDirectoryPhp($directory);.}....
b4a00 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 44 69 ........public.function.removeDi
b4a20 72 65 63 74 6f 72 79 50 68 70 28 24 64 69 72 65 63 74 6f 72 79 29 0a 7b 0a 74 72 79 20 7b 0a 24 rectoryPhp($directory).{.try.{.$
b4a40 69 74 20 3d 20 6e 65 77 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 it.=.new.RecursiveDirectoryItera
b4a60 74 6f 72 28 24 64 69 72 65 63 74 6f 72 79 2c 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f tor($directory,.RecursiveDirecto
b4a80 72 79 49 74 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f 54 53 29 3b 0a 7d 20 63 61 74 63 68 20 ryIterator::SKIP_DOTS);.}.catch.
b4aa0 28 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b (\UnexpectedValueException.$e).{
b4ac0 0a 0a 20 0a 20 63 6c 65 61 72 73 74 61 74 63 61 63 68 65 28 29 3b 0a 75 73 6c 65 65 70 28 31 30 .....clearstatcache();.usleep(10
b4ae0 30 30 30 30 29 3b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 29 29 20 0000);.if.(!is_dir($directory)).
b4b00 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 24 69 74 20 3d 20 6e 65 77 20 52 65 63 75 72 {.return.true;.}.$it.=.new.Recur
b4b20 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 28 24 64 69 72 65 63 74 6f 72 79 siveDirectoryIterator($directory
b4b40 2c 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 53 4b ,.RecursiveDirectoryIterator::SK
b4b60 49 50 5f 44 4f 54 53 29 3b 0a 7d 0a 24 72 69 20 3d 20 6e 65 77 20 52 65 63 75 72 73 69 76 65 49 IP_DOTS);.}.$ri.=.new.RecursiveI
b4b80 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 24 69 74 2c 20 52 65 63 75 72 73 69 76 65 49 74 teratorIterator($it,.RecursiveIt
b4ba0 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 3a 3a 43 48 49 4c 44 5f 46 49 52 53 54 29 3b 0a 0a 66 eratorIterator::CHILD_FIRST);..f
b4bc0 6f 72 65 61 63 68 20 28 24 72 69 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 24 66 69 6c oreach.($ri.as.$file).{.if.($fil
b4be0 65 2d 3e 69 73 44 69 72 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6d 64 69 72 28 24 66 69 6c 65 e->isDir()).{.$this->rmdir($file
b4c00 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 ->getPathname());.}.else.{.$this
b4c20 2d 3e 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 29 3b 0a ->unlink($file->getPathname());.
b4c40 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6d 64 69 72 28 24 64 69 72 65 63 74 }.}..return.$this->rmdir($direct
b4c60 6f 72 79 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 6e 73 75 72 65 44 ory);.}..public.function.ensureD
b4c80 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 64 69 72 65 63 74 6f 72 79 29 0a 7b 0a 69 66 20 irectoryExists($directory).{.if.
b4ca0 28 21 69 73 5f 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 29 29 20 7b 0a 69 66 20 28 66 69 6c 65 (!is_dir($directory)).{.if.(file
b4cc0 5f 65 78 69 73 74 73 28 24 64 69 72 65 63 74 6f 72 79 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 _exists($directory)).{.throw.new
b4ce0 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 24 64 69 72 65 63 74 6f 72 79 2e 27 .\RuntimeException(.$directory.'
b4d00 20 65 78 69 73 74 73 20 61 6e 64 20 69 73 20 6e 6f 74 20 61 20 64 69 72 65 63 74 6f 72 79 2e 27 .exists.and.is.not.a.directory.'
b4d20 0a 29 3b 0a 7d 0a 69 66 20 28 21 40 6d 6b 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 2c 20 30 37 .);.}.if.(!@mkdir($directory,.07
b4d40 37 37 2c 20 74 72 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 77,.true)).{.throw.new.\RuntimeE
b4d60 78 63 65 70 74 69 6f 6e 28 0a 24 64 69 72 65 63 74 6f 72 79 2e 27 20 64 6f 65 73 20 6e 6f 74 20 xception(.$directory.'.does.not.
b4d80 65 78 69 73 74 20 61 6e 64 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 72 65 61 74 65 64 2e 27 exist.and.could.not.be.created.'
b4da0 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .);.}.}.}.........public.functio
b4dc0 6e 20 75 6e 6c 69 6e 6b 28 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 40 24 74 68 69 73 2d 3e 75 n.unlink($path).{.if.(!@$this->u
b4de0 6e 6c 69 6e 6b 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 28 24 70 61 74 68 29 29 20 7b 0a 0a 20 nlinkImplementation($path)).{...
b4e00 69 66 20 28 21 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 20 7c 7c 20 28 75 if.(!Platform::isWindows().||.(u
b4e20 73 6c 65 65 70 28 33 35 30 30 30 30 29 20 26 26 20 21 40 24 74 68 69 73 2d 3e 75 6e 6c 69 6e 6b sleep(350000).&&.!@$this->unlink
b4e40 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 28 24 70 61 74 68 29 29 29 20 7b 0a 24 65 72 72 6f 72 Implementation($path))).{.$error
b4e60 20 3d 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 74 28 29 3b 0a 24 6d 65 73 73 61 67 65 20 3d 20 .=.error_get_last();.$message.=.
b4e80 27 43 6f 75 6c 64 20 6e 6f 74 20 64 65 6c 65 74 65 20 27 2e 24 70 61 74 68 2e 27 3a 20 27 20 2e 'Could.not.delete.'.$path.':.'..
b4ea0 20 40 24 65 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 3b 0a 69 66 20 28 50 6c 61 74 66 6f 72 .@$error['message'];.if.(Platfor
b4ec0 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c m::isWindows()).{.$message..=."\
b4ee0 6e 54 68 69 73 20 63 61 6e 20 62 65 20 64 75 65 20 74 6f 20 61 6e 20 61 6e 74 69 76 69 72 75 73 nThis.can.be.due.to.an.antivirus
b4f00 20 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 20 53 65 61 72 63 68 20 49 6e 64 65 78 65 72 20 6c .or.the.Windows.Search.Indexer.l
b4f20 6f 63 6b 69 6e 67 20 74 68 65 20 66 69 6c 65 20 77 68 69 6c 65 20 74 68 65 79 20 61 72 65 20 61 ocking.the.file.while.they.are.a
b4f40 6e 61 6c 79 7a 65 64 22 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 nalyzed";.}..throw.new.\RuntimeE
b4f60 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 xception($message);.}.}..return.
b4f80 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 true;.}.........public.function.
b4fa0 72 6d 64 69 72 28 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 40 72 6d 64 69 72 28 24 70 61 74 68 rmdir($path).{.if.(!@rmdir($path
b4fc0 29 29 20 7b 0a 0a 20 69 66 20 28 21 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 )).{...if.(!Platform::isWindows(
b4fe0 29 20 7c 7c 20 28 75 73 6c 65 65 70 28 33 35 30 30 30 30 29 20 26 26 20 21 40 72 6d 64 69 72 28 ).||.(usleep(350000).&&.!@rmdir(
b5000 24 70 61 74 68 29 29 29 20 7b 0a 24 65 72 72 6f 72 20 3d 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 $path))).{.$error.=.error_get_la
b5020 73 74 28 29 3b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 43 6f 75 6c 64 20 6e 6f 74 20 64 65 6c 65 st();.$message.=.'Could.not.dele
b5040 74 65 20 27 2e 24 70 61 74 68 2e 27 3a 20 27 20 2e 20 40 24 65 72 72 6f 72 5b 27 6d 65 73 73 61 te.'.$path.':.'...@$error['messa
b5060 67 65 27 5d 3b 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 ge'];.if.(Platform::isWindows())
b5080 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 54 68 69 73 20 63 61 6e 20 62 65 20 64 75 .{.$message..=."\nThis.can.be.du
b50a0 65 20 74 6f 20 61 6e 20 61 6e 74 69 76 69 72 75 73 20 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 e.to.an.antivirus.or.the.Windows
b50c0 20 53 65 61 72 63 68 20 49 6e 64 65 78 65 72 20 6c 6f 63 6b 69 6e 67 20 74 68 65 20 66 69 6c 65 .Search.Indexer.locking.the.file
b50e0 20 77 68 69 6c 65 20 74 68 65 79 20 61 72 65 20 61 6e 61 6c 79 7a 65 64 22 3b 0a 7d 0a 0a 74 68 .while.they.are.analyzed";.}..th
b5100 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 row.new.\RuntimeException($messa
b5120 67 65 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ge);.}.}..return.true;.}........
b5140 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 54 68 65 6e 52 65 6d 6f 76 ...public.function.copyThenRemov
b5160 65 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 29 0a 7b 0a 69 66 20 28 21 69 73 5f 64 69 e($source,.$target).{.if.(!is_di
b5180 72 28 24 73 6f 75 72 63 65 29 29 20 7b 0a 63 6f 70 79 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 r($source)).{.copy($source,.$tar
b51a0 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 75 6e 6c 69 6e 6b 28 24 73 6f 75 72 63 65 29 3b 0a 0a 72 get);.$this->unlink($source);..r
b51c0 65 74 75 72 6e 3b 0a 7d 0a 0a 24 69 74 20 3d 20 6e 65 77 20 52 65 63 75 72 73 69 76 65 44 69 72 eturn;.}..$it.=.new.RecursiveDir
b51e0 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 28 24 73 6f 75 72 63 65 2c 20 52 65 63 75 72 73 69 76 ectoryIterator($source,.Recursiv
b5200 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f 54 53 29 3b 0a eDirectoryIterator::SKIP_DOTS);.
b5220 24 72 69 20 3d 20 6e 65 77 20 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 $ri.=.new.RecursiveIteratorItera
b5240 74 6f 72 28 24 69 74 2c 20 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 tor($it,.RecursiveIteratorIterat
b5260 6f 72 3a 3a 53 45 4c 46 5f 46 49 52 53 54 29 3b 0a 24 74 68 69 73 2d 3e 65 6e 73 75 72 65 44 69 or::SELF_FIRST);.$this->ensureDi
b5280 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 61 72 67 65 74 29 3b 0a 0a 66 6f 72 65 61 63 68 rectoryExists($target);..foreach
b52a0 20 28 24 72 69 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 74 61 72 67 65 74 50 61 74 68 20 3d 20 .($ri.as.$file).{.$targetPath.=.
b52c0 24 74 61 72 67 65 74 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 $target...DIRECTORY_SEPARATOR...
b52e0 24 72 69 2d 3e 67 65 74 53 75 62 50 61 74 68 4e 61 6d 65 28 29 3b 0a 69 66 20 28 24 66 69 6c 65 $ri->getSubPathName();.if.($file
b5300 2d 3e 69 73 44 69 72 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 ->isDir()).{.$this->ensureDirect
b5320 6f 72 79 45 78 69 73 74 73 28 24 74 61 72 67 65 74 50 61 74 68 29 3b 0a 7d 20 65 6c 73 65 20 7b oryExists($targetPath);.}.else.{
b5340 0a 63 6f 70 79 28 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 2c 20 24 74 61 72 .copy($file->getPathname(),.$tar
b5360 67 65 74 50 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 44 69 72 65 getPath);.}.}..$this->removeDire
b5380 63 74 6f 72 79 50 68 70 28 24 73 6f 75 72 63 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e ctoryPhp($source);.}..public.fun
b53a0 63 74 69 6f 6e 20 72 65 6e 61 6d 65 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 29 0a 7b ction.rename($source,.$target).{
b53c0 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 40 72 65 6e 61 6d 65 28 24 73 6f 75 72 63 65 2c 20 24 .if.(true.===.@rename($source,.$
b53e0 74 61 72 67 65 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 66 75 6e 63 74 target)).{.return;.}..if.(!funct
b5400 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 72 6f 63 5f 6f 70 65 6e 27 29 29 20 7b 0a 72 65 74 75 72 ion_exists('proc_open')).{.retur
b5420 6e 20 24 74 68 69 73 2d 3e 63 6f 70 79 54 68 65 6e 52 65 6d 6f 76 65 28 24 73 6f 75 72 63 65 2c n.$this->copyThenRemove($source,
b5440 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 .$target);.}..if.(Platform::isWi
b5460 6e 64 6f 77 73 28 29 29 20 7b 0a 0a 20 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 ndows()).{...$command.=.sprintf(
b5480 27 78 63 6f 70 79 20 25 73 20 25 73 20 2f 45 20 2f 49 20 2f 51 20 2f 59 27 2c 20 50 72 6f 63 65 'xcopy.%s.%s./E./I./Q./Y',.Proce
b54a0 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 73 6f 75 72 63 65 29 2c 20 50 72 6f ssExecutor::escape($source),.Pro
b54c0 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 74 61 72 67 65 74 29 29 3b 0a cessExecutor::escape($target));.
b54e0 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 $result.=.$this->processExecutor
b5500 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 29 3b 0a 0a 0a ->execute($command,.$output);...
b5520 20 63 6c 65 61 72 73 74 61 74 63 61 63 68 65 28 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 72 .clearstatcache();..if.(0.===.$r
b5540 65 73 75 6c 74 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 28 24 73 6f 75 72 63 65 29 3b esult).{.$this->remove($source);
b5560 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 0a 20 24 63 6f 6d 6d 61 6e ..return;.}.}.else.{.....$comman
b5580 64 20 3d 20 73 70 72 69 6e 74 66 28 27 6d 76 20 25 73 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 d.=.sprintf('mv.%s.%s',.ProcessE
b55a0 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 73 6f 75 72 63 65 29 2c 20 50 72 6f 63 65 73 xecutor::escape($source),.Proces
b55c0 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 74 61 72 67 65 74 29 29 3b 0a 24 72 65 sExecutor::escape($target));.$re
b55e0 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 2d 3e 65 sult.=.$this->processExecutor->e
b5600 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 29 3b 0a 0a 0a 20 63 6c xecute($command,.$output);....cl
b5620 65 61 72 73 74 61 74 63 61 63 68 65 28 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 72 65 73 75 earstatcache();..if.(0.===.$resu
b5640 6c 74 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d lt).{.return;.}.}..return.$this-
b5660 3e 63 6f 70 79 54 68 65 6e 52 65 6d 6f 76 65 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 >copyThenRemove($source,.$target
b5680 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 );.}...........public.function.f
b56a0 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 64 69 72 indShortestPath($from,.$to,.$dir
b56c0 65 63 74 6f 72 69 65 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e ectories.=.false).{.if.(!$this->
b56e0 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 66 72 6f 6d 29 20 7c 7c 20 21 24 74 68 69 73 2d isAbsolutePath($from).||.!$this-
b5700 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 74 6f 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 >isAbsolutePath($to)).{.throw.ne
b5720 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 w.\InvalidArgumentException(spri
b5740 6e 74 66 28 27 24 66 72 6f 6d 20 28 25 73 29 20 61 6e 64 20 24 74 6f 20 28 25 73 29 20 6d 75 73 ntf('$from.(%s).and.$to.(%s).mus
b5760 74 20 62 65 20 61 62 73 6f 6c 75 74 65 20 70 61 74 68 73 2e 27 2c 20 24 66 72 6f 6d 2c 20 24 74 t.be.absolute.paths.',.$from,.$t
b5780 6f 29 29 3b 0a 7d 0a 0a 24 66 72 6f 6d 20 3d 20 6c 63 66 69 72 73 74 28 24 74 68 69 73 2d 3e 6e o));.}..$from.=.lcfirst($this->n
b57a0 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 66 72 6f 6d 29 29 3b 0a 24 74 6f 20 3d 20 6c 63 66 69 ormalizePath($from));.$to.=.lcfi
b57c0 72 73 74 28 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 74 6f 29 29 3b 0a rst($this->normalizePath($to));.
b57e0 0a 69 66 20 28 24 64 69 72 65 63 74 6f 72 69 65 73 29 20 7b 0a 24 66 72 6f 6d 20 3d 20 72 74 72 .if.($directories).{.$from.=.rtr
b5800 69 6d 28 24 66 72 6f 6d 2c 20 27 2f 27 29 20 2e 20 27 2f 64 75 6d 6d 79 5f 66 69 6c 65 27 3b 0a im($from,.'/')...'/dummy_file';.
b5820 7d 0a 0a 69 66 20 28 64 69 72 6e 61 6d 65 28 24 66 72 6f 6d 29 20 3d 3d 3d 20 64 69 72 6e 61 6d }..if.(dirname($from).===.dirnam
b5840 65 28 24 74 6f 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 2e 2f 27 2e 62 61 73 65 6e 61 6d 65 28 24 e($to)).{.return.'./'.basename($
b5860 74 6f 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 3d 20 24 74 6f 3b 0a 77 68 69 6c 65 to);.}..$commonPath.=.$to;.while
b5880 20 28 73 74 72 70 6f 73 28 24 66 72 6f 6d 2e 27 2f 27 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 2e .(strpos($from.'/',.$commonPath.
b58a0 27 2f 27 29 20 21 3d 3d 20 30 20 26 26 20 27 2f 27 20 21 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 '/').!==.0.&&.'/'.!==.$commonPat
b58c0 68 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 7a 5d 3a 2f 3f 24 7d 69 27 h.&&.!preg_match('{^[a-z]:/?$}i'
b58e0 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 29 20 7b 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 3d 20 ,.$commonPath)).{.$commonPath.=.
b5900 73 74 72 74 72 28 64 69 72 6e 61 6d 65 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 2c 20 27 5c 5c 27 strtr(dirname($commonPath),.'\\'
b5920 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 66 72 6f ,.'/');.}..if.(0.!==.strpos($fro
b5940 6d 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 7c 7c 20 27 2f 27 20 3d 3d 3d 20 24 63 6f 6d 6d m,.$commonPath).||.'/'.===.$comm
b5960 6f 6e 50 61 74 68 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 6f 3b 0a 7d 0a 0a 24 63 6f 6d 6d 6f 6e onPath).{.return.$to;.}..$common
b5980 50 61 74 68 20 3d 20 72 74 72 69 6d 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 2c 20 27 2f 27 29 20 2e Path.=.rtrim($commonPath,.'/')..
b59a0 20 27 2f 27 3b 0a 24 73 6f 75 72 63 65 50 61 74 68 44 65 70 74 68 20 3d 20 73 75 62 73 74 72 5f .'/';.$sourcePathDepth.=.substr_
b59c0 63 6f 75 6e 74 28 73 75 62 73 74 72 28 24 66 72 6f 6d 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d count(substr($from,.strlen($comm
b59e0 6f 6e 50 61 74 68 29 29 2c 20 27 2f 27 29 3b 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 43 6f 64 65 20 onPath)),.'/');.$commonPathCode.
b5a00 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 2e 2e 2f 27 2c 20 24 73 6f 75 72 63 65 50 61 74 68 44 =.str_repeat('../',.$sourcePathD
b5a20 65 70 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 43 6f 64 65 20 epth);..return.($commonPathCode.
b5a40 2e 20 73 75 62 73 74 72 28 24 74 6f 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 ..substr($to,.strlen($commonPath
b5a60 29 29 29 20 3f 3a 20 27 2e 2f 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ))).?:.'./';.}...........public.
b5a80 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 43 6f 64 65 28 24 66 function.findShortestPathCode($f
b5aa0 72 6f 6d 2c 20 24 74 6f 2c 20 24 64 69 72 65 63 74 6f 72 69 65 73 20 3d 20 66 61 6c 73 65 29 0a rom,.$to,.$directories.=.false).
b5ac0 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 66 72 {.if.(!$this->isAbsolutePath($fr
b5ae0 6f 6d 29 20 7c 7c 20 21 24 74 68 69 73 2d 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 74 om).||.!$this->isAbsolutePath($t
b5b00 6f 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 o)).{.throw.new.\InvalidArgument
b5b20 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 24 66 72 6f 6d 20 28 25 73 29 20 61 6e Exception(sprintf('$from.(%s).an
b5b40 64 20 24 74 6f 20 28 25 73 29 20 6d 75 73 74 20 62 65 20 61 62 73 6f 6c 75 74 65 20 70 61 74 68 d.$to.(%s).must.be.absolute.path
b5b60 73 2e 27 2c 20 24 66 72 6f 6d 2c 20 24 74 6f 29 29 3b 0a 7d 0a 0a 24 66 72 6f 6d 20 3d 20 6c 63 s.',.$from,.$to));.}..$from.=.lc
b5b80 66 69 72 73 74 28 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 66 72 6f 6d first($this->normalizePath($from
b5ba0 29 29 3b 0a 24 74 6f 20 3d 20 6c 63 66 69 72 73 74 28 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 ));.$to.=.lcfirst($this->normali
b5bc0 7a 65 50 61 74 68 28 24 74 6f 29 29 3b 0a 0a 69 66 20 28 24 66 72 6f 6d 20 3d 3d 3d 20 24 74 6f zePath($to));..if.($from.===.$to
b5be0 29 20 7b 0a 72 65 74 75 72 6e 20 24 64 69 72 65 63 74 6f 72 69 65 73 20 3f 20 27 5f 5f 44 49 52 ).{.return.$directories.?.'__DIR
b5c00 5f 5f 27 20 3a 20 27 5f 5f 46 49 4c 45 5f 5f 27 3b 0a 7d 0a 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 __'.:.'__FILE__';.}..$commonPath
b5c20 20 3d 20 24 74 6f 3b 0a 77 68 69 6c 65 20 28 73 74 72 70 6f 73 28 24 66 72 6f 6d 2e 27 2f 27 2c .=.$to;.while.(strpos($from.'/',
b5c40 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 2e 27 2f 27 29 20 21 3d 3d 20 30 20 26 26 20 27 2f 27 20 21 .$commonPath.'/').!==.0.&&.'/'.!
b5c60 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b ==.$commonPath.&&.!preg_match('{
b5c80 5e 5b 61 2d 7a 5d 3a 2f 3f 24 7d 69 27 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 26 26 20 27 ^[a-z]:/?$}i',.$commonPath).&&.'
b5ca0 2e 27 20 21 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 7b 0a 24 63 6f 6d 6d 6f 6e 50 61 74 .'.!==.$commonPath).{.$commonPat
b5cc0 68 20 3d 20 73 74 72 74 72 28 64 69 72 6e 61 6d 65 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 2c 20 h.=.strtr(dirname($commonPath),.
b5ce0 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 21 3d 3d 20 73 74 72 70 6f 73 28 '\\',.'/');.}..if.(0.!==.strpos(
b5d00 24 66 72 6f 6d 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 7c 7c 20 27 2f 27 20 3d 3d 3d 20 24 $from,.$commonPath).||.'/'.===.$
b5d20 63 6f 6d 6d 6f 6e 50 61 74 68 20 7c 7c 20 27 2e 27 20 3d 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 commonPath.||.'.'.===.$commonPat
b5d40 68 29 20 7b 0a 72 65 74 75 72 6e 20 76 61 72 5f 65 78 70 6f 72 74 28 24 74 6f 2c 20 74 72 75 65 h).{.return.var_export($to,.true
b5d60 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 3d 20 72 74 72 69 6d 28 24 63 6f 6d 6d 6f );.}..$commonPath.=.rtrim($commo
b5d80 6e 50 61 74 68 2c 20 27 2f 27 29 20 2e 20 27 2f 27 3b 0a 69 66 20 28 73 74 72 70 6f 73 28 24 74 nPath,.'/')...'/';.if.(strpos($t
b5da0 6f 2c 20 24 66 72 6f 6d 2e 27 2f 27 29 20 3d 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 27 5f o,.$from.'/').===.0).{.return.'_
b5dc0 5f 44 49 52 5f 5f 20 2e 20 27 2e 76 61 72 5f 65 78 70 6f 72 74 28 73 75 62 73 74 72 28 24 74 6f _DIR__...'.var_export(substr($to
b5de0 2c 20 73 74 72 6c 65 6e 28 24 66 72 6f 6d 29 29 2c 20 74 72 75 65 29 3b 0a 7d 0a 24 73 6f 75 72 ,.strlen($from)),.true);.}.$sour
b5e00 63 65 50 61 74 68 44 65 70 74 68 20 3d 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 73 75 62 73 74 cePathDepth.=.substr_count(subst
b5e20 72 28 24 66 72 6f 6d 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 29 2c 20 27 r($from,.strlen($commonPath)),.'
b5e40 2f 27 29 20 2b 20 24 64 69 72 65 63 74 6f 72 69 65 73 3b 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 43 /').+.$directories;.$commonPathC
b5e60 6f 64 65 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 64 69 72 6e 61 6d 65 28 27 2c 20 24 73 6f ode.=.str_repeat('dirname(',.$so
b5e80 75 72 63 65 50 61 74 68 44 65 70 74 68 29 2e 27 5f 5f 44 49 52 5f 5f 27 2e 73 74 72 5f 72 65 70 urcePathDepth).'__DIR__'.str_rep
b5ea0 65 61 74 28 27 29 27 2c 20 24 73 6f 75 72 63 65 50 61 74 68 44 65 70 74 68 29 3b 0a 24 72 65 6c eat(')',.$sourcePathDepth);.$rel
b5ec0 54 61 72 67 65 74 20 3d 20 73 75 62 73 74 72 28 24 74 6f 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d Target.=.substr($to,.strlen($com
b5ee0 6d 6f 6e 50 61 74 68 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 43 6f monPath));..return.$commonPathCo
b5f00 64 65 20 2e 20 28 73 74 72 6c 65 6e 28 24 72 65 6c 54 61 72 67 65 74 29 20 3f 20 27 2e 27 20 2e de...(strlen($relTarget).?.'.'..
b5f20 20 76 61 72 5f 65 78 70 6f 72 74 28 27 2f 27 20 2e 20 24 72 65 6c 54 61 72 67 65 74 2c 20 74 72 .var_export('/'...$relTarget,.tr
b5f40 75 65 29 20 3a 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ue).:.'');.}........public.funct
b5f60 69 6f 6e 20 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 ion.isAbsolutePath($path).{.retu
b5f80 72 6e 20 73 75 62 73 74 72 28 24 70 61 74 68 2c 20 30 2c 20 31 29 20 3d 3d 3d 20 27 2f 27 20 7c rn.substr($path,.0,.1).===.'/'.|
b5fa0 7c 20 73 75 62 73 74 72 28 24 70 61 74 68 2c 20 31 2c 20 31 29 20 3d 3d 3d 20 27 3a 27 3b 0a 7d |.substr($path,.1,.1).===.':';.}
b5fc0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 69 7a 65 28 24 ..........public.function.size($
b5fe0 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 70 61 74 68 29 29 path).{.if.(!file_exists($path))
b6000 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 22 .{.throw.new.\RuntimeException("
b6020 24 70 61 74 68 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 22 29 3b 0a 7d 0a 69 66 20 28 69 $path.does.not.exist.");.}.if.(i
b6040 73 5f 64 69 72 28 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 s_dir($path)).{.return.$this->di
b6060 72 65 63 74 6f 72 79 53 69 7a 65 28 24 70 61 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 69 rectorySize($path);.}..return.fi
b6080 6c 65 73 69 7a 65 28 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 lesize($path);.}.........public.
b60a0 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 0a 7b 0a function.normalizePath($path).{.
b60c0 24 70 61 72 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 70 61 74 68 20 3d 20 73 74 72 74 72 28 $parts.=.array();.$path.=.strtr(
b60e0 24 70 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a 24 70 72 65 66 69 78 20 3d 20 27 27 3b $path,.'\\',.'/');.$prefix.=.'';
b6100 0a 24 61 62 73 6f 6c 75 74 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 .$absolute.=.false;..if.(preg_ma
b6120 74 63 68 28 27 7b 5e 28 5b 30 2d 39 61 2d 7a 5d 2b 3a 28 3f 3a 2f 2f 28 3f 3a 5b 61 2d 7a 5d 3a tch('{^([0-9a-z]+:(?://(?:[a-z]:
b6140 29 3f 29 3f 29 7d 69 27 2c 20 24 70 61 74 68 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 70 72 65 )?)?)}i',.$path,.$match)).{.$pre
b6160 66 69 78 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 70 61 74 68 20 3d 20 73 75 62 73 74 72 28 fix.=.$match[1];.$path.=.substr(
b6180 24 70 61 74 68 2c 20 73 74 72 6c 65 6e 28 24 70 72 65 66 69 78 29 29 3b 0a 7d 0a 0a 69 66 20 28 $path,.strlen($prefix));.}..if.(
b61a0 73 75 62 73 74 72 28 24 70 61 74 68 2c 20 30 2c 20 31 29 20 3d 3d 3d 20 27 2f 27 29 20 7b 0a 24 substr($path,.0,.1).===.'/').{.$
b61c0 61 62 73 6f 6c 75 74 65 20 3d 20 74 72 75 65 3b 0a 24 70 61 74 68 20 3d 20 73 75 62 73 74 72 28 absolute.=.true;.$path.=.substr(
b61e0 24 70 61 74 68 2c 20 31 29 3b 0a 7d 0a 0a 24 75 70 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 $path,.1);.}..$up.=.false;.forea
b6200 63 68 20 28 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 24 70 61 74 68 29 20 61 73 20 24 63 68 75 6e ch.(explode('/',.$path).as.$chun
b6220 6b 29 20 7b 0a 69 66 20 28 27 2e 2e 27 20 3d 3d 3d 20 24 63 68 75 6e 6b 20 26 26 20 28 24 61 62 k).{.if.('..'.===.$chunk.&&.($ab
b6240 73 6f 6c 75 74 65 20 7c 7c 20 24 75 70 29 29 20 7b 0a 61 72 72 61 79 5f 70 6f 70 28 24 70 61 72 solute.||.$up)).{.array_pop($par
b6260 74 73 29 3b 0a 24 75 70 20 3d 20 21 28 65 6d 70 74 79 28 24 70 61 72 74 73 29 20 7c 7c 20 27 2e ts);.$up.=.!(empty($parts).||.'.
b6280 2e 27 20 3d 3d 3d 20 65 6e 64 28 24 70 61 72 74 73 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 .'.===.end($parts));.}.elseif.('
b62a0 2e 27 20 21 3d 3d 20 24 63 68 75 6e 6b 20 26 26 20 27 27 20 21 3d 3d 20 24 63 68 75 6e 6b 29 20 .'.!==.$chunk.&&.''.!==.$chunk).
b62c0 7b 0a 24 70 61 72 74 73 5b 5d 20 3d 20 24 63 68 75 6e 6b 3b 0a 24 75 70 20 3d 20 27 2e 2e 27 20 {.$parts[].=.$chunk;.$up.=.'..'.
b62e0 21 3d 3d 20 24 63 68 75 6e 6b 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 72 65 66 69 78 2e !==.$chunk;.}.}..return.$prefix.
b6300 28 24 61 62 73 6f 6c 75 74 65 20 3f 20 27 2f 27 20 3a 20 27 27 29 2e 69 6d 70 6c 6f 64 65 28 27 ($absolute.?.'/'.:.'').implode('
b6320 2f 27 2c 20 24 70 61 72 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 /',.$parts);.}........public.sta
b6340 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 4c 6f 63 61 6c 50 61 74 68 28 24 70 61 74 68 29 0a tic.function.isLocalPath($path).
b6360 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 66 {.return.(bool).preg_match('{^(f
b6380 69 6c 65 3a 2f 2f 7c 2f 7c 5b 61 2d 7a 5d 3a 5b 5c 5c 5c 5c 2f 5d 7c 5c 2e 5c 2e 5b 5c 5c 5c 5c ile://|/|[a-z]:[\\\\/]|\.\.[\\\\
b63a0 2f 5d 7c 5b 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 5b 5c 5c 5c 5c 2f 5d 29 7d 69 27 2c 20 24 70 61 74 /]|[a-z0-9_.-]+[\\\\/])}i',.$pat
b63c0 68 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 h);.}..public.static.function.ge
b63e0 74 50 6c 61 74 66 6f 72 6d 50 61 74 68 28 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 50 6c 61 74 66 tPlatformPath($path).{.if.(Platf
b6400 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 24 70 61 74 68 20 3d 20 70 72 65 67 orm::isWindows()).{.$path.=.preg
b6420 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 3f 3a 66 69 6c 65 3a 2f 2f 2f 28 5b 61 2d 7a 5d 29 2f 29 _replace('{^(?:file:///([a-z])/)
b6440 7d 69 27 2c 20 27 66 69 6c 65 3a 2f 2f 24 31 3a 2f 27 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 72 }i',.'file://$1:/',.$path);.}..r
b6460 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 66 69 6c 65 3a 2f 2f 7d 69 27 eturn.preg_replace('{^file://}i'
b6480 2c 20 27 27 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 ,.'',.$path);.}..protected.funct
b64a0 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 53 69 7a 65 28 24 64 69 72 65 63 74 6f 72 79 29 0a 7b 0a ion.directorySize($directory).{.
b64c0 24 69 74 20 3d 20 6e 65 77 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 $it.=.new.RecursiveDirectoryIter
b64e0 61 74 6f 72 28 24 64 69 72 65 63 74 6f 72 79 2c 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 ator($directory,.RecursiveDirect
b6500 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f 54 53 29 3b 0a 24 72 69 20 3d 20 6e oryIterator::SKIP_DOTS);.$ri.=.n
b6520 65 77 20 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 24 69 74 ew.RecursiveIteratorIterator($it
b6540 2c 20 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 3a 3a 43 48 49 ,.RecursiveIteratorIterator::CHI
b6560 4c 44 5f 46 49 52 53 54 29 3b 0a 0a 24 73 69 7a 65 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 LD_FIRST);..$size.=.0;.foreach.(
b6580 24 72 69 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 24 66 69 6c 65 2d 3e 69 73 46 69 6c $ri.as.$file).{.if.($file->isFil
b65a0 65 28 29 29 20 7b 0a 24 73 69 7a 65 20 2b 3d 20 24 66 69 6c 65 2d 3e 67 65 74 53 69 7a 65 28 29 e()).{.$size.+=.$file->getSize()
b65c0 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 69 7a 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 ;.}.}..return.$size;.}..protecte
b65e0 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 63 65 73 73 28 29 0a 7b 0a 72 65 74 75 72 6e d.function.getProcess().{.return
b6600 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a .new.ProcessExecutor;.}.........
b6620 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 75 6e 6c 69 6e 6b 49 6d 70 6c 65 6d 65 ..private.function.unlinkImpleme
b6640 6e 74 61 74 69 6f 6e 28 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 ntation($path).{.if.(Platform::i
b6660 73 57 69 6e 64 6f 77 73 28 29 20 26 26 20 69 73 5f 64 69 72 28 24 70 61 74 68 29 20 26 26 20 69 sWindows().&&.is_dir($path).&&.i
b6680 73 5f 6c 69 6e 6b 28 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 72 6d 64 69 72 28 24 70 s_link($path)).{.return.rmdir($p
b66a0 61 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 75 6e 6c 69 6e 6b 28 24 70 61 74 68 29 3b 0a 7d ath);.}..return.unlink($path);.}
b66c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6c 61 74 69 76 .........public.function.relativ
b66e0 65 53 79 6d 6c 69 6e 6b 28 24 74 61 72 67 65 74 2c 20 24 6c 69 6e 6b 29 0a 7b 0a 24 63 77 64 20 eSymlink($target,.$link).{.$cwd.
b6700 3d 20 67 65 74 63 77 64 28 29 3b 0a 0a 24 72 65 6c 61 74 69 76 65 50 61 74 68 20 3d 20 24 74 68 =.getcwd();..$relativePath.=.$th
b6720 69 73 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 6c 69 6e 6b 2c 20 24 74 61 72 is->findShortestPath($link,.$tar
b6740 67 65 74 29 3b 0a 63 68 64 69 72 28 64 69 72 6e 61 6d 65 28 24 6c 69 6e 6b 29 29 3b 0a 24 72 65 get);.chdir(dirname($link));.$re
b6760 73 75 6c 74 20 3d 20 40 73 79 6d 6c 69 6e 6b 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 24 sult.=.@symlink($relativePath,.$
b6780 6c 69 6e 6b 29 3b 0a 0a 63 68 64 69 72 28 24 63 77 64 29 3b 0a 0a 72 65 74 75 72 6e 20 28 62 6f link);..chdir($cwd);..return.(bo
b67a0 6f 6c 29 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ol).$result;.}.........public.fu
b67c0 6e 63 74 69 6f 6e 20 69 73 53 79 6d 6c 69 6e 6b 65 64 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 nction.isSymlinkedDirectory($dir
b67e0 65 63 74 6f 72 79 29 0a 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 ectory).{.if.(!is_dir($directory
b6800 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 72 65 73 6f 6c 76 65 64 20 )).{.return.false;.}..$resolved.
b6820 3d 20 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 53 79 6d 6c 69 6e 6b 65 64 44 69 72 65 63 74 6f =.$this->resolveSymlinkedDirecto
b6840 72 79 53 79 6d 6c 69 6e 6b 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 0a 72 65 74 75 72 6e 20 69 rySymlink($directory);..return.i
b6860 73 5f 6c 69 6e 6b 28 24 72 65 73 6f 6c 76 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 s_link($resolved);.}.......priva
b6880 74 65 20 66 75 6e 63 74 69 6f 6e 20 75 6e 6c 69 6e 6b 53 79 6d 6c 69 6e 6b 65 64 44 69 72 65 63 te.function.unlinkSymlinkedDirec
b68a0 74 6f 72 79 28 24 64 69 72 65 63 74 6f 72 79 29 0a 7b 0a 24 72 65 73 6f 6c 76 65 64 20 3d 20 24 tory($directory).{.$resolved.=.$
b68c0 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 53 79 6d 6c 69 6e 6b 65 64 44 69 72 65 63 74 6f 72 79 53 this->resolveSymlinkedDirectoryS
b68e0 79 6d 6c 69 6e 6b 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 ymlink($directory);..return.$thi
b6900 73 2d 3e 75 6e 6c 69 6e 6b 28 24 72 65 73 6f 6c 76 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a s->unlink($resolved);.}.........
b6920 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 53 79 6d 6c 69 6e 6b 65 private.function.resolveSymlinke
b6940 64 44 69 72 65 63 74 6f 72 79 53 79 6d 6c 69 6e 6b 28 24 70 61 74 68 6e 61 6d 65 29 0a 7b 0a 69 dDirectorySymlink($pathname).{.i
b6960 66 20 28 21 69 73 5f 64 69 72 28 24 70 61 74 68 6e 61 6d 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 f.(!is_dir($pathname)).{.return.
b6980 24 70 61 74 68 6e 61 6d 65 3b 0a 7d 0a 0a 24 72 65 73 6f 6c 76 65 64 20 3d 20 72 74 72 69 6d 28 $pathname;.}..$resolved.=.rtrim(
b69a0 24 70 61 74 68 6e 61 6d 65 2c 20 27 2f 27 29 3b 0a 0a 69 66 20 28 21 73 74 72 6c 65 6e 28 24 72 $pathname,.'/');..if.(!strlen($r
b69c0 65 73 6f 6c 76 65 64 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 74 68 6e 61 6d 65 3b 0a 7d 0a esolved)).{.return.$pathname;.}.
b69e0 0a 72 65 74 75 72 6e 20 24 72 65 73 6f 6c 76 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c .return.$resolved;.}........publ
b6a00 69 63 20 66 75 6e 63 74 69 6f 6e 20 6a 75 6e 63 74 69 6f 6e 28 24 74 61 72 67 65 74 2c 20 24 6a ic.function.junction($target,.$j
b6a20 75 6e 63 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 unction).{.if.(!Platform::isWind
b6a40 6f 77 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 ows()).{.throw.new.\LogicExcepti
b6a60 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 75 6e 63 74 69 6f 6e 20 25 73 20 69 73 20 6e 6f 74 20 61 on(sprintf('Function.%s.is.not.a
b6a80 76 61 69 6c 61 62 6c 65 20 6f 6e 20 6e 6f 6e 2d 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72 6d vailable.on.non-Windows.platform
b6aa0 27 2c 20 5f 5f 43 4c 41 53 53 5f 5f 29 29 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 74 ',.__CLASS__));.}.if.(!is_dir($t
b6ac0 61 72 67 65 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 arget)).{.throw.new.IOException(
b6ae0 73 70 72 69 6e 74 66 28 27 43 61 6e 6e 6f 74 20 6a 75 6e 63 74 69 6f 6e 20 74 6f 20 22 25 73 22 sprintf('Cannot.junction.to."%s"
b6b00 20 61 73 20 69 74 20 69 73 20 6e 6f 74 20 61 20 64 69 72 65 63 74 6f 72 79 2e 27 2c 20 24 74 61 .as.it.is.not.a.directory.',.$ta
b6b20 72 67 65 74 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 24 63 6d 64 rget),.0,.null,.$target);.}.$cmd
b6b40 20 3d 20 73 70 72 69 6e 74 66 28 27 6d 6b 6c 69 6e 6b 20 2f 4a 20 25 73 20 25 73 27 2c 0a 50 72 .=.sprintf('mklink./J.%s.%s',.Pr
b6b60 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 73 74 72 5f 72 65 70 6c 61 63 ocessExecutor::escape(str_replac
b6b80 65 28 27 2f 27 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 2c 20 24 6a 75 6e e('/',.DIRECTORY_SEPARATOR,.$jun
b6ba0 63 74 69 6f 6e 29 29 2c 0a 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 ction)),.ProcessExecutor::escape
b6bc0 28 72 65 61 6c 70 61 74 68 28 24 74 61 72 67 65 74 29 29 29 3b 0a 69 66 20 28 24 74 68 69 73 2d (realpath($target)));.if.($this-
b6be0 3e 67 65 74 50 72 6f 63 65 73 73 28 29 2d 3e 65 78 65 63 75 74 65 28 24 63 6d 64 2c 20 24 6f 75 >getProcess()->execute($cmd,.$ou
b6c00 74 70 75 74 29 20 21 3d 3d 20 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 tput).!==.0).{.throw.new.IOExcep
b6c20 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 6a tion(sprintf('Failed.to.create.j
b6c40 75 6e 63 74 69 6f 6e 20 74 6f 20 22 25 73 22 20 61 74 20 22 25 73 22 2e 27 2c 20 24 74 61 72 67 unction.to."%s".at."%s".',.$targ
b6c60 65 74 2c 20 24 6a 75 6e 63 74 69 6f 6e 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 74 61 72 67 65 74 et,.$junction),.0,.null,.$target
b6c80 29 3b 0a 7d 0a 63 6c 65 61 72 73 74 61 74 63 61 63 68 65 28 74 72 75 65 2c 20 24 6a 75 6e 63 74 );.}.clearstatcache(true,.$junct
b6ca0 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 ion);.}........public.function.i
b6cc0 73 4a 75 6e 63 74 69 6f 6e 28 24 6a 75 6e 63 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 50 6c 61 74 sJunction($junction).{.if.(!Plat
b6ce0 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 form::isWindows()).{.return.fals
b6d00 65 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 6a 75 6e 63 74 69 6f 6e 29 20 7c 7c 20 69 e;.}.if.(!is_dir($junction).||.i
b6d20 73 5f 6c 69 6e 6b 28 24 6a 75 6e 63 74 69 6f 6e 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 s_link($junction)).{.return.fals
b6d40 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 65 61 72 73 74 61 74 63 61 63 68 65 28 74 e;.}............clearstatcache(t
b6d60 72 75 65 2c 20 24 6a 75 6e 63 74 69 6f 6e 29 3b 0a 24 73 74 61 74 20 3d 20 6c 73 74 61 74 28 24 rue,.$junction);.$stat.=.lstat($
b6d80 6a 75 6e 63 74 69 6f 6e 29 3b 0a 0a 72 65 74 75 72 6e 20 21 28 24 73 74 61 74 5b 27 6d 6f 64 65 junction);..return.!($stat['mode
b6da0 27 5d 20 26 20 30 78 43 30 30 30 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 '].&.0xC000);.}........public.fu
b6dc0 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 4a 75 6e 63 74 69 6f 6e 28 24 6a 75 6e 63 74 69 6f 6e 29 nction.removeJunction($junction)
b6de0 0a 7b 0a 69 66 20 28 21 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b .{.if.(!Platform::isWindows()).{
b6e00 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 24 6a 75 6e 63 74 69 6f 6e 20 3d 20 72 74 72 .return.false;.}.$junction.=.rtr
b6e20 69 6d 28 73 74 72 5f 72 65 70 6c 61 63 65 28 27 2f 27 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 45 im(str_replace('/',.DIRECTORY_SE
b6e40 50 41 52 41 54 4f 52 2c 20 24 6a 75 6e 63 74 69 6f 6e 29 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 PARATOR,.$junction),.DIRECTORY_S
b6e60 45 50 41 52 41 54 4f 52 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 4a 75 6e 63 74 69 6f EPARATOR);.if.(!$this->isJunctio
b6e80 6e 28 24 6a 75 6e 63 74 69 6f 6e 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 n($junction)).{.throw.new.IOExce
b6ea0 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 25 73 20 69 73 20 6e 6f 74 20 61 20 6a 75 6e 63 74 ption(sprintf('%s.is.not.a.junct
b6ec0 69 6f 6e 20 61 6e 64 20 74 68 75 73 20 63 61 6e 6e 6f 74 20 62 65 20 72 65 6d 6f 76 65 64 20 61 ion.and.thus.cannot.be.removed.a
b6ee0 73 20 6f 6e 65 27 2c 20 24 6a 75 6e 63 74 69 6f 6e 29 29 3b 0a 7d 0a 24 63 6d 64 20 3d 20 73 70 s.one',.$junction));.}.$cmd.=.sp
b6f00 72 69 6e 74 66 28 27 72 6d 64 69 72 20 2f 53 20 2f 51 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 rintf('rmdir./S./Q.%s',.ProcessE
b6f20 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 6a 75 6e 63 74 69 6f 6e 29 29 3b 0a 63 6c 65 xecutor::escape($junction));.cle
b6f40 61 72 73 74 61 74 63 61 63 68 65 28 74 72 75 65 2c 20 24 6a 75 6e 63 74 69 6f 6e 29 3b 0a 0a 72 arstatcache(true,.$junction);..r
b6f60 65 74 75 72 6e 20 28 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 63 65 73 73 28 29 2d 3e 65 78 65 63 eturn.($this->getProcess()->exec
b6f80 75 74 65 28 24 63 6d 64 2c 20 24 6f 75 74 70 75 74 29 20 3d 3d 3d 20 30 29 3b 0a 7d 0a 7d 0a 3c ute($cmd,.$output).===.0);.}.}.<
b6fa0 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 ?php............namespace.Compos
b6fc0 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 er\Util;..use.Composer\Config;.u
b6fe0 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 se.Composer\IO\IOInterface;.use.
b7000 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 Composer\Downloader\TransportExc
b7020 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 0a 7b 0a 0a 70 72 6f 74 65 63 74 eption;.....class.Git.{..protect
b7040 65 64 20 24 69 6f 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 0a 70 72 6f ed.$io;..protected.$config;..pro
b7060 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c tected.$process;..protected.$fil
b7080 65 73 79 73 74 65 6d 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 esystem;..public.function.__cons
b70a0 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 truct(IOInterface.$io,.Config.$c
b70c0 6f 6e 66 69 67 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 2c onfig,.ProcessExecutor.$process,
b70e0 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 .Filesystem.$fs).{.$this->io.=.$
b7100 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 io;.$this->config.=.$config;.$th
b7120 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 3b 0a 24 74 68 69 73 2d 3e 66 is->process.=.$process;.$this->f
b7140 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ilesystem.=.$fs;.}..public.funct
b7160 69 6f 6e 20 72 75 6e 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c ion.runCommand($commandCallable,
b7180 20 24 75 72 6c 2c 20 24 63 77 64 2c 20 24 69 6e 69 74 69 61 6c 43 6c 6f 6e 65 20 3d 20 66 61 6c .$url,.$cwd,.$initialClone.=.fal
b71a0 73 65 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 68 74 74 70 7c 67 69 se).{.if.(preg_match('{^(http|gi
b71c0 74 29 3a 7d 69 27 2c 20 24 75 72 6c 29 20 26 26 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e t):}i',.$url).&&.$this->config->
b71e0 67 65 74 28 27 73 65 63 75 72 65 2d 68 74 74 70 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 get('secure-http')).{.throw.new.
b7200 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 22 59 6f 75 72 20 63 6f 6e 66 69 67 75 TransportException("Your.configu
b7220 72 61 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 63 6f 6e 6e 65 63 74 69 6f 6e ration.does.not.allow.connection
b7240 20 74 6f 20 24 75 72 6c 2e 20 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 .to.$url..See.https://getcompose
b7260 72 2e 6f 72 67 2f 64 6f 63 2f 30 36 2d 63 6f 6e 66 69 67 2e 6d 64 23 73 65 63 75 72 65 2d 68 74 r.org/doc/06-config.md#secure-ht
b7280 74 70 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 22 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 69 74 69 tp.for.details.");.}..if.($initi
b72a0 61 6c 43 6c 6f 6e 65 29 20 7b 0a 24 6f 72 69 67 43 77 64 20 3d 20 24 63 77 64 3b 0a 24 63 77 64 alClone).{.$origCwd.=.$cwd;.$cwd
b72c0 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 73 73 .=.null;.}..if.(preg_match('{^ss
b72e0 68 3a 2f 2f 5b 5e 40 5d 2b 40 5b 5e 3a 5d 2b 3a 5b 5e 30 2d 39 5d 2b 7d 27 2c 20 24 75 72 6c 29 h://[^@]+@[^:]+:[^0-9]+}',.$url)
b7300 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 ).{.throw.new.\InvalidArgumentEx
b7320 63 65 70 74 69 6f 6e 28 27 54 68 65 20 73 6f 75 72 63 65 20 55 52 4c 20 27 2e 24 75 72 6c 2e 27 ception('The.source.URL.'.$url.'
b7340 20 69 73 20 69 6e 76 61 6c 69 64 2c 20 73 73 68 20 55 52 4c 73 20 73 68 6f 75 6c 64 20 68 61 76 .is.invalid,.ssh.URLs.should.hav
b7360 65 20 61 20 70 6f 72 74 20 6e 75 6d 62 65 72 20 61 66 74 65 72 20 22 3a 22 2e 27 2e 22 5c 6e 22 e.a.port.number.after.":".'."\n"
b7380 2e 27 55 73 65 20 73 73 68 3a 2f 2f 67 69 74 40 65 78 61 6d 70 6c 65 2e 63 6f 6d 3a 32 32 2f 70 .'Use.ssh://git@example.com:22/p
b73a0 61 74 68 20 6f 72 20 6a 75 73 74 20 67 69 74 40 65 78 61 6d 70 6c 65 2e 63 6f 6d 3a 70 61 74 68 ath.or.just.git@example.com:path
b73c0 20 69 66 20 79 6f 75 20 64 6f 20 6e 6f 74 20 77 61 6e 74 20 74 6f 20 70 72 6f 76 69 64 65 20 61 .if.you.do.not.want.to.provide.a
b73e0 20 70 61 73 73 77 6f 72 64 20 6f 72 20 63 75 73 74 6f 6d 20 70 6f 72 74 2e 27 29 3b 0a 7d 0a 0a .password.or.custom.port.');.}..
b7400 69 66 20 28 21 24 69 6e 69 74 69 61 6c 43 6c 6f 6e 65 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 70 if.(!$initialClone).{...$this->p
b7420 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 72 65 6d 6f 74 65 20 2d 76 27 2c rocess->execute('git.remote.-v',
b7440 20 24 6f 75 74 70 75 74 2c 20 24 63 77 64 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 .$output,.$cwd);.if.(preg_match(
b7460 27 7b 5e 28 3f 3a 63 6f 6d 70 6f 73 65 72 7c 6f 72 69 67 69 6e 29 5c 73 2b 68 74 74 70 73 3f 3a '{^(?:composer|origin)\s+https?:
b7480 2f 2f 28 2e 2b 29 3a 28 2e 2b 29 40 28 5b 5e 2f 5d 2b 29 7d 69 6d 27 2c 20 24 6f 75 74 70 75 74 //(.+):(.+)@([^/]+)}im',.$output
b74a0 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 65 ,.$match)).{.$this->io->setAuthe
b74c0 6e 74 69 63 61 74 69 6f 6e 28 24 6d 61 74 63 68 5b 33 5d 2c 20 75 72 6c 64 65 63 6f 64 65 28 24 ntication($match[3],.urldecode($
b74e0 6d 61 74 63 68 5b 31 5d 29 2c 20 75 72 6c 64 65 63 6f 64 65 28 24 6d 61 74 63 68 5b 32 5d 29 29 match[1]),.urldecode($match[2]))
b7500 3b 0a 7d 0a 7d 0a 0a 24 70 72 6f 74 6f 63 6f 6c 73 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 ;.}.}..$protocols.=.$this->confi
b7520 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 27 29 3b 0a 69 66 20 28 g->get('github-protocols');.if.(
b7540 21 69 73 5f 61 72 72 61 79 28 24 70 72 6f 74 6f 63 6f 6c 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e !is_array($protocols)).{.throw.n
b7560 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 6e 66 69 67 20 76 61 6c ew.\RuntimeException('Config.val
b7580 75 65 20 22 67 69 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 22 20 6d 75 73 74 20 62 65 20 61 6e ue."github-protocols".must.be.an
b75a0 20 61 72 72 61 79 2c 20 67 6f 74 20 27 2e 67 65 74 74 79 70 65 28 24 70 72 6f 74 6f 63 6f 6c 73 .array,.got.'.gettype($protocols
b75c0 29 29 3b 0a 7d 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 68 74 74 ));.}...if.(preg_match('{^(?:htt
b75e0 70 73 3f 7c 67 69 74 29 3a 2f 2f 27 2e 73 65 6c 66 3a 3a 67 65 74 47 69 74 48 75 62 44 6f 6d 61 ps?|git)://'.self::getGitHubDoma
b7600 69 6e 73 52 65 67 65 78 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 2e 27 2f 28 2e 2a 29 7d 27 insRegex($this->config).'/(.*)}'
b7620 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 ,.$url,.$match)).{.$messages.=.a
b7640 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 72 6f 74 6f 63 6f 6c 73 20 61 73 20 24 rray();.foreach.($protocols.as.$
b7660 70 72 6f 74 6f 63 6f 6c 29 20 7b 0a 69 66 20 28 27 73 73 68 27 20 3d 3d 3d 20 24 70 72 6f 74 6f protocol).{.if.('ssh'.===.$proto
b7680 63 6f 6c 29 20 7b 0a 24 70 72 6f 74 6f 55 72 6c 20 3d 20 22 67 69 74 40 22 20 2e 20 24 6d 61 74 col).{.$protoUrl.=."git@"...$mat
b76a0 63 68 5b 31 5d 20 2e 20 22 3a 22 20 2e 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 20 65 6c 73 65 20 ch[1]...":"...$match[2];.}.else.
b76c0 7b 0a 24 70 72 6f 74 6f 55 72 6c 20 3d 20 24 70 72 6f 74 6f 63 6f 6c 20 2e 22 3a 2f 2f 22 20 2e {.$protoUrl.=.$protocol.."://"..
b76e0 20 24 6d 61 74 63 68 5b 31 5d 20 2e 20 22 2f 22 20 2e 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a .$match[1]..."/"...$match[2];.}.
b7700 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 .if.(0.===.$this->process->execu
b7720 74 65 28 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 te(call_user_func($commandCallab
b7740 6c 65 2c 20 24 70 72 6f 74 6f 55 72 6c 29 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 2c 20 le,.$protoUrl),.$ignoredOutput,.
b7760 24 63 77 64 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d $cwd)).{.return;.}.$messages[].=
b7780 20 27 2d 20 27 20 2e 20 24 70 72 6f 74 6f 55 72 6c 20 2e 20 22 5c 6e 22 20 2e 20 70 72 65 67 5f .'-.'...$protoUrl..."\n"...preg_
b77a0 72 65 70 6c 61 63 65 28 27 23 5e 23 6d 27 2c 20 27 20 20 27 2c 20 24 74 68 69 73 2d 3e 70 72 6f replace('#^#m',.'..',.$this->pro
b77c0 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 69 66 20 28 24 69 6e cess->getErrorOutput());.if.($in
b77e0 69 74 69 61 6c 43 6c 6f 6e 65 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d itialClone).{.$this->filesystem-
b7800 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 6f 72 69 67 43 77 64 29 3b 0a 7d 0a 7d 0a >removeDirectory($origCwd);.}.}.
b7820 0a 0a 20 24 74 68 69 73 2d 3e 74 68 72 6f 77 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 ...$this->throwException('Failed
b7840 20 74 6f 20 63 6c 6f 6e 65 20 27 20 2e 20 73 65 6c 66 3a 3a 73 61 6e 69 74 69 7a 65 55 72 6c 28 .to.clone.'...self::sanitizeUrl(
b7860 24 75 72 6c 29 20 2e 27 20 76 69 61 20 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 72 $url)..'.via.'.implode(',.',.$pr
b7880 6f 74 6f 63 6f 6c 73 29 2e 27 20 70 72 6f 74 6f 63 6f 6c 73 2c 20 61 62 6f 72 74 69 6e 67 2e 27 otocols).'.protocols,.aborting.'
b78a0 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 6d 65 73 73 61 ..."\n\n"...implode("\n",.$messa
b78c0 67 65 73 29 2c 20 24 75 72 6c 29 3b 0a 7d 0a 0a 0a 20 24 62 79 70 61 73 73 53 73 68 46 6f 72 47 ges),.$url);.}....$bypassSshForG
b78e0 69 74 48 75 62 20 3d 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 67 69 74 40 27 2e 73 65 6c 66 itHub.=.preg_match('{^git@'.self
b7900 3a 3a 67 65 74 47 69 74 48 75 62 44 6f 6d 61 69 6e 73 52 65 67 65 78 28 24 74 68 69 73 2d 3e 63 ::getGitHubDomainsRegex($this->c
b7920 6f 6e 66 69 67 29 2e 27 3a 28 2e 2b 3f 29 5c 2e 67 69 74 24 7d 69 27 2c 20 24 75 72 6c 29 20 26 onfig).':(.+?)\.git$}i',.$url).&
b7940 26 20 21 69 6e 5f 61 72 72 61 79 28 27 73 73 68 27 2c 20 24 70 72 6f 74 6f 63 6f 6c 73 2c 20 74 &.!in_array('ssh',.$protocols,.t
b7960 72 75 65 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 rue);..$command.=.call_user_func
b7980 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 75 72 6c 29 3b 0a 0a 24 61 75 74 68 ($commandCallable,.$url);..$auth
b79a0 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 62 79 70 61 73 73 53 73 68 46 6f 72 47 69 74 48 75 62 .=.null;.if.($bypassSshForGitHub
b79c0 20 7c 7c 20 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 .||.0.!==.$this->process->execut
b79e0 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 2c 20 24 63 77 64 e($command,.$ignoredOutput,.$cwd
b7a00 29 29 20 7b 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 67 69 74 40 27 2e 73 )).{...if.(preg_match('{^git@'.s
b7a20 65 6c 66 3a 3a 67 65 74 47 69 74 48 75 62 44 6f 6d 61 69 6e 73 52 65 67 65 78 28 24 74 68 69 73 elf::getGitHubDomainsRegex($this
b7a40 2d 3e 63 6f 6e 66 69 67 29 2e 27 3a 28 2e 2b 3f 29 5c 2e 67 69 74 24 7d 69 27 2c 20 24 75 72 6c ->config).':(.+?)\.git$}i',.$url
b7a60 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 68 61 73 ,.$match)).{.if.(!$this->io->has
b7a80 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6d 61 74 63 68 5b 31 5d 29 29 20 7b 0a 24 67 69 Authentication($match[1])).{.$gi
b7aa0 74 48 75 62 55 74 69 6c 20 3d 20 6e 65 77 20 47 69 74 48 75 62 28 24 74 68 69 73 2d 3e 69 6f 2c tHubUtil.=.new.GitHub($this->io,
b7ac0 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b .$this->config,.$this->process);
b7ae0 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 43 6c 6f 6e 69 6e 67 20 66 61 69 6c 65 64 20 75 73 69 6e .$message.=.'Cloning.failed.usin
b7b00 67 20 61 6e 20 73 73 68 20 6b 65 79 20 66 6f 72 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 2c g.an.ssh.key.for.authentication,
b7b20 20 65 6e 74 65 72 20 79 6f 75 72 20 47 69 74 48 75 62 20 63 72 65 64 65 6e 74 69 61 6c 73 20 74 .enter.your.GitHub.credentials.t
b7b40 6f 20 61 63 63 65 73 73 20 70 72 69 76 61 74 65 20 72 65 70 6f 73 27 3b 0a 0a 69 66 20 28 21 24 o.access.private.repos';..if.(!$
b7b60 67 69 74 48 75 62 55 74 69 6c 2d 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 28 24 6d 61 74 63 gitHubUtil->authorizeOAuth($matc
b7b80 68 5b 31 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 h[1]).&&.$this->io->isInteractiv
b7ba0 65 28 29 29 20 7b 0a 24 67 69 74 48 75 62 55 74 69 6c 2d 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 e()).{.$gitHubUtil->authorizeOAu
b7bc0 74 68 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 24 6d 61 74 63 68 5b 31 5d 2c 20 24 6d 65 73 73 thInteractively($match[1],.$mess
b7be0 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 68 61 73 41 75 74 age);.}.}..if.($this->io->hasAut
b7c00 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6d 61 74 63 68 5b 31 5d 29 29 20 7b 0a 24 61 75 74 68 20 hentication($match[1])).{.$auth.
b7c20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 67 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 =.$this->io->getAuthentication($
b7c40 6d 61 74 63 68 5b 31 5d 29 3b 0a 24 61 75 74 68 55 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 27 match[1]);.$authUrl.=.'https://'
b7c60 2e 72 61 77 75 72 6c 65 6e 63 6f 64 65 28 24 61 75 74 68 5b 27 75 73 65 72 6e 61 6d 65 27 5d 29 .rawurlencode($auth['username'])
b7c80 20 2e 20 27 3a 27 20 2e 20 72 61 77 75 72 6c 65 6e 63 6f 64 65 28 24 61 75 74 68 5b 27 70 61 73 ...':'...rawurlencode($auth['pas
b7ca0 73 77 6f 72 64 27 5d 29 20 2e 20 27 40 27 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 2f 27 2e 24 6d 61 sword'])...'@'.$match[1].'/'.$ma
b7cc0 74 63 68 5b 32 5d 2e 27 2e 67 69 74 27 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 63 61 6c 6c 5f 75 tch[2].'.git';.$command.=.call_u
b7ce0 73 65 72 5f 66 75 6e 63 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 61 75 74 68 ser_func($commandCallable,.$auth
b7d00 55 72 6c 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e Url);.if.(0.===.$this->process->
b7d20 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 execute($command,.$ignoredOutput
b7d40 2c 20 24 63 77 64 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 ,.$cwd)).{.return;.}.}.}.elseif.
b7d60 28 24 74 68 69 73 2d 3e 69 73 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 46 61 69 6c 75 72 65 28 ($this->isAuthenticationFailure(
b7d80 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 20 0a 20 69 66 20 28 73 74 72 70 6f 73 28 24 6d $url,.$match)).{...if.(strpos($m
b7da0 61 74 63 68 5b 32 5d 2c 20 27 40 27 29 29 20 7b 0a 6c 69 73 74 28 24 61 75 74 68 50 61 72 74 73 atch[2],.'@')).{.list($authParts
b7dc0 2c 20 24 6d 61 74 63 68 5b 32 5d 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 40 27 2c 20 24 6d 61 74 ,.$match[2]).=.explode('@',.$mat
b7de0 63 68 5b 32 5d 2c 20 32 29 3b 0a 7d 0a 0a 24 73 74 6f 72 65 41 75 74 68 20 3d 20 66 61 6c 73 65 ch[2],.2);.}..$storeAuth.=.false
b7e00 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 68 61 73 41 75 74 68 65 6e 74 69 63 61 74 69 ;.if.($this->io->hasAuthenticati
b7e20 6f 6e 28 24 6d 61 74 63 68 5b 32 5d 29 29 20 7b 0a 24 61 75 74 68 20 3d 20 24 74 68 69 73 2d 3e on($match[2])).{.$auth.=.$this->
b7e40 69 6f 2d 3e 67 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6d 61 74 63 68 5b 32 5d 29 io->getAuthentication($match[2])
b7e60 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 ;.}.elseif.($this->io->isInterac
b7e80 74 69 76 65 28 29 29 20 7b 0a 24 64 65 66 61 75 6c 74 55 73 65 72 6e 61 6d 65 20 3d 20 6e 75 6c tive()).{.$defaultUsername.=.nul
b7ea0 6c 3b 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 68 50 61 72 74 73 29 20 26 26 20 24 61 75 74 l;.if.(isset($authParts).&&.$aut
b7ec0 68 50 61 72 74 73 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 hParts).{.if.(false.!==.strpos($
b7ee0 61 75 74 68 50 61 72 74 73 2c 20 27 3a 27 29 29 20 7b 0a 6c 69 73 74 28 24 64 65 66 61 75 6c 74 authParts,.':')).{.list($default
b7f00 55 73 65 72 6e 61 6d 65 2c 20 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 61 75 74 68 Username,.).=.explode(':',.$auth
b7f20 50 61 72 74 73 2c 20 32 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 55 73 65 72 Parts,.2);.}.else.{.$defaultUser
b7f40 6e 61 6d 65 20 3d 20 24 61 75 74 68 50 61 72 74 73 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 name.=.$authParts;.}.}..$this->i
b7f60 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 41 75 74 68 65 6e 74 69 63 61 74 69 6f o->writeError('....Authenticatio
b7f80 6e 20 72 65 71 75 69 72 65 64 20 28 3c 69 6e 66 6f 3e 27 2e 70 61 72 73 65 5f 75 72 6c 28 24 75 n.required.(<info>'.parse_url($u
b7fa0 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 2e 27 3c 2f 69 6e 66 6f 3e 29 3a 27 29 3b 0a rl,.PHP_URL_HOST).'</info>):');.
b7fc0 24 61 75 74 68 20 3d 20 61 72 72 61 79 28 0a 27 75 73 65 72 6e 61 6d 65 27 20 3d 3e 20 24 74 68 $auth.=.array(.'username'.=>.$th
b7fe0 69 73 2d 3e 69 6f 2d 3e 61 73 6b 28 27 20 20 20 20 20 20 55 73 65 72 6e 61 6d 65 3a 20 27 2c 20 is->io->ask('......Username:.',.
b8000 24 64 65 66 61 75 6c 74 55 73 65 72 6e 61 6d 65 29 2c 0a 27 70 61 73 73 77 6f 72 64 27 20 3d 3e $defaultUsername),.'password'.=>
b8020 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 27 20 20 .$this->io->askAndHideAnswer('..
b8040 20 20 20 20 50 61 73 73 77 6f 72 64 3a 20 27 29 2c 0a 29 3b 0a 24 73 74 6f 72 65 41 75 74 68 20 ....Password:.'),.);.$storeAuth.
b8060 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 73 74 6f 72 65 2d 61 75 74 68 =.$this->config->get('store-auth
b8080 73 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 61 75 74 68 29 20 7b 0a 24 61 75 74 68 55 72 6c 20 3d 20 s');.}..if.($auth).{.$authUrl.=.
b80a0 24 6d 61 74 63 68 5b 31 5d 2e 72 61 77 75 72 6c 65 6e 63 6f 64 65 28 24 61 75 74 68 5b 27 75 73 $match[1].rawurlencode($auth['us
b80c0 65 72 6e 61 6d 65 27 5d 29 2e 27 3a 27 2e 72 61 77 75 72 6c 65 6e 63 6f 64 65 28 24 61 75 74 68 ername']).':'.rawurlencode($auth
b80e0 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 2e 27 40 27 2e 24 6d 61 74 63 68 5b 32 5d 2e 24 6d 61 74 ['password']).'@'.$match[2].$mat
b8100 63 68 5b 33 5d 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e ch[3];..$command.=.call_user_fun
b8120 63 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 61 75 74 68 55 72 6c 29 3b 0a 69 c($commandCallable,.$authUrl);.i
b8140 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 f.(0.===.$this->process->execute
b8160 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 2c 20 24 63 77 64 29 ($command,.$ignoredOutput,.$cwd)
b8180 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e ).{.$this->io->setAuthentication
b81a0 28 24 6d 61 74 63 68 5b 32 5d 2c 20 24 61 75 74 68 5b 27 75 73 65 72 6e 61 6d 65 27 5d 2c 20 24 ($match[2],.$auth['username'],.$
b81c0 61 75 74 68 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 3b 0a 24 61 75 74 68 48 65 6c 70 65 72 20 3d auth['password']);.$authHelper.=
b81e0 20 6e 65 77 20 41 75 74 68 48 65 6c 70 65 72 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 .new.AuthHelper($this->io,.$this
b8200 2d 3e 63 6f 6e 66 69 67 29 3b 0a 24 61 75 74 68 48 65 6c 70 65 72 2d 3e 73 74 6f 72 65 41 75 74 ->config);.$authHelper->storeAut
b8220 68 28 24 6d 61 74 63 68 5b 32 5d 2c 20 24 73 74 6f 72 65 41 75 74 68 29 3b 0a 0a 72 65 74 75 72 h($match[2],.$storeAuth);..retur
b8240 6e 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 69 6e 69 74 69 61 6c 43 6c 6f 6e 65 29 20 7b 0a 24 n;.}.}.}..if.($initialClone).{.$
b8260 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 this->filesystem->removeDirector
b8280 79 28 24 6f 72 69 67 43 77 64 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 74 68 72 6f 77 45 78 63 65 70 y($origCwd);.}.$this->throwExcep
b82a0 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 73 65 6c 66 tion('Failed.to.execute.'...self
b82c0 3a 3a 73 61 6e 69 74 69 7a 65 55 72 6c 28 24 63 6f 6d 6d 61 6e 64 29 20 2e 20 22 5c 6e 5c 6e 22 ::sanitizeUrl($command)..."\n\n"
b82e0 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 ...$this->process->getErrorOutpu
b8300 74 28 29 2c 20 24 75 72 6c 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f t(),.$url);.}.}..private.functio
b8320 6e 20 69 73 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 46 61 69 6c 75 72 65 28 24 75 72 6c 2c 20 n.isAuthenticationFailure($url,.
b8340 26 24 6d 61 74 63 68 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 28 68 74 &$match).{.if.(!preg_match('{(ht
b8360 74 70 73 3f 3a 2f 2f 29 28 5b 5e 2f 5d 2b 29 28 2e 2a 29 24 7d 69 27 2c 20 24 75 72 6c 2c 20 24 tps?://)([^/]+)(.*)$}i',.$url,.$
b8380 6d 61 74 63 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 61 75 74 68 match)).{.return.false;.}..$auth
b83a0 46 61 69 6c 75 72 65 73 20 3d 20 61 72 72 61 79 28 27 66 61 74 61 6c 3a 20 41 75 74 68 65 6e 74 Failures.=.array('fatal:.Authent
b83c0 69 63 61 74 69 6f 6e 20 66 61 69 6c 65 64 27 2c 20 27 72 65 6d 6f 74 65 20 65 72 72 6f 72 3a 20 ication.failed',.'remote.error:.
b83e0 49 6e 76 61 6c 69 64 20 75 73 65 72 6e 61 6d 65 20 6f 72 20 70 61 73 73 77 6f 72 64 2e 27 29 3b Invalid.username.or.password.');
b8400 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 68 46 61 69 6c 75 72 65 73 20 61 73 20 24 61 75 74 68 .foreach.($authFailures.as.$auth
b8420 46 61 69 6c 75 72 65 29 20 7b 0a 69 66 20 28 73 74 72 70 6f 73 28 24 74 68 69 73 2d 3e 70 72 6f Failure).{.if.(strpos($this->pro
b8440 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 20 24 61 75 74 68 46 61 69 cess->getErrorOutput(),.$authFai
b8460 6c 75 72 65 29 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a lure).!==.false).{.return.true;.
b8480 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 }.}..return.false;.}..public.sta
b84a0 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 45 6e 76 28 29 0a 7b 0a 69 66 20 28 69 6e tic.function.cleanEnv().{.if.(in
b84c0 69 5f 67 65 74 28 27 73 61 66 65 5f 6d 6f 64 65 27 29 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 i_get('safe_mode').&&.false.===.
b84e0 73 74 72 70 6f 73 28 69 6e 69 5f 67 65 74 28 27 73 61 66 65 5f 6d 6f 64 65 5f 61 6c 6c 6f 77 65 strpos(ini_get('safe_mode_allowe
b8500 64 5f 65 6e 76 5f 76 61 72 73 27 29 2c 20 27 47 49 54 5f 41 53 4b 50 41 53 53 27 29 29 20 7b 0a d_env_vars'),.'GIT_ASKPASS')).{.
b8520 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 73 61 66 throw.new.\RuntimeException('saf
b8540 65 5f 6d 6f 64 65 20 69 73 20 65 6e 61 62 6c 65 64 20 61 6e 64 20 73 61 66 65 5f 6d 6f 64 65 5f e_mode.is.enabled.and.safe_mode_
b8560 61 6c 6c 6f 77 65 64 5f 65 6e 76 5f 76 61 72 73 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 allowed_env_vars.does.not.contai
b8580 6e 20 47 49 54 5f 41 53 4b 50 41 53 53 2c 20 63 61 6e 20 6e 6f 74 20 73 65 74 20 65 6e 76 20 76 n.GIT_ASKPASS,.can.not.set.env.v
b85a0 61 72 2e 20 59 6f 75 20 63 61 6e 20 64 69 73 61 62 6c 65 20 73 61 66 65 5f 6d 6f 64 65 20 77 69 ar..You.can.disable.safe_mode.wi
b85c0 74 68 20 22 2d 64 73 61 66 65 5f 6d 6f 64 65 3d 30 22 20 77 68 65 6e 20 72 75 6e 6e 69 6e 67 20 th."-dsafe_mode=0".when.running.
b85e0 63 6f 6d 70 6f 73 65 72 27 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 67 65 74 65 6e 76 28 27 47 49 54 composer');.}....if.(getenv('GIT
b8600 5f 41 53 4b 50 41 53 53 27 29 20 21 3d 3d 20 27 65 63 68 6f 27 29 20 7b 0a 70 75 74 65 6e 76 28 _ASKPASS').!==.'echo').{.putenv(
b8620 27 47 49 54 5f 41 53 4b 50 41 53 53 3d 65 63 68 6f 27 29 3b 0a 75 6e 73 65 74 28 24 5f 53 45 52 'GIT_ASKPASS=echo');.unset($_SER
b8640 56 45 52 5b 27 47 49 54 5f 41 53 4b 50 41 53 53 27 5d 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 67 65 VER['GIT_ASKPASS']);.}....if.(ge
b8660 74 65 6e 76 28 27 47 49 54 5f 44 49 52 27 29 29 20 7b 0a 70 75 74 65 6e 76 28 27 47 49 54 5f 44 tenv('GIT_DIR')).{.putenv('GIT_D
b8680 49 52 27 29 3b 0a 75 6e 73 65 74 28 24 5f 53 45 52 56 45 52 5b 27 47 49 54 5f 44 49 52 27 5d 29 IR');.unset($_SERVER['GIT_DIR'])
b86a0 3b 0a 7d 0a 69 66 20 28 67 65 74 65 6e 76 28 27 47 49 54 5f 57 4f 52 4b 5f 54 52 45 45 27 29 29 ;.}.if.(getenv('GIT_WORK_TREE'))
b86c0 20 7b 0a 70 75 74 65 6e 76 28 27 47 49 54 5f 57 4f 52 4b 5f 54 52 45 45 27 29 3b 0a 75 6e 73 65 .{.putenv('GIT_WORK_TREE');.unse
b86e0 74 28 24 5f 53 45 52 56 45 52 5b 27 47 49 54 5f 57 4f 52 4b 5f 54 52 45 45 27 5d 29 3b 0a 7d 0a t($_SERVER['GIT_WORK_TREE']);.}.
b8700 0a 0a 20 69 66 20 28 67 65 74 65 6e 76 28 27 4c 41 4e 47 55 41 47 45 27 29 20 21 3d 3d 20 27 43 ...if.(getenv('LANGUAGE').!==.'C
b8720 27 29 20 7b 0a 70 75 74 65 6e 76 28 27 4c 41 4e 47 55 41 47 45 3d 43 27 29 3b 0a 7d 0a 0a 0a 20 ').{.putenv('LANGUAGE=C');.}....
b8740 70 75 74 65 6e 76 28 22 44 59 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 22 29 3b 0a 75 6e 73 putenv("DYLD_LIBRARY_PATH");.uns
b8760 65 74 28 24 5f 53 45 52 56 45 52 5b 27 44 59 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 27 5d et($_SERVER['DYLD_LIBRARY_PATH']
b8780 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 );.}..public.static.function.get
b87a0 47 69 74 48 75 62 44 6f 6d 61 69 6e 73 52 65 67 65 78 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 GitHubDomainsRegex(Config.$confi
b87c0 67 29 0a 7b 0a 72 65 74 75 72 6e 20 27 28 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 61 72 72 g).{.return.'('.implode('|',.arr
b87e0 61 79 5f 6d 61 70 28 27 70 72 65 67 5f 71 75 6f 74 65 27 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 ay_map('preg_quote',.$config->ge
b8800 74 28 27 67 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 27 29 29 29 2e 27 29 27 3b 0a 7d 0a 0a 70 75 t('github-domains'))).')';.}..pu
b8820 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 61 6e 69 74 69 7a 65 55 72 6c blic.static.function.sanitizeUrl
b8840 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 ($message).{.return.preg_replace
b8860 28 27 7b 3a 2f 2f 28 5b 5e 40 5d 2b 3f 29 3a 2e 2b 3f 40 7d 27 2c 20 27 3a 2f 2f 24 31 3a 2a 2a ('{://([^@]+?):.+?@}',.'://$1:**
b8880 2a 40 27 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 *@',.$message);.}..private.funct
b88a0 69 6f 6e 20 74 68 72 6f 77 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2c 20 24 75 72 ion.throwException($message,.$ur
b88c0 6c 29 0a 7b 0a 0a 20 63 6c 65 61 72 73 74 61 74 63 61 63 68 65 28 29 3b 0a 0a 69 66 20 28 30 20 l).{...clearstatcache();..if.(0.
b88e0 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 !==.$this->process->execute('git
b8900 20 2d 2d 76 65 72 73 69 6f 6e 27 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b 0a .--version',.$ignoredOutput)).{.
b8920 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 throw.new.\RuntimeException('Fai
b8940 6c 65 64 20 74 6f 20 63 6c 6f 6e 65 20 27 2e 73 65 6c 66 3a 3a 73 61 6e 69 74 69 7a 65 55 72 6c led.to.clone.'.self::sanitizeUrl
b8960 28 24 75 72 6c 29 2e 27 2c 20 67 69 74 20 77 61 73 20 6e 6f 74 20 66 6f 75 6e 64 2c 20 63 68 65 ($url).',.git.was.not.found,.che
b8980 63 6b 20 74 68 61 74 20 69 74 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 20 61 6e 64 20 69 6e 20 79 ck.that.it.is.installed.and.in.y
b89a0 6f 75 72 20 50 41 54 48 20 65 6e 76 2e 27 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d our.PATH.env.'..."\n\n"...$this-
b89c0 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a >process->getErrorOutput());.}..
b89e0 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 throw.new.\RuntimeException($mes
b8a00 73 61 67 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 sage);.}.}.<?php............name
b8a20 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 space.Composer\Util;..use.Compos
b8a40 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e er\Factory;.use.Composer\IO\IOIn
b8a60 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 terface;.use.Composer\Config;.us
b8a80 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 e.Composer\Downloader\TransportE
b8aa0 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 48 75 62 0a 7b 0a 70 72 6f xception;.....class.GitHub.{.pro
b8ac0 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 70 tected.$io;.protected.$config;.p
b8ae0 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 rotected.$process;.protected.$re
b8b00 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 moteFilesystem;..........public.
b8b20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 function.__construct(IOInterface
b8b40 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 50 72 6f 63 65 73 73 45 78 65 .$io,.Config.$config,.ProcessExe
b8b60 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 2c 20 52 65 6d 6f 74 65 46 69 6c cutor.$process.=.null,.RemoteFil
b8b80 65 73 79 73 74 65 6d 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 75 6c 6c esystem.$remoteFilesystem.=.null
b8ba0 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 ).{.$this->io.=.$io;.$this->conf
b8bc0 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 ig.=.$config;.$this->process.=.$
b8be0 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a process.?:.new.ProcessExecutor;.
b8c00 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 72 65 6d 6f 74 $this->remoteFilesystem.=.$remot
b8c20 65 46 69 6c 65 73 79 73 74 65 6d 20 3f 3a 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 eFilesystem.?:.Factory::createRe
b8c40 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 63 6f 6e 66 69 moteFilesystem($this->io,.$confi
b8c60 67 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 g);.}........public.function.aut
b8c80 68 6f 72 69 7a 65 4f 41 75 74 68 28 24 6f 72 69 67 69 6e 55 72 6c 29 0a 7b 0a 69 66 20 28 21 69 horizeOAuth($originUrl).{.if.(!i
b8ca0 6e 5f 61 72 72 61 79 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 n_array($originUrl,.$this->confi
b8cc0 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 27 29 29 29 20 7b 0a 72 65 74 g->get('github-domains'))).{.ret
b8ce0 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d urn.false;.}....if.(0.===.$this-
b8d00 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 63 6f 6e 66 69 67 20 67 69 >process->execute('git.config.gi
b8d20 74 68 75 62 2e 61 63 63 65 73 73 74 6f 6b 65 6e 27 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a 24 thub.accesstoken',.$output)).{.$
b8d40 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6f 72 69 this->io->setAuthentication($ori
b8d60 67 69 6e 55 72 6c 2c 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 2c 20 27 78 2d 6f 61 75 74 68 2d ginUrl,.trim($output),.'x-oauth-
b8d80 62 61 73 69 63 27 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e basic');..return.true;.}..return
b8da0 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .false;.}...........public.funct
b8dc0 69 6f 6e 20 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 ion.authorizeOAuthInteractively(
b8de0 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 6d 65 73 73 61 67 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 $originUrl,.$message.=.null).{.i
b8e00 66 20 28 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 f.($message).{.$this->io->writeE
b8e20 72 72 6f 72 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 24 6e 6f 74 65 20 3d 20 27 43 6f 6d 70 rror($message);.}..$note.=.'Comp
b8e40 6f 73 65 72 27 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 oser';.if.($this->config->get('g
b8e60 69 74 68 75 62 2d 65 78 70 6f 73 65 2d 68 6f 73 74 6e 61 6d 65 27 29 20 3d 3d 3d 20 74 72 75 65 ithub-expose-hostname').===.true
b8e80 20 26 26 20 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 .&&.0.===.$this->process->execut
b8ea0 65 28 27 68 6f 73 74 6e 61 6d 65 27 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a 24 6e 6f 74 65 20 e('hostname',.$output)).{.$note.
b8ec0 2e 3d 20 27 20 6f 6e 20 27 20 2e 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 24 6e 6f .=.'.on.'...trim($output);.}.$no
b8ee0 74 65 20 2e 3d 20 27 20 27 20 2e 20 64 61 74 65 28 27 59 2d 6d 2d 64 20 48 69 27 29 3b 0a 0a 24 te..=.'.'...date('Y-m-d.Hi');..$
b8f00 75 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 27 2e 24 6f 72 69 67 69 6e 55 72 6c 2e 27 2f 73 65 url.=.'https://'.$originUrl.'/se
b8f20 74 74 69 6e 67 73 2f 74 6f 6b 65 6e 73 2f 6e 65 77 3f 73 63 6f 70 65 73 3d 72 65 70 6f 26 64 65 ttings/tokens/new?scopes=repo&de
b8f40 73 63 72 69 70 74 69 6f 6e 3d 27 20 2e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 25 32 30 27 2c scription='...str_replace('%20',
b8f60 20 27 2b 27 2c 20 72 61 77 75 72 6c 65 6e 63 6f 64 65 28 24 6e 6f 74 65 29 29 3b 0a 24 74 68 69 .'+',.rawurlencode($note));.$thi
b8f80 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 48 65 61 64 20 s->io->writeError(sprintf('Head.
b8fa0 74 6f 20 25 73 27 2c 20 24 75 72 6c 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 to.%s',.$url));.$this->io->write
b8fc0 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 74 6f 20 72 65 74 72 69 65 76 65 20 61 20 74 6f 6b Error(sprintf('to.retrieve.a.tok
b8fe0 65 6e 2e 20 49 74 20 77 69 6c 6c 20 62 65 20 73 74 6f 72 65 64 20 69 6e 20 22 25 73 22 20 66 6f en..It.will.be.stored.in."%s".fo
b9000 72 20 66 75 74 75 72 65 20 75 73 65 20 62 79 20 43 6f 6d 70 6f 73 65 72 2e 27 2c 20 24 74 68 69 r.future.use.by.Composer.',.$thi
b9020 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 41 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 29 s->config->getAuthConfigSource()
b9040 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 0a 24 74 6f 6b 65 6e 20 3d 20 74 72 69 6d 28 24 74 ->getName()));..$token.=.trim($t
b9060 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 27 54 6f 6b 65 6e his->io->askAndHideAnswer('Token
b9080 20 28 68 69 64 64 65 6e 29 3a 20 27 29 29 3b 0a 0a 69 66 20 28 21 24 74 6f 6b 65 6e 29 20 7b 0a .(hidden):.'));..if.(!$token).{.
b90a0 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e $this->io->writeError('<warning>
b90c0 4e 6f 20 74 6f 6b 65 6e 20 67 69 76 65 6e 2c 20 61 62 6f 72 74 69 6e 67 2e 3c 2f 77 61 72 6e 69 No.token.given,.aborting.</warni
b90e0 6e 67 3e 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 59 6f ng>');.$this->io->writeError('Yo
b9100 75 20 63 61 6e 20 61 6c 73 6f 20 61 64 64 20 69 74 20 6d 61 6e 75 61 6c 6c 79 20 6c 61 74 65 72 u.can.also.add.it.manually.later
b9120 20 62 79 20 75 73 69 6e 67 20 22 63 6f 6d 70 6f 73 65 72 20 63 6f 6e 66 69 67 20 67 69 74 68 75 .by.using."composer.config.githu
b9140 62 2d 6f 61 75 74 68 2e 67 69 74 68 75 62 2e 63 6f 6d 20 3c 74 6f 6b 65 6e 3e 22 27 29 3b 0a 0a b-oauth.github.com.<token>"');..
b9160 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 74 41 return.false;.}..$this->io->setA
b9180 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 6f 6b 65 6e uthentication($originUrl,.$token
b91a0 2c 20 27 78 2d 6f 61 75 74 68 2d 62 61 73 69 63 27 29 3b 0a 0a 74 72 79 20 7b 0a 24 61 70 69 55 ,.'x-oauth-basic');..try.{.$apiU
b91c0 72 6c 20 3d 20 28 27 67 69 74 68 75 62 2e 63 6f 6d 27 20 3d 3d 3d 20 24 6f 72 69 67 69 6e 55 72 rl.=.('github.com'.===.$originUr
b91e0 6c 29 20 3f 20 27 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 27 20 3a 20 24 6f 72 69 67 69 6e l).?.'api.github.com/'.:.$origin
b9200 55 72 6c 20 2e 20 27 2f 61 70 69 2f 76 33 2f 27 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 Url...'/api/v3/';..$this->remote
b9220 46 69 6c 65 73 79 73 74 65 6d 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 6f 72 69 67 69 6e 55 Filesystem->getContents($originU
b9240 72 6c 2c 20 27 68 74 74 70 73 3a 2f 2f 27 2e 20 24 61 70 69 55 72 6c 2c 20 66 61 6c 73 65 2c 20 rl,.'https://'..$apiUrl,.false,.
b9260 61 72 72 61 79 28 0a 27 72 65 74 72 79 2d 61 75 74 68 2d 66 61 69 6c 75 72 65 27 20 3d 3e 20 66 array(.'retry-auth-failure'.=>.f
b9280 61 6c 73 65 2c 0a 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 alse,.));.}.catch.(TransportExce
b92a0 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 65 2d 3e 67 65 74 ption.$e).{.if.(in_array($e->get
b92c0 43 6f 64 65 28 29 2c 20 61 72 72 61 79 28 34 30 33 2c 20 34 30 31 29 29 29 20 7b 0a 24 74 68 69 Code(),.array(403,.401))).{.$thi
b92e0 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 49 6e 76 61 6c 69 s->io->writeError('<error>Invali
b9300 64 20 74 6f 6b 65 6e 20 70 72 6f 76 69 64 65 64 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 74 68 d.token.provided.</error>');.$th
b9320 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 59 6f 75 20 63 61 6e 20 61 6c 73 6f is->io->writeError('You.can.also
b9340 20 61 64 64 20 69 74 20 6d 61 6e 75 61 6c 6c 79 20 6c 61 74 65 72 20 62 79 20 75 73 69 6e 67 20 .add.it.manually.later.by.using.
b9360 22 63 6f 6d 70 6f 73 65 72 20 63 6f 6e 66 69 67 20 67 69 74 68 75 62 2d 6f 61 75 74 68 2e 67 69 "composer.config.github-oauth.gi
b9380 74 68 75 62 2e 63 6f 6d 20 3c 74 6f 6b 65 6e 3e 22 27 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c thub.com.<token>"');..return.fal
b93a0 73 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 63 6f 6e se;.}..throw.$e;.}....$this->con
b93c0 66 69 67 2d 3e 67 65 74 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 29 2d 3e 72 65 6d 6f 76 65 43 6f fig->getConfigSource()->removeCo
b93e0 6e 66 69 67 53 65 74 74 69 6e 67 28 27 67 69 74 68 75 62 2d 6f 61 75 74 68 2e 27 2e 24 6f 72 69 nfigSetting('github-oauth.'.$ori
b9400 67 69 6e 55 72 6c 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 41 75 74 68 43 ginUrl);.$this->config->getAuthC
b9420 6f 6e 66 69 67 53 6f 75 72 63 65 28 29 2d 3e 61 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 onfigSource()->addConfigSetting(
b9440 27 67 69 74 68 75 62 2d 6f 61 75 74 68 2e 27 2e 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 6f 6b 'github-oauth.'.$originUrl,.$tok
b9460 65 6e 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e en);..$this->io->writeError('<in
b9480 66 6f 3e 54 6f 6b 65 6e 20 73 74 6f 72 65 64 20 73 75 63 63 65 73 73 66 75 6c 6c 79 2e 3c 2f 69 fo>Token.stored.successfully.</i
b94a0 6e 66 6f 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a nfo>');..return.true;.}.}.<?php.
b94c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 ...........namespace.Composer\Ut
b94e0 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 il;..use.Composer\IO\IOInterface
b9500 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f ;.use.Composer\Config;.use.Compo
b9520 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f ser\Factory;.use.Composer\Downlo
b9540 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d ader\TransportException;.use.Com
b9560 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 poser\Json\JsonFile;.....class.G
b9580 69 74 4c 61 62 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 itLab.{.protected.$io;.protected
b95a0 20 24 63 6f 6e 66 69 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 .$config;.protected.$process;.pr
b95c0 6f 74 65 63 74 65 64 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a otected.$remoteFilesystem;......
b95e0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 ....public.function.__construct(
b9600 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c IOInterface.$io,.Config.$config,
b9620 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c .ProcessExecutor.$process.=.null
b9640 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 ,.RemoteFilesystem.$remoteFilesy
b9660 73 74 65 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a stem.=.null).{.$this->io.=.$io;.
b9680 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e $this->config.=.$config;.$this->
b96a0 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 process.=.$process.?:.new.Proces
b96c0 73 45 78 65 63 75 74 6f 72 28 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 sExecutor();.$this->remoteFilesy
b96e0 73 74 65 6d 20 3d 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3f 3a 20 46 61 63 74 stem.=.$remoteFilesystem.?:.Fact
b9700 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 74 68 69 ory::createRemoteFilesystem($thi
b9720 73 2d 3e 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 s->io,.$config);.}.........publi
b9740 63 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 28 24 6f 72 69 67 69 c.function.authorizeOAuth($origi
b9760 6e 55 72 6c 29 0a 7b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 6f 72 69 67 69 6e 55 72 6c nUrl).{.if.(!in_array($originUrl
b9780 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 6c 61 62 2d 64 6f 6d ,.$this->config->get('gitlab-dom
b97a0 61 69 6e 73 27 29 2c 20 74 72 75 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d ains'),.true)).{.return.false;.}
b97c0 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 ....if.(0.===.$this->process->ex
b97e0 65 63 75 74 65 28 27 67 69 74 20 63 6f 6e 66 69 67 20 67 69 74 6c 61 62 2e 61 63 63 65 73 73 74 ecute('git.config.gitlab.accesst
b9800 6f 6b 65 6e 27 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 oken',.$output)).{.$this->io->se
b9820 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 74 72 69 6d tAuthentication($originUrl,.trim
b9840 28 24 6f 75 74 70 75 74 29 2c 20 27 6f 61 75 74 68 32 27 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 ($output),.'oauth2');..return.tr
b9860 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ue;.}..return.false;.}..........
b9880 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 ...public.function.authorizeOAut
b98a0 68 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 24 73 63 68 65 6d 65 2c 20 24 6f 72 69 67 69 6e 55 hInteractively($scheme,.$originU
b98c0 72 6c 2c 20 24 6d 65 73 73 61 67 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 6d 65 73 73 rl,.$message.=.null).{.if.($mess
b98e0 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 age).{.$this->io->writeError($me
b9900 73 73 61 67 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 ssage);.}..$this->io->writeError
b9920 28 73 70 72 69 6e 74 66 28 27 41 20 74 6f 6b 65 6e 20 77 69 6c 6c 20 62 65 20 63 72 65 61 74 65 (sprintf('A.token.will.be.create
b9940 64 20 61 6e 64 20 73 74 6f 72 65 64 20 69 6e 20 22 25 73 22 2c 20 79 6f 75 72 20 70 61 73 73 77 d.and.stored.in."%s",.your.passw
b9960 6f 72 64 20 77 69 6c 6c 20 6e 65 76 65 72 20 62 65 20 73 74 6f 72 65 64 27 2c 20 24 74 68 69 73 ord.will.never.be.stored',.$this
b9980 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 41 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 29 2d ->config->getAuthConfigSource()-
b99a0 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 >getName()));.$this->io->writeEr
b99c0 72 6f 72 28 27 54 6f 20 72 65 76 6f 6b 65 20 61 63 63 65 73 73 20 74 6f 20 74 68 69 73 20 74 6f ror('To.revoke.access.to.this.to
b99e0 6b 65 6e 20 79 6f 75 20 63 61 6e 20 76 69 73 69 74 20 27 2e 24 6f 72 69 67 69 6e 55 72 6c 2e 27 ken.you.can.visit.'.$originUrl.'
b9a00 2f 70 72 6f 66 69 6c 65 2f 61 70 70 6c 69 63 61 74 69 6f 6e 73 27 29 3b 0a 0a 24 61 74 74 65 6d /profile/applications');..$attem
b9a20 70 74 43 6f 75 6e 74 65 72 20 3d 20 30 3b 0a 0a 77 68 69 6c 65 20 28 24 61 74 74 65 6d 70 74 43 ptCounter.=.0;..while.($attemptC
b9a40 6f 75 6e 74 65 72 2b 2b 20 3c 20 35 29 20 7b 0a 74 72 79 20 7b 0a 24 72 65 73 70 6f 6e 73 65 20 ounter++.<.5).{.try.{.$response.
b9a60 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 54 6f 6b 65 6e 28 24 73 63 68 65 6d 65 2c 20 24 6f =.$this->createToken($scheme,.$o
b9a80 72 69 67 69 6e 55 72 6c 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 riginUrl);.}.catch.(TransportExc
b9aa0 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 0a 20 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 65 eption.$e).{.....if.(in_array($e
b9ac0 2d 3e 67 65 74 43 6f 64 65 28 29 2c 20 61 72 72 61 79 28 34 30 33 2c 20 34 30 31 29 29 29 20 7b ->getCode(),.array(403,.401))).{
b9ae0 0a 69 66 20 28 34 30 31 20 3d 3d 3d 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 29 20 7b 0a 24 74 .if.(401.===.$e->getCode()).{.$t
b9b00 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 42 61 64 20 63 72 65 64 65 6e 74 his->io->writeError('Bad.credent
b9b20 69 61 6c 73 2e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 ials.');.}.else.{.$this->io->wri
b9b40 74 65 45 72 72 6f 72 28 27 4d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 6c 6f 67 69 6e teError('Maximum.number.of.login
b9b60 20 61 74 74 65 6d 70 74 73 20 65 78 63 65 65 64 65 64 2e 20 50 6c 65 61 73 65 20 74 72 79 20 61 .attempts.exceeded..Please.try.a
b9b80 67 61 69 6e 20 6c 61 74 65 72 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 gain.later.');.}..$this->io->wri
b9ba0 74 65 45 72 72 6f 72 28 27 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 6d 61 6e 75 61 6c 6c 79 20 63 teError('You.can.also.manually.c
b9bc0 72 65 61 74 65 20 61 20 70 65 72 73 6f 6e 61 6c 20 74 6f 6b 65 6e 20 61 74 20 27 2e 24 73 63 68 reate.a.personal.token.at.'.$sch
b9be0 65 6d 65 2e 27 3a 2f 2f 27 2e 24 6f 72 69 67 69 6e 55 72 6c 2e 27 2f 70 72 6f 66 69 6c 65 2f 61 eme.'://'.$originUrl.'/profile/a
b9c00 70 70 6c 69 63 61 74 69 6f 6e 73 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 pplications');.$this->io->writeE
b9c20 72 72 6f 72 28 27 41 64 64 20 69 74 20 75 73 69 6e 67 20 22 63 6f 6d 70 6f 73 65 72 20 63 6f 6e rror('Add.it.using."composer.con
b9c40 66 69 67 20 67 69 74 6c 61 62 2d 6f 61 75 74 68 2e 27 2e 24 6f 72 69 67 69 6e 55 72 6c 2e 27 20 fig.gitlab-oauth.'.$originUrl.'.
b9c60 3c 74 6f 6b 65 6e 3e 22 27 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 <token>"');..continue;.}..throw.
b9c80 24 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 $e;.}..$this->io->setAuthenticat
b9ca0 69 6f 6e 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 72 65 73 70 6f 6e 73 65 5b 27 61 63 63 65 73 ion($originUrl,.$response['acces
b9cc0 73 5f 74 6f 6b 65 6e 27 5d 2c 20 27 6f 61 75 74 68 32 27 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e s_token'],.'oauth2');....$this->
b9ce0 63 6f 6e 66 69 67 2d 3e 67 65 74 41 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 29 2d 3e 61 config->getAuthConfigSource()->a
b9d00 64 64 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 27 67 69 74 6c 61 62 2d 6f 61 75 74 68 2e 27 2e ddConfigSetting('gitlab-oauth.'.
b9d20 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 72 65 73 70 6f 6e 73 65 5b 27 61 63 63 65 73 73 5f 74 6f $originUrl,.$response['access_to
b9d40 6b 65 6e 27 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e ken']);..return.true;.}..throw.n
b9d60 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 47 69 ew.\RuntimeException('Invalid.Gi
b9d80 74 4c 61 62 20 63 72 65 64 65 6e 74 69 61 6c 73 20 35 20 74 69 6d 65 73 20 69 6e 20 61 20 72 6f tLab.credentials.5.times.in.a.ro
b9da0 77 2c 20 61 62 6f 72 74 69 6e 67 2e 27 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 w,.aborting.');.}..private.funct
b9dc0 69 6f 6e 20 63 72 65 61 74 65 54 6f 6b 65 6e 28 24 73 63 68 65 6d 65 2c 20 24 6f 72 69 67 69 6e ion.createToken($scheme,.$origin
b9de0 55 72 6c 29 0a 7b 0a 24 75 73 65 72 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 Url).{.$username.=.$this->io->as
b9e00 6b 28 27 55 73 65 72 6e 61 6d 65 3a 20 27 29 3b 0a 24 70 61 73 73 77 6f 72 64 20 3d 20 24 74 68 k('Username:.');.$password.=.$th
b9e20 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 27 50 61 73 73 77 6f is->io->askAndHideAnswer('Passwo
b9e40 72 64 3a 20 27 29 3b 0a 0a 24 68 65 61 64 65 72 73 20 3d 20 61 72 72 61 79 28 27 43 6f 6e 74 65 rd:.');..$headers.=.array('Conte
b9e60 6e 74 2d 54 79 70 65 3a 20 61 70 70 6c 69 63 61 74 69 6f 6e 2f 78 2d 77 77 77 2d 66 6f 72 6d 2d nt-Type:.application/x-www-form-
b9e80 75 72 6c 65 6e 63 6f 64 65 64 27 29 3b 0a 0a 24 61 70 69 55 72 6c 20 3d 20 24 6f 72 69 67 69 6e urlencoded');..$apiUrl.=.$origin
b9ea0 55 72 6c 3b 0a 24 64 61 74 61 20 3d 20 68 74 74 70 5f 62 75 69 6c 64 5f 71 75 65 72 79 28 61 72 Url;.$data.=.http_build_query(ar
b9ec0 72 61 79 28 0a 27 75 73 65 72 6e 61 6d 65 27 20 3d 3e 20 24 75 73 65 72 6e 61 6d 65 2c 0a 27 70 ray(.'username'.=>.$username,.'p
b9ee0 61 73 73 77 6f 72 64 27 20 3d 3e 20 24 70 61 73 73 77 6f 72 64 2c 0a 27 67 72 61 6e 74 5f 74 79 assword'.=>.$password,.'grant_ty
b9f00 70 65 27 20 3d 3e 20 27 70 61 73 73 77 6f 72 64 27 2c 0a 29 29 3b 0a 24 6f 70 74 69 6f 6e 73 20 pe'.=>.'password',.));.$options.
b9f20 3d 20 61 72 72 61 79 28 0a 27 72 65 74 72 79 2d 61 75 74 68 2d 66 61 69 6c 75 72 65 27 20 3d 3e =.array(.'retry-auth-failure'.=>
b9f40 20 66 61 6c 73 65 2c 0a 27 68 74 74 70 27 20 3d 3e 20 61 72 72 61 79 28 0a 27 6d 65 74 68 6f 64 .false,.'http'.=>.array(.'method
b9f60 27 20 3d 3e 20 27 50 4f 53 54 27 2c 0a 27 68 65 61 64 65 72 27 20 3d 3e 20 24 68 65 61 64 65 72 '.=>.'POST',.'header'.=>.$header
b9f80 73 2c 0a 27 63 6f 6e 74 65 6e 74 27 20 3d 3e 20 24 64 61 74 61 2c 0a 29 2c 0a 29 3b 0a 0a 24 6a s,.'content'.=>.$data,.),.);..$j
b9fa0 73 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 2d 3e 67 son.=.$this->remoteFilesystem->g
b9fc0 65 74 43 6f 6e 74 65 6e 74 73 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 73 63 68 65 6d 65 2e 27 etContents($originUrl,.$scheme.'
b9fe0 3a 2f 2f 27 2e 24 61 70 69 55 72 6c 2e 27 2f 6f 61 75 74 68 2f 74 6f 6b 65 6e 27 2c 20 66 61 6c ://'.$apiUrl.'/oauth/token',.fal
ba000 73 65 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 se,.$options);..$this->io->write
ba020 45 72 72 6f 72 28 27 54 6f 6b 65 6e 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 63 72 65 61 74 65 Error('Token.successfully.create
ba040 64 27 29 3b 0a 0a 72 65 74 75 72 6e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e d');..return.JsonFile::parseJson
ba060 28 24 6a 73 6f 6e 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 ($json);.}.}.<?php............na
ba080 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 mespace.Composer\Util;.....class
ba0a0 20 4e 6f 50 72 6f 78 79 50 61 74 74 65 72 6e 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 .NoProxyPattern.{....protected.$
ba0c0 72 75 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 rules.=.array();.....public.func
ba0e0 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 tion.__construct($pattern).{.$th
ba100 69 73 2d 3e 72 75 6c 65 73 20 3d 20 70 72 65 67 5f 73 70 6c 69 74 28 22 2f 5b 5c 73 2c 5d 2b 2f is->rules.=.preg_split("/[\s,]+/
ba120 22 2c 20 24 70 61 74 74 65 72 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ",.$pattern);.}.........public.f
ba140 75 6e 63 74 69 6f 6e 20 74 65 73 74 28 24 75 72 6c 29 0a 7b 0a 24 68 6f 73 74 20 3d 20 70 61 72 unction.test($url).{.$host.=.par
ba160 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 24 70 6f 72 se_url($url,.PHP_URL_HOST);.$por
ba180 74 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 50 4f 52 54 t.=.parse_url($url,.PHP_URL_PORT
ba1a0 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 70 6f 72 74 29 29 20 7b 0a 73 77 69 74 63 68 20 28 );..if.(empty($port)).{.switch.(
ba1c0 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 53 43 48 45 4d 45 29 29 parse_url($url,.PHP_URL_SCHEME))
ba1e0 20 7b 0a 63 61 73 65 20 27 68 74 74 70 27 3a 0a 24 70 6f 72 74 20 3d 20 38 30 3b 0a 62 72 65 61 .{.case.'http':.$port.=.80;.brea
ba200 6b 3b 0a 63 61 73 65 20 27 68 74 74 70 73 27 3a 0a 24 70 6f 72 74 20 3d 20 34 34 33 3b 0a 62 72 k;.case.'https':.$port.=.443;.br
ba220 65 61 6b 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 eak;.}.}..foreach.($this->rules.
ba240 61 73 20 24 72 75 6c 65 29 20 7b 0a 69 66 20 28 24 72 75 6c 65 20 3d 3d 20 27 2a 27 29 20 7b 0a as.$rule).{.if.($rule.==.'*').{.
ba260 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 6d 61 74 63 68 20 3d 20 66 61 6c 73 65 3b 0a return.true;.}..$match.=.false;.
ba280 0a 6c 69 73 74 28 24 72 75 6c 65 48 6f 73 74 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 .list($ruleHost).=.explode(':',.
ba2a0 24 72 75 6c 65 29 3b 0a 6c 69 73 74 28 24 62 61 73 65 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 2f $rule);.list($base).=.explode('/
ba2c0 27 2c 20 24 72 75 6c 65 48 6f 73 74 29 3b 0a 0a 69 66 20 28 66 69 6c 74 65 72 5f 76 61 72 28 24 ',.$ruleHost);..if.(filter_var($
ba2e0 62 61 73 65 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 49 50 2c 20 46 49 4c 54 45 52 base,.FILTER_VALIDATE_IP,.FILTER
ba300 5f 46 4c 41 47 5f 49 50 56 34 29 29 20 7b 0a 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 69 70 29 _FLAG_IPV4)).{...if.(!isset($ip)
ba320 29 20 7b 0a 24 69 70 20 3d 20 67 65 74 68 6f 73 74 62 79 6e 61 6d 65 28 24 68 6f 73 74 29 3b 0a ).{.$ip.=.gethostbyname($host);.
ba340 7d 0a 0a 69 66 20 28 73 74 72 70 6f 73 28 24 72 75 6c 65 48 6f 73 74 2c 20 27 2f 27 29 20 3d 3d }..if.(strpos($ruleHost,.'/').==
ba360 3d 20 66 61 6c 73 65 29 20 7b 0a 24 6d 61 74 63 68 20 3d 20 24 69 70 20 3d 3d 3d 20 24 72 75 6c =.false).{.$match.=.$ip.===.$rul
ba380 65 48 6f 73 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 0a 20 69 66 20 28 24 69 70 20 3d 3d 3d 20 eHost;.}.else.{.....if.($ip.===.
ba3a0 24 68 6f 73 74 29 20 7b 0a 24 6d 61 74 63 68 20 3d 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 20 $host).{.$match.=.false;.}.else.
ba3c0 7b 0a 0a 20 24 6d 61 74 63 68 20 3d 20 73 65 6c 66 3a 3a 69 6e 43 49 44 52 42 6c 6f 63 6b 28 24 {...$match.=.self::inCIDRBlock($
ba3e0 72 75 6c 65 48 6f 73 74 2c 20 24 69 70 29 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 0a 24 ruleHost,.$ip);.}.}.}.else.{...$
ba400 68 61 79 73 74 61 63 6b 20 3d 20 27 2e 27 20 2e 20 74 72 69 6d 28 24 68 6f 73 74 2c 20 27 2e 27 haystack.=.'.'...trim($host,.'.'
ba420 29 20 2e 20 27 2e 27 3b 0a 24 6e 65 65 64 6c 65 20 3d 20 27 2e 27 2e 20 74 72 69 6d 28 24 72 75 )...'.';.$needle.=.'.'..trim($ru
ba440 6c 65 48 6f 73 74 2c 20 27 2e 27 29 20 2e 27 2e 27 3b 0a 24 6d 61 74 63 68 20 3d 20 73 74 72 69 leHost,.'.')..'.';.$match.=.stri
ba460 70 6f 73 28 73 74 72 72 65 76 28 24 68 61 79 73 74 61 63 6b 29 2c 20 73 74 72 72 65 76 28 24 6e pos(strrev($haystack),.strrev($n
ba480 65 65 64 6c 65 29 29 20 3d 3d 3d 20 30 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 6d 61 74 63 68 20 26 eedle)).===.0;.}....if.($match.&
ba4a0 26 20 73 74 72 70 6f 73 28 24 72 75 6c 65 2c 20 27 3a 27 29 20 21 3d 3d 20 66 61 6c 73 65 29 20 &.strpos($rule,.':').!==.false).
ba4c0 7b 0a 6c 69 73 74 28 2c 20 24 72 75 6c 65 50 6f 72 74 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a {.list(,.$rulePort).=.explode(':
ba4e0 27 2c 20 24 72 75 6c 65 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 72 75 6c 65 50 6f 72 74 29 ',.$rule);.if.(!empty($rulePort)
ba500 20 26 26 20 24 70 6f 72 74 20 21 3d 20 24 72 75 6c 65 50 6f 72 74 29 20 7b 0a 24 6d 61 74 63 68 .&&.$port.!=.$rulePort).{.$match
ba520 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6d 61 74 63 68 29 20 7b 0a 72 65 74 .=.false;.}.}..if.($match).{.ret
ba540 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a urn.true;.}.}..return.false;.}..
ba560 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f ..........private.static.functio
ba580 6e 20 69 6e 43 49 44 52 42 6c 6f 63 6b 28 24 63 69 64 72 2c 20 24 69 70 29 0a 7b 0a 0a 20 6c 69 n.inCIDRBlock($cidr,.$ip).{...li
ba5a0 73 74 28 24 62 61 73 65 2c 20 24 62 69 74 73 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 st($base,.$bits).=.explode('/',.
ba5c0 24 63 69 64 72 29 3b 0a 0a 0a 20 6c 69 73 74 28 24 61 2c 20 24 62 2c 20 24 63 2c 20 24 64 29 20 $cidr);....list($a,.$b,.$c,.$d).
ba5e0 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 62 61 73 65 29 3b 0a 0a 0a 20 24 69 20 3d 20 28 =.explode('.',.$base);....$i.=.(
ba600 24 61 20 3c 3c 20 32 34 29 20 2b 20 28 24 62 20 3c 3c 20 31 36 29 20 2b 20 28 24 63 20 3c 3c 20 $a.<<.24).+.($b.<<.16).+.($c.<<.
ba620 38 29 20 2b 20 24 64 3b 0a 24 6d 61 73 6b 20 3d 20 24 62 69 74 73 20 3d 3d 20 30 20 3f 20 30 20 8).+.$d;.$mask.=.$bits.==.0.?.0.
ba640 3a 20 28 7e 30 20 3c 3c 20 28 33 32 20 2d 20 24 62 69 74 73 29 29 3b 0a 0a 0a 20 24 6c 6f 77 20 :.(~0.<<.(32.-.$bits));....$low.
ba660 3d 20 24 69 20 26 20 24 6d 61 73 6b 3b 0a 0a 0a 20 24 68 69 67 68 20 3d 20 24 69 20 7c 20 28 7e =.$i.&.$mask;....$high.=.$i.|.(~
ba680 24 6d 61 73 6b 20 26 20 30 78 46 46 46 46 46 46 46 46 29 3b 0a 0a 0a 20 6c 69 73 74 28 24 61 2c $mask.&.0xFFFFFFFF);....list($a,
ba6a0 20 24 62 2c 20 24 63 2c 20 24 64 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 2c 20 24 69 70 29 .$b,.$c,.$d).=.explode('.',.$ip)
ba6c0 3b 0a 0a 0a 20 24 63 68 65 63 6b 20 3d 20 28 24 61 20 3c 3c 20 32 34 29 20 2b 20 28 24 62 20 3c ;....$check.=.($a.<<.24).+.($b.<
ba6e0 3c 20 31 36 29 20 2b 20 28 24 63 20 3c 3c 20 38 29 20 2b 20 24 64 3b 0a 0a 0a 20 0a 20 72 65 74 <.16).+.($c.<<.8).+.$d;......ret
ba700 75 72 6e 20 24 63 68 65 63 6b 20 3e 3d 20 24 6c 6f 77 20 26 26 20 24 63 68 65 63 6b 20 3c 3d 20 urn.$check.>=.$low.&&.$check.<=.
ba720 24 68 69 67 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 $high;.}.}.<?php............name
ba740 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 space.Composer\Util;..use.Compos
ba760 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 er\IO\IOInterface;.use.Symfony\C
ba780 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 63 6c omponent\Process\Process;.....cl
ba7a0 61 73 73 20 50 65 72 66 6f 72 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 74 68 3b 0a ass.Perforce.{.protected.$path;.
ba7c0 70 72 6f 74 65 63 74 65 64 20 24 70 34 44 65 70 6f 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 protected.$p4Depot;.protected.$p
ba7e0 34 43 6c 69 65 6e 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 34 55 73 65 72 3b 0a 70 72 6f 74 4Client;.protected.$p4User;.prot
ba800 65 63 74 65 64 20 24 70 34 50 61 73 73 77 6f 72 64 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 34 ected.$p4Password;.protected.$p4
ba820 50 6f 72 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 34 53 74 72 65 61 6d 3b 0a 70 72 6f 74 65 Port;.protected.$p4Stream;.prote
ba840 63 74 65 64 20 24 70 34 43 6c 69 65 6e 74 53 70 65 63 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 cted.$p4ClientSpec;.protected.$p
ba860 34 44 65 70 6f 74 54 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 34 42 72 61 6e 63 68 3b 4DepotType;.protected.$p4Branch;
ba880 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 .protected.$process;.protected.$
ba8a0 75 6e 69 71 75 65 50 65 72 66 6f 72 63 65 43 6c 69 65 6e 74 4e 61 6d 65 3b 0a 70 72 6f 74 65 63 uniquePerforceClientName;.protec
ba8c0 74 65 64 20 24 77 69 6e 64 6f 77 73 46 6c 61 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6d ted.$windowsFlag;.protected.$com
ba8e0 6d 61 6e 64 52 65 73 75 6c 74 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 70 72 6f mandResult;..protected.$io;..pro
ba900 74 65 63 74 65 64 20 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 tected.$filesystem;..public.func
ba920 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 24 70 tion.__construct($repoConfig,.$p
ba940 6f 72 74 2c 20 24 70 61 74 68 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f ort,.$path,.ProcessExecutor.$pro
ba960 63 65 73 73 2c 20 24 69 73 57 69 6e 64 6f 77 73 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 cess,.$isWindows,.IOInterface.$i
ba980 6f 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 69 6e 64 6f 77 73 46 6c 61 67 20 3d 20 24 69 73 57 69 6e o).{.$this->windowsFlag.=.$isWin
ba9a0 64 6f 77 73 3b 0a 24 74 68 69 73 2d 3e 70 34 50 6f 72 74 20 3d 20 24 70 6f 72 74 3b 0a 24 74 68 dows;.$this->p4Port.=.$port;.$th
ba9c0 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 24 74 68 69 73 is->initializePath($path);.$this
ba9e0 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 3b 0a 24 74 68 69 73 2d 3e 69 6e 69 ->process.=.$process;.$this->ini
baa00 74 69 61 6c 69 7a 65 28 24 72 65 70 6f 43 6f 6e 66 69 67 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 tialize($repoConfig);.$this->io.
baa20 3d 20 24 69 6f 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e =.$io;.}..public.static.function
baa40 20 63 72 65 61 74 65 28 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 24 70 6f 72 74 2c 20 24 70 61 74 .create($repoConfig,.$port,.$pat
baa60 68 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 2c 20 49 4f 49 h,.ProcessExecutor.$process,.IOI
baa80 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 65 72 66 6f nterface.$io).{.return.new.Perfo
baaa0 72 63 65 28 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 24 70 6f 72 74 2c 20 24 70 61 74 68 2c 20 24 rce($repoConfig,.$port,.$path,.$
baac0 70 72 6f 63 65 73 73 2c 20 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 2c 20 process,.Platform::isWindows(),.
baae0 24 69 6f 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 $io);.}..public.static.function.
bab00 63 68 65 63 6b 53 65 72 76 65 72 45 78 69 73 74 73 28 24 75 72 6c 2c 20 50 72 6f 63 65 73 73 45 checkServerExists($url,.ProcessE
bab20 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 29 0a 7b 0a 24 6f 75 74 xecutor.$processExecutor).{.$out
bab40 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 20 30 20 3d 3d 3d 20 24 70 72 6f 63 65 put.=.null;..return.0.===.$proce
bab60 73 73 45 78 65 63 75 74 6f 72 2d 3e 65 78 65 63 75 74 65 28 27 70 34 20 2d 70 20 27 20 2e 20 24 ssExecutor->execute('p4.-p.'...$
bab80 75 72 6c 20 2e 20 27 20 69 6e 66 6f 20 2d 73 27 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 70 url...'.info.-s',.$output);.}..p
baba0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 24 72 65 70 6f 43 ublic.function.initialize($repoC
babc0 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 6e 69 71 75 65 50 65 72 66 6f 72 63 65 43 6c onfig).{.$this->uniquePerforceCl
babe0 69 65 6e 74 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 55 6e 69 71 75 65 ientName.=.$this->generateUnique
bac00 50 65 72 66 6f 72 63 65 43 6c 69 65 6e 74 4e 61 6d 65 28 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d PerforceClientName();.if.(null.=
bac20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 69 66 20 28 69 =.$repoConfig).{.return;.}.if.(i
bac40 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 6e 69 71 75 65 5f 70 65 72 66 6f 72 63 sset($repoConfig['unique_perforc
bac60 65 5f 63 6c 69 65 6e 74 5f 6e 61 6d 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 75 6e 69 71 75 e_client_name'])).{.$this->uniqu
bac80 65 50 65 72 66 6f 72 63 65 43 6c 69 65 6e 74 4e 61 6d 65 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 ePerforceClientName.=.$repoConfi
baca0 67 5b 27 75 6e 69 71 75 65 5f 70 65 72 66 6f 72 63 65 5f 63 6c 69 65 6e 74 5f 6e 61 6d 65 27 5d g['unique_perforce_client_name']
bacc0 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 64 65 70 6f ;.}..if.(isset($repoConfig['depo
bace0 74 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 34 44 65 70 6f 74 20 3d 20 24 72 65 70 6f 43 6f t'])).{.$this->p4Depot.=.$repoCo
bad00 6e 66 69 67 5b 27 64 65 70 6f 74 27 5d 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6f nfig['depot'];.}.if.(isset($repo
bad20 43 6f 6e 66 69 67 5b 27 62 72 61 6e 63 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 34 42 72 Config['branch'])).{.$this->p4Br
bad40 61 6e 63 68 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 62 72 61 6e 63 68 27 5d 3b 0a 7d 0a anch.=.$repoConfig['branch'];.}.
bad60 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 70 34 75 73 65 72 27 5d 29 if.(isset($repoConfig['p4user'])
bad80 29 20 7b 0a 24 74 68 69 73 2d 3e 70 34 55 73 65 72 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b ).{.$this->p4User.=.$repoConfig[
bada0 27 70 34 75 73 65 72 27 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 34 55 73 65 'p4user'];.}.else.{.$this->p4Use
badc0 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 34 76 61 72 69 61 62 6c 65 28 27 50 34 55 53 45 52 r.=.$this->getP4variable('P4USER
bade0 27 29 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 70 34 70 ');.}.if.(isset($repoConfig['p4p
bae00 61 73 73 77 6f 72 64 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 34 50 61 73 73 77 6f 72 64 20 assword'])).{.$this->p4Password.
bae20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 70 34 70 61 73 73 77 6f 72 64 27 5d 3b 0a 7d 0a 7d =.$repoConfig['p4password'];.}.}
bae40 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 44 65 70 6f ..public.function.initializeDepo
bae60 74 41 6e 64 42 72 61 6e 63 68 28 24 64 65 70 6f 74 2c 20 24 62 72 61 6e 63 68 29 0a 7b 0a 69 66 tAndBranch($depot,.$branch).{.if
bae80 20 28 69 73 73 65 74 28 24 64 65 70 6f 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 34 44 65 70 6f .(isset($depot)).{.$this->p4Depo
baea0 74 20 3d 20 24 64 65 70 6f 74 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 62 72 61 6e 63 68 29 t.=.$depot;.}.if.(isset($branch)
baec0 29 20 7b 0a 24 74 68 69 73 2d 3e 70 34 42 72 61 6e 63 68 20 3d 20 24 62 72 61 6e 63 68 3b 0a 7d ).{.$this->p4Branch.=.$branch;.}
baee0 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 55 6e 69 71 .}..public.function.generateUniq
baf00 75 65 50 65 72 66 6f 72 63 65 43 6c 69 65 6e 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 uePerforceClientName().{.return.
baf20 67 65 74 68 6f 73 74 6e 61 6d 65 28 29 20 2e 20 22 5f 22 20 2e 20 74 69 6d 65 28 29 3b 0a 7d 0a gethostname()..."_"...time();.}.
baf40 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 75 70 43 6c 69 65 6e 74 53 70 .public.function.cleanupClientSp
baf60 65 63 28 29 0a 7b 0a 24 63 6c 69 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6c 69 65 6e ec().{.$client.=.$this->getClien
baf80 74 28 29 3b 0a 24 74 61 73 6b 20 3d 20 27 63 6c 69 65 6e 74 20 2d 64 20 27 20 2e 20 24 63 6c 69 t();.$task.=.'client.-d.'...$cli
bafa0 65 6e 74 3b 0a 24 75 73 65 50 34 43 6c 69 65 6e 74 20 3d 20 66 61 6c 73 65 3b 0a 24 63 6f 6d 6d ent;.$useP4Client.=.false;.$comm
bafc0 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 24 and.=.$this->generateP4Command($
bafe0 74 61 73 6b 2c 20 24 75 73 65 50 34 43 6c 69 65 6e 74 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 task,.$useP4Client);.$this->exec
bb000 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 63 6c 69 65 6e 74 53 70 65 uteCommand($command);.$clientSpe
bb020 63 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 34 43 6c 69 65 6e 74 53 70 65 63 28 29 3b 0a 24 66 c.=.$this->getP4ClientSpec();.$f
bb040 69 6c 65 53 79 73 74 65 6d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 73 79 73 74 65 6d ileSystem.=.$this->getFilesystem
bb060 28 29 3b 0a 24 66 69 6c 65 53 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 28 24 63 6c 69 65 6e 74 53 ();.$fileSystem->remove($clientS
bb080 70 65 63 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 pec);.}..protected.function.exec
bb0a0 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f uteCommand($command).{.$this->co
bb0c0 6d 6d 61 6e 64 52 65 73 75 6c 74 20 3d 20 22 22 3b 0a 24 65 78 69 74 5f 63 6f 64 65 20 3d 20 24 mmandResult.=."";.$exit_code.=.$
bb0e0 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c this->process->execute($command,
bb100 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 29 3b 0a 0a 72 65 74 75 72 6e 20 .$this->commandResult);..return.
bb120 24 65 78 69 74 5f 63 6f 64 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 $exit_code;.}..public.function.g
bb140 65 74 43 6c 69 65 6e 74 28 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 etClient().{.if.(!isset($this->p
bb160 34 43 6c 69 65 6e 74 29 29 20 7b 0a 24 63 6c 65 61 6e 53 74 72 65 61 6d 4e 61 6d 65 20 3d 20 73 4Client)).{.$cleanStreamName.=.s
bb180 74 72 5f 72 65 70 6c 61 63 65 28 27 40 27 2c 20 27 27 2c 20 73 74 72 5f 72 65 70 6c 61 63 65 28 tr_replace('@',.'',.str_replace(
bb1a0 27 2f 27 2c 20 27 5f 27 2c 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 2f 2f 27 2c 20 27 27 2c 20 '/',.'_',.str_replace('//',.'',.
bb1c0 24 74 68 69 73 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 29 29 29 3b 0a 24 74 68 69 73 2d 3e 70 34 $this->getStream())));.$this->p4
bb1e0 43 6c 69 65 6e 74 20 3d 20 27 63 6f 6d 70 6f 73 65 72 5f 70 65 72 66 6f 72 63 65 5f 27 20 2e 20 Client.=.'composer_perforce_'...
bb200 24 74 68 69 73 2d 3e 75 6e 69 71 75 65 50 65 72 66 6f 72 63 65 43 6c 69 65 6e 74 4e 61 6d 65 20 $this->uniquePerforceClientName.
bb220 2e 20 27 5f 27 20 2e 20 24 63 6c 65 61 6e 53 74 72 65 61 6d 4e 61 6d 65 3b 0a 7d 0a 0a 72 65 74 ..'_'...$cleanStreamName;.}..ret
bb240 75 72 6e 20 24 74 68 69 73 2d 3e 70 34 43 6c 69 65 6e 74 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 urn.$this->p4Client;.}..protecte
bb260 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 d.function.getPath().{.return.$t
bb280 68 69 73 2d 3e 70 61 74 68 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e his->path;.}..public.function.in
bb2a0 69 74 69 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 itializePath($path).{.$this->pat
bb2c0 68 20 3d 20 24 70 61 74 68 3b 0a 24 66 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 73 h.=.$path;.$fs.=.$this->getFiles
bb2e0 79 73 74 65 6d 28 29 3b 0a 24 66 73 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 ystem();.$fs->ensureDirectoryExi
bb300 73 74 73 28 24 70 61 74 68 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f sts($path);.}..protected.functio
bb320 6e 20 67 65 74 50 6f 72 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 34 50 6f n.getPort().{.return.$this->p4Po
bb340 72 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 72 65 61 6d rt;.}..public.function.setStream
bb360 28 24 73 74 72 65 61 6d 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 34 53 74 72 65 61 6d 20 3d 20 24 73 ($stream).{.$this->p4Stream.=.$s
bb380 74 72 65 61 6d 3b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 72 70 6f 73 28 24 73 74 72 65 61 6d 2c tream;.$index.=.strrpos($stream,
bb3a0 20 27 2f 27 29 3b 0a 0a 20 69 66 20 28 24 69 6e 64 65 78 20 3e 20 32 29 20 7b 0a 24 74 68 69 73 .'/');...if.($index.>.2).{.$this
bb3c0 2d 3e 70 34 44 65 70 6f 74 54 79 70 65 20 3d 20 27 73 74 72 65 61 6d 27 3b 0a 7d 0a 7d 0a 0a 70 ->p4DepotType.=.'stream';.}.}..p
bb3e0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 74 72 65 61 6d 28 29 0a 7b 0a 72 65 74 75 ublic.function.isStream().{.retu
bb400 72 6e 20 28 73 74 72 63 6d 70 28 24 74 68 69 73 2d 3e 70 34 44 65 70 6f 74 54 79 70 65 2c 20 27 rn.(strcmp($this->p4DepotType,.'
bb420 73 74 72 65 61 6d 27 29 20 3d 3d 3d 20 30 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 stream').===.0);.}..public.funct
bb440 69 6f 6e 20 67 65 74 53 74 72 65 61 6d 28 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 ion.getStream().{.if.(!isset($th
bb460 69 73 2d 3e 70 34 53 74 72 65 61 6d 29 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 53 74 is->p4Stream)).{.if.($this->isSt
bb480 72 65 61 6d 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 34 53 74 72 65 61 6d 20 3d 20 27 2f 2f 27 ream()).{.$this->p4Stream.=.'//'
bb4a0 20 2e 20 24 74 68 69 73 2d 3e 70 34 44 65 70 6f 74 20 2e 20 27 2f 27 20 2e 20 24 74 68 69 73 2d ...$this->p4Depot...'/'...$this-
bb4c0 3e 70 34 42 72 61 6e 63 68 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 34 53 74 72 >p4Branch;.}.else.{.$this->p4Str
bb4e0 65 61 6d 20 3d 20 27 2f 2f 27 20 2e 20 24 74 68 69 73 2d 3e 70 34 44 65 70 6f 74 3b 0a 7d 0a 7d eam.=.'//'...$this->p4Depot;.}.}
bb500 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 34 53 74 72 65 61 6d 3b 0a 7d 0a 0a 70 75 62 ..return.$this->p4Stream;.}..pub
bb520 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 72 65 61 6d 57 69 74 68 6f 75 74 4c 61 62 lic.function.getStreamWithoutLab
bb540 65 6c 28 24 73 74 72 65 61 6d 29 0a 7b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 73 el($stream).{.$index.=.strpos($s
bb560 74 72 65 61 6d 2c 20 27 40 27 29 3b 0a 69 66 20 28 24 69 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 tream,.'@');.if.($index.===.fals
bb580 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 73 74 72 65 61 6d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 e).{.return.$stream;.}..return.s
bb5a0 75 62 73 74 72 28 24 73 74 72 65 61 6d 2c 20 30 2c 20 24 69 6e 64 65 78 29 3b 0a 7d 0a 0a 70 75 ubstr($stream,.0,.$index);.}..pu
bb5c0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 34 43 6c 69 65 6e 74 53 70 65 63 28 29 0a blic.function.getP4ClientSpec().
bb5e0 7b 0a 24 70 34 63 6c 69 65 6e 74 53 70 65 63 20 3d 20 24 74 68 69 73 2d 3e 70 61 74 68 20 2e 20 {.$p4clientSpec.=.$this->path...
bb600 27 2f 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 43 6c 69 65 6e 74 28 29 20 2e 20 27 2e 70 34 2e '/'...$this->getClient()...'.p4.
bb620 73 70 65 63 27 3b 0a 0a 72 65 74 75 72 6e 20 24 70 34 63 6c 69 65 6e 74 53 70 65 63 3b 0a 7d 0a spec';..return.$p4clientSpec;.}.
bb640 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 73 65 72 28 29 0a 7b 0a 72 65 74 .public.function.getUser().{.ret
bb660 75 72 6e 20 24 74 68 69 73 2d 3e 70 34 55 73 65 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e urn.$this->p4User;.}..public.fun
bb680 63 74 69 6f 6e 20 73 65 74 55 73 65 72 28 24 75 73 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 34 ction.setUser($user).{.$this->p4
bb6a0 55 73 65 72 20 3d 20 24 75 73 65 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e User.=.$user;.}..public.function
bb6c0 20 71 75 65 72 79 50 34 55 73 65 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 .queryP4User().{.$this->getUser(
bb6e0 29 3b 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 70 34 55 73 65 72 29 20 3e 20 30 );.if.(strlen($this->p4User).>.0
bb700 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 34 55 73 65 72 20 3d 20 24 74 ).{.return;.}.$this->p4User.=.$t
bb720 68 69 73 2d 3e 67 65 74 50 34 76 61 72 69 61 62 6c 65 28 27 50 34 55 53 45 52 27 29 3b 0a 69 66 his->getP4variable('P4USER');.if
bb740 20 28 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 70 34 55 73 65 72 29 20 3e 20 30 29 20 7b 0a 72 .(strlen($this->p4User).>.0).{.r
bb760 65 74 75 72 6e 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 34 55 73 65 72 20 3d 20 24 74 68 69 73 2d 3e eturn;.}.$this->p4User.=.$this->
bb780 69 6f 2d 3e 61 73 6b 28 27 45 6e 74 65 72 20 50 34 20 55 73 65 72 3a 27 29 3b 0a 69 66 20 28 24 io->ask('Enter.P4.User:');.if.($
bb7a0 74 68 69 73 2d 3e 77 69 6e 64 6f 77 73 46 6c 61 67 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 this->windowsFlag).{.$command.=.
bb7c0 27 70 34 20 73 65 74 20 50 34 55 53 45 52 3d 27 20 2e 20 24 74 68 69 73 2d 3e 70 34 55 73 65 72 'p4.set.P4USER='...$this->p4User
bb7e0 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 65 78 70 6f 72 74 20 50 34 ;.}.else.{.$command.=.'export.P4
bb800 55 53 45 52 3d 27 20 2e 20 24 74 68 69 73 2d 3e 70 34 55 73 65 72 3b 0a 7d 0a 24 74 68 69 73 2d USER='...$this->p4User;.}.$this-
bb820 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 7d 0a 0a 70 72 >executeCommand($command);.}..pr
bb840 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 34 76 61 72 69 61 62 6c 65 28 24 otected.function.getP4variable($
bb860 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 69 6e 64 6f 77 73 46 6c 61 67 29 20 name).{.if.($this->windowsFlag).
bb880 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 70 34 20 73 65 74 27 3b 0a 24 74 68 69 73 2d 3e 65 78 {.$command.=.'p4.set';.$this->ex
bb8a0 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 72 65 73 75 6c 74 20 ecuteCommand($command);.$result.
bb8c0 3d 20 74 72 69 6d 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 29 3b 0a 24 72 =.trim($this->commandResult);.$r
bb8e0 65 73 41 72 72 61 79 20 3d 20 65 78 70 6c 6f 64 65 28 50 48 50 5f 45 4f 4c 2c 20 24 72 65 73 75 esArray.=.explode(PHP_EOL,.$resu
bb900 6c 74 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 73 41 72 72 61 79 20 61 73 20 24 6c 69 6e 65 lt);.foreach.($resArray.as.$line
bb920 29 20 7b 0a 24 66 69 65 6c 64 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 3d 27 2c 20 24 6c 69 6e 65 ).{.$fields.=.explode('=',.$line
bb940 29 3b 0a 69 66 20 28 73 74 72 63 6d 70 28 24 6e 61 6d 65 2c 20 24 66 69 65 6c 64 73 5b 30 5d 29 );.if.(strcmp($name,.$fields[0])
bb960 20 3d 3d 20 30 29 20 7b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 66 69 65 6c 64 73 .==.0).{.$index.=.strpos($fields
bb980 5b 31 5d 2c 20 27 20 27 29 3b 0a 69 66 20 28 24 69 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 65 29 [1],.'.');.if.($index.===.false)
bb9a0 20 7b 0a 24 76 61 6c 75 65 20 3d 20 24 66 69 65 6c 64 73 5b 31 5d 3b 0a 7d 20 65 6c 73 65 20 7b .{.$value.=.$fields[1];.}.else.{
bb9c0 0a 24 76 61 6c 75 65 20 3d 20 73 75 62 73 74 72 28 24 66 69 65 6c 64 73 5b 31 5d 2c 20 30 2c 20 .$value.=.substr($fields[1],.0,.
bb9e0 24 69 6e 64 65 78 29 3b 0a 7d 0a 24 76 61 6c 75 65 20 3d 20 74 72 69 6d 28 24 76 61 6c 75 65 29 $index);.}.$value.=.trim($value)
bba00 3b 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 ;..return.$value;.}.}..return.nu
bba20 6c 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 65 63 68 6f 20 24 27 ll;.}.else.{.$command.=.'echo.$'
bba40 20 2e 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 ...$name;.$this->executeCommand(
bba60 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 74 72 69 6d 28 24 74 68 69 73 2d $command);.$result.=.trim($this-
bba80 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 >commandResult);..return.$result
bbaa0 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 71 75 65 72 79 50 34 50 61 ;.}.}..public.function.queryP4Pa
bbac0 73 73 77 6f 72 64 28 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 34 50 61 ssword().{.if.(isset($this->p4Pa
bbae0 73 73 77 6f 72 64 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 34 50 61 73 73 77 ssword)).{.return.$this->p4Passw
bbb00 6f 72 64 3b 0a 7d 0a 24 70 61 73 73 77 6f 72 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 34 76 ord;.}.$password.=.$this->getP4v
bbb20 61 72 69 61 62 6c 65 28 27 50 34 50 41 53 53 57 44 27 29 3b 0a 69 66 20 28 73 74 72 6c 65 6e 28 ariable('P4PASSWD');.if.(strlen(
bbb40 24 70 61 73 73 77 6f 72 64 29 20 3c 3d 20 30 29 20 7b 0a 24 70 61 73 73 77 6f 72 64 20 3d 20 24 $password).<=.0).{.$password.=.$
bbb60 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 27 45 6e 74 65 this->io->askAndHideAnswer('Ente
bbb80 72 20 70 61 73 73 77 6f 72 64 20 66 6f 72 20 50 65 72 66 6f 72 63 65 20 75 73 65 72 20 27 20 2e r.password.for.Perforce.user.'..
bbba0 20 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 29 20 2e 20 27 3a 20 27 29 3b 0a 7d 0a 24 74 68 .$this->getUser()...':.');.}.$th
bbbc0 69 73 2d 3e 70 34 50 61 73 73 77 6f 72 64 20 3d 20 24 70 61 73 73 77 6f 72 64 3b 0a 0a 72 65 74 is->p4Password.=.$password;..ret
bbbe0 75 72 6e 20 24 70 61 73 73 77 6f 72 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f urn.$password;.}..public.functio
bbc00 6e 20 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 n.generateP4Command($command,.$u
bbc20 73 65 43 6c 69 65 6e 74 20 3d 20 74 72 75 65 29 0a 7b 0a 24 70 34 43 6f 6d 6d 61 6e 64 20 3d 20 seClient.=.true).{.$p4Command.=.
bbc40 27 70 34 20 27 3b 0a 24 70 34 43 6f 6d 6d 61 6e 64 20 3d 20 24 70 34 43 6f 6d 6d 61 6e 64 20 2e 'p4.';.$p4Command.=.$p4Command..
bbc60 20 27 2d 75 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 29 20 2e 20 27 20 27 3b .'-u.'...$this->getUser()...'.';
bbc80 0a 69 66 20 28 24 75 73 65 43 6c 69 65 6e 74 29 20 7b 0a 24 70 34 43 6f 6d 6d 61 6e 64 20 3d 20 .if.($useClient).{.$p4Command.=.
bbca0 24 70 34 43 6f 6d 6d 61 6e 64 20 2e 20 27 2d 63 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 43 $p4Command...'-c.'...$this->getC
bbcc0 6c 69 65 6e 74 28 29 20 2e 20 27 20 27 3b 0a 7d 0a 24 70 34 43 6f 6d 6d 61 6e 64 20 3d 20 24 70 lient()...'.';.}.$p4Command.=.$p
bbce0 34 43 6f 6d 6d 61 6e 64 20 2e 20 27 2d 70 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 50 6f 72 4Command...'-p.'...$this->getPor
bbd00 74 28 29 20 2e 20 27 20 27 3b 0a 24 70 34 43 6f 6d 6d 61 6e 64 20 3d 20 24 70 34 43 6f 6d 6d 61 t()...'.';.$p4Command.=.$p4Comma
bbd20 6e 64 20 2e 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 72 65 74 75 72 6e 20 24 70 34 43 6f 6d 6d 61 6e nd...$command;..return.$p4Comman
bbd40 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 4c 6f 67 67 65 64 49 6e d;.}..public.function.isLoggedIn
bbd60 28 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 ().{.$command.=.$this->generateP
bbd80 34 43 6f 6d 6d 61 6e 64 28 27 6c 6f 67 69 6e 20 2d 73 27 2c 20 66 61 6c 73 65 29 3b 0a 24 65 78 4Command('login.-s',.false);.$ex
bbda0 69 74 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 itCode.=.$this->executeCommand($
bbdc0 63 6f 6d 6d 61 6e 64 29 3b 0a 69 66 20 28 24 65 78 69 74 43 6f 64 65 29 20 7b 0a 24 65 72 72 6f command);.if.($exitCode).{.$erro
bbde0 72 4f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 rOutput.=.$this->process->getErr
bbe00 6f 72 4f 75 74 70 75 74 28 29 3b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 65 72 72 orOutput();.$index.=.strpos($err
bbe20 6f 72 4f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 29 29 3b 0a 69 66 20 orOutput,.$this->getUser());.if.
bbe40 28 24 69 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 69 6e 64 65 78 20 3d 20 73 74 ($index.===.false).{.$index.=.st
bbe60 72 70 6f 73 28 24 65 72 72 6f 72 4f 75 74 70 75 74 2c 20 27 70 34 27 29 3b 0a 69 66 20 28 24 69 rpos($errorOutput,.'p4');.if.($i
bbe80 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a ndex.===.false).{.return.false;.
bbea0 7d 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 27 70 34 20 63 6f 6d 6d 61 }.throw.new.\Exception('p4.comma
bbec0 6e 64 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 70 61 74 68 3a 20 27 20 2e 20 24 65 72 72 6f 72 nd.not.found.in.path:.'...$error
bbee0 4f 75 74 70 75 74 29 3b 0a 7d 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 Output);.}.throw.new.\Exception(
bbf00 27 49 6e 76 61 6c 69 64 20 75 73 65 72 20 6e 61 6d 65 3a 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 'Invalid.user.name:.'...$this->g
bbf20 65 74 55 73 65 72 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 etUser());.}..return.true;.}..pu
bbf40 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 6e 65 63 74 43 6c 69 65 6e 74 28 29 0a 7b 0a blic.function.connectClient().{.
bbf60 24 70 34 43 72 65 61 74 65 43 6c 69 65 6e 74 43 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e $p4CreateClientCommand.=.$this->
bbf80 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 63 6c 69 65 6e 74 20 2d 69 20 3c 20 27 generateP4Command('client.-i.<.'
bbfa0 20 2e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 20 22 2c 20 22 5c 5c 20 22 2c 20 24 74 68 69 73 ...str_replace(".",."\\.",.$this
bbfc0 2d 3e 67 65 74 50 34 43 6c 69 65 6e 74 53 70 65 63 28 29 29 29 3b 0a 24 74 68 69 73 2d 3e 65 78 ->getP4ClientSpec()));.$this->ex
bbfe0 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 70 34 43 72 65 61 74 65 43 6c 69 65 6e 74 43 6f 6d 6d ecuteCommand($p4CreateClientComm
bc000 61 6e 64 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 79 6e 63 43 6f 64 and);.}..public.function.syncCod
bc020 65 42 61 73 65 28 24 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 29 0a 7b 0a 24 70 72 65 76 44 eBase($sourceReference).{.$prevD
bc040 69 72 20 3d 20 67 65 74 63 77 64 28 29 3b 0a 63 68 64 69 72 28 24 74 68 69 73 2d 3e 70 61 74 68 ir.=.getcwd();.chdir($this->path
bc060 29 3b 0a 24 70 34 53 79 6e 63 43 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 );.$p4SyncCommand.=.$this->gener
bc080 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 73 79 6e 63 20 2d 66 20 27 29 3b 0a 69 66 20 28 6e 75 ateP4Command('sync.-f.');.if.(nu
bc0a0 6c 6c 20 21 3d 20 24 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 29 20 7b 0a 24 70 34 53 79 6e ll.!=.$sourceReference).{.$p4Syn
bc0c0 63 43 6f 6d 6d 61 6e 64 20 3d 20 24 70 34 53 79 6e 63 43 6f 6d 6d 61 6e 64 20 2e 20 27 40 27 20 cCommand.=.$p4SyncCommand...'@'.
bc0e0 2e 20 24 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 24 74 68 69 73 2d 3e 65 78 65 ..$sourceReference;.}.$this->exe
bc100 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 70 34 53 79 6e 63 43 6f 6d 6d 61 6e 64 29 3b 0a 63 68 64 cuteCommand($p4SyncCommand);.chd
bc120 69 72 28 24 70 72 65 76 44 69 72 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ir($prevDir);.}..public.function
bc140 20 77 72 69 74 65 43 6c 69 65 6e 74 53 70 65 63 54 6f 46 69 6c 65 28 24 73 70 65 63 29 0a 7b 0a .writeClientSpecToFile($spec).{.
bc160 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 43 6c 69 65 6e 74 3a 20 27 20 2e 20 24 74 68 69 73 fwrite($spec,.'Client:.'...$this
bc180 2d 3e 67 65 74 43 6c 69 65 6e 74 28 29 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 50 48 50 5f 45 4f ->getClient()...PHP_EOL...PHP_EO
bc1a0 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 55 70 64 61 74 65 3a 20 27 20 2e 20 64 L);.fwrite($spec,.'Update:.'...d
bc1c0 61 74 65 28 27 59 2f 6d 2f 64 20 48 3a 69 3a 73 27 29 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 50 ate('Y/m/d.H:i:s')...PHP_EOL...P
bc1e0 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 41 63 63 65 73 73 3a 20 HP_EOL);.fwrite($spec,.'Access:.
bc200 27 20 2e 20 64 61 74 65 28 27 59 2f 6d 2f 64 20 48 3a 69 3a 73 27 29 20 2e 20 50 48 50 5f 45 4f '...date('Y/m/d.H:i:s')...PHP_EO
bc220 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 4f 77 6e 65 72 3a 20 20 27 20 2e 20 24 L);.fwrite($spec,.'Owner:..'...$
bc240 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 29 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 50 48 50 5f this->getUser()...PHP_EOL...PHP_
bc260 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 44 65 73 63 72 69 70 74 69 6f 6e EOL);.fwrite($spec,.'Description
bc280 3a 27 20 2e 20 50 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 20 20 :'...PHP_EOL);.fwrite($spec,.'..
bc2a0 43 72 65 61 74 65 64 20 62 79 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 29 20 Created.by.'...$this->getUser().
bc2c0 2e 20 27 20 66 72 6f 6d 20 63 6f 6d 70 6f 73 65 72 2e 27 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 ..'.from.composer.'...PHP_EOL...
bc2e0 50 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 52 6f 6f 74 3a 20 27 PHP_EOL);.fwrite($spec,.'Root:.'
bc300 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 28 29 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 ...$this->getPath()...PHP_EOL...
bc320 50 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 4f 70 74 69 6f 6e 73 PHP_EOL);.fwrite($spec,.'Options
bc340 3a 20 20 6e 6f 61 6c 6c 77 72 69 74 65 20 6e 6f 63 6c 6f 62 62 65 72 20 6e 6f 63 6f 6d 70 72 65 :..noallwrite.noclobber.nocompre
bc360 73 73 20 75 6e 6c 6f 63 6b 65 64 20 6d 6f 64 74 69 6d 65 20 72 6d 64 69 72 27 20 2e 20 50 48 50 ss.unlocked.modtime.rmdir'...PHP
bc380 5f 45 4f 4c 20 2e 20 50 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 _EOL...PHP_EOL);.fwrite($spec,.'
bc3a0 53 75 62 6d 69 74 4f 70 74 69 6f 6e 73 3a 20 20 72 65 76 65 72 74 75 6e 63 68 61 6e 67 65 64 27 SubmitOptions:..revertunchanged'
bc3c0 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 50 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 ...PHP_EOL...PHP_EOL);.fwrite($s
bc3e0 70 65 63 2c 20 27 4c 69 6e 65 45 6e 64 3a 20 20 6c 6f 63 61 6c 27 20 2e 20 50 48 50 5f 45 4f 4c pec,.'LineEnd:..local'...PHP_EOL
bc400 20 2e 20 50 48 50 5f 45 4f 4c 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 53 74 72 65 61 6d ...PHP_EOL);.if.($this->isStream
bc420 28 29 29 20 7b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 53 74 72 65 61 6d 3a 27 20 2e 20 ()).{.fwrite($spec,.'Stream:'...
bc440 50 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 20 20 27 20 2e 20 24 PHP_EOL);.fwrite($spec,.'..'...$
bc460 74 68 69 73 2d 3e 67 65 74 53 74 72 65 61 6d 57 69 74 68 6f 75 74 4c 61 62 65 6c 28 24 74 68 69 this->getStreamWithoutLabel($thi
bc480 73 2d 3e 70 34 53 74 72 65 61 6d 29 20 2e 20 50 48 50 5f 45 4f 4c 29 3b 0a 7d 20 65 6c 73 65 20 s->p4Stream)...PHP_EOL);.}.else.
bc4a0 7b 0a 66 77 72 69 74 65 28 0a 24 73 70 65 63 2c 0a 27 56 69 65 77 3a 20 20 27 20 2e 20 24 74 68 {.fwrite(.$spec,.'View:..'...$th
bc4c0 69 73 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 20 2e 20 27 2f 2e 2e 2e 20 20 2f 2f 27 20 2e 20 24 is->getStream()...'/.....//'...$
bc4e0 74 68 69 73 2d 3e 67 65 74 43 6c 69 65 6e 74 28 29 20 2e 20 27 2f 2e 2e 2e 20 27 20 2e 20 50 48 this->getClient()...'/....'...PH
bc500 50 5f 45 4f 4c 0a 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 P_EOL.);.}.}..public.function.wr
bc520 69 74 65 50 34 43 6c 69 65 6e 74 53 70 65 63 28 29 0a 7b 0a 24 63 6c 69 65 6e 74 53 70 65 63 20 iteP4ClientSpec().{.$clientSpec.
bc540 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 34 43 6c 69 65 6e 74 53 70 65 63 28 29 3b 0a 24 73 70 65 =.$this->getP4ClientSpec();.$spe
bc560 63 20 3d 20 66 6f 70 65 6e 28 24 63 6c 69 65 6e 74 53 70 65 63 2c 20 27 77 27 29 3b 0a 74 72 79 c.=.fopen($clientSpec,.'w');.try
bc580 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 43 6c 69 65 6e 74 53 70 65 63 54 6f 46 69 6c 65 28 .{.$this->writeClientSpecToFile(
bc5a0 24 73 70 65 63 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 $spec);.}.catch.(\Exception.$e).
bc5c0 7b 0a 66 63 6c 6f 73 65 28 24 73 70 65 63 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 66 63 6c {.fclose($spec);.throw.$e;.}.fcl
bc5e0 6f 73 65 28 24 73 70 65 63 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f ose($spec);.}..protected.functio
bc600 6e 20 72 65 61 64 28 24 70 69 70 65 2c 20 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 66 65 6f 66 28 n.read($pipe,.$name).{.if.(feof(
bc620 24 70 69 70 65 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 $pipe)).{.return;.}.$line.=.fget
bc640 73 28 24 70 69 70 65 29 3b 0a 77 68 69 6c 65 20 28 24 6c 69 6e 65 20 21 3d 20 66 61 6c 73 65 29 s($pipe);.while.($line.!=.false)
bc660 20 7b 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 73 28 24 70 69 70 65 29 3b 0a 7d 0a 0a 72 65 74 75 .{.$line.=.fgets($pipe);.}..retu
bc680 72 6e 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 69 6e 64 6f 77 73 4c 6f rn;.}..public.function.windowsLo
bc6a0 67 69 6e 28 24 70 61 73 73 77 6f 72 64 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 gin($password).{.$command.=.$thi
bc6c0 73 2d 3e 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 20 6c 6f 67 69 6e 20 2d 61 27 s->generateP4Command('.login.-a'
bc6e0 29 3b 0a 24 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 28 24 63 6f 6d 6d 61 );.$process.=.new.Process($comma
bc700 6e 64 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 24 70 61 73 73 77 6f 72 64 29 3b 0a 0a 72 65 74 nd,.null,.null,.$password);..ret
bc720 75 72 6e 20 24 70 72 6f 63 65 73 73 2d 3e 72 75 6e 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 urn.$process->run();.}..public.f
bc740 75 6e 63 74 69 6f 6e 20 70 34 4c 6f 67 69 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 71 75 65 72 79 unction.p4Login().{.$this->query
bc760 50 34 55 73 65 72 28 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 4c 6f 67 67 65 64 49 6e P4User();.if.(!$this->isLoggedIn
bc780 28 29 29 20 7b 0a 24 70 61 73 73 77 6f 72 64 20 3d 20 24 74 68 69 73 2d 3e 71 75 65 72 79 50 34 ()).{.$password.=.$this->queryP4
bc7a0 50 61 73 73 77 6f 72 64 28 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 69 6e 64 6f 77 73 46 6c Password();.if.($this->windowsFl
bc7c0 61 67 29 20 7b 0a 24 74 68 69 73 2d 3e 77 69 6e 64 6f 77 73 4c 6f 67 69 6e 28 24 70 61 73 73 77 ag).{.$this->windowsLogin($passw
bc7e0 6f 72 64 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 65 63 68 6f 20 ord);.}.else.{.$command.=.'echo.
bc800 27 20 2e 20 24 70 61 73 73 77 6f 72 64 20 2e 20 27 20 7c 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 '...$password...'.|.'...$this->g
bc820 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 20 6c 6f 67 69 6e 20 2d 61 27 2c 20 66 61 enerateP4Command('.login.-a',.fa
bc840 6c 73 65 29 3b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 lse);.$exitCode.=.$this->execute
bc860 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 74 72 69 Command($command);.$result.=.tri
bc880 6d 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 29 3b 0a 69 66 20 28 24 65 78 m($this->commandResult);.if.($ex
bc8a0 69 74 43 6f 64 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 22 itCode).{.throw.new.\Exception("
bc8c0 45 72 72 6f 72 20 6c 6f 67 67 69 6e 67 20 69 6e 3a 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 Error.logging.in:"...$this->proc
bc8e0 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a ess->getErrorOutput());.}.}.}.}.
bc900 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f .public.function.getComposerInfo
bc920 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 69 6e 64 65 78 20 3d 20 rmation($identifier).{.$index.=.
bc940 73 74 72 70 6f 73 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 27 40 27 29 3b 0a 69 66 20 28 24 69 strpos($identifier,.'@');.if.($i
bc960 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 20 ndex.===.false).{.$composerJson.
bc980 3d 20 24 69 64 65 6e 74 69 66 69 65 72 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b =.$identifier..'/composer.json';
bc9a0 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 ..return.$this->getComposerInfor
bc9c0 6d 61 74 69 6f 6e 46 72 6f 6d 50 61 74 68 28 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 29 3b 0a 7d mationFromPath($composerJson);.}
bc9e0 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 ..return.$this->getComposerInfor
bca00 6d 61 74 69 6f 6e 46 72 6f 6d 4c 61 62 65 6c 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 69 6e mationFromLabel($identifier,.$in
bca20 64 65 78 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 dex);.}..public.function.getComp
bca40 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 46 72 6f 6d 50 61 74 68 28 24 63 6f 6d 70 6f 73 65 oserInformationFromPath($compose
bca60 72 4a 73 6f 6e 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 rJson).{.$command.=.$this->gener
bca80 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 20 70 72 69 6e 74 20 27 20 2e 20 24 63 6f 6d 70 6f 73 ateP4Command('.print.'...$compos
bcaa0 65 72 4a 73 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 erJson);.$this->executeCommand($
bcac0 63 6f 6d 6d 61 6e 64 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 command);.$result.=.$this->comma
bcae0 6e 64 52 65 73 75 6c 74 3b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 72 65 73 75 6c ndResult;.$index.=.strpos($resul
bcb00 74 2c 20 27 7b 27 29 3b 0a 69 66 20 28 24 69 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b t,.'{');.if.($index.===.false).{
bcb20 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 69 66 20 28 24 69 6e 64 65 78 20 3e 3d 20 30 29 20 7b .return.'';.}.if.($index.>=.0).{
bcb40 0a 24 72 61 77 44 61 74 61 20 3d 20 73 75 62 73 74 72 28 24 72 65 73 75 6c 74 2c 20 24 69 6e 64 .$rawData.=.substr($result,.$ind
bcb60 65 78 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 5f 69 6e 66 6f 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 ex);.$composer_info.=.json_decod
bcb80 65 28 24 72 61 77 44 61 74 61 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 e($rawData,.true);..return.$comp
bcba0 6f 73 65 72 5f 69 6e 66 6f 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 0a 70 75 62 6c oser_info;.}..return.'';.}..publ
bcbc0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 ic.function.getComposerInformati
bcbe0 6f 6e 46 72 6f 6d 4c 61 62 65 6c 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 69 6e 64 65 78 29 onFromLabel($identifier,.$index)
bcc00 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 50 61 74 68 20 3d 20 73 75 62 73 74 72 28 24 69 .{.$composerJsonPath.=.substr($i
bcc20 64 65 6e 74 69 66 69 65 72 2c 20 30 2c 20 24 69 6e 64 65 78 29 20 2e 20 27 2f 63 6f 6d 70 6f 73 dentifier,.0,.$index)...'/compos
bcc40 65 72 2e 6a 73 6f 6e 27 20 2e 20 73 75 62 73 74 72 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 er.json'...substr($identifier,.$
bcc60 69 6e 64 65 78 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 index);.$command.=.$this->genera
bcc80 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 20 66 69 6c 65 73 20 27 20 2e 20 24 63 6f 6d 70 6f 73 65 teP4Command('.files.'...$compose
bcca0 72 4a 73 6f 6e 50 61 74 68 2c 20 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 rJsonPath,.false);.$this->execut
bccc0 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 eCommand($command);.$result.=.$t
bcce0 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 3b 0a 24 69 6e 64 65 78 32 20 3d 20 73 74 his->commandResult;.$index2.=.st
bcd00 72 70 6f 73 28 24 72 65 73 75 6c 74 2c 20 27 6e 6f 20 73 75 63 68 20 66 69 6c 65 28 73 29 2e 27 rpos($result,.'no.such.file(s).'
bcd20 29 3b 0a 69 66 20 28 24 69 6e 64 65 78 32 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 69 6e 64 );.if.($index2.===.false).{.$ind
bcd40 65 78 33 20 3d 20 73 74 72 70 6f 73 28 24 72 65 73 75 6c 74 2c 20 27 63 68 61 6e 67 65 27 29 3b ex3.=.strpos($result,.'change');
bcd60 0a 69 66 20 28 21 28 24 69 6e 64 65 78 33 20 3d 3d 3d 20 66 61 6c 73 65 29 29 20 7b 0a 24 70 68 .if.(!($index3.===.false)).{.$ph
bcd80 72 61 73 65 20 3d 20 74 72 69 6d 28 73 75 62 73 74 72 28 24 72 65 73 75 6c 74 2c 20 24 69 6e 64 rase.=.trim(substr($result,.$ind
bcda0 65 78 33 29 29 3b 0a 24 66 69 65 6c 64 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 20 27 2c 20 24 70 ex3));.$fields.=.explode('.',.$p
bcdc0 68 72 61 73 65 29 3b 0a 24 69 64 20 3d 20 24 66 69 65 6c 64 73 5b 31 5d 3b 0a 24 63 6f 6d 70 6f hrase);.$id.=.$fields[1];.$compo
bcde0 73 65 72 4a 73 6f 6e 20 3d 20 73 75 62 73 74 72 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 30 2c serJson.=.substr($identifier,.0,
bce00 20 24 69 6e 64 65 78 29 20 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 40 27 20 2e 20 24 .$index)...'/composer.json@'...$
bce20 69 64 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e id;..return.$this->getComposerIn
bce40 66 6f 72 6d 61 74 69 6f 6e 46 72 6f 6d 50 61 74 68 28 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 29 formationFromPath($composerJson)
bce60 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 22 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ;.}.}..return."";.}..public.func
bce80 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 24 70 6f 73 73 69 62 6c 65 42 72 tion.getBranches().{.$possibleBr
bcea0 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 anches.=.array();.if.(!$this->is
bcec0 53 74 72 65 61 6d 28 29 29 20 7b 0a 24 70 6f 73 73 69 62 6c 65 42 72 61 6e 63 68 65 73 5b 24 74 Stream()).{.$possibleBranches[$t
bcee0 68 69 73 2d 3e 70 34 42 72 61 6e 63 68 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 74 72 65 61 his->p4Branch].=.$this->getStrea
bcf00 6d 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e m();.}.else.{.$command.=.$this->
bcf20 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 73 74 72 65 61 6d 73 20 2f 2f 27 20 2e generateP4Command('streams.//'..
bcf40 20 24 74 68 69 73 2d 3e 70 34 44 65 70 6f 74 20 2e 20 27 2f 2e 2e 2e 27 29 3b 0a 24 74 68 69 73 .$this->p4Depot...'/...');.$this
bcf60 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 72 65 73 ->executeCommand($command);.$res
bcf80 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 3b 0a 24 72 65 73 ult.=.$this->commandResult;.$res
bcfa0 41 72 72 61 79 20 3d 20 65 78 70 6c 6f 64 65 28 50 48 50 5f 45 4f 4c 2c 20 24 72 65 73 75 6c 74 Array.=.explode(PHP_EOL,.$result
bcfc0 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 73 41 72 72 61 79 20 61 73 20 24 6c 69 6e 65 29 20 );.foreach.($resArray.as.$line).
bcfe0 7b 0a 24 72 65 73 42 69 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 20 27 2c 20 24 6c 69 6e 65 29 {.$resBits.=.explode('.',.$line)
bd000 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 72 65 73 42 69 74 73 29 20 3e 20 34 29 20 7b 0a 24 62 72 ;.if.(count($resBits).>.4).{.$br
bd020 61 6e 63 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 5b 5e 41 2d 5a 61 2d 7a 30 2d anch.=.preg_replace('/[^A-Za-z0-
bd040 39 20 5d 2f 27 2c 20 27 27 2c 20 24 72 65 73 42 69 74 73 5b 34 5d 29 3b 0a 24 70 6f 73 73 69 62 9.]/',.'',.$resBits[4]);.$possib
bd060 6c 65 42 72 61 6e 63 68 65 73 5b 24 62 72 61 6e 63 68 5d 20 3d 20 24 72 65 73 42 69 74 73 5b 31 leBranches[$branch].=.$resBits[1
bd080 5d 3b 0a 7d 0a 7d 0a 7d 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 ];.}.}.}.$command.=.$this->gener
bd0a0 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 63 68 61 6e 67 65 73 20 27 2e 20 24 74 68 69 73 2d 3e ateP4Command('changes.'..$this->
bd0c0 67 65 74 53 74 72 65 61 6d 28 29 20 2e 20 27 2f 2e 2e 2e 27 2c 20 66 61 6c 73 65 29 3b 0a 24 74 getStream()...'/...',.false);.$t
bd0e0 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 his->executeCommand($command);.$
bd100 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 3b 0a 24 result.=.$this->commandResult;.$
bd120 72 65 73 41 72 72 61 79 20 3d 20 65 78 70 6c 6f 64 65 28 50 48 50 5f 45 4f 4c 2c 20 24 72 65 73 resArray.=.explode(PHP_EOL,.$res
bd140 75 6c 74 29 3b 0a 24 6c 61 73 74 43 6f 6d 6d 69 74 20 3d 20 24 72 65 73 41 72 72 61 79 5b 30 5d ult);.$lastCommit.=.$resArray[0]
bd160 3b 0a 24 6c 61 73 74 43 6f 6d 6d 69 74 41 72 72 20 3d 20 65 78 70 6c 6f 64 65 28 27 20 27 2c 20 ;.$lastCommitArr.=.explode('.',.
bd180 24 6c 61 73 74 43 6f 6d 6d 69 74 29 3b 0a 24 6c 61 73 74 43 6f 6d 6d 69 74 4e 75 6d 20 3d 20 24 $lastCommit);.$lastCommitNum.=.$
bd1a0 6c 61 73 74 43 6f 6d 6d 69 74 41 72 72 5b 31 5d 3b 0a 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 61 lastCommitArr[1];..$branches.=.a
bd1c0 72 72 61 79 28 27 6d 61 73 74 65 72 27 20 3d 3e 20 24 70 6f 73 73 69 62 6c 65 42 72 61 6e 63 68 rray('master'.=>.$possibleBranch
bd1e0 65 73 5b 24 74 68 69 73 2d 3e 70 34 42 72 61 6e 63 68 5d 20 2e 20 27 40 27 2e 20 24 6c 61 73 74 es[$this->p4Branch]...'@'..$last
bd200 43 6f 6d 6d 69 74 4e 75 6d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 62 72 61 6e 63 68 65 73 3b 0a 7d CommitNum);..return.$branches;.}
bd220 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 24 63 ..public.function.getTags().{.$c
bd240 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e ommand.=.$this->generateP4Comman
bd260 64 28 27 6c 61 62 65 6c 73 27 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 d('labels');.$this->executeComma
bd280 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 63 nd($command);.$result.=.$this->c
bd2a0 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 3b 0a 24 72 65 73 41 72 72 61 79 20 3d 20 65 78 70 6c 6f 64 ommandResult;.$resArray.=.explod
bd2c0 65 28 50 48 50 5f 45 4f 4c 2c 20 24 72 65 73 75 6c 74 29 3b 0a 24 74 61 67 73 20 3d 20 61 72 72 e(PHP_EOL,.$result);.$tags.=.arr
bd2e0 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 73 41 72 72 61 79 20 61 73 20 24 6c 69 6e ay();.foreach.($resArray.as.$lin
bd300 65 29 20 7b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 6c 69 6e 65 2c 20 27 4c 61 62 e).{.$index.=.strpos($line,.'Lab
bd320 65 6c 27 29 3b 0a 69 66 20 28 21 28 24 69 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 65 29 29 20 7b el');.if.(!($index.===.false)).{
bd340 0a 24 66 69 65 6c 64 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 20 27 2c 20 24 6c 69 6e 65 29 3b 0a .$fields.=.explode('.',.$line);.
bd360 24 74 61 67 73 5b 24 66 69 65 6c 64 73 5b 31 5d 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 74 $tags[$fields[1]].=.$this->getSt
bd380 72 65 61 6d 28 29 20 2e 20 27 40 27 20 2e 20 24 66 69 65 6c 64 73 5b 31 5d 3b 0a 7d 0a 7d 0a 0a ream()...'@'...$fields[1];.}.}..
bd3a0 72 65 74 75 72 6e 20 24 74 61 67 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e return.$tags;.}..public.function
bd3c0 20 63 68 65 63 6b 53 74 72 65 61 6d 28 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 .checkStream().{.$command.=.$thi
bd3e0 73 2d 3e 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 64 65 70 6f 74 73 27 2c 20 66 s->generateP4Command('depots',.f
bd400 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f alse);.$this->executeCommand($co
bd420 6d 6d 61 6e 64 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 mmand);.$result.=.$this->command
bd440 52 65 73 75 6c 74 3b 0a 24 72 65 73 41 72 72 61 79 20 3d 20 65 78 70 6c 6f 64 65 28 50 48 50 5f Result;.$resArray.=.explode(PHP_
bd460 45 4f 4c 2c 20 24 72 65 73 75 6c 74 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 73 41 72 72 61 EOL,.$result);.foreach.($resArra
bd480 79 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 6c y.as.$line).{.$index.=.strpos($l
bd4a0 69 6e 65 2c 20 27 44 65 70 6f 74 27 29 3b 0a 69 66 20 28 21 28 24 69 6e 64 65 78 20 3d 3d 3d 20 ine,.'Depot');.if.(!($index.===.
bd4c0 66 61 6c 73 65 29 29 20 7b 0a 24 66 69 65 6c 64 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 20 27 2c false)).{.$fields.=.explode('.',
bd4e0 20 24 6c 69 6e 65 29 3b 0a 69 66 20 28 73 74 72 63 6d 70 28 24 74 68 69 73 2d 3e 70 34 44 65 70 .$line);.if.(strcmp($this->p4Dep
bd500 6f 74 2c 20 24 66 69 65 6c 64 73 5b 31 5d 29 20 3d 3d 3d 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e ot,.$fields[1]).===.0).{.$this->
bd520 70 34 44 65 70 6f 74 54 79 70 65 20 3d 20 24 66 69 65 6c 64 73 5b 33 5d 3b 0a 0a 72 65 74 75 72 p4DepotType.=.$fields[3];..retur
bd540 6e 20 24 74 68 69 73 2d 3e 69 73 53 74 72 65 61 6d 28 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 n.$this->isStream();.}.}.}..retu
bd560 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 rn.false;.}......protected.funct
bd580 69 6f 6e 20 67 65 74 43 68 61 6e 67 65 4c 69 73 74 28 24 72 65 66 65 72 65 6e 63 65 29 0a 7b 0a ion.getChangeList($reference).{.
bd5a0 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 72 65 66 65 72 65 6e 63 65 2c 20 27 40 27 29 $index.=.strpos($reference,.'@')
bd5c0 3b 0a 69 66 20 28 24 69 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 72 65 74 75 72 6e ;.if.($index.===.false).{.return
bd5e0 20 6e 75 6c 6c 3b 0a 7d 0a 24 6c 61 62 65 6c 20 3d 20 73 75 62 73 74 72 28 24 72 65 66 65 72 65 .null;.}.$label.=.substr($refere
bd600 6e 63 65 2c 20 24 69 6e 64 65 78 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e nce,.$index);.$command.=.$this->
bd620 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 20 63 68 61 6e 67 65 73 20 2d 6d 31 20 generateP4Command('.changes.-m1.
bd640 27 20 2e 20 24 6c 61 62 65 6c 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 '...$label);.$this->executeComma
bd660 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 63 68 61 6e 67 65 73 20 3d 20 24 74 68 69 73 2d 3e nd($command);.$changes.=.$this->
bd680 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 3b 0a 69 66 20 28 73 74 72 70 6f 73 28 24 63 68 61 6e 67 commandResult;.if.(strpos($chang
bd6a0 65 73 2c 20 27 43 68 61 6e 67 65 27 29 20 21 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 es,.'Change').!==.0).{.return.nu
bd6c0 6c 6c 3b 0a 7d 0a 24 66 69 65 6c 64 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 20 27 2c 20 24 63 68 ll;.}.$fields.=.explode('.',.$ch
bd6e0 61 6e 67 65 73 29 3b 0a 24 63 68 61 6e 67 65 4c 69 73 74 20 3d 20 24 66 69 65 6c 64 73 5b 31 5d anges);.$changeList.=.$fields[1]
bd700 3b 0a 0a 72 65 74 75 72 6e 20 24 63 68 61 6e 67 65 4c 69 73 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 ;..return.$changeList;.}.......p
bd720 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 24 66 72 ublic.function.getCommitLogs($fr
bd740 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 24 74 6f 52 65 66 65 72 65 6e 63 65 29 0a 7b 0a 24 66 72 omReference,.$toReference).{.$fr
bd760 6f 6d 43 68 61 6e 67 65 4c 69 73 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 68 61 6e 67 65 4c omChangeList.=.$this->getChangeL
bd780 69 73 74 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 29 3b 0a 69 66 20 28 24 66 72 6f 6d 43 68 ist($fromReference);.if.($fromCh
bd7a0 61 6e 67 65 4c 69 73 74 20 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b angeList.==.null).{.return.null;
bd7c0 0a 7d 0a 24 74 6f 43 68 61 6e 67 65 4c 69 73 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 68 61 .}.$toChangeList.=.$this->getCha
bd7e0 6e 67 65 4c 69 73 74 28 24 74 6f 52 65 66 65 72 65 6e 63 65 29 3b 0a 69 66 20 28 24 74 6f 43 68 ngeList($toReference);.if.($toCh
bd800 61 6e 67 65 4c 69 73 74 20 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b angeList.==.null).{.return.null;
bd820 0a 7d 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 .}.$index.=.strpos($fromReferenc
bd840 65 2c 20 27 40 27 29 3b 0a 24 6d 61 69 6e 20 3d 20 73 75 62 73 74 72 28 24 66 72 6f 6d 52 65 66 e,.'@');.$main.=.substr($fromRef
bd860 65 72 65 6e 63 65 2c 20 30 2c 20 24 69 6e 64 65 78 29 20 2e 20 27 2f 2e 2e 2e 27 3b 0a 24 63 6f erence,.0,.$index)...'/...';.$co
bd880 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 mmand.=.$this->generateP4Command
bd8a0 28 27 66 69 6c 65 6c 6f 67 20 27 20 2e 20 24 6d 61 69 6e 20 2e 20 27 40 27 20 2e 20 24 66 72 6f ('filelog.'...$main...'@'...$fro
bd8c0 6d 43 68 61 6e 67 65 4c 69 73 74 2e 20 27 2c 27 20 2e 20 24 74 6f 43 68 61 6e 67 65 4c 69 73 74 mChangeList..','...$toChangeList
bd8e0 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e );.$this->executeCommand($comman
bd900 64 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 d);.$result.=.$this->commandResu
bd920 6c 74 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 lt;..return.$result;.}..public.f
bd940 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 73 79 73 74 65 6d 28 29 0a 7b 0a 69 66 20 28 65 6d unction.getFilesystem().{.if.(em
bd960 70 74 79 28 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 29 29 20 7b 0a 24 74 68 69 73 2d pty($this->filesystem)).{.$this-
bd980 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 24 74 68 >filesystem.=.new.Filesystem($th
bd9a0 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 is->process);.}..return.$this->f
bd9c0 69 6c 65 73 79 73 74 65 6d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 ilesystem;.}..public.function.se
bd9e0 74 46 69 6c 65 73 79 73 74 65 6d 28 46 69 6c 65 73 79 73 74 65 6d 20 24 66 73 29 0a 7b 0a 24 74 tFilesystem(Filesystem.$fs).{.$t
bda00 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 his->filesystem.=.$fs;.}.}.<?php
bda20 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 ............namespace.Composer\U
bda40 74 69 6c 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6c 61 74 66 6f 72 6d 0a 7b 0a 0a 0a 0a 70 til;.......class.Platform.{....p
bda60 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 57 69 6e 64 6f 77 73 28 ublic.static.function.isWindows(
bda80 29 0a 7b 0a 72 65 74 75 72 6e 20 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f ).{.return.defined('PHP_WINDOWS_
bdaa0 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a VERSION_BUILD');.}.}.<?php......
bdac0 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a ......namespace.Composer\Util;..
bdae0 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 use.Symfony\Component\Process\Pr
bdb00 6f 63 65 73 73 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f ocess;.use.Symfony\Component\Pro
bdb20 63 65 73 73 5c 50 72 6f 63 65 73 73 55 74 69 6c 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c cess\ProcessUtils;.use.Composer\
bdb40 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 IO\IOInterface;.....class.Proces
bdb60 73 45 78 65 63 75 74 6f 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 24 74 69 sExecutor.{.protected.static.$ti
bdb80 6d 65 6f 75 74 20 3d 20 33 30 30 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 70 74 75 72 65 meout.=.300;..protected.$capture
bdba0 4f 75 74 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 65 72 72 6f 72 4f 75 74 70 75 74 3b 0a Output;.protected.$errorOutput;.
bdbc0 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 protected.$io;..public.function.
bdbe0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d 20 6e 75 __construct(IOInterface.$io.=.nu
bdc00 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ll).{.$this->io.=.$io;.}........
bdc20 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 24 63 6f 6d 6d ...public.function.execute($comm
bdc40 61 6e 64 2c 20 26 24 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 2c 20 24 63 77 64 20 3d 20 6e 75 6c and,.&$output.=.null,.$cwd.=.nul
bdc60 6c 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 20 26 26 20 24 74 68 69 73 2d 3e 69 6f 2d l).{.if.($this->io.&&.$this->io-
bdc80 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 73 61 66 65 43 6f 6d 6d 61 6e 64 20 3d 20 70 72 65 >isDebug()).{.$safeCommand.=.pre
bdca0 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 3a 2f 2f 5b 5e 3a 2f 5c 73 5d 2b 3a 29 5b 5e 40 5c 73 2f g_replace('{(://[^:/\s]+:)[^@\s/
bdcc0 5d 2b 7d 69 27 2c 20 27 24 31 2a 2a 2a 2a 27 2c 20 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 74 68 69 ]+}i',.'$1****',.$command);.$thi
bdce0 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 45 78 65 63 75 74 69 6e 67 20 63 6f 6d s->io->writeError('Executing.com
bdd00 6d 61 6e 64 20 28 27 2e 28 24 63 77 64 20 3f 3a 20 27 43 57 44 27 29 2e 27 29 3a 20 27 2e 24 73 mand.('.($cwd.?:.'CWD').'):.'.$s
bdd20 61 66 65 43 6f 6d 6d 61 6e 64 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d afeCommand);.}......if.(null.===
bdd40 20 24 63 77 64 20 26 26 20 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 20 26 .$cwd.&&.Platform::isWindows().&
bdd60 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 63 6f 6d 6d 61 6e 64 2c 20 27 67 69 &.false.!==.strpos($command,.'gi
bdd80 74 27 29 20 26 26 20 67 65 74 63 77 64 28 29 29 20 7b 0a 24 63 77 64 20 3d 20 72 65 61 6c 70 61 t').&&.getcwd()).{.$cwd.=.realpa
bdda0 74 68 28 67 65 74 63 77 64 28 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 61 70 74 75 72 65 4f th(getcwd());.}..$this->captureO
bddc0 75 74 70 75 74 20 3d 20 63 6f 75 6e 74 28 66 75 6e 63 5f 67 65 74 5f 61 72 67 73 28 29 29 20 3e utput.=.count(func_get_args()).>
bdde0 20 31 3b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 4f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 24 .1;.$this->errorOutput.=.null;.$
bde00 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 28 24 63 6f 6d 6d 61 6e 64 2c 20 process.=.new.Process($command,.
bde20 24 63 77 64 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 73 74 61 74 69 63 3a 3a 67 65 74 54 69 6d $cwd,.null,.null,.static::getTim
bde40 65 6f 75 74 28 29 29 3b 0a 0a 24 63 61 6c 6c 62 61 63 6b 20 3d 20 69 73 5f 63 61 6c 6c 61 62 6c eout());..$callback.=.is_callabl
bde60 65 28 24 6f 75 74 70 75 74 29 20 3f 20 24 6f 75 74 70 75 74 20 3a 20 61 72 72 61 79 28 24 74 68 e($output).?.$output.:.array($th
bde80 69 73 2c 20 27 6f 75 74 70 75 74 48 61 6e 64 6c 65 72 27 29 3b 0a 24 70 72 6f 63 65 73 73 2d 3e is,.'outputHandler');.$process->
bdea0 72 75 6e 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 61 70 74 run($callback);..if.($this->capt
bdec0 75 72 65 4f 75 74 70 75 74 20 26 26 20 21 69 73 5f 63 61 6c 6c 61 62 6c 65 28 24 6f 75 74 70 75 ureOutput.&&.!is_callable($outpu
bdee0 74 29 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 4f 75 74 t)).{.$output.=.$process->getOut
bdf00 70 75 74 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 4f 75 74 70 75 74 20 3d 20 24 put();.}..$this->errorOutput.=.$
bdf20 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 0a 72 65 74 75 process->getErrorOutput();..retu
bdf40 72 6e 20 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 78 69 74 43 6f 64 65 28 29 3b 0a 7d 0a 0a 70 rn.$process->getExitCode();.}..p
bdf60 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 ublic.function.splitLines($outpu
bdf80 74 29 0a 7b 0a 24 6f 75 74 70 75 74 20 3d 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 0a 72 t).{.$output.=.trim($output);..r
bdfa0 65 74 75 72 6e 20 28 28 73 74 72 69 6e 67 29 20 24 6f 75 74 70 75 74 20 3d 3d 3d 20 27 27 29 20 eturn.((string).$output.===.'').
bdfc0 3f 20 61 72 72 61 79 28 29 20 3a 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 72 3f 5c 6e 7d 27 ?.array().:.preg_split('{\r?\n}'
bdfe0 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ,.$output);.}.......public.funct
be000 69 6f 6e 20 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 ion.getErrorOutput().{.return.$t
be020 68 69 73 2d 3e 65 72 72 6f 72 4f 75 74 70 75 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 his->errorOutput;.}..public.func
be040 74 69 6f 6e 20 6f 75 74 70 75 74 48 61 6e 64 6c 65 72 28 24 74 79 70 65 2c 20 24 62 75 66 66 65 tion.outputHandler($type,.$buffe
be060 72 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 61 70 74 75 72 65 4f 75 74 70 75 74 29 20 7b r).{.if.($this->captureOutput).{
be080 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 65 63 68 6f 20 24 62 75 66 66 65 72 3b 0a 7d 0a 0a 70 75 62 .return;.}..echo.$buffer;.}..pub
be0a0 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 69 6d 65 6f 75 74 28 29 lic.static.function.getTimeout()
be0c0 0a 7b 0a 72 65 74 75 72 6e 20 73 74 61 74 69 63 3a 3a 24 74 69 6d 65 6f 75 74 3b 0a 7d 0a 0a 70 .{.return.static::$timeout;.}..p
be0e0 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 69 6d 65 6f 75 74 ublic.static.function.setTimeout
be100 28 24 74 69 6d 65 6f 75 74 29 0a 7b 0a 73 74 61 74 69 63 3a 3a 24 74 69 6d 65 6f 75 74 20 3d 20 ($timeout).{.static::$timeout.=.
be120 24 74 69 6d 65 6f 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 $timeout;.}.........public.stati
be140 63 20 66 75 6e 63 74 69 6f 6e 20 65 73 63 61 70 65 28 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 72 c.function.escape($argument).{.r
be160 65 74 75 72 6e 20 50 72 6f 63 65 73 73 55 74 69 6c 73 3a 3a 65 73 63 61 70 65 41 72 67 75 6d 65 eturn.ProcessUtils::escapeArgume
be180 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a nt($argument);.}.}.<?php........
be1a0 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 ....namespace.Composer\Util;..us
be1c0 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c e.Composer\Config;.use.Composer\
be1e0 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 IO\IOInterface;.use.Composer\Dow
be200 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a nloader\TransportException;.....
be220 0a 0a 63 6c 61 73 73 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 0a 7b 0a 70 72 69 76 61 ..class.RemoteFilesystem.{.priva
be240 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 70 72 69 76 61 74 65 te.$io;.private.$config;.private
be260 20 24 73 63 68 65 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 62 79 74 65 73 4d 61 78 3b 0a 70 72 69 .$scheme;.private.$bytesMax;.pri
be280 76 61 74 65 20 24 6f 72 69 67 69 6e 55 72 6c 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 55 72 vate.$originUrl;.private.$fileUr
be2a0 6c 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 72 l;.private.$fileName;.private.$r
be2c0 65 74 72 79 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 67 72 65 73 73 3b 0a 70 72 69 76 61 74 65 etry;.private.$progress;.private
be2e0 20 24 6c 61 73 74 50 72 6f 67 72 65 73 73 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 .$lastProgress;.private.$options
be300 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 70 65 65 72 43 65 72 74 69 66 69 .=.array();.private.$peerCertifi
be320 63 61 74 65 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 64 69 73 61 cateMap.=.array();.private.$disa
be340 62 6c 65 54 6c 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 72 65 74 72 79 41 75 bleTls.=.false;.private.$retryAu
be360 74 68 46 61 69 6c 75 72 65 3b 0a 70 72 69 76 61 74 65 20 24 6c 61 73 74 48 65 61 64 65 72 73 3b thFailure;.private.$lastHeaders;
be380 0a 70 72 69 76 61 74 65 20 24 73 74 6f 72 65 41 75 74 68 3b 0a 70 72 69 76 61 74 65 20 24 64 65 .private.$storeAuth;.private.$de
be3a0 67 72 61 64 65 64 4d 6f 64 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 72 65 64 gradedMode.=.false;.private.$red
be3c0 69 72 65 63 74 73 3b 0a 70 72 69 76 61 74 65 20 24 6d 61 78 52 65 64 69 72 65 63 74 73 20 3d 20 irects;.private.$maxRedirects.=.
be3e0 32 30 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 20;..........public.function.__c
be400 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 onstruct(IOInterface.$io,.Config
be420 20 24 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 .$config.=.null,.array.$options.
be440 3d 20 61 72 72 61 79 28 29 2c 20 24 64 69 73 61 62 6c 65 54 6c 73 20 3d 20 66 61 6c 73 65 29 0a =.array(),.$disableTls.=.false).
be460 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 0a 0a 20 0a 20 69 66 20 28 24 64 69 73 {.$this->io.=.$io;......if.($dis
be480 61 62 6c 65 54 6c 73 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 ableTls.===.false).{.$this->opti
be4a0 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 54 6c 73 44 65 66 61 75 6c 74 73 28 24 6f 70 74 ons.=.$this->getTlsDefaults($opt
be4c0 69 6f 6e 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 54 6c ions);.}.else.{.$this->disableTl
be4e0 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 s.=.true;.}....$this->options.=.
be500 61 72 72 61 79 5f 72 65 70 6c 61 63 65 5f 72 65 63 75 72 73 69 76 65 28 24 74 68 69 73 2d 3e 6f array_replace_recursive($this->o
be520 70 74 69 6f 6e 73 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 ptions,.$options);.$this->config
be540 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 .=.$config;.}.............public
be560 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 66 69 6c 65 .function.copy($originUrl,.$file
be580 55 72 6c 2c 20 24 66 69 6c 65 4e 61 6d 65 2c 20 24 70 72 6f 67 72 65 73 73 20 3d 20 74 72 75 65 Url,.$fileName,.$progress.=.true
be5a0 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 72 65 74 75 72 6e 20 24 ,.$options.=.array()).{.return.$
be5c0 74 68 69 73 2d 3e 67 65 74 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 this->get($originUrl,.$fileUrl,.
be5e0 24 6f 70 74 69 6f 6e 73 2c 20 24 66 69 6c 65 4e 61 6d 65 2c 20 24 70 72 6f 67 72 65 73 73 29 3b $options,.$fileName,.$progress);
be600 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 .}............public.function.ge
be620 74 43 6f 6e 74 65 6e 74 73 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 tContents($originUrl,.$fileUrl,.
be640 24 70 72 6f 67 72 65 73 73 20 3d 20 74 72 75 65 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 $progress.=.true,.$options.=.arr
be660 61 79 28 29 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 28 24 6f 72 69 67 69 ay()).{.return.$this->get($origi
be680 6e 55 72 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 6f 70 74 69 6f 6e 73 2c 20 6e 75 6c 6c 2c 20 nUrl,.$fileUrl,.$options,.null,.
be6a0 24 70 72 6f 67 72 65 73 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 $progress);.}.......public.funct
be6c0 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ion.getOptions().{.return.$this-
be6e0 3e 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f >options;.}.......public.functio
be700 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 29 0a 7b 0a 24 n.setOptions(array.$options).{.$
be720 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 5f 72 65 this->options.=.array_replace_re
be740 63 75 72 73 69 76 65 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 2c 20 24 6f 70 74 69 6f 6e 73 cursive($this->options,.$options
be760 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 54 6c 73 44 69 73 61 62 );.}..public.function.isTlsDisab
be780 6c 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 54 6c 73 led().{.return.$this->disableTls
be7a0 20 3d 3d 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 .===.true;.}.......public.functi
be7c0 6f 6e 20 67 65 74 4c 61 73 74 48 65 61 64 65 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 on.getLastHeaders().{.return.$th
be7e0 69 73 2d 3e 6c 61 73 74 48 65 61 64 65 72 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 is->lastHeaders;.}.......public.
be800 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 48 65 61 64 65 72 56 61 6c 75 65 28 61 72 72 61 79 20 24 function.findHeaderValue(array.$
be820 68 65 61 64 65 72 73 2c 20 24 6e 61 6d 65 29 0a 7b 0a 24 76 61 6c 75 65 20 3d 20 6e 75 6c 6c 3b headers,.$name).{.$value.=.null;
be840 0a 66 6f 72 65 61 63 68 20 28 24 68 65 61 64 65 72 73 20 61 73 20 24 68 65 61 64 65 72 29 20 7b .foreach.($headers.as.$header).{
be860 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 27 2e 24 6e 61 6d 65 2e 27 3a 5c 73 2a .if.(preg_match('{^'.$name.':\s*
be880 28 2e 2b 3f 29 5c 73 2a 24 7d 69 27 2c 20 24 68 65 61 64 65 72 2c 20 24 6d 61 74 63 68 29 29 20 (.+?)\s*$}i',.$header,.$match)).
be8a0 7b 0a 24 76 61 6c 75 65 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 {.$value.=.$match[1];.}.elseif.(
be8c0 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 48 54 54 50 2f 7d 69 27 2c 20 24 68 65 61 64 65 72 29 preg_match('{^HTTP/}i',.$header)
be8e0 29 20 7b 0a 0a 20 0a 20 24 76 61 6c 75 65 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 ).{.....$value.=.null;.}.}..retu
be900 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f rn.$value;.}......public.functio
be920 6e 20 66 69 6e 64 53 74 61 74 75 73 43 6f 64 65 28 61 72 72 61 79 20 24 68 65 61 64 65 72 73 29 n.findStatusCode(array.$headers)
be940 0a 7b 0a 24 76 61 6c 75 65 20 3d 20 6e 75 6c 6c 3b 0a 66 6f 72 65 61 63 68 20 28 24 68 65 61 64 .{.$value.=.null;.foreach.($head
be960 65 72 73 20 61 73 20 24 68 65 61 64 65 72 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 ers.as.$header).{.if.(preg_match
be980 28 27 7b 5e 48 54 54 50 2f 5c 53 2b 20 28 5c 64 2b 29 7d 69 27 2c 20 24 68 65 61 64 65 72 2c 20 ('{^HTTP/\S+.(\d+)}i',.$header,.
be9a0 24 6d 61 74 63 68 29 29 20 7b 0a 0a 20 0a 20 24 76 61 6c 75 65 20 3d 20 28 69 6e 74 29 20 24 6d $match)).{.....$value.=.(int).$m
be9c0 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a atch[1];.}.}..return.$value;.}..
be9e0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e ..............protected.function
bea00 20 67 65 74 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 61 64 64 69 .get($originUrl,.$fileUrl,.$addi
bea20 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 2c 20 24 66 69 6c 65 4e 61 tionalOptions.=.array(),.$fileNa
bea40 6d 65 20 3d 20 6e 75 6c 6c 2c 20 24 70 72 6f 67 72 65 73 73 20 3d 20 74 72 75 65 29 0a 7b 0a 69 me.=.null,.$progress.=.true).{.i
bea60 66 20 28 73 74 72 70 6f 73 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 27 2e 67 69 74 68 75 62 2e 63 f.(strpos($originUrl,.'.github.c
bea80 6f 6d 27 29 20 3d 3d 3d 20 28 73 74 72 6c 65 6e 28 24 6f 72 69 67 69 6e 55 72 6c 29 20 2d 20 31 om').===.(strlen($originUrl).-.1
beaa0 31 29 29 20 7b 0a 24 6f 72 69 67 69 6e 55 72 6c 20 3d 20 27 67 69 74 68 75 62 2e 63 6f 6d 27 3b 1)).{.$originUrl.=.'github.com';
beac0 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 63 68 65 6d 65 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 66 .}..$this->scheme.=.parse_url($f
beae0 69 6c 65 55 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 53 43 48 45 4d 45 29 3b 0a 24 74 68 69 73 2d 3e ileUrl,.PHP_URL_SCHEME);.$this->
beb00 62 79 74 65 73 4d 61 78 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d bytesMax.=.0;.$this->originUrl.=
beb20 20 24 6f 72 69 67 69 6e 55 72 6c 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 20 3d 20 24 66 .$originUrl;.$this->fileUrl.=.$f
beb40 69 6c 65 55 72 6c 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 4e 61 6d 65 20 3d 20 24 66 69 6c 65 4e ileUrl;.$this->fileName.=.$fileN
beb60 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 20 3d 20 24 70 72 6f 67 72 65 73 73 ame;.$this->progress.=.$progress
beb80 3b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 50 72 6f 67 72 65 73 73 20 3d 20 6e 75 6c 6c 3b 0a 24 74 ;.$this->lastProgress.=.null;.$t
beba0 68 69 73 2d 3e 72 65 74 72 79 41 75 74 68 46 61 69 6c 75 72 65 20 3d 20 74 72 75 65 3b 0a 24 74 his->retryAuthFailure.=.true;.$t
bebc0 68 69 73 2d 3e 6c 61 73 74 48 65 61 64 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 his->lastHeaders.=.array();.$thi
bebe0 73 2d 3e 72 65 64 69 72 65 63 74 73 20 3d 20 31 3b 20 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d s->redirects.=.1;.....if.(preg_m
bec00 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 28 2e 2b 29 3a 28 2e 2b 29 40 28 5b 5e 2f 5d atch('{^https?://(.+):(.+)@([^/]
bec20 2b 29 7d 69 27 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 +)}i',.$fileUrl,.$match)).{.$thi
bec40 73 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6f 72 69 67 69 6e s->io->setAuthentication($origin
bec60 55 72 6c 2c 20 75 72 6c 64 65 63 6f 64 65 28 24 6d 61 74 63 68 5b 31 5d 29 2c 20 75 72 6c 64 65 Url,.urldecode($match[1]),.urlde
bec80 63 6f 64 65 28 24 6d 61 74 63 68 5b 32 5d 29 29 3b 0a 7d 0a 0a 24 74 65 6d 70 41 64 64 69 74 69 code($match[2]));.}..$tempAdditi
beca0 6f 6e 61 6c 4f 70 74 69 6f 6e 73 20 3d 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 onalOptions.=.$additionalOptions
becc0 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 65 6d 70 41 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f ;.if.(isset($tempAdditionalOptio
bece0 6e 73 5b 27 72 65 74 72 79 2d 61 75 74 68 2d 66 61 69 6c 75 72 65 27 5d 29 29 20 7b 0a 24 74 68 ns['retry-auth-failure'])).{.$th
bed00 69 73 2d 3e 72 65 74 72 79 41 75 74 68 46 61 69 6c 75 72 65 20 3d 20 28 62 6f 6f 6c 29 20 24 74 is->retryAuthFailure.=.(bool).$t
bed20 65 6d 70 41 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 5b 27 72 65 74 72 79 2d 61 75 74 68 empAdditionalOptions['retry-auth
bed40 2d 66 61 69 6c 75 72 65 27 5d 3b 0a 0a 75 6e 73 65 74 28 24 74 65 6d 70 41 64 64 69 74 69 6f 6e -failure'];..unset($tempAddition
bed60 61 6c 4f 70 74 69 6f 6e 73 5b 27 72 65 74 72 79 2d 61 75 74 68 2d 66 61 69 6c 75 72 65 27 5d 29 alOptions['retry-auth-failure'])
bed80 3b 0a 7d 0a 0a 24 69 73 52 65 64 69 72 65 63 74 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 69 73 ;.}..$isRedirect.=.false;.if.(is
beda0 73 65 74 28 24 74 65 6d 70 41 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 5b 27 72 65 64 69 set($tempAdditionalOptions['redi
bedc0 72 65 63 74 73 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 64 69 72 65 63 74 73 20 3d 20 24 rects'])).{.$this->redirects.=.$
bede0 74 65 6d 70 41 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 5b 27 72 65 64 69 72 65 63 74 73 tempAdditionalOptions['redirects
bee00 27 5d 3b 0a 24 69 73 52 65 64 69 72 65 63 74 20 3d 20 74 72 75 65 3b 0a 0a 75 6e 73 65 74 28 24 '];.$isRedirect.=.true;..unset($
bee20 74 65 6d 70 41 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 5b 27 72 65 64 69 72 65 63 74 73 tempAdditionalOptions['redirects
bee40 27 5d 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 ']);.}..$options.=.$this->getOpt
bee60 69 6f 6e 73 46 6f 72 55 72 6c 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 65 6d 70 41 64 64 69 ionsForUrl($originUrl,.$tempAddi
bee80 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 29 3b 0a 75 6e 73 65 74 28 24 74 65 6d 70 41 64 64 69 74 tionalOptions);.unset($tempAddit
beea0 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 29 3b 0a 24 75 73 65 72 6c 61 6e 64 46 6f 6c 6c 6f 77 20 3d ionalOptions);.$userlandFollow.=
beec0 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 66 6f 6c 6c 6f 77 5f .isset($options['http']['follow_
beee0 6c 6f 63 61 74 69 6f 6e 27 5d 29 20 26 26 20 21 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d location']).&&.!$options['http']
bef00 5b 27 66 6f 6c 6c 6f 77 5f 6c 6f 63 61 74 69 6f 6e 27 5d 3b 0a 0a 24 6f 72 69 67 46 69 6c 65 55 ['follow_location'];..$origFileU
bef20 72 6c 20 3d 20 24 66 69 6c 65 55 72 6c 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f rl.=.$fileUrl;..if.(isset($optio
bef40 6e 73 5b 27 67 69 74 68 75 62 2d 74 6f 6b 65 6e 27 5d 29 29 20 7b 0a 24 66 69 6c 65 55 72 6c 20 ns['github-token'])).{.$fileUrl.
bef60 2e 3d 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 66 69 6c 65 55 72 6c 2c 20 27 .=.(false.===.strpos($fileUrl,.'
bef80 3f 27 29 20 3f 20 27 3f 27 20 3a 20 27 26 27 29 20 2e 20 27 61 63 63 65 73 73 5f 74 6f 6b 65 6e ?').?.'?'.:.'&')...'access_token
befa0 3d 27 2e 24 6f 70 74 69 6f 6e 73 5b 27 67 69 74 68 75 62 2d 74 6f 6b 65 6e 27 5d 3b 0a 75 6e 73 ='.$options['github-token'];.uns
befc0 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 67 69 74 68 75 62 2d 74 6f 6b 65 6e 27 5d 29 3b 0a 7d 0a et($options['github-token']);.}.
befe0 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 67 69 74 6c 61 62 2d 74 6f 6b 65 .if.(isset($options['gitlab-toke
bf000 6e 27 5d 29 29 20 7b 0a 24 66 69 6c 65 55 72 6c 20 2e 3d 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 n'])).{.$fileUrl..=.(false.===.s
bf020 74 72 70 6f 73 28 24 66 69 6c 65 55 72 6c 2c 20 27 3f 27 29 20 3f 20 27 3f 27 20 3a 20 27 26 27 trpos($fileUrl,.'?').?.'?'.:.'&'
bf040 29 20 2e 20 27 61 63 63 65 73 73 5f 74 6f 6b 65 6e 3d 27 2e 24 6f 70 74 69 6f 6e 73 5b 27 67 69 )...'access_token='.$options['gi
bf060 74 6c 61 62 2d 74 6f 6b 65 6e 27 5d 3b 0a 75 6e 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 67 69 tlab-token'];.unset($options['gi
bf080 74 6c 61 62 2d 74 6f 6b 65 6e 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 tlab-token']);.}..if.(isset($opt
bf0a0 69 6f 6e 73 5b 27 68 74 74 70 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 ions['http'])).{.$options['http'
bf0c0 5d 5b 27 69 67 6e 6f 72 65 5f 65 72 72 6f 72 73 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 ]['ignore_errors'].=.true;.}..if
bf0e0 20 28 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 20 26 26 20 73 75 62 73 74 72 28 .($this->degradedMode.&&.substr(
bf100 24 66 69 6c 65 55 72 6c 2c 20 30 2c 20 32 31 29 20 3d 3d 3d 20 27 68 74 74 70 3a 2f 2f 70 61 63 $fileUrl,.0,.21).===.'http://pac
bf120 6b 61 67 69 73 74 2e 6f 72 67 2f 27 29 20 7b 0a 0a 20 24 66 69 6c 65 55 72 6c 20 3d 20 27 68 74 kagist.org/').{...$fileUrl.=.'ht
bf140 74 70 3a 2f 2f 27 20 2e 20 67 65 74 68 6f 73 74 62 79 6e 61 6d 65 28 27 70 61 63 6b 61 67 69 73 tp://'...gethostbyname('packagis
bf160 74 2e 6f 72 67 27 29 20 2e 20 73 75 62 73 74 72 28 24 66 69 6c 65 55 72 6c 2c 20 32 30 29 3b 0a t.org')...substr($fileUrl,.20);.
bf180 7d 0a 0a 24 63 74 78 20 3d 20 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 3a 3a }..$ctx.=.StreamContextFactory::
bf1a0 67 65 74 43 6f 6e 74 65 78 74 28 24 66 69 6c 65 55 72 6c 2c 20 24 6f 70 74 69 6f 6e 73 2c 20 61 getContext($fileUrl,.$options,.a
bf1c0 72 72 61 79 28 27 6e 6f 74 69 66 69 63 61 74 69 6f 6e 27 20 3d 3e 20 61 72 72 61 79 28 24 74 68 rray('notification'.=>.array($th
bf1e0 69 73 2c 20 27 63 61 6c 6c 62 61 63 6b 47 65 74 27 29 29 29 3b 0a 0a 24 61 63 74 75 61 6c 43 6f is,.'callbackGet')));..$actualCo
bf200 6e 74 65 78 74 4f 70 74 69 6f 6e 73 20 3d 20 73 74 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f 67 65 ntextOptions.=.stream_context_ge
bf220 74 5f 6f 70 74 69 6f 6e 73 28 24 63 74 78 29 3b 0a 24 75 73 69 6e 67 50 72 6f 78 79 20 3d 20 21 t_options($ctx);.$usingProxy.=.!
bf240 65 6d 70 74 79 28 24 61 63 74 75 61 6c 43 6f 6e 74 65 78 74 4f 70 74 69 6f 6e 73 5b 27 68 74 74 empty($actualContextOptions['htt
bf260 70 27 5d 5b 27 70 72 6f 78 79 27 5d 29 20 3f 20 27 20 75 73 69 6e 67 20 70 72 6f 78 79 20 27 20 p']['proxy']).?.'.using.proxy.'.
bf280 2e 20 24 61 63 74 75 61 6c 43 6f 6e 74 65 78 74 4f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b ..$actualContextOptions['http'][
bf2a0 27 70 72 6f 78 79 27 5d 20 3a 20 27 27 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 'proxy'].:.'';.$this->io->writeE
bf2c0 72 72 6f 72 28 28 73 75 62 73 74 72 28 24 6f 72 69 67 46 69 6c 65 55 72 6c 2c 20 30 2c 20 34 29 rror((substr($origFileUrl,.0,.4)
bf2e0 20 3d 3d 3d 20 27 68 74 74 70 27 20 3f 20 27 44 6f 77 6e 6c 6f 61 64 69 6e 67 20 27 20 3a 20 27 .===.'http'.?.'Downloading.'.:.'
bf300 52 65 61 64 69 6e 67 20 27 29 20 2e 20 24 6f 72 69 67 46 69 6c 65 55 72 6c 20 2e 20 24 75 73 69 Reading.')...$origFileUrl...$usi
bf320 6e 67 50 72 6f 78 79 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 ngProxy,.true,.IOInterface::DEBU
bf340 47 29 3b 0a 75 6e 73 65 74 28 24 6f 72 69 67 46 69 6c 65 55 72 6c 2c 20 24 61 63 74 75 61 6c 43 G);.unset($origFileUrl,.$actualC
bf360 6f 6e 74 65 78 74 4f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 67 ontextOptions);..if.($this->prog
bf380 72 65 73 73 20 26 26 20 21 24 69 73 52 65 64 69 72 65 63 74 29 20 7b 0a 24 74 68 69 73 2d 3e 69 ress.&&.!$isRedirect).{.$this->i
bf3a0 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 20 20 44 6f 77 6e 6c 6f 61 64 69 6e 67 3a 20 o->writeError("....Downloading:.
bf3c0 3c 63 6f 6d 6d 65 6e 74 3e 43 6f 6e 6e 65 63 74 69 6e 67 2e 2e 2e 3c 2f 63 6f 6d 6d 65 6e 74 3e <comment>Connecting...</comment>
bf3e0 22 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 0a 28 24 74 68 69 73 2d 3e 73 63 68 ",.false);.}....if.(.($this->sch
bf400 65 6d 65 20 3d 3d 3d 20 27 68 74 74 70 27 20 7c 7c 20 73 75 62 73 74 72 28 24 66 69 6c 65 55 72 eme.===.'http'.||.substr($fileUr
bf420 6c 2c 20 30 2c 20 35 29 20 3d 3d 3d 20 27 68 74 74 70 3a 27 29 0a 26 26 20 24 74 68 69 73 2d 3e l,.0,.5).===.'http:').&&.$this->
bf440 63 6f 6e 66 69 67 20 26 26 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 73 65 config.&&.$this->config->get('se
bf460 63 75 72 65 2d 68 74 74 70 27 29 0a 29 20 7b 0a 0a 20 69 66 20 28 73 75 62 73 74 72 28 24 66 69 cure-http').).{...if.(substr($fi
bf480 6c 65 55 72 6c 2c 20 30 2c 20 32 33 29 20 21 3d 3d 20 27 68 74 74 70 3a 2f 2f 70 61 63 6b 61 67 leUrl,.0,.23).!==.'http://packag
bf4a0 69 73 74 2e 6f 72 67 2f 70 2f 27 20 7c 7c 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 ist.org/p/'.||.(false.===.strpos
bf4c0 28 24 66 69 6c 65 55 72 6c 2c 20 27 24 27 29 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 ($fileUrl,.'$').&&.false.===.str
bf4e0 70 6f 73 28 24 66 69 6c 65 55 72 6c 2c 20 27 25 32 34 27 29 29 29 20 7b 0a 0a 20 74 68 72 6f 77 pos($fileUrl,.'%24'))).{...throw
bf500 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 .new.TransportException(sprintf(
bf520 0a 27 59 6f 75 72 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 6c .'Your.configuration.does.not.al
bf540 6c 6f 77 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f 20 25 73 3a 2f 2f 25 73 2e 20 53 65 65 20 68 low.connection.to.%s://%s..See.h
bf560 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 30 36 2d 63 6f ttps://getcomposer.org/doc/06-co
bf580 6e 66 69 67 2e 6d 64 23 73 65 63 75 72 65 2d 68 74 74 70 20 66 6f 72 20 64 65 74 61 69 6c 73 2e nfig.md#secure-http.for.details.
bf5a0 27 2c 0a 24 74 68 69 73 2d 3e 73 63 68 65 6d 65 2c 0a 24 6f 72 69 67 69 6e 55 72 6c 0a 29 29 3b ',.$this->scheme,.$originUrl.));
bf5c0 0a 7d 0a 7d 0a 0a 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d 20 27 27 3b 0a 24 65 72 72 6f 72 .}.}..$errorMessage.=.'';.$error
bf5e0 43 6f 64 65 20 3d 20 30 3b 0a 24 72 65 73 75 6c 74 20 3d 20 66 61 6c 73 65 3b 0a 73 65 74 5f 65 Code.=.0;.$result.=.false;.set_e
bf600 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 66 75 6e 63 74 69 6f 6e 20 28 24 63 6f 64 65 2c 20 24 6d rror_handler(function.($code,.$m
bf620 73 67 29 20 75 73 65 20 28 26 24 65 72 72 6f 72 4d 65 73 73 61 67 65 29 20 7b 0a 69 66 20 28 24 sg).use.(&$errorMessage).{.if.($
bf640 65 72 72 6f 72 4d 65 73 73 61 67 65 29 20 7b 0a 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 2e 3d errorMessage).{.$errorMessage..=
bf660 20 22 5c 6e 22 3b 0a 7d 0a 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 2e 3d 20 70 72 65 67 5f 72 ."\n";.}.$errorMessage..=.preg_r
bf680 65 70 6c 61 63 65 28 27 7b 5e 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 5c 28 2e 2a 3f eplace('{^file_get_contents\(.*?
bf6a0 5c 29 3a 20 7d 27 2c 20 27 27 2c 20 24 6d 73 67 29 3b 0a 7d 29 3b 0a 74 72 79 20 7b 0a 24 72 65 \):.}',.'',.$msg);.});.try.{.$re
bf6c0 73 75 6c 74 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 55 72 sult.=.file_get_contents($fileUr
bf6e0 6c 2c 20 66 61 6c 73 65 2c 20 24 63 74 78 29 3b 0a 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f l,.false,.$ctx);..if.(PHP_VERSIO
bf700 4e 5f 49 44 20 3c 20 35 30 36 30 30 20 26 26 20 21 65 6d 70 74 79 28 24 6f 70 74 69 6f 6e 73 5b N_ID.<.50600.&&.!empty($options[
bf720 27 73 73 6c 27 5d 5b 27 70 65 65 72 5f 66 69 6e 67 65 72 70 72 69 6e 74 27 5d 29 29 20 7b 0a 0a 'ssl']['peer_fingerprint'])).{..
bf740 20 24 70 61 72 61 6d 73 20 3d 20 73 74 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f 67 65 74 5f 70 61 .$params.=.stream_context_get_pa
bf760 72 61 6d 73 28 24 63 74 78 29 3b 0a 24 65 78 70 65 63 74 65 64 50 65 65 72 46 69 6e 67 65 72 70 rams($ctx);.$expectedPeerFingerp
bf780 72 69 6e 74 20 3d 20 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 70 65 65 72 5f 66 69 6e rint.=.$options['ssl']['peer_fin
bf7a0 67 65 72 70 72 69 6e 74 27 5d 3b 0a 24 70 65 65 72 46 69 6e 67 65 72 70 72 69 6e 74 20 3d 20 54 gerprint'];.$peerFingerprint.=.T
bf7c0 6c 73 48 65 6c 70 65 72 3a 3a 67 65 74 43 65 72 74 69 66 69 63 61 74 65 46 69 6e 67 65 72 70 72 lsHelper::getCertificateFingerpr
bf7e0 69 6e 74 28 24 70 61 72 61 6d 73 5b 27 6f 70 74 69 6f 6e 73 27 5d 5b 27 73 73 6c 27 5d 5b 27 70 int($params['options']['ssl']['p
bf800 65 65 72 5f 63 65 72 74 69 66 69 63 61 74 65 27 5d 29 3b 0a 0a 0a 20 69 66 20 28 24 65 78 70 65 eer_certificate']);....if.($expe
bf820 63 74 65 64 50 65 65 72 46 69 6e 67 65 72 70 72 69 6e 74 20 21 3d 3d 20 24 70 65 65 72 46 69 6e ctedPeerFingerprint.!==.$peerFin
bf840 67 65 72 70 72 69 6e 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 gerprint).{.throw.new.TransportE
bf860 78 63 65 70 74 69 6f 6e 28 27 50 65 65 72 20 66 69 6e 67 65 72 70 72 69 6e 74 20 64 69 64 20 6e xception('Peer.fingerprint.did.n
bf880 6f 74 20 6d 61 74 63 68 27 29 3b 0a 7d 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 ot.match');.}.}.}.catch.(\Except
bf8a0 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 72 61 6e ion.$e).{.if.($e.instanceof.Tran
bf8c0 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 26 26 20 21 65 6d 70 74 79 28 24 68 74 74 70 5f 72 sportException.&&.!empty($http_r
bf8e0 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 5b 30 5d 29 29 20 7b 0a 24 65 2d 3e 73 65 74 48 65 61 esponse_header[0])).{.$e->setHea
bf900 64 65 72 73 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 29 3b 0a 24 65 2d ders($http_response_header);.$e-
bf920 3e 73 65 74 53 74 61 74 75 73 43 6f 64 65 28 24 74 68 69 73 2d 3e 66 69 6e 64 53 74 61 74 75 73 >setStatusCode($this->findStatus
bf940 43 6f 64 65 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 29 29 3b 0a 7d 0a Code($http_response_header));.}.
bf960 69 66 20 28 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 if.($e.instanceof.TransportExcep
bf980 74 69 6f 6e 20 26 26 20 24 72 65 73 75 6c 74 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 65 2d tion.&&.$result.!==.false).{.$e-
bf9a0 3e 73 65 74 52 65 73 70 6f 6e 73 65 28 24 72 65 73 75 6c 74 29 3b 0a 7d 0a 24 72 65 73 75 6c 74 >setResponse($result);.}.$result
bf9c0 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 69 66 20 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 26 26 .=.false;.}.if.($errorMessage.&&
bf9e0 20 21 69 6e 69 5f 67 65 74 28 27 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e 27 29 29 20 7b 0a .!ini_get('allow_url_fopen')).{.
bfa00 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d 20 27 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e $errorMessage.=.'allow_url_fopen
bfa20 20 6d 75 73 74 20 62 65 20 65 6e 61 62 6c 65 64 20 69 6e 20 70 68 70 2e 69 6e 69 20 28 27 2e 24 .must.be.enabled.in.php.ini.('.$
bfa40 65 72 72 6f 72 4d 65 73 73 61 67 65 2e 27 29 27 3b 0a 7d 0a 72 65 73 74 6f 72 65 5f 65 72 72 6f errorMessage.')';.}.restore_erro
bfa60 72 5f 68 61 6e 64 6c 65 72 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 65 29 20 26 26 20 21 24 r_handler();.if.(isset($e).&&.!$
bfa80 74 68 69 73 2d 3e 72 65 74 72 79 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 67 72 61 this->retry).{.if.(!$this->degra
bfaa0 64 65 64 4d 6f 64 65 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 65 2d 3e dedMode.&&.false.!==.strpos($e->
bfac0 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 27 4f 70 65 72 61 74 69 6f 6e 20 74 69 6d 65 64 20 6f getMessage(),.'Operation.timed.o
bfae0 75 74 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 20 3d 20 74 72 ut')).{.$this->degradedMode.=.tr
bfb00 75 65 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 28 ue;.$this->io->writeError(array(
bfb20 0a 27 3c 65 72 72 6f 72 3e 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 65 .'<error>'.$e->getMessage().'</e
bfb40 72 72 6f 72 3e 27 2c 0a 27 3c 65 72 72 6f 72 3e 52 65 74 72 79 69 6e 67 20 77 69 74 68 20 64 65 rror>',.'<error>Retrying.with.de
bfb60 67 72 61 64 65 64 20 6d 6f 64 65 2c 20 63 68 65 63 6b 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f graded.mode,.check.https://getco
bfb80 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 61 72 74 69 63 6c 65 73 2f 74 72 6f 75 62 6c 65 73 mposer.org/doc/articles/troubles
bfba0 68 6f 6f 74 69 6e 67 2e 6d 64 23 64 65 67 72 61 64 65 64 2d 6d 6f 64 65 20 66 6f 72 20 6d 6f 72 hooting.md#degraded-mode.for.mor
bfbc0 65 20 69 6e 66 6f 3c 2f 65 72 72 6f 72 3e 27 2c 0a 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 e.info</error>',.));..return.$th
bfbe0 69 73 2d 3e 67 65 74 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 68 69 73 2d is->get($this->originUrl,.$this-
bfc00 3e 66 69 6c 65 55 72 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 2c 20 24 74 >fileUrl,.$additionalOptions,.$t
bfc20 68 69 73 2d 3e 66 69 6c 65 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 3b his->fileName,.$this->progress);
bfc40 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 73 74 61 74 75 73 43 6f 64 65 20 3d 20 6e .}..throw.$e;.}..$statusCode.=.n
bfc60 75 6c 6c 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 ull;.if.(!empty($http_response_h
bfc80 65 61 64 65 72 5b 30 5d 29 29 20 7b 0a 24 73 74 61 74 75 73 43 6f 64 65 20 3d 20 24 74 68 69 73 eader[0])).{.$statusCode.=.$this
bfca0 2d 3e 66 69 6e 64 53 74 61 74 75 73 43 6f 64 65 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f ->findStatusCode($http_response_
bfcc0 68 65 61 64 65 72 29 3b 0a 7d 0a 0a 0a 20 24 68 61 73 46 6f 6c 6c 6f 77 65 64 52 65 64 69 72 65 header);.}....$hasFollowedRedire
bfce0 63 74 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 24 75 73 65 72 6c 61 6e 64 46 6f 6c 6c 6f 77 20 ct.=.false;.if.($userlandFollow.
bfd00 26 26 20 24 73 74 61 74 75 73 43 6f 64 65 20 3e 3d 20 33 30 30 20 26 26 20 24 73 74 61 74 75 73 &&.$statusCode.>=.300.&&.$status
bfd20 43 6f 64 65 20 3c 3d 20 33 39 39 20 26 26 20 24 73 74 61 74 75 73 43 6f 64 65 20 21 3d 3d 20 33 Code.<=.399.&&.$statusCode.!==.3
bfd40 30 34 20 26 26 20 24 74 68 69 73 2d 3e 72 65 64 69 72 65 63 74 73 20 3c 20 24 74 68 69 73 2d 3e 04.&&.$this->redirects.<.$this->
bfd60 6d 61 78 52 65 64 69 72 65 63 74 73 29 20 7b 0a 24 68 61 73 46 6f 6c 6c 6f 77 65 64 52 65 64 69 maxRedirects).{.$hasFollowedRedi
bfd80 72 65 63 74 20 3d 20 74 72 75 65 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 68 61 rect.=.true;.$result.=.$this->ha
bfda0 6e 64 6c 65 52 65 64 69 72 65 63 74 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 ndleRedirect($http_response_head
bfdc0 65 72 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 2c 20 24 72 65 73 75 6c 74 29 er,.$additionalOptions,.$result)
bfde0 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 73 74 61 74 75 73 43 6f 64 65 20 26 26 20 24 73 74 61 74 75 ;.}....if.($statusCode.&&.$statu
bfe00 73 43 6f 64 65 20 3e 3d 20 34 30 30 20 26 26 20 24 73 74 61 74 75 73 43 6f 64 65 20 3c 3d 20 35 sCode.>=.400.&&.$statusCode.<=.5
bfe20 39 39 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 72 65 74 72 79 29 20 7b 0a 24 65 20 3d 20 99).{.if.(!$this->retry).{.$e.=.
bfe40 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 22 27 2e 24 new.TransportException('The."'.$
bfe60 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2e 27 22 20 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 this->fileUrl.'".file.could.not.
bfe80 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 28 27 2e 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f be.downloaded.('.$http_response_
bfea0 68 65 61 64 65 72 5b 30 5d 2e 27 29 27 2c 20 24 73 74 61 74 75 73 43 6f 64 65 29 3b 0a 24 65 2d header[0].')',.$statusCode);.$e-
bfec0 3e 73 65 74 48 65 61 64 65 72 73 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 >setHeaders($http_response_heade
bfee0 72 29 3b 0a 24 65 2d 3e 73 65 74 52 65 73 70 6f 6e 73 65 28 24 72 65 73 75 6c 74 29 3b 0a 24 65 r);.$e->setResponse($result);.$e
bff00 2d 3e 73 65 74 53 74 61 74 75 73 43 6f 64 65 28 24 73 74 61 74 75 73 43 6f 64 65 29 3b 0a 74 68 ->setStatusCode($statusCode);.th
bff20 72 6f 77 20 24 65 3b 0a 7d 0a 24 72 65 73 75 6c 74 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 row.$e;.}.$result.=.false;.}..if
bff40 20 28 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 20 26 26 20 21 24 74 68 69 73 2d 3e 72 65 74 .($this->progress.&&.!$this->ret
bff60 72 79 20 26 26 20 21 24 69 73 52 65 64 69 72 65 63 74 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d ry.&&.!$isRedirect).{.$this->io-
bff80 3e 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 20 20 44 6f 77 6e 6c 6f 61 64 69 6e 67 >overwriteError("....Downloading
bffa0 3a 20 3c 63 6f 6d 6d 65 6e 74 3e 31 30 30 25 3c 2f 63 6f 6d 6d 65 6e 74 3e 22 29 3b 0a 7d 0a 0a :.<comment>100%</comment>");.}..
bffc0 0a 20 69 66 20 28 24 72 65 73 75 6c 74 20 26 26 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 ..if.($result.&&.extension_loade
bffe0 64 28 27 7a 6c 69 62 27 29 20 26 26 20 73 75 62 73 74 72 28 24 66 69 6c 65 55 72 6c 2c 20 30 2c d('zlib').&&.substr($fileUrl,.0,
c0000 20 34 29 20 3d 3d 3d 20 27 68 74 74 70 27 20 26 26 20 21 24 68 61 73 46 6f 6c 6c 6f 77 65 64 52 .4).===.'http'.&&.!$hasFollowedR
c0020 65 64 69 72 65 63 74 29 20 7b 0a 24 64 65 63 6f 64 65 20 3d 20 27 67 7a 69 70 27 20 3d 3d 3d 20 edirect).{.$decode.=.'gzip'.===.
c0040 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 68 69 73 2d 3e 66 69 6e 64 48 65 61 64 65 72 56 61 6c 75 strtolower($this->findHeaderValu
c0060 65 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 2c 20 27 63 6f 6e 74 65 6e e($http_response_header,.'conten
c0080 74 2d 65 6e 63 6f 64 69 6e 67 27 29 29 3b 0a 0a 69 66 20 28 24 64 65 63 6f 64 65 29 20 7b 0a 74 t-encoding'));..if.($decode).{.t
c00a0 72 79 20 7b 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 34 30 30 ry.{.if.(PHP_VERSION_ID.>=.50400
c00c0 29 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 7a 6c 69 62 5f 64 65 63 6f 64 65 28 24 72 65 73 75 6c ).{.$result.=.zlib_decode($resul
c00e0 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 72 65 73 75 6c 74 20 3d 20 66 69 6c 65 5f 67 65 t);.}.else.{...$result.=.file_ge
c0100 74 5f 63 6f 6e 74 65 6e 74 73 28 27 63 6f 6d 70 72 65 73 73 2e 7a 6c 69 62 3a 2f 2f 64 61 74 61 t_contents('compress.zlib://data
c0120 3a 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6f 63 74 65 74 2d 73 74 72 65 61 6d 3b 62 61 73 65 36 34 :application/octet-stream;base64
c0140 2c 27 2e 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 72 65 73 75 6c 74 29 29 3b 0a 7d 0a 0a 69 ,'.base64_encode($result));.}..i
c0160 66 20 28 21 24 72 65 73 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f f.(!$result).{.throw.new.Transpo
c0180 72 74 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 64 65 63 6f 64 65 20 7a 6c rtException('Failed.to.decode.zl
c01a0 69 62 20 73 74 72 65 61 6d 27 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 ib.stream');.}.}.catch.(\Excepti
c01c0 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 on.$e).{.if.($this->degradedMode
c01e0 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 ).{.throw.$e;.}..$this->degraded
c0200 4d 6f 64 65 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 Mode.=.true;.$this->io->writeErr
c0220 6f 72 28 61 72 72 61 79 28 0a 27 3c 65 72 72 6f 72 3e 46 61 69 6c 65 64 20 74 6f 20 64 65 63 6f or(array(.'<error>Failed.to.deco
c0240 64 65 20 72 65 73 70 6f 6e 73 65 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e de.response:.'.$e->getMessage().
c0260 27 3c 2f 65 72 72 6f 72 3e 27 2c 0a 27 3c 65 72 72 6f 72 3e 52 65 74 72 79 69 6e 67 20 77 69 74 '</error>',.'<error>Retrying.wit
c0280 68 20 64 65 67 72 61 64 65 64 20 6d 6f 64 65 2c 20 63 68 65 63 6b 20 68 74 74 70 73 3a 2f 2f 67 h.degraded.mode,.check.https://g
c02a0 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 61 72 74 69 63 6c 65 73 2f 74 72 6f 75 etcomposer.org/doc/articles/trou
c02c0 62 6c 65 73 68 6f 6f 74 69 6e 67 2e 6d 64 23 64 65 67 72 61 64 65 64 2d 6d 6f 64 65 20 66 6f 72 bleshooting.md#degraded-mode.for
c02e0 20 6d 6f 72 65 20 69 6e 66 6f 3c 2f 65 72 72 6f 72 3e 27 2c 0a 29 29 3b 0a 0a 72 65 74 75 72 6e .more.info</error>',.));..return
c0300 20 24 74 68 69 73 2d 3e 67 65 74 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 .$this->get($this->originUrl,.$t
c0320 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 his->fileUrl,.$additionalOptions
c0340 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 ,.$this->fileName,.$this->progre
c0360 73 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 72 65 73 ss);.}.}.}....if.(false.!==.$res
c0380 75 6c 74 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 66 69 6c 65 4e 61 6d 65 20 26 26 20 21 24 69 ult.&&.null.!==.$fileName.&&.!$i
c03a0 73 52 65 64 69 72 65 63 74 29 20 7b 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 72 65 73 75 6c 74 29 sRedirect).{.if.(''.===.$result)
c03c0 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 .{.throw.new.TransportException(
c03e0 27 22 27 2e 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2e 27 22 20 61 70 70 65 61 72 73 20 62 72 '"'.$this->fileUrl.'".appears.br
c0400 6f 6b 65 6e 2c 20 61 6e 64 20 72 65 74 75 72 6e 65 64 20 61 6e 20 65 6d 70 74 79 20 32 30 30 20 oken,.and.returned.an.empty.200.
c0420 72 65 73 70 6f 6e 73 65 27 29 3b 0a 7d 0a 0a 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d 20 27 response');.}..$errorMessage.=.'
c0440 27 3b 0a 73 65 74 5f 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 66 75 6e 63 74 69 6f 6e 20 28 24 ';.set_error_handler(function.($
c0460 63 6f 64 65 2c 20 24 6d 73 67 29 20 75 73 65 20 28 26 24 65 72 72 6f 72 4d 65 73 73 61 67 65 29 code,.$msg).use.(&$errorMessage)
c0480 20 7b 0a 69 66 20 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 29 20 7b 0a 24 65 72 72 6f 72 4d 65 .{.if.($errorMessage).{.$errorMe
c04a0 73 73 61 67 65 20 2e 3d 20 22 5c 6e 22 3b 0a 7d 0a 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 2e ssage..=."\n";.}.$errorMessage..
c04c0 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 =.preg_replace('{^file_put_conte
c04e0 6e 74 73 5c 28 2e 2a 3f 5c 29 3a 20 7d 27 2c 20 27 27 2c 20 24 6d 73 67 29 3b 0a 7d 29 3b 0a 24 nts\(.*?\):.}',.'',.$msg);.});.$
c0500 72 65 73 75 6c 74 20 3d 20 28 62 6f 6f 6c 29 20 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 result.=.(bool).file_put_content
c0520 73 28 24 66 69 6c 65 4e 61 6d 65 2c 20 24 72 65 73 75 6c 74 29 3b 0a 72 65 73 74 6f 72 65 5f 65 s($fileName,.$result);.restore_e
c0540 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 rror_handler();.if.(false.===.$r
c0560 65 73 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 esult).{.throw.new.TransportExce
c0580 70 74 69 6f 6e 28 27 54 68 65 20 22 27 2e 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2e 27 22 20 ption('The."'.$this->fileUrl.'".
c05a0 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 77 72 69 74 74 65 6e 20 74 6f 20 27 2e 24 file.could.not.be.written.to.'.$
c05c0 66 69 6c 65 4e 61 6d 65 2e 27 3a 20 27 2e 24 65 72 72 6f 72 4d 65 73 73 61 67 65 29 3b 0a 7d 0a fileName.':.'.$errorMessage);.}.
c05e0 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 73 75 6c 74 20 26 26 20 66 61 }....if.(false.===.$result.&&.fa
c0600 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c 20 27 50 lse.!==.strpos($errorMessage,.'P
c0620 65 65 72 20 63 65 72 74 69 66 69 63 61 74 65 27 29 20 26 26 20 50 48 50 5f 56 45 52 53 49 4f 4e eer.certificate').&&.PHP_VERSION
c0640 5f 49 44 20 3c 20 35 30 36 30 30 29 20 7b 0a 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 0a _ID.<.50600).{..................
c0660 20 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 69 66 20 28 54 6c 73 48 65 6c 70 65 72 3a 3a 69 73 ...............if.(TlsHelper::is
c0680 4f 70 65 6e 73 73 6c 50 61 72 73 65 53 61 66 65 28 29 29 20 7b 0a 24 63 65 72 74 44 65 74 61 69 OpensslParseSafe()).{.$certDetai
c06a0 6c 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 65 72 74 69 66 69 63 61 74 65 43 6e 41 6e 64 46 ls.=.$this->getCertificateCnAndF
c06c0 70 28 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 p($this->fileUrl,.$options);..if
c06e0 20 28 24 63 65 72 74 44 65 74 61 69 6c 73 29 20 7b 0a 24 74 68 69 73 2d 3e 70 65 65 72 43 65 72 .($certDetails).{.$this->peerCer
c0700 74 69 66 69 63 61 74 65 4d 61 70 5b 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 41 75 74 68 6f 72 69 tificateMap[$this->getUrlAuthori
c0720 74 79 28 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 29 5d 20 3d 20 24 63 65 72 74 44 65 74 61 69 ty($this->fileUrl)].=.$certDetai
c0740 6c 73 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 74 72 79 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 20 65 6c ls;..$this->retry.=.true;.}.}.el
c0760 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e se.{.$this->io->writeError(sprin
c0780 74 66 28 0a 27 3c 65 72 72 6f 72 3e 59 6f 75 72 20 76 65 72 73 69 6f 6e 20 6f 66 20 50 48 50 2c tf(.'<error>Your.version.of.PHP,
c07a0 20 25 73 2c 20 69 73 20 61 66 66 65 63 74 65 64 20 62 79 20 43 56 45 2d 32 30 31 33 2d 36 34 32 .%s,.is.affected.by.CVE-2013-642
c07c0 30 20 61 6e 64 20 63 61 6e 6e 6f 74 20 73 61 66 65 6c 79 20 70 65 72 66 6f 72 6d 20 63 65 72 74 0.and.cannot.safely.perform.cert
c07e0 69 66 69 63 61 74 65 20 76 61 6c 69 64 61 74 69 6f 6e 2c 20 77 65 20 73 74 72 6f 6e 67 6c 79 20 ificate.validation,.we.strongly.
c0800 73 75 67 67 65 73 74 20 79 6f 75 20 75 70 67 72 61 64 65 2e 3c 2f 65 72 72 6f 72 3e 27 2c 0a 50 suggest.you.upgrade.</error>',.P
c0820 48 50 5f 56 45 52 53 49 4f 4e 0a 29 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 HP_VERSION.));.}.}..if.($this->r
c0840 65 74 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 74 72 79 20 3d 20 66 61 6c 73 65 3b 0a 0a 24 etry).{.$this->retry.=.false;..$
c0860 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 result.=.$this->get($this->origi
c0880 6e 55 72 6c 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 nUrl,.$this->fileUrl,.$additiona
c08a0 6c 4f 70 74 69 6f 6e 73 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 4e 61 6d 65 2c 20 24 74 68 69 73 lOptions,.$this->fileName,.$this
c08c0 2d 3e 70 72 6f 67 72 65 73 73 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 74 6f 72 65 41 75 ->progress);..if.($this->storeAu
c08e0 74 68 20 26 26 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 20 7b 0a 24 61 75 74 68 48 65 6c 70 th.&&.$this->config).{.$authHelp
c0900 65 72 20 3d 20 6e 65 77 20 41 75 74 68 48 65 6c 70 65 72 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 er.=.new.AuthHelper($this->io,.$
c0920 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 24 61 75 74 68 48 65 6c 70 65 72 2d 3e 73 74 6f 72 this->config);.$authHelper->stor
c0940 65 41 75 74 68 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 68 69 73 2d 3e 73 eAuth($this->originUrl,.$this->s
c0960 74 6f 72 65 41 75 74 68 29 3b 0a 24 74 68 69 73 2d 3e 73 74 6f 72 65 41 75 74 68 20 3d 20 66 61 toreAuth);.$this->storeAuth.=.fa
c0980 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 69 66 20 28 66 lse;.}..return.$result;.}..if.(f
c09a0 61 6c 73 65 20 3d 3d 3d 20 24 72 65 73 75 6c 74 29 20 7b 0a 24 65 20 3d 20 6e 65 77 20 54 72 61 alse.===.$result).{.$e.=.new.Tra
c09c0 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 22 27 2e 24 74 68 69 73 2d 3e 66 nsportException('The."'.$this->f
c09e0 69 6c 65 55 72 6c 2e 27 22 20 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 6f 77 6e ileUrl.'".file.could.not.be.down
c0a00 6c 6f 61 64 65 64 3a 20 27 2e 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c 20 24 65 72 72 6f 72 43 loaded:.'.$errorMessage,.$errorC
c0a20 6f 64 65 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f ode);.if.(!empty($http_response_
c0a40 68 65 61 64 65 72 5b 30 5d 29 29 20 7b 0a 24 65 2d 3e 73 65 74 48 65 61 64 65 72 73 28 24 68 74 header[0])).{.$e->setHeaders($ht
c0a60 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 tp_response_header);.}..if.(!$th
c0a80 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 is->degradedMode.&&.false.!==.st
c0aa0 72 70 6f 73 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 27 4f 70 65 72 61 74 69 6f rpos($e->getMessage(),.'Operatio
c0ac0 6e 20 74 69 6d 65 64 20 6f 75 74 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 n.timed.out')).{.$this->degraded
c0ae0 4d 6f 64 65 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 Mode.=.true;.$this->io->writeErr
c0b00 6f 72 28 61 72 72 61 79 28 0a 27 3c 65 72 72 6f 72 3e 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 or(array(.'<error>'.$e->getMessa
c0b20 67 65 28 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 2c 0a 27 3c 65 72 72 6f 72 3e 52 65 74 72 79 69 6e ge().'</error>',.'<error>Retryin
c0b40 67 20 77 69 74 68 20 64 65 67 72 61 64 65 64 20 6d 6f 64 65 2c 20 63 68 65 63 6b 20 68 74 74 70 g.with.degraded.mode,.check.http
c0b60 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 61 72 74 69 63 6c 65 73 s://getcomposer.org/doc/articles
c0b80 2f 74 72 6f 75 62 6c 65 73 68 6f 6f 74 69 6e 67 2e 6d 64 23 64 65 67 72 61 64 65 64 2d 6d 6f 64 /troubleshooting.md#degraded-mod
c0ba0 65 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 3c 2f 65 72 72 6f 72 3e 27 2c 0a 29 29 3b 0a 0a 72 e.for.more.info</error>',.));..r
c0bc0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 eturn.$this->get($this->originUr
c0be0 6c 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 l,.$this->fileUrl,.$additionalOp
c0c00 74 69 6f 6e 73 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 70 tions,.$this->fileName,.$this->p
c0c20 72 6f 67 72 65 73 73 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 69 66 20 28 21 65 rogress);.}..throw.$e;.}..if.(!e
c0c40 6d 70 74 79 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 5b 30 5d 29 29 20 mpty($http_response_header[0])).
c0c60 7b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 48 65 61 64 65 72 73 20 3d 20 24 68 74 74 70 5f 72 65 73 {.$this->lastHeaders.=.$http_res
c0c80 70 6f 6e 73 65 5f 68 65 61 64 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b ponse_header;.}..return.$result;
c0ca0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f .}.............protected.functio
c0cc0 6e 20 63 61 6c 6c 62 61 63 6b 47 65 74 28 24 6e 6f 74 69 66 69 63 61 74 69 6f 6e 43 6f 64 65 2c n.callbackGet($notificationCode,
c0ce0 20 24 73 65 76 65 72 69 74 79 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 6d 65 73 73 61 67 65 43 6f .$severity,.$message,.$messageCo
c0d00 64 65 2c 20 24 62 79 74 65 73 54 72 61 6e 73 66 65 72 72 65 64 2c 20 24 62 79 74 65 73 4d 61 78 de,.$bytesTransferred,.$bytesMax
c0d20 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6e 6f 74 69 66 69 63 61 74 69 6f 6e 43 6f 64 65 29 20 7b ).{.switch.($notificationCode).{
c0d40 0a 63 61 73 65 20 53 54 52 45 41 4d 5f 4e 4f 54 49 46 59 5f 46 41 49 4c 55 52 45 3a 0a 69 66 20 .case.STREAM_NOTIFY_FAILURE:.if.
c0d60 28 34 30 30 20 3d 3d 3d 20 24 6d 65 73 73 61 67 65 43 6f 64 65 29 20 7b 0a 0a 20 0a 20 74 68 72 (400.===.$messageCode).{.....thr
c0d80 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 22 54 68 65 20 27 ow.new.TransportException("The.'
c0da0 22 20 2e 20 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 20 2e 20 22 27 20 55 52 4c 20 63 6f 75 6c "...$this->fileUrl..."'.URL.coul
c0dc0 64 20 6e 6f 74 20 62 65 20 61 63 63 65 73 73 65 64 3a 20 22 20 2e 20 24 6d 65 73 73 61 67 65 2c d.not.be.accessed:."...$message,
c0de0 20 24 6d 65 73 73 61 67 65 43 6f 64 65 29 3b 0a 7d 0a 0a 20 0a 0a 63 61 73 65 20 53 54 52 45 41 .$messageCode);.}.....case.STREA
c0e00 4d 5f 4e 4f 54 49 46 59 5f 41 55 54 48 5f 52 45 51 55 49 52 45 44 3a 0a 69 66 20 28 34 30 31 20 M_NOTIFY_AUTH_REQUIRED:.if.(401.
c0e20 3d 3d 3d 20 24 6d 65 73 73 61 67 65 43 6f 64 65 29 20 7b 0a 0a 20 69 66 20 28 21 24 74 68 69 73 ===.$messageCode).{...if.(!$this
c0e40 2d 3e 72 65 74 72 79 41 75 74 68 46 61 69 6c 75 72 65 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a ->retryAuthFailure).{.break;.}..
c0e60 24 74 68 69 73 2d 3e 70 72 6f 6d 70 74 41 75 74 68 41 6e 64 52 65 74 72 79 28 24 6d 65 73 73 61 $this->promptAuthAndRetry($messa
c0e80 67 65 43 6f 64 65 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 53 54 52 45 41 4d 5f 4e geCode);.}.break;..case.STREAM_N
c0ea0 4f 54 49 46 59 5f 41 55 54 48 5f 52 45 53 55 4c 54 3a 0a 69 66 20 28 34 30 33 20 3d 3d 3d 20 24 OTIFY_AUTH_RESULT:.if.(403.===.$
c0ec0 6d 65 73 73 61 67 65 43 6f 64 65 29 20 7b 0a 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 72 65 74 messageCode).{...if.(!$this->ret
c0ee0 72 79 41 75 74 68 46 61 69 6c 75 72 65 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 68 69 73 ryAuthFailure).{.break;.}..$this
c0f00 2d 3e 70 72 6f 6d 70 74 41 75 74 68 41 6e 64 52 65 74 72 79 28 24 6d 65 73 73 61 67 65 43 6f 64 ->promptAuthAndRetry($messageCod
c0f20 65 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 53 54 52 e,.$message);.}.break;..case.STR
c0f40 45 41 4d 5f 4e 4f 54 49 46 59 5f 46 49 4c 45 5f 53 49 5a 45 5f 49 53 3a 0a 69 66 20 28 24 74 68 EAM_NOTIFY_FILE_SIZE_IS:.if.($th
c0f60 69 73 2d 3e 62 79 74 65 73 4d 61 78 20 3c 20 24 62 79 74 65 73 4d 61 78 29 20 7b 0a 24 74 68 69 is->bytesMax.<.$bytesMax).{.$thi
c0f80 73 2d 3e 62 79 74 65 73 4d 61 78 20 3d 20 24 62 79 74 65 73 4d 61 78 3b 0a 7d 0a 62 72 65 61 6b s->bytesMax.=.$bytesMax;.}.break
c0fa0 3b 0a 0a 63 61 73 65 20 53 54 52 45 41 4d 5f 4e 4f 54 49 46 59 5f 50 52 4f 47 52 45 53 53 3a 0a ;..case.STREAM_NOTIFY_PROGRESS:.
c0fc0 69 66 20 28 24 74 68 69 73 2d 3e 62 79 74 65 73 4d 61 78 20 3e 20 30 20 26 26 20 24 74 68 69 73 if.($this->bytesMax.>.0.&&.$this
c0fe0 2d 3e 70 72 6f 67 72 65 73 73 29 20 7b 0a 24 70 72 6f 67 72 65 73 73 69 6f 6e 20 3d 20 72 6f 75 ->progress).{.$progression.=.rou
c1000 6e 64 28 24 62 79 74 65 73 54 72 61 6e 73 66 65 72 72 65 64 20 2f 20 24 74 68 69 73 2d 3e 62 79 nd($bytesTransferred./.$this->by
c1020 74 65 73 4d 61 78 20 2a 20 31 30 30 29 3b 0a 0a 69 66 20 28 28 30 20 3d 3d 3d 20 24 70 72 6f 67 tesMax.*.100);..if.((0.===.$prog
c1040 72 65 73 73 69 6f 6e 20 25 20 35 29 20 26 26 20 31 30 30 20 21 3d 3d 20 24 70 72 6f 67 72 65 73 ression.%.5).&&.100.!==.$progres
c1060 73 69 6f 6e 20 26 26 20 24 70 72 6f 67 72 65 73 73 69 6f 6e 20 21 3d 3d 20 24 74 68 69 73 2d 3e sion.&&.$progression.!==.$this->
c1080 6c 61 73 74 50 72 6f 67 72 65 73 73 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 50 72 6f 67 72 lastProgress).{.$this->lastProgr
c10a0 65 73 73 20 3d 20 24 70 72 6f 67 72 65 73 73 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f ess.=.$progression;.$this->io->o
c10c0 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 22 20 20 20 20 44 6f 77 6e 6c 6f 61 64 69 6e 67 3a 20 verwriteError("....Downloading:.
c10e0 3c 63 6f 6d 6d 65 6e 74 3e 24 70 72 6f 67 72 65 73 73 69 6f 6e 25 3c 2f 63 6f 6d 6d 65 6e 74 3e <comment>$progression%</comment>
c1100 22 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a ",.false);.}.}.break;..default:.
c1120 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 break;.}.}..protected.function.p
c1140 72 6f 6d 70 74 41 75 74 68 41 6e 64 52 65 74 72 79 28 24 68 74 74 70 53 74 61 74 75 73 2c 20 24 romptAuthAndRetry($httpStatus,.$
c1160 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 reason.=.null).{.if.($this->conf
c1180 69 67 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c ig.&&.in_array($this->originUrl,
c11a0 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d 64 6f 6d 61 .$this->config->get('github-doma
c11c0 69 6e 73 27 29 2c 20 74 72 75 65 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 22 5c 6e 22 2e ins'),.true)).{.$message.=."\n".
c11e0 27 43 6f 75 6c 64 20 6e 6f 74 20 66 65 74 63 68 20 27 2e 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 'Could.not.fetch.'.$this->fileUr
c1200 6c 2e 27 2c 20 70 6c 65 61 73 65 20 63 72 65 61 74 65 20 61 20 47 69 74 48 75 62 20 4f 41 75 74 l.',.please.create.a.GitHub.OAut
c1220 68 20 74 6f 6b 65 6e 20 27 2e 28 24 68 74 74 70 53 74 61 74 75 73 20 3d 3d 3d 20 34 30 34 20 3f h.token.'.($httpStatus.===.404.?
c1240 20 27 74 6f 20 61 63 63 65 73 73 20 70 72 69 76 61 74 65 20 72 65 70 6f 73 27 20 3a 20 27 74 6f .'to.access.private.repos'.:.'to
c1260 20 67 6f 20 6f 76 65 72 20 74 68 65 20 41 50 49 20 72 61 74 65 20 6c 69 6d 69 74 27 29 3b 0a 24 .go.over.the.API.rate.limit');.$
c1280 67 69 74 48 75 62 55 74 69 6c 20 3d 20 6e 65 77 20 47 69 74 48 75 62 28 24 74 68 69 73 2d 3e 69 gitHubUtil.=.new.GitHub($this->i
c12a0 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 6e 75 6c 6c 29 3b 0a 69 66 20 28 21 24 67 o,.$this->config,.null);.if.(!$g
c12c0 69 74 48 75 62 55 74 69 6c 2d 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 28 24 74 68 69 73 2d itHubUtil->authorizeOAuth($this-
c12e0 3e 6f 72 69 67 69 6e 55 72 6c 29 0a 26 26 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e >originUrl).&&.(!$this->io->isIn
c1300 74 65 72 61 63 74 69 76 65 28 29 20 7c 7c 20 21 24 67 69 74 48 75 62 55 74 69 6c 2d 3e 61 75 74 teractive().||.!$gitHubUtil->aut
c1320 68 6f 72 69 7a 65 4f 41 75 74 68 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 24 74 68 69 73 2d 3e horizeOAuthInteractively($this->
c1340 6f 72 69 67 69 6e 55 72 6c 2c 20 24 6d 65 73 73 61 67 65 29 29 0a 29 20 7b 0a 74 68 72 6f 77 20 originUrl,.$message)).).{.throw.
c1360 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f new.TransportException('Could.no
c1380 74 20 61 75 74 68 65 6e 74 69 63 61 74 65 20 61 67 61 69 6e 73 74 20 27 2e 24 74 68 69 73 2d 3e t.authenticate.against.'.$this->
c13a0 6f 72 69 67 69 6e 55 72 6c 2c 20 34 30 31 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 originUrl,.401);.}.}.elseif.($th
c13c0 69 73 2d 3e 63 6f 6e 66 69 67 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 6f 72 is->config.&&.in_array($this->or
c13e0 69 67 69 6e 55 72 6c 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 iginUrl,.$this->config->get('git
c1400 6c 61 62 2d 64 6f 6d 61 69 6e 73 27 29 2c 20 74 72 75 65 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 lab-domains'),.true)).{.$message
c1420 20 3d 20 22 5c 6e 22 2e 27 43 6f 75 6c 64 20 6e 6f 74 20 66 65 74 63 68 20 27 2e 24 74 68 69 73 .=."\n".'Could.not.fetch.'.$this
c1440 2d 3e 66 69 6c 65 55 72 6c 2e 27 2c 20 65 6e 74 65 72 20 79 6f 75 72 20 27 20 2e 20 24 74 68 69 ->fileUrl.',.enter.your.'...$thi
c1460 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 2e 20 27 20 63 72 65 64 65 6e 74 69 61 6c 73 20 27 20 2e s->originUrl...'.credentials.'..
c1480 28 24 68 74 74 70 53 74 61 74 75 73 20 3d 3d 3d 20 34 30 31 20 3f 20 27 74 6f 20 61 63 63 65 73 ($httpStatus.===.401.?.'to.acces
c14a0 73 20 70 72 69 76 61 74 65 20 72 65 70 6f 73 27 20 3a 20 27 74 6f 20 67 6f 20 6f 76 65 72 20 74 s.private.repos'.:.'to.go.over.t
c14c0 68 65 20 41 50 49 20 72 61 74 65 20 6c 69 6d 69 74 27 29 3b 0a 24 67 69 74 4c 61 62 55 74 69 6c he.API.rate.limit');.$gitLabUtil
c14e0 20 3d 20 6e 65 77 20 47 69 74 4c 61 62 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e .=.new.GitLab($this->io,.$this->
c1500 63 6f 6e 66 69 67 2c 20 6e 75 6c 6c 29 3b 0a 69 66 20 28 21 24 67 69 74 4c 61 62 55 74 69 6c 2d config,.null);.if.(!$gitLabUtil-
c1520 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 68 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c >authorizeOAuth($this->originUrl
c1540 29 0a 26 26 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 ).&&.(!$this->io->isInteractive(
c1560 29 20 7c 7c 20 21 24 67 69 74 4c 61 62 55 74 69 6c 2d 3e 61 75 74 68 6f 72 69 7a 65 4f 41 75 74 ).||.!$gitLabUtil->authorizeOAut
c1580 68 49 6e 74 65 72 61 63 74 69 76 65 6c 79 28 24 74 68 69 73 2d 3e 73 63 68 65 6d 65 2c 20 24 74 hInteractively($this->scheme,.$t
c15a0 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 6d 65 73 73 61 67 65 29 29 0a 29 20 7b 0a 74 his->originUrl,.$message)).).{.t
c15c0 68 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 hrow.new.TransportException('Cou
c15e0 6c 64 20 6e 6f 74 20 61 75 74 68 65 6e 74 69 63 61 74 65 20 61 67 61 69 6e 73 74 20 27 2e 24 74 ld.not.authenticate.against.'.$t
c1600 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 34 30 31 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b his->originUrl,.401);.}.}.else.{
c1620 0a 0a 20 69 66 20 28 24 68 74 74 70 53 74 61 74 75 73 20 3d 3d 3d 20 34 30 34 29 20 7b 0a 72 65 ...if.($httpStatus.===.404).{.re
c1640 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 turn;.}....if.(!$this->io->isInt
c1660 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 69 66 20 28 24 68 74 74 70 53 74 61 74 75 73 20 3d 3d eractive()).{.if.($httpStatus.==
c1680 3d 20 34 30 31 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 22 54 68 65 20 27 22 20 2e 20 24 74 =.401).{.$message.=."The.'"...$t
c16a0 68 69 73 2d 3e 66 69 6c 65 55 72 6c 20 2e 20 22 27 20 55 52 4c 20 72 65 71 75 69 72 65 64 20 61 his->fileUrl..."'.URL.required.a
c16c0 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 2e 5c 6e 59 6f 75 20 6d 75 73 74 20 62 65 20 75 73 69 6e uthentication.\nYou.must.be.usin
c16e0 67 20 74 68 65 20 69 6e 74 65 72 61 63 74 69 76 65 20 63 6f 6e 73 6f 6c 65 20 74 6f 20 61 75 74 g.the.interactive.console.to.aut
c1700 68 65 6e 74 69 63 61 74 65 22 3b 0a 7d 0a 69 66 20 28 24 68 74 74 70 53 74 61 74 75 73 20 3d 3d henticate";.}.if.($httpStatus.==
c1720 3d 20 34 30 33 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 22 54 68 65 20 27 22 20 2e 20 24 74 =.403).{.$message.=."The.'"...$t
c1740 68 69 73 2d 3e 66 69 6c 65 55 72 6c 20 2e 20 22 27 20 55 52 4c 20 63 6f 75 6c 64 20 6e 6f 74 20 his->fileUrl..."'.URL.could.not.
c1760 62 65 20 61 63 63 65 73 73 65 64 3a 20 22 20 2e 20 24 72 65 61 73 6f 6e 3b 0a 7d 0a 0a 74 68 72 be.accessed:."...$reason;.}..thr
c1780 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 ow.new.TransportException($messa
c17a0 67 65 2c 20 24 68 74 74 70 53 74 61 74 75 73 29 3b 0a 7d 0a 0a 20 69 66 20 28 24 74 68 69 73 2d ge,.$httpStatus);.}...if.($this-
c17c0 3e 69 6f 2d 3e 68 61 73 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 72 >io->hasAuthentication($this->or
c17e0 69 67 69 6e 55 72 6c 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 iginUrl)).{.throw.new.TransportE
c1800 78 63 65 70 74 69 6f 6e 28 22 49 6e 76 61 6c 69 64 20 63 72 65 64 65 6e 74 69 61 6c 73 20 66 6f xception("Invalid.credentials.fo
c1820 72 20 27 22 20 2e 20 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 20 2e 20 22 27 2c 20 61 62 6f 72 r.'"...$this->fileUrl..."',.abor
c1840 74 69 6e 67 2e 22 2c 20 24 68 74 74 70 53 74 61 74 75 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e ting.",.$httpStatus);.}..$this->
c1860 69 6f 2d 3e 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 41 75 74 68 65 6e 74 69 io->overwriteError('....Authenti
c1880 63 61 74 69 6f 6e 20 72 65 71 75 69 72 65 64 20 28 3c 69 6e 66 6f 3e 27 2e 70 61 72 73 65 5f 75 cation.required.(<info>'.parse_u
c18a0 72 6c 28 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 rl($this->fileUrl,.PHP_URL_HOST)
c18c0 2e 27 3c 2f 69 6e 66 6f 3e 29 3a 27 29 3b 0a 24 75 73 65 72 6e 61 6d 65 20 3d 20 24 74 68 69 73 .'</info>):');.$username.=.$this
c18e0 2d 3e 69 6f 2d 3e 61 73 6b 28 27 20 20 20 20 20 20 55 73 65 72 6e 61 6d 65 3a 20 27 29 3b 0a 24 ->io->ask('......Username:.');.$
c1900 70 61 73 73 77 6f 72 64 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e 64 48 69 64 65 password.=.$this->io->askAndHide
c1920 41 6e 73 77 65 72 28 27 20 20 20 20 20 20 50 61 73 73 77 6f 72 64 3a 20 27 29 3b 0a 24 74 68 69 Answer('......Password:.');.$thi
c1940 73 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e s->io->setAuthentication($this->
c1960 6f 72 69 67 69 6e 55 72 6c 2c 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 64 29 originUrl,.$username,.$password)
c1980 3b 0a 24 74 68 69 73 2d 3e 73 74 6f 72 65 41 75 74 68 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 ;.$this->storeAuth.=.$this->conf
c19a0 69 67 2d 3e 67 65 74 28 27 73 74 6f 72 65 2d 61 75 74 68 73 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 ig->get('store-auths');.}..$this
c19c0 2d 3e 72 65 74 72 79 20 3d 20 74 72 75 65 3b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 ->retry.=.true;.throw.new.Transp
c19e0 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 52 45 54 52 59 27 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 ortException('RETRY');.}..protec
c1a00 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 73 46 6f 72 55 72 6c 28 24 6f ted.function.getOptionsForUrl($o
c1a20 72 69 67 69 6e 55 72 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 29 0a 7b 0a riginUrl,.$additionalOptions).{.
c1a40 24 74 6c 73 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 69 66 20 28 24 74 $tlsOptions.=.array();....if.($t
c1a60 68 69 73 2d 3e 64 69 73 61 62 6c 65 54 6c 73 20 3d 3d 3d 20 66 61 6c 73 65 20 26 26 20 50 48 50 his->disableTls.===.false.&&.PHP
c1a80 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 36 30 30 20 26 26 20 21 73 74 72 65 61 6d 5f 69 _VERSION_ID.<.50600.&&.!stream_i
c1aa0 73 5f 6c 6f 63 61 6c 28 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 29 29 20 7b 0a 24 68 6f 73 74 s_local($this->fileUrl)).{.$host
c1ac0 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2c 20 50 48 50 .=.parse_url($this->fileUrl,.PHP
c1ae0 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 _URL_HOST);..if.(PHP_VERSION_ID.
c1b00 3e 3d 20 35 30 33 30 34 29 20 7b 0a 0a 20 0a 20 24 75 73 65 72 6c 61 6e 64 46 6f 6c 6c 6f 77 20 >=.50304).{.....$userlandFollow.
c1b20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 0a 20 0a 20 0a 0a 69 66 20 28 24 68 6f =.true;.}.else.{.........if.($ho
c1b40 73 74 20 3d 3d 3d 20 27 67 69 74 68 75 62 2e 63 6f 6d 27 20 7c 7c 20 24 68 6f 73 74 20 3d 3d 3d st.===.'github.com'.||.$host.===
c1b60 20 27 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 27 29 20 7b 0a 24 68 6f 73 74 20 3d 20 27 2a 2e .'api.github.com').{.$host.=.'*.
c1b80 67 69 74 68 75 62 2e 63 6f 6d 27 3b 0a 7d 0a 7d 0a 0a 24 74 6c 73 4f 70 74 69 6f 6e 73 5b 27 73 github.com';.}.}..$tlsOptions['s
c1ba0 73 6c 27 5d 5b 27 43 4e 5f 6d 61 74 63 68 27 5d 20 3d 20 24 68 6f 73 74 3b 0a 24 74 6c 73 4f 70 sl']['CN_match'].=.$host;.$tlsOp
c1bc0 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 53 4e 49 5f 73 65 72 76 65 72 5f 6e 61 6d 65 27 5d 20 tions['ssl']['SNI_server_name'].
c1be0 3d 20 24 68 6f 73 74 3b 0a 0a 24 75 72 6c 41 75 74 68 6f 72 69 74 79 20 3d 20 24 74 68 69 73 2d =.$host;..$urlAuthority.=.$this-
c1c00 3e 67 65 74 55 72 6c 41 75 74 68 6f 72 69 74 79 28 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 29 >getUrlAuthority($this->fileUrl)
c1c20 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 65 65 72 43 65 72 74 69 66 69 63 ;..if.(isset($this->peerCertific
c1c40 61 74 65 4d 61 70 5b 24 75 72 6c 41 75 74 68 6f 72 69 74 79 5d 29 29 20 7b 0a 0a 20 24 63 65 72 ateMap[$urlAuthority])).{...$cer
c1c60 74 4d 61 70 20 3d 20 24 74 68 69 73 2d 3e 70 65 65 72 43 65 72 74 69 66 69 63 61 74 65 4d 61 70 tMap.=.$this->peerCertificateMap
c1c80 5b 24 75 72 6c 41 75 74 68 6f 72 69 74 79 5d 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 [$urlAuthority];..$this->io->wri
c1ca0 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 0a 27 55 73 69 6e 67 20 3c 69 6e 66 6f 3e 25 73 teError(sprintf(.'Using.<info>%s
c1cc0 3c 2f 69 6e 66 6f 3e 20 61 73 20 43 4e 20 66 6f 72 20 73 75 62 6a 65 63 74 41 6c 74 4e 61 6d 65 </info>.as.CN.for.subjectAltName
c1ce0 20 65 6e 61 62 6c 65 64 20 68 6f 73 74 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 0a .enabled.host.<info>%s</info>',.
c1d00 24 63 65 72 74 4d 61 70 5b 27 63 6e 27 5d 2c 0a 24 75 72 6c 41 75 74 68 6f 72 69 74 79 0a 29 2c $certMap['cn'],.$urlAuthority.),
c1d20 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 0a 24 74 6c .true,.IOInterface::DEBUG);..$tl
c1d40 73 4f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 43 4e 5f 6d 61 74 63 68 27 5d 20 3d 20 24 63 sOptions['ssl']['CN_match'].=.$c
c1d60 65 72 74 4d 61 70 5b 27 63 6e 27 5d 3b 0a 24 74 6c 73 4f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d ertMap['cn'];.$tlsOptions['ssl']
c1d80 5b 27 70 65 65 72 5f 66 69 6e 67 65 72 70 72 69 6e 74 27 5d 20 3d 20 24 63 65 72 74 4d 61 70 5b ['peer_fingerprint'].=.$certMap[
c1da0 27 66 70 27 5d 3b 0a 7d 0a 7d 0a 0a 24 68 65 61 64 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 'fp'];.}.}..$headers.=.array();.
c1dc0 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 7a 6c 69 62 27 29 29 20 7b .if.(extension_loaded('zlib')).{
c1de0 0a 24 68 65 61 64 65 72 73 5b 5d 20 3d 20 27 41 63 63 65 70 74 2d 45 6e 63 6f 64 69 6e 67 3a 20 .$headers[].=.'Accept-Encoding:.
c1e00 67 7a 69 70 27 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 gzip';.}..$options.=.array_repla
c1e20 63 65 5f 72 65 63 75 72 73 69 76 65 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 2c 20 24 74 6c ce_recursive($this->options,.$tl
c1e40 73 4f 70 74 69 6f 6e 73 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 29 3b 0a 69 sOptions,.$additionalOptions);.i
c1e60 66 20 28 21 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 29 20 7b 0a 0a 20 0a 20 24 f.(!$this->degradedMode).{.....$
c1e80 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 70 72 6f 74 6f 63 6f 6c 5f 76 65 72 73 69 6f options['http']['protocol_versio
c1ea0 6e 27 5d 20 3d 20 31 2e 31 3b 0a 24 68 65 61 64 65 72 73 5b 5d 20 3d 20 27 43 6f 6e 6e 65 63 74 n'].=.1.1;.$headers[].=.'Connect
c1ec0 69 6f 6e 3a 20 63 6c 6f 73 65 27 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 75 73 65 72 6c ion:.close';.}..if.(isset($userl
c1ee0 61 6e 64 46 6f 6c 6c 6f 77 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 andFollow)).{.$options['http']['
c1f00 66 6f 6c 6c 6f 77 5f 6c 6f 63 61 74 69 6f 6e 27 5d 20 3d 20 30 3b 0a 7d 0a 0a 69 66 20 28 24 74 follow_location'].=.0;.}..if.($t
c1f20 68 69 73 2d 3e 69 6f 2d 3e 68 61 73 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6f 72 69 67 his->io->hasAuthentication($orig
c1f40 69 6e 55 72 6c 29 29 20 7b 0a 24 61 75 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 67 65 74 inUrl)).{.$auth.=.$this->io->get
c1f60 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6f 72 69 67 69 6e 55 72 6c 29 3b 0a 69 66 20 28 Authentication($originUrl);.if.(
c1f80 27 67 69 74 68 75 62 2e 63 6f 6d 27 20 3d 3d 3d 20 24 6f 72 69 67 69 6e 55 72 6c 20 26 26 20 27 'github.com'.===.$originUrl.&&.'
c1fa0 78 2d 6f 61 75 74 68 2d 62 61 73 69 63 27 20 3d 3d 3d 20 24 61 75 74 68 5b 27 70 61 73 73 77 6f x-oauth-basic'.===.$auth['passwo
c1fc0 72 64 27 5d 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 67 69 74 68 75 62 2d 74 6f 6b 65 6e 27 5d rd']).{.$options['github-token']
c1fe0 20 3d 20 24 61 75 74 68 5b 27 75 73 65 72 6e 61 6d 65 27 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 .=.$auth['username'];.}.elseif.(
c2000 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 6f 72 69 67 69 $this->config.&&.in_array($origi
c2020 6e 55 72 6c 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 6c 61 62 nUrl,.$this->config->get('gitlab
c2040 2d 64 6f 6d 61 69 6e 73 27 29 2c 20 74 72 75 65 29 29 20 7b 0a 69 66 20 28 24 61 75 74 68 5b 27 -domains'),.true)).{.if.($auth['
c2060 70 61 73 73 77 6f 72 64 27 5d 20 3d 3d 3d 20 27 6f 61 75 74 68 32 27 29 20 7b 0a 24 68 65 61 64 password'].===.'oauth2').{.$head
c2080 65 72 73 5b 5d 20 3d 20 27 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 3a 20 42 65 61 72 65 72 20 27 ers[].=.'Authorization:.Bearer.'
c20a0 2e 24 61 75 74 68 5b 27 75 73 65 72 6e 61 6d 65 27 5d 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 .$auth['username'];.}.}.else.{.$
c20c0 61 75 74 68 53 74 72 20 3d 20 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 61 75 74 68 5b 27 75 authStr.=.base64_encode($auth['u
c20e0 73 65 72 6e 61 6d 65 27 5d 20 2e 20 27 3a 27 20 2e 20 24 61 75 74 68 5b 27 70 61 73 73 77 6f 72 sername']...':'...$auth['passwor
c2100 64 27 5d 29 3b 0a 24 68 65 61 64 65 72 73 5b 5d 20 3d 20 27 41 75 74 68 6f 72 69 7a 61 74 69 6f d']);.$headers[].=.'Authorizatio
c2120 6e 3a 20 42 61 73 69 63 20 27 2e 24 61 75 74 68 53 74 72 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 n:.Basic.'.$authStr;.}.}..if.(is
c2140 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 20 set($options['http']['header']).
c2160 26 26 20 21 69 73 5f 61 72 72 61 79 28 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 &&.!is_array($options['http']['h
c2180 65 61 64 65 72 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 eader'])).{.$options['http']['he
c21a0 61 64 65 72 27 5d 20 3d 20 65 78 70 6c 6f 64 65 28 22 5c 72 5c 6e 22 2c 20 74 72 69 6d 28 24 6f ader'].=.explode("\r\n",.trim($o
c21c0 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 2c 20 22 5c 72 5c 6e 22 ptions['http']['header'],."\r\n"
c21e0 29 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 68 65 61 64 65 72 73 20 61 73 20 24 68 65 61 64 ));.}.foreach.($headers.as.$head
c2200 65 72 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d er).{.$options['http']['header']
c2220 5b 5d 20 3d 20 24 68 65 61 64 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f 70 74 69 6f 6e 73 [].=.$header;.}..return.$options
c2240 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 68 61 6e 64 6c 65 52 65 64 69 ;.}..private.function.handleRedi
c2260 72 65 63 74 28 61 72 72 61 79 20 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 rect(array.$http_response_header
c2280 2c 20 61 72 72 61 79 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 2c 20 24 72 65 73 ,.array.$additionalOptions,.$res
c22a0 75 6c 74 29 0a 7b 0a 69 66 20 28 24 6c 6f 63 61 74 69 6f 6e 48 65 61 64 65 72 20 3d 20 24 74 68 ult).{.if.($locationHeader.=.$th
c22c0 69 73 2d 3e 66 69 6e 64 48 65 61 64 65 72 56 61 6c 75 65 28 24 68 74 74 70 5f 72 65 73 70 6f 6e is->findHeaderValue($http_respon
c22e0 73 65 5f 68 65 61 64 65 72 2c 20 27 6c 6f 63 61 74 69 6f 6e 27 29 29 20 7b 0a 69 66 20 28 70 61 se_header,.'location')).{.if.(pa
c2300 72 73 65 5f 75 72 6c 28 24 6c 6f 63 61 74 69 6f 6e 48 65 61 64 65 72 2c 20 50 48 50 5f 55 52 4c rse_url($locationHeader,.PHP_URL
c2320 5f 53 43 48 45 4d 45 29 29 20 7b 0a 0a 20 24 74 61 72 67 65 74 55 72 6c 20 3d 20 24 6c 6f 63 61 _SCHEME)).{...$targetUrl.=.$loca
c2340 74 69 6f 6e 48 65 61 64 65 72 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 61 72 73 65 5f 75 72 6c 28 tionHeader;.}.elseif.(parse_url(
c2360 24 6c 6f 63 61 74 69 6f 6e 48 65 61 64 65 72 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 29 20 $locationHeader,.PHP_URL_HOST)).
c2380 7b 0a 0a 20 24 74 61 72 67 65 74 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 73 63 68 65 6d 65 2e 27 {...$targetUrl.=.$this->scheme.'
c23a0 3a 27 2e 24 6c 6f 63 61 74 69 6f 6e 48 65 61 64 65 72 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 2f :'.$locationHeader;.}.elseif.('/
c23c0 27 20 3d 3d 3d 20 24 6c 6f 63 61 74 69 6f 6e 48 65 61 64 65 72 5b 30 5d 29 20 7b 0a 0a 20 24 75 '.===.$locationHeader[0]).{...$u
c23e0 72 6c 48 6f 73 74 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 rlHost.=.parse_url($this->fileUr
c2400 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 0a 0a 20 24 74 61 72 67 65 74 55 72 6c 20 l,.PHP_URL_HOST);....$targetUrl.
c2420 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 2e 2b 28 3f 3a 2f 2f 7c 40 29 27 2e 70 =.preg_replace('{^(.+(?://|@)'.p
c2440 72 65 67 5f 71 75 6f 74 65 28 24 75 72 6c 48 6f 73 74 29 2e 27 28 3f 3a 3a 5c 64 2b 29 3f 29 28 reg_quote($urlHost).'(?::\d+)?)(
c2460 3f 3a 5b 2f 5c 3f 5d 2e 2a 29 3f 24 7d 27 2c 20 27 5c 31 27 2e 24 6c 6f 63 61 74 69 6f 6e 48 65 ?:[/\?].*)?$}',.'\1'.$locationHe
c2480 61 64 65 72 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a ader,.$this->fileUrl);.}.else.{.
c24a0 0a 20 0a 20 24 74 61 72 67 65 74 55 72 6c 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b ....$targetUrl.=.preg_replace('{
c24c0 5e 28 2e 2b 2f 29 5b 5e 2f 3f 5d 2a 28 3f 3a 5c 3f 2e 2a 29 3f 24 7d 27 2c 20 27 5c 31 27 2e 24 ^(.+/)[^/?]*(?:\?.*)?$}',.'\1'.$
c24e0 6c 6f 63 61 74 69 6f 6e 48 65 61 64 65 72 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 29 3b locationHeader,.$this->fileUrl);
c2500 0a 7d 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 74 61 72 67 65 74 55 72 6c 29 29 20 7b 0a .}.}..if.(!empty($targetUrl)).{.
c2520 24 74 68 69 73 2d 3e 72 65 64 69 72 65 63 74 73 2b 2b 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e $this->redirects++;..$this->io->
c2540 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 46 6f 6c 6c 6f 77 69 6e 67 20 72 65 writeError(sprintf('Following.re
c2560 64 69 72 65 63 74 20 28 25 75 29 20 25 73 27 2c 20 24 74 68 69 73 2d 3e 72 65 64 69 72 65 63 74 direct.(%u).%s',.$this->redirect
c2580 73 2c 20 24 74 61 72 67 65 74 55 72 6c 29 2c 20 74 72 75 65 2c 20 49 4f 49 6e 74 65 72 66 61 63 s,.$targetUrl),.true,.IOInterfac
c25a0 65 3a 3a 44 45 42 55 47 29 3b 0a 0a 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 5b 27 e::DEBUG);..$additionalOptions['
c25c0 72 65 64 69 72 65 63 74 73 27 5d 20 3d 20 24 74 68 69 73 2d 3e 72 65 64 69 72 65 63 74 73 3b 0a redirects'].=.$this->redirects;.
c25e0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e .return.$this->get($this->origin
c2600 55 72 6c 2c 20 24 74 61 72 67 65 74 55 72 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 Url,.$targetUrl,.$additionalOpti
c2620 6f 6e 73 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 70 72 6f ons,.$this->fileName,.$this->pro
c2640 67 72 65 73 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 72 65 74 72 79 29 20 7b 0a gress);.}..if.(!$this->retry).{.
c2660 24 65 20 3d 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 $e.=.new.TransportException('The
c2680 20 22 27 2e 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2e 27 22 20 66 69 6c 65 20 63 6f 75 6c 64 ."'.$this->fileUrl.'".file.could
c26a0 20 6e 6f 74 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 2c 20 67 6f 74 20 72 65 64 69 72 65 63 74 .not.be.downloaded,.got.redirect
c26c0 20 77 69 74 68 6f 75 74 20 4c 6f 63 61 74 69 6f 6e 20 28 27 2e 24 68 74 74 70 5f 72 65 73 70 6f .without.Location.('.$http_respo
c26e0 6e 73 65 5f 68 65 61 64 65 72 5b 30 5d 2e 27 29 27 29 3b 0a 24 65 2d 3e 73 65 74 48 65 61 64 65 nse_header[0].')');.$e->setHeade
c2700 72 73 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 29 3b 0a 24 65 2d 3e 73 rs($http_response_header);.$e->s
c2720 65 74 52 65 73 70 6f 6e 73 65 28 24 72 65 73 75 6c 74 29 3b 0a 0a 74 68 72 6f 77 20 24 65 3b 0a etResponse($result);..throw.$e;.
c2740 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 }..return.false;.}.......private
c2760 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 6c 73 44 65 66 61 75 6c 74 73 28 61 72 72 61 79 20 24 .function.getTlsDefaults(array.$
c2780 6f 70 74 69 6f 6e 73 29 0a 7b 0a 24 63 69 70 68 65 72 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 3a options).{.$ciphers.=.implode(':
c27a0 27 2c 20 61 72 72 61 79 28 0a 27 45 43 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 47 43 4d 2d ',.array(.'ECDHE-RSA-AES128-GCM-
c27c0 53 48 41 32 35 36 27 2c 0a 27 45 43 44 48 45 2d 45 43 44 53 41 2d 41 45 53 31 32 38 2d 47 43 4d SHA256',.'ECDHE-ECDSA-AES128-GCM
c27e0 2d 53 48 41 32 35 36 27 2c 0a 27 45 43 44 48 45 2d 52 53 41 2d 41 45 53 32 35 36 2d 47 43 4d 2d -SHA256',.'ECDHE-RSA-AES256-GCM-
c2800 53 48 41 33 38 34 27 2c 0a 27 45 43 44 48 45 2d 45 43 44 53 41 2d 41 45 53 32 35 36 2d 47 43 4d SHA384',.'ECDHE-ECDSA-AES256-GCM
c2820 2d 53 48 41 33 38 34 27 2c 0a 27 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 47 43 4d 2d 53 48 -SHA384',.'DHE-RSA-AES128-GCM-SH
c2840 41 32 35 36 27 2c 0a 27 44 48 45 2d 44 53 53 2d 41 45 53 31 32 38 2d 47 43 4d 2d 53 48 41 32 35 A256',.'DHE-DSS-AES128-GCM-SHA25
c2860 36 27 2c 0a 27 6b 45 44 48 2b 41 45 53 47 43 4d 27 2c 0a 27 45 43 44 48 45 2d 52 53 41 2d 41 45 6',.'kEDH+AESGCM',.'ECDHE-RSA-AE
c2880 53 31 32 38 2d 53 48 41 32 35 36 27 2c 0a 27 45 43 44 48 45 2d 45 43 44 53 41 2d 41 45 53 31 32 S128-SHA256',.'ECDHE-ECDSA-AES12
c28a0 38 2d 53 48 41 32 35 36 27 2c 0a 27 45 43 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 53 48 41 8-SHA256',.'ECDHE-RSA-AES128-SHA
c28c0 27 2c 0a 27 45 43 44 48 45 2d 45 43 44 53 41 2d 41 45 53 31 32 38 2d 53 48 41 27 2c 0a 27 45 43 ',.'ECDHE-ECDSA-AES128-SHA',.'EC
c28e0 44 48 45 2d 52 53 41 2d 41 45 53 32 35 36 2d 53 48 41 33 38 34 27 2c 0a 27 45 43 44 48 45 2d 45 DHE-RSA-AES256-SHA384',.'ECDHE-E
c2900 43 44 53 41 2d 41 45 53 32 35 36 2d 53 48 41 33 38 34 27 2c 0a 27 45 43 44 48 45 2d 52 53 41 2d CDSA-AES256-SHA384',.'ECDHE-RSA-
c2920 41 45 53 32 35 36 2d 53 48 41 27 2c 0a 27 45 43 44 48 45 2d 45 43 44 53 41 2d 41 45 53 32 35 36 AES256-SHA',.'ECDHE-ECDSA-AES256
c2940 2d 53 48 41 27 2c 0a 27 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 53 48 41 32 35 36 27 2c 0a -SHA',.'DHE-RSA-AES128-SHA256',.
c2960 27 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 53 48 41 27 2c 0a 27 44 48 45 2d 44 53 53 2d 41 'DHE-RSA-AES128-SHA',.'DHE-DSS-A
c2980 45 53 31 32 38 2d 53 48 41 32 35 36 27 2c 0a 27 44 48 45 2d 52 53 41 2d 41 45 53 32 35 36 2d 53 ES128-SHA256',.'DHE-RSA-AES256-S
c29a0 48 41 32 35 36 27 2c 0a 27 44 48 45 2d 44 53 53 2d 41 45 53 32 35 36 2d 53 48 41 27 2c 0a 27 44 HA256',.'DHE-DSS-AES256-SHA',.'D
c29c0 48 45 2d 52 53 41 2d 41 45 53 32 35 36 2d 53 48 41 27 2c 0a 27 41 45 53 31 32 38 2d 47 43 4d 2d HE-RSA-AES256-SHA',.'AES128-GCM-
c29e0 53 48 41 32 35 36 27 2c 0a 27 41 45 53 32 35 36 2d 47 43 4d 2d 53 48 41 33 38 34 27 2c 0a 27 45 SHA256',.'AES256-GCM-SHA384',.'E
c2a00 43 44 48 45 2d 52 53 41 2d 52 43 34 2d 53 48 41 27 2c 0a 27 45 43 44 48 45 2d 45 43 44 53 41 2d CDHE-RSA-RC4-SHA',.'ECDHE-ECDSA-
c2a20 52 43 34 2d 53 48 41 27 2c 0a 27 41 45 53 31 32 38 27 2c 0a 27 41 45 53 32 35 36 27 2c 0a 27 52 RC4-SHA',.'AES128',.'AES256',.'R
c2a40 43 34 2d 53 48 41 27 2c 0a 27 48 49 47 48 27 2c 0a 27 21 61 4e 55 4c 4c 27 2c 0a 27 21 65 4e 55 C4-SHA',.'HIGH',.'!aNULL',.'!eNU
c2a60 4c 4c 27 2c 0a 27 21 45 58 50 4f 52 54 27 2c 0a 27 21 44 45 53 27 2c 0a 27 21 33 44 45 53 27 2c LL',.'!EXPORT',.'!DES',.'!3DES',
c2a80 0a 27 21 4d 44 35 27 2c 0a 27 21 50 53 4b 27 2c 0a 29 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 24 64 65 66 .'!MD5',.'!PSK',.));........$def
c2aa0 61 75 6c 74 73 20 3d 20 61 72 72 61 79 28 0a 27 73 73 6c 27 20 3d 3e 20 61 72 72 61 79 28 0a 27 aults.=.array(.'ssl'.=>.array(.'
c2ac0 63 69 70 68 65 72 73 27 20 3d 3e 20 24 63 69 70 68 65 72 73 2c 0a 27 76 65 72 69 66 79 5f 70 65 ciphers'.=>.$ciphers,.'verify_pe
c2ae0 65 72 27 20 3d 3e 20 74 72 75 65 2c 0a 27 76 65 72 69 66 79 5f 64 65 70 74 68 27 20 3d 3e 20 37 er'.=>.true,.'verify_depth'.=>.7
c2b00 2c 0a 27 53 4e 49 5f 65 6e 61 62 6c 65 64 27 20 3d 3e 20 74 72 75 65 2c 0a 27 63 61 70 74 75 72 ,.'SNI_enabled'.=>.true,.'captur
c2b20 65 5f 70 65 65 72 5f 63 65 72 74 27 20 3d 3e 20 74 72 75 65 2c 0a 29 2c 0a 29 3b 0a 0a 69 66 20 e_peer_cert'.=>.true,.),.);..if.
c2b40 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 29 29 20 7b 0a 24 64 65 66 61 (isset($options['ssl'])).{.$defa
c2b60 75 6c 74 73 5b 27 73 73 6c 27 5d 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 5f 72 65 63 75 ults['ssl'].=.array_replace_recu
c2b80 72 73 69 76 65 28 24 64 65 66 61 75 6c 74 73 5b 27 73 73 6c 27 5d 2c 20 24 6f 70 74 69 6f 6e 73 rsive($defaults['ssl'],.$options
c2ba0 5b 27 73 73 6c 27 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 64 65 66 ['ssl']);.}......if.(!isset($def
c2bc0 61 75 6c 74 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 29 20 26 26 20 21 69 73 73 65 aults['ssl']['cafile']).&&.!isse
c2be0 74 28 24 64 65 66 61 75 6c 74 73 5b 27 73 73 6c 27 5d 5b 27 63 61 70 61 74 68 27 5d 29 29 20 7b t($defaults['ssl']['capath'])).{
c2c00 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 79 73 74 65 6d 43 61 52 6f 6f .$result.=.$this->getSystemCaRoo
c2c20 74 42 75 6e 64 6c 65 50 61 74 68 28 29 3b 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 tBundlePath();..if.(preg_match('
c2c40 7b 5e 70 68 61 72 3a 2f 2f 7d 27 2c 20 24 72 65 73 75 6c 74 29 29 20 7b 0a 24 68 61 73 68 20 3d {^phar://}',.$result)).{.$hash.=
c2c60 20 68 61 73 68 5f 66 69 6c 65 28 27 73 68 61 32 35 36 27 2c 20 24 72 65 73 75 6c 74 29 3b 0a 24 .hash_file('sha256',.$result);.$
c2c80 74 61 72 67 65 74 50 61 74 68 20 3d 20 72 74 72 69 6d 28 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f targetPath.=.rtrim(sys_get_temp_
c2ca0 64 69 72 28 29 2c 20 27 5c 5c 2f 27 29 20 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 2d 63 61 63 65 72 dir(),.'\\/')...'/composer-cacer
c2cc0 74 2d 27 20 2e 20 24 68 61 73 68 20 2e 20 27 2e 70 65 6d 27 3b 0a 0a 69 66 20 28 21 66 69 6c 65 t-'...$hash...'.pem';..if.(!file
c2ce0 5f 65 78 69 73 74 73 28 24 74 61 72 67 65 74 50 61 74 68 29 20 7c 7c 20 24 68 61 73 68 20 21 3d _exists($targetPath).||.$hash.!=
c2d00 3d 20 68 61 73 68 5f 66 69 6c 65 28 27 73 68 61 32 35 36 27 2c 20 24 74 61 72 67 65 74 50 61 74 =.hash_file('sha256',.$targetPat
c2d20 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 43 6f 70 79 28 24 72 65 73 75 6c 74 2c h)).{.$this->streamCopy($result,
c2d40 20 24 74 61 72 67 65 74 50 61 74 68 29 3b 0a 63 68 6d 6f 64 28 24 74 61 72 67 65 74 50 61 74 68 .$targetPath);.chmod($targetPath
c2d60 2c 20 30 36 36 36 29 3b 0a 7d 0a 0a 24 64 65 66 61 75 6c 74 73 5b 27 73 73 6c 27 5d 5b 27 63 61 ,.0666);.}..$defaults['ssl']['ca
c2d80 66 69 6c 65 27 5d 20 3d 20 24 74 61 72 67 65 74 50 61 74 68 3b 0a 7d 20 65 6c 73 65 69 66 20 28 file'].=.$targetPath;.}.elseif.(
c2da0 69 73 5f 64 69 72 28 24 72 65 73 75 6c 74 29 29 20 7b 0a 24 64 65 66 61 75 6c 74 73 5b 27 73 73 is_dir($result)).{.$defaults['ss
c2dc0 6c 27 5d 5b 27 63 61 70 61 74 68 27 5d 20 3d 20 24 72 65 73 75 6c 74 3b 0a 7d 20 65 6c 73 65 20 l']['capath'].=.$result;.}.else.
c2de0 7b 0a 24 64 65 66 61 75 6c 74 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 20 3d 20 24 {.$defaults['ssl']['cafile'].=.$
c2e00 72 65 73 75 6c 74 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 65 66 61 75 6c 74 73 result;.}.}..if.(isset($defaults
c2e20 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 29 20 26 26 20 28 21 69 73 5f 72 65 61 64 61 ['ssl']['cafile']).&&.(!is_reada
c2e40 62 6c 65 28 24 64 65 66 61 75 6c 74 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 29 20 ble($defaults['ssl']['cafile']).
c2e60 7c 7c 20 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 43 61 46 69 6c 65 28 24 64 65 66 61 75 ||.!$this->validateCaFile($defau
c2e80 6c 74 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 29 29 29 20 7b 0a 74 68 72 6f 77 20 lts['ssl']['cafile']))).{.throw.
c2ea0 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 63 6f 6e 66 new.TransportException('The.conf
c2ec0 69 67 75 72 65 64 20 63 61 66 69 6c 65 20 77 61 73 20 6e 6f 74 20 76 61 6c 69 64 20 6f 72 20 63 igured.cafile.was.not.valid.or.c
c2ee0 6f 75 6c 64 20 6e 6f 74 20 62 65 20 72 65 61 64 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 ould.not.be.read.');.}..if.(isse
c2f00 74 28 24 64 65 66 61 75 6c 74 73 5b 27 73 73 6c 27 5d 5b 27 63 61 70 61 74 68 27 5d 29 20 26 26 t($defaults['ssl']['capath']).&&
c2f20 20 28 21 69 73 5f 64 69 72 28 24 64 65 66 61 75 6c 74 73 5b 27 73 73 6c 27 5d 5b 27 63 61 70 61 .(!is_dir($defaults['ssl']['capa
c2f40 74 68 27 5d 29 20 7c 7c 20 21 69 73 5f 72 65 61 64 61 62 6c 65 28 24 64 65 66 61 75 6c 74 73 5b th']).||.!is_readable($defaults[
c2f60 27 73 73 6c 27 5d 5b 27 63 61 70 61 74 68 27 5d 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 'ssl']['capath']))).{.throw.new.
c2f80 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 63 6f 6e 66 69 67 75 72 TransportException('The.configur
c2fa0 65 64 20 63 61 70 61 74 68 20 77 61 73 20 6e 6f 74 20 76 61 6c 69 64 20 6f 72 20 63 6f 75 6c 64 ed.capath.was.not.valid.or.could
c2fc0 20 6e 6f 74 20 62 65 20 72 65 61 64 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 69 66 20 28 50 48 50 5f 56 .not.be.read.');.}.....if.(PHP_V
c2fe0 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 34 31 33 29 20 7b 0a 24 64 65 66 61 75 6c 74 73 5b ERSION_ID.>=.50413).{.$defaults[
c3000 27 73 73 6c 27 5d 5b 27 64 69 73 61 62 6c 65 5f 63 6f 6d 70 72 65 73 73 69 6f 6e 27 5d 20 3d 20 'ssl']['disable_compression'].=.
c3020 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 73 3b 0a 7d 0a 0a 0a 0a true;.}..return.$defaults;.}....
c3040 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ................................
c3060 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 79 73 74 65 6d 43 61 52 6f 6f 74 private.function.getSystemCaRoot
c3080 42 75 6e 64 6c 65 50 61 74 68 28 29 0a 7b 0a 73 74 61 74 69 63 20 24 63 61 50 61 74 68 20 3d 20 BundlePath().{.static.$caPath.=.
c30a0 6e 75 6c 6c 3b 0a 0a 69 66 20 28 24 63 61 50 61 74 68 20 21 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 72 null;..if.($caPath.!==.null).{.r
c30c0 65 74 75 72 6e 20 24 63 61 50 61 74 68 3b 0a 7d 0a 0a 0a 20 0a 20 24 65 6e 76 43 65 72 74 46 69 eturn.$caPath;.}......$envCertFi
c30e0 6c 65 20 3d 20 67 65 74 65 6e 76 28 27 53 53 4c 5f 43 45 52 54 5f 46 49 4c 45 27 29 3b 0a 69 66 le.=.getenv('SSL_CERT_FILE');.if
c3100 20 28 24 65 6e 76 43 65 72 74 46 69 6c 65 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 65 .($envCertFile.&&.is_readable($e
c3120 6e 76 43 65 72 74 46 69 6c 65 29 20 26 26 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 43 61 nvCertFile).&&.$this->validateCa
c3140 46 69 6c 65 28 24 65 6e 76 43 65 72 74 46 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 File($envCertFile)).{.return.$ca
c3160 50 61 74 68 20 3d 20 24 65 6e 76 43 65 72 74 46 69 6c 65 3b 0a 7d 0a 0a 0a 20 0a 20 24 65 6e 76 Path.=.$envCertFile;.}......$env
c3180 43 65 72 74 44 69 72 20 3d 20 67 65 74 65 6e 76 28 27 53 53 4c 5f 43 45 52 54 5f 44 49 52 27 29 CertDir.=.getenv('SSL_CERT_DIR')
c31a0 3b 0a 69 66 20 28 24 65 6e 76 43 65 72 74 44 69 72 20 26 26 20 69 73 5f 64 69 72 28 24 65 6e 76 ;.if.($envCertDir.&&.is_dir($env
c31c0 43 65 72 74 44 69 72 29 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 65 6e 76 43 65 72 74 CertDir).&&.is_readable($envCert
c31e0 44 69 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 50 61 74 68 20 3d 20 24 65 6e 76 43 65 72 Dir)).{.return.$caPath.=.$envCer
c3200 74 44 69 72 3b 0a 7d 0a 0a 24 63 6f 6e 66 69 67 75 72 65 64 20 3d 20 69 6e 69 5f 67 65 74 28 27 tDir;.}..$configured.=.ini_get('
c3220 6f 70 65 6e 73 73 6c 2e 63 61 66 69 6c 65 27 29 3b 0a 69 66 20 28 24 63 6f 6e 66 69 67 75 72 65 openssl.cafile');.if.($configure
c3240 64 20 26 26 20 73 74 72 6c 65 6e 28 24 63 6f 6e 66 69 67 75 72 65 64 29 20 3e 20 30 20 26 26 20 d.&&.strlen($configured).>.0.&&.
c3260 69 73 5f 72 65 61 64 61 62 6c 65 28 24 63 6f 6e 66 69 67 75 72 65 64 29 20 26 26 20 24 74 68 69 is_readable($configured).&&.$thi
c3280 73 2d 3e 76 61 6c 69 64 61 74 65 43 61 46 69 6c 65 28 24 63 6f 6e 66 69 67 75 72 65 64 29 29 20 s->validateCaFile($configured)).
c32a0 7b 0a 72 65 74 75 72 6e 20 24 63 61 50 61 74 68 20 3d 20 24 63 6f 6e 66 69 67 75 72 65 64 3b 0a {.return.$caPath.=.$configured;.
c32c0 7d 0a 0a 24 63 6f 6e 66 69 67 75 72 65 64 20 3d 20 69 6e 69 5f 67 65 74 28 27 6f 70 65 6e 73 73 }..$configured.=.ini_get('openss
c32e0 6c 2e 63 61 70 61 74 68 27 29 3b 0a 69 66 20 28 24 63 6f 6e 66 69 67 75 72 65 64 20 26 26 20 69 l.capath');.if.($configured.&&.i
c3300 73 5f 64 69 72 28 24 63 6f 6e 66 69 67 75 72 65 64 29 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c s_dir($configured).&&.is_readabl
c3320 65 28 24 63 6f 6e 66 69 67 75 72 65 64 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 50 61 74 68 e($configured)).{.return.$caPath
c3340 20 3d 20 24 63 6f 6e 66 69 67 75 72 65 64 3b 0a 7d 0a 0a 24 63 61 42 75 6e 64 6c 65 50 61 74 68 .=.$configured;.}..$caBundlePath
c3360 73 20 3d 20 61 72 72 61 79 28 0a 27 2f 65 74 63 2f 70 6b 69 2f 74 6c 73 2f 63 65 72 74 73 2f 63 s.=.array(.'/etc/pki/tls/certs/c
c3380 61 2d 62 75 6e 64 6c 65 2e 63 72 74 27 2c 20 0a 20 27 2f 65 74 63 2f 73 73 6c 2f 63 65 72 74 73 a-bundle.crt',...'/etc/ssl/certs
c33a0 2f 63 61 2d 63 65 72 74 69 66 69 63 61 74 65 73 2e 63 72 74 27 2c 20 0a 20 27 2f 65 74 63 2f 73 /ca-certificates.crt',...'/etc/s
c33c0 73 6c 2f 63 61 2d 62 75 6e 64 6c 65 2e 70 65 6d 27 2c 20 0a 20 27 2f 75 73 72 2f 6c 6f 63 61 6c sl/ca-bundle.pem',...'/usr/local
c33e0 2f 73 68 61 72 65 2f 63 65 72 74 73 2f 63 61 2d 72 6f 6f 74 2d 6e 73 73 2e 63 72 74 27 2c 20 0a /share/certs/ca-root-nss.crt',..
c3400 20 27 2f 75 73 72 2f 73 73 6c 2f 63 65 72 74 73 2f 63 61 2d 62 75 6e 64 6c 65 2e 63 72 74 27 2c .'/usr/ssl/certs/ca-bundle.crt',
c3420 20 0a 20 27 2f 6f 70 74 2f 6c 6f 63 61 6c 2f 73 68 61 72 65 2f 63 75 72 6c 2f 63 75 72 6c 2d 63 ...'/opt/local/share/curl/curl-c
c3440 61 2d 62 75 6e 64 6c 65 2e 63 72 74 27 2c 20 0a 20 27 2f 75 73 72 2f 6c 6f 63 61 6c 2f 73 68 61 a-bundle.crt',...'/usr/local/sha
c3460 72 65 2f 63 75 72 6c 2f 63 75 72 6c 2d 63 61 2d 62 75 6e 64 6c 65 2e 63 72 74 27 2c 20 0a 20 27 re/curl/curl-ca-bundle.crt',...'
c3480 2f 75 73 72 2f 73 68 61 72 65 2f 73 73 6c 2f 63 65 72 74 73 2f 63 61 2d 62 75 6e 64 6c 65 2e 63 /usr/share/ssl/certs/ca-bundle.c
c34a0 72 74 27 2c 20 0a 20 27 2f 65 74 63 2f 73 73 6c 2f 63 65 72 74 2e 70 65 6d 27 2c 20 0a 20 27 2f rt',...'/etc/ssl/cert.pem',...'/
c34c0 75 73 72 2f 6c 6f 63 61 6c 2f 65 74 63 2f 73 73 6c 2f 63 65 72 74 2e 70 65 6d 27 2c 20 0a 20 29 usr/local/etc/ssl/cert.pem',...)
c34e0 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 61 42 75 6e 64 6c 65 50 61 74 68 73 20 61 73 20 24 63 ;..foreach.($caBundlePaths.as.$c
c3500 61 42 75 6e 64 6c 65 29 20 7b 0a 69 66 20 28 53 69 6c 65 6e 63 65 72 3a 3a 63 61 6c 6c 28 27 69 aBundle).{.if.(Silencer::call('i
c3520 73 5f 72 65 61 64 61 62 6c 65 27 2c 20 24 63 61 42 75 6e 64 6c 65 29 20 26 26 20 24 74 68 69 73 s_readable',.$caBundle).&&.$this
c3540 2d 3e 76 61 6c 69 64 61 74 65 43 61 46 69 6c 65 28 24 63 61 42 75 6e 64 6c 65 29 29 20 7b 0a 72 ->validateCaFile($caBundle)).{.r
c3560 65 74 75 72 6e 20 24 63 61 50 61 74 68 20 3d 20 24 63 61 42 75 6e 64 6c 65 3b 0a 7d 0a 7d 0a 0a eturn.$caPath.=.$caBundle;.}.}..
c3580 66 6f 72 65 61 63 68 20 28 24 63 61 42 75 6e 64 6c 65 50 61 74 68 73 20 61 73 20 24 63 61 42 75 foreach.($caBundlePaths.as.$caBu
c35a0 6e 64 6c 65 29 20 7b 0a 24 63 61 42 75 6e 64 6c 65 20 3d 20 64 69 72 6e 61 6d 65 28 24 63 61 42 ndle).{.$caBundle.=.dirname($caB
c35c0 75 6e 64 6c 65 29 3b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 63 61 42 75 6e 64 6c 65 29 20 26 26 undle);.if.(is_dir($caBundle).&&
c35e0 20 67 6c 6f 62 28 24 63 61 42 75 6e 64 6c 65 2e 27 2f 2a 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 .glob($caBundle.'/*')).{.return.
c3600 24 63 61 50 61 74 68 20 3d 20 24 63 61 42 75 6e 64 6c 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e $caPath.=.$caBundle;.}.}..return
c3620 20 24 63 61 50 61 74 68 20 3d 20 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 72 65 .$caPath.=.__DIR__.'/../../../re
c3640 73 2f 63 61 63 65 72 74 2e 70 65 6d 27 3b 20 0a 20 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 s/cacert.pem';...}.......private
c3660 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 43 61 46 69 6c 65 28 24 66 69 6c 65 6e 61 .function.validateCaFile($filena
c3680 6d 65 29 0a 7b 0a 73 74 61 74 69 63 20 24 66 69 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a me).{.static.$files.=.array();..
c36a0 69 66 20 28 69 73 73 65 74 28 24 66 69 6c 65 73 5b 24 66 69 6c 65 6e 61 6d 65 5d 29 29 20 7b 0a if.(isset($files[$filename])).{.
c36c0 72 65 74 75 72 6e 20 24 66 69 6c 65 73 5b 24 66 69 6c 65 6e 61 6d 65 5d 3b 0a 7d 0a 0a 24 74 68 return.$files[$filename];.}..$th
c36e0 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 43 68 65 63 6b 69 6e 67 20 43 41 20 is->io->writeError('Checking.CA.
c3700 66 69 6c 65 20 27 2e 72 65 61 6c 70 61 74 68 28 24 66 69 6c 65 6e 61 6d 65 29 2c 20 74 72 75 65 file.'.realpath($filename),.true
c3720 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 3a 3a 44 45 42 55 47 29 3b 0a 24 63 6f 6e 74 65 6e 74 73 ,.IOInterface::DEBUG);.$contents
c3740 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 6e 61 6d 65 29 3b .=.file_get_contents($filename);
c3760 0a 0a 0a 20 0a 20 69 66 20 28 21 54 6c 73 48 65 6c 70 65 72 3a 3a 69 73 4f 70 65 6e 73 73 6c 50 ......if.(!TlsHelper::isOpensslP
c3780 61 72 73 65 53 61 66 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 arseSafe()).{.$this->io->writeEr
c37a0 72 6f 72 28 73 70 72 69 6e 74 66 28 0a 27 3c 65 72 72 6f 72 3e 59 6f 75 72 20 76 65 72 73 69 6f ror(sprintf(.'<error>Your.versio
c37c0 6e 20 6f 66 20 50 48 50 2c 20 25 73 2c 20 69 73 20 61 66 66 65 63 74 65 64 20 62 79 20 43 56 45 n.of.PHP,.%s,.is.affected.by.CVE
c37e0 2d 32 30 31 33 2d 36 34 32 30 20 61 6e 64 20 63 61 6e 6e 6f 74 20 73 61 66 65 6c 79 20 70 65 72 -2013-6420.and.cannot.safely.per
c3800 66 6f 72 6d 20 63 65 72 74 69 66 69 63 61 74 65 20 76 61 6c 69 64 61 74 69 6f 6e 2c 20 77 65 20 form.certificate.validation,.we.
c3820 73 74 72 6f 6e 67 6c 79 20 73 75 67 67 65 73 74 20 79 6f 75 20 75 70 67 72 61 64 65 2e 3c 2f 65 strongly.suggest.you.upgrade.</e
c3840 72 72 6f 72 3e 27 2c 0a 50 48 50 5f 56 45 52 53 49 4f 4e 0a 29 29 3b 0a 0a 72 65 74 75 72 6e 20 rror>',.PHP_VERSION.));..return.
c3860 24 66 69 6c 65 73 5b 24 66 69 6c 65 6e 61 6d 65 5d 20 3d 20 21 65 6d 70 74 79 28 24 63 6f 6e 74 $files[$filename].=.!empty($cont
c3880 65 6e 74 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 73 5b 24 66 69 6c 65 6e 61 6d ents);.}..return.$files[$filenam
c38a0 65 5d 20 3d 20 28 62 6f 6f 6c 29 20 6f 70 65 6e 73 73 6c 5f 78 35 30 39 5f 70 61 72 73 65 28 24 e].=.(bool).openssl_x509_parse($
c38c0 63 6f 6e 74 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 contents);.}........private.func
c38e0 74 69 6f 6e 20 73 74 72 65 61 6d 43 6f 70 79 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 tion.streamCopy($source,.$target
c3900 29 0a 7b 0a 24 73 6f 75 72 63 65 20 3d 20 66 6f 70 65 6e 28 24 73 6f 75 72 63 65 2c 20 27 72 27 ).{.$source.=.fopen($source,.'r'
c3920 29 3b 0a 24 74 61 72 67 65 74 20 3d 20 66 6f 70 65 6e 28 24 74 61 72 67 65 74 2c 20 27 77 2b 27 );.$target.=.fopen($target,.'w+'
c3940 29 3b 0a 0a 73 74 72 65 61 6d 5f 63 6f 70 79 5f 74 6f 5f 73 74 72 65 61 6d 28 24 73 6f 75 72 63 );..stream_copy_to_stream($sourc
c3960 65 2c 20 24 74 61 72 67 65 74 29 3b 0a 66 63 6c 6f 73 65 28 24 73 6f 75 72 63 65 29 3b 0a 66 63 e,.$target);.fclose($source);.fc
c3980 6c 6f 73 65 28 24 74 61 72 67 65 74 29 3b 0a 0a 75 6e 73 65 74 28 24 73 6f 75 72 63 65 2c 20 24 lose($target);..unset($source,.$
c39a0 74 61 72 67 65 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f target);.}.......private.functio
c39c0 6e 20 67 65 74 43 65 72 74 69 66 69 63 61 74 65 43 6e 41 6e 64 46 70 28 24 75 72 6c 2c 20 24 6f n.getCertificateCnAndFp($url,.$o
c39e0 70 74 69 6f 6e 73 29 0a 7b 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 ptions).{.if.(PHP_VERSION_ID.>=.
c3a00 35 30 36 30 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 42 61 64 4d 65 74 68 6f 64 43 61 6c 50600).{.throw.new.\BadMethodCal
c3a20 6c 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 25 73 20 6d 75 73 74 20 6e 6f 74 lException(sprintf(.'%s.must.not
c3a40 20 62 65 20 75 73 65 64 20 6f 6e 20 50 48 50 20 3e 3d 20 35 2e 36 27 2c 0a 5f 5f 4d 45 54 48 4f .be.used.on.PHP.>=.5.6',.__METHO
c3a60 44 5f 5f 0a 29 29 3b 0a 7d 0a 0a 24 63 6f 6e 74 65 78 74 20 3d 20 53 74 72 65 61 6d 43 6f 6e 74 D__.));.}..$context.=.StreamCont
c3a80 65 78 74 46 61 63 74 6f 72 79 3a 3a 67 65 74 43 6f 6e 74 65 78 74 28 24 75 72 6c 2c 20 24 6f 70 extFactory::getContext($url,.$op
c3aa0 74 69 6f 6e 73 2c 20 61 72 72 61 79 28 27 6f 70 74 69 6f 6e 73 27 20 3d 3e 20 61 72 72 61 79 28 tions,.array('options'.=>.array(
c3ac0 0a 27 73 73 6c 27 20 3d 3e 20 61 72 72 61 79 28 0a 27 63 61 70 74 75 72 65 5f 70 65 65 72 5f 63 .'ssl'.=>.array(.'capture_peer_c
c3ae0 65 72 74 27 20 3d 3e 20 74 72 75 65 2c 0a 27 76 65 72 69 66 79 5f 70 65 65 72 27 20 3d 3e 20 66 ert'.=>.true,.'verify_peer'.=>.f
c3b00 61 6c 73 65 2c 20 0a 20 29 2c 20 29 2c 0a 29 29 3b 0a 0a 0a 20 0a 20 69 66 20 28 66 61 6c 73 65 alse,...),.),.));......if.(false
c3b20 20 3d 3d 3d 20 24 68 61 6e 64 6c 65 20 3d 20 40 66 6f 70 65 6e 28 24 75 72 6c 2c 20 27 72 62 27 .===.$handle.=.@fopen($url,.'rb'
c3b40 2c 20 66 61 6c 73 65 2c 20 24 63 6f 6e 74 65 78 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a ,.false,.$context)).{.return;.}.
c3b60 0a 0a 20 66 63 6c 6f 73 65 28 24 68 61 6e 64 6c 65 29 3b 0a 24 68 61 6e 64 6c 65 20 3d 20 6e 75 ...fclose($handle);.$handle.=.nu
c3b80 6c 6c 3b 0a 0a 24 70 61 72 61 6d 73 20 3d 20 73 74 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f 67 65 ll;..$params.=.stream_context_ge
c3ba0 74 5f 70 61 72 61 6d 73 28 24 63 6f 6e 74 65 78 74 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 t_params($context);..if.(!empty(
c3bc0 24 70 61 72 61 6d 73 5b 27 6f 70 74 69 6f 6e 73 27 5d 5b 27 73 73 6c 27 5d 5b 27 70 65 65 72 5f $params['options']['ssl']['peer_
c3be0 63 65 72 74 69 66 69 63 61 74 65 27 5d 29 29 20 7b 0a 24 70 65 65 72 43 65 72 74 69 66 69 63 61 certificate'])).{.$peerCertifica
c3c00 74 65 20 3d 20 24 70 61 72 61 6d 73 5b 27 6f 70 74 69 6f 6e 73 27 5d 5b 27 73 73 6c 27 5d 5b 27 te.=.$params['options']['ssl']['
c3c20 70 65 65 72 5f 63 65 72 74 69 66 69 63 61 74 65 27 5d 3b 0a 0a 69 66 20 28 54 6c 73 48 65 6c 70 peer_certificate'];..if.(TlsHelp
c3c40 65 72 3a 3a 63 68 65 63 6b 43 65 72 74 69 66 69 63 61 74 65 48 6f 73 74 28 24 70 65 65 72 43 65 er::checkCertificateHost($peerCe
c3c60 72 74 69 66 69 63 61 74 65 2c 20 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 rtificate,.parse_url($url,.PHP_U
c3c80 52 4c 5f 48 4f 53 54 29 2c 20 24 63 6f 6d 6d 6f 6e 4e 61 6d 65 29 29 20 7b 0a 72 65 74 75 72 6e RL_HOST),.$commonName)).{.return
c3ca0 20 61 72 72 61 79 28 0a 27 63 6e 27 20 3d 3e 20 24 63 6f 6d 6d 6f 6e 4e 61 6d 65 2c 0a 27 66 70 .array(.'cn'.=>.$commonName,.'fp
c3cc0 27 20 3d 3e 20 54 6c 73 48 65 6c 70 65 72 3a 3a 67 65 74 43 65 72 74 69 66 69 63 61 74 65 46 69 '.=>.TlsHelper::getCertificateFi
c3ce0 6e 67 65 72 70 72 69 6e 74 28 24 70 65 65 72 43 65 72 74 69 66 69 63 61 74 65 29 2c 0a 29 3b 0a ngerprint($peerCertificate),.);.
c3d00 7d 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 41 75 }.}.}..private.function.getUrlAu
c3d20 74 68 6f 72 69 74 79 28 24 75 72 6c 29 0a 7b 0a 24 64 65 66 61 75 6c 74 50 6f 72 74 73 20 3d 20 thority($url).{.$defaultPorts.=.
c3d40 61 72 72 61 79 28 0a 27 66 74 70 27 20 3d 3e 20 32 31 2c 0a 27 68 74 74 70 27 20 3d 3e 20 38 30 array(.'ftp'.=>.21,.'http'.=>.80
c3d60 2c 0a 27 68 74 74 70 73 27 20 3d 3e 20 34 34 33 2c 0a 27 73 73 68 32 2e 73 66 74 70 27 20 3d 3e ,.'https'.=>.443,.'ssh2.sftp'.=>
c3d80 20 32 32 2c 0a 27 73 73 68 32 2e 73 63 70 27 20 3d 3e 20 32 32 2c 0a 29 3b 0a 0a 24 73 63 68 65 .22,.'ssh2.scp'.=>.22,.);..$sche
c3da0 6d 65 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 53 43 48 me.=.parse_url($url,.PHP_URL_SCH
c3dc0 45 4d 45 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 64 65 66 61 75 6c 74 50 6f 72 74 73 5b EME);..if.(!isset($defaultPorts[
c3de0 24 73 63 68 65 6d 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 $scheme])).{.throw.new.\InvalidA
c3e00 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 43 6f 75 6c 64 rgumentException(sprintf(.'Could
c3e20 20 6e 6f 74 20 67 65 74 20 64 65 66 61 75 6c 74 20 70 6f 72 74 20 66 6f 72 20 75 6e 6b 6e 6f 77 .not.get.default.port.for.unknow
c3e40 6e 20 73 63 68 65 6d 65 3a 20 25 73 27 2c 0a 24 73 63 68 65 6d 65 0a 29 29 3b 0a 7d 0a 0a 24 64 n.scheme:.%s',.$scheme.));.}..$d
c3e60 65 66 61 75 6c 74 50 6f 72 74 20 3d 20 24 64 65 66 61 75 6c 74 50 6f 72 74 73 5b 24 73 63 68 65 efaultPort.=.$defaultPorts[$sche
c3e80 6d 65 5d 3b 0a 24 70 6f 72 74 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 me];.$port.=.parse_url($url,.PHP
c3ea0 5f 55 52 4c 5f 50 4f 52 54 29 20 3f 3a 20 24 64 65 66 61 75 6c 74 50 6f 72 74 3b 0a 0a 72 65 74 _URL_PORT).?:.$defaultPort;..ret
c3ec0 75 72 6e 20 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 urn.parse_url($url,.PHP_URL_HOST
c3ee0 29 2e 27 3a 27 2e 24 70 6f 72 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ).':'.$port;.}.}.<?php..........
c3f00 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 0a 0a 0a 0a 0a .namespace.Composer\Util;.......
c3f20 63 6c 61 73 73 20 53 69 6c 65 6e 63 65 72 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 class.Silencer.{....private.stat
c3f40 69 63 20 24 73 74 61 63 6b 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ic.$stack.=.array();........publ
c3f60 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 72 65 73 73 28 24 6d 61 73 ic.static.function.suppress($mas
c3f80 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 6d 61 73 6b 29 29 20 7b k.=.null).{.if.(!isset($mask)).{
c3fa0 0a 24 6d 61 73 6b 20 3d 20 45 5f 57 41 52 4e 49 4e 47 20 7c 20 45 5f 4e 4f 54 49 43 45 20 7c 20 .$mask.=.E_WARNING.|.E_NOTICE.|.
c3fc0 45 5f 55 53 45 52 5f 57 41 52 4e 49 4e 47 20 7c 20 45 5f 55 53 45 52 5f 4e 4f 54 49 43 45 20 7c E_USER_WARNING.|.E_USER_NOTICE.|
c3fe0 20 45 5f 44 45 50 52 45 43 41 54 45 44 20 7c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 .E_DEPRECATED.|.E_USER_DEPRECATE
c4000 44 20 7c 20 45 5f 53 54 52 49 43 54 3b 0a 7d 0a 24 6f 6c 64 20 3d 20 65 72 72 6f 72 5f 72 65 70 D.|.E_STRICT;.}.$old.=.error_rep
c4020 6f 72 74 69 6e 67 28 29 3b 0a 61 72 72 61 79 5f 70 75 73 68 28 73 65 6c 66 3a 3a 24 73 74 61 63 orting();.array_push(self::$stac
c4040 6b 2c 20 24 6f 6c 64 29 3b 0a 65 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 24 6f 6c 64 20 26 k,.$old);.error_reporting($old.&
c4060 20 7e 24 6d 61 73 6b 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6f 6c 64 3b 0a 7d 0a 0a 0a 0a 0a 70 75 .~$mask);..return.$old;.}.....pu
c4080 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 74 6f 72 65 28 29 0a 7b blic.static.function.restore().{
c40a0 0a 69 66 20 28 21 65 6d 70 74 79 28 73 65 6c 66 3a 3a 24 73 74 61 63 6b 29 29 20 7b 0a 65 72 72 .if.(!empty(self::$stack)).{.err
c40c0 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 61 72 72 61 79 5f 70 6f 70 28 73 65 6c 66 3a 3a 24 73 74 or_reporting(array_pop(self::$st
c40e0 61 63 6b 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 ack));.}.}...........public.stat
c4100 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 28 24 63 61 6c 6c 61 62 6c 65 20 29 0a 7b 0a 74 ic.function.call($callable.).{.t
c4120 72 79 20 7b 0a 73 65 6c 66 3a 3a 73 75 70 70 72 65 73 73 28 29 3b 0a 24 72 65 73 75 6c 74 20 3d ry.{.self::suppress();.$result.=
c4140 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 24 63 61 6c 6c 61 62 6c 65 2c .call_user_func_array($callable,
c4160 20 61 72 72 61 79 5f 73 6c 69 63 65 28 66 75 6e 63 5f 67 65 74 5f 61 72 67 73 28 29 2c 20 31 29 .array_slice(func_get_args(),.1)
c4180 29 3b 0a 73 65 6c 66 3a 3a 72 65 73 74 6f 72 65 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 );.self::restore();..return.$res
c41a0 75 6c 74 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 0a ult;.}.catch.(\Exception.$e).{..
c41c0 20 73 65 6c 66 3a 3a 72 65 73 74 6f 72 65 28 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a .self::restore();.throw.$e;.}.}.
c41e0 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d }.<?php............namespace.Com
c4200 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 70 64 78 5c 53 poser\Util;..use.Composer\Spdx\S
c4220 70 64 78 4c 69 63 65 6e 73 65 73 3b 0a 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 pdxLicenses;..trigger_error('The
c4240 20 27 20 2e 20 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 20 2e 20 27 5c 53 70 64 78 4c 69 63 65 6e .'...__NAMESPACE__...'\SpdxLicen
c4260 73 65 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 2c 20 75 73 65 20 43 6f 6d 70 se.class.is.deprecated,.use.Comp
c4280 6f 73 65 72 5c 53 70 64 78 5c 53 70 64 78 4c 69 63 65 6e 73 65 73 20 69 6e 73 74 65 61 64 2e 27 oser\Spdx\SpdxLicenses.instead.'
c42a0 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 ,.E_USER_DEPRECATED);.....class.
c42c0 53 70 64 78 4c 69 63 65 6e 73 65 20 65 78 74 65 6e 64 73 20 53 70 64 78 4c 69 63 65 6e 73 65 73 SpdxLicense.extends.SpdxLicenses
c42e0 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 .{.}.<?php............namespace.
c4300 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d Composer\Util;..use.Composer\Com
c4320 70 6f 73 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 66 69 6e 61 6c 20 63 6c 61 73 73 20 53 74 72 65 61 6d poser;........final.class.Stream
c4340 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ContextFactory.{..........public
c4360 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 78 74 28 24 75 72 6c .static.function.getContext($url
c4380 2c 20 61 72 72 61 79 20 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 ,.array.$defaultOptions.=.array(
c43a0 29 2c 20 61 72 72 61 79 20 24 64 65 66 61 75 6c 74 50 61 72 61 6d 73 20 3d 20 61 72 72 61 79 28 ),.array.$defaultParams.=.array(
c43c0 29 29 0a 7b 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 27 68 74 74 70 27 20 3d 3e 20 )).{.$options.=.array('http'.=>.
c43e0 61 72 72 61 79 28 0a 0a 20 27 66 6f 6c 6c 6f 77 5f 6c 6f 63 61 74 69 6f 6e 27 20 3d 3e 20 31 2c array(...'follow_location'.=>.1,
c4400 0a 27 6d 61 78 5f 72 65 64 69 72 65 63 74 73 27 20 3d 3e 20 32 30 2c 0a 29 29 3b 0a 0a 0a 20 69 .'max_redirects'.=>.20,.));....i
c4420 66 20 28 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 48 54 54 50 5f 50 52 4f 58 59 27 5d f.(!empty($_SERVER['HTTP_PROXY']
c4440 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 68 74 74 70 5f 70 72 6f 78 79 ).||.!empty($_SERVER['http_proxy
c4460 27 5d 29 29 20 7b 0a 0a 20 24 70 72 6f 78 79 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 21 65 6d 70 '])).{...$proxy.=.parse_url(!emp
c4480 74 79 28 24 5f 53 45 52 56 45 52 5b 27 68 74 74 70 5f 70 72 6f 78 79 27 5d 29 20 3f 20 24 5f 53 ty($_SERVER['http_proxy']).?.$_S
c44a0 45 52 56 45 52 5b 27 68 74 74 70 5f 70 72 6f 78 79 27 5d 20 3a 20 24 5f 53 45 52 56 45 52 5b 27 ERVER['http_proxy'].:.$_SERVER['
c44c0 48 54 54 50 5f 50 52 4f 58 59 27 5d 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 HTTP_PROXY']);.}....if.(preg_mat
c44e0 63 68 28 27 7b 5e 68 74 74 70 73 3a 2f 2f 7d 69 27 2c 20 24 75 72 6c 29 20 26 26 20 28 21 65 6d ch('{^https://}i',.$url).&&.(!em
c4500 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 48 54 54 50 53 5f 50 52 4f 58 59 27 5d 29 20 7c 7c 20 pty($_SERVER['HTTPS_PROXY']).||.
c4520 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 68 74 74 70 73 5f 70 72 6f 78 79 27 5d 29 29 !empty($_SERVER['https_proxy']))
c4540 29 20 7b 0a 24 70 72 6f 78 79 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 21 65 6d 70 74 79 28 24 5f ).{.$proxy.=.parse_url(!empty($_
c4560 53 45 52 56 45 52 5b 27 68 74 74 70 73 5f 70 72 6f 78 79 27 5d 29 20 3f 20 24 5f 53 45 52 56 45 SERVER['https_proxy']).?.$_SERVE
c4580 52 5b 27 68 74 74 70 73 5f 70 72 6f 78 79 27 5d 20 3a 20 24 5f 53 45 52 56 45 52 5b 27 48 54 54 R['https_proxy'].:.$_SERVER['HTT
c45a0 50 53 5f 50 52 4f 58 59 27 5d 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 65 6d 70 74 79 28 24 5f 53 PS_PROXY']);.}....if.(!empty($_S
c45c0 45 52 56 45 52 5b 27 6e 6f 5f 70 72 6f 78 79 27 5d 29 20 26 26 20 70 61 72 73 65 5f 75 72 6c 28 ERVER['no_proxy']).&&.parse_url(
c45e0 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 $url,.PHP_URL_HOST)).{.$pattern.
c4600 3d 20 6e 65 77 20 4e 6f 50 72 6f 78 79 50 61 74 74 65 72 6e 28 24 5f 53 45 52 56 45 52 5b 27 6e =.new.NoProxyPattern($_SERVER['n
c4620 6f 5f 70 72 6f 78 79 27 5d 29 3b 0a 69 66 20 28 24 70 61 74 74 65 72 6e 2d 3e 74 65 73 74 28 24 o_proxy']);.if.($pattern->test($
c4640 75 72 6c 29 29 20 7b 0a 75 6e 73 65 74 28 24 70 72 6f 78 79 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 url)).{.unset($proxy);.}.}..if.(
c4660 21 65 6d 70 74 79 28 24 70 72 6f 78 79 29 29 20 7b 0a 24 70 72 6f 78 79 55 52 4c 20 3d 20 69 73 !empty($proxy)).{.$proxyURL.=.is
c4680 73 65 74 28 24 70 72 6f 78 79 5b 27 73 63 68 65 6d 65 27 5d 29 20 3f 20 24 70 72 6f 78 79 5b 27 set($proxy['scheme']).?.$proxy['
c46a0 73 63 68 65 6d 65 27 5d 20 2e 20 27 3a 2f 2f 27 20 3a 20 27 27 3b 0a 24 70 72 6f 78 79 55 52 4c scheme']...'://'.:.'';.$proxyURL
c46c0 20 2e 3d 20 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 68 6f 73 74 27 5d 29 20 3f 20 24 70 72 6f ..=.isset($proxy['host']).?.$pro
c46e0 78 79 5b 27 68 6f 73 74 27 5d 20 3a 20 27 27 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 70 72 6f xy['host'].:.'';..if.(isset($pro
c4700 78 79 5b 27 70 6f 72 74 27 5d 29 29 20 7b 0a 24 70 72 6f 78 79 55 52 4c 20 2e 3d 20 22 3a 22 20 xy['port'])).{.$proxyURL..=.":".
c4720 2e 20 24 70 72 6f 78 79 5b 27 70 6f 72 74 27 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 68 74 74 ..$proxy['port'];.}.elseif.('htt
c4740 70 3a 2f 2f 27 20 3d 3d 20 73 75 62 73 74 72 28 24 70 72 6f 78 79 55 52 4c 2c 20 30 2c 20 37 29 p://'.==.substr($proxyURL,.0,.7)
c4760 29 20 7b 0a 24 70 72 6f 78 79 55 52 4c 20 2e 3d 20 22 3a 38 30 22 3b 0a 7d 20 65 6c 73 65 69 66 ).{.$proxyURL..=.":80";.}.elseif
c4780 20 28 27 68 74 74 70 73 3a 2f 2f 27 20 3d 3d 20 73 75 62 73 74 72 28 24 70 72 6f 78 79 55 52 4c .('https://'.==.substr($proxyURL
c47a0 2c 20 30 2c 20 38 29 29 20 7b 0a 24 70 72 6f 78 79 55 52 4c 20 2e 3d 20 22 3a 34 34 33 22 3b 0a ,.0,.8)).{.$proxyURL..=.":443";.
c47c0 7d 0a 0a 0a 20 24 70 72 6f 78 79 55 52 4c 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 }....$proxyURL.=.str_replace(arr
c47e0 61 79 28 27 68 74 74 70 3a 2f 2f 27 2c 20 27 68 74 74 70 73 3a 2f 2f 27 29 2c 20 61 72 72 61 79 ay('http://',.'https://'),.array
c4800 28 27 74 63 70 3a 2f 2f 27 2c 20 27 73 73 6c 3a 2f 2f 27 29 2c 20 24 70 72 6f 78 79 55 52 4c 29 ('tcp://',.'ssl://'),.$proxyURL)
c4820 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 70 72 6f 78 79 55 52 4c 2c 20 27 ;..if.(0.===.strpos($proxyURL,.'
c4840 73 73 6c 3a 27 29 20 26 26 20 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 ssl:').&&.!extension_loaded('ope
c4860 6e 73 73 6c 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 nssl')).{.throw.new.\RuntimeExce
c4880 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 65 6e 61 62 6c 65 20 74 68 65 20 6f 70 65 6e 73 ption('You.must.enable.the.opens
c48a0 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 74 6f 20 75 73 65 20 61 20 70 72 6f 78 79 20 6f 76 65 72 sl.extension.to.use.a.proxy.over
c48c0 20 68 74 74 70 73 27 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 70 .https');.}..$options['http']['p
c48e0 72 6f 78 79 27 5d 20 3d 20 24 70 72 6f 78 79 55 52 4c 3b 0a 0a 0a 20 73 77 69 74 63 68 20 28 70 roxy'].=.$proxyURL;....switch.(p
c4900 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 53 43 48 45 4d 45 29 29 20 arse_url($url,.PHP_URL_SCHEME)).
c4920 7b 0a 63 61 73 65 20 27 68 74 74 70 27 3a 20 0a 20 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 20 {.case.'http':...$reqFullUriEnv.
c4940 3d 20 67 65 74 65 6e 76 28 27 48 54 54 50 5f 50 52 4f 58 59 5f 52 45 51 55 45 53 54 5f 46 55 4c =.getenv('HTTP_PROXY_REQUEST_FUL
c4960 4c 55 52 49 27 29 3b 0a 69 66 20 28 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 20 3d 3d 3d 20 66 LURI');.if.($reqFullUriEnv.===.f
c4980 61 6c 73 65 20 7c 7c 20 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 20 3d 3d 3d 20 27 27 20 7c 7c alse.||.$reqFullUriEnv.===.''.||
c49a0 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 29 20 21 3d 3d .(strtolower($reqFullUriEnv).!==
c49c0 20 27 66 61 6c 73 65 27 20 26 26 20 28 62 6f 6f 6c 29 20 24 72 65 71 46 75 6c 6c 55 72 69 45 6e .'false'.&&.(bool).$reqFullUriEn
c49e0 76 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 72 65 71 75 65 73 74 5f v)).{.$options['http']['request_
c4a00 66 75 6c 6c 75 72 69 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 fulluri'].=.true;.}.break;.case.
c4a20 27 68 74 74 70 73 27 3a 20 0a 20 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 20 3d 20 67 65 74 65 'https':...$reqFullUriEnv.=.gete
c4a40 6e 76 28 27 48 54 54 50 53 5f 50 52 4f 58 59 5f 52 45 51 55 45 53 54 5f 46 55 4c 4c 55 52 49 27 nv('HTTPS_PROXY_REQUEST_FULLURI'
c4a60 29 3b 0a 69 66 20 28 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 20 3d 3d 3d 20 66 61 6c 73 65 20 );.if.($reqFullUriEnv.===.false.
c4a80 7c 7c 20 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 20 3d 3d 3d 20 27 27 20 7c 7c 20 28 73 74 72 ||.$reqFullUriEnv.===.''.||.(str
c4aa0 74 6f 6c 6f 77 65 72 28 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 29 20 21 3d 3d 20 27 66 61 6c tolower($reqFullUriEnv).!==.'fal
c4ac0 73 65 27 20 26 26 20 28 62 6f 6f 6c 29 20 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 29 29 20 7b se'.&&.(bool).$reqFullUriEnv)).{
c4ae0 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 .$options['http']['request_fullu
c4b00 72 69 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 0a 20 69 66 20 28 27 ri'].=.true;.}.break;.}....if.('
c4b20 68 74 74 70 73 27 20 3d 3d 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 https'.===.parse_url($url,.PHP_U
c4b40 52 4c 5f 53 43 48 45 4d 45 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 53 RL_SCHEME)).{.$options['ssl']['S
c4b60 4e 49 5f 65 6e 61 62 6c 65 64 27 5d 20 3d 20 74 72 75 65 3b 0a 69 66 20 28 50 48 50 5f 56 45 52 NI_enabled'].=.true;.if.(PHP_VER
c4b80 53 49 4f 4e 5f 49 44 20 3c 20 35 30 36 30 30 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c SION_ID.<.50600).{.$options['ssl
c4ba0 27 5d 5b 27 53 4e 49 5f 73 65 72 76 65 72 5f 6e 61 6d 65 27 5d 20 3d 20 70 61 72 73 65 5f 75 72 ']['SNI_server_name'].=.parse_ur
c4bc0 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 l($url,.PHP_URL_HOST);.}.}....if
c4be0 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 75 73 65 72 27 5d 29 29 20 7b 0a 24 61 75 74 68 .(isset($proxy['user'])).{.$auth
c4c00 20 3d 20 75 72 6c 64 65 63 6f 64 65 28 24 70 72 6f 78 79 5b 27 75 73 65 72 27 5d 29 3b 0a 69 66 .=.urldecode($proxy['user']);.if
c4c20 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 70 61 73 73 27 5d 29 29 20 7b 0a 24 61 75 74 68 .(isset($proxy['pass'])).{.$auth
c4c40 20 2e 3d 20 27 3a 27 20 2e 20 75 72 6c 64 65 63 6f 64 65 28 24 70 72 6f 78 79 5b 27 70 61 73 73 ..=.':'...urldecode($proxy['pass
c4c60 27 5d 29 3b 0a 7d 0a 24 61 75 74 68 20 3d 20 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 61 75 ']);.}.$auth.=.base64_encode($au
c4c80 74 68 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e th);....if.(isset($defaultOption
c4ca0 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 29 20 7b 0a 69 66 20 28 69 73 5f 73 s['http']['header'])).{.if.(is_s
c4cc0 74 72 69 6e 67 28 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 tring($defaultOptions['http']['h
c4ce0 65 61 64 65 72 27 5d 29 29 20 7b 0a 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 5b 27 68 74 74 eader'])).{.$defaultOptions['htt
c4d00 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 20 3d 20 61 72 72 61 79 28 24 64 65 66 61 75 6c 74 4f 70 p']['header'].=.array($defaultOp
c4d20 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 3b 0a 7d 0a 24 64 65 66 tions['http']['header']);.}.$def
c4d40 61 75 6c 74 4f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 5b 5d 20 aultOptions['http']['header'][].
c4d60 3d 20 22 50 72 6f 78 79 2d 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 3a 20 42 61 73 69 63 20 7b 24 =."Proxy-Authorization:.Basic.{$
c4d80 61 75 74 68 7d 22 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 auth}";.}.else.{.$options['http'
c4da0 5d 5b 27 68 65 61 64 65 72 27 5d 20 3d 20 61 72 72 61 79 28 22 50 72 6f 78 79 2d 41 75 74 68 6f ]['header'].=.array("Proxy-Autho
c4dc0 72 69 7a 61 74 69 6f 6e 3a 20 42 61 73 69 63 20 7b 24 61 75 74 68 7d 22 29 3b 0a 7d 0a 7d 0a 7d rization:.Basic.{$auth}");.}.}.}
c4de0 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 5f 72 65 63 75 72 ..$options.=.array_replace_recur
c4e00 73 69 76 65 28 24 6f 70 74 69 6f 6e 73 2c 20 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 29 3b sive($options,.$defaultOptions);
c4e20 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 ..if.(isset($options['http']['he
c4e40 61 64 65 72 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 ader'])).{.$options['http']['hea
c4e60 64 65 72 27 5d 20 3d 20 73 65 6c 66 3a 3a 66 69 78 48 74 74 70 48 65 61 64 65 72 46 69 65 6c 64 der'].=.self::fixHttpHeaderField
c4e80 28 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 3b 0a 7d 0a ($options['http']['header']);.}.
c4ea0 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a .if.(defined('HHVM_VERSION')).{.
c4ec0 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 27 48 48 56 4d 20 27 20 2e 20 48 48 56 4d 5f 56 45 52 $phpVersion.=.'HHVM.'...HHVM_VER
c4ee0 53 49 4f 4e 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 27 50 48 SION;.}.else.{.$phpVersion.=.'PH
c4f00 50 20 27 20 2e 20 50 48 50 5f 4d 41 4a 4f 52 5f 56 45 52 53 49 4f 4e 20 2e 20 27 2e 27 20 2e 20 P.'...PHP_MAJOR_VERSION...'.'...
c4f20 50 48 50 5f 4d 49 4e 4f 52 5f 56 45 52 53 49 4f 4e 20 2e 20 27 2e 27 20 2e 20 50 48 50 5f 52 45 PHP_MINOR_VERSION...'.'...PHP_RE
c4f40 4c 45 41 53 45 5f 56 45 52 53 49 4f 4e 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 6f 70 LEASE_VERSION;.}..if.(!isset($op
c4f60 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 20 7c 7c 20 66 61 6c 73 tions['http']['header']).||.fals
c4f80 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 73 74 72 74 6f 6c 6f 77 65 72 28 69 6d 70 6c 6f 64 65 28 e.===.strpos(strtolower(implode(
c4fa0 27 27 2c 20 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 29 '',.$options['http']['header']))
c4fc0 2c 20 27 75 73 65 72 2d 61 67 65 6e 74 27 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 ,.'user-agent')).{.$options['htt
c4fe0 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 55 73 65 72 p']['header'][].=.sprintf(.'User
c5000 2d 41 67 65 6e 74 3a 20 43 6f 6d 70 6f 73 65 72 2f 25 73 20 28 25 73 3b 20 25 73 3b 20 25 73 29 -Agent:.Composer/%s.(%s;.%s;.%s)
c5020 27 2c 0a 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 20 3d 3d 3d 20 27 40 70 61 63 6b 61 ',.Composer::VERSION.===.'@packa
c5040 67 65 5f 76 65 72 73 69 6f 6e 40 27 20 3f 20 27 73 6f 75 72 63 65 27 20 3a 20 43 6f 6d 70 6f 73 ge_version@'.?.'source'.:.Compos
c5060 65 72 3a 3a 56 45 52 53 49 4f 4e 2c 0a 70 68 70 5f 75 6e 61 6d 65 28 27 73 27 29 2c 0a 70 68 70 er::VERSION,.php_uname('s'),.php
c5080 5f 75 6e 61 6d 65 28 27 72 27 29 2c 0a 24 70 68 70 56 65 72 73 69 6f 6e 0a 29 3b 0a 7d 0a 0a 72 _uname('r'),.$phpVersion.);.}..r
c50a0 65 74 75 72 6e 20 73 74 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f 63 72 65 61 74 65 28 24 6f 70 74 eturn.stream_context_create($opt
c50c0 69 6f 6e 73 2c 20 24 64 65 66 61 75 6c 74 50 61 72 61 6d 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ions,.$defaultParams);.}........
c50e0 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 78 48 ....private.static.function.fixH
c5100 74 74 70 48 65 61 64 65 72 46 69 65 6c 64 28 24 68 65 61 64 65 72 29 0a 7b 0a 69 66 20 28 21 69 ttpHeaderField($header).{.if.(!i
c5120 73 5f 61 72 72 61 79 28 24 68 65 61 64 65 72 29 29 20 7b 0a 24 68 65 61 64 65 72 20 3d 20 65 78 s_array($header)).{.$header.=.ex
c5140 70 6c 6f 64 65 28 22 5c 72 5c 6e 22 2c 20 24 68 65 61 64 65 72 29 3b 0a 7d 0a 75 61 73 6f 72 74 plode("\r\n",.$header);.}.uasort
c5160 28 24 68 65 61 64 65 72 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 65 6c 29 20 7b 0a 72 65 74 75 72 ($header,.function.($el).{.retur
c5180 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 63 6f 6e 74 65 6e 74 2d 74 79 70 65 7d 69 27 2c n.preg_match('{^content-type}i',
c51a0 20 24 65 6c 29 20 3f 20 31 20 3a 20 2d 31 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 68 65 61 .$el).?.1.:.-1;.});..return.$hea
c51c0 64 65 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 der;.}.}.<?php............namesp
c51e0 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 ace.Composer\Util;..use.Composer
c5200 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 \Config;.use.Composer\Downloader
c5220 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 \TransportException;.use.Compose
c5240 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 76 6e r\IO\IOInterface;......class.Svn
c5260 0a 7b 0a 63 6f 6e 73 74 20 4d 41 58 5f 51 54 59 5f 41 55 54 48 5f 54 52 49 45 53 20 3d 20 35 3b .{.const.MAX_QTY_AUTH_TRIES.=.5;
c5280 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 72 65 64 65 6e 74 69 61 6c 73 3b 0a 0a 0a 0a .....protected.$credentials;....
c52a0 0a 70 72 6f 74 65 63 74 65 64 20 24 68 61 73 41 75 74 68 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 .protected.$hasAuth;.....protect
c52c0 65 64 20 24 69 6f 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 75 72 6c 3b 0a 0a 0a 0a 0a ed.$io;.....protected.$url;.....
c52e0 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3d 20 74 72 protected.$cacheCredentials.=.tr
c5300 75 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a ue;.....protected.$process;.....
c5320 70 72 6f 74 65 63 74 65 64 20 24 71 74 79 41 75 74 68 54 72 69 65 73 20 3d 20 30 3b 0a 0a 0a 0a protected.$qtyAuthTries.=.0;....
c5340 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 .protected.$config;........publi
c5360 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 75 72 6c 2c 20 49 4f 49 c.function.__construct($url,.IOI
c5380 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 50 72 nterface.$io,.Config.$config,.Pr
c53a0 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 29 0a 7b ocessExecutor.$process.=.null).{
c53c0 0a 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 24 75 72 6c 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 .$this->url.=.$url;.$this->io.=.
c53e0 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 $io;.$this->config.=.$config;.$t
c5400 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 his->process.=.$process.?:.new.P
c5420 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 rocessExecutor;.}..public.static
c5440 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 45 6e 76 28 29 0a 7b 0a 0a 20 70 75 74 65 6e 76 28 .function.cleanEnv().{...putenv(
c5460 22 44 59 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 22 29 3b 0a 75 6e 73 65 74 28 24 5f 53 45 "DYLD_LIBRARY_PATH");.unset($_SE
c5480 52 56 45 52 5b 27 44 59 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 27 5d 29 3b 0a 7d 0a 0a 0a RVER['DYLD_LIBRARY_PATH']);.}...
c54a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 ............public.function.exec
c54c0 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 2c ute($command,.$url,.$cwd.=.null,
c54e0 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 76 65 72 62 6f 73 65 20 3d 20 66 61 6c 73 65 29 .$path.=.null,.$verbose.=.false)
c5500 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 68 74 74 70 7c 73 76 6e 29 3a .{.if.(preg_match('{^(http|svn):
c5520 7d 69 27 2c 20 24 75 72 6c 29 20 26 26 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 }i',.$url).&&.$this->config->get
c5540 28 27 73 65 63 75 72 65 2d 68 74 74 70 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 ('secure-http')).{.throw.new.Tra
c5560 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 22 59 6f 75 72 20 63 6f 6e 66 69 67 75 72 61 74 nsportException("Your.configurat
c5580 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f ion.does.not.allow.connection.to
c55a0 20 24 75 72 6c 2e 20 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f .$url..See.https://getcomposer.o
c55c0 72 67 2f 64 6f 63 2f 30 36 2d 63 6f 6e 66 69 67 2e 6d 64 23 73 65 63 75 72 65 2d 68 74 74 70 20 rg/doc/06-config.md#secure-http.
c55e0 66 6f 72 20 64 65 74 61 69 6c 73 2e 22 29 3b 0a 7d 0a 0a 24 73 76 6e 43 6f 6d 6d 61 6e 64 20 3d for.details.");.}..$svnCommand.=
c5600 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 .$this->getCommand($command,.$ur
c5620 6c 2c 20 24 70 61 74 68 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 24 69 6f 20 3d l,.$path);.$output.=.null;.$io.=
c5640 20 24 74 68 69 73 2d 3e 69 6f 3b 0a 24 68 61 6e 64 6c 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 .$this->io;.$handler.=.function.
c5660 28 24 74 79 70 65 2c 20 24 62 75 66 66 65 72 29 20 75 73 65 20 28 26 24 6f 75 74 70 75 74 2c 20 ($type,.$buffer).use.(&$output,.
c5680 24 69 6f 2c 20 24 76 65 72 62 6f 73 65 29 20 7b 0a 69 66 20 28 24 74 79 70 65 20 21 3d 3d 20 27 $io,.$verbose).{.if.($type.!==.'
c56a0 6f 75 74 27 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 69 66 20 28 27 52 65 64 69 72 65 63 74 69 out').{.return;.}.if.('Redirecti
c56c0 6e 67 20 74 6f 20 55 52 4c 20 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 62 75 66 66 65 72 2c 20 ng.to.URL.'.===.substr($buffer,.
c56e0 30 2c 20 31 39 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 6f 75 74 70 75 74 20 2e 3d 20 24 0,.19)).{.return;.}.$output..=.$
c5700 62 75 66 66 65 72 3b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 buffer;.if.($verbose).{.$io->wri
c5720 74 65 45 72 72 6f 72 28 24 62 75 66 66 65 72 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 3b 0a 24 73 teError($buffer,.false);.}.};.$s
c5740 74 61 74 75 73 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 tatus.=.$this->process->execute(
c5760 24 73 76 6e 43 6f 6d 6d 61 6e 64 2c 20 24 68 61 6e 64 6c 65 72 2c 20 24 63 77 64 29 3b 0a 69 66 $svnCommand,.$handler,.$cwd);.if
c5780 20 28 30 20 3d 3d 3d 20 24 73 74 61 74 75 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 .(0.===.$status).{.return.$outpu
c57a0 74 3b 0a 7d 0a 0a 24 65 72 72 6f 72 4f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 t;.}..$errorOutput.=.$this->proc
c57c0 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 24 66 75 6c 6c 4f 75 74 70 ess->getErrorOutput();.$fullOutp
c57e0 75 74 20 3d 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 61 72 72 61 79 28 24 6f 75 74 70 75 74 ut.=.implode("\n",.array($output
c5800 2c 20 24 65 72 72 6f 72 4f 75 74 70 75 74 29 29 3b 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d ,.$errorOutput));....if.(false.=
c5820 3d 3d 20 73 74 72 69 70 6f 73 28 24 66 75 6c 6c 4f 75 74 70 75 74 2c 20 27 43 6f 75 6c 64 20 6e ==.stripos($fullOutput,.'Could.n
c5840 6f 74 20 61 75 74 68 65 6e 74 69 63 61 74 65 20 74 6f 20 73 65 72 76 65 72 3a 27 29 0a 26 26 20 ot.authenticate.to.server:').&&.
c5860 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 69 70 6f 73 28 24 66 75 6c 6c 4f 75 74 70 75 74 2c 20 27 false.===.stripos($fullOutput,.'
c5880 61 75 74 68 6f 72 69 7a 61 74 69 6f 6e 20 66 61 69 6c 65 64 27 29 0a 26 26 20 66 61 6c 73 65 20 authorization.failed').&&.false.
c58a0 3d 3d 3d 20 73 74 72 69 70 6f 73 28 24 66 75 6c 6c 4f 75 74 70 75 74 2c 20 27 73 76 6e 3a 20 45 ===.stripos($fullOutput,.'svn:.E
c58c0 31 37 30 30 30 31 3a 27 29 0a 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 69 70 6f 73 28 24 170001:').&&.false.===.stripos($
c58e0 66 75 6c 6c 4f 75 74 70 75 74 2c 20 27 73 76 6e 3a 20 45 32 31 35 30 30 34 3a 27 29 29 20 7b 0a fullOutput,.'svn:.E215004:')).{.
c5900 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 66 75 6c throw.new.\RuntimeException($ful
c5920 6c 4f 75 74 70 75 74 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 lOutput);.}..if.(!$this->hasAuth
c5940 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 6f 41 75 74 68 44 61 6e 63 65 28 29 3b 0a 7d 0a 0a 0a ()).{.$this->doAuthDance();.}...
c5960 20 69 66 20 28 24 74 68 69 73 2d 3e 71 74 79 41 75 74 68 54 72 69 65 73 2b 2b 20 3c 20 73 65 6c .if.($this->qtyAuthTries++.<.sel
c5980 66 3a 3a 4d 41 58 5f 51 54 59 5f 41 55 54 48 5f 54 52 49 45 53 29 20 7b 0a 0a 20 72 65 74 75 72 f::MAX_QTY_AUTH_TRIES).{...retur
c59a0 6e 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c n.$this->execute($command,.$url,
c59c0 20 24 63 77 64 2c 20 24 70 61 74 68 2c 20 24 76 65 72 62 6f 73 65 29 3b 0a 7d 0a 0a 74 68 72 6f .$cwd,.$path,.$verbose);.}..thro
c59e0 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 27 77 72 6f 6e 67 20 w.new.\RuntimeException(.'wrong.
c5a00 63 72 65 64 65 6e 74 69 61 6c 73 20 70 72 6f 76 69 64 65 64 20 28 27 2e 24 66 75 6c 6c 4f 75 74 credentials.provided.('.$fullOut
c5a20 70 75 74 2e 27 29 27 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e put.')'.);.}.....public.function
c5a40 20 73 65 74 43 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 28 24 63 61 63 68 65 43 72 65 64 65 .setCacheCredentials($cacheCrede
c5a60 6e 74 69 61 6c 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c ntials).{.$this->cacheCredential
c5a80 73 20 3d 20 24 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a s.=.$cacheCredentials;.}........
c5aa0 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 41 75 74 68 44 61 6e 63 65 28 29 protected.function.doAuthDance()
c5ac0 0a 7b 0a 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 .{...if.(!$this->io->isInteracti
c5ae0 76 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 ve()).{.throw.new.\RuntimeExcept
c5b00 69 6f 6e 28 0a 27 63 61 6e 20 6e 6f 74 20 61 73 6b 20 66 6f 72 20 61 75 74 68 65 6e 74 69 63 61 ion(.'can.not.ask.for.authentica
c5b20 74 69 6f 6e 20 69 6e 20 6e 6f 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 27 0a 29 3b tion.in.non.interactive.mode'.);
c5b40 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 54 68 65 20 53 .}..$this->io->writeError("The.S
c5b60 75 62 76 65 72 73 69 6f 6e 20 73 65 72 76 65 72 20 28 7b 24 74 68 69 73 2d 3e 75 72 6c 7d 29 20 ubversion.server.({$this->url}).
c5b80 72 65 71 75 65 73 74 65 64 20 63 72 65 64 65 6e 74 69 61 6c 73 3a 22 29 3b 0a 0a 24 74 68 69 73 requested.credentials:");..$this
c5ba0 2d 3e 68 61 73 41 75 74 68 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 ->hasAuth.=.true;.$this->credent
c5bc0 69 61 6c 73 5b 27 75 73 65 72 6e 61 6d 65 27 5d 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 ials['username'].=.$this->io->as
c5be0 6b 28 22 55 73 65 72 6e 61 6d 65 3a 20 22 29 3b 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 k("Username:.");.$this->credenti
c5c00 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 27 5d 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b als['password'].=.$this->io->ask
c5c20 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 22 50 61 73 73 77 6f 72 64 3a 20 22 29 3b 0a 0a 24 74 AndHideAnswer("Password:.");..$t
c5c40 68 69 73 2d 3e 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 69 his->cacheCredentials.=.$this->i
c5c60 6f 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 22 53 68 6f 75 6c 64 20 53 75 62 76 65 o->askConfirmation("Should.Subve
c5c80 72 73 69 6f 6e 20 63 61 63 68 65 20 74 68 65 73 65 20 63 72 65 64 65 6e 74 69 61 6c 73 3f 20 28 rsion.cache.these.credentials?.(
c5ca0 79 65 73 2f 6e 6f 29 20 22 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b yes/no).",.true);..return.$this;
c5cc0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 .}...........protected.function.
c5ce0 67 65 74 43 6f 6d 6d 61 6e 64 28 24 63 6d 64 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 20 3d 20 6e getCommand($cmd,.$url,.$path.=.n
c5d00 75 6c 6c 29 0a 7b 0a 24 63 6d 64 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 20 25 73 25 73 20 25 ull).{.$cmd.=.sprintf('%s.%s%s.%
c5d20 73 27 2c 0a 24 63 6d 64 2c 0a 27 2d 2d 6e 6f 6e 2d 69 6e 74 65 72 61 63 74 69 76 65 20 27 2c 0a s',.$cmd,.'--non-interactive.',.
c5d40 24 74 68 69 73 2d 3e 67 65 74 43 72 65 64 65 6e 74 69 61 6c 53 74 72 69 6e 67 28 29 2c 0a 50 72 $this->getCredentialString(),.Pr
c5d60 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 0a 29 3b 0a 0a ocessExecutor::escape($url).);..
c5d80 69 66 20 28 24 70 61 74 68 29 20 7b 0a 24 63 6d 64 20 2e 3d 20 27 20 27 20 2e 20 50 72 6f 63 65 if.($path).{.$cmd..=.'.'...Proce
c5da0 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 70 61 74 68 29 3b 0a 7d 0a 0a 72 65 ssExecutor::escape($path);.}..re
c5dc0 74 75 72 6e 20 24 63 6d 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 turn.$cmd;.}.........protected.f
c5de0 75 6e 63 74 69 6f 6e 20 67 65 74 43 72 65 64 65 6e 74 69 61 6c 53 74 72 69 6e 67 28 29 0a 7b 0a unction.getCredentialString().{.
c5e00 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 if.(!$this->hasAuth()).{.return.
c5e20 27 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 0a 27 20 25 73 2d 2d 75 73 65 '';.}..return.sprintf(.'.%s--use
c5e40 72 6e 61 6d 65 20 25 73 20 2d 2d 70 61 73 73 77 6f 72 64 20 25 73 20 27 2c 0a 24 74 68 69 73 2d rname.%s.--password.%s.',.$this-
c5e60 3e 67 65 74 41 75 74 68 43 61 63 68 65 28 29 2c 0a 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 >getAuthCache(),.ProcessExecutor
c5e80 3a 3a 65 73 63 61 70 65 28 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 6e 61 6d 65 28 29 29 2c 0a ::escape($this->getUsername()),.
c5ea0 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 74 68 69 73 2d 3e 67 ProcessExecutor::escape($this->g
c5ec0 65 74 50 61 73 73 77 6f 72 64 28 29 29 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 etPassword()).);.}........protec
c5ee0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 73 73 77 6f 72 64 28 29 0a 7b 0a 69 66 20 ted.function.getPassword().{.if.
c5f00 28 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 20 3d 3d 3d 20 6e 75 6c 6c 29 20 7b 0a ($this->credentials.===.null).{.
c5f20 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 22 4e 6f 20 73 76 throw.new.\LogicException("No.sv
c5f40 6e 20 61 75 74 68 20 64 65 74 65 63 74 65 64 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 n.auth.detected.");.}..return.is
c5f60 73 65 74 28 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 set($this->credentials['password
c5f80 27 5d 29 20 3f 20 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f ']).?.$this->credentials['passwo
c5fa0 72 64 27 5d 20 3a 20 27 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 rd'].:.'';.}........protected.fu
c5fc0 6e 63 74 69 6f 6e 20 67 65 74 55 73 65 72 6e 61 6d 65 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 nction.getUsername().{.if.($this
c5fe0 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 20 3d 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 74 68 72 6f 77 20 ->credentials.===.null).{.throw.
c6000 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 22 4e 6f 20 73 76 6e 20 61 75 74 68 new.\LogicException("No.svn.auth
c6020 20 64 65 74 65 63 74 65 64 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 .detected.");.}..return.$this->c
c6040 72 65 64 65 6e 74 69 61 6c 73 5b 27 75 73 65 72 6e 61 6d 65 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a redentials['username'];.}.......
c6060 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 75 74 68 28 29 0a 7b 0a 69 protected.function.hasAuth().{.i
c6080 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 29 20 7b 0a 72 65 f.(null.!==.$this->hasAuth).{.re
c60a0 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 turn.$this->hasAuth;.}..if.(fals
c60c0 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 41 75 74 68 46 72 6f 6d 43 6f 6e 66 69 e.===.$this->createAuthFromConfi
c60e0 67 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 72 65 61 74 65 41 75 74 68 46 72 6f 6d 55 72 6c 28 g()).{.$this->createAuthFromUrl(
c6100 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 3b 0a 7d 0a 0a );.}..return.$this->hasAuth;.}..
c6120 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 43 .....protected.function.getAuthC
c6140 61 63 68 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 61 63 68 65 43 72 65 64 ache().{.return.$this->cacheCred
c6160 65 6e 74 69 61 6c 73 20 3f 20 27 27 20 3a 20 27 2d 2d 6e 6f 2d 61 75 74 68 2d 63 61 63 68 65 20 entials.?.''.:.'--no-auth-cache.
c6180 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 ';.}.......private.function.crea
c61a0 74 65 41 75 74 68 46 72 6f 6d 43 6f 6e 66 69 67 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d teAuthFromConfig().{.if.(!$this-
c61c0 3e 63 6f 6e 66 69 67 2d 3e 68 61 73 28 27 68 74 74 70 2d 62 61 73 69 63 27 29 29 20 7b 0a 72 65 >config->has('http-basic')).{.re
c61e0 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a turn.$this->hasAuth.=.false;.}..
c6200 24 61 75 74 68 43 6f 6e 66 69 67 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 $authConfig.=.$this->config->get
c6220 28 27 68 74 74 70 2d 62 61 73 69 63 27 29 3b 0a 0a 24 68 6f 73 74 20 3d 20 70 61 72 73 65 5f 75 ('http-basic');..$host.=.parse_u
c6240 72 6c 28 24 74 68 69 73 2d 3e 75 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 69 66 rl($this->url,.PHP_URL_HOST);.if
c6260 20 28 69 73 73 65 74 28 24 61 75 74 68 43 6f 6e 66 69 67 5b 24 68 6f 73 74 5d 29 29 20 7b 0a 24 .(isset($authConfig[$host])).{.$
c6280 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 75 73 65 72 6e 61 6d 65 27 5d 20 3d 20 this->credentials['username'].=.
c62a0 24 61 75 74 68 43 6f 6e 66 69 67 5b 24 68 6f 73 74 5d 5b 27 75 73 65 72 6e 61 6d 65 27 5d 3b 0a $authConfig[$host]['username'];.
c62c0 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 27 5d 20 3d $this->credentials['password'].=
c62e0 20 24 61 75 74 68 43 6f 6e 66 69 67 5b 24 68 6f 73 74 5d 5b 27 70 61 73 73 77 6f 72 64 27 5d 3b .$authConfig[$host]['password'];
c6300 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 20 3d 20 74 72 75 65 3b 0a ..return.$this->hasAuth.=.true;.
c6320 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 20 3d 20 66 61 6c 73 65 }..return.$this->hasAuth.=.false
c6340 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 ;.}.......private.function.creat
c6360 65 41 75 74 68 46 72 6f 6d 55 72 6c 28 29 0a 7b 0a 24 75 72 69 20 3d 20 70 61 72 73 65 5f 75 72 eAuthFromUrl().{.$uri.=.parse_ur
c6380 6c 28 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 75 72 69 5b 27 75 l($this->url);.if.(empty($uri['u
c63a0 73 65 72 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 20 ser'])).{.return.$this->hasAuth.
c63c0 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 =.false;.}..$this->credentials['
c63e0 75 73 65 72 6e 61 6d 65 27 5d 20 3d 20 24 75 72 69 5b 27 75 73 65 72 27 5d 3b 0a 69 66 20 28 21 username'].=.$uri['user'];.if.(!
c6400 65 6d 70 74 79 28 24 75 72 69 5b 27 70 61 73 73 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 72 empty($uri['pass'])).{.$this->cr
c6420 65 64 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 27 5d 20 3d 20 24 75 72 69 5b 27 70 61 edentials['password'].=.$uri['pa
c6440 73 73 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 20 3d ss'];.}..return.$this->hasAuth.=
c6460 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 .true;.}.}.<?php............name
c6480 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e space.Composer\Util;..use.Symfon
c64a0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 68 70 50 72 6f 63 65 73 73 3b 0a y\Component\Process\PhpProcess;.
c64c0 0a 0a 0a 0a 66 69 6e 61 6c 20 63 6c 61 73 73 20 54 6c 73 48 65 6c 70 65 72 0a 7b 0a 70 72 69 76 ....final.class.TlsHelper.{.priv
c64e0 61 74 65 20 73 74 61 74 69 63 20 24 75 73 65 4f 70 65 6e 73 73 6c 50 61 72 73 65 3b 0a 0a 0a 0a ate.static.$useOpensslParse;....
c6500 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 .......public.static.function.ch
c6520 65 63 6b 43 65 72 74 69 66 69 63 61 74 65 48 6f 73 74 28 24 63 65 72 74 69 66 69 63 61 74 65 2c eckCertificateHost($certificate,
c6540 20 24 68 6f 73 74 6e 61 6d 65 2c 20 26 24 63 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6e 61 6d 65 .$hostname,.&$cn.=.null).{.$name
c6560 73 20 3d 20 73 65 6c 66 3a 3a 67 65 74 43 65 72 74 69 66 69 63 61 74 65 4e 61 6d 65 73 28 24 63 s.=.self::getCertificateNames($c
c6580 65 72 74 69 66 69 63 61 74 65 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 6e 61 6d 65 73 29 29 ertificate);..if.(empty($names))
c65a0 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 63 6f 6d 62 69 6e 65 64 4e 61 6d .{.return.false;.}..$combinedNam
c65c0 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6e 61 6d 65 73 5b 27 73 61 6e 27 5d 2c 20 es.=.array_merge($names['san'],.
c65e0 61 72 72 61 79 28 24 6e 61 6d 65 73 5b 27 63 6e 27 5d 29 29 3b 0a 24 68 6f 73 74 6e 61 6d 65 20 array($names['cn']));.$hostname.
c6600 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 68 6f 73 74 6e 61 6d 65 29 3b 0a 0a 66 6f 72 65 61 63 =.strtolower($hostname);..foreac
c6620 68 20 28 24 63 6f 6d 62 69 6e 65 64 4e 61 6d 65 73 20 61 73 20 24 63 65 72 74 4e 61 6d 65 29 20 h.($combinedNames.as.$certName).
c6640 7b 0a 24 6d 61 74 63 68 65 72 20 3d 20 73 65 6c 66 3a 3a 63 65 72 74 4e 61 6d 65 4d 61 74 63 68 {.$matcher.=.self::certNameMatch
c6660 65 72 28 24 63 65 72 74 4e 61 6d 65 29 3b 0a 0a 69 66 20 28 24 6d 61 74 63 68 65 72 20 26 26 20 er($certName);..if.($matcher.&&.
c6680 24 6d 61 74 63 68 65 72 28 24 68 6f 73 74 6e 61 6d 65 29 29 20 7b 0a 24 63 6e 20 3d 20 24 6e 61 $matcher($hostname)).{.$cn.=.$na
c66a0 6d 65 73 5b 27 63 6e 27 5d 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 mes['cn'];..return.true;.}.}..re
c66c0 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 turn.false;.}.........public.sta
c66e0 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 65 72 74 69 66 69 63 61 74 65 4e 61 6d 65 73 tic.function.getCertificateNames
c6700 28 24 63 65 72 74 69 66 69 63 61 74 65 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 63 ($certificate).{.if.(is_array($c
c6720 65 72 74 69 66 69 63 61 74 65 29 29 20 7b 0a 24 69 6e 66 6f 20 3d 20 24 63 65 72 74 69 66 69 63 ertificate)).{.$info.=.$certific
c6740 61 74 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 69 73 4f 70 65 6e 73 73 6c 50 61 ate;.}.elseif.(self::isOpensslPa
c6760 72 73 65 53 61 66 65 28 29 29 20 7b 0a 24 69 6e 66 6f 20 3d 20 6f 70 65 6e 73 73 6c 5f 78 35 30 rseSafe()).{.$info.=.openssl_x50
c6780 39 5f 70 61 72 73 65 28 24 63 65 72 74 69 66 69 63 61 74 65 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 9_parse($certificate,.false);.}.
c67a0 0a 69 66 20 28 21 69 73 73 65 74 28 24 69 6e 66 6f 5b 27 73 75 62 6a 65 63 74 27 5d 5b 27 63 6f .if.(!isset($info['subject']['co
c67c0 6d 6d 6f 6e 4e 61 6d 65 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 6d 6f mmonName'])).{.return;.}..$commo
c67e0 6e 4e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 69 6e 66 6f 5b 27 73 75 62 6a 65 63 nName.=.strtolower($info['subjec
c6800 74 27 5d 5b 27 63 6f 6d 6d 6f 6e 4e 61 6d 65 27 5d 29 3b 0a 24 73 75 62 6a 65 63 74 41 6c 74 4e t']['commonName']);.$subjectAltN
c6820 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 66 6f ames.=.array();..if.(isset($info
c6840 5b 27 65 78 74 65 6e 73 69 6f 6e 73 27 5d 5b 27 73 75 62 6a 65 63 74 41 6c 74 4e 61 6d 65 27 5d ['extensions']['subjectAltName']
c6860 29 29 20 7b 0a 24 73 75 62 6a 65 63 74 41 6c 74 4e 61 6d 65 73 20 3d 20 70 72 65 67 5f 73 70 6c )).{.$subjectAltNames.=.preg_spl
c6880 69 74 28 27 7b 5c 73 2a 2c 5c 73 2a 7d 27 2c 20 24 69 6e 66 6f 5b 27 65 78 74 65 6e 73 69 6f 6e it('{\s*,\s*}',.$info['extension
c68a0 73 27 5d 5b 27 73 75 62 6a 65 63 74 41 6c 74 4e 61 6d 65 27 5d 29 3b 0a 24 73 75 62 6a 65 63 74 s']['subjectAltName']);.$subject
c68c0 41 6c 74 4e 61 6d 65 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 61 72 72 61 79 5f 6d 61 AltNames.=.array_filter(array_ma
c68e0 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 6e 61 6d 65 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 p(function.($name).{.if.(0.===.s
c6900 74 72 70 6f 73 28 24 6e 61 6d 65 2c 20 27 44 4e 53 3a 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 trpos($name,.'DNS:')).{.return.s
c6920 74 72 74 6f 6c 6f 77 65 72 28 6c 74 72 69 6d 28 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 34 29 trtolower(ltrim(substr($name,.4)
c6940 29 29 3b 0a 7d 0a 7d 2c 20 24 73 75 62 6a 65 63 74 41 6c 74 4e 61 6d 65 73 29 29 3b 0a 24 73 75 ));.}.},.$subjectAltNames));.$su
c6960 62 6a 65 63 74 41 6c 74 4e 61 6d 65 73 20 3d 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 73 75 bjectAltNames.=.array_values($su
c6980 62 6a 65 63 74 41 6c 74 4e 61 6d 65 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 bjectAltNames);.}..return.array(
c69a0 0a 27 63 6e 27 20 3d 3e 20 24 63 6f 6d 6d 6f 6e 4e 61 6d 65 2c 0a 27 73 61 6e 27 20 3d 3e 20 24 .'cn'.=>.$commonName,.'san'.=>.$
c69c0 73 75 62 6a 65 63 74 41 6c 74 4e 61 6d 65 73 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a subjectAltNames,.);.}...........
c69e0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ..............................pu
c6a00 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 65 72 74 69 66 69 63 blic.static.function.getCertific
c6a20 61 74 65 46 69 6e 67 65 72 70 72 69 6e 74 28 24 63 65 72 74 69 66 69 63 61 74 65 29 0a 7b 0a 24 ateFingerprint($certificate).{.$
c6a40 70 75 62 6b 65 79 64 65 74 61 69 6c 73 20 3d 20 6f 70 65 6e 73 73 6c 5f 70 6b 65 79 5f 67 65 74 pubkeydetails.=.openssl_pkey_get
c6a60 5f 64 65 74 61 69 6c 73 28 6f 70 65 6e 73 73 6c 5f 67 65 74 5f 70 75 62 6c 69 63 6b 65 79 28 24 _details(openssl_get_publickey($
c6a80 63 65 72 74 69 66 69 63 61 74 65 29 29 3b 0a 24 70 75 62 6b 65 79 70 65 6d 20 3d 20 24 70 75 62 certificate));.$pubkeypem.=.$pub
c6aa0 6b 65 79 64 65 74 61 69 6c 73 5b 27 6b 65 79 27 5d 3b 0a 0a 20 24 73 74 61 72 74 20 3d 20 27 2d keydetails['key'];...$start.=.'-
c6ac0 2d 2d 2d 2d 42 45 47 49 4e 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 27 3b 0a 24 65 6e 64 ----BEGIN.PUBLIC.KEY-----';.$end
c6ae0 20 3d 20 27 2d 2d 2d 2d 2d 45 4e 44 20 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 27 3b 0a 24 .=.'-----END.PUBLIC.KEY-----';.$
c6b00 70 65 6d 74 72 69 6d 20 3d 20 73 75 62 73 74 72 28 24 70 75 62 6b 65 79 70 65 6d 2c 20 28 73 74 pemtrim.=.substr($pubkeypem,.(st
c6b20 72 70 6f 73 28 24 70 75 62 6b 65 79 70 65 6d 2c 20 24 73 74 61 72 74 29 20 2b 20 73 74 72 6c 65 rpos($pubkeypem,.$start).+.strle
c6b40 6e 28 24 73 74 61 72 74 29 29 2c 20 28 73 74 72 6c 65 6e 28 24 70 75 62 6b 65 79 70 65 6d 29 20 n($start)),.(strlen($pubkeypem).
c6b60 2d 20 73 74 72 70 6f 73 28 24 70 75 62 6b 65 79 70 65 6d 2c 20 24 65 6e 64 29 29 20 2a 20 28 2d -.strpos($pubkeypem,.$end)).*.(-
c6b80 31 29 29 3b 0a 24 64 65 72 20 3d 20 62 61 73 65 36 34 5f 64 65 63 6f 64 65 28 24 70 65 6d 74 72 1));.$der.=.base64_decode($pemtr
c6ba0 69 6d 29 3b 0a 0a 72 65 74 75 72 6e 20 73 68 61 31 28 24 64 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a im);..return.sha1($der);.}......
c6bc0 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 4f 70 65 ....public.static.function.isOpe
c6be0 6e 73 73 6c 50 61 72 73 65 53 61 66 65 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 73 nsslParseSafe().{.if.(null.!==.s
c6c00 65 6c 66 3a 3a 24 75 73 65 4f 70 65 6e 73 73 6c 50 61 72 73 65 29 20 7b 0a 72 65 74 75 72 6e 20 elf::$useOpensslParse).{.return.
c6c20 73 65 6c 66 3a 3a 24 75 73 65 4f 70 65 6e 73 73 6c 50 61 72 73 65 3b 0a 7d 0a 0a 69 66 20 28 50 self::$useOpensslParse;.}..if.(P
c6c40 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 36 30 30 29 20 7b 0a 72 65 74 75 72 6e HP_VERSION_ID.>=.50600).{.return
c6c60 20 73 65 6c 66 3a 3a 24 75 73 65 4f 70 65 6e 73 73 6c 50 61 72 73 65 20 3d 20 74 72 75 65 3b 0a .self::$useOpensslParse.=.true;.
c6c80 7d 0a 0a 0a 20 0a 20 0a 20 0a 20 69 66 20 28 0a 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 }..........if.(.(PHP_VERSION_ID.
c6ca0 3c 20 35 30 34 30 30 20 26 26 20 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 33 <.50400.&&.PHP_VERSION_ID.>=.503
c6cc0 32 38 29 0a 7c 7c 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 35 30 30 20 26 28).||.(PHP_VERSION_ID.<.50500.&
c6ce0 26 20 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 34 32 33 29 0a 7c 7c 20 28 50 &.PHP_VERSION_ID.>=.50423).||.(P
c6d00 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 36 30 30 20 26 26 20 50 48 50 5f 56 45 52 HP_VERSION_ID.<.50600.&&.PHP_VER
c6d20 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 35 30 37 29 0a 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 73 SION_ID.>=.50507).).{...return.s
c6d40 65 6c 66 3a 3a 24 75 73 65 4f 70 65 6e 73 73 6c 50 61 72 73 65 20 3d 20 74 72 75 65 3b 0a 7d 0a elf::$useOpensslParse.=.true;.}.
c6d60 0a 69 66 20 28 50 6c 61 74 66 6f 72 6d 3a 3a 69 73 57 69 6e 64 6f 77 73 28 29 29 20 7b 0a 0a 20 .if.(Platform::isWindows()).{...
c6d80 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 75 73 65 4f 70 65 6e 73 73 6c 50 61 72 73 65 20 3d 20 return.self::$useOpensslParse.=.
c6da0 66 61 6c 73 65 3b 0a 7d 0a 0a 24 63 6f 6d 70 61 72 65 44 69 73 74 72 6f 56 65 72 73 69 6f 6e 50 false;.}..$compareDistroVersionP
c6dc0 72 65 66 69 78 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 70 72 65 66 69 78 2c 20 24 66 69 78 65 refix.=.function.($prefix,.$fixe
c6de0 64 56 65 72 73 69 6f 6e 29 20 7b 0a 24 72 65 67 65 78 20 3d 20 27 7b 5e 27 2e 70 72 65 67 5f 71 dVersion).{.$regex.=.'{^'.preg_q
c6e00 75 6f 74 65 28 24 70 72 65 66 69 78 29 2e 27 28 5b 30 2d 39 5d 2b 29 24 7d 27 3b 0a 0a 69 66 20 uote($prefix).'([0-9]+)$}';..if.
c6e20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 67 65 78 2c 20 50 48 50 5f 56 45 52 53 49 4f 4e 2c (preg_match($regex,.PHP_VERSION,
c6e40 20 24 6d 29 29 20 7b 0a 72 65 74 75 72 6e 20 28 28 69 6e 74 29 20 24 6d 5b 31 5d 29 20 3e 3d 20 .$m)).{.return.((int).$m[1]).>=.
c6e60 24 66 69 78 65 64 56 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a $fixedVersion;.}..return.false;.
c6e80 7d 3b 0a 0a 0a 20 69 66 20 28 0a 24 63 6f 6d 70 61 72 65 44 69 73 74 72 6f 56 65 72 73 69 6f 6e };....if.(.$compareDistroVersion
c6ea0 50 72 65 66 69 78 28 27 35 2e 33 2e 33 2d 37 2b 73 71 75 65 65 7a 65 27 2c 20 31 38 29 20 0a 20 Prefix('5.3.3-7+squeeze',.18)...
c6ec0 7c 7c 20 24 63 6f 6d 70 61 72 65 44 69 73 74 72 6f 56 65 72 73 69 6f 6e 50 72 65 66 69 78 28 27 ||.$compareDistroVersionPrefix('
c6ee0 35 2e 34 2e 34 2d 31 34 2b 64 65 62 37 75 27 2c 20 37 29 20 0a 20 7c 7c 20 24 63 6f 6d 70 61 72 5.4.4-14+deb7u',.7)...||.$compar
c6f00 65 44 69 73 74 72 6f 56 65 72 73 69 6f 6e 50 72 65 66 69 78 28 27 35 2e 33 2e 31 30 2d 31 75 62 eDistroVersionPrefix('5.3.10-1ub
c6f20 75 6e 74 75 33 2e 27 2c 20 39 29 20 0a 20 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 untu3.',.9)...).{.return.self::$
c6f40 75 73 65 4f 70 65 6e 73 73 6c 50 61 72 73 65 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 0a 20 0a useOpensslParse.=.true;.}.......
c6f60 20 0a 20 0a 20 0a 0a 0a 20 0a 20 24 63 65 72 74 20 3d 20 27 4c 53 30 74 4c 53 31 43 52 55 64 4a ...........$cert.=.'LS0tLS1CRUdJ
c6f80 54 69 42 44 52 56 4a 55 53 55 5a 4a 51 30 46 55 52 53 30 74 4c 53 30 74 43 6b 31 4a 53 55 56 77 TiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVw
c6fa0 52 45 4e 44 51 54 52 35 5a 30 46 33 53 55 4a 42 5a 30 6c 4b 51 55 70 36 64 54 68 79 4e 6e 55 32 RENDQTR5Z0F3SUJBZ0lKQUp6dThyNnU2
c6fc0 5a 55 4a 6a 54 55 45 77 52 30 4e 54 63 55 64 54 53 57 49 7a 52 46 46 46 51 6b 4a 52 56 55 46 4e ZUJjTUEwR0NTcUdTSWIzRFFFQkJRVUFN
c6fe0 53 55 68 45 54 56 46 7a 64 30 4e 52 57 55 51 4b 56 6c 46 52 52 30 56 33 53 6b 56 53 56 45 56 6a SUhETVFzd0NRWUQKVlFRR0V3SkVSVEVj
c7000 54 55 4a 76 52 30 45 78 56 55 56 44 51 58 64 55 56 47 30 35 65 56 70 49 53 6d 39 61 56 32 78 31 TUJvR0ExVUVDQXdUVG05eVpISm9aV2x1
c7020 54 46 5a 6b 62 47 4d 7a 55 6d 31 5a 56 33 68 73 59 6d 70 46 55 55 31 42 4e 45 64 42 4d 56 56 46 TFZkbGMzUm1ZV3hsYmpFUU1BNEdBMVVF
c7040 51 6e 64 33 53 41 70 54 4f 45 39 45 64 33 4a 61 63 32 4a 71 52 56 56 4e 51 6b 6c 48 51 54 46 56 Qnd3SApTOE9Ed3Jac2JqRVVNQklHQTFV
c7060 52 55 4e 6e 64 30 78 56 4d 6c 5a 79 5a 45 64 73 64 6d 4a 72 56 6e 42 69 62 6b 31 34 53 48 70 42 RUNnd0xVMlZyZEdsdmJrVnBibk14SHpB
c7080 5a 45 4a 6e 54 6c 5a 43 51 58 4e 4e 52 6d 73 78 61 47 4a 48 62 47 70 68 56 7a 6b 78 43 6d 4e 35 ZEJnTlZCQXNNRmsxaGJHbGphVzkxCmN5
c70a0 51 6b 52 61 57 45 6f 77 53 55 5a 4f 62 46 6b 7a 55 6e 42 69 4d 6a 52 34 53 56 52 42 5a 6b 4a 6e QkRaWEowSUZObFkzUnBiMjR4SVRBZkJn
c70c0 54 6c 5a 43 51 55 31 4e 52 30 63 78 61 47 4a 48 62 47 70 68 56 7a 6b 78 59 33 6b 31 65 6c 70 58 TlZCQU1NR0cxaGJHbGphVzkxY3k1elpX
c70e0 64 44 42 68 56 7a 6c 31 57 6c 64 73 64 57 4e 35 4e 57 73 4b 57 6c 52 46 63 55 31 44 5a 30 64 44 dDBhVzl1WldsdWN5NWsKWlRFcU1DZ0dD
c7100 55 33 46 48 55 30 6c 69 4d 30 52 52 52 55 70 42 55 6c 6c 69 59 7a 4e 53 62 46 70 74 52 6e 56 4d U3FHU0liM0RRRUpBUlliYzNSbFptRnVM
c7120 62 56 5a 36 59 7a 4a 57 65 56 46 49 54 6d 78 68 4d 31 4a 77 59 6a 49 31 62 47 46 58 4e 58 70 4d bVZ6YzJWeVFITmxhM1JwYjI1bGFXNXpM
c7140 62 56 4a 73 54 55 68 56 57 51 70 61 52 45 55 31 54 6e 70 42 64 30 31 55 51 58 68 4e 52 45 46 33 bVJsTUhVWQpaREU1TnpBd01UQXhNREF3
c7160 54 55 52 42 64 31 64 6e 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 TURBd1dnQUFBQUFBQUFBQUFBQUFBQUFB
c7180 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB
c71a0 43 6b 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 CkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB
c71c0 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB
c71e0 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 46 42 51 55 45 4b 51 55 46 42 51 55 46 42 QUFBQUFBQUFBQUFBQUFBQUEKQUFBQUFB
c7200 51 56 68 45 56 45 55 77 54 56 52 46 65 55 39 45 52 58 68 4e 65 6d 74 36 54 6c 5a 76 64 32 64 6a QVhEVEUwTVRFeU9ERXhNemt6TlZvd2dj
c7220 54 58 68 44 65 6b 46 4b 51 6d 64 4f 56 6b 4a 42 57 56 52 42 61 31 4a 47 54 56 4a 33 64 30 64 6e TXhDekFKQmdOVkJBWVRBa1JGTVJ3d0dn
c7240 57 55 52 57 55 56 46 4a 52 45 4a 4f 54 77 70 69 4d 30 70 72 59 32 31 6f 62 47 46 58 4e 48 52 57 WURWUVFJREJOTwpiM0prY21obGFXNHRW
c7260 4d 6c 5a 36 5a 45 64 61 61 47 4a 48 56 6e 56 4e 55 6b 46 33 52 47 64 5a 52 46 5a 52 55 55 68 45 MlZ6ZEdaaGJHVnVNUkF3RGdZRFZRUUhE
c7280 51 57 52 4d 64 7a 52 51 51 33 52 74 65 48 56 4e 55 6c 46 33 52 57 64 5a 52 46 5a 52 55 55 74 45 QWRMdzRQQ3RteHVNUlF3RWdZRFZRUUtE
c72a0 51 58 52 55 43 6c 70 58 64 44 42 68 56 7a 6c 31 55 6c 64 73 64 57 4e 36 52 57 5a 4e 51 6a 42 48 QXRUClpXdDBhVzl1UldsdWN6RWZNQjBH
c72c0 51 54 46 56 52 55 4e 33 64 31 64 55 56 30 5a 7a 59 56 64 4f 63 47 49 7a 56 6e 70 4a 52 55 35 73 QTFVRUN3d1dUV0ZzYVdOcGIzVnpJRU5s
c72e0 59 32 35 52 5a 31 55 79 56 6d 70 6b 52 32 78 32 59 6d 70 46 61 45 31 43 4f 45 63 4b 51 54 46 56 Y25RZ1UyVmpkR2x2YmpFaE1COEcKQTFV
c7300 52 55 46 33 64 31 6c 69 56 30 5a 7a 59 56 64 4f 63 47 49 7a 56 6e 70 4d 62 6b 35 73 59 54 4e 53 RUF3d1liV0ZzYVdOcGIzVnpMbk5sYTNS
c7320 63 47 49 79 4e 57 78 68 56 7a 56 36 54 47 31 53 62 45 31 54 62 33 64 4c 51 56 6c 4b 53 32 39 61 cGIyNWxhVzV6TG1SbE1Tb3dLQVlKS29a
c7340 53 57 68 32 59 30 35 42 55 57 74 43 52 6d 68 30 65 67 70 6b 52 31 5a 74 57 56 63 30 64 56 70 59 SWh2Y05BUWtCRmh0egpkR1ZtWVc0dVpY
c7360 54 6e 70 61 57 45 70 42 59 7a 4a 57 63 6d 52 48 62 48 5a 69 62 56 5a 77 59 6d 35 4e 64 56 70 48 TnpaWEpBYzJWcmRHbHZibVZwYm5NdVpH
c7380 56 58 64 6e 5a 30 56 70 54 55 45 77 52 30 4e 54 63 55 64 54 53 57 49 7a 52 46 46 46 51 6b 46 52 VXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFR
c73a0 56 55 46 42 4e 45 6c 43 43 6b 52 33 51 58 64 6e 5a 30 56 4c 51 57 39 4a 51 6b 46 52 52 45 52 42 VUFBNElCCkR3QXdnZ0VLQW9JQkFRRERB
c73c0 5a 6a 4e 6f 62 44 64 4b 57 54 42 59 59 30 5a 75 61 58 6c 46 53 6e 42 54 55 30 52 78 62 6a 42 50 ZjNobDdKWTBYY0ZuaXlFSnBTU0RxbjBP
c73e0 63 55 4a 79 4e 6c 46 51 4e 6a 56 31 63 30 70 51 55 6e 51 76 4f 46 42 68 52 47 39 78 51 6e 55 4b cUJyNlFQNjV1c0pQUnQvOFBhRG9xQnUK
c7400 64 30 56 5a 56 43 39 4f 59 53 73 32 5a 6e 4e 6e 55 47 70 44 4d 48 56 4c 4f 55 52 61 5a 31 64 6e d0VZVC9OYSs2ZnNnUGpDMHVLOURaZ1dn
c7420 4d 6e 52 49 56 31 64 76 59 57 35 54 59 6d 78 42 54 57 39 36 4e 56 42 49 4e 6c 6f 72 55 7a 52 54 MnRIV1dvYW5TYmxBTW96NVBINlorUzRT
c7440 53 46 4a 61 4e 32 55 79 5a 45 52 4a 61 6c 42 71 5a 47 68 71 61 41 6f 77 62 55 78 6e 4d 6c 56 4e SFJaN2UyZERJalBqZGhqaAowbUxnMlVN
c7460 54 7a 56 35 63 44 42 57 4e 7a 6b 33 52 32 64 7a 4f 57 78 4f 64 44 5a 4b 55 6d 5a 49 4f 44 46 4e TzV5cDBWNzk3R2dzOWxOdDZKUmZIODFN
c7480 54 6a 4a 76 59 6c 68 58 63 7a 52 4f 64 48 70 30 54 45 31 31 52 44 5a 6c 5a 33 46 77 63 6a 68 6b TjJvYlhXczROdHp0TE11RDZlZ3Fwcjhk
c74a0 52 47 4a 79 4d 7a 52 68 54 33 4d 34 43 6e 42 72 5a 48 56 70 4e 56 56 68 64 31 52 61 61 33 4e 35 RGJyMzRhT3M4CnBrZHVpNVVhd1Raa3N5
c74c0 4e 58 42 4d 55 45 68 78 4e 57 4e 4e 61 45 5a 48 62 54 41 32 64 6a 59 31 51 30 78 76 4d 46 59 79 NXBMUEhxNWNNaEZHbTA2djY1Q0xvMFYy
c74e0 55 47 51 35 4b 30 74 42 62 32 74 51 63 6c 42 6a 54 6a 56 4c 54 45 74 6c 59 6e 6f 33 62 55 78 77 UGQ5K0tBb2tQclBjTjVLTEtlYno3bUxw
c7500 61 7a 59 4b 55 30 31 6c 52 56 68 50 53 31 41 30 61 57 52 46 63 58 68 35 55 54 64 50 4e 32 5a 43 azYKU01lRVhPS1A0aWRFcXh5UTdPN2ZC
c7520 64 55 68 4e 5a 57 52 7a 55 57 68 31 4b 33 42 79 57 54 4e 7a 61 54 4e 43 56 58 6c 4c 5a 6c 46 30 dUhNZWRzUWh1K3ByWTNzaTNCVXlLZlF0
c7540 55 44 56 44 57 6d 35 59 4d 6d 4a 77 4d 48 64 4c 53 48 68 59 4d 54 4a 45 57 41 6f 78 62 6d 5a 47 UDVDWm5YMmJwMHdLSHhYMTJEWAoxbmZG
c7560 53 58 51 35 52 47 4a 48 64 6b 68 55 59 33 6c 50 64 55 34 72 62 6c 70 4d 55 45 4a 74 4d 33 5a 58 SXQ5RGJHdkhUY3lPdU4rblpMUEJtM3ZX
c7580 65 47 35 30 65 55 6c 4a 64 6c 5a 42 5a 30 31 43 51 55 46 48 61 6c 46 71 51 6b 46 4e 51 57 74 48 eG50eUlJdlZBZ01CQUFHalFqQkFNQWtH
c75a0 51 54 46 56 5a 45 56 33 55 55 4e 4e 51 55 46 33 43 6b 56 52 57 55 70 5a 53 56 70 4a 51 56 6c 69 QTFVZEV3UUNNQUF3CkVRWUpZSVpJQVli
c75c0 4e 46 46 6e 52 55 4a 43 51 56 46 45 51 57 64 6c 51 55 31 42 63 30 64 42 4d 56 56 6b 52 48 64 52 NFFnRUJCQVFEQWdlQU1Bc0dBMVVkRHdR
c75e0 52 55 46 33 53 55 5a 76 52 45 46 55 51 6d 64 4f 56 6b 68 54 56 55 56 45 52 45 46 4c 51 6d 64 6e RUF3SUZvREFUQmdOVkhTVUVEREFLQmdn
c7600 63 6b 4a 6e 52 55 59 4b 51 6c 46 6a 52 45 46 71 51 55 35 43 5a 32 74 78 61 47 74 70 52 7a 6c 33 ckJnRUYKQlFjREFqQU5CZ2txaGtpRzl3
c7620 4d 45 4a 42 55 56 56 47 51 55 46 50 51 30 46 52 52 55 46 48 4d 47 5a 61 57 56 6c 44 56 47 4a 6b MEJBUVVGQUFPQ0FRRUFHMGZaWVlDVGJk
c7640 61 6a 46 59 57 57 4d 72 4d 56 4e 75 62 32 46 51 55 69 74 32 53 54 68 44 4f 45 4e 68 52 41 6f 34 ajFYWWMrMVNub2FQUit2SThDOENhRAo4
c7660 4b 7a 42 56 57 57 68 6b 62 6e 6c 56 4e 47 64 6e 59 54 42 43 51 57 4e 45 63 6c 6b 35 5a 54 6b 30 KzBVWWhkbnlVNGdnYTBCQWNEclk5ZTk0
c7680 5a 55 56 42 64 54 5a 61 63 58 6c 6a 52 6a 5a 47 61 6b 78 78 57 46 68 6b 51 57 4a 76 63 48 42 58 ZUVBdTZacXljRjZGakxxWFhkQWJvcHBX
c76a0 62 32 4e 79 4e 6c 51 32 52 30 51 78 65 44 4d 7a 51 32 74 73 43 6c 5a 42 63 6e 70 48 4c 30 74 34 b2NyNlQ2R0QxeDMzQ2tsClZBcnpHL0t4
c76c0 55 57 39 6f 52 30 51 79 53 6d 56 78 61 32 68 4a 54 57 78 45 62 32 31 34 53 45 38 33 61 32 45 7a UW9oR0QySmVxa2hJTWxEb214SE83a2Ez
c76e0 4f 53 74 50 59 54 68 70 4d 6e 5a 58 54 46 5a 35 61 6c 55 34 51 56 70 32 56 30 31 42 63 6e 56 49 OStPYThpMnZXTFZ5alU4QVp2V01BcnVI
c7700 59 54 52 46 52 55 35 35 52 7a 63 4b 62 46 63 79 51 57 46 6e 59 55 5a 4c 52 6b 4e 79 4f 56 52 75 YTRFRU55RzcKbFcyQWFnYUZLRkNyOVRu
c7720 57 46 52 6d 63 6d 52 34 52 31 5a 46 59 6e 59 33 53 31 5a 52 4e 6d 4a 6b 61 47 63 31 63 44 56 54 WFRmcmR4R1ZFYnY3S1ZRNmJkaGc1cDVT
c7740 61 6e 42 58 53 44 45 72 54 58 45 77 4d 33 56 53 4d 31 70 59 55 45 4a 5a 5a 48 6c 57 4f 44 4d 78 anBXSDErTXEwM3VSM1pYUEJZZHlWODMx
c7760 4f 51 70 76 4d 47 78 57 61 6a 46 4c 52 6b 6b 79 52 45 4e 4d 4c 32 78 70 56 32 6c 7a 53 6c 4a 76 OQpvMGxWajFLRkkyRENML2xpV2lzSlJv
c7780 62 32 59 72 4d 57 4e 53 4d 7a 56 44 64 47 51 77 64 31 6c 43 59 33 42 43 4e 6c 52 61 63 32 78 4e b2YrMWNSMzVDdGQwd1lCY3BCNlRac2xN
c77a0 59 30 39 51 62 44 63 32 5a 48 64 4c 64 30 70 6e 5a 55 70 76 4d 6c 46 6e 43 6c 70 7a 5a 6d 31 6a Y09QbDc2ZHdLd0pnZUpvMlFnClpzZm1j
c77c0 4d 6e 5a 44 4d 53 39 78 54 32 78 4f 64 55 35 78 4c 7a 42 55 65 6e 70 72 56 6b 64 32 4f 45 56 55 MnZDMS9xT2xOdU5xLzBUenprVkd2OEVU
c77e0 56 44 4e 44 5a 32 46 56 4b 31 56 59 5a 54 52 59 54 31 5a 32 61 32 4e 6a 5a 57 4a 4b 62 6a 4a 6b VDNDZ2FVK1VYZTRYT1Z2a2NjZWJKbjJk
c7800 5a 7a 30 39 43 69 30 74 4c 53 30 74 52 55 35 45 49 45 4e 46 55 6c 52 4a 52 6b 6c 44 51 56 52 46 Zz09Ci0tLS0tRU5EIENFUlRJRklDQVRF
c7820 4c 53 30 74 4c 53 30 4b 27 3b 0a 24 73 63 72 69 70 74 20 3d 20 3c 3c 3c 27 45 4f 54 27 0a 0a 65 LS0tLS0K';.$script.=.<<<'EOT'..e
c7840 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 2d 31 29 3b 0a 24 69 6e 66 6f 20 3d 20 6f 70 65 6e rror_reporting(-1);.$info.=.open
c7860 73 73 6c 5f 78 35 30 39 5f 70 61 72 73 65 28 62 61 73 65 36 34 5f 64 65 63 6f 64 65 28 27 25 73 ssl_x509_parse(base64_decode('%s
c7880 27 29 29 3b 0a 76 61 72 5f 64 75 6d 70 28 50 48 50 5f 56 45 52 53 49 4f 4e 2c 20 24 69 6e 66 6f '));.var_dump(PHP_VERSION,.$info
c78a0 5b 27 69 73 73 75 65 72 27 5d 5b 27 65 6d 61 69 6c 41 64 64 72 65 73 73 27 5d 2c 20 24 69 6e 66 ['issuer']['emailAddress'],.$inf
c78c0 6f 5b 27 76 61 6c 69 64 46 72 6f 6d 5f 74 69 6d 65 5f 74 27 5d 29 3b 0a 0a 45 4f 54 3b 0a 24 73 o['validFrom_time_t']);..EOT;.$s
c78e0 63 72 69 70 74 20 3d 20 27 3c 27 2e 22 3f 70 68 70 5c 6e 22 2e 73 70 72 69 6e 74 66 28 24 73 63 cript.=.'<'."?php\n".sprintf($sc
c7900 72 69 70 74 2c 20 24 63 65 72 74 29 3b 0a 0a 74 72 79 20 7b 0a 24 70 72 6f 63 65 73 73 20 3d 20 ript,.$cert);..try.{.$process.=.
c7920 6e 65 77 20 50 68 70 50 72 6f 63 65 73 73 28 24 73 63 72 69 70 74 29 3b 0a 24 70 72 6f 63 65 73 new.PhpProcess($script);.$proces
c7940 73 2d 3e 6d 75 73 74 52 75 6e 28 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f s->mustRun();.}.catch.(\Exceptio
c7960 6e 20 24 65 29 20 7b 0a 0a 20 0a 20 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 75 73 65 4f 70 65 n.$e).{.....return.self::$useOpe
c7980 6e 73 73 6c 50 61 72 73 65 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 20 3d 20 nsslParse.=.false;.}..$output.=.
c79a0 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 72 3f 5c 6e 7d 27 2c 20 74 72 69 6d 28 24 70 72 6f 63 preg_split('{\r?\n}',.trim($proc
c79c0 65 73 73 2d 3e 67 65 74 4f 75 74 70 75 74 28 29 29 29 3b 0a 24 65 72 72 6f 72 4f 75 74 70 75 74 ess->getOutput()));.$errorOutput
c79e0 20 3d 20 74 72 69 6d 28 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 .=.trim($process->getErrorOutput
c7a00 28 29 29 3b 0a 0a 69 66 20 28 0a 63 6f 75 6e 74 28 24 6f 75 74 70 75 74 29 20 3d 3d 3d 20 33 0a ());..if.(.count($output).===.3.
c7a20 26 26 20 24 6f 75 74 70 75 74 5b 30 5d 20 3d 3d 3d 20 73 70 72 69 6e 74 66 28 27 73 74 72 69 6e &&.$output[0].===.sprintf('strin
c7a40 67 28 25 64 29 20 22 25 73 22 27 2c 20 73 74 72 6c 65 6e 28 50 48 50 5f 56 45 52 53 49 4f 4e 29 g(%d)."%s"',.strlen(PHP_VERSION)
c7a60 2c 20 50 48 50 5f 56 45 52 53 49 4f 4e 29 0a 26 26 20 24 6f 75 74 70 75 74 5b 31 5d 20 3d 3d 3d ,.PHP_VERSION).&&.$output[1].===
c7a80 20 27 73 74 72 69 6e 67 28 32 37 29 20 22 73 74 65 66 61 6e 2e 65 73 73 65 72 40 73 65 6b 74 69 .'string(27)."stefan.esser@sekti
c7aa0 6f 6e 65 69 6e 73 2e 64 65 22 27 0a 26 26 20 24 6f 75 74 70 75 74 5b 32 5d 20 3d 3d 3d 20 27 69 oneins.de"'.&&.$output[2].===.'i
c7ac0 6e 74 28 2d 31 29 27 0a 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 6f 70 65 6e 73 73 6c 5f nt(-1)'.&&.preg_match('{openssl_
c7ae0 78 35 30 39 5f 70 61 72 73 65 5c 28 5c 29 3a 20 69 6c 6c 65 67 61 6c 20 28 3f 3a 41 53 4e 31 20 x509_parse\(\):.illegal.(?:ASN1.
c7b00 64 61 74 61 20 74 79 70 65 20 66 6f 72 7c 6c 65 6e 67 74 68 20 69 6e 29 20 74 69 6d 65 73 74 61 data.type.for|length.in).timesta
c7b20 6d 70 20 69 6e 20 2d 20 6f 6e 20 6c 69 6e 65 20 5c 64 2b 7d 27 2c 20 24 65 72 72 6f 72 4f 75 74 mp.in.-.on.line.\d+}',.$errorOut
c7b40 70 75 74 29 0a 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 75 73 65 4f 70 65 6e put).).{...return.self::$useOpen
c7b60 73 73 6c 50 61 72 73 65 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a sslParse.=.true;.}..return.self:
c7b80 3a 24 75 73 65 4f 70 65 6e 73 73 6c 50 61 72 73 65 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a :$useOpensslParse.=.false;.}....
c7ba0 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 65 72 .....private.static.function.cer
c7bc0 74 4e 61 6d 65 4d 61 74 63 68 65 72 28 24 63 65 72 74 4e 61 6d 65 29 0a 7b 0a 24 77 69 6c 64 63 tNameMatcher($certName).{.$wildc
c7be0 61 72 64 73 20 3d 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 63 65 72 74 4e 61 6d 65 2c 20 27 ards.=.substr_count($certName,.'
c7c00 2a 27 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 77 69 6c 64 63 61 72 64 73 29 20 7b 0a 0a 20 *');..if.(0.===.$wildcards).{...
c7c20 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 24 68 6f 73 74 6e 61 6d 65 29 20 75 73 65 20 return.function.($hostname).use.
c7c40 28 24 63 65 72 74 4e 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 68 6f 73 74 6e 61 6d 65 20 3d ($certName).{.return.$hostname.=
c7c60 3d 3d 20 24 63 65 72 74 4e 61 6d 65 3b 0a 7d 3b 0a 7d 0a 0a 69 66 20 28 31 20 3d 3d 3d 20 24 77 ==.$certName;.};.}..if.(1.===.$w
c7c80 69 6c 64 63 61 72 64 73 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 65 78 70 6c 6f 64 ildcards).{.$components.=.explod
c7ca0 65 28 27 2e 27 2c 20 24 63 65 72 74 4e 61 6d 65 29 3b 0a 0a 69 66 20 28 33 20 3e 20 63 6f 75 6e e('.',.$certName);..if.(3.>.coun
c7cc0 74 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 t($components)).{...return;.}..$
c7ce0 66 69 72 73 74 43 6f 6d 70 6f 6e 65 6e 74 20 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 30 5d 3b firstComponent.=.$components[0];
c7d00 0a 0a 0a 20 69 66 20 28 27 2a 27 20 21 3d 3d 20 24 66 69 72 73 74 43 6f 6d 70 6f 6e 65 6e 74 5b ....if.('*'.!==.$firstComponent[
c7d20 73 74 72 6c 65 6e 28 24 66 69 72 73 74 43 6f 6d 70 6f 6e 65 6e 74 29 20 2d 20 31 5d 29 20 7b 0a strlen($firstComponent).-.1]).{.
c7d40 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 77 69 6c 64 63 61 72 64 52 65 67 65 78 20 3d 20 70 72 65 67 return;.}..$wildcardRegex.=.preg
c7d60 5f 71 75 6f 74 65 28 24 63 65 72 74 4e 61 6d 65 29 3b 0a 24 77 69 6c 64 63 61 72 64 52 65 67 65 _quote($certName);.$wildcardRege
c7d80 78 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 2a 27 2c 20 27 5b 61 2d 7a 30 2d 39 2d x.=.str_replace('\\*',.'[a-z0-9-
c7da0 5d 2b 27 2c 20 24 77 69 6c 64 63 61 72 64 52 65 67 65 78 29 3b 0a 24 77 69 6c 64 63 61 72 64 52 ]+',.$wildcardRegex);.$wildcardR
c7dc0 65 67 65 78 20 3d 20 22 7b 5e 7b 24 77 69 6c 64 63 61 72 64 52 65 67 65 78 7d 24 7d 22 3b 0a 0a egex.=."{^{$wildcardRegex}$}";..
c7de0 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 24 68 6f 73 74 6e 61 6d 65 29 20 75 73 65 20 return.function.($hostname).use.
c7e00 28 24 77 69 6c 64 63 61 72 64 52 65 67 65 78 29 20 7b 0a 72 65 74 75 72 6e 20 31 20 3d 3d 3d 20 ($wildcardRegex).{.return.1.===.
c7e20 70 72 65 67 5f 6d 61 74 63 68 28 24 77 69 6c 64 63 61 72 64 52 65 67 65 78 2c 20 24 68 6f 73 74 preg_match($wildcardRegex,.$host
c7e40 6e 61 6d 65 29 3b 0a 7d 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a name);.};.}.}.}.<?php...........
c7e60 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 49 66 45 78 69 73 74 73 28 24 66 69 6c 65 29 .function.includeIfExists($file)
c7e80 0a 7b 0a 72 65 74 75 72 6e 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 20 3f 20 69 .{.return.file_exists($file).?.i
c7ea0 6e 63 6c 75 64 65 20 24 66 69 6c 65 20 3a 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 28 21 24 nclude.$file.:.false;.}..if.((!$
c7ec0 6c 6f 61 64 65 72 20 3d 20 69 6e 63 6c 75 64 65 49 66 45 78 69 73 74 73 28 5f 5f 44 49 52 5f 5f loader.=.includeIfExists(__DIR__
c7ee0 2e 27 2f 2e 2e 2f 76 65 6e 64 6f 72 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 27 29 29 20 26 26 20 .'/../vendor/autoload.php')).&&.
c7f00 28 21 24 6c 6f 61 64 65 72 20 3d 20 69 6e 63 6c 75 64 65 49 66 45 78 69 73 74 73 28 5f 5f 44 49 (!$loader.=.includeIfExists(__DI
c7f20 52 5f 5f 2e 27 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 27 29 29 29 20 R__.'/../../../autoload.php'))).
c7f40 7b 0a 65 63 68 6f 20 27 59 6f 75 20 6d 75 73 74 20 73 65 74 20 75 70 20 74 68 65 20 70 72 6f 6a {.echo.'You.must.set.up.the.proj
c7f60 65 63 74 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 75 73 69 6e 67 20 60 63 6f 6d 70 6f 73 65 72 ect.dependencies.using.`composer
c7f80 20 69 6e 73 74 61 6c 6c 60 27 2e 50 48 50 5f 45 4f 4c 2e 0a 27 53 65 65 20 68 74 74 70 73 3a 2f .install`'.PHP_EOL..'See.https:/
c7fa0 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 77 6e 6c 6f 61 64 2f 20 66 6f 72 20 69 /getcomposer.org/download/.for.i
c7fc0 6e 73 74 72 75 63 74 69 6f 6e 73 20 6f 6e 20 69 6e 73 74 61 6c 6c 69 6e 67 20 43 6f 6d 70 6f 73 nstructions.on.installing.Compos
c7fe0 65 72 27 2e 50 48 50 5f 45 4f 4c 3b 0a 65 78 69 74 28 31 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 er'.PHP_EOL;.exit(1);.}..return.
c8000 24 6c 6f 61 64 65 72 3b 0a 3c 3f 70 68 70 0a 0a 2f 2a 0a 20 2a 20 54 68 69 73 20 66 69 6c 65 20 $loader;.<?php../*..*.This.file.
c8020 69 73 20 70 61 72 74 20 6f 66 20 43 6f 6d 70 6f 73 65 72 2e 0a 20 2a 0a 20 2a 20 28 63 29 20 4e is.part.of.Composer...*..*.(c).N
c8040 69 6c 73 20 41 64 65 72 6d 61 6e 6e 20 3c 6e 61 64 65 72 6d 61 6e 40 6e 61 64 65 72 6d 61 6e 2e ils.Adermann.<naderman@naderman.
c8060 64 65 3e 0a 20 2a 20 20 20 20 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 20 3c 6a 2e 62 6f 67 de>..*.....Jordi.Boggiano.<j.bog
c8080 67 69 61 6e 6f 40 73 65 6c 64 2e 62 65 3e 0a 20 2a 0a 20 2a 20 46 6f 72 20 74 68 65 20 66 75 6c giano@seld.be>..*..*.For.the.ful
c80a0 6c 20 63 6f 70 79 72 69 67 68 74 20 61 6e 64 20 6c 69 63 65 6e 73 65 20 69 6e 66 6f 72 6d 61 74 l.copyright.and.license.informat
c80c0 69 6f 6e 2c 20 70 6c 65 61 73 65 20 76 69 65 77 20 74 68 65 20 4c 49 43 45 4e 53 45 0a 20 2a 20 ion,.please.view.the.LICENSE..*.
c80e0 66 69 6c 65 20 74 68 61 74 20 77 61 73 20 64 69 73 74 72 69 62 75 74 65 64 20 77 69 74 68 20 74 file.that.was.distributed.with.t
c8100 68 69 73 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 0a 20 2a 2f 0a 0a 6e 61 6d 65 73 70 61 63 65 20 his.source.code...*/..namespace.
c8120 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 3b 0a 0a 2f 2a 2a 0a 20 2a 20 43 6c 61 73 73 Composer\Autoload;../**..*.Class
c8140 4c 6f 61 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 61 20 50 53 52 2d 30 2c 20 50 53 52 2d 34 Loader.implements.a.PSR-0,.PSR-4
c8160 20 61 6e 64 20 63 6c 61 73 73 6d 61 70 20 63 6c 61 73 73 20 6c 6f 61 64 65 72 2e 0a 20 2a 0a 20 .and.classmap.class.loader...*..
c8180 2a 20 20 20 20 20 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 5c 43 6f 6d 70 6f 73 65 72 5c 41 75 *.....$loader.=.new.\Composer\Au
c81a0 74 6f 6c 6f 61 64 5c 43 6c 61 73 73 4c 6f 61 64 65 72 28 29 3b 0a 20 2a 0a 20 2a 20 20 20 20 20 toload\ClassLoader();..*..*.....
c81c0 2f 2f 20 72 65 67 69 73 74 65 72 20 63 6c 61 73 73 65 73 20 77 69 74 68 20 6e 61 6d 65 73 70 61 //.register.classes.with.namespa
c81e0 63 65 73 0a 20 2a 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 61 64 64 28 27 53 79 6d 66 6f 6e 79 ces..*.....$loader->add('Symfony
c8200 5c 43 6f 6d 70 6f 6e 65 6e 74 27 2c 20 5f 5f 44 49 52 5f 5f 2e 27 2f 63 6f 6d 70 6f 6e 65 6e 74 \Component',.__DIR__.'/component
c8220 27 29 3b 0a 20 2a 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 61 64 64 28 27 53 79 6d 66 6f 6e 79 ');..*.....$loader->add('Symfony
c8240 27 2c 20 20 20 20 20 20 20 20 20 20 20 5f 5f 44 49 52 5f 5f 2e 27 2f 66 72 61 6d 65 77 6f 72 6b ',...........__DIR__.'/framework
c8260 27 29 3b 0a 20 2a 0a 20 2a 20 20 20 20 20 2f 2f 20 61 63 74 69 76 61 74 65 20 74 68 65 20 61 75 ');..*..*.....//.activate.the.au
c8280 74 6f 6c 6f 61 64 65 72 0a 20 2a 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 72 65 67 69 73 74 65 toloader..*.....$loader->registe
c82a0 72 28 29 3b 0a 20 2a 0a 20 2a 20 20 20 20 20 2f 2f 20 74 6f 20 65 6e 61 62 6c 65 20 73 65 61 72 r();..*..*.....//.to.enable.sear
c82c0 63 68 69 6e 67 20 74 68 65 20 69 6e 63 6c 75 64 65 20 70 61 74 68 20 28 65 67 2e 20 66 6f 72 20 ching.the.include.path.(eg..for.
c82e0 50 45 41 52 20 70 61 63 6b 61 67 65 73 29 0a 20 2a 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 73 PEAR.packages)..*.....$loader->s
c8300 65 74 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 74 72 75 65 29 3b 0a 20 2a 0a 20 2a 20 49 6e etUseIncludePath(true);..*..*.In
c8320 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 74 72 79 20 74 6f 20 75 73 65 .this.example,.if.you.try.to.use
c8340 20 61 20 63 6c 61 73 73 20 69 6e 20 74 68 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e .a.class.in.the.Symfony\Componen
c8360 74 0a 20 2a 20 6e 61 6d 65 73 70 61 63 65 20 6f 72 20 6f 6e 65 20 6f 66 20 69 74 73 20 63 68 69 t..*.namespace.or.one.of.its.chi
c8380 6c 64 72 65 6e 20 28 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 ldren.(Symfony\Component\Console
c83a0 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 29 2c 0a 20 2a 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 .for.instance),..*.the.autoloade
c83c0 72 20 77 69 6c 6c 20 66 69 72 73 74 20 6c 6f 6f 6b 20 66 6f 72 20 74 68 65 20 63 6c 61 73 73 20 r.will.first.look.for.the.class.
c83e0 75 6e 64 65 72 20 74 68 65 20 63 6f 6d 70 6f 6e 65 6e 74 2f 0a 20 2a 20 64 69 72 65 63 74 6f 72 under.the.component/..*.director
c8400 79 2c 20 61 6e 64 20 69 74 20 77 69 6c 6c 20 74 68 65 6e 20 66 61 6c 6c 62 61 63 6b 20 74 6f 20 y,.and.it.will.then.fallback.to.
c8420 74 68 65 20 66 72 61 6d 65 77 6f 72 6b 2f 20 64 69 72 65 63 74 6f 72 79 20 69 66 20 6e 6f 74 0a the.framework/.directory.if.not.
c8440 20 2a 20 66 6f 75 6e 64 20 62 65 66 6f 72 65 20 67 69 76 69 6e 67 20 75 70 2e 0a 20 2a 0a 20 2a .*.found.before.giving.up...*..*
c8460 20 54 68 69 73 20 63 6c 61 73 73 20 69 73 20 6c 6f 6f 73 65 6c 79 20 62 61 73 65 64 20 6f 6e 20 .This.class.is.loosely.based.on.
c8480 74 68 65 20 53 79 6d 66 6f 6e 79 20 55 6e 69 76 65 72 73 61 6c 43 6c 61 73 73 4c 6f 61 64 65 72 the.Symfony.UniversalClassLoader
c84a0 2e 0a 20 2a 0a 20 2a 20 40 61 75 74 68 6f 72 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 ...*..*.@author.Fabien.Potencier
c84c0 20 3c 66 61 62 69 65 6e 40 73 79 6d 66 6f 6e 79 2e 63 6f 6d 3e 0a 20 2a 20 40 61 75 74 68 6f 72 .<fabien@symfony.com>..*.@author
c84e0 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 20 3c 6a 2e 62 6f 67 67 69 61 6e 6f 40 73 65 6c 64 .Jordi.Boggiano.<j.boggiano@seld
c8500 2e 62 65 3e 0a 20 2a 20 40 73 65 65 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 70 68 70 2d 66 .be>..*.@see....http://www.php-f
c8520 69 67 2e 6f 72 67 2f 70 73 72 2f 70 73 72 2d 30 2f 0a 20 2a 20 40 73 65 65 20 20 20 20 68 74 74 ig.org/psr/psr-0/..*.@see....htt
c8540 70 3a 2f 2f 77 77 77 2e 70 68 70 2d 66 69 67 2e 6f 72 67 2f 70 73 72 2f 70 73 72 2d 34 2f 0a 20 p://www.php-fig.org/psr/psr-4/..
c8560 2a 2f 0a 63 6c 61 73 73 20 43 6c 61 73 73 4c 6f 61 64 65 72 0a 7b 0a 20 20 20 20 2f 2f 20 50 53 */.class.ClassLoader.{.....//.PS
c8580 52 2d 34 0a 20 20 20 20 70 72 69 76 61 74 65 20 24 70 72 65 66 69 78 4c 65 6e 67 74 68 73 50 73 R-4.....private.$prefixLengthsPs
c85a0 72 34 20 3d 20 61 72 72 61 79 28 29 3b 0a 20 20 20 20 70 72 69 76 61 74 65 20 24 70 72 65 66 69 r4.=.array();.....private.$prefi
c85c0 78 44 69 72 73 50 73 72 34 20 3d 20 61 72 72 61 79 28 29 3b 0a 20 20 20 20 70 72 69 76 61 74 65 xDirsPsr4.=.array();.....private
c85e0 20 24 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 20 .$fallbackDirsPsr4.=.array();...
c8600 20 20 20 2f 2f 20 50 53 52 2d 30 0a 20 20 20 20 70 72 69 76 61 74 65 20 24 70 72 65 66 69 78 65 ...//.PSR-0.....private.$prefixe
c8620 73 50 73 72 30 20 3d 20 61 72 72 61 79 28 29 3b 0a 20 20 20 20 70 72 69 76 61 74 65 20 24 66 61 sPsr0.=.array();.....private.$fa
c8640 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 30 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 20 20 20 20 70 llbackDirsPsr0.=.array();......p
c8660 72 69 76 61 74 65 20 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 66 61 6c 73 65 3b 0a rivate.$useIncludePath.=.false;.
c8680 20 20 20 20 70 72 69 76 61 74 65 20 24 63 6c 61 73 73 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b ....private.$classMap.=.array();
c86a0 0a 0a 20 20 20 20 70 72 69 76 61 74 65 20 24 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 ......private.$classMapAuthorita
c86c0 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 tive.=.false;......public.functi
c86e0 6f 6e 20 67 65 74 50 72 65 66 69 78 65 73 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 on.getPrefixes().....{.........i
c8700 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 29 29 20 f.(!empty($this->prefixesPsr0)).
c8720 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 {.............return.call_user_f
c8740 75 6e 63 5f 61 72 72 61 79 28 27 61 72 72 61 79 5f 6d 65 72 67 65 27 2c 20 24 74 68 69 73 2d 3e unc_array('array_merge',.$this->
c8760 70 72 65 66 69 78 65 73 50 73 72 30 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 prefixesPsr0);.........}........
c8780 20 20 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75 62 ..return.array();.....}......pub
c87a0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 66 69 78 65 73 50 73 72 34 28 29 0a 20 lic.function.getPrefixesPsr4()..
c87c0 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 66 69 ...{.........return.$this->prefi
c87e0 78 44 69 72 73 50 73 72 34 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e xDirsPsr4;.....}......public.fun
c8800 63 74 69 6f 6e 20 67 65 74 46 61 6c 6c 62 61 63 6b 44 69 72 73 28 29 0a 20 20 20 20 7b 0a 20 20 ction.getFallbackDirs().....{...
c8820 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 ......return.$this->fallbackDirs
c8840 50 73 72 30 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e Psr0;.....}......public.function
c8860 20 67 65 74 46 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 28 29 0a 20 20 20 20 7b 0a 20 20 20 .getFallbackDirsPsr4().....{....
c8880 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 .....return.$this->fallbackDirsP
c88a0 73 72 34 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 sr4;.....}......public.function.
c88c0 67 65 74 43 6c 61 73 73 4d 61 70 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 74 75 getClassMap().....{.........retu
c88e0 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f rn.$this->classMap;.....}....../
c8900 2a 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 61 72 72 61 79 20 24 63 6c 61 73 73 4d 61 70 **......*.@param.array.$classMap
c8920 20 43 6c 61 73 73 20 74 6f 20 66 69 6c 65 6e 61 6d 65 20 6d 61 70 0a 20 20 20 20 20 2a 2f 0a 20 .Class.to.filename.map......*/..
c8940 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 43 6c 61 73 73 4d 61 70 28 61 ...public.function.addClassMap(a
c8960 72 72 61 79 20 24 63 6c 61 73 73 4d 61 70 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 rray.$classMap).....{.........if
c8980 20 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 .($this->classMap).{............
c89a0 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 .$this->classMap.=.array_merge($
c89c0 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 2c 20 24 63 6c 61 73 73 4d 61 70 29 3b 0a 20 20 20 20 this->classMap,.$classMap);.....
c89e0 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 24 74 68 69 73 2d 3e ....}.else.{.............$this->
c8a00 63 6c 61 73 73 4d 61 70 20 3d 20 24 63 6c 61 73 73 4d 61 70 3b 0a 20 20 20 20 20 20 20 20 7d 0a classMap.=.$classMap;.........}.
c8a20 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 52 65 67 69 73 74 65 72 73 20 ....}....../**......*.Registers.
c8a40 61 20 73 65 74 20 6f 66 20 50 53 52 2d 30 20 64 69 72 65 63 74 6f 72 69 65 73 20 66 6f 72 20 61 a.set.of.PSR-0.directories.for.a
c8a60 20 67 69 76 65 6e 20 70 72 65 66 69 78 2c 20 65 69 74 68 65 72 0a 20 20 20 20 20 2a 20 61 70 70 .given.prefix,.either......*.app
c8a80 65 6e 64 69 6e 67 20 6f 72 20 70 72 65 70 65 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 6f 6e 65 73 ending.or.prepending.to.the.ones
c8aa0 20 70 72 65 76 69 6f 75 73 6c 79 20 73 65 74 20 66 6f 72 20 74 68 69 73 20 70 72 65 66 69 78 2e .previously.set.for.this.prefix.
c8ac0 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 73 74 72 69 6e 67 20 20 20 20 ......*......*.@param.string....
c8ae0 20 20 20 24 70 72 65 66 69 78 20 20 54 68 65 20 70 72 65 66 69 78 0a 20 20 20 20 20 2a 20 40 70 ...$prefix..The.prefix......*.@p
c8b00 61 72 61 6d 20 61 72 72 61 79 7c 73 74 72 69 6e 67 20 24 70 61 74 68 73 20 20 20 54 68 65 20 50 aram.array|string.$paths...The.P
c8b20 53 52 2d 30 20 72 6f 6f 74 20 64 69 72 65 63 74 6f 72 69 65 73 0a 20 20 20 20 20 2a 20 40 70 61 SR-0.root.directories......*.@pa
c8b40 72 61 6d 20 62 6f 6f 6c 20 20 20 20 20 20 20 20 20 24 70 72 65 70 65 6e 64 20 57 68 65 74 68 65 ram.bool.........$prepend.Whethe
c8b60 72 20 74 6f 20 70 72 65 70 65 6e 64 20 74 68 65 20 64 69 72 65 63 74 6f 72 69 65 73 0a 20 20 20 r.to.prepend.the.directories....
c8b80 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 24 70 72 ..*/.....public.function.add($pr
c8ba0 65 66 69 78 2c 20 24 70 61 74 68 73 2c 20 24 70 72 65 70 65 6e 64 20 3d 20 66 61 6c 73 65 29 0a efix,.$paths,.$prepend.=.false).
c8bc0 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 24 70 72 65 66 69 78 29 20 7b 0a 20 20 ....{.........if.(!$prefix).{...
c8be0 20 20 20 20 20 20 20 20 20 20 69 66 20 28 24 70 72 65 70 65 6e 64 29 20 7b 0a 20 20 20 20 20 20 ..........if.($prepend).{.......
c8c00 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 ..........$this->fallbackDirsPsr
c8c20 30 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0.=.array_merge(................
c8c40 20 20 20 20 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 .....(array).$paths,............
c8c60 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 30 .........$this->fallbackDirsPsr0
c8c80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................);.............
c8ca0 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e }.else.{.................$this->
c8cc0 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 30 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a fallbackDirsPsr0.=.array_merge(.
c8ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 ....................$this->fallb
c8d00 61 63 6b 44 69 72 73 50 73 72 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ackDirsPsr0,....................
c8d20 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(array).$paths.................
c8d40 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 72 65 );.............}..............re
c8d60 74 75 72 6e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 24 66 69 72 73 74 20 turn;.........}..........$first.
c8d80 3d 20 24 70 72 65 66 69 78 5b 30 5d 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 69 73 73 65 74 =.$prefix[0];.........if.(!isset
c8da0 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 72 ($this->prefixesPsr0[$first][$pr
c8dc0 65 66 69 78 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 efix])).{.............$this->pre
c8de0 66 69 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 20 3d 20 28 61 72 fixesPsr0[$first][$prefix].=.(ar
c8e00 72 61 79 29 20 24 70 61 74 68 73 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e ray).$paths;..............return
c8e20 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 70 72 65 70 65 6e 64 ;.........}.........if.($prepend
c8e40 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 ).{.............$this->prefixesP
c8e60 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 sr0[$first][$prefix].=.array_mer
c8e80 67 65 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79 29 20 24 70 61 74 ge(.................(array).$pat
c8ea0 68 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 hs,.................$this->prefi
c8ec0 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 0a 20 20 20 20 20 20 20 xesPsr0[$first][$prefix]........
c8ee0 20 20 20 20 20 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 .....);.........}.else.{........
c8f00 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d .....$this->prefixesPsr0[$first]
c8f20 5b 24 70 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 20 20 20 20 20 20 20 [$prefix].=.array_merge(........
c8f40 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 5b 24 66 69 .........$this->prefixesPsr0[$fi
c8f60 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 rst][$prefix],.................(
c8f80 61 72 72 61 79 29 20 24 70 61 74 68 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 29 3b 0a 20 20 20 array).$paths.............);....
c8fa0 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 52 65 67 .....}.....}....../**......*.Reg
c8fc0 69 73 74 65 72 73 20 61 20 73 65 74 20 6f 66 20 50 53 52 2d 34 20 64 69 72 65 63 74 6f 72 69 65 isters.a.set.of.PSR-4.directorie
c8fe0 73 20 66 6f 72 20 61 20 67 69 76 65 6e 20 6e 61 6d 65 73 70 61 63 65 2c 20 65 69 74 68 65 72 0a s.for.a.given.namespace,.either.
c9000 20 20 20 20 20 2a 20 61 70 70 65 6e 64 69 6e 67 20 6f 72 20 70 72 65 70 65 6e 64 69 6e 67 20 74 .....*.appending.or.prepending.t
c9020 6f 20 74 68 65 20 6f 6e 65 73 20 70 72 65 76 69 6f 75 73 6c 79 20 73 65 74 20 66 6f 72 20 74 68 o.the.ones.previously.set.for.th
c9040 69 73 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 is.namespace.......*......*.@par
c9060 61 6d 20 73 74 72 69 6e 67 20 20 20 20 20 20 20 24 70 72 65 66 69 78 20 20 54 68 65 20 70 72 65 am.string.......$prefix..The.pre
c9080 66 69 78 2f 6e 61 6d 65 73 70 61 63 65 2c 20 77 69 74 68 20 74 72 61 69 6c 69 6e 67 20 27 5c 5c fix/namespace,.with.trailing.'\\
c90a0 27 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 61 72 72 61 79 7c 73 74 72 69 6e 67 20 24 70 61 '......*.@param.array|string.$pa
c90c0 74 68 73 20 20 20 54 68 65 20 50 53 52 2d 34 20 62 61 73 65 20 64 69 72 65 63 74 6f 72 69 65 73 ths...The.PSR-4.base.directories
c90e0 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 62 6f 6f 6c 20 20 20 20 20 20 20 20 20 24 70 72 65 ......*.@param.bool.........$pre
c9100 70 65 6e 64 20 57 68 65 74 68 65 72 20 74 6f 20 70 72 65 70 65 6e 64 20 74 68 65 20 64 69 72 65 pend.Whether.to.prepend.the.dire
c9120 63 74 6f 72 69 65 73 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 74 68 72 6f 77 73 20 5c 49 ctories......*......*.@throws.\I
c9140 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 0a 20 20 20 20 20 2a 2f 0a nvalidArgumentException......*/.
c9160 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 50 73 72 34 28 24 70 72 65 ....public.function.addPsr4($pre
c9180 66 69 78 2c 20 24 70 61 74 68 73 2c 20 24 70 72 65 70 65 6e 64 20 3d 20 66 61 6c 73 65 29 0a 20 fix,.$paths,.$prepend.=.false)..
c91a0 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 24 70 72 65 66 69 78 29 20 7b 0a 20 20 20 ...{.........if.(!$prefix).{....
c91c0 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 67 69 73 74 65 72 20 64 69 72 65 63 74 6f 72 69 65 73 .........//.Register.directories
c91e0 20 66 6f 72 20 74 68 65 20 72 6f 6f 74 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 20 20 20 .for.the.root.namespace.........
c9200 20 20 20 20 20 69 66 20 28 24 70 72 65 70 65 6e 64 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 .....if.($prepend).{............
c9220 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 20 3d 20 61 .....$this->fallbackDirsPsr4.=.a
c9240 72 72 61 79 5f 6d 65 72 67 65 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rray_merge(.....................
c9260 28 61 72 72 61 79 29 20 24 70 61 74 68 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (array).$paths,.................
c9280 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 0a 20 20 20 20 ....$this->fallbackDirsPsr4.....
c92a0 20 20 20 20 20 20 20 20 20 20 20 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 ............);.............}.els
c92c0 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 e.{.................$this->fallb
c92e0 61 63 6b 44 69 72 73 50 73 72 34 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 20 20 20 20 20 ackDirsPsr4.=.array_merge(......
c9300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 ...............$this->fallbackDi
c9320 72 73 50 73 72 34 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 rsPsr4,.....................(arr
c9340 61 79 29 20 24 70 61 74 68 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 3b 0a 20 20 ay).$paths.................);...
c9360 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 69 66 20 28 21 69 ..........}.........}.elseif.(!i
c9380 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 sset($this->prefixDirsPsr4[$pref
c93a0 69 78 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 67 69 73 74 65 72 20 ix])).{.............//.Register.
c93c0 64 69 72 65 63 74 6f 72 69 65 73 20 66 6f 72 20 61 20 6e 65 77 20 6e 61 6d 65 73 70 61 63 65 2e directories.for.a.new.namespace.
c93e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 70 .............$length.=.strlen($p
c9400 72 65 66 69 78 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 27 5c 5c 27 20 21 3d 3d refix);.............if.('\\'.!==
c9420 20 24 70 72 65 66 69 78 5b 24 6c 65 6e 67 74 68 20 2d 20 31 5d 29 20 7b 0a 20 20 20 20 20 20 20 .$prefix[$length.-.1]).{........
c9440 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d .........throw.new.\InvalidArgum
c9460 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 41 20 6e 6f 6e 2d 65 6d 70 74 79 20 50 53 52 2d 34 20 entException("A.non-empty.PSR-4.
c9480 70 72 65 66 69 78 20 6d 75 73 74 20 65 6e 64 20 77 69 74 68 20 61 20 6e 61 6d 65 73 70 61 63 65 prefix.must.end.with.a.namespace
c94a0 20 73 65 70 61 72 61 74 6f 72 2e 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 .separator.");.............}....
c94c0 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 4c 65 6e 67 74 68 73 50 73 72 .........$this->prefixLengthsPsr
c94e0 34 5b 24 70 72 65 66 69 78 5b 30 5d 5d 5b 24 70 72 65 66 69 78 5d 20 3d 20 24 6c 65 6e 67 74 68 4[$prefix[0]][$prefix].=.$length
c9500 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 ;.............$this->prefixDirsP
c9520 73 72 34 5b 24 70 72 65 66 69 78 5d 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b 0a 20 sr4[$prefix].=.(array).$paths;..
c9540 20 20 20 20 20 20 20 7d 20 65 6c 73 65 69 66 20 28 24 70 72 65 70 65 6e 64 29 20 7b 0a 20 20 20 .......}.elseif.($prepend).{....
c9560 20 20 20 20 20 20 20 20 20 2f 2f 20 50 72 65 70 65 6e 64 20 64 69 72 65 63 74 6f 72 69 65 73 20 .........//.Prepend.directories.
c9580 66 6f 72 20 61 6e 20 61 6c 72 65 61 64 79 20 72 65 67 69 73 74 65 72 65 64 20 6e 61 6d 65 73 70 for.an.already.registered.namesp
c95a0 61 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 ace..............$this->prefixDi
c95c0 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 20 rsPsr4[$prefix].=.array_merge(..
c95e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 2c 0a 20 ...............(array).$paths,..
c9600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 ...............$this->prefixDirs
c9620 50 73 72 34 5b 24 70 72 65 66 69 78 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 29 3b 0a 20 20 20 Psr4[$prefix].............);....
c9640 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 2f 2f 20 41 70 70 .....}.else.{.............//.App
c9660 65 6e 64 20 64 69 72 65 63 74 6f 72 69 65 73 20 66 6f 72 20 61 6e 20 61 6c 72 65 61 64 79 20 72 end.directories.for.an.already.r
c9680 65 67 69 73 74 65 72 65 64 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 egistered.namespace.............
c96a0 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d 20 .$this->prefixDirsPsr4[$prefix].
c96c0 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 =.array_merge(.................$
c96e0 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d 2c 0a 20 this->prefixDirsPsr4[$prefix],..
c9700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 0a 20 20 ...............(array).$paths...
c9720 20 20 20 20 20 20 20 20 20 20 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 ..........);.........}.....}....
c9740 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 52 65 67 69 73 74 65 72 73 20 61 20 73 65 74 20 6f 66 20 ../**......*.Registers.a.set.of.
c9760 50 53 52 2d 30 20 64 69 72 65 63 74 6f 72 69 65 73 20 66 6f 72 20 61 20 67 69 76 65 6e 20 70 72 PSR-0.directories.for.a.given.pr
c9780 65 66 69 78 2c 0a 20 20 20 20 20 2a 20 72 65 70 6c 61 63 69 6e 67 20 61 6e 79 20 6f 74 68 65 72 efix,......*.replacing.any.other
c97a0 73 20 70 72 65 76 69 6f 75 73 6c 79 20 73 65 74 20 66 6f 72 20 74 68 69 73 20 70 72 65 66 69 78 s.previously.set.for.this.prefix
c97c0 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 73 74 72 69 6e 67 20 20 20 .......*......*.@param.string...
c97e0 20 20 20 20 24 70 72 65 66 69 78 20 54 68 65 20 70 72 65 66 69 78 0a 20 20 20 20 20 2a 20 40 70 ....$prefix.The.prefix......*.@p
c9800 61 72 61 6d 20 61 72 72 61 79 7c 73 74 72 69 6e 67 20 24 70 61 74 68 73 20 20 54 68 65 20 50 53 aram.array|string.$paths..The.PS
c9820 52 2d 30 20 62 61 73 65 20 64 69 72 65 63 74 6f 72 69 65 73 0a 20 20 20 20 20 2a 2f 0a 20 20 20 R-0.base.directories......*/....
c9840 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 28 24 70 72 65 66 69 78 2c 20 24 70 .public.function.set($prefix,.$p
c9860 61 74 68 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 24 70 72 65 66 69 78 aths).....{.........if.(!$prefix
c9880 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 ).{.............$this->fallbackD
c98a0 69 72 73 50 73 72 30 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b 0a 20 20 20 20 20 20 irsPsr0.=.(array).$paths;.......
c98c0 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 ..}.else.{.............$this->pr
c98e0 65 66 69 78 65 73 50 73 72 30 5b 24 70 72 65 66 69 78 5b 30 5d 5d 5b 24 70 72 65 66 69 78 5d 20 efixesPsr0[$prefix[0]][$prefix].
c9900 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 =.(array).$paths;.........}.....
c9920 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 52 65 67 69 73 74 65 72 73 20 61 20 73 65 }....../**......*.Registers.a.se
c9940 74 20 6f 66 20 50 53 52 2d 34 20 64 69 72 65 63 74 6f 72 69 65 73 20 66 6f 72 20 61 20 67 69 76 t.of.PSR-4.directories.for.a.giv
c9960 65 6e 20 6e 61 6d 65 73 70 61 63 65 2c 0a 20 20 20 20 20 2a 20 72 65 70 6c 61 63 69 6e 67 20 61 en.namespace,......*.replacing.a
c9980 6e 79 20 6f 74 68 65 72 73 20 70 72 65 76 69 6f 75 73 6c 79 20 73 65 74 20 66 6f 72 20 74 68 69 ny.others.previously.set.for.thi
c99a0 73 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 s.namespace.......*......*.@para
c99c0 6d 20 73 74 72 69 6e 67 20 20 20 20 20 20 20 24 70 72 65 66 69 78 20 54 68 65 20 70 72 65 66 69 m.string.......$prefix.The.prefi
c99e0 78 2f 6e 61 6d 65 73 70 61 63 65 2c 20 77 69 74 68 20 74 72 61 69 6c 69 6e 67 20 27 5c 5c 27 0a x/namespace,.with.trailing.'\\'.
c9a00 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 61 72 72 61 79 7c 73 74 72 69 6e 67 20 24 70 61 74 68 .....*.@param.array|string.$path
c9a20 73 20 20 54 68 65 20 50 53 52 2d 34 20 62 61 73 65 20 64 69 72 65 63 74 6f 72 69 65 73 0a 20 20 s..The.PSR-4.base.directories...
c9a40 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 74 68 72 6f 77 73 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 ...*......*.@throws.\InvalidArgu
c9a60 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 mentException......*/.....public
c9a80 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 73 72 34 28 24 70 72 65 66 69 78 2c 20 24 70 61 74 68 .function.setPsr4($prefix,.$path
c9aa0 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 24 70 72 65 66 69 78 29 20 7b s).....{.........if.(!$prefix).{
c9ac0 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 .............$this->fallbackDirs
c9ae0 50 73 72 34 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b 0a 20 20 20 20 20 20 20 20 7d Psr4.=.(array).$paths;.........}
c9b00 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6c 65 6e 67 74 68 20 3d 20 73 74 .else.{.............$length.=.st
c9b20 72 6c 65 6e 28 24 70 72 65 66 69 78 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 27 rlen($prefix);.............if.('
c9b40 5c 5c 27 20 21 3d 3d 20 24 70 72 65 66 69 78 5b 24 6c 65 6e 67 74 68 20 2d 20 31 5d 29 20 7b 0a \\'.!==.$prefix[$length.-.1]).{.
c9b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c ................throw.new.\Inval
c9b80 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 41 20 6e 6f 6e 2d 65 6d 70 74 79 idArgumentException("A.non-empty
c9ba0 20 50 53 52 2d 34 20 70 72 65 66 69 78 20 6d 75 73 74 20 65 6e 64 20 77 69 74 68 20 61 20 6e 61 .PSR-4.prefix.must.end.with.a.na
c9bc0 6d 65 73 70 61 63 65 20 73 65 70 61 72 61 74 6f 72 2e 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 mespace.separator.");...........
c9be0 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 4c 65 6e ..}.............$this->prefixLen
c9c00 67 74 68 73 50 73 72 34 5b 24 70 72 65 66 69 78 5b 30 5d 5d 5b 24 70 72 65 66 69 78 5d 20 3d 20 gthsPsr4[$prefix[0]][$prefix].=.
c9c20 24 6c 65 6e 67 74 68 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 $length;.............$this->pref
c9c40 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d 20 3d 20 28 61 72 72 61 79 29 20 24 70 ixDirsPsr4[$prefix].=.(array).$p
c9c60 61 74 68 73 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 aths;.........}.....}....../**..
c9c80 20 20 20 20 2a 20 54 75 72 6e 73 20 6f 6e 20 73 65 61 72 63 68 69 6e 67 20 74 68 65 20 69 6e 63 ....*.Turns.on.searching.the.inc
c9ca0 6c 75 64 65 20 70 61 74 68 20 66 6f 72 20 63 6c 61 73 73 20 66 69 6c 65 73 2e 0a 20 20 20 20 20 lude.path.for.class.files.......
c9cc0 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 62 6f 6f 6c 20 24 75 73 65 49 6e 63 6c 75 64 65 *......*.@param.bool.$useInclude
c9ce0 50 61 74 68 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e Path......*/.....public.function
c9d00 20 73 65 74 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 24 75 73 65 49 6e 63 6c 75 64 65 50 61 .setUseIncludePath($useIncludePa
c9d20 74 68 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c th).....{.........$this->useIncl
c9d40 75 64 65 50 61 74 68 20 3d 20 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 3b 0a 20 20 20 20 7d udePath.=.$useIncludePath;.....}
c9d60 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 43 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 ....../**......*.Can.be.used.to.
c9d80 63 68 65 63 6b 20 69 66 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 20 75 73 65 73 20 74 68 65 check.if.the.autoloader.uses.the
c9da0 20 69 6e 63 6c 75 64 65 20 70 61 74 68 20 74 6f 20 63 68 65 63 6b 0a 20 20 20 20 20 2a 20 66 6f .include.path.to.check......*.fo
c9dc0 72 20 63 6c 61 73 73 65 73 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 72 65 74 75 72 6e r.classes.......*......*.@return
c9de0 20 62 6f 6f 6c 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .bool......*/.....public.functio
c9e00 6e 20 67 65 74 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 n.getUseIncludePath().....{.....
c9e20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 ....return.$this->useIncludePath
c9e40 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 54 75 72 6e 73 20 6f 66 ;.....}....../**......*.Turns.of
c9e60 66 20 73 65 61 72 63 68 69 6e 67 20 74 68 65 20 70 72 65 66 69 78 20 61 6e 64 20 66 61 6c 6c 62 f.searching.the.prefix.and.fallb
c9e80 61 63 6b 20 64 69 72 65 63 74 6f 72 69 65 73 20 66 6f 72 20 63 6c 61 73 73 65 73 0a 20 20 20 20 ack.directories.for.classes.....
c9ea0 20 2a 20 74 68 61 74 20 68 61 76 65 20 6e 6f 74 20 62 65 65 6e 20 72 65 67 69 73 74 65 72 65 64 .*.that.have.not.been.registered
c9ec0 20 77 69 74 68 20 74 68 65 20 63 6c 61 73 73 20 6d 61 70 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 .with.the.class.map.......*.....
c9ee0 20 2a 20 40 70 61 72 61 6d 20 62 6f 6f 6c 20 24 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 .*.@param.bool.$classMapAuthorit
c9f00 61 74 69 76 65 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ative......*/.....public.functio
c9f20 6e 20 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 63 6c 61 73 n.setClassMapAuthoritative($clas
c9f40 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 sMapAuthoritative).....{........
c9f60 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 .$this->classMapAuthoritative.=.
c9f80 24 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 3b 0a 20 20 20 20 7d 0a 0a 20 $classMapAuthoritative;.....}...
c9fa0 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 53 68 6f 75 6c 64 20 63 6c 61 73 73 20 6c 6f 6f 6b 75 .../**......*.Should.class.looku
c9fc0 70 20 66 61 69 6c 20 69 66 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 63 75 72 72 65 p.fail.if.not.found.in.the.curre
c9fe0 6e 74 20 63 6c 61 73 73 20 6d 61 70 3f 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 72 65 74 nt.class.map?......*......*.@ret
ca000 75 72 6e 20 62 6f 6f 6c 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 urn.bool......*/.....public.func
ca020 74 69 6f 6e 20 69 73 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 29 0a 20 tion.isClassMapAuthoritative()..
ca040 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 ...{.........return.$this->class
ca060 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a MapAuthoritative;.....}....../**
ca080 0a 20 20 20 20 20 2a 20 52 65 67 69 73 74 65 72 73 20 74 68 69 73 20 69 6e 73 74 61 6e 63 65 20 ......*.Registers.this.instance.
ca0a0 61 73 20 61 6e 20 61 75 74 6f 6c 6f 61 64 65 72 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 as.an.autoloader.......*......*.
ca0c0 40 70 61 72 61 6d 20 62 6f 6f 6c 20 24 70 72 65 70 65 6e 64 20 57 68 65 74 68 65 72 20 74 6f 20 @param.bool.$prepend.Whether.to.
ca0e0 70 72 65 70 65 6e 64 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 20 6f 72 20 6e 6f 74 0a 20 20 prepend.the.autoloader.or.not...
ca100 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 67 69 73 74 ...*/.....public.function.regist
ca120 65 72 28 24 70 72 65 70 65 6e 64 20 3d 20 66 61 6c 73 65 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 er($prepend.=.false).....{......
ca140 20 20 20 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 72 65 67 69 73 74 65 72 28 61 72 72 61 79 28 24 ...spl_autoload_register(array($
ca160 74 68 69 73 2c 20 27 6c 6f 61 64 43 6c 61 73 73 27 29 2c 20 74 72 75 65 2c 20 24 70 72 65 70 65 this,.'loadClass'),.true,.$prepe
ca180 6e 64 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 55 6e 72 65 67 nd);.....}....../**......*.Unreg
ca1a0 69 73 74 65 72 73 20 74 68 69 73 20 69 6e 73 74 61 6e 63 65 20 61 73 20 61 6e 20 61 75 74 6f 6c isters.this.instance.as.an.autol
ca1c0 6f 61 64 65 72 2e 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 oader.......*/.....public.functi
ca1e0 6f 6e 20 75 6e 72 65 67 69 73 74 65 72 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 73 70 on.unregister().....{.........sp
ca200 6c 5f 61 75 74 6f 6c 6f 61 64 5f 75 6e 72 65 67 69 73 74 65 72 28 61 72 72 61 79 28 24 74 68 69 l_autoload_unregister(array($thi
ca220 73 2c 20 27 6c 6f 61 64 43 6c 61 73 73 27 29 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a s,.'loadClass'));.....}....../**
ca240 0a 20 20 20 20 20 2a 20 4c 6f 61 64 73 20 74 68 65 20 67 69 76 65 6e 20 63 6c 61 73 73 20 6f 72 ......*.Loads.the.given.class.or
ca260 20 69 6e 74 65 72 66 61 63 65 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d .interface.......*......*.@param
ca280 20 20 73 74 72 69 6e 67 20 20 20 20 24 63 6c 61 73 73 20 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 ..string....$class.The.name.of.t
ca2a0 68 65 20 63 6c 61 73 73 0a 20 20 20 20 20 2a 20 40 72 65 74 75 72 6e 20 62 6f 6f 6c 7c 6e 75 6c he.class......*.@return.bool|nul
ca2c0 6c 20 54 72 75 65 20 69 66 20 6c 6f 61 64 65 64 2c 20 6e 75 6c 6c 20 6f 74 68 65 72 77 69 73 65 l.True.if.loaded,.null.otherwise
ca2e0 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 ......*/.....public.function.loa
ca300 64 43 6c 61 73 73 28 24 63 6c 61 73 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 dClass($class).....{.........if.
ca320 28 24 66 69 6c 65 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 46 69 6c 65 28 24 63 6c 61 73 73 29 ($file.=.$this->findFile($class)
ca340 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 63 6c 75 64 65 46 69 6c 65 28 24 66 69 6c ).{.............includeFile($fil
ca360 65 29 3b 0a 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 e);..............return.true;...
ca380 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 46 69 ......}.....}....../**......*.Fi
ca3a0 6e 64 73 20 74 68 65 20 70 61 74 68 20 74 6f 20 74 68 65 20 66 69 6c 65 20 77 68 65 72 65 20 74 nds.the.path.to.the.file.where.t
ca3c0 68 65 20 63 6c 61 73 73 20 69 73 20 64 65 66 69 6e 65 64 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 he.class.is.defined.......*.....
ca3e0 20 2a 20 40 70 61 72 61 6d 20 73 74 72 69 6e 67 20 24 63 6c 61 73 73 20 54 68 65 20 6e 61 6d 65 .*.@param.string.$class.The.name
ca400 20 6f 66 20 74 68 65 20 63 6c 61 73 73 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 72 65 74 .of.the.class......*......*.@ret
ca420 75 72 6e 20 73 74 72 69 6e 67 7c 66 61 6c 73 65 20 54 68 65 20 70 61 74 68 20 69 66 20 66 6f 75 urn.string|false.The.path.if.fou
ca440 6e 64 2c 20 66 61 6c 73 65 20 6f 74 68 65 72 77 69 73 65 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 nd,.false.otherwise......*/.....
ca460 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 46 69 6c 65 28 24 63 6c 61 73 73 29 public.function.findFile($class)
ca480 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 2f 2f 20 77 6f 72 6b 20 61 72 6f 75 6e 64 20 66 6f .....{.........//.work.around.fo
ca4a0 72 20 50 48 50 20 35 2e 33 2e 30 20 2d 20 35 2e 33 2e 32 20 68 74 74 70 73 3a 2f 2f 62 75 67 73 r.PHP.5.3.0.-.5.3.2.https://bugs
ca4c0 2e 70 68 70 2e 6e 65 74 2f 35 30 37 33 31 0a 20 20 20 20 20 20 20 20 69 66 20 28 27 5c 5c 27 20 .php.net/50731.........if.('\\'.
ca4e0 3d 3d 20 24 63 6c 61 73 73 5b 30 5d 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 63 6c 61 ==.$class[0]).{.............$cla
ca500 73 73 20 3d 20 73 75 62 73 74 72 28 24 63 6c 61 73 73 2c 20 31 29 3b 0a 20 20 20 20 20 20 20 20 ss.=.substr($class,.1);.........
ca520 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 63 6c 61 73 73 20 6d 61 70 20 6c 6f 6f 6b 75 70 0a 20 }..........//.class.map.lookup..
ca540 20 20 20 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 .......if.(isset($this->classMap
ca560 5b 24 63 6c 61 73 73 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 [$class])).{.............return.
ca580 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 3b 0a 20 20 20 20 20 20 20 $this->classMap[$class];........
ca5a0 20 7d 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 .}.........if.($this->classMapAu
ca5c0 74 68 6f 72 69 74 61 74 69 76 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 thoritative).{.............retur
ca5e0 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 24 66 69 6c n.false;.........}..........$fil
ca600 65 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 46 69 6c 65 57 69 74 68 45 78 74 65 6e 73 69 6f 6e e.=.$this->findFileWithExtension
ca620 28 24 63 6c 61 73 73 2c 20 27 2e 70 68 70 27 29 3b 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 53 65 ($class,.'.php');..........//.Se
ca640 61 72 63 68 20 66 6f 72 20 48 61 63 6b 20 66 69 6c 65 73 20 69 66 20 77 65 20 61 72 65 20 72 75 arch.for.Hack.files.if.we.are.ru
ca660 6e 6e 69 6e 67 20 6f 6e 20 48 48 56 4d 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 66 69 6c 65 20 nning.on.HHVM.........if.($file.
ca680 3d 3d 3d 20 6e 75 6c 6c 20 26 26 20 64 65 66 69 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f ===.null.&&.defined('HHVM_VERSIO
ca6a0 4e 27 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 66 69 6c 65 20 3d 20 24 74 68 69 73 N')).{.............$file.=.$this
ca6c0 2d 3e 66 69 6e 64 46 69 6c 65 57 69 74 68 45 78 74 65 6e 73 69 6f 6e 28 24 63 6c 61 73 73 2c 20 ->findFileWithExtension($class,.
ca6e0 27 2e 68 68 27 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 '.hh');.........}..........if.($
ca700 66 69 6c 65 20 3d 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 file.===.null).{.............//.
ca720 52 65 6d 65 6d 62 65 72 20 74 68 61 74 20 74 68 69 73 20 63 6c 61 73 73 20 64 6f 65 73 20 6e 6f Remember.that.this.class.does.no
ca740 74 20 65 78 69 73 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 t.exist..............return.$thi
ca760 73 2d 3e 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 s->classMap[$class].=.false;....
ca780 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a 20 20 .....}..........return.$file;...
ca7a0 20 20 7d 0a 0a 20 20 20 20 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 46 69 ..}......private.function.findFi
ca7c0 6c 65 57 69 74 68 45 78 74 65 6e 73 69 6f 6e 28 24 63 6c 61 73 73 2c 20 24 65 78 74 29 0a 20 20 leWithExtension($class,.$ext)...
ca7e0 20 20 7b 0a 20 20 20 20 20 20 20 20 2f 2f 20 50 53 52 2d 34 20 6c 6f 6f 6b 75 70 0a 20 20 20 20 ..{.........//.PSR-4.lookup.....
ca800 20 20 20 20 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 34 20 3d 20 73 74 72 74 72 28 24 63 6c ....$logicalPathPsr4.=.strtr($cl
ca820 61 73 73 2c 20 27 5c 5c 27 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 ass,.'\\',.DIRECTORY_SEPARATOR).
ca840 2e 20 24 65 78 74 3b 0a 0a 20 20 20 20 20 20 20 20 24 66 69 72 73 74 20 3d 20 24 63 6c 61 73 73 ..$ext;..........$first.=.$class
ca860 5b 30 5d 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 [0];.........if.(isset($this->pr
ca880 65 66 69 78 4c 65 6e 67 74 68 73 50 73 72 34 5b 24 66 69 72 73 74 5d 29 29 20 7b 0a 20 20 20 20 efixLengthsPsr4[$first])).{.....
ca8a0 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 4c 65 ........foreach.($this->prefixLe
ca8c0 6e 67 74 68 73 50 73 72 34 5b 24 66 69 72 73 74 5d 20 61 73 20 24 70 72 65 66 69 78 20 3d 3e 20 ngthsPsr4[$first].as.$prefix.=>.
ca8e0 24 6c 65 6e 67 74 68 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 30 $length).{.................if.(0
ca900 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 63 6c 61 73 73 2c 20 24 70 72 65 66 69 78 29 29 20 7b 0a .===.strpos($class,.$prefix)).{.
ca920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 74 68 ....................foreach.($th
ca940 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d 20 61 73 20 24 is->prefixDirsPsr4[$prefix].as.$
ca960 64 69 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 dir).{.........................i
ca980 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 20 3d 20 24 64 69 72 20 2e 20 44 49 f.(file_exists($file.=.$dir...DI
ca9a0 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 73 75 62 73 74 72 28 24 6c 6f 67 69 RECTORY_SEPARATOR...substr($logi
ca9c0 63 61 6c 50 61 74 68 50 73 72 34 2c 20 24 6c 65 6e 67 74 68 29 29 29 20 7b 0a 20 20 20 20 20 20 calPathPsr4,.$length))).{.......
ca9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 66 69 ......................return.$fi
caa00 6c 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 le;.........................}...
caa20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..................}.............
caa40 20 20 20 20 7d 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 ....}.............}.........}...
caa60 20 20 20 20 20 20 20 2f 2f 20 50 53 52 2d 34 20 66 61 6c 6c 62 61 63 6b 20 64 69 72 73 0a 20 20 .......//.PSR-4.fallback.dirs...
caa80 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 ......foreach.($this->fallbackDi
caaa0 72 73 50 73 72 34 20 61 73 20 24 64 69 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 rsPsr4.as.$dir).{.............if
caac0 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 20 3d 20 24 64 69 72 20 2e 20 44 49 52 .(file_exists($file.=.$dir...DIR
caae0 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 ECTORY_SEPARATOR...$logicalPathP
cab00 73 72 34 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 sr4)).{.................return.$
cab20 66 69 6c 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 file;.............}.........}...
cab40 20 20 20 20 20 20 20 2f 2f 20 50 53 52 2d 30 20 6c 6f 6f 6b 75 70 0a 20 20 20 20 20 20 20 20 69 .......//.PSR-0.lookup.........i
cab60 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 72 72 70 6f 73 28 24 63 6c 61 f.(false.!==.$pos.=.strrpos($cla
cab80 73 73 2c 20 27 5c 5c 27 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6e 61 6d 65 ss,.'\\')).{.............//.name
caba0 73 70 61 63 65 64 20 63 6c 61 73 73 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6c spaced.class.name.............$l
cabc0 6f 67 69 63 61 6c 50 61 74 68 50 73 72 30 20 3d 20 73 75 62 73 74 72 28 24 6c 6f 67 69 63 61 6c ogicalPathPsr0.=.substr($logical
cabe0 50 61 74 68 50 73 72 34 2c 20 30 2c 20 24 70 6f 73 20 2b 20 31 29 0a 20 20 20 20 20 20 20 20 20 PathPsr4,.0,.$pos.+.1)..........
cac00 20 20 20 20 20 20 20 2e 20 73 74 72 74 72 28 73 75 62 73 74 72 28 24 6c 6f 67 69 63 61 6c 50 61 .........strtr(substr($logicalPa
cac20 74 68 50 73 72 34 2c 20 24 70 6f 73 20 2b 20 31 29 2c 20 27 5f 27 2c 20 44 49 52 45 43 54 4f 52 thPsr4,.$pos.+.1),.'_',.DIRECTOR
cac40 59 5f 53 45 50 41 52 41 54 4f 52 29 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 Y_SEPARATOR);.........}.else.{..
cac60 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 50 45 41 52 2d 6c 69 6b 65 20 63 6c 61 73 73 20 6e 61 ...........//.PEAR-like.class.na
cac80 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 30 20 me.............$logicalPathPsr0.
caca0 3d 20 73 74 72 74 72 28 24 63 6c 61 73 73 2c 20 27 5f 27 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 =.strtr($class,.'_',.DIRECTORY_S
cacc0 45 50 41 52 41 54 4f 52 29 20 2e 20 24 65 78 74 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 EPARATOR)...$ext;.........}.....
cace0 20 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 .....if.(isset($this->prefixesPs
cad00 72 30 5b 24 66 69 72 73 74 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 r0[$first])).{.............forea
cad20 63 68 20 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d 20 ch.($this->prefixesPsr0[$first].
cad40 61 73 20 24 70 72 65 66 69 78 20 3d 3e 20 24 64 69 72 73 29 20 7b 0a 20 20 20 20 20 20 20 20 20 as.$prefix.=>.$dirs).{..........
cad60 20 20 20 20 20 20 20 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 63 6c 61 73 73 2c 20 .......if.(0.===.strpos($class,.
cad80 24 70 72 65 66 69 78 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 $prefix)).{.....................
cada0 66 6f 72 65 61 63 68 20 28 24 64 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 20 20 20 20 20 20 foreach.($dirs.as.$dir).{.......
cadc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 ..................if.(file_exist
cade0 73 28 24 66 69 6c 65 20 3d 20 24 64 69 72 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 s($file.=.$dir...DIRECTORY_SEPAR
cae00 41 54 4f 52 20 2e 20 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 30 29 29 20 7b 0a 20 20 20 20 ATOR...$logicalPathPsr0)).{.....
cae20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 ........................return.$
cae40 66 69 6c 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a file;.........................}.
cae60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 ....................}...........
cae80 20 20 20 20 20 20 7d 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 ......}.............}.........}.
caea0 0a 20 20 20 20 20 20 20 20 2f 2f 20 50 53 52 2d 30 20 66 61 6c 6c 62 61 63 6b 20 64 69 72 73 0a .........//.PSR-0.fallback.dirs.
caec0 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b ........foreach.($this->fallback
caee0 44 69 72 73 50 73 72 30 20 61 73 20 24 64 69 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 DirsPsr0.as.$dir).{.............
caf00 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 20 3d 20 24 64 69 72 20 2e 20 44 if.(file_exists($file.=.$dir...D
caf20 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 6c 6f 67 69 63 61 6c 50 61 74 IRECTORY_SEPARATOR...$logicalPat
caf40 68 50 73 72 30 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e hPsr0)).{.................return
caf60 20 24 66 69 6c 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 .$file;.............}.........}.
caf80 0a 20 20 20 20 20 20 20 20 2f 2f 20 50 53 52 2d 30 20 69 6e 63 6c 75 64 65 20 70 61 74 68 73 2e .........//.PSR-0.include.paths.
cafa0 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 .........if.($this->useIncludePa
cafc0 74 68 20 26 26 20 24 66 69 6c 65 20 3d 20 73 74 72 65 61 6d 5f 72 65 73 6f 6c 76 65 5f 69 6e 63 th.&&.$file.=.stream_resolve_inc
cafe0 6c 75 64 65 5f 70 61 74 68 28 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 30 29 29 20 7b 0a 20 lude_path($logicalPathPsr0)).{..
cb000 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a 20 20 20 20 20 20 20 ...........return.$file;........
cb020 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 2f 2a 2a 0a 20 2a 20 53 63 6f 70 65 20 69 73 6f 6c 61 74 65 .}.....}.}../**..*.Scope.isolate
cb040 64 20 69 6e 63 6c 75 64 65 2e 0a 20 2a 0a 20 2a 20 50 72 65 76 65 6e 74 73 20 61 63 63 65 73 73 d.include...*..*.Prevents.access
cb060 20 74 6f 20 24 74 68 69 73 2f 73 65 6c 66 20 66 72 6f 6d 20 69 6e 63 6c 75 64 65 64 20 66 69 6c .to.$this/self.from.included.fil
cb080 65 73 2e 0a 20 2a 2f 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 46 69 6c 65 28 24 66 69 es...*/.function.includeFile($fi
cb0a0 6c 65 29 0a 7b 0a 20 20 20 20 69 6e 63 6c 75 64 65 20 24 66 69 6c 65 3b 0a 7d 0a 7b 0a 20 20 20 le).{.....include.$file;.}.{....
cb0c0 20 22 24 73 63 68 65 6d 61 22 3a 20 22 68 74 74 70 3a 2f 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2e ."$schema":."http://json-schema.
cb0e0 6f 72 67 2f 64 72 61 66 74 2d 30 34 2f 73 63 68 65 6d 61 23 22 2c 0a 20 20 20 20 22 6e 61 6d 65 org/draft-04/schema#",....."name
cb100 22 3a 20 22 50 61 63 6b 61 67 65 22 2c 0a 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 ":."Package",....."type":."objec
cb120 74 22 2c 0a 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 t",....."additionalProperties":.
cb140 66 61 6c 73 65 2c 0a 20 20 20 20 22 72 65 71 75 69 72 65 64 22 3a 20 5b 20 22 6e 61 6d 65 22 2c false,....."required":.[."name",
cb160 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 20 5d 2c 0a 20 20 20 20 22 70 72 6f 70 65 72 74 69 65 ."description".],....."propertie
cb180 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 22 6e 61 6d 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 s":.{........."name":.{.........
cb1a0 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 ...."type":."string",...........
cb1c0 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 50 61 63 6b 61 67 65 20 6e 61 6d 65 2c 20 .."description":."Package.name,.
cb1e0 69 6e 63 6c 75 64 69 6e 67 20 27 76 65 6e 64 6f 72 2d 6e 61 6d 65 2f 27 20 70 72 65 66 69 78 2e including.'vendor-name/'.prefix.
cb200 22 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 7b 0a 20 ".........},........."type":.{..
cb220 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 50 61 63 6b 61 ..........."description":."Packa
cb240 67 65 20 74 79 70 65 2c 20 65 69 74 68 65 72 20 27 6c 69 62 72 61 72 79 27 20 66 6f 72 20 63 6f ge.type,.either.'library'.for.co
cb260 6d 6d 6f 6e 20 70 61 63 6b 61 67 65 73 2c 20 27 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 27 mmon.packages,.'composer-plugin'
cb280 20 66 6f 72 20 70 6c 75 67 69 6e 73 2c 20 27 6d 65 74 61 70 61 63 6b 61 67 65 27 20 66 6f 72 20 .for.plugins,.'metapackage'.for.
cb2a0 65 6d 70 74 79 20 70 61 63 6b 61 67 65 73 2c 20 6f 72 20 61 20 63 75 73 74 6f 6d 20 74 79 70 65 empty.packages,.or.a.custom.type
cb2c0 20 28 5b 61 2d 7a 30 2d 39 2d 5d 2b 29 20 64 65 66 69 6e 65 64 20 62 79 20 77 68 61 74 65 76 65 .([a-z0-9-]+).defined.by.whateve
cb2e0 72 20 70 72 6f 6a 65 63 74 20 74 68 69 73 20 70 61 63 6b 61 67 65 20 61 70 70 6c 69 65 73 20 74 r.project.this.package.applies.t
cb300 6f 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 o.",............."type":."string
cb320 22 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 74 61 72 67 65 74 2d 64 69 72 ".........},........."target-dir
cb340 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 ":.{............."description":.
cb360 22 44 45 50 52 45 43 41 54 45 44 3a 20 46 6f 72 63 65 73 20 74 68 65 20 70 61 63 6b 61 67 65 20 "DEPRECATED:.Forces.the.package.
cb380 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e 74 6f 20 74 68 65 20 67 69 76 65 6e 20 73 to.be.installed.into.the.given.s
cb3a0 75 62 64 69 72 65 63 74 6f 72 79 20 70 61 74 68 2e 20 54 68 69 73 20 69 73 20 75 73 65 64 20 66 ubdirectory.path..This.is.used.f
cb3c0 6f 72 20 61 75 74 6f 6c 6f 61 64 69 6e 67 20 50 53 52 2d 30 20 70 61 63 6b 61 67 65 73 20 74 68 or.autoloading.PSR-0.packages.th
cb3e0 61 74 20 64 6f 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 74 68 65 69 72 20 66 75 6c 6c 20 70 61 74 at.do.not.contain.their.full.pat
cb400 68 2e 20 55 73 65 20 66 6f 72 77 61 72 64 20 73 6c 61 73 68 65 73 20 66 6f 72 20 63 72 6f 73 73 h..Use.forward.slashes.for.cross
cb420 2d 70 6c 61 74 66 6f 72 6d 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 2e 22 2c 0a 20 20 20 20 20 -platform.compatibility.",......
cb440 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 0a 20 20 20 20 20 20 20 20 ......."type":."string".........
cb460 7d 2c 0a 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 7b 0a 20 20 20 20 },........."description":.{.....
cb480 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 ........"type":."string",.......
cb4a0 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 53 68 6f 72 74 20 70 61 63 6b ......"description":."Short.pack
cb4c0 61 67 65 20 64 65 73 63 72 69 70 74 69 6f 6e 2e 22 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 age.description.".........},....
cb4e0 20 20 20 20 20 22 6b 65 79 77 6f 72 64 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 ....."keywords":.{............."
cb500 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 65 type":."array",............."ite
cb520 6d 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 ms":.{................."type":."
cb540 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 string",................."descri
cb560 70 74 69 6f 6e 22 3a 20 22 41 20 74 61 67 2f 6b 65 79 77 6f 72 64 20 74 68 61 74 20 74 68 69 73 ption":."A.tag/keyword.that.this
cb580 20 70 61 63 6b 61 67 65 20 72 65 6c 61 74 65 73 20 74 6f 2e 22 0a 20 20 20 20 20 20 20 20 20 20 .package.relates.to."...........
cb5a0 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 68 6f 6d 65 70 61 67 65 ..}.........},........."homepage
cb5c0 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 ":.{............."type":."string
cb5e0 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 48 ",............."description":."H
cb600 6f 6d 65 70 61 67 65 20 55 52 4c 20 66 6f 72 20 74 68 65 20 70 72 6f 6a 65 63 74 2e 22 2c 0a 20 omepage.URL.for.the.project.",..
cb620 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 ..........."format":."uri"......
cb640 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 76 65 72 73 69 6f 6e 22 3a 20 7b 0a 20 20 20 20 20 ...},........."version":.{......
cb660 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 ......."type":."string",........
cb680 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 50 61 63 6b 61 67 65 20 76 65 72 ....."description":."Package.ver
cb6a0 73 69 6f 6e 2c 20 73 65 65 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 sion,.see.https://getcomposer.or
cb6c0 67 2f 64 6f 63 2f 30 34 2d 73 63 68 65 6d 61 2e 6d 64 23 76 65 72 73 69 6f 6e 20 66 6f 72 20 6d g/doc/04-schema.md#version.for.m
cb6e0 6f 72 65 20 69 6e 66 6f 20 6f 6e 20 76 61 6c 69 64 20 73 63 68 65 6d 65 73 2e 22 0a 20 20 20 20 ore.info.on.valid.schemes.".....
cb700 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 74 69 6d 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 ....},........."time":.{........
cb720 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 ....."type":."string",..........
cb740 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 50 61 63 6b 61 67 65 20 72 65 6c 65 61 ..."description":."Package.relea
cb760 73 65 20 64 61 74 65 2c 20 69 6e 20 27 59 59 59 59 2d 4d 4d 2d 44 44 27 2c 20 27 59 59 59 59 2d se.date,.in.'YYYY-MM-DD',.'YYYY-
cb780 4d 4d 2d 44 44 20 48 48 3a 4d 4d 3a 53 53 27 20 6f 72 20 27 59 59 59 59 2d 4d 4d 2d 44 44 54 48 MM-DD.HH:MM:SS'.or.'YYYY-MM-DDTH
cb7a0 48 3a 4d 4d 3a 53 53 5a 27 20 66 6f 72 6d 61 74 2e 22 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 H:MM:SSZ'.format.".........},...
cb7c0 20 20 20 20 20 20 22 6c 69 63 65 6e 73 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 ......"license":.{............."
cb7e0 74 79 70 65 22 3a 20 5b 22 73 74 72 69 6e 67 22 2c 20 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 type":.["string",."array"],.....
cb800 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4c 69 63 65 6e 73 65 20 ........"description":."License.
cb820 6e 61 6d 65 2e 20 4f 72 20 61 6e 20 61 72 72 61 79 20 6f 66 20 6c 69 63 65 6e 73 65 20 6e 61 6d name..Or.an.array.of.license.nam
cb840 65 73 2e 22 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 61 75 74 68 6f 72 73 es.".........},........."authors
cb860 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 ":.{............."type":."array"
cb880 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4c 69 ,............."description":."Li
cb8a0 73 74 20 6f 66 20 61 75 74 68 6f 72 73 20 74 68 61 74 20 63 6f 6e 74 72 69 62 75 74 65 64 20 74 st.of.authors.that.contributed.t
cb8c0 6f 20 74 68 65 20 70 61 63 6b 61 67 65 2e 20 54 68 69 73 20 69 73 20 74 79 70 69 63 61 6c 6c 79 o.the.package..This.is.typically
cb8e0 20 74 68 65 20 6d 61 69 6e 20 6d 61 69 6e 74 61 69 6e 65 72 73 2c 20 6e 6f 74 20 74 68 65 20 66 .the.main.maintainers,.not.the.f
cb900 75 6c 6c 20 6c 69 73 74 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 65 6d 73 22 3a ull.list.",............."items":
cb920 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 .{................."type":."obje
cb940 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c ct",................."additional
cb960 50 72 6f 70 65 72 74 69 65 73 22 3a 20 66 61 6c 73 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 Properties":.false,.............
cb980 20 20 20 20 22 72 65 71 75 69 72 65 64 22 3a 20 5b 20 22 6e 61 6d 65 22 5d 2c 0a 20 20 20 20 20 ...."required":.[."name"],......
cb9a0 20 20 20 20 20 20 20 20 20 20 20 22 70 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 ..........."properties":.{......
cb9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6e 61 6d 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 ..............."name":.{........
cb9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 ................."type":."string
cba00 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 ",........................."desc
cba20 72 69 70 74 69 6f 6e 22 3a 20 22 46 75 6c 6c 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 61 75 74 68 ription":."Full.name.of.the.auth
cba40 6f 72 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 or.".....................},.....
cba60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 65 6d 61 69 6c 22 3a 20 7b 0a 20 20 20 20 20 ................"email":.{......
cba80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 ..................."type":."stri
cbaa0 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 ng",........................."de
cbac0 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 45 6d 61 69 6c 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 scription":."Email.address.of.th
cbae0 65 20 61 75 74 68 6f 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.author.",.....................
cbb00 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 65 6d 61 69 6c 22 0a 20 20 20 20 20 20 20 20 20 20 ...."format":."email"...........
cbb20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........},....................
cbb40 20 22 68 6f 6d 65 70 61 67 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."homepage":.{..................
cbb60 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 ......."type":."string",........
cbb80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 ................."description":.
cbba0 22 48 6f 6d 65 70 61 67 65 20 55 52 4c 20 66 6f 72 20 74 68 65 20 61 75 74 68 6f 72 2e 22 2c 0a "Homepage.URL.for.the.author.",.
cbbc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 ........................"format"
cbbe0 3a 20 22 75 72 69 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 :."uri".....................},..
cbc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 72 6f 6c 65 22 3a 20 7b 0a 20 20 20 ..................."role":.{....
cbc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 ....................."type":."st
cbc40 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 ring",........................."
cbc60 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 75 74 68 6f 72 27 73 20 72 6f 6c 65 20 69 6e 20 description":."Author's.role.in.
cbc80 74 68 65 20 70 72 6f 6a 65 63 74 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 the.project."...................
cbca0 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 ..}.................}...........
cbcc0 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 72 65 71 75 69 72 65 22 ..}.........},........."require"
cbce0 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 :.{............."type":."object"
cbd00 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 ,............."description":."Th
cbd20 69 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 is.is.a.hash.of.package.name.(ke
cbd40 79 73 29 20 61 6e 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 28 76 61 6c ys).and.version.constraints.(val
cbd60 75 65 73 29 20 74 68 61 74 20 61 72 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 75 6e 20 74 68 ues).that.are.required.to.run.th
cbd80 69 73 20 70 61 63 6b 61 67 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 is.package.",............."addit
cbda0 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d ionalProperties":.true.........}
cbdc0 2c 0a 20 20 20 20 20 20 20 20 22 72 65 70 6c 61 63 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ,........."replace":.{..........
cbde0 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ..."type":."object",............
cbe00 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 ."description":."This.is.a.hash.
cbe20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 20 61 6e 64 20 76 65 72 73 69 of.package.name.(keys).and.versi
cbe40 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 63 61 6e on.constraints.(values).that.can
cbe60 20 62 65 20 72 65 70 6c 61 63 65 64 20 62 79 20 74 68 69 73 20 70 61 63 6b 61 67 65 2e 22 2c 0a .be.replaced.by.this.package.",.
cbe80 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 ............"additionalPropertie
cbea0 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 63 6f 6e s":.true.........},........."con
cbec0 66 6c 69 63 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f flict":.{............."type":."o
cbee0 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e bject",............."description
cbf00 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 ":."This.is.a.hash.of.package.na
cbf20 6d 65 20 28 6b 65 79 73 29 20 61 6e 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 me.(keys).and.version.constraint
cbf40 73 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 63 6f 6e 66 6c 69 63 74 20 77 69 74 68 20 74 68 s.(values).that.conflict.with.th
cbf60 69 73 20 70 61 63 6b 61 67 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 is.package.",............."addit
cbf80 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d ionalProperties":.true.........}
cbfa0 2c 0a 20 20 20 20 20 20 20 20 22 70 72 6f 76 69 64 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ,........."provide":.{..........
cbfc0 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ..."type":."object",............
cbfe0 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 ."description":."This.is.a.hash.
cc000 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 20 61 6e 64 20 76 65 72 73 69 of.package.name.(keys).and.versi
cc020 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 74 68 69 on.constraints.(values).that.thi
cc040 73 20 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65 73 20 69 6e 20 61 64 64 69 74 69 6f 6e 20 74 s.package.provides.in.addition.t
cc060 6f 20 74 68 69 73 20 70 61 63 6b 61 67 65 27 73 20 6e 61 6d 65 2e 22 2c 0a 20 20 20 20 20 20 20 o.this.package's.name.",........
cc080 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 ....."additionalProperties":.tru
cc0a0 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 72 65 71 75 69 72 65 2d 64 65 e.........},........."require-de
cc0c0 76 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 v":.{............."type":."objec
cc0e0 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 t",............."description":."
cc100 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 This.is.a.hash.of.package.name.(
cc120 6b 65 79 73 29 20 61 6e 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 28 76 keys).and.version.constraints.(v
cc140 61 6c 75 65 73 29 20 74 68 61 74 20 74 68 69 73 20 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 alues).that.this.package.require
cc160 73 20 66 6f 72 20 64 65 76 65 6c 6f 70 69 6e 67 20 69 74 20 28 74 65 73 74 69 6e 67 20 74 6f 6f s.for.developing.it.(testing.too
cc180 6c 73 20 61 6e 64 20 73 75 63 68 29 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 ls.and.such).",............."add
cc1a0 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 itionalProperties":.true........
cc1c0 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 73 75 67 67 65 73 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 .},........."suggest":.{........
cc1e0 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 ....."type":."object",..........
cc200 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 ..."description":."This.is.a.has
cc220 68 20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 20 61 6e 64 20 64 65 73 h.of.package.name.(keys).and.des
cc240 63 72 69 70 74 69 6f 6e 73 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 74 68 69 73 20 70 61 63 criptions.(values).that.this.pac
cc260 6b 61 67 65 20 73 75 67 67 65 73 74 73 20 77 6f 72 6b 20 77 65 6c 6c 20 77 69 74 68 20 69 74 20 kage.suggests.work.well.with.it.
cc280 28 74 68 69 73 20 77 69 6c 6c 20 62 65 20 73 75 67 67 65 73 74 65 64 20 74 6f 20 74 68 65 20 75 (this.will.be.suggested.to.the.u
cc2a0 73 65 72 20 64 75 72 69 6e 67 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 29 2e 22 2c 0a 20 20 20 20 ser.during.installation).",.....
cc2c0 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 ........"additionalProperties":.
cc2e0 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 63 6f 6e 66 69 67 22 true.........},........."config"
cc300 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 :.{............."type":."object"
cc320 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 43 6f ,............."description":."Co
cc340 6d 70 6f 73 65 72 20 6f 70 74 69 6f 6e 73 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 70 mposer.options.",............."p
cc360 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 roperties":.{................."p
cc380 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 rocess-timeout":.{..............
cc3a0 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 69 6e 74 65 67 65 72 22 2c 0a 20 20 20 20 20 20 ......."type":."integer",.......
cc3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 .............."description":."Th
cc3e0 65 20 74 69 6d 65 6f 75 74 20 69 6e 20 73 65 63 6f 6e 64 73 20 66 6f 72 20 70 72 6f 63 65 73 73 e.timeout.in.seconds.for.process
cc400 20 65 78 65 63 75 74 69 6f 6e 73 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 33 30 30 20 28 35 6d .executions,.defaults.to.300.(5m
cc420 69 6e 73 29 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 ins).".................},.......
cc440 20 20 20 20 20 20 20 20 20 20 22 75 73 65 2d 69 6e 63 6c 75 64 65 2d 70 61 74 68 22 3a 20 7b 0a .........."use-include-path":.{.
cc460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 62 6f 6f ...................."type":."boo
cc480 6c 65 61 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 lean",....................."desc
cc4a0 72 69 70 74 69 6f 6e 22 3a 20 22 49 66 20 74 72 75 65 2c 20 74 68 65 20 43 6f 6d 70 6f 73 65 72 ription":."If.true,.the.Composer
cc4c0 20 61 75 74 6f 6c 6f 61 64 65 72 20 77 69 6c 6c 20 61 6c 73 6f 20 6c 6f 6f 6b 20 66 6f 72 20 63 .autoloader.will.also.look.for.c
cc4e0 6c 61 73 73 65 73 20 69 6e 20 74 68 65 20 50 48 50 20 69 6e 63 6c 75 64 65 20 70 61 74 68 2e 22 lasses.in.the.PHP.include.path."
cc500 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................},.............
cc520 20 20 20 20 22 70 72 65 66 65 72 72 65 64 2d 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 20 20 20 20 ...."preferred-install":.{......
cc540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 73 74 72 69 6e 67 22 ..............."type":.["string"
cc560 2c 20 22 6f 62 6a 65 63 74 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,."object"],....................
cc580 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 69 6e 73 74 61 6c 6c 20 6d 65 74 ."description":."The.install.met
cc5a0 68 6f 64 20 43 6f 6d 70 6f 73 65 72 20 77 69 6c 6c 20 70 72 65 66 65 72 20 74 6f 20 75 73 65 2c hod.Composer.will.prefer.to.use,
cc5c0 20 64 65 66 61 75 6c 74 73 20 74 6f 20 61 75 74 6f 20 61 6e 64 20 63 61 6e 20 62 65 20 61 6e 79 .defaults.to.auto.and.can.be.any
cc5e0 20 6f 66 20 73 6f 75 72 63 65 2c 20 64 69 73 74 2c 20 61 75 74 6f 2c 20 6f 72 20 61 20 68 61 73 .of.source,.dist,.auto,.or.a.has
cc600 68 20 6f 66 20 7b 5c 22 70 61 74 74 65 72 6e 5c 22 3a 20 5c 22 70 72 65 66 65 72 65 6e 63 65 5c h.of.{\"pattern\":.\"preference\
cc620 22 7d 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 "}.".................},.........
cc640 20 20 20 20 20 20 20 20 22 6e 6f 74 69 66 79 2d 6f 6e 2d 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 ........"notify-on-install":.{..
cc660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 62 6f 6f 6c ..................."type":."bool
cc680 65 61 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 ean",....................."descr
cc6a0 69 70 74 69 6f 6e 22 3a 20 22 43 6f 6d 70 6f 73 65 72 20 61 6c 6c 6f 77 73 20 72 65 70 6f 73 69 iption":."Composer.allows.reposi
cc6c0 74 6f 72 69 65 73 20 74 6f 20 64 65 66 69 6e 65 20 61 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 20 tories.to.define.a.notification.
cc6e0 55 52 4c 2c 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 67 65 74 20 6e 6f 74 69 66 69 65 64 20 77 URL,.so.that.they.get.notified.w
cc700 68 65 6e 65 76 65 72 20 61 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 74 68 61 74 20 72 65 70 6f henever.a.package.from.that.repo
cc720 73 69 74 6f 72 79 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 2e 20 54 68 69 73 20 6f 70 74 69 6f 6e sitory.is.installed..This.option
cc740 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 64 69 73 61 62 6c 65 20 74 68 61 74 20 62 65 68 61 .allows.you.to.disable.that.beha
cc760 76 69 6f 75 72 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 74 72 75 65 2e 22 0a 20 20 20 20 20 20 viour,.defaults.to.true.".......
cc780 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 69 ..........},................."gi
cc7a0 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 thub-protocols":.{..............
cc7c0 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 ......."type":."array",.........
cc7e0 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 6c 69 ............"description":."A.li
cc800 73 74 20 6f 66 20 70 72 6f 74 6f 63 6f 6c 73 20 74 6f 20 75 73 65 20 66 6f 72 20 67 69 74 68 75 st.of.protocols.to.use.for.githu
cc820 62 2e 63 6f 6d 20 63 6c 6f 6e 65 73 2c 20 69 6e 20 70 72 69 6f 72 69 74 79 20 6f 72 64 65 72 2c b.com.clones,.in.priority.order,
cc840 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5b 5c 22 67 69 74 5c 22 2c 20 5c 22 68 74 74 70 73 5c 22 .defaults.to.[\"git\",.\"https\"
cc860 2c 20 5c 22 68 74 74 70 5c 22 5d 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,.\"http\"].",..................
cc880 20 20 20 22 69 74 65 6d 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..."items":.{...................
cc8a0 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 0a 20 20 20 20 20 20 20 20 20 ......"type":."string"..........
cc8c0 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a ...........}.................},.
cc8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 69 74 68 75 62 2d 6f 61 75 74 68 22 3a 20 ................"github-oauth":.
cc900 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f {....................."type":."o
cc920 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 bject",....................."des
cc940 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 68 61 73 68 20 6f 66 20 64 6f 6d 61 69 6e 20 6e 61 6d cription":."A.hash.of.domain.nam
cc960 65 20 3d 3e 20 67 69 74 68 75 62 20 41 50 49 20 6f 61 75 74 68 20 74 6f 6b 65 6e 73 2c 20 74 79 e.=>.github.API.oauth.tokens,.ty
cc980 70 69 63 61 6c 6c 79 20 7b 5c 22 67 69 74 68 75 62 2e 63 6f 6d 5c 22 3a 5c 22 3c 74 6f 6b 65 6e pically.{\"github.com\":\"<token
cc9a0 3e 5c 22 7d 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 >\"}.",....................."add
cc9c0 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 itionalProperties":.true........
cc9e0 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 69 74 .........},................."git
cca00 6c 61 62 2d 6f 61 75 74 68 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lab-oauth":.{...................
cca20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 .."type":."object",.............
cca40 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 68 61 73 68 20 6f ........"description":."A.hash.o
cca60 66 20 64 6f 6d 61 69 6e 20 6e 61 6d 65 20 3d 3e 20 67 69 74 6c 61 62 20 41 50 49 20 6f 61 75 74 f.domain.name.=>.gitlab.API.oaut
cca80 68 20 74 6f 6b 65 6e 73 2c 20 74 79 70 69 63 61 6c 6c 79 20 7b 5c 22 67 69 74 6c 61 62 2e 63 6f h.tokens,.typically.{\"gitlab.co
ccaa0 6d 5c 22 3a 5c 22 3c 74 6f 6b 65 6e 3e 5c 22 7d 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 m\":\"<token>\"}.",.............
ccac0 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 ........"additionalProperties":.
ccae0 74 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 true.................},.........
ccb00 20 20 20 20 20 20 20 20 22 64 69 73 61 62 6c 65 2d 74 6c 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 ........"disable-tls":.{........
ccb20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 62 6f 6f 6c 65 61 6e 22 2c 0a ............."type":."boolean",.
ccb40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e ...................."description
ccb60 22 3a 20 22 44 65 66 61 75 6c 74 73 20 74 6f 20 60 66 61 6c 73 65 60 2e 20 49 66 20 73 65 74 20 ":."Defaults.to.`false`..If.set.
ccb80 74 6f 20 74 72 75 65 20 61 6c 6c 20 48 54 54 50 53 20 55 52 4c 73 20 77 69 6c 6c 20 62 65 20 74 to.true.all.HTTPS.URLs.will.be.t
ccba0 72 69 65 64 20 77 69 74 68 20 48 54 54 50 20 69 6e 73 74 65 61 64 20 61 6e 64 20 6e 6f 20 6e 65 ried.with.HTTP.instead.and.no.ne
ccbc0 74 77 6f 72 6b 20 6c 65 76 65 6c 20 65 6e 63 72 79 70 74 69 6f 6e 20 69 73 20 70 65 72 66 6f 72 twork.level.encryption.is.perfor
ccbe0 6d 65 64 2e 20 45 6e 61 62 6c 69 6e 67 20 74 68 69 73 20 69 73 20 61 20 73 65 63 75 72 69 74 79 med..Enabling.this.is.a.security
ccc00 20 72 69 73 6b 20 61 6e 64 20 69 73 20 4e 4f 54 20 72 65 63 6f 6d 6d 65 6e 64 65 64 2e 20 54 68 .risk.and.is.NOT.recommended..Th
ccc20 65 20 62 65 74 74 65 72 20 77 61 79 20 69 73 20 74 6f 20 65 6e 61 62 6c 65 20 74 68 65 20 70 68 e.better.way.is.to.enable.the.ph
ccc40 70 5f 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 69 6e 20 70 68 70 2e 69 6e 69 2e 22 p_openssl.extension.in.php.ini."
ccc60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................},.............
ccc80 20 20 20 20 22 73 65 63 75 72 65 2d 68 74 74 70 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 ...."secure-http":.{............
ccca0 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 62 6f 6f 6c 65 61 6e 22 2c 0a 20 20 20 20 ........."type":."boolean",.....
cccc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 ................"description":."
ccce0 44 65 66 61 75 6c 74 73 20 74 6f 20 60 74 72 75 65 60 2e 20 49 66 20 73 65 74 20 74 6f 20 74 72 Defaults.to.`true`..If.set.to.tr
ccd00 75 65 20 6f 6e 6c 79 20 48 54 54 50 53 20 55 52 4c 73 20 61 72 65 20 61 6c 6c 6f 77 65 64 20 74 ue.only.HTTPS.URLs.are.allowed.t
ccd20 6f 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 76 69 61 20 43 6f 6d 70 6f 73 65 72 2e 20 49 66 o.be.downloaded.via.Composer..If
ccd40 20 79 6f 75 20 72 65 61 6c 6c 79 20 61 62 73 6f 6c 75 74 65 6c 79 20 6e 65 65 64 20 48 54 54 50 .you.really.absolutely.need.HTTP
ccd60 20 61 63 63 65 73 73 20 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 65 6e 20 79 6f 75 20 63 61 .access.to.something.then.you.ca
ccd80 6e 20 64 69 73 61 62 6c 65 20 69 74 2c 20 62 75 74 20 75 73 69 6e 67 20 5c 22 4c 65 74 27 73 20 n.disable.it,.but.using.\"Let's.
ccda0 45 6e 63 72 79 70 74 5c 22 20 74 6f 20 67 65 74 20 61 20 66 72 65 65 20 53 53 4c 20 63 65 72 74 Encrypt\".to.get.a.free.SSL.cert
ccdc0 69 66 69 63 61 74 65 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 61 20 62 65 74 74 65 72 20 61 6c ificate.is.generally.a.better.al
ccde0 74 65 72 6e 61 74 69 76 65 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 ternative.".................},..
cce00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 61 66 69 6c 65 22 3a 20 7b 0a 20 20 20 20 20 ..............."cafile":.{......
cce20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c ..............."type":."string",
cce40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f ....................."descriptio
cce60 6e 22 3a 20 22 41 20 77 61 79 20 74 6f 20 73 65 74 20 74 68 65 20 70 61 74 68 20 74 6f 20 74 68 n":."A.way.to.set.the.path.to.th
cce80 65 20 6f 70 65 6e 73 73 6c 20 43 41 20 66 69 6c 65 2e 20 49 6e 20 50 48 50 20 35 2e 36 2b 20 79 e.openssl.CA.file..In.PHP.5.6+.y
ccea0 6f 75 20 73 68 6f 75 6c 64 20 72 61 74 68 65 72 20 73 65 74 20 74 68 69 73 20 76 69 61 20 6f 70 ou.should.rather.set.this.via.op
ccec0 65 6e 73 73 6c 2e 63 61 66 69 6c 65 20 69 6e 20 70 68 70 2e 69 6e 69 2c 20 61 6c 74 68 6f 75 67 enssl.cafile.in.php.ini,.althoug
ccee0 68 20 50 48 50 20 35 2e 36 2b 20 73 68 6f 75 6c 64 20 62 65 20 61 62 6c 65 20 74 6f 20 64 65 74 h.PHP.5.6+.should.be.able.to.det
ccf00 65 63 74 20 79 6f 75 72 20 73 79 73 74 65 6d 20 43 41 20 66 69 6c 65 20 61 75 74 6f 6d 61 74 69 ect.your.system.CA.file.automati
ccf20 63 61 6c 6c 79 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 cally.".................},......
ccf40 20 20 20 20 20 20 20 20 20 20 20 22 63 61 70 61 74 68 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ..........."capath":.{..........
ccf60 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 ..........."type":."string",....
ccf80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 ................."description":.
ccfa0 22 49 66 20 63 61 66 69 6c 65 20 69 73 20 6e 6f 74 20 73 70 65 63 69 66 69 65 64 20 6f 72 20 69 "If.cafile.is.not.specified.or.i
ccfc0 66 20 74 68 65 20 63 65 72 74 69 66 69 63 61 74 65 20 69 73 20 6e 6f 74 20 66 6f 75 6e 64 20 74 f.the.certificate.is.not.found.t
ccfe0 68 65 72 65 2c 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 70 6f 69 6e 74 65 64 20 74 6f 20 62 here,.the.directory.pointed.to.b
cd000 79 20 63 61 70 61 74 68 20 69 73 20 73 65 61 72 63 68 65 64 20 66 6f 72 20 61 20 73 75 69 74 61 y.capath.is.searched.for.a.suita
cd020 62 6c 65 20 63 65 72 74 69 66 69 63 61 74 65 2e 20 63 61 70 61 74 68 20 6d 75 73 74 20 62 65 20 ble.certificate..capath.must.be.
cd040 61 20 63 6f 72 72 65 63 74 6c 79 20 68 61 73 68 65 64 20 63 65 72 74 69 66 69 63 61 74 65 20 64 a.correctly.hashed.certificate.d
cd060 69 72 65 63 74 6f 72 79 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 irectory.".................},...
cd080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 68 74 74 70 2d 62 61 73 69 63 22 3a 20 7b 0a 20 20 .............."http-basic":.{...
cd0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 .................."type":."objec
cd0c0 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 t",....................."descrip
cd0e0 74 69 6f 6e 22 3a 20 22 41 20 68 61 73 68 20 6f 66 20 64 6f 6d 61 69 6e 20 6e 61 6d 65 20 3d 3e tion":."A.hash.of.domain.name.=>
cd100 20 7b 5c 22 75 73 65 72 6e 61 6d 65 5c 22 3a 20 5c 22 2e 2e 2e 5c 22 2c 20 5c 22 70 61 73 73 77 .{\"username\":.\"...\",.\"passw
cd120 6f 72 64 5c 22 3a 20 5c 22 2e 2e 2e 5c 22 7d 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ord\":.\"...\"}.",..............
cd140 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 ......."additionalProperties":.t
cd160 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 rue.................},..........
cd180 20 20 20 20 20 20 20 22 73 74 6f 72 65 2d 61 75 74 68 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 ......."store-auths":.{.........
cd1a0 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 73 74 72 69 6e 67 22 2c 20 22 ............"type":.["string",."
cd1c0 62 6f 6f 6c 65 61 6e 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 boolean"],....................."
cd1e0 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 57 68 61 74 20 74 6f 20 64 6f 20 61 66 74 65 72 20 description":."What.to.do.after.
cd200 70 72 6f 6d 70 74 69 6e 67 20 66 6f 72 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 2c 20 6f 6e prompting.for.authentication,.on
cd220 65 20 6f 66 3a 20 74 72 75 65 20 28 73 74 6f 72 65 29 2c 20 66 61 6c 73 65 20 28 64 6f 20 6e 6f e.of:.true.(store),.false.(do.no
cd240 74 20 73 74 6f 72 65 29 20 6f 72 20 5c 22 70 72 6f 6d 70 74 5c 22 20 28 61 73 6b 20 65 76 65 72 t.store).or.\"prompt\".(ask.ever
cd260 79 20 74 69 6d 65 29 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 70 72 6f 6d 70 74 2e 22 0a 20 20 y.time),.defaults.to.prompt."...
cd280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............},................
cd2a0 20 22 70 6c 61 74 66 6f 72 6d 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."platform":.{..................
cd2c0 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ..."type":."object",............
cd2e0 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 ........."description":."This.is
cd300 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 20 61 .a.hash.of.package.name.(keys).a
cd320 6e 64 20 76 65 72 73 69 6f 6e 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 77 69 6c 6c 20 62 65 nd.version.(values).that.will.be
cd340 20 75 73 65 64 20 74 6f 20 6d 6f 63 6b 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 70 61 63 6b 61 .used.to.mock.the.platform.packa
cd360 67 65 73 20 6f 6e 20 74 68 69 73 20 6d 61 63 68 69 6e 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 ges.on.this.machine.",..........
cd380 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 ..........."additionalProperties
cd3a0 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 ":.true.................},......
cd3c0 20 20 20 20 20 20 20 20 20 20 20 22 76 65 6e 64 6f 72 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 ..........."vendor-dir":.{......
cd3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c ..............."type":."string",
cd400 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f ....................."descriptio
cd420 6e 22 3a 20 22 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 61 6c 6c 20 70 61 63 6b n":."The.location.where.all.pack
cd440 61 67 65 73 20 61 72 65 20 69 6e 73 74 61 6c 6c 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 ages.are.installed,.defaults.to.
cd460 5c 22 76 65 6e 64 6f 72 5c 22 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a \"vendor\".".................},.
cd480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 62 69 6e 2d 64 69 72 22 3a 20 7b 0a 20 20 20 ................"bin-dir":.{....
cd4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 ................."type":."string
cd4c0 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 ",....................."descript
cd4e0 69 6f 6e 22 3a 20 22 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 61 6c 6c 20 62 69 ion":."The.location.where.all.bi
cd500 6e 61 72 69 65 73 20 61 72 65 20 6c 69 6e 6b 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c naries.are.linked,.defaults.to.\
cd520 22 76 65 6e 64 6f 72 2f 62 69 6e 5c 22 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "vendor/bin\".".................
cd540 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 61 74 61 2d 64 69 72 22 3a 20 7b },................."data-dir":.{
cd560 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 ....................."type":."st
cd580 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 ring",....................."desc
cd5a0 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 6f 6c ription":."The.location.where.ol
cd5c0 64 20 70 68 61 72 20 66 69 6c 65 73 20 61 72 65 20 73 74 6f 72 65 64 2c 20 64 65 66 61 75 6c 74 d.phar.files.are.stored,.default
cd5e0 73 20 74 6f 20 5c 22 24 68 6f 6d 65 5c 22 20 65 78 63 65 70 74 20 6f 6e 20 58 44 47 20 42 61 73 s.to.\"$home\".except.on.XDG.Bas
cd600 65 20 44 69 72 65 63 74 6f 72 79 20 63 6f 6d 70 6c 69 61 6e 74 20 75 6e 69 78 65 73 2e 22 0a 20 e.Directory.compliant.unixes."..
cd620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............},...............
cd640 20 20 22 63 61 63 68 65 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .."cache-dir":.{................
cd660 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 ....."type":."string",..........
cd680 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 6c ..........."description":."The.l
cd6a0 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 61 6c 6c 20 63 61 63 68 65 73 20 61 72 65 20 6c 6f 63 ocation.where.all.caches.are.loc
cd6c0 61 74 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 7e 2f 2e 63 6f 6d 70 6f 73 65 72 2f ated,.defaults.to.\"~/.composer/
cd6e0 63 61 63 68 65 5c 22 20 6f 6e 20 2a 6e 69 78 20 61 6e 64 20 5c 22 25 4c 4f 43 41 4c 41 50 50 44 cache\".on.*nix.and.\"%LOCALAPPD
cd700 41 54 41 25 5c 5c 43 6f 6d 70 6f 73 65 72 5c 22 20 6f 6e 20 77 69 6e 64 6f 77 73 2e 22 0a 20 20 ATA%\\Composer\".on.windows."...
cd720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............},................
cd740 20 22 63 61 63 68 65 2d 66 69 6c 65 73 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 ."cache-files-dir":.{...........
cd760 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 .........."type":."string",.....
cd780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 ................"description":."
cd7a0 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 66 69 6c 65 73 20 28 7a 69 70 20 64 6f The.location.where.files.(zip.do
cd7c0 77 6e 6c 6f 61 64 73 29 20 61 72 65 20 63 61 63 68 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f wnloads).are.cached,.defaults.to
cd7e0 20 5c 22 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 66 69 6c 65 73 5c 22 2e 22 0a 20 20 20 20 20 20 .\"{$cache-dir}/files\".".......
cd800 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 61 ..........},................."ca
cd820 63 68 65 2d 72 65 70 6f 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 che-repo-dir":.{................
cd840 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 ....."type":."string",..........
cd860 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 6c ..........."description":."The.l
cd880 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 72 65 70 6f 20 28 67 69 74 2f 68 67 20 72 65 70 6f 20 ocation.where.repo.(git/hg.repo.
cd8a0 63 6c 6f 6e 65 73 29 20 61 72 65 20 63 61 63 68 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 clones).are.cached,.defaults.to.
cd8c0 5c 22 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 72 65 70 6f 5c 22 2e 22 0a 20 20 20 20 20 20 20 20 \"{$cache-dir}/repo\".".........
cd8e0 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 61 63 68 ........},................."cach
cd900 65 2d 76 63 73 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e-vcs-dir":.{...................
cd920 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 .."type":."string",.............
cd940 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 6c 6f 63 61 ........"description":."The.loca
cd960 74 69 6f 6e 20 77 68 65 72 65 20 76 63 73 20 69 6e 66 6f 73 20 28 67 69 74 20 63 6c 6f 6e 65 73 tion.where.vcs.infos.(git.clones
cd980 2c 20 67 69 74 68 75 62 20 61 70 69 20 63 61 6c 6c 73 2c 20 65 74 63 2e 20 77 68 65 6e 20 72 65 ,.github.api.calls,.etc..when.re
cd9a0 61 64 69 6e 67 20 76 63 73 20 72 65 70 6f 73 29 20 61 72 65 20 63 61 63 68 65 64 2c 20 64 65 66 ading.vcs.repos).are.cached,.def
cd9c0 61 75 6c 74 73 20 74 6f 20 5c 22 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 76 63 73 5c 22 2e 22 0a aults.to.\"{$cache-dir}/vcs\".".
cd9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................},..............
cda00 20 20 20 22 63 61 63 68 65 2d 74 74 6c 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..."cache-ttl":.{...............
cda20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 69 6e 74 65 67 65 72 22 2c 0a 20 20 20 20 20 20 20 ......"type":."integer",........
cda40 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 ............."description":."The
cda60 20 64 65 66 61 75 6c 74 20 63 61 63 68 65 20 74 69 6d 65 2d 74 6f 2d 6c 69 76 65 2c 20 64 65 66 .default.cache.time-to-live,.def
cda80 61 75 6c 74 73 20 74 6f 20 31 35 35 35 32 30 30 30 20 28 36 20 6d 6f 6e 74 68 73 29 2e 22 0a 20 aults.to.15552000.(6.months)."..
cdaa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............},...............
cdac0 20 20 22 63 61 63 68 65 2d 66 69 6c 65 73 2d 74 74 6c 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 .."cache-files-ttl":.{..........
cdae0 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 69 6e 74 65 67 65 72 22 2c 0a 20 20 ..........."type":."integer",...
cdb00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a .................."description":
cdb20 20 22 54 68 65 20 63 61 63 68 65 20 74 69 6d 65 2d 74 6f 2d 6c 69 76 65 20 66 6f 72 20 66 69 6c ."The.cache.time-to-live.for.fil
cdb40 65 73 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 63 61 63 es,.defaults.to.the.value.of.cac
cdb60 68 65 2d 74 74 6c 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 he-ttl.".................},.....
cdb80 20 20 20 20 20 20 20 20 20 20 20 20 22 63 61 63 68 65 2d 66 69 6c 65 73 2d 6d 61 78 73 69 7a 65 ............"cache-files-maxsize
cdba0 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a ":.{....................."type":
cdbc0 20 5b 22 73 74 72 69 6e 67 22 2c 20 22 69 6e 74 65 67 65 72 22 5d 2c 0a 20 20 20 20 20 20 20 20 .["string",."integer"],.........
cdbe0 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 ............"description":."The.
cdc00 63 61 63 68 65 20 6d 61 78 20 73 69 7a 65 20 66 6f 72 20 74 68 65 20 66 69 6c 65 73 20 63 61 63 cache.max.size.for.the.files.cac
cdc20 68 65 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 33 30 30 4d 69 42 5c 22 2e 22 0a 20 20 20 he,.defaults.to.\"300MiB\"."....
cdc40 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............},.................
cdc60 22 62 69 6e 2d 63 6f 6d 70 61 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "bin-compat":.{.................
cdc80 20 20 20 20 22 65 6e 75 6d 22 3a 20 5b 22 61 75 74 6f 22 2c 20 22 66 75 6c 6c 22 5d 2c 0a 20 20 ...."enum":.["auto",."full"],...
cdca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a .................."description":
cdcc0 20 22 54 68 65 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 6f 66 20 74 68 65 20 62 69 6e 61 72 ."The.compatibility.of.the.binar
cdce0 69 65 73 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 61 75 74 6f 5c 22 20 28 61 75 74 6f 6d ies,.defaults.to.\"auto\".(autom
cdd00 61 74 69 63 61 6c 6c 79 20 67 75 65 73 73 65 64 29 20 61 6e 64 20 63 61 6e 20 62 65 20 5c 22 66 atically.guessed).and.can.be.\"f
cdd20 75 6c 6c 5c 22 20 28 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 62 6f 74 68 20 57 69 6e 64 ull\".(compatible.with.both.Wind
cdd40 6f 77 73 20 61 6e 64 20 55 6e 69 78 2d 62 61 73 65 64 20 73 79 73 74 65 6d 73 29 2e 22 0a 20 20 ows.and.Unix-based.systems)."...
cdd60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............},................
cdd80 20 22 64 69 73 63 61 72 64 2d 63 68 61 6e 67 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 ."discard-changes":.{...........
cdda0 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 73 74 72 69 6e 67 22 2c 20 22 62 6f .........."type":.["string",."bo
cddc0 6f 6c 65 61 6e 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 olean"],....................."de
cdde0 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 64 65 66 61 75 6c 74 20 73 74 79 6c 65 20 6f scription":."The.default.style.o
cde00 66 20 68 61 6e 64 6c 69 6e 67 20 64 69 72 74 79 20 75 70 64 61 74 65 73 2c 20 64 65 66 61 75 6c f.handling.dirty.updates,.defaul
cde20 74 73 20 74 6f 20 66 61 6c 73 65 20 61 6e 64 20 63 61 6e 20 62 65 20 61 6e 79 20 6f 66 20 74 72 ts.to.false.and.can.be.any.of.tr
cde40 75 65 2c 20 66 61 6c 73 65 20 6f 72 20 5c 22 73 74 61 73 68 5c 22 2e 22 0a 20 20 20 20 20 20 20 ue,.false.or.\"stash\"."........
cde60 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 75 74 .........},................."aut
cde80 6f 6c 6f 61 64 65 72 2d 73 75 66 66 69 78 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 oloader-suffix":.{..............
cdea0 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 ......."type":."string",........
cdec0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 70 74 ............."description":."Opt
cdee0 69 6f 6e 61 6c 20 73 74 72 69 6e 67 20 74 6f 20 62 65 20 75 73 65 64 20 61 73 20 61 20 73 75 66 ional.string.to.be.used.as.a.suf
cdf00 66 69 78 20 66 6f 72 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 43 6f 6d 70 6f 73 65 72 20 61 fix.for.the.generated.Composer.a
cdf20 75 74 6f 6c 6f 61 64 65 72 2e 20 57 68 65 6e 20 6e 75 6c 6c 20 61 20 72 61 6e 64 6f 6d 20 6f 6e utoloader..When.null.a.random.on
cdf40 65 20 77 69 6c 6c 20 62 65 20 67 65 6e 65 72 61 74 65 64 2e 22 0a 20 20 20 20 20 20 20 20 20 20 e.will.be.generated."...........
cdf60 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6f 70 74 69 6d 69 ......},................."optimi
cdf80 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ze-autoloader":.{...............
cdfa0 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 62 6f 6f 6c 65 61 6e 22 2c 0a 20 20 20 20 20 20 20 ......"type":."boolean",........
cdfc0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 6c 77 ............."description":."Alw
cdfe0 61 79 73 20 6f 70 74 69 6d 69 7a 65 20 77 68 65 6e 20 64 75 6d 70 69 6e 67 20 74 68 65 20 61 75 ays.optimize.when.dumping.the.au
ce000 74 6f 6c 6f 61 64 65 72 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 toloader.".................},...
ce020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 65 70 65 6e 64 2d 61 75 74 6f 6c 6f 61 64 65 .............."prepend-autoloade
ce040 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 r":.{....................."type"
ce060 3a 20 22 62 6f 6f 6c 65 61 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :."boolean",....................
ce080 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 49 66 20 66 61 6c 73 65 2c 20 74 68 65 20 63 ."description":."If.false,.the.c
ce0a0 6f 6d 70 6f 73 65 72 20 61 75 74 6f 6c 6f 61 64 65 72 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 70 omposer.autoloader.will.not.be.p
ce0c0 72 65 70 65 6e 64 65 64 20 74 6f 20 65 78 69 73 74 69 6e 67 20 61 75 74 6f 6c 6f 61 64 65 72 73 repended.to.existing.autoloaders
ce0e0 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 74 72 75 65 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 ,.defaults.to.true."............
ce100 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 6c 61 73 73 6d 61 .....},................."classma
ce120 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 p-authoritative":.{.............
ce140 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 62 6f 6f 6c 65 61 6e 22 2c 0a 20 20 20 20 20 ........"type":."boolean",......
ce160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 49 ..............."description":."I
ce180 66 20 74 72 75 65 2c 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 20 61 75 74 6f 6c 6f 61 64 65 72 20 f.true,.the.composer.autoloader.
ce1a0 77 69 6c 6c 20 6e 6f 74 20 73 63 61 6e 20 74 68 65 20 66 69 6c 65 73 79 73 74 65 6d 20 66 6f 72 will.not.scan.the.filesystem.for
ce1c0 20 63 6c 61 73 73 65 73 20 74 68 61 74 20 61 72 65 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 74 .classes.that.are.not.found.in.t
ce1e0 68 65 20 63 6c 61 73 73 20 6d 61 70 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 66 61 6c 73 65 2e he.class.map,.defaults.to.false.
ce200 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ".................},............
ce220 20 20 20 20 20 22 67 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 ....."github-domains":.{........
ce240 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 ............."type":."array",...
ce260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a .................."description":
ce280 20 22 41 20 6c 69 73 74 20 6f 66 20 64 6f 6d 61 69 6e 73 20 74 6f 20 75 73 65 20 69 6e 20 67 69 ."A.list.of.domains.to.use.in.gi
ce2a0 74 68 75 62 20 6d 6f 64 65 2e 20 54 68 69 73 20 69 73 20 75 73 65 64 20 66 6f 72 20 47 69 74 48 thub.mode..This.is.used.for.GitH
ce2c0 75 62 20 45 6e 74 65 72 70 72 69 73 65 20 73 65 74 75 70 73 2c 20 64 65 66 61 75 6c 74 73 20 74 ub.Enterprise.setups,.defaults.t
ce2e0 6f 20 5b 5c 22 67 69 74 68 75 62 2e 63 6f 6d 5c 22 5d 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 o.[\"github.com\"].",...........
ce300 20 20 20 20 20 20 20 20 20 20 22 69 74 65 6d 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 .........."items":.{............
ce320 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 0a 20 20 ............."type":."string"...
ce340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..................}.............
ce360 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 69 74 68 75 62 2d 65 ....},................."github-e
ce380 78 70 6f 73 65 2d 68 6f 73 74 6e 61 6d 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 xpose-hostname":.{..............
ce3a0 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 62 6f 6f 6c 65 61 6e 22 2c 0a 20 20 20 20 20 20 ......."type":."boolean",.......
ce3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 44 65 .............."description":."De
ce3e0 66 61 75 6c 74 73 20 74 6f 20 74 72 75 65 2e 20 49 66 20 73 65 74 20 74 6f 20 66 61 6c 73 65 2c faults.to.true..If.set.to.false,
ce400 20 74 68 65 20 4f 41 75 74 68 20 74 6f 6b 65 6e 73 20 63 72 65 61 74 65 64 20 74 6f 20 61 63 63 .the.OAuth.tokens.created.to.acc
ce420 65 73 73 20 74 68 65 20 67 69 74 68 75 62 20 41 50 49 20 77 69 6c 6c 20 68 61 76 65 20 61 20 64 ess.the.github.API.will.have.a.d
ce440 61 74 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 6d 61 63 68 69 6e 65 20 68 6f 73 74 6e ate.instead.of.the.machine.hostn
ce460 61 6d 65 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 ame.".................},........
ce480 20 20 20 20 20 20 20 20 20 22 67 69 74 6c 61 62 2d 64 6f 6d 61 69 6e 73 22 3a 20 7b 0a 20 20 20 ........."gitlab-domains":.{....
ce4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 ................."type":."array"
ce4c0 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 ,....................."descripti
ce4e0 6f 6e 22 3a 20 22 41 20 6c 69 73 74 20 6f 66 20 64 6f 6d 61 69 6e 73 20 74 6f 20 75 73 65 20 69 on":."A.list.of.domains.to.use.i
ce500 6e 20 67 69 74 6c 61 62 20 6d 6f 64 65 2e 20 54 68 69 73 20 69 73 20 75 73 65 64 20 66 6f 72 20 n.gitlab.mode..This.is.used.for.
ce520 63 75 73 74 6f 6d 20 47 69 74 4c 61 62 20 73 65 74 75 70 73 2c 20 64 65 66 61 75 6c 74 73 20 74 custom.GitLab.setups,.defaults.t
ce540 6f 20 5b 5c 22 67 69 74 6c 61 62 2e 63 6f 6d 5c 22 5d 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 o.[\"gitlab.com\"].",...........
ce560 20 20 20 20 20 20 20 20 20 20 22 69 74 65 6d 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 .........."items":.{............
ce580 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 0a 20 20 ............."type":."string"...
ce5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..................}.............
ce5c0 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 72 63 68 69 76 65 2d ....},................."archive-
ce5e0 66 6f 72 6d 61 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 format":.{....................."
ce600 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 type":."string",................
ce620 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 64 65 66 61 75 6c 74 ....."description":."The.default
ce640 20 61 72 63 68 69 76 69 6e 67 20 66 6f 72 6d 61 74 20 77 68 65 6e 20 6e 6f 74 20 70 72 6f 76 69 .archiving.format.when.not.provi
ce660 64 65 64 20 6f 6e 20 63 6c 69 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 74 61 72 5c 22 2e ded.on.cli,.defaults.to.\"tar\".
ce680 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ".................},............
ce6a0 20 20 20 20 20 22 61 72 63 68 69 76 65 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 ....."archive-dir":.{...........
ce6c0 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 .........."type":."string",.....
ce6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 ................"description":."
ce700 54 68 65 20 64 65 66 61 75 6c 74 20 61 72 63 68 69 76 65 20 70 61 74 68 20 77 68 65 6e 20 6e 6f The.default.archive.path.when.no
ce720 74 20 70 72 6f 76 69 64 65 64 20 6f 6e 20 63 6c 69 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c t.provided.on.cli,.defaults.to.\
ce740 22 2e 5c 22 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 ".\".".................}........
ce760 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 65 78 74 72 61 .....}.........},........."extra
ce780 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 6f 62 6a 65 63 ":.{............."type":.["objec
ce7a0 74 22 2c 20 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 t",."array"],............."descr
ce7c0 69 70 74 69 6f 6e 22 3a 20 22 41 72 62 69 74 72 61 72 79 20 65 78 74 72 61 20 64 61 74 61 20 74 iption":."Arbitrary.extra.data.t
ce7e0 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 62 79 20 70 6c 75 67 69 6e 73 2c 20 66 6f 72 20 hat.can.be.used.by.plugins,.for.
ce800 65 78 61 6d 70 6c 65 2c 20 70 61 63 6b 61 67 65 20 6f 66 20 74 79 70 65 20 63 6f 6d 70 6f 73 65 example,.package.of.type.compose
ce820 72 2d 70 6c 75 67 69 6e 20 6d 61 79 20 68 61 76 65 20 61 20 27 63 6c 61 73 73 27 20 6b 65 79 20 r-plugin.may.have.a.'class'.key.
ce840 64 65 66 69 6e 69 6e 67 20 61 6e 20 69 6e 73 74 61 6c 6c 65 72 20 63 6c 61 73 73 20 6e 61 6d 65 defining.an.installer.class.name
ce860 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 .",............."additionalPrope
ce880 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 rties":.true.........},.........
ce8a0 22 61 75 74 6f 6c 6f 61 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 "autoload":.{............."type"
ce8c0 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 :."object",............."descrip
ce8e0 74 69 6f 6e 22 3a 20 22 44 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 68 6f 77 20 74 68 65 20 70 tion":."Description.of.how.the.p
ce900 61 63 6b 61 67 65 20 63 61 6e 20 62 65 20 61 75 74 6f 6c 6f 61 64 65 64 2e 22 2c 0a 20 20 20 20 ackage.can.be.autoloaded.",.....
ce920 20 20 20 20 20 20 20 20 22 70 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 ........"properties":.{.........
ce940 20 20 20 20 20 20 20 20 22 70 73 72 2d 30 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ........"psr-0":.{..............
ce960 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 ......."type":."object",........
ce980 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 ............."description":."Thi
ce9a0 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 6e 61 6d 65 73 70 61 63 65 73 20 28 6b 65 79 73 29 s.is.a.hash.of.namespaces.(keys)
ce9c0 20 61 6e 64 20 74 68 65 20 64 69 72 65 63 74 6f 72 69 65 73 20 74 68 65 79 20 63 61 6e 20 62 65 .and.the.directories.they.can.be
ce9e0 20 66 6f 75 6e 64 20 69 6e 74 6f 20 28 76 61 6c 75 65 73 2c 20 63 61 6e 20 62 65 20 61 72 72 61 .found.into.(values,.can.be.arra
cea00 79 73 20 6f 66 20 70 61 74 68 73 29 20 62 79 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 2e 22 ys.of.paths).by.the.autoloader."
cea20 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 ,....................."additiona
cea40 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 lProperties":.true..............
cea60 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 73 72 2d 34 22 3a 20 7b ...},................."psr-4":.{
cea80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 ....................."type":."ob
ceaa0 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 ject",....................."desc
ceac0 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 6e 61 6d ription":."This.is.a.hash.of.nam
ceae0 65 73 70 61 63 65 73 20 28 6b 65 79 73 29 20 61 6e 64 20 74 68 65 20 50 53 52 2d 34 20 64 69 72 espaces.(keys).and.the.PSR-4.dir
ceb00 65 63 74 6f 72 69 65 73 20 74 68 65 79 20 63 61 6e 20 6d 61 70 20 74 6f 20 28 76 61 6c 75 65 73 ectories.they.can.map.to.(values
ceb20 2c 20 63 61 6e 20 62 65 20 61 72 72 61 79 73 20 6f 66 20 70 61 74 68 73 29 20 62 79 20 74 68 65 ,.can.be.arrays.of.paths).by.the
ceb40 20 61 75 74 6f 6c 6f 61 64 65 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .autoloader.",..................
ceb60 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a ..."additionalProperties":.true.
ceb80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................},..............
ceba0 20 20 20 22 63 6c 61 73 73 6d 61 70 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..."classmap":.{................
cebc0 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 20 20 ....."type":."array",...........
cebe0 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 .........."description":."This.i
cec00 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 64 69 72 65 63 74 6f 72 69 65 73 20 74 68 61 74 20 63 s.an.array.of.directories.that.c
cec20 6f 6e 74 61 69 6e 20 63 6c 61 73 73 65 73 20 74 6f 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e ontain.classes.to.be.included.in
cec40 20 74 68 65 20 63 6c 61 73 73 2d 6d 61 70 20 67 65 6e 65 72 61 74 69 6f 6e 20 70 72 6f 63 65 73 .the.class-map.generation.proces
cec60 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 s.".................},..........
cec80 20 20 20 20 20 20 20 22 66 69 6c 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......."files":.{...............
ceca0 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 20 ......"type":."array",..........
cecc0 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 ..........."description":."This.
cece0 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 66 69 6c 65 73 20 74 68 61 74 20 61 72 65 20 61 6c is.an.array.of.files.that.are.al
ced00 77 61 79 73 20 72 65 71 75 69 72 65 64 20 6f 6e 20 65 76 65 72 79 20 72 65 71 75 65 73 74 2e 22 ways.required.on.every.request."
ced20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................},.............
ced40 20 20 20 20 22 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 22 3a 20 7b 0a 20 ...."exclude-from-classmap":.{..
ced60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 ..................."type":."arra
ced80 79 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 y",....................."descrip
ceda0 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 70 61 74 74 tion":."This.is.an.array.of.patt
cedc0 65 72 6e 73 20 74 6f 20 65 78 63 6c 75 64 65 20 66 72 6f 6d 20 61 75 74 6f 6c 6f 61 64 20 63 6c erns.to.exclude.from.autoload.cl
cede0 61 73 73 6d 61 70 20 67 65 6e 65 72 61 74 69 6f 6e 2e 20 28 65 2e 67 2e 20 5c 22 65 78 63 6c 75 assmap.generation..(e.g..\"exclu
cee00 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 5c 22 3a 20 5b 5c 22 2f 74 65 73 74 2f 5c 22 2c de-from-classmap\":.[\"/test/\",
cee20 20 5c 22 2f 74 65 73 74 73 2f 5c 22 2c 20 5c 22 2f 54 65 73 74 73 2f 5c 22 5d 22 0a 20 20 20 20 .\"/tests/\",.\"/Tests/\"]".....
cee40 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 ............}.............}.....
cee60 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 61 75 74 6f 6c 6f 61 64 2d 64 65 76 22 3a 20 7b ....},........."autoload-dev":.{
cee80 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 ............."type":."object",..
ceea0 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 44 65 73 63 72 ..........."description":."Descr
ceec0 69 70 74 69 6f 6e 20 6f 66 20 61 64 64 69 74 69 6f 6e 61 6c 20 61 75 74 6f 6c 6f 61 64 20 72 75 iption.of.additional.autoload.ru
ceee0 6c 65 73 20 66 6f 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 70 75 72 70 6f 73 65 20 28 65 67 2e les.for.development.purpose.(eg.
cef00 20 61 20 74 65 73 74 20 73 75 69 74 65 29 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 70 .a.test.suite).",............."p
cef20 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 roperties":.{................."p
cef40 73 72 2d 30 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 sr-0":.{....................."ty
cef60 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pe":."object",..................
cef80 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 ..."description":."This.is.a.has
cefa0 68 20 6f 66 20 6e 61 6d 65 73 70 61 63 65 73 20 28 6b 65 79 73 29 20 61 6e 64 20 74 68 65 20 64 h.of.namespaces.(keys).and.the.d
cefc0 69 72 65 63 74 6f 72 69 65 73 20 74 68 65 79 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 69 6e 74 irectories.they.can.be.found.int
cefe0 6f 20 28 76 61 6c 75 65 73 2c 20 63 61 6e 20 62 65 20 61 72 72 61 79 73 20 6f 66 20 70 61 74 68 o.(values,.can.be.arrays.of.path
cf000 73 29 20 62 79 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 s).by.the.autoloader.",.........
cf020 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 ............"additionalPropertie
cf040 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 s":.true.................},.....
cf060 20 20 20 20 20 20 20 20 20 20 20 20 22 70 73 72 2d 34 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ............"psr-4":.{..........
cf080 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 ..........."type":."object",....
cf0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 ................."description":.
cf0c0 22 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 6e 61 6d 65 73 70 61 63 65 73 20 28 6b "This.is.a.hash.of.namespaces.(k
cf0e0 65 79 73 29 20 61 6e 64 20 74 68 65 20 50 53 52 2d 34 20 64 69 72 65 63 74 6f 72 69 65 73 20 74 eys).and.the.PSR-4.directories.t
cf100 68 65 79 20 63 61 6e 20 6d 61 70 20 74 6f 20 28 76 61 6c 75 65 73 2c 20 63 61 6e 20 62 65 20 61 hey.can.map.to.(values,.can.be.a
cf120 72 72 61 79 73 20 6f 66 20 70 61 74 68 73 29 20 62 79 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 rrays.of.paths).by.the.autoloade
cf140 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 r.",....................."additi
cf160 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 onalProperties":.true...........
cf180 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 6c 61 73 73 6d ......},................."classm
cf1a0 61 70 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 ap":.{....................."type
cf1c0 22 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ":."array",.....................
cf1e0 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 6e 20 61 72 72 61 79 "description":."This.is.an.array
cf200 20 6f 66 20 64 69 72 65 63 74 6f 72 69 65 73 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 20 63 6c 61 .of.directories.that.contain.cla
cf220 73 73 65 73 20 74 6f 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 63 6c 61 73 73 sses.to.be.included.in.the.class
cf240 2d 6d 61 70 20 67 65 6e 65 72 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 2e 22 0a 20 20 20 20 20 20 -map.generation.process.".......
cf260 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 69 ..........},................."fi
cf280 6c 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 les":.{....................."typ
cf2a0 65 22 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e":."array",....................
cf2c0 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 6e 20 61 72 72 61 ."description":."This.is.an.arra
cf2e0 79 20 6f 66 20 66 69 6c 65 73 20 74 68 61 74 20 61 72 65 20 61 6c 77 61 79 73 20 72 65 71 75 69 y.of.files.that.are.always.requi
cf300 72 65 64 20 6f 6e 20 65 76 65 72 79 20 72 65 71 75 65 73 74 2e 22 0a 20 20 20 20 20 20 20 20 20 red.on.every.request."..........
cf320 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d .......}.............}.........}
cf340 2c 0a 20 20 20 20 20 20 20 20 22 61 72 63 68 69 76 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ,........."archive":.{..........
cf360 20 20 20 22 74 79 70 65 22 3a 20 5b 22 6f 62 6a 65 63 74 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 ..."type":.["object"],..........
cf380 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 70 74 69 6f 6e 73 20 66 6f 72 20 63 ..."description":."Options.for.c
cf3a0 72 65 61 74 69 6e 67 20 70 61 63 6b 61 67 65 20 61 72 63 68 69 76 65 73 20 66 6f 72 20 64 69 73 reating.package.archives.for.dis
cf3c0 74 72 69 62 75 74 69 6f 6e 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 6f 70 65 72 tribution.",............."proper
cf3e0 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 65 78 63 6c 75 64 ties":.{................."exclud
cf400 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 e":.{....................."type"
cf420 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 :."array",....................."
cf440 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 6c 69 73 74 20 6f 66 20 70 61 74 74 65 72 6e description":."A.list.of.pattern
cf460 73 20 66 6f 72 20 70 61 74 68 73 20 74 6f 20 65 78 63 6c 75 64 65 20 6f 72 20 69 6e 63 6c 75 64 s.for.paths.to.exclude.or.includ
cf480 65 20 69 66 20 70 72 65 66 69 78 65 64 20 77 69 74 68 20 61 6e 20 65 78 63 6c 61 6d 61 74 69 6f e.if.prefixed.with.an.exclamatio
cf4a0 6e 20 6d 61 72 6b 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 n.mark.".................}......
cf4c0 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 72 65 70 .......}.........},........."rep
cf4e0 6f 73 69 74 6f 72 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 ositories":.{............."type"
cf500 3a 20 5b 22 6f 62 6a 65 63 74 22 2c 20 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 :.["object",."array"],..........
cf520 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 73 65 74 20 6f 66 20 61 64 64 69 ..."description":."A.set.of.addi
cf540 74 69 6f 6e 61 6c 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 77 68 65 72 65 20 70 61 63 6b 61 67 tional.repositories.where.packag
cf560 65 73 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 es.can.be.found.",............."
cf580 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 additionalProperties":.true.....
cf5a0 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 ....},........."minimum-stabilit
cf5c0 79 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 73 74 72 69 y":.{............."type":.["stri
cf5e0 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a ng"],............."description":
cf600 20 22 54 68 65 20 6d 69 6e 69 6d 75 6d 20 73 74 61 62 69 6c 69 74 79 20 74 68 65 20 70 61 63 6b ."The.minimum.stability.the.pack
cf620 61 67 65 73 20 6d 75 73 74 20 68 61 76 65 20 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 2d 61 62 6c ages.must.have.to.be.install-abl
cf640 65 2e 20 50 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 20 61 72 65 3a 20 64 65 76 2c 20 61 6c 70 e..Possible.values.are:.dev,.alp
cf660 68 61 2c 20 62 65 74 61 2c 20 52 43 2c 20 73 74 61 62 6c 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 ha,.beta,.RC,.stable.",.........
cf680 20 20 20 20 22 70 61 74 74 65 72 6e 22 3a 20 22 5e 64 65 76 7c 61 6c 70 68 61 7c 62 65 74 61 7c ...."pattern":."^dev|alpha|beta|
cf6a0 72 63 7c 52 43 7c 73 74 61 62 6c 65 24 22 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 rc|RC|stable$".........},.......
cf6c0 20 20 22 70 72 65 66 65 72 2d 73 74 61 62 6c 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 .."prefer-stable":.{............
cf6e0 20 22 74 79 70 65 22 3a 20 5b 22 62 6f 6f 6c 65 61 6e 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 ."type":.["boolean"],...........
cf700 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 49 66 20 73 65 74 20 74 6f 20 74 72 75 65 .."description":."If.set.to.true
cf720 2c 20 73 74 61 62 6c 65 20 70 61 63 6b 61 67 65 73 20 77 69 6c 6c 20 62 65 20 70 72 65 66 65 72 ,.stable.packages.will.be.prefer
cf740 72 65 64 20 74 6f 20 64 65 76 20 70 61 63 6b 61 67 65 73 20 77 68 65 6e 20 70 6f 73 73 69 62 6c red.to.dev.packages.when.possibl
cf760 65 2c 20 65 76 65 6e 20 69 66 20 74 68 65 20 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 e,.even.if.the.minimum-stability
cf780 20 61 6c 6c 6f 77 73 20 75 6e 73 74 61 62 6c 65 20 70 61 63 6b 61 67 65 73 2e 22 0a 20 20 20 20 .allows.unstable.packages.".....
cf7a0 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 62 69 6e 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 ....},........."bin":.{.........
cf7c0 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 ...."type":.["array"],..........
cf7e0 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 73 65 74 20 6f 66 20 66 69 6c 65 ..."description":."A.set.of.file
cf800 73 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 74 72 65 61 74 65 64 20 61 73 20 62 69 6e 61 s.that.should.be.treated.as.bina
cf820 72 69 65 73 20 61 6e 64 20 73 79 6d 6c 69 6e 6b 65 64 20 69 6e 74 6f 20 62 69 6e 2d 64 69 72 20 ries.and.symlinked.into.bin-dir.
cf840 28 66 72 6f 6d 20 63 6f 6e 66 69 67 29 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 (from.config).",............."it
cf860 65 6d 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 ems":.{................."type":.
cf880 22 73 74 72 69 6e 67 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d "string".............}.........}
cf8a0 2c 0a 20 20 20 20 20 20 20 20 22 69 6e 63 6c 75 64 65 2d 70 61 74 68 22 3a 20 7b 0a 20 20 20 20 ,........."include-path":.{.....
cf8c0 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 ........"type":.["array"],......
cf8e0 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 44 45 50 52 45 43 41 54 45 ......."description":."DEPRECATE
cf900 44 3a 20 41 20 6c 69 73 74 20 6f 66 20 64 69 72 65 63 74 6f 72 69 65 73 20 77 68 69 63 68 20 73 D:.A.list.of.directories.which.s
cf920 68 6f 75 6c 64 20 67 65 74 20 61 64 64 65 64 20 74 6f 20 50 48 50 27 73 20 69 6e 63 6c 75 64 65 hould.get.added.to.PHP's.include
cf940 20 70 61 74 68 2e 20 54 68 69 73 20 69 73 20 6f 6e 6c 79 20 70 72 65 73 65 6e 74 20 74 6f 20 73 .path..This.is.only.present.to.s
cf960 75 70 70 6f 72 74 20 6c 65 67 61 63 79 20 70 72 6f 6a 65 63 74 73 2c 20 61 6e 64 20 61 6c 6c 20 upport.legacy.projects,.and.all.
cf980 6e 65 77 20 63 6f 64 65 20 73 68 6f 75 6c 64 20 70 72 65 66 65 72 61 62 6c 79 20 75 73 65 20 61 new.code.should.preferably.use.a
cf9a0 75 74 6f 6c 6f 61 64 69 6e 67 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 65 6d 73 utoloading.",............."items
cf9c0 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 ":.{................."type":."st
cf9e0 72 69 6e 67 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 ring".............}.........},..
cfa00 20 20 20 20 20 20 20 22 73 63 72 69 70 74 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 ......."scripts":.{.............
cfa20 22 74 79 70 65 22 3a 20 5b 22 6f 62 6a 65 63 74 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 "type":.["object"],.............
cfa40 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 53 63 72 69 70 74 73 20 6c 69 73 74 65 6e 65 72 "description":."Scripts.listener
cfa60 73 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 62 65 66 6f 72 65 2f 61 s.that.will.be.executed.before/a
cfa80 66 74 65 72 20 73 6f 6d 65 20 65 76 65 6e 74 73 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 fter.some.events.",.............
cfaa0 22 70 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "properties":.{.................
cfac0 22 70 72 65 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 "pre-install-cmd":.{............
cfae0 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 ........."type":.["array",."stri
cfb00 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 ng"],....................."descr
cfb20 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 20 74 68 65 20 69 6e 73 74 iption":."Occurs.before.the.inst
cfb40 61 6c 6c 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 63 6f 6e 74 61 69 6e all.command.is.executed,.contain
cfb60 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c s.one.or.more.Class::method.call
cfb80 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 ables.or.shell.commands.".......
cfba0 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 6f ..........},................."po
cfbc0 73 74 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 st-install-cmd":.{..............
cfbe0 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 ......."type":.["array",."string
cfc00 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 "],....................."descrip
cfc20 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 74 68 65 20 69 6e 73 74 61 6c 6c tion":."Occurs.after.the.install
cfc40 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f .command.is.executed,.contains.o
cfc60 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c ne.or.more.Class::method.callabl
cfc80 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 20 20 es.or.shell.commands."..........
cfca0 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 75 .......},................."pre-u
cfcc0 70 64 61 74 65 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pdate-cmd":.{...................
cfce0 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 .."type":.["array",."string"],..
cfd00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 ..................."description"
cfd20 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 20 74 68 65 20 75 70 64 61 74 65 20 63 6f 6d 6d :."Occurs.before.the.update.comm
cfd40 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 and.is.executed,.contains.one.or
cfd60 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 .more.Class::method.callables.or
cfd80 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .shell.commands."...............
cfda0 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 74 2d 75 70 64 61 74 ..},................."post-updat
cfdc0 65 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 e-cmd":.{....................."t
cfde0 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 ype":.["array",."string"],......
cfe00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f ..............."description":."O
cfe20 63 63 75 72 73 20 61 66 74 65 72 20 74 68 65 20 75 70 64 61 74 65 20 63 6f 6d 6d 61 6e 64 20 69 ccurs.after.the.update.command.i
cfe40 73 20 65 78 65 63 75 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 s.executed,.contains.one.or.more
cfe60 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c .Class::method.callables.or.shel
cfe80 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a l.commands.".................},.
cfea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 73 74 61 74 75 73 2d 63 6d 64 22 ................"pre-status-cmd"
cfec0 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 :.{....................."type":.
cfee0 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ["array",."string"],............
cff00 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 ........."description":."Occurs.
cff20 62 65 66 6f 72 65 20 74 68 65 20 73 74 61 74 75 73 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 before.the.status.command.is.exe
cff40 63 75 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 cuted,.contains.one.or.more.Clas
cff60 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d s::method.callables.or.shell.com
cff80 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 mands.".................},......
cffa0 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 74 2d 73 74 61 74 75 73 2d 63 6d 64 22 3a 20 7b 0a ..........."post-status-cmd":.{.
cffc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 ...................."type":.["ar
cffe0 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ray",."string"],................
d0000 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 ....."description":."Occurs.afte
d0020 72 20 74 68 65 20 73 74 61 74 75 73 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 r.the.status.command.is.executed
d0040 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 ,.contains.one.or.more.Class::me
d0060 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 thod.callables.or.shell.commands
d0080 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 .".................},...........
d00a0 20 20 20 20 20 20 22 70 72 65 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 ......"pre-package-install":.{..
d00c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 ..................."type":.["arr
d00e0 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ay",."string"],.................
d0100 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 ...."description":."Occurs.befor
d0120 65 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 2c 20 63 6f 6e 74 61 69 e.a.package.is.installed,.contai
d0140 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c ns.one.or.more.Class::method.cal
d0160 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 lables.or.shell.commands."......
d0180 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 ...........},................."p
d01a0 6f 73 74 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 ost-package-install":.{.........
d01c0 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 ............"type":.["array",."s
d01e0 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 tring"],....................."de
d0200 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 61 20 70 61 63 6b scription":."Occurs.after.a.pack
d0220 61 67 65 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f age.is.installed,.contains.one.o
d0240 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f r.more.Class::method.callables.o
d0260 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 r.shell.commands."..............
d0280 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 70 61 63 6b 61 ...},................."pre-packa
d02a0 67 65 2d 75 70 64 61 74 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ge-update":.{...................
d02c0 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 .."type":.["array",."string"],..
d02e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 ..................."description"
d0300 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 75 70 :."Occurs.before.a.package.is.up
d0320 64 61 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 dated,.contains.one.or.more.Clas
d0340 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d s::method.callables.or.shell.com
d0360 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 mands.".................},......
d0380 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 70 64 61 74 65 22 ..........."post-package-update"
d03a0 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 :.{....................."type":.
d03c0 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ["array",."string"],............
d03e0 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 ........."description":."Occurs.
d0400 61 66 74 65 72 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 75 70 64 61 74 65 64 2c 20 63 6f 6e 74 after.a.package.is.updated,.cont
d0420 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 ains.one.or.more.Class::method.c
d0440 61 6c 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 allables.or.shell.commands."....
d0460 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............},.................
d0480 22 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 20 20 20 20 "pre-package-uninstall":.{......
d04a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c ..............."type":.["array",
d04c0 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."string"],.....................
d04e0 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 20 61 20 "description":."Occurs.before.a.
d0500 70 61 63 6b 61 67 65 20 68 61 73 20 62 65 65 6e 20 75 6e 69 6e 73 74 61 6c 6c 65 64 2c 20 63 6f package.has.been.uninstalled,.co
d0520 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 ntains.one.or.more.Class::method
d0540 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 .callables.or.shell.commands."..
d0560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............},...............
d0580 20 20 22 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 20 .."post-package-uninstall":.{...
d05a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 .................."type":.["arra
d05c0 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 y",."string"],..................
d05e0 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 ..."description":."Occurs.after.
d0600 61 20 70 61 63 6b 61 67 65 20 68 61 73 20 62 65 65 6e 20 75 6e 69 6e 73 74 61 6c 6c 65 64 2c 20 a.package.has.been.uninstalled,.
d0620 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 contains.one.or.more.Class::meth
d0640 6f 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 od.callables.or.shell.commands."
d0660 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................},.............
d0680 20 20 20 20 22 70 72 65 2d 61 75 74 6f 6c 6f 61 64 2d 64 75 6d 70 22 3a 20 7b 0a 20 20 20 20 20 ...."pre-autoload-dump":.{......
d06a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c ..............."type":.["array",
d06c0 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."string"],.....................
d06e0 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 20 74 68 "description":."Occurs.before.th
d0700 65 20 61 75 74 6f 6c 6f 61 64 65 72 20 69 73 20 64 75 6d 70 65 64 2c 20 63 6f 6e 74 61 69 6e 73 e.autoloader.is.dumped,.contains
d0720 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 .one.or.more.Class::method.calla
d0740 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 bles.or.shell.commands."........
d0760 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 .........},................."pos
d0780 74 2d 61 75 74 6f 6c 6f 61 64 2d 64 75 6d 70 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 t-autoload-dump":.{.............
d07a0 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e ........"type":.["array",."strin
d07c0 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 g"],....................."descri
d07e0 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 74 68 65 20 61 75 74 6f 6c 6f ption":."Occurs.after.the.autolo
d0800 61 64 65 72 20 69 73 20 64 75 6d 70 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 ader.is.dumped,.contains.one.or.
d0820 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 20 more.Class::method.callables.or.
d0840 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 shell.commands."................
d0860 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 74 2d 72 6f 6f 74 2d 70 .},................."post-root-p
d0880 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ackage-install":.{..............
d08a0 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 ......."type":.["array",."string
d08c0 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 "],....................."descrip
d08e0 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 74 68 65 20 72 6f 6f 74 2d 70 61 tion":."Occurs.after.the.root-pa
d0900 63 6b 61 67 65 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 ckage.is.installed,.contains.one
d0920 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 .or.more.Class::method.callables
d0940 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 .or.shell.commands."............
d0960 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 74 2d 63 72 .....},................."post-cr
d0980 65 61 74 65 2d 70 72 6f 6a 65 63 74 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 eate-project-cmd":.{............
d09a0 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 ........."type":.["array",."stri
d09c0 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 ng"],....................."descr
d09e0 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 74 68 65 20 63 72 65 61 74 iption":."Occurs.after.the.creat
d0a00 65 2d 70 72 6f 6a 65 63 74 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 63 e-project.command.is.executed,.c
d0a20 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f ontains.one.or.more.Class::metho
d0a40 64 20 63 61 6c 6c 61 62 6c 65 73 20 6f 72 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 2e 22 0a d.callables.or.shell.commands.".
d0a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a ................}.............}.
d0a80 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 73 75 70 70 6f 72 74 22 3a 20 7b 0a ........},........."support":.{.
d0aa0 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 ............"type":."object",...
d0ac0 20 20 20 20 20 20 20 20 20 20 22 70 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 .........."properties":.{.......
d0ae0 20 20 20 20 20 20 20 20 20 20 22 65 6d 61 69 6c 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 .........."email":.{............
d0b00 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 ........."type":."string",......
d0b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 45 ..............."description":."E
d0b40 6d 61 69 6c 20 61 64 64 72 65 73 73 20 66 6f 72 20 73 75 70 70 6f 72 74 2e 22 2c 0a 20 20 20 20 mail.address.for.support.",.....
d0b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 65 6d 61 69 6c ................"format":."email
d0b80 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ".................},............
d0ba0 20 20 20 20 20 22 69 73 73 75 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....."issues":.{................
d0bc0 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 ....."type":."string",..........
d0be0 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 55 52 4c 20 74 ..........."description":."URL.t
d0c00 6f 20 74 68 65 20 69 73 73 75 65 20 74 72 61 63 6b 65 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 o.the.issue.tracker.",..........
d0c20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 ..........."format":."uri"......
d0c40 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 ...........},................."f
d0c60 6f 72 75 6d 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 orum":.{....................."ty
d0c80 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pe":."string",..................
d0ca0 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 55 52 4c 20 74 6f 20 74 68 65 20 66 6f ..."description":."URL.to.the.fo
d0cc0 72 75 6d 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d rum.",....................."form
d0ce0 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 at":."uri".................},...
d0d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 77 69 6b 69 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 .............."wiki":.{.........
d0d20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 ............"type":."string",...
d0d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a .................."description":
d0d60 20 22 55 52 4c 20 74 6f 20 74 68 65 20 77 69 6b 69 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ."URL.to.the.wiki.",............
d0d80 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 20 20 ........."format":."uri"........
d0da0 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 69 72 63 .........},................."irc
d0dc0 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a ":.{....................."type":
d0de0 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 ."string",....................."
d0e00 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 49 52 43 20 63 68 61 6e 6e 65 6c 20 66 6f 72 20 73 description":."IRC.channel.for.s
d0e20 75 70 70 6f 72 74 2c 20 61 73 20 69 72 63 3a 2f 2f 73 65 72 76 65 72 2f 63 68 61 6e 6e 65 6c 2e upport,.as.irc://server/channel.
d0e40 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a ",....................."format":
d0e60 20 22 75 72 69 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 ."uri".................},.......
d0e80 20 20 20 20 20 20 20 20 20 20 22 73 6f 75 72 63 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 .........."source":.{...........
d0ea0 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 .........."type":."string",.....
d0ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 ................"description":."
d0ee0 55 52 4c 20 74 6f 20 62 72 6f 77 73 65 20 6f 72 20 64 6f 77 6e 6c 6f 61 64 20 74 68 65 20 73 6f URL.to.browse.or.download.the.so
d0f00 75 72 63 65 73 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f urces.",....................."fo
d0f20 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a rmat":."uri".................},.
d0f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 6f 63 73 22 3a 20 7b 0a 20 20 20 20 20 20 ................"docs":.{.......
d0f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a .............."type":."string",.
d0f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e ...................."description
d0fa0 22 3a 20 22 55 52 4c 20 74 6f 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2e 22 2c 0a ":."URL.to.the.documentation.",.
d0fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 ...................."format":."u
d0fe0 72 69 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 ri".................}...........
d1000 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 6e 6f 6e 2d 66 65 61 74 ..}.........},........."non-feat
d1020 75 72 65 2d 62 72 61 6e 63 68 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 ure-branches":.{............."ty
d1040 70 65 22 3a 20 5b 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 pe":.["array"],............."des
d1060 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 73 65 74 20 6f 66 20 73 74 72 69 6e 67 20 6f 72 20 72 cription":."A.set.of.string.or.r
d1080 65 67 65 78 20 70 61 74 74 65 72 6e 73 20 66 6f 72 20 6e 6f 6e 2d 6e 75 6d 65 72 69 63 20 62 72 egex.patterns.for.non-numeric.br
d10a0 61 6e 63 68 20 6e 61 6d 65 73 20 74 68 61 74 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 68 61 6e 64 anch.names.that.will.not.be.hand
d10c0 6c 65 64 20 61 73 20 66 65 61 74 75 72 65 20 62 72 61 6e 63 68 65 73 2e 22 2c 0a 20 20 20 20 20 led.as.feature.branches.",......
d10e0 20 20 20 20 20 20 20 22 69 74 65 6d 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......."items":.{...............
d1100 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d .."type":."string".............}
d1120 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 61 62 61 6e 64 6f 6e 65 64 22 3a .........},........."abandoned":
d1140 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 62 6f 6f 6c 65 61 6e .{............."type":.["boolean
d1160 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 ",."string"],............."descr
d1180 69 70 74 69 6f 6e 22 3a 20 22 49 6e 64 69 63 61 74 65 73 20 77 68 65 74 68 65 72 20 74 68 69 73 iption":."Indicates.whether.this
d11a0 20 70 61 63 6b 61 67 65 20 68 61 73 20 62 65 65 6e 20 61 62 61 6e 64 6f 6e 65 64 2c 20 69 74 20 .package.has.been.abandoned,.it.
d11c0 63 61 6e 20 62 65 20 62 6f 6f 6c 65 61 6e 20 6f 72 20 61 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 can.be.boolean.or.a.package.name
d11e0 2f 55 52 4c 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 61 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 61 /URL.pointing.to.a.recommended.a
d1200 6c 74 65 72 6e 61 74 69 76 65 2e 20 44 65 66 61 75 6c 74 73 20 74 6f 20 66 61 6c 73 65 2e 22 0a lternative..Defaults.to.false.".
d1220 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 7b 0a 20 20 20 20 22 33 38 39 2d 65 78 63 ........}.....}.}.{....."389-exc
d1240 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 33 38 39 20 44 69 72 65 63 74 6f 72 eption":.[........."389.Director
d1260 79 20 53 65 72 76 65 72 5c 6e 45 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 y.Server\nException".....],.....
d1280 22 41 75 74 6f 63 6f 6e 66 2d 65 78 63 65 70 74 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 "Autoconf-exception-2.0":.[.....
d12a0 20 20 20 20 22 41 75 74 6f 63 6f 6e 66 20 65 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 20 20 ...."Autoconf.exception.2.0"....
d12c0 20 5d 2c 0a 20 20 20 20 22 41 75 74 6f 63 6f 6e 66 2d 65 78 63 65 70 74 69 6f 6e 2d 33 2e 30 22 .],....."Autoconf-exception-3.0"
d12e0 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 75 74 6f 63 6f 6e 66 20 65 78 63 65 70 74 69 6f 6e 20 :.[........."Autoconf.exception.
d1300 33 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 69 73 6f 6e 2d 65 78 63 65 70 74 69 6f 6e 3.0".....],....."Bison-exception
d1320 2d 32 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 69 73 6f 6e 20 65 78 63 65 70 74 69 6f -2.2":.[........."Bison.exceptio
d1340 6e 20 32 2e 32 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 6c 61 73 73 70 61 74 68 2d 65 78 63 n.2.2".....],....."Classpath-exc
d1360 65 70 74 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6c 61 73 73 70 61 74 eption-2.0":.[........."Classpat
d1380 68 20 65 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 4c 49 h.exception.2.0".....],....."CLI
d13a0 53 50 2d 65 78 63 65 70 74 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 4c SP-exception-2.0":.[........."CL
d13c0 49 53 50 20 65 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 44 ISP.exception.2.0".....],....."D
d13e0 69 67 69 52 75 6c 65 2d 46 4f 53 53 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 igiRule-FOSS-exception":.[......
d1400 20 20 20 22 44 69 67 69 52 75 6c 65 20 46 4f 53 53 20 4c 69 63 65 6e 73 65 20 45 78 63 65 70 74 ..."DigiRule.FOSS.License.Except
d1420 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 65 43 6f 73 2d 65 78 63 65 70 74 69 6f 6e 2d ion".....],....."eCos-exception-
d1440 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 65 43 6f 73 20 65 78 63 65 70 74 69 6f 6e 20 2.0":.[........."eCos.exception.
d1460 32 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 61 77 6b 65 73 2d 52 75 6e 74 69 6d 65 2d 2.0".....],....."Fawkes-Runtime-
d1480 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 61 77 6b 65 73 20 52 75 exception":.[........."Fawkes.Ru
d14a0 6e 74 69 6d 65 20 45 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 4c 54 ntime.Exception".....],....."FLT
d14c0 4b 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 4c 54 4b 20 65 78 K-exception":.[........."FLTK.ex
d14e0 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 6f 6e 74 2d 65 78 63 65 70 74 ception".....],....."Font-except
d1500 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 6f 6e 74 20 65 78 63 65 70 74 ion-2.0":.[........."Font.except
d1520 69 6f 6e 20 32 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 66 72 65 65 72 74 6f 73 2d 65 78 ion.2.0".....],....."freertos-ex
d1540 63 65 70 74 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 72 65 65 52 54 4f ception-2.0":.[........."FreeRTO
d1560 53 20 45 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 43 43 S.Exception.2.0".....],....."GCC
d1580 2d 65 78 63 65 70 74 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 43 43 20 -exception-2.0":.[........."GCC.
d15a0 52 75 6e 74 69 6d 65 20 4c 69 62 72 61 72 79 20 65 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 Runtime.Library.exception.2.0"..
d15c0 20 20 20 5d 2c 0a 20 20 20 20 22 47 43 43 2d 65 78 63 65 70 74 69 6f 6e 2d 33 2e 31 22 3a 20 5b ...],....."GCC-exception-3.1":.[
d15e0 0a 20 20 20 20 20 20 20 20 22 47 43 43 20 52 75 6e 74 69 6d 65 20 4c 69 62 72 61 72 79 20 65 78 ........."GCC.Runtime.Library.ex
d1600 63 65 70 74 69 6f 6e 20 33 2e 31 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 67 6e 75 2d 6a 61 76 ception.3.1".....],....."gnu-jav
d1620 61 6d 61 69 6c 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 amail-exception":.[........."GNU
d1640 20 4a 61 76 61 4d 61 69 6c 20 65 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 .JavaMail.exception".....],.....
d1660 22 69 32 70 2d 67 70 6c 2d 6a 61 76 61 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 "i2p-gpl-java-exception":.[.....
d1680 20 20 20 20 22 69 32 70 20 47 50 4c 2b 4a 61 76 61 20 45 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 ...."i2p.GPL+Java.Exception"....
d16a0 20 5d 2c 0a 20 20 20 20 22 4c 69 62 74 6f 6f 6c 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 .],....."Libtool-exception":.[..
d16c0 20 20 20 20 20 20 20 22 4c 69 62 74 6f 6f 6c 20 45 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d ......."Libtool.Exception".....]
d16e0 2c 0a 20 20 20 20 22 4c 5a 4d 41 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 ,....."LZMA-exception":.[.......
d1700 20 20 22 4c 5a 4d 41 20 65 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 6d .."LZMA.exception".....],....."m
d1720 69 66 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 61 63 72 6f 73 if-exception":.[........."Macros
d1740 20 61 6e 64 20 49 6e 6c 69 6e 65 20 46 75 6e 63 74 69 6f 6e 73 20 45 78 63 65 70 74 69 6f 6e 22 .and.Inline.Functions.Exception"
d1760 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 6f 6b 69 61 2d 51 74 2d 65 78 63 65 70 74 69 6f 6e 2d .....],....."Nokia-Qt-exception-
d1780 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 6f 6b 69 61 20 51 74 20 4c 47 50 4c 20 65 1.1":.[........."Nokia.Qt.LGPL.e
d17a0 78 63 65 70 74 69 6f 6e 20 31 2e 31 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 6f 70 65 6e 76 70 xception.1.1".....],....."openvp
d17c0 6e 2d 6f 70 65 6e 73 73 6c 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 n-openssl-exception":.[.........
d17e0 22 4f 70 65 6e 56 50 4e 20 4f 70 65 6e 53 53 4c 20 45 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 "OpenVPN.OpenSSL.Exception".....
d1800 5d 2c 0a 20 20 20 20 22 51 77 74 2d 65 78 63 65 70 74 69 6f 6e 2d 31 2e 30 22 3a 20 5b 0a 20 20 ],....."Qwt-exception-1.0":.[...
d1820 20 20 20 20 20 20 22 51 77 74 20 65 78 63 65 70 74 69 6f 6e 20 31 2e 30 22 0a 20 20 20 20 5d 2c ......"Qwt.exception.1.0".....],
d1840 0a 20 20 20 20 22 75 2d 62 6f 6f 74 2d 65 78 63 65 70 74 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 ....."u-boot-exception-2.0":.[..
d1860 20 20 20 20 20 20 20 22 55 2d 42 6f 6f 74 20 65 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 20 ......."U-Boot.exception.2.0"...
d1880 20 20 5d 2c 0a 20 20 20 20 22 57 78 57 69 6e 64 6f 77 73 2d 65 78 63 65 70 74 69 6f 6e 2d 33 2e ..],....."WxWindows-exception-3.
d18a0 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 57 78 57 69 6e 64 6f 77 73 20 4c 69 62 72 61 72 79 1":.[........."WxWindows.Library
d18c0 20 45 78 63 65 70 74 69 6f 6e 20 33 2e 31 22 0a 20 20 20 20 5d 0a 7d 7b 0a 20 20 20 20 22 30 42 .Exception.3.1".....].}{....."0B
d18e0 53 44 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 5a 65 72 6f 20 43 6c 61 75 73 65 20 SD":.[........."BSD.Zero.Clause.
d1900 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 License",.........false.....],..
d1920 20 20 20 22 41 41 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 74 74 72 69 62 75 74 69 6f 6e ..."AAL":.[........."Attribution
d1940 20 41 73 73 75 72 61 6e 63 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 .Assurance.License",.........tru
d1960 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 62 73 74 79 6c 65 73 22 3a 20 5b 0a 20 20 20 20 20 e.....],....."Abstyles":.[......
d1980 20 20 20 22 41 62 73 74 79 6c 65 73 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 ..."Abstyles.License",.........f
d19a0 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 64 6f 62 65 2d 32 30 30 36 22 3a 20 5b 0a alse.....],....."Adobe-2006":.[.
d19c0 20 20 20 20 20 20 20 20 22 41 64 6f 62 65 20 53 79 73 74 65 6d 73 20 49 6e 63 6f 72 70 6f 72 61 ........"Adobe.Systems.Incorpora
d19e0 74 65 64 20 53 6f 75 72 63 65 20 43 6f 64 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e ted.Source.Code.License.Agreemen
d1a00 74 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 64 t",.........false.....],....."Ad
d1a20 6f 62 65 2d 47 6c 79 70 68 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 64 6f 62 65 20 47 6c 79 obe-Glyph":.[........."Adobe.Gly
d1a40 70 68 20 4c 69 73 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a ph.List.License",.........false.
d1a60 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 44 53 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 6d ....],....."ADSL":.[........."Am
d1a80 61 7a 6f 6e 20 44 69 67 69 74 61 6c 20 53 65 72 76 69 63 65 73 20 4c 69 63 65 6e 73 65 22 2c 0a azon.Digital.Services.License",.
d1aa0 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 46 4c 2d 31 2e ........false.....],....."AFL-1.
d1ac0 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 63 61 64 65 6d 69 63 20 46 72 65 65 20 4c 69 63 1":.[........."Academic.Free.Lic
d1ae0 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a ense.v1.1",.........true.....],.
d1b00 20 20 20 20 22 41 46 4c 2d 31 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 63 61 64 65 6d ...."AFL-1.2":.[........."Academ
d1b20 69 63 20 46 72 65 65 20 4c 69 63 65 6e 73 65 20 76 31 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 74 ic.Free.License.v1.2",.........t
d1b40 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 46 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 rue.....],....."AFL-2.0":.[.....
d1b60 20 20 20 20 22 41 63 61 64 65 6d 69 63 20 46 72 65 65 20 4c 69 63 65 6e 73 65 20 76 32 2e 30 22 ...."Academic.Free.License.v2.0"
d1b80 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 46 4c 2d 32 ,.........true.....],....."AFL-2
d1ba0 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 63 61 64 65 6d 69 63 20 46 72 65 65 20 4c 69 .1":.[........."Academic.Free.Li
d1bc0 63 65 6e 73 65 20 76 32 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c cense.v2.1",.........true.....],
d1be0 0a 20 20 20 20 22 41 46 4c 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 63 61 64 65 ....."AFL-3.0":.[........."Acade
d1c00 6d 69 63 20 46 72 65 65 20 4c 69 63 65 6e 73 65 20 76 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 mic.Free.License.v3.0",.........
d1c20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 66 6d 70 61 72 73 65 22 3a 20 5b 0a 20 20 true.....],....."Afmparse":.[...
d1c40 20 20 20 20 20 20 22 41 66 6d 70 61 72 73 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 ......"Afmparse.License",.......
d1c60 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 47 50 4c 2d 31 2e 30 22 3a 20 5b ..false.....],....."AGPL-1.0":.[
d1c80 0a 20 20 20 20 20 20 20 20 22 41 66 66 65 72 6f 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 ........."Affero.General.Public.
d1ca0 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 License.v1.0",.........false....
d1cc0 20 5d 2c 0a 20 20 20 20 22 41 47 50 4c 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 .],....."AGPL-3.0":.[........."G
d1ce0 4e 55 20 41 66 66 65 72 6f 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 NU.Affero.General.Public.License
d1d00 20 76 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 .v3.0",.........true.....],.....
d1d20 22 41 6c 61 64 64 69 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 6c 61 64 64 69 6e 20 46 72 "Aladdin":.[........."Aladdin.Fr
d1d40 65 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 ee.Public.License",.........fals
d1d60 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 4d 44 50 4c 50 41 22 3a 20 5b 0a 20 20 20 20 20 20 e.....],....."AMDPLPA":.[.......
d1d80 20 20 22 41 4d 44 27 73 20 70 6c 70 61 5f 6d 61 70 2e 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 .."AMD's.plpa_map.c.License",...
d1da0 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 4d 4c 22 3a 20 5b 0a ......false.....],....."AML":.[.
d1dc0 20 20 20 20 20 20 20 20 22 41 70 70 6c 65 20 4d 49 54 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 ........"Apple.MIT.License",....
d1de0 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 4d 50 41 53 22 3a 20 5b .....false.....],....."AMPAS":.[
d1e00 0a 20 20 20 20 20 20 20 20 22 41 63 61 64 65 6d 79 20 6f 66 20 4d 6f 74 69 6f 6e 20 50 69 63 74 ........."Academy.of.Motion.Pict
d1e20 75 72 65 20 41 72 74 73 20 61 6e 64 20 53 63 69 65 6e 63 65 73 20 42 53 44 22 2c 0a 20 20 20 20 ure.Arts.and.Sciences.BSD",.....
d1e40 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 4e 54 4c 52 2d 50 44 22 3a ....false.....],....."ANTLR-PD":
d1e60 20 5b 0a 20 20 20 20 20 20 20 20 22 41 4e 54 4c 52 20 53 6f 66 74 77 61 72 65 20 52 69 67 68 74 .[........."ANTLR.Software.Right
d1e80 73 20 4e 6f 74 69 63 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a s.Notice",.........false.....],.
d1ea0 20 20 20 20 22 41 70 61 63 68 65 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 70 61 ...."Apache-1.0":.[........."Apa
d1ec0 63 68 65 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a che.License.1.0",.........false.
d1ee0 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 70 61 63 68 65 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 ....],....."Apache-1.1":.[......
d1f00 20 20 20 22 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 ..."Apache.License.1.1",........
d1f20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 70 61 63 68 65 2d 32 2e 30 22 3a 20 5b .true.....],....."Apache-2.0":.[
d1f40 0a 20 20 20 20 20 20 20 20 22 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 ........."Apache.License.2.0",..
d1f60 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 50 41 46 4d 4c 22 3a .......true.....],....."APAFML":
d1f80 20 5b 0a 20 20 20 20 20 20 20 20 22 41 64 6f 62 65 20 50 6f 73 74 73 63 72 69 70 74 20 41 46 4d .[........."Adobe.Postscript.AFM
d1fa0 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a .License",.........false.....],.
d1fc0 20 20 20 20 22 41 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 64 61 70 74 69 ...."APL-1.0":.[........."Adapti
d1fe0 76 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 ve.Public.License.1.0",.........
d2000 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 50 53 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 true.....],....."APSL-1.0":.[...
d2020 20 20 20 20 20 20 22 41 70 70 6c 65 20 50 75 62 6c 69 63 20 53 6f 75 72 63 65 20 4c 69 63 65 6e ......"Apple.Public.Source.Licen
d2040 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 se.1.0",.........true.....],....
d2060 20 22 41 50 53 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 70 70 6c 65 20 50 75 ."APSL-1.1":.[........."Apple.Pu
d2080 62 6c 69 63 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 20 20 20 20 blic.Source.License.1.1",.......
d20a0 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 50 53 4c 2d 31 2e 32 22 3a 20 5b 0a ..true.....],....."APSL-1.2":.[.
d20c0 20 20 20 20 20 20 20 20 22 41 70 70 6c 65 20 50 75 62 6c 69 63 20 53 6f 75 72 63 65 20 4c 69 63 ........"Apple.Public.Source.Lic
d20e0 65 6e 73 65 20 31 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 ense.1.2",.........true.....],..
d2100 20 20 20 22 41 50 53 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 70 70 6c 65 20 ..."APSL-2.0":.[........."Apple.
d2120 50 75 62 6c 69 63 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 20 20 20 Public.Source.License.2.0",.....
d2140 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 72 74 69 73 74 69 63 2d 31 2e ....true.....],....."Artistic-1.
d2160 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 72 74 69 73 74 69 63 20 4c 69 63 65 6e 73 65 20 0":.[........."Artistic.License.
d2180 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 1.0",.........true.....],....."A
d21a0 72 74 69 73 74 69 63 2d 31 2e 30 2d 63 6c 38 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 72 74 rtistic-1.0-cl8":.[........."Art
d21c0 69 73 74 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 20 77 2f 63 6c 61 75 73 65 20 38 22 2c 0a 20 istic.License.1.0.w/clause.8",..
d21e0 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 72 74 69 73 74 69 63 .......true.....],....."Artistic
d2200 2d 31 2e 30 2d 50 65 72 6c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 72 74 69 73 74 69 63 20 -1.0-Perl":.[........."Artistic.
d2220 4c 69 63 65 6e 73 65 20 31 2e 30 20 28 50 65 72 6c 29 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 License.1.0.(Perl)",.........tru
d2240 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 72 74 69 73 74 69 63 2d 32 2e 30 22 3a 20 5b 0a 20 e.....],....."Artistic-2.0":.[..
d2260 20 20 20 20 20 20 20 22 41 72 74 69 73 74 69 63 20 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 ......."Artistic.License.2.0",..
d2280 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 61 68 79 70 68 22 3a .......true.....],....."Bahyph":
d22a0 20 5b 0a 20 20 20 20 20 20 20 20 22 42 61 68 79 70 68 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 .[........."Bahyph.License",....
d22c0 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 61 72 72 22 3a 20 5b 0a .....false.....],....."Barr":.[.
d22e0 20 20 20 20 20 20 20 20 22 42 61 72 72 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 ........"Barr.License",.........
d2300 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 65 65 72 77 61 72 65 22 3a 20 5b 0a 20 false.....],....."Beerware":.[..
d2320 20 20 20 20 20 20 20 22 42 65 65 72 77 61 72 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 ......."Beerware.License",......
d2340 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 69 74 54 6f 72 72 65 6e 74 2d ...false.....],....."BitTorrent-
d2360 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 69 74 54 6f 72 72 65 6e 74 20 4f 70 65 6e 1.0":.[........."BitTorrent.Open
d2380 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 .Source.License.v1.0",.........f
d23a0 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 69 74 54 6f 72 72 65 6e 74 2d 31 2e 31 22 alse.....],....."BitTorrent-1.1"
d23c0 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 69 74 54 6f 72 72 65 6e 74 20 4f 70 65 6e 20 53 6f 75 :.[........."BitTorrent.Open.Sou
d23e0 72 63 65 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 rce.License.v1.1",.........false
d2400 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 6f 72 63 65 75 78 22 3a 20 5b 0a 20 20 20 20 20 20 20 .....],....."Borceux":.[........
d2420 20 22 42 6f 72 63 65 75 78 20 6c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 ."Borceux.license",.........fals
d2440 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d 32 2d 43 6c 61 75 73 65 22 3a 20 5b 0a 20 e.....],....."BSD-2-Clause":.[..
d2460 20 20 20 20 20 20 20 22 42 53 44 20 32 2d 63 6c 61 75 73 65 20 5c 22 53 69 6d 70 6c 69 66 69 65 ......."BSD.2-clause.\"Simplifie
d2480 64 5c 22 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d d\".License",.........true.....]
d24a0 2c 0a 20 20 20 20 22 42 53 44 2d 32 2d 43 6c 61 75 73 65 2d 46 72 65 65 42 53 44 22 3a 20 5b 0a ,....."BSD-2-Clause-FreeBSD":.[.
d24c0 20 20 20 20 20 20 20 20 22 42 53 44 20 32 2d 63 6c 61 75 73 65 20 46 72 65 65 42 53 44 20 4c 69 ........"BSD.2-clause.FreeBSD.Li
d24e0 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 cense",.........false.....],....
d2500 20 22 42 53 44 2d 32 2d 43 6c 61 75 73 65 2d 4e 65 74 42 53 44 22 3a 20 5b 0a 20 20 20 20 20 20 ."BSD-2-Clause-NetBSD":.[.......
d2520 20 20 22 42 53 44 20 32 2d 63 6c 61 75 73 65 20 4e 65 74 42 53 44 20 4c 69 63 65 6e 73 65 22 2c .."BSD.2-clause.NetBSD.License",
d2540 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d 33 .........false.....],....."BSD-3
d2560 2d 43 6c 61 75 73 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 33 2d 63 6c 61 75 73 -Clause":.[........."BSD.3-claus
d2580 65 20 5c 22 4e 65 77 5c 22 20 6f 72 20 5c 22 52 65 76 69 73 65 64 5c 22 20 4c 69 63 65 6e 73 65 e.\"New\".or.\"Revised\".License
d25a0 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d ",.........true.....],....."BSD-
d25c0 33 2d 43 6c 61 75 73 65 2d 41 74 74 72 69 62 75 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 3-Clause-Attribution":.[........
d25e0 20 22 42 53 44 20 77 69 74 68 20 61 74 74 72 69 62 75 74 69 6f 6e 22 2c 0a 20 20 20 20 20 20 20 ."BSD.with.attribution",........
d2600 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d 33 2d 43 6c 61 75 73 65 2d .false.....],....."BSD-3-Clause-
d2620 43 6c 65 61 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 33 2d 63 6c 61 75 73 65 20 Clear":.[........."BSD.3-clause.
d2640 43 6c 65 61 72 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 Clear.License",.........false...
d2660 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d 33 2d 43 6c 61 75 73 65 2d 4c 42 4e 4c 22 3a 20 5b 0a ..],....."BSD-3-Clause-LBNL":.[.
d2680 20 20 20 20 20 20 20 20 22 4c 61 77 72 65 6e 63 65 20 42 65 72 6b 65 6c 65 79 20 4e 61 74 69 6f ........"Lawrence.Berkeley.Natio
d26a0 6e 61 6c 20 4c 61 62 73 20 42 53 44 20 76 61 72 69 61 6e 74 20 6c 69 63 65 6e 73 65 22 2c 0a 20 nal.Labs.BSD.variant.license",..
d26c0 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d 34 2d 43 .......false.....],....."BSD-4-C
d26e0 6c 61 75 73 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 34 2d 63 6c 61 75 73 65 20 lause":.[........."BSD.4-clause.
d2700 5c 22 4f 72 69 67 69 6e 61 6c 5c 22 20 6f 72 20 5c 22 4f 6c 64 5c 22 20 4c 69 63 65 6e 73 65 22 \"Original\".or.\"Old\".License"
d2720 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d ,.........false.....],....."BSD-
d2740 34 2d 43 6c 61 75 73 65 2d 55 43 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 2d 34 2d 43 4-Clause-UC":.[........."BSD-4-C
d2760 6c 61 75 73 65 20 28 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2d lause.(University.of.California-
d2780 53 70 65 63 69 66 69 63 29 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c Specific)",.........false.....],
d27a0 0a 20 20 20 20 22 42 53 44 2d 50 72 6f 74 65 63 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 ....."BSD-Protection":.[........
d27c0 20 22 42 53 44 20 50 72 6f 74 65 63 74 69 6f 6e 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 ."BSD.Protection.License",......
d27e0 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 4c 2d 31 2e 30 22 3a 20 5b ...false.....],....."BSL-1.0":.[
d2800 0a 20 20 20 20 20 20 20 20 22 42 6f 6f 73 74 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 ........."Boost.Software.License
d2820 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 .1.0",.........true.....],....."
d2840 62 7a 69 70 32 2d 31 2e 30 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 62 7a 69 70 32 20 61 bzip2-1.0.5":.[........."bzip2.a
d2860 6e 64 20 6c 69 62 62 7a 69 70 32 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 2e 35 22 2c 0a 20 20 20 nd.libbzip2.License.v1.0.5",....
d2880 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 62 7a 69 70 32 2d 31 2e 30 .....false.....],....."bzip2-1.0
d28a0 2e 36 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 62 7a 69 70 32 20 61 6e 64 20 6c 69 62 62 7a 69 .6":.[........."bzip2.and.libbzi
d28c0 70 32 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 2e 36 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 p2.License.v1.0.6",.........fals
d28e0 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 61 6c 64 65 72 61 22 3a 20 5b 0a 20 20 20 20 20 20 e.....],....."Caldera":.[.......
d2900 20 20 22 43 61 6c 64 65 72 61 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c .."Caldera.License",.........fal
d2920 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 41 54 4f 53 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 se.....],....."CATOSL-1.1":.[...
d2940 20 20 20 20 20 20 22 43 6f 6d 70 75 74 65 72 20 41 73 73 6f 63 69 61 74 65 73 20 54 72 75 73 74 ......"Computer.Associates.Trust
d2960 65 64 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 20 ed.Open.Source.License.1.1",....
d2980 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 31 2e 30 22 .....true.....],....."CC-BY-1.0"
d29a0 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 :.[........."Creative.Commons.At
d29c0 74 72 69 62 75 74 69 6f 6e 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 tribution.1.0",.........false...
d29e0 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ..],....."CC-BY-2.0":.[.........
d2a00 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 32 2e "Creative.Commons.Attribution.2.
d2a20 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 0",.........false.....],....."CC
d2a40 2d 42 59 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f -BY-2.5":.[........."Creative.Co
d2a60 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 32 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 mmons.Attribution.2.5",.........
d2a80 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 33 2e 30 22 3a 20 5b 0a false.....],....."CC-BY-3.0":.[.
d2aa0 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 ........"Creative.Commons.Attrib
d2ac0 75 74 69 6f 6e 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c ution.3.0",.........false.....],
d2ae0 0a 20 20 20 20 22 43 43 2d 42 59 2d 34 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 ....."CC-BY-4.0":.[........."Cre
d2b00 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 34 2e 30 22 2c 0a ative.Commons.Attribution.4.0",.
d2b20 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d ........false.....],....."CC-BY-
d2b40 4e 43 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d NC-1.0":.[........."Creative.Com
d2b60 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 mons.Attribution.Non.Commercial.
d2b80 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 1.0",.........false.....],....."
d2ba0 43 43 2d 42 59 2d 4e 43 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 CC-BY-NC-2.0":.[........."Creati
d2bc0 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 ve.Commons.Attribution.Non.Comme
d2be0 72 63 69 61 6c 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c rcial.2.0",.........false.....],
d2c00 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ....."CC-BY-NC-2.5":.[........."
d2c20 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e Creative.Commons.Attribution.Non
d2c40 20 43 6f 6d 6d 65 72 63 69 61 6c 20 32 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a .Commercial.2.5",.........false.
d2c60 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 ....],....."CC-BY-NC-3.0":.[....
d2c80 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 ....."Creative.Commons.Attributi
d2ca0 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 on.Non.Commercial.3.0",.........
d2cc0 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 34 2e 30 22 3a false.....],....."CC-BY-NC-4.0":
d2ce0 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 .[........."Creative.Commons.Att
d2d00 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 34 2e 30 22 2c 0a 20 20 ribution.Non.Commercial.4.0",...
d2d20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 ......false.....],....."CC-BY-NC
d2d40 2d 4e 44 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f -ND-1.0":.[........."Creative.Co
d2d60 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c mmons.Attribution.Non.Commercial
d2d80 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 .No.Derivatives.1.0",.........fa
d2da0 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d 32 2e 30 22 lse.....],....."CC-BY-NC-ND-2.0"
d2dc0 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 :.[........."Creative.Commons.At
d2de0 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 4e 6f 20 44 65 72 69 tribution.Non.Commercial.No.Deri
d2e00 76 61 74 69 76 65 73 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 vatives.2.0",.........false.....
d2e20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 ],....."CC-BY-NC-ND-2.5":.[.....
d2e40 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f ...."Creative.Commons.Attributio
d2e60 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 n.Non.Commercial.No.Derivatives.
d2e80 32 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 2.5",.........false.....],....."
d2ea0 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 CC-BY-NC-ND-3.0":.[........."Cre
d2ec0 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f ative.Commons.Attribution.Non.Co
d2ee0 6d 6d 65 72 63 69 61 6c 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 33 2e 30 22 2c 0a 20 20 mmercial.No.Derivatives.3.0",...
d2f00 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 ......false.....],....."CC-BY-NC
d2f20 2d 4e 44 2d 34 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f -ND-4.0":.[........."Creative.Co
d2f40 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c mmons.Attribution.Non.Commercial
d2f60 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 34 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 .No.Derivatives.4.0",.........fa
d2f80 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 53 41 2d 31 2e 30 22 lse.....],....."CC-BY-NC-SA-1.0"
d2fa0 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 :.[........."Creative.Commons.At
d2fc0 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 53 68 61 72 65 20 41 tribution.Non.Commercial.Share.A
d2fe0 6c 69 6b 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a like.1.0",.........false.....],.
d3000 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 53 41 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 ...."CC-BY-NC-SA-2.0":.[........
d3020 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e ."Creative.Commons.Attribution.N
d3040 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 53 68 61 72 65 20 41 6c 69 6b 65 20 32 2e 30 22 2c 0a on.Commercial.Share.Alike.2.0",.
d3060 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d ........false.....],....."CC-BY-
d3080 4e 43 2d 53 41 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 NC-SA-2.5":.[........."Creative.
d30a0 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 Commons.Attribution.Non.Commerci
d30c0 61 6c 20 53 68 61 72 65 20 41 6c 69 6b 65 20 32 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c al.Share.Alike.2.5",.........fal
d30e0 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 53 41 2d 33 2e 30 22 3a se.....],....."CC-BY-NC-SA-3.0":
d3100 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 .[........."Creative.Commons.Att
d3120 72 69 62 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 53 68 61 72 65 20 41 6c ribution.Non.Commercial.Share.Al
d3140 69 6b 65 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 ike.3.0",.........false.....],..
d3160 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 53 41 2d 34 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ..."CC-BY-NC-SA-4.0":.[.........
d3180 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f "Creative.Commons.Attribution.No
d31a0 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 53 68 61 72 65 20 41 6c 69 6b 65 20 34 2e 30 22 2c 0a 20 n.Commercial.Share.Alike.4.0",..
d31c0 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e .......false.....],....."CC-BY-N
d31e0 44 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d D-1.0":.[........."Creative.Comm
d3200 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 31 ons.Attribution.No.Derivatives.1
d3220 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 .0",.........false.....],....."C
d3240 43 2d 42 59 2d 4e 44 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 C-BY-ND-2.0":.[........."Creativ
d3260 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 20 44 65 72 69 76 61 74 e.Commons.Attribution.No.Derivat
d3280 69 76 65 73 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a ives.2.0",.........false.....],.
d32a0 20 20 20 20 22 43 43 2d 42 59 2d 4e 44 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 ...."CC-BY-ND-2.5":.[........."C
d32c0 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4e 6f 20 44 reative.Commons.Attribution.No.D
d32e0 65 72 69 76 61 74 69 76 65 73 20 32 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 erivatives.2.5",.........false..
d3300 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 44 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 ...],....."CC-BY-ND-3.0":.[.....
d3320 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f ...."Creative.Commons.Attributio
d3340 6e 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 n.No.Derivatives.3.0",.........f
d3360 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 44 2d 34 2e 30 22 3a 20 alse.....],....."CC-BY-ND-4.0":.
d3380 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 [........."Creative.Commons.Attr
d33a0 69 62 75 74 69 6f 6e 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 34 2e 30 22 2c 0a 20 20 20 ibution.No.Derivatives.4.0",....
d33c0 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 53 41 2d .....false.....],....."CC-BY-SA-
d33e0 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 1.0":.[........."Creative.Common
d3400 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 53 68 61 72 65 20 41 6c 69 6b 65 20 31 2e 30 22 2c 0a s.Attribution.Share.Alike.1.0",.
d3420 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d ........false.....],....."CC-BY-
d3440 53 41 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d SA-2.0":.[........."Creative.Com
d3460 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 53 68 61 72 65 20 41 6c 69 6b 65 20 32 2e 30 mons.Attribution.Share.Alike.2.0
d3480 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d ",.........false.....],....."CC-
d34a0 42 59 2d 53 41 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 76 65 20 BY-SA-2.5":.[........."Creative.
d34c0 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 53 68 61 72 65 20 41 6c 69 6b 65 20 Commons.Attribution.Share.Alike.
d34e0 32 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 2.5",.........false.....],....."
d3500 43 43 2d 42 59 2d 53 41 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 69 CC-BY-SA-3.0":.[........."Creati
d3520 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 53 68 61 72 65 20 41 6c 69 ve.Commons.Attribution.Share.Ali
d3540 6b 65 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 ke.3.0",.........false.....],...
d3560 20 20 22 43 43 2d 42 59 2d 53 41 2d 34 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 .."CC-BY-SA-4.0":.[........."Cre
d3580 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 53 68 61 72 65 20 ative.Commons.Attribution.Share.
d35a0 41 6c 69 6b 65 20 34 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c Alike.4.0",.........false.....],
d35c0 0a 20 20 20 20 22 43 43 30 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 61 74 ....."CC0-1.0":.[........."Creat
d35e0 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 5a 65 72 6f 20 76 31 2e 30 20 55 6e 69 76 65 72 73 61 6c 22 ive.Commons.Zero.v1.0.Universal"
d3600 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 44 44 4c ,.........false.....],....."CDDL
d3620 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 6d 6d 6f 6e 20 44 65 76 65 6c 6f 70 -1.0":.[........."Common.Develop
d3640 6d 65 6e 74 20 61 6e 64 20 44 69 73 74 72 69 62 75 74 69 6f 6e 20 4c 69 63 65 6e 73 65 20 31 2e ment.and.Distribution.License.1.
d3660 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 44 44 0",.........true.....],....."CDD
d3680 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 6d 6d 6f 6e 20 44 65 76 65 6c 6f L-1.1":.[........."Common.Develo
d36a0 70 6d 65 6e 74 20 61 6e 64 20 44 69 73 74 72 69 62 75 74 69 6f 6e 20 4c 69 63 65 6e 73 65 20 31 pment.and.Distribution.License.1
d36c0 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 .1",.........false.....],....."C
d36e0 45 43 49 4c 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 65 43 49 4c 4c 20 46 72 ECILL-1.0":.[........."CeCILL.Fr
d3700 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 20 76 31 ee.Software.License.Agreement.v1
d3720 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 .0",.........false.....],....."C
d3740 45 43 49 4c 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 65 43 49 4c 4c 20 46 72 ECILL-1.1":.[........."CeCILL.Fr
d3760 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 20 76 31 ee.Software.License.Agreement.v1
d3780 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 .1",.........false.....],....."C
d37a0 45 43 49 4c 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 65 43 49 4c 4c 20 46 72 ECILL-2.0":.[........."CeCILL.Fr
d37c0 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 20 76 32 ee.Software.License.Agreement.v2
d37e0 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 .0",.........false.....],....."C
d3800 45 43 49 4c 4c 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 65 43 49 4c 4c 20 46 72 ECILL-2.1":.[........."CeCILL.Fr
d3820 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 20 76 32 ee.Software.License.Agreement.v2
d3840 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 45 .1",.........true.....],....."CE
d3860 43 49 4c 4c 2d 42 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 65 43 49 4c 4c 2d 42 20 46 72 65 CILL-B":.[........."CeCILL-B.Fre
d3880 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 22 2c 0a 20 e.Software.License.Agreement",..
d38a0 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 45 43 49 4c 4c 2d .......false.....],....."CECILL-
d38c0 43 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 65 43 49 4c 4c 2d 43 20 46 72 65 65 20 53 6f 66 C":.[........."CeCILL-C.Free.Sof
d38e0 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 22 2c 0a 20 20 20 20 20 20 tware.License.Agreement",.......
d3900 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 6c 41 72 74 69 73 74 69 63 22 3a ..false.....],....."ClArtistic":
d3920 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6c 61 72 69 66 69 65 64 20 41 72 74 69 73 74 69 63 20 4c .[........."Clarified.Artistic.L
d3940 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 icense",.........false.....],...
d3960 20 20 22 43 4e 52 49 2d 4a 79 74 68 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 4e 52 49 .."CNRI-Jython":.[........."CNRI
d3980 20 4a 79 74 68 6f 6e 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a .Jython.License",.........false.
d39a0 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 4e 52 49 2d 50 79 74 68 6f 6e 22 3a 20 5b 0a 20 20 20 20 ....],....."CNRI-Python":.[.....
d39c0 20 20 20 20 22 43 4e 52 49 20 50 79 74 68 6f 6e 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 ...."CNRI.Python.License",......
d39e0 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 4e 52 49 2d 50 79 74 68 6f 6e 2d ...true.....],....."CNRI-Python-
d3a00 47 50 4c 2d 43 6f 6d 70 61 74 69 62 6c 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 4e 52 49 GPL-Compatible":.[........."CNRI
d3a20 20 50 79 74 68 6f 6e 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 47 50 4c 20 43 6f 6d 70 61 74 69 62 .Python.Open.Source.GPL.Compatib
d3a40 6c 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 22 2c 0a 20 20 20 20 20 20 20 20 66 le.License.Agreement",.........f
d3a60 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 6f 6e 64 6f 72 2d 31 2e 31 22 3a 20 5b 0a alse.....],....."Condor-1.1":.[.
d3a80 20 20 20 20 20 20 20 20 22 43 6f 6e 64 6f 72 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 ........"Condor.Public.License.v
d3aa0 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 1.1",.........false.....],....."
d3ac0 43 50 41 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 6d 6d 6f 6e 20 50 75 62 CPAL-1.0":.[........."Common.Pub
d3ae0 6c 69 63 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 lic.Attribution.License.1.0",...
d3b00 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 50 4c 2d 31 2e 30 22 3a ......true.....],....."CPL-1.0":
d3b20 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 6d 6d 6f 6e 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 .[........."Common.Public.Licens
d3b40 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 e.1.0",.........true.....],.....
d3b60 22 43 50 4f 4c 2d 31 2e 30 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 64 65 20 50 72 6f "CPOL-1.02":.[........."Code.Pro
d3b80 6a 65 63 74 20 4f 70 65 6e 20 4c 69 63 65 6e 73 65 20 31 2e 30 32 22 2c 0a 20 20 20 20 20 20 20 ject.Open.License.1.02",........
d3ba0 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 72 6f 73 73 77 6f 72 64 22 3a 20 5b .false.....],....."Crossword":.[
d3bc0 0a 20 20 20 20 20 20 20 20 22 43 72 6f 73 73 77 6f 72 64 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 ........."Crossword.License",...
d3be0 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 72 79 73 74 61 6c 53 ......false.....],....."CrystalS
d3c00 74 61 63 6b 65 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 79 73 74 61 6c 53 74 61 63 6b tacker":.[........."CrystalStack
d3c20 65 72 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d er.License",.........false.....]
d3c40 2c 0a 20 20 20 20 22 43 55 41 2d 4f 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ,....."CUA-OPL-1.0":.[........."
d3c60 43 55 41 20 4f 66 66 69 63 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c CUA.Office.Public.License.v1.0",
d3c80 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 75 62 65 22 3a .........true.....],....."Cube":
d3ca0 20 5b 0a 20 20 20 20 20 20 20 20 22 43 75 62 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 .[........."Cube.License",......
d3cc0 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 44 2d 46 53 4c 2d 31 2e 30 22 3a ...false.....],....."D-FSL-1.0":
d3ce0 20 5b 0a 20 20 20 20 20 20 20 20 22 44 65 75 74 73 63 68 65 20 46 72 65 69 65 20 53 6f 66 74 77 .[........."Deutsche.Freie.Softw
d3d00 61 72 65 20 4c 69 7a 65 6e 7a 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d are.Lizenz",.........false.....]
d3d20 2c 0a 20 20 20 20 22 64 69 66 66 6d 61 72 6b 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 64 69 66 ,....."diffmark":.[........."dif
d3d40 66 6d 61 72 6b 20 6c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 fmark.license",.........false...
d3d60 20 20 5d 2c 0a 20 20 20 20 22 44 4f 43 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 44 4f 43 20 4c ..],....."DOC":.[........."DOC.L
d3d80 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 icense",.........false.....],...
d3da0 20 20 22 44 6f 74 73 65 71 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 44 6f 74 73 65 71 6e 20 .."Dotseqn":.[........."Dotseqn.
d3dc0 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 License",.........false.....],..
d3de0 20 20 20 22 44 53 44 50 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 44 53 44 50 20 4c 69 63 65 6e ..."DSDP":.[........."DSDP.Licen
d3e00 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 64 se",.........false.....],....."d
d3e20 76 69 70 64 66 6d 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 64 76 69 70 64 66 6d 20 4c 69 63 65 vipdfm":.[........."dvipdfm.Lice
d3e40 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 nse",.........false.....],....."
d3e60 45 43 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 64 75 63 61 74 69 6f 6e 61 6c ECL-1.0":.[........."Educational
d3e80 20 43 6f 6d 6d 75 6e 69 74 79 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 .Community.License.v1.0",.......
d3ea0 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 43 4c 2d 32 2e 30 22 3a 20 5b 0a 20 ..true.....],....."ECL-2.0":.[..
d3ec0 20 20 20 20 20 20 20 22 45 64 75 63 61 74 69 6f 6e 61 6c 20 43 6f 6d 6d 75 6e 69 74 79 20 4c 69 ......."Educational.Community.Li
d3ee0 63 65 6e 73 65 20 76 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c cense.v2.0",.........true.....],
d3f00 0a 20 20 20 20 22 45 46 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 69 66 66 65 ....."EFL-1.0":.[........."Eiffe
d3f20 6c 20 46 6f 72 75 6d 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 l.Forum.License.v1.0",.........t
d3f40 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 46 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 rue.....],....."EFL-2.0":.[.....
d3f60 20 20 20 20 22 45 69 66 66 65 6c 20 46 6f 72 75 6d 20 4c 69 63 65 6e 73 65 20 76 32 2e 30 22 2c ...."Eiffel.Forum.License.v2.0",
d3f80 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 65 47 65 6e 69 78 .........true.....],....."eGenix
d3fa0 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 65 47 65 6e 69 78 2e 63 6f 6d 20 50 75 62 6c 69 63 20 ":.[........."eGenix.com.Public.
d3fc0 4c 69 63 65 6e 73 65 20 31 2e 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 License.1.1.0",.........false...
d3fe0 20 20 5d 2c 0a 20 20 20 20 22 45 6e 74 65 73 73 61 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 ..],....."Entessa":.[........."E
d4000 6e 74 65 73 73 61 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 ntessa.Public.License.v1.0",....
d4020 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 50 4c 2d 31 2e 30 22 3a 20 .....true.....],....."EPL-1.0":.
d4040 5b 0a 20 20 20 20 20 20 20 20 22 45 63 6c 69 70 73 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 [........."Eclipse.Public.Licens
d4060 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 e.1.0",.........true.....],.....
d4080 22 45 72 6c 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 72 6c 61 6e 67 20 50 "ErlPL-1.1":.[........."Erlang.P
d40a0 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c ublic.License.v1.1",.........fal
d40c0 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 55 44 61 74 61 67 72 69 64 22 3a 20 5b 0a 20 20 se.....],....."EUDatagrid":.[...
d40e0 20 20 20 20 20 20 22 45 55 20 44 61 74 61 47 72 69 64 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 ......"EU.DataGrid.Software.Lice
d4100 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 nse",.........true.....],....."E
d4120 55 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 75 72 6f 70 65 61 6e 20 55 6e UPL-1.0":.[........."European.Un
d4140 69 6f 6e 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 ion.Public.License.1.0",........
d4160 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 55 50 4c 2d 31 2e 31 22 3a 20 5b 0a .false.....],....."EUPL-1.1":.[.
d4180 20 20 20 20 20 20 20 20 22 45 75 72 6f 70 65 61 6e 20 55 6e 69 6f 6e 20 50 75 62 6c 69 63 20 4c ........"European.Union.Public.L
d41a0 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c icense.1.1",.........true.....],
d41c0 0a 20 20 20 20 22 45 75 72 6f 73 79 6d 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 75 72 6f 73 ....."Eurosym":.[........."Euros
d41e0 79 6d 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d ym.License",.........false.....]
d4200 2c 0a 20 20 20 20 22 46 61 69 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 61 69 72 20 4c 69 ,....."Fair":.[........."Fair.Li
d4220 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 cense",.........true.....],.....
d4240 22 46 72 61 6d 65 77 6f 72 78 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 72 61 6d "Frameworx-1.0":.[........."Fram
d4260 65 77 6f 72 78 20 4f 70 65 6e 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 eworx.Open.License.1.0",........
d4280 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 72 65 65 49 6d 61 67 65 22 3a 20 5b 0a .true.....],....."FreeImage":.[.
d42a0 20 20 20 20 20 20 20 20 22 46 72 65 65 49 6d 61 67 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 ........"FreeImage.Public.Licens
d42c0 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 e.v1.0",.........false.....],...
d42e0 20 20 22 46 53 46 55 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 53 46 20 55 6e 6c 69 6d 69 .."FSFUL":.[........."FSF.Unlimi
d4300 74 65 64 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 ted.License",.........false.....
d4320 5d 2c 0a 20 20 20 20 22 46 53 46 55 4c 4c 52 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 53 46 ],....."FSFULLR":.[........."FSF
d4340 20 55 6e 6c 69 6d 69 74 65 64 20 4c 69 63 65 6e 73 65 20 28 77 69 74 68 20 4c 69 63 65 6e 73 65 .Unlimited.License.(with.License
d4360 20 52 65 74 65 6e 74 69 6f 6e 29 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 .Retention)",.........false.....
d4380 5d 2c 0a 20 20 20 20 22 46 54 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 72 65 65 74 79 70 ],....."FTL":.[........."Freetyp
d43a0 65 20 50 72 6f 6a 65 63 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 e.Project.License",.........fals
d43c0 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 46 44 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 e.....],....."GFDL-1.1":.[......
d43e0 20 20 20 22 47 4e 55 20 46 72 65 65 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 4c 69 63 65 6e ..."GNU.Free.Documentation.Licen
d4400 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 se.v1.1",.........false.....],..
d4420 20 20 20 22 47 46 44 4c 2d 31 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 20 46 72 ..."GFDL-1.2":.[........."GNU.Fr
d4440 65 65 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 4c 69 63 65 6e 73 65 20 76 31 2e 32 22 2c 0a ee.Documentation.License.v1.2",.
d4460 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 46 44 4c 2d 31 ........false.....],....."GFDL-1
d4480 2e 33 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 20 46 72 65 65 20 44 6f 63 75 6d 65 6e .3":.[........."GNU.Free.Documen
d44a0 74 61 74 69 6f 6e 20 4c 69 63 65 6e 73 65 20 76 31 2e 33 22 2c 0a 20 20 20 20 20 20 20 20 66 61 tation.License.v1.3",.........fa
d44c0 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 69 66 74 77 61 72 65 22 3a 20 5b 0a 20 20 20 lse.....],....."Giftware":.[....
d44e0 20 20 20 20 20 22 47 69 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 ....."Giftware.License",........
d4500 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 4c 32 50 53 22 3a 20 5b 0a 20 20 20 .false.....],....."GL2PS":.[....
d4520 20 20 20 20 20 22 47 4c 32 50 53 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 ....."GL2PS.License",.........fa
d4540 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 6c 69 64 65 22 3a 20 5b 0a 20 20 20 20 20 20 lse.....],....."Glide":.[.......
d4560 20 20 22 33 64 66 78 20 47 6c 69 64 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 .."3dfx.Glide.License",.........
d4580 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 6c 75 6c 78 65 22 3a 20 5b 0a 20 20 20 false.....],....."Glulxe":.[....
d45a0 20 20 20 20 20 22 47 6c 75 6c 78 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 ....."Glulxe.License",.........f
d45c0 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 67 6e 75 70 6c 6f 74 22 3a 20 5b 0a 20 20 20 alse.....],....."gnuplot":.[....
d45e0 20 20 20 20 20 22 67 6e 75 70 6c 6f 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 ....."gnuplot.License",.........
d4600 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 false.....],....."GPL-1.0":.[...
d4620 20 20 20 20 20 20 22 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 ......"GNU.General.Public.Licens
d4640 65 20 76 31 2e 30 20 6f 6e 6c 79 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 e.v1.0.only",.........false.....
d4660 5d 2c 0a 20 20 20 20 22 47 50 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 ],....."GPL-2.0":.[........."GNU
d4680 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 30 20 6f 6e 6c .General.Public.License.v2.0.onl
d46a0 79 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 50 4c y",.........true.....],....."GPL
d46c0 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 -3.0":.[........."GNU.General.Pu
d46e0 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 33 2e 30 20 6f 6e 6c 79 22 2c 0a 20 20 20 20 20 20 20 blic.License.v3.0.only",........
d4700 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 67 53 4f 41 50 2d 31 2e 33 62 22 3a 20 5b .true.....],....."gSOAP-1.3b":.[
d4720 0a 20 20 20 20 20 20 20 20 22 67 53 4f 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 ........."gSOAP.Public.License.v
d4740 31 2e 33 62 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 1.3b",.........false.....],.....
d4760 22 48 61 73 6b 65 6c 6c 52 65 70 6f 72 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 48 61 73 6b "HaskellReport":.[........."Hask
d4780 65 6c 6c 20 4c 61 6e 67 75 61 67 65 20 52 65 70 6f 72 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 ell.Language.Report.License",...
d47a0 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 48 50 4e 44 22 3a 20 5b ......false.....],....."HPND":.[
d47c0 0a 20 20 20 20 20 20 20 20 22 48 69 73 74 6f 72 69 63 20 50 65 72 6d 69 73 73 69 6f 6e 20 4e 6f ........."Historic.Permission.No
d47e0 74 69 63 65 20 61 6e 64 20 44 69 73 63 6c 61 69 6d 65 72 22 2c 0a 20 20 20 20 20 20 20 20 74 72 tice.and.Disclaimer",.........tr
d4800 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 42 4d 2d 70 69 62 73 22 3a 20 5b 0a 20 20 20 20 ue.....],....."IBM-pibs":.[.....
d4820 20 20 20 20 22 49 42 4d 20 50 6f 77 65 72 50 43 20 49 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 ...."IBM.PowerPC.Initialization.
d4840 61 6e 64 20 42 6f 6f 74 20 53 6f 66 74 77 61 72 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 and.Boot.Software",.........fals
d4860 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 43 55 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 e.....],....."ICU":.[........."I
d4880 43 55 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d CU.License",.........false.....]
d48a0 2c 0a 20 20 20 20 22 49 4a 47 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 6e 64 65 70 65 6e 64 ,....."IJG":.[........."Independ
d48c0 65 6e 74 20 4a 50 45 47 20 47 72 6f 75 70 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 ent.JPEG.Group.License",........
d48e0 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 6d 61 67 65 4d 61 67 69 63 6b 22 3a .false.....],....."ImageMagick":
d4900 20 5b 0a 20 20 20 20 20 20 20 20 22 49 6d 61 67 65 4d 61 67 69 63 6b 20 4c 69 63 65 6e 73 65 22 .[........."ImageMagick.License"
d4920 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 69 4d 61 74 ,.........false.....],....."iMat
d4940 69 78 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 69 4d 61 74 69 78 20 53 74 61 6e 64 61 72 64 20 ix":.[........."iMatix.Standard.
d4960 46 75 6e 63 74 69 6f 6e 20 4c 69 62 72 61 72 79 20 41 67 72 65 65 6d 65 6e 74 22 2c 0a 20 20 20 Function.Library.Agreement",....
d4980 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 6d 6c 69 62 32 22 3a 20 .....false.....],....."Imlib2":.
d49a0 5b 0a 20 20 20 20 20 20 20 20 22 49 6d 6c 69 62 32 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 [........."Imlib2.License",.....
d49c0 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 6e 74 65 6c 22 3a 20 5b 0a ....false.....],....."Intel":.[.
d49e0 20 20 20 20 20 20 20 20 22 49 6e 74 65 6c 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 6e ........"Intel.Open.Source.Licen
d4a00 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 6e se",.........true.....],....."In
d4a20 74 65 6c 2d 41 43 50 49 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 6e 74 65 6c 20 41 43 50 49 tel-ACPI":.[........."Intel.ACPI
d4a40 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 22 2c 0a 20 20 .Software.License.Agreement",...
d4a60 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 6e 74 65 72 62 61 73 ......false.....],....."Interbas
d4a80 65 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 6e 74 65 72 62 61 73 65 20 50 75 62 e-1.0":.[........."Interbase.Pub
d4aa0 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 lic.License.v1.0",.........false
d4ac0 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 50 41 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 50 .....],....."IPA":.[........."IP
d4ae0 41 20 46 6f 6e 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 A.Font.License",.........true...
d4b00 20 20 5d 2c 0a 20 20 20 20 22 49 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 ..],....."IPL-1.0":.[........."I
d4b20 42 4d 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 BM.Public.License.v1.0",........
d4b40 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 53 43 22 3a 20 5b 0a 20 20 20 20 20 20 .true.....],....."ISC":.[.......
d4b60 20 20 22 49 53 43 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 .."ISC.License",.........true...
d4b80 20 20 5d 2c 0a 20 20 20 20 22 4a 61 73 50 65 72 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 ..],....."JasPer-2.0":.[........
d4ba0 20 22 4a 61 73 50 65 72 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 ."JasPer.License",.........false
d4bc0 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4a 53 4f 4e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4a .....],....."JSON":.[........."J
d4be0 53 4f 4e 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 SON.License",.........false.....
d4c00 5d 2c 0a 20 20 20 20 22 4c 61 74 65 78 32 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 61 74 ],....."Latex2e":.[........."Lat
d4c20 65 78 32 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 ex2e.License",.........false....
d4c40 20 5d 2c 0a 20 20 20 20 22 4c 65 70 74 6f 6e 69 63 61 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 .],....."Leptonica":.[........."
d4c60 4c 65 70 74 6f 6e 69 63 61 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 Leptonica.License",.........fals
d4c80 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 47 50 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 e.....],....."LGPL-2.0":.[......
d4ca0 20 20 20 22 47 4e 55 20 4c 69 62 72 61 72 79 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c ..."GNU.Library.General.Public.L
d4cc0 69 63 65 6e 73 65 20 76 32 20 6f 6e 6c 79 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 icense.v2.only",.........true...
d4ce0 20 20 5d 2c 0a 20 20 20 20 22 4c 47 50 4c 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ..],....."LGPL-2.1":.[........."
d4d00 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 GNU.Lesser.General.Public.Licens
d4d20 65 20 76 32 2e 31 20 6f 6e 6c 79 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d e.v2.1.only",.........true.....]
d4d40 2c 0a 20 20 20 20 22 4c 47 50 4c 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 ,....."LGPL-3.0":.[........."GNU
d4d60 20 4c 65 73 73 65 72 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 .Lesser.General.Public.License.v
d4d80 33 2e 30 20 6f 6e 6c 79 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 3.0.only",.........true.....],..
d4da0 20 20 20 22 4c 47 50 4c 4c 52 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 65 73 73 65 72 20 47 ..."LGPLLR":.[........."Lesser.G
d4dc0 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 46 6f 72 20 4c 69 6e 67 75 69 eneral.Public.License.For.Lingui
d4de0 73 74 69 63 20 52 65 73 6f 75 72 63 65 73 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 stic.Resources",.........false..
d4e00 20 20 20 5d 2c 0a 20 20 20 20 22 4c 69 62 70 6e 67 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 6c ...],....."Libpng":.[........."l
d4e20 69 62 70 6e 67 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 ibpng.License",.........false...
d4e40 20 20 5d 2c 0a 20 20 20 20 22 6c 69 62 74 69 66 66 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 6c ..],....."libtiff":.[........."l
d4e60 69 62 74 69 66 66 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 ibtiff.License",.........false..
d4e80 20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ...],....."LPL-1.0":.[........."
d4ea0 4c 75 63 65 6e 74 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 56 65 72 73 69 6f 6e 20 31 2e Lucent.Public.License.Version.1.
d4ec0 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 4c 0",.........true.....],....."LPL
d4ee0 2d 31 2e 30 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 75 63 65 6e 74 20 50 75 62 6c 69 63 -1.02":.[........."Lucent.Public
d4f00 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 32 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 .License.v1.02",.........true...
d4f20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ..],....."LPPL-1.0":.[........."
d4f40 4c 61 54 65 58 20 50 72 6f 6a 65 63 74 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e LaTeX.Project.Public.License.v1.
d4f60 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 0",.........false.....],....."LP
d4f80 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 61 54 65 58 20 50 72 6f 6a 65 63 PL-1.1":.[........."LaTeX.Projec
d4fa0 74 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 t.Public.License.v1.1",.........
d4fc0 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 50 4c 2d 31 2e 32 22 3a 20 5b 0a 20 false.....],....."LPPL-1.2":.[..
d4fe0 20 20 20 20 20 20 20 22 4c 61 54 65 58 20 50 72 6f 6a 65 63 74 20 50 75 62 6c 69 63 20 4c 69 63 ......."LaTeX.Project.Public.Lic
d5000 65 6e 73 65 20 76 31 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c ense.v1.2",.........false.....],
d5020 0a 20 20 20 20 22 4c 50 50 4c 2d 31 2e 33 61 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 61 54 ....."LPPL-1.3a":.[........."LaT
d5040 65 58 20 50 72 6f 6a 65 63 74 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 33 61 22 2c eX.Project.Public.License.1.3a",
d5060 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 50 4c 2d .........false.....],....."LPPL-
d5080 31 2e 33 63 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 61 54 65 58 20 50 72 6f 6a 65 63 74 20 1.3c":.[........."LaTeX.Project.
d50a0 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 33 63 22 2c 0a 20 20 20 20 20 20 20 20 74 Public.License.v1.3c",.........t
d50c0 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 61 6b 65 49 6e 64 65 78 22 3a 20 5b 0a 20 20 rue.....],....."MakeIndex":.[...
d50e0 20 20 20 20 20 20 22 4d 61 6b 65 49 6e 64 65 78 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 ......"MakeIndex.License",......
d5100 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 69 72 4f 53 22 3a 20 5b 0a 20 ...false.....],....."MirOS":.[..
d5120 20 20 20 20 20 20 20 22 4d 69 72 4f 53 20 4c 69 63 65 6e 63 65 22 2c 0a 20 20 20 20 20 20 20 20 ......."MirOS.Licence",.........
d5140 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 49 54 22 3a 20 5b 0a 20 20 20 20 20 20 20 true.....],....."MIT":.[........
d5160 20 22 4d 49 54 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 ."MIT.License",.........true....
d5180 20 5d 2c 0a 20 20 20 20 22 4d 49 54 2d 61 64 76 65 72 74 69 73 69 6e 67 22 3a 20 5b 0a 20 20 20 .],....."MIT-advertising":.[....
d51a0 20 20 20 20 20 22 45 6e 6c 69 67 68 74 65 6e 6d 65 6e 74 20 4c 69 63 65 6e 73 65 20 28 65 31 36 ....."Enlightenment.License.(e16
d51c0 29 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 49 )",.........false.....],....."MI
d51e0 54 2d 43 4d 55 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 4d 55 20 4c 69 63 65 6e 73 65 22 2c T-CMU":.[........."CMU.License",
d5200 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 49 54 2d 65 .........false.....],....."MIT-e
d5220 6e 6e 61 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 65 6e 6e 61 20 4c 69 63 65 6e 73 65 22 2c 0a nna":.[........."enna.License",.
d5240 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 49 54 2d 66 65 ........false.....],....."MIT-fe
d5260 68 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 66 65 68 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 h":.[........."feh.License",....
d5280 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 49 54 4e 46 41 22 3a 20 .....false.....],....."MITNFA":.
d52a0 5b 0a 20 20 20 20 20 20 20 20 22 4d 49 54 20 2b 6e 6f 2d 66 61 6c 73 65 2d 61 74 74 72 69 62 73 [........."MIT.+no-false-attribs
d52c0 20 6c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a .license",.........false.....],.
d52e0 20 20 20 20 22 4d 6f 74 6f 73 6f 74 6f 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 6f 74 6f 73 ...."Motosoto":.[........."Motos
d5300 6f 74 6f 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d oto.License",.........true.....]
d5320 2c 0a 20 20 20 20 22 6d 70 69 63 68 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 6d 70 69 63 68 ,....."mpich2":.[........."mpich
d5340 32 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 2.License",.........false.....],
d5360 0a 20 20 20 20 22 4d 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 6f 7a 69 6c ....."MPL-1.0":.[........."Mozil
d5380 6c 61 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 la.Public.License.1.0",.........
d53a0 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 true.....],....."MPL-1.1":.[....
d53c0 20 20 20 20 20 22 4d 6f 7a 69 6c 6c 61 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 31 ....."Mozilla.Public.License.1.1
d53e0 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 50 4c 2d ",.........true.....],....."MPL-
d5400 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 6f 7a 69 6c 6c 61 20 50 75 62 6c 69 63 20 2.0":.[........."Mozilla.Public.
d5420 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d License.2.0",.........true.....]
d5440 2c 0a 20 20 20 20 22 4d 50 4c 2d 32 2e 30 2d 6e 6f 2d 63 6f 70 79 6c 65 66 74 2d 65 78 63 65 70 ,....."MPL-2.0-no-copyleft-excep
d5460 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 6f 7a 69 6c 6c 61 20 50 75 62 6c 69 63 tion":.[........."Mozilla.Public
d5480 20 4c 69 63 65 6e 73 65 20 32 2e 30 20 28 6e 6f 20 63 6f 70 79 6c 65 66 74 20 65 78 63 65 70 74 .License.2.0.(no.copyleft.except
d54a0 69 6f 6e 29 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 ion)",.........true.....],....."
d54c0 4d 53 2d 50 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 69 63 72 6f 73 6f 66 74 20 50 75 62 MS-PL":.[........."Microsoft.Pub
d54e0 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d lic.License",.........true.....]
d5500 2c 0a 20 20 20 20 22 4d 53 2d 52 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 69 63 72 6f 73 ,....."MS-RL":.[........."Micros
d5520 6f 66 74 20 52 65 63 69 70 72 6f 63 61 6c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 oft.Reciprocal.License",........
d5540 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 54 4c 4c 22 3a 20 5b 0a 20 20 20 20 20 .true.....],....."MTLL":.[......
d5560 20 20 20 22 4d 61 74 72 69 78 20 54 65 6d 70 6c 61 74 65 20 4c 69 62 72 61 72 79 20 4c 69 63 65 ..."Matrix.Template.Library.Lice
d5580 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 nse",.........false.....],....."
d55a0 4d 75 6c 74 69 63 73 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 75 6c 74 69 63 73 20 4c 69 63 Multics":.[........."Multics.Lic
d55c0 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 ense",.........true.....],....."
d55e0 4d 75 70 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 75 70 20 4c 69 63 65 6e 73 65 22 2c 0a 20 Mup":.[........."Mup.License",..
d5600 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 41 53 41 2d 31 2e .......false.....],....."NASA-1.
d5620 33 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 41 53 41 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 3":.[........."NASA.Open.Source.
d5640 41 67 72 65 65 6d 65 6e 74 20 31 2e 33 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 Agreement.1.3",.........true....
d5660 20 5d 2c 0a 20 20 20 20 22 4e 61 75 6d 65 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 61 75 .],....."Naumen":.[........."Nau
d5680 6d 65 6e 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 men.Public.License",.........tru
d56a0 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 42 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 e.....],....."NBPL-1.0":.[......
d56c0 20 20 20 22 4e 65 74 20 42 6f 6f 6c 65 61 6e 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 ..."Net.Boolean.Public.License.v
d56e0 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 43 1",.........false.....],....."NC
d5700 53 41 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 49 6c SA":.[........."University.of.Il
d5720 6c 69 6e 6f 69 73 2f 4e 43 53 41 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 22 linois/NCSA.Open.Source.License"
d5740 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 65 74 43 44 ,.........true.....],....."NetCD
d5760 46 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 74 43 44 46 20 6c 69 63 65 6e 73 65 22 2c 0a F":.[........."NetCDF.license",.
d5780 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 65 77 73 6c 65 ........false.....],....."Newsle
d57a0 74 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 77 73 6c 65 74 72 20 4c 69 63 65 6e 73 65 tr":.[........."Newsletr.License
d57c0 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 47 50 ",.........false.....],....."NGP
d57e0 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 74 68 61 63 6b 20 47 65 6e 65 72 61 6c 20 50 L":.[........."Nethack.General.P
d5800 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 ublic.License",.........true....
d5820 20 5d 2c 0a 20 20 20 20 22 4e 4c 50 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 6f 20 4c 69 .],....."NLPL":.[........."No.Li
d5840 6d 69 74 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c mit.Public.License",.........fal
d5860 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 6f 6b 69 61 22 3a 20 5b 0a 20 20 20 20 20 20 20 se.....],....."Nokia":.[........
d5880 20 22 4e 6f 6b 69 61 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 ."Nokia.Open.Source.License",...
d58a0 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 4f 53 4c 22 3a 20 5b 0a ......true.....],....."NOSL":.[.
d58c0 20 20 20 20 20 20 20 20 22 4e 65 74 69 7a 65 6e 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 ........"Netizen.Open.Source.Lic
d58e0 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 ense",.........false.....],.....
d5900 22 4e 6f 77 65 62 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 6f 77 65 62 20 4c 69 63 65 6e 73 "Noweb":.[........."Noweb.Licens
d5920 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 50 e",.........false.....],....."NP
d5940 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 74 73 63 61 70 65 20 50 75 62 6c L-1.0":.[........."Netscape.Publ
d5960 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a ic.License.v1.0",.........false.
d5980 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ....],....."NPL-1.1":.[.........
d59a0 22 4e 65 74 73 63 61 70 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a "Netscape.Public.License.v1.1",.
d59c0 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 50 4f 53 4c 2d ........false.....],....."NPOSL-
d59e0 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 6f 6e 2d 50 72 6f 66 69 74 20 4f 70 65 6e 3.0":.[........."Non-Profit.Open
d5a00 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 .Software.License.3.0",.........
d5a20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 52 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 true.....],....."NRL":.[........
d5a40 20 22 4e 52 4c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 ."NRL.License",.........false...
d5a60 20 20 5d 2c 0a 20 20 20 20 22 4e 54 50 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 54 50 20 4c ..],....."NTP":.[........."NTP.L
d5a80 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 icense",.........true.....],....
d5aa0 20 22 4e 75 6e 69 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 75 6e 69 74 20 4c 69 63 65 6e ."Nunit":.[........."Nunit.Licen
d5ac0 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f se",.........false.....],....."O
d5ae0 43 4c 43 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 43 4c 43 20 52 65 73 65 61 72 CLC-2.0":.[........."OCLC.Resear
d5b00 63 68 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 ch.Public.License.2.0",.........
d5b20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 44 62 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 true.....],....."ODbL-1.0":.[...
d5b40 20 20 20 20 20 20 22 4f 44 43 20 4f 70 65 6e 20 44 61 74 61 62 61 73 65 20 4c 69 63 65 6e 73 65 ......"ODC.Open.Database.License
d5b60 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 .v1.0",.........false.....],....
d5b80 20 22 4f 46 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 49 4c 20 4f 70 65 6e 20 ."OFL-1.0":.[........."SIL.Open.
d5ba0 46 6f 6e 74 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 Font.License.1.0",.........false
d5bc0 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 46 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 .....],....."OFL-1.1":.[........
d5be0 20 22 53 49 4c 20 4f 70 65 6e 20 46 6f 6e 74 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 ."SIL.Open.Font.License.1.1",...
d5c00 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 47 54 53 4c 22 3a 20 5b ......true.....],....."OGTSL":.[
d5c20 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 47 72 6f 75 70 20 54 65 73 74 20 53 75 69 74 65 20 ........."Open.Group.Test.Suite.
d5c40 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 License",.........true.....],...
d5c60 20 20 22 4f 4c 44 41 50 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c .."OLDAP-1.1":.[........."Open.L
d5c80 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 DAP.Public.License.v1.1",.......
d5ca0 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 31 2e 32 22 3a 20 ..false.....],....."OLDAP-1.2":.
d5cc0 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 [........."Open.LDAP.Public.Lice
d5ce0 6e 73 65 20 76 31 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a nse.v1.2",.........false.....],.
d5d00 20 20 20 20 22 4f 4c 44 41 50 2d 31 2e 33 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e ...."OLDAP-1.3":.[........."Open
d5d20 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 33 22 2c 0a 20 20 20 20 .LDAP.Public.License.v1.3",.....
d5d40 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 31 2e 34 22 ....false.....],....."OLDAP-1.4"
d5d60 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 :.[........."Open.LDAP.Public.Li
d5d80 63 65 6e 73 65 20 76 31 2e 34 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d cense.v1.4",.........false.....]
d5da0 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 ,....."OLDAP-2.0":.[........."Op
d5dc0 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 30 20 28 6f 72 20 en.LDAP.Public.License.v2.0.(or.
d5de0 70 6f 73 73 69 62 6c 79 20 32 2e 30 41 20 61 6e 64 20 32 2e 30 42 29 22 2c 0a 20 20 20 20 20 20 possibly.2.0A.and.2.0B)",.......
d5e00 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 30 2e 31 22 ..false.....],....."OLDAP-2.0.1"
d5e20 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 :.[........."Open.LDAP.Public.Li
d5e40 63 65 6e 73 65 20 76 32 2e 30 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 cense.v2.0.1",.........false....
d5e60 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 .],....."OLDAP-2.1":.[........."
d5e80 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 31 22 2c 0a Open.LDAP.Public.License.v2.1",.
d5ea0 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d ........false.....],....."OLDAP-
d5ec0 32 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 2.2":.[........."Open.LDAP.Publi
d5ee0 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 c.License.v2.2",.........false..
d5f00 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 ...],....."OLDAP-2.2.1":.[......
d5f20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e ..."Open.LDAP.Public.License.v2.
d5f40 32 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 2.1",.........false.....],....."
d5f60 4f 4c 44 41 50 2d 32 2e 32 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 OLDAP-2.2.2":.[........."Open.LD
d5f80 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 20 32 2e 32 2e 32 22 2c 0a 20 20 20 20 20 AP.Public.License..2.2.2",......
d5fa0 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 33 22 3a ...false.....],....."OLDAP-2.3":
d5fc0 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 .[........."Open.LDAP.Public.Lic
d5fe0 65 6e 73 65 20 76 32 2e 33 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c ense.v2.3",.........false.....],
d6000 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 34 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 ....."OLDAP-2.4":.[........."Ope
d6020 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 34 22 2c 0a 20 20 20 n.LDAP.Public.License.v2.4",....
d6040 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 35 .....false.....],....."OLDAP-2.5
d6060 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c ":.[........."Open.LDAP.Public.L
d6080 69 63 65 6e 73 65 20 76 32 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 icense.v2.5",.........false.....
d60a0 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 36 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f ],....."OLDAP-2.6":.[........."O
d60c0 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 36 22 2c 0a 20 pen.LDAP.Public.License.v2.6",..
d60e0 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 .......false.....],....."OLDAP-2
d6100 2e 37 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 .7":.[........."Open.LDAP.Public
d6120 20 4c 69 63 65 6e 73 65 20 76 32 2e 37 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 .License.v2.7",.........false...
d6140 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 38 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ..],....."OLDAP-2.8":.[.........
d6160 22 4f 70 65 6e 20 4c 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 38 22 2c "Open.LDAP.Public.License.v2.8",
d6180 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4d 4c 22 3a .........false.....],....."OML":
d61a0 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4d 61 72 6b 65 74 20 4c 69 63 65 6e 73 65 22 .[........."Open.Market.License"
d61c0 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 70 65 6e ,.........false.....],....."Open
d61e0 53 53 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 53 53 4c 20 4c 69 63 65 6e 73 65 SSL":.[........."OpenSSL.License
d6200 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 50 4c ",.........false.....],....."OPL
d6220 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 50 75 62 6c 69 63 20 4c 69 -1.0":.[........."Open.Public.Li
d6240 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d cense.v1.0",.........false.....]
d6260 2c 0a 20 20 20 20 22 4f 53 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e ,....."OSL-1.0":.[........."Open
d6280 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 .Software.License.1.0",.........
d62a0 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 53 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 true.....],....."OSL-1.1":.[....
d62c0 20 20 20 20 20 22 4f 70 65 6e 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 ....."Open.Software.License.1.1"
d62e0 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 53 4c 2d ,.........false.....],....."OSL-
d6300 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 53 6f 66 74 77 61 72 65 20 4c 2.0":.[........."Open.Software.L
d6320 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c icense.2.0",.........true.....],
d6340 0a 20 20 20 20 22 4f 53 4c 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 ....."OSL-2.1":.[........."Open.
d6360 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 32 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 74 Software.License.2.1",.........t
d6380 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 53 4c 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 rue.....],....."OSL-3.0":.[.....
d63a0 20 20 20 20 22 4f 70 65 6e 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 33 2e 30 22 2c ...."Open.Software.License.3.0",
d63c0 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 50 44 44 4c 2d 31 .........true.....],....."PDDL-1
d63e0 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 44 43 20 50 75 62 6c 69 63 20 44 6f 6d 61 69 .0":.[........."ODC.Public.Domai
d6400 6e 20 44 65 64 69 63 61 74 69 6f 6e 20 26 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 n.Dedication.&.License.1.0",....
d6420 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 50 48 50 2d 33 2e 30 22 3a .....false.....],....."PHP-3.0":
d6440 20 5b 0a 20 20 20 20 20 20 20 20 22 50 48 50 20 4c 69 63 65 6e 73 65 20 76 33 2e 30 22 2c 0a 20 .[........."PHP.License.v3.0",..
d6460 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 50 48 50 2d 33 2e 30 31 .......true.....],....."PHP-3.01
d6480 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 50 48 50 20 4c 69 63 65 6e 73 65 20 76 33 2e 30 31 22 ":.[........."PHP.License.v3.01"
d64a0 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 50 6c 65 78 ,.........false.....],....."Plex
d64c0 75 73 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 50 6c 65 78 75 73 20 43 6c 61 73 73 77 6f 72 6c us":.[........."Plexus.Classworl
d64e0 64 73 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d ds.License",.........false.....]
d6500 2c 0a 20 20 20 20 22 50 6f 73 74 67 72 65 53 51 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 50 ,....."PostgreSQL":.[........."P
d6520 6f 73 74 67 72 65 53 51 4c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 ostgreSQL.License",.........true
d6540 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 70 73 66 72 61 67 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 .....],....."psfrag":.[.........
d6560 22 70 73 66 72 61 67 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a "psfrag.License",.........false.
d6580 20 20 20 20 5d 2c 0a 20 20 20 20 22 70 73 75 74 69 6c 73 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ....],....."psutils":.[.........
d65a0 22 70 73 75 74 69 6c 73 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 "psutils.License",.........false
d65c0 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 50 79 74 68 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 .....],....."Python-2.0":.[.....
d65e0 20 20 20 20 22 50 79 74 68 6f 6e 20 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 ...."Python.License.2.0",.......
d6600 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 51 68 75 6c 6c 22 3a 20 5b 0a 20 20 20 ..true.....],....."Qhull":.[....
d6620 20 20 20 20 20 22 51 68 75 6c 6c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 ....."Qhull.License",.........fa
d6640 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 51 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 lse.....],....."QPL-1.0":.[.....
d6660 20 20 20 20 22 51 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 ...."Q.Public.License.1.0",.....
d6680 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 52 64 69 73 63 22 3a 20 5b 0a 20 ....true.....],....."Rdisc":.[..
d66a0 20 20 20 20 20 20 20 22 52 64 69 73 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 ......."Rdisc.License",.........
d66c0 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 52 48 65 43 6f 73 2d 31 2e 31 22 3a 20 5b false.....],....."RHeCos-1.1":.[
d66e0 0a 20 20 20 20 20 20 20 20 22 52 65 64 20 48 61 74 20 65 43 6f 73 20 50 75 62 6c 69 63 20 4c 69 ........."Red.Hat.eCos.Public.Li
d6700 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d cense.v1.1",.........false.....]
d6720 2c 0a 20 20 20 20 22 52 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 65 63 69 ,....."RPL-1.1":.[........."Reci
d6740 70 72 6f 63 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 20 20 procal.Public.License.1.1",.....
d6760 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 52 50 4c 2d 31 2e 35 22 3a 20 5b ....true.....],....."RPL-1.5":.[
d6780 0a 20 20 20 20 20 20 20 20 22 52 65 63 69 70 72 6f 63 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 ........."Reciprocal.Public.Lice
d67a0 6e 73 65 20 31 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 nse.1.5",.........true.....],...
d67c0 20 20 22 52 50 53 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 65 61 6c 4e 65 74 .."RPSL-1.0":.[........."RealNet
d67e0 77 6f 72 6b 73 20 50 75 62 6c 69 63 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 works.Public.Source.License.v1.0
d6800 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 52 53 41 2d ",.........true.....],....."RSA-
d6820 4d 44 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 53 41 20 4d 65 73 73 61 67 65 2d 44 69 67 65 MD":.[........."RSA.Message-Dige
d6840 73 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d st.License",.........false.....]
d6860 2c 0a 20 20 20 20 22 52 53 43 50 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 69 63 6f 68 20 ,....."RSCPL":.[........."Ricoh.
d6880 53 6f 75 72 63 65 20 43 6f 64 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 Source.Code.Public.License",....
d68a0 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 52 75 62 79 22 3a 20 5b 0a 20 .....true.....],....."Ruby":.[..
d68c0 20 20 20 20 20 20 20 22 52 75 62 79 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 ......."Ruby.License",.........f
d68e0 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 41 58 2d 50 44 22 3a 20 5b 0a 20 20 20 20 alse.....],....."SAX-PD":.[.....
d6900 20 20 20 20 22 53 61 78 20 50 75 62 6c 69 63 20 44 6f 6d 61 69 6e 20 4e 6f 74 69 63 65 22 2c 0a ...."Sax.Public.Domain.Notice",.
d6920 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 61 78 70 61 74 ........false.....],....."Saxpat
d6940 68 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 61 78 70 61 74 68 20 4c 69 63 65 6e 73 65 22 2c h":.[........."Saxpath.License",
d6960 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 43 45 41 22 .........false.....],....."SCEA"
d6980 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 43 45 41 20 53 68 61 72 65 64 20 53 6f 75 72 63 65 20 :.[........."SCEA.Shared.Source.
d69a0 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 License",.........false.....],..
d69c0 20 20 20 22 53 65 6e 64 6d 61 69 6c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 65 6e 64 6d 61 ..."Sendmail":.[........."Sendma
d69e0 69 6c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d il.License",.........false.....]
d6a00 2c 0a 20 20 20 20 22 53 47 49 2d 42 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 47 ,....."SGI-B-1.0":.[........."SG
d6a20 49 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 42 20 76 31 2e 30 22 2c I.Free.Software.License.B.v1.0",
d6a40 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 47 49 2d 42 .........false.....],....."SGI-B
d6a60 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 47 49 20 46 72 65 65 20 53 6f 66 74 77 -1.1":.[........."SGI.Free.Softw
d6a80 61 72 65 20 4c 69 63 65 6e 73 65 20 42 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c are.License.B.v1.1",.........fal
d6aa0 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 47 49 2d 42 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 se.....],....."SGI-B-2.0":.[....
d6ac0 20 20 20 20 20 22 53 47 49 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 ....."SGI.Free.Software.License.
d6ae0 42 20 76 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 B.v2.0",.........false.....],...
d6b00 20 20 22 53 69 6d 50 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 69 6d 70 6c 65 .."SimPL-2.0":.[........."Simple
d6b20 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 .Public.License.2.0",.........tr
d6b40 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 49 53 53 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 ue.....],....."SISSL":.[........
d6b60 20 22 53 75 6e 20 49 6e 64 75 73 74 72 79 20 53 74 61 6e 64 61 72 64 73 20 53 6f 75 72 63 65 20 ."Sun.Industry.Standards.Source.
d6b80 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 License.v1.1",.........true.....
d6ba0 5d 2c 0a 20 20 20 20 22 53 49 53 53 4c 2d 31 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 ],....."SISSL-1.2":.[........."S
d6bc0 75 6e 20 49 6e 64 75 73 74 72 79 20 53 74 61 6e 64 61 72 64 73 20 53 6f 75 72 63 65 20 4c 69 63 un.Industry.Standards.Source.Lic
d6be0 65 6e 73 65 20 76 31 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c ense.v1.2",.........false.....],
d6c00 0a 20 20 20 20 22 53 6c 65 65 70 79 63 61 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 6c 65 ....."Sleepycat":.[........."Sle
d6c20 65 70 79 63 61 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 epycat.License",.........true...
d6c40 20 20 5d 2c 0a 20 20 20 20 22 53 4d 4c 4e 4a 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 74 61 ..],....."SMLNJ":.[........."Sta
d6c60 6e 64 61 72 64 20 4d 4c 20 6f 66 20 4e 65 77 20 4a 65 72 73 65 79 20 4c 69 63 65 6e 73 65 22 2c ndard.ML.of.New.Jersey.License",
d6c80 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 4e 49 41 22 .........false.....],....."SNIA"
d6ca0 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 4e 49 41 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 :.[........."SNIA.Public.License
d6cc0 20 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 .1.1",.........false.....],.....
d6ce0 22 53 70 65 6e 63 65 72 2d 38 36 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 70 65 6e 63 65 72 "Spencer-86":.[........."Spencer
d6d00 20 4c 69 63 65 6e 73 65 20 38 36 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 .License.86",.........false.....
d6d20 5d 2c 0a 20 20 20 20 22 53 70 65 6e 63 65 72 2d 39 34 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ],....."Spencer-94":.[........."
d6d40 53 70 65 6e 63 65 72 20 4c 69 63 65 6e 73 65 20 39 34 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c Spencer.License.94",.........fal
d6d60 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 70 65 6e 63 65 72 2d 39 39 22 3a 20 5b 0a 20 20 se.....],....."Spencer-99":.[...
d6d80 20 20 20 20 20 20 22 53 70 65 6e 63 65 72 20 4c 69 63 65 6e 73 65 20 39 39 22 2c 0a 20 20 20 20 ......"Spencer.License.99",.....
d6da0 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 50 4c 2d 31 2e 30 22 3a 20 ....false.....],....."SPL-1.0":.
d6dc0 5b 0a 20 20 20 20 20 20 20 20 22 53 75 6e 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 [........."Sun.Public.License.v1
d6de0 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 75 .0",.........true.....],....."Su
d6e00 67 61 72 43 52 4d 2d 31 2e 31 2e 33 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 75 67 61 72 43 garCRM-1.1.3":.[........."SugarC
d6e20 52 4d 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 2e 33 22 2c 0a 20 20 20 20 20 RM.Public.License.v1.1.3",......
d6e40 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 57 4c 22 3a 20 5b 0a 20 20 20 ...false.....],....."SWL":.[....
d6e60 20 20 20 20 20 22 53 63 68 65 6d 65 20 57 69 64 67 65 74 20 4c 69 62 72 61 72 79 20 28 53 57 4c ....."Scheme.Widget.Library.(SWL
d6e80 29 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 22 2c 0a 20 ).Software.License.Agreement",..
d6ea0 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 54 43 4c 22 3a 20 5b .......false.....],....."TCL":.[
d6ec0 0a 20 20 20 20 20 20 20 20 22 54 43 4c 2f 54 4b 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 ........."TCL/TK.License",......
d6ee0 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 54 4d 61 74 65 22 3a 20 5b 0a 20 ...false.....],....."TMate":.[..
d6f00 20 20 20 20 20 20 20 22 54 4d 61 74 65 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 ......."TMate.Open.Source.Licens
d6f20 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 54 4f e",.........false.....],....."TO
d6f40 52 51 55 45 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 54 4f 52 51 55 45 20 76 32 2e RQUE-1.1":.[........."TORQUE.v2.
d6f60 35 2b 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 5+.Software.License.v1.1",......
d6f80 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 54 4f 53 4c 22 3a 20 5b 0a 20 20 ...false.....],....."TOSL":.[...
d6fa0 20 20 20 20 20 20 22 54 72 75 73 73 74 65 72 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 ......"Trusster.Open.Source.Lice
d6fc0 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 nse",.........false.....],....."
d6fe0 55 6e 69 63 6f 64 65 2d 54 4f 55 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 55 6e 69 63 6f 64 65 Unicode-TOU":.[........."Unicode
d7000 20 54 65 72 6d 73 20 6f 66 20 55 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 .Terms.of.Use",.........false...
d7020 20 20 5d 2c 0a 20 20 20 20 22 55 6e 6c 69 63 65 6e 73 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ..],....."Unlicense":.[.........
d7040 22 54 68 65 20 55 6e 6c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 "The.Unlicense",.........false..
d7060 20 20 20 5d 2c 0a 20 20 20 20 22 55 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ...],....."UPL-1.0":.[........."
d7080 55 6e 69 76 65 72 73 61 6c 20 50 65 72 6d 69 73 73 69 76 65 20 4c 69 63 65 6e 73 65 20 76 31 2e Universal.Permissive.License.v1.
d70a0 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 56 69 6d 0",.........true.....],....."Vim
d70c0 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 56 69 6d 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 ":.[........."Vim.License",.....
d70e0 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 56 4f 53 54 52 4f 4d 22 3a 20 ....false.....],....."VOSTROM":.
d7100 5b 0a 20 20 20 20 20 20 20 20 22 56 4f 53 54 52 4f 4d 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 [........."VOSTROM.Public.Licens
d7120 65 20 66 6f 72 20 4f 70 65 6e 20 53 6f 75 72 63 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 e.for.Open.Source",.........fals
d7140 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 56 53 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 e.....],....."VSL-1.0":.[.......
d7160 20 20 22 56 6f 76 69 64 61 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 .."Vovida.Software.License.v1.0"
d7180 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 57 33 43 22 3a ,.........true.....],....."W3C":
d71a0 20 5b 0a 20 20 20 20 20 20 20 20 22 57 33 43 20 53 6f 66 74 77 61 72 65 20 4e 6f 74 69 63 65 20 .[........."W3C.Software.Notice.
d71c0 61 6e 64 20 4c 69 63 65 6e 73 65 20 28 32 30 30 32 2d 31 32 2d 33 31 29 22 2c 0a 20 20 20 20 20 and.License.(2002-12-31)",......
d71e0 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 57 33 43 2d 31 39 39 38 30 37 32 30 ...true.....],....."W3C-19980720
d7200 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 57 33 43 20 53 6f 66 74 77 61 72 65 20 4e 6f 74 69 63 ":.[........."W3C.Software.Notic
d7220 65 20 61 6e 64 20 4c 69 63 65 6e 73 65 20 28 31 39 39 38 2d 30 37 2d 32 30 29 22 2c 0a 20 20 20 e.and.License.(1998-07-20)",....
d7240 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 57 61 74 63 6f 6d 2d 31 2e .....false.....],....."Watcom-1.
d7260 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 79 62 61 73 65 20 4f 70 65 6e 20 57 61 74 63 6f 0":.[........."Sybase.Open.Watco
d7280 6d 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 m.Public.License.1.0",.........t
d72a0 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 57 73 75 69 70 61 22 3a 20 5b 0a 20 20 20 20 20 rue.....],....."Wsuipa":.[......
d72c0 20 20 20 22 57 73 75 69 70 61 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c ..."Wsuipa.License",.........fal
d72e0 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 57 54 46 50 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 se.....],....."WTFPL":.[........
d7300 20 22 44 6f 20 57 68 61 74 20 54 68 65 20 46 2a 63 6b 20 59 6f 75 20 57 61 6e 74 20 54 6f 20 50 ."Do.What.The.F*ck.You.Want.To.P
d7320 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 ublic.License",.........false...
d7340 20 20 5d 2c 0a 20 20 20 20 22 58 31 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 31 31 20 4c ..],....."X11":.[........."X11.L
d7360 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 icense",.........false.....],...
d7380 20 20 22 58 65 72 6f 78 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 65 72 6f 78 20 4c 69 63 65 .."Xerox":.[........."Xerox.Lice
d73a0 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 nse",.........false.....],....."
d73c0 58 46 72 65 65 38 36 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 46 72 65 65 38 36 XFree86-1.1":.[........."XFree86
d73e0 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 .License.1.1",.........false....
d7400 20 5d 2c 0a 20 20 20 20 22 78 69 6e 65 74 64 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 78 69 6e .],....."xinetd":.[........."xin
d7420 65 74 64 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 etd.License",.........false.....
d7440 5d 2c 0a 20 20 20 20 22 58 6e 65 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 2e 4e 65 74 20 ],....."Xnet":.[........."X.Net.
d7460 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 License",.........true.....],...
d7480 20 20 22 78 70 70 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 50 50 20 4c 69 63 65 6e 73 65 22 .."xpp":.[........."XPP.License"
d74a0 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 58 53 6b 61 ,.........false.....],....."XSka
d74c0 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 53 6b 61 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 t":.[........."XSkat.License",..
d74e0 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 59 50 4c 2d 31 2e 30 .......false.....],....."YPL-1.0
d7500 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 59 61 68 6f 6f 21 20 50 75 62 6c 69 63 20 4c 69 63 65 ":.[........."Yahoo!.Public.Lice
d7520 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a nse.v1.0",.........false.....],.
d7540 20 20 20 20 22 59 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 59 61 68 6f 6f 21 ...."YPL-1.1":.[........."Yahoo!
d7560 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 .Public.License.v1.1",.........f
d7580 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 65 64 22 3a 20 5b 0a 20 20 20 20 20 20 20 alse.....],....."Zed":.[........
d75a0 20 22 5a 65 64 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 ."Zed.License",.........false...
d75c0 20 20 5d 2c 0a 20 20 20 20 22 5a 65 6e 64 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ..],....."Zend-2.0":.[........."
d75e0 5a 65 6e 64 20 4c 69 63 65 6e 73 65 20 76 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 Zend.License.v2.0",.........fals
d7600 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 69 6d 62 72 61 2d 31 2e 33 22 3a 20 5b 0a 20 20 20 e.....],....."Zimbra-1.3":.[....
d7620 20 20 20 20 20 22 5a 69 6d 62 72 61 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 33 ....."Zimbra.Public.License.v1.3
d7640 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 69 6d ",.........false.....],....."Zim
d7660 62 72 61 2d 31 2e 34 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 5a 69 6d 62 72 61 20 50 75 62 6c bra-1.4":.[........."Zimbra.Publ
d7680 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 34 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a ic.License.v1.4",.........false.
d76a0 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 6c 69 62 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 7a 6c ....],....."Zlib":.[........."zl
d76c0 69 62 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c ib.License",.........true.....],
d76e0 0a 20 20 20 20 22 7a 6c 69 62 2d 61 63 6b 6e 6f 77 6c 65 64 67 65 6d 65 6e 74 22 3a 20 5b 0a 20 ....."zlib-acknowledgement":.[..
d7700 20 20 20 20 20 20 20 22 7a 6c 69 62 2f 6c 69 62 70 6e 67 20 4c 69 63 65 6e 73 65 20 77 69 74 68 ......."zlib/libpng.License.with
d7720 20 41 63 6b 6e 6f 77 6c 65 64 67 65 6d 65 6e 74 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 .Acknowledgement",.........false
d7740 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 .....],....."ZPL-1.1":.[........
d7760 20 22 5a 6f 70 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 20 20 ."Zope.Public.License.1.1",.....
d7780 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 50 4c 2d 32 2e 30 22 3a 20 ....false.....],....."ZPL-2.0":.
d77a0 5b 0a 20 20 20 20 20 20 20 20 22 5a 6f 70 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 32 [........."Zope.Public.License.2
d77c0 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 50 .0",.........true.....],....."ZP
d77e0 4c 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 5a 6f 70 65 20 50 75 62 6c 69 63 20 4c L-2.1":.[........."Zope.Public.L
d7800 69 63 65 6e 73 65 20 32 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d icense.2.1",.........false.....]
d7820 0a 7d 4d 5a 90 00 03 00 00 00 04 00 00 00 ff ff 00 00 b8 00 00 00 00 00 00 00 40 00 00 00 00 00 .}MZ......................@.....
d7840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e8 00 ................................
d7860 00 00 0e 1f ba 0e 00 b4 09 cd 21 b8 01 4c cd 21 54 68 69 73 20 70 72 6f 67 72 61 6d 20 63 61 6e ..........!..L.!This.program.can
d7880 6e 6f 74 20 62 65 20 72 75 6e 20 69 6e 20 44 4f 53 20 6d 6f 64 65 2e 0d 0d 0a 24 00 00 00 00 00 not.be.run.in.DOS.mode....$.....
d78a0 00 00 7f c6 2c cd 3b a7 42 9e 3b a7 42 9e 3b a7 42 9e 32 df d7 9e 3a a7 42 9e 32 df c1 9e 2d a7 ....,.;.B.;.B.;.B.2...:.B.2...-.
d78c0 42 9e 32 df c6 9e 39 a7 42 9e 32 df d1 9e 3f a7 42 9e 1c 61 39 9e 38 a7 42 9e 3b a7 43 9e 08 a7 B.2...9.B.2...?.B..a9.8.B.;.C...
d78e0 42 9e 32 df c8 9e 3a a7 42 9e 32 df d6 9e 3a a7 42 9e 32 df d3 9e 3a a7 42 9e 52 69 63 68 3b a7 B.2...:.B.2...:.B.2...:.B.Rich;.
d7900 42 9e 00 00 00 00 00 00 00 00 50 45 00 00 4c 01 05 00 ac 4d 6f 4f 00 00 00 00 00 00 00 00 e0 00 B.........PE..L....MoO..........
d7920 02 01 0b 01 09 00 00 0a 00 00 00 16 00 00 00 00 00 00 38 13 00 00 00 10 00 00 00 20 00 00 00 00 ..................8.............
d7940 40 00 00 10 00 00 00 02 00 00 05 00 00 00 00 00 00 00 05 00 00 00 00 00 00 00 00 60 00 00 00 04 @..........................`....
d7960 00 00 3f 9c 00 00 03 00 40 81 00 00 10 00 00 10 00 00 00 00 10 00 00 10 00 00 00 00 00 00 10 00 ..?.....@.......................
d7980 00 00 00 00 00 00 00 00 00 00 90 22 00 00 50 00 00 00 00 40 00 00 20 06 00 00 00 00 00 00 00 00 ..........."..P....@............
d79a0 00 00 00 00 00 00 00 00 00 00 00 50 00 00 70 01 00 00 00 21 00 00 1c 00 00 00 00 00 00 00 00 00 ...........P..p....!............
d79c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 38 21 00 00 40 00 00 00 00 00 00 00 00 00 ..................8!..@.........
d79e0 00 00 00 20 00 00 d8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7a00 00 00 2e 74 65 78 74 00 00 00 0b 09 00 00 00 10 00 00 00 0a 00 00 00 04 00 00 00 00 00 00 00 00 ...text.........................
d7a20 00 00 00 00 00 00 20 00 00 60 2e 72 64 61 74 61 00 00 ce 09 00 00 00 20 00 00 00 0a 00 00 00 0e .........`.rdata................
d7a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 40 2e 64 61 74 61 00 00 00 90 03 00 00 00 30 ..............@..@.data........0
d7a60 00 00 00 02 00 00 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 c0 2e 72 73 72 63 00 ......................@....rsrc.
d7a80 00 00 20 06 00 00 00 40 00 00 00 08 00 00 00 1a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 .......@......................@.
d7aa0 00 40 2e 72 65 6c 6f 63 00 00 cc 01 00 00 00 50 00 00 00 02 00 00 00 22 00 00 00 00 00 00 00 00 .@.reloc.......P......."........
d7ac0 00 00 00 00 00 00 40 00 00 42 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ......@..B......................
d7ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7c20 00 00 6a 24 b8 e6 18 40 00 e8 78 08 00 00 6a f6 ff 15 08 20 40 00 83 65 d0 00 8b f0 8d 45 d0 50 ..j$...@..x...j.....@..e.....E.P
d7c40 56 ff 15 00 20 40 00 8b 45 d0 83 e0 fb 50 56 ff 15 04 20 40 00 8d 4d d4 ff 15 58 20 40 00 83 65 V....@..E....PV....@..M...X.@..e
d7c60 fc 00 8d 45 d4 50 ff 35 48 20 40 00 ff 15 4c 20 40 00 59 59 ff 35 5c 20 40 00 8d 45 d4 50 ff 35 ...E.P.5H.@...L.@.YY.5\.@..E.P.5
d7c80 60 20 40 00 ff 15 44 20 40 00 59 59 8b c8 ff 15 50 20 40 00 83 4d fc ff 8d 4d d4 ff 15 54 20 40 `.@...D.@.YY....P.@..M...M...T.@
d7ca0 00 33 c0 e8 48 08 00 00 c3 3b 0d 00 30 40 00 75 02 f3 c3 e9 ac 02 00 00 68 80 15 40 00 e8 a3 04 .3..H....;..0@.u........h..@....
d7cc0 00 00 a1 6c 33 40 00 c7 04 24 34 30 40 00 ff 35 68 33 40 00 a3 34 30 40 00 68 24 30 40 00 68 28 ...l3@...$40@..5h3@..40@.h$0@.h(
d7ce0 30 40 00 68 20 30 40 00 ff 15 a0 20 40 00 83 c4 14 a3 30 30 40 00 85 c0 7d 08 6a 08 e8 b9 03 00 0@.h.0@.....@.....00@...}.j.....
d7d00 00 59 c3 6a 10 68 08 22 40 00 e8 1f 06 00 00 33 db 89 5d fc 64 a1 18 00 00 00 8b 70 04 89 5d e4 .Y.j.h."@......3..].d......p..].
d7d20 bf 80 33 40 00 53 56 57 ff 15 30 20 40 00 3b c3 74 19 3b c6 75 08 33 f6 46 89 75 e4 eb 10 68 e8 ..3@.SVW..0.@.;.t.;.u.3.F.u...h.
d7d40 03 00 00 ff 15 34 20 40 00 eb da 33 f6 46 a1 7c 33 40 00 3b c6 75 0a 6a 1f e8 5c 03 00 00 59 eb .....4.@...3.F.|3@.;.u.j..\...Y.
d7d60 3b a1 7c 33 40 00 85 c0 75 2c 89 35 7c 33 40 00 68 f0 20 40 00 68 e4 20 40 00 e8 a7 05 00 00 59 ;.|3@...u,.5|3@.h..@.h..@......Y
d7d80 59 85 c0 74 17 c7 45 fc fe ff ff ff b8 ff 00 00 00 e9 dd 00 00 00 89 35 3c 30 40 00 a1 7c 33 40 Y..t..E................5<0@..|3@
d7da0 00 3b c6 75 1b 68 e0 20 40 00 68 d8 20 40 00 e8 6c 05 00 00 59 59 c7 05 7c 33 40 00 02 00 00 00 .;.u.h..@.h..@..l...YY..|3@.....
d7dc0 39 5d e4 75 08 53 57 ff 15 38 20 40 00 39 1d 8c 33 40 00 74 19 68 8c 33 40 00 e8 83 04 00 00 59 9].u.SW..8.@.9..3@.t.h.3@......Y
d7de0 85 c0 74 0a 53 6a 02 53 ff 15 8c 33 40 00 a1 24 30 40 00 8b 0d bc 20 40 00 89 01 ff 35 24 30 40 ..t.Sj.S...3@..$0@.....@....5$0@
d7e00 00 ff 35 28 30 40 00 ff 35 20 30 40 00 e8 10 fe ff ff 83 c4 0c a3 38 30 40 00 39 1d 2c 30 40 00 ..5(0@..5.0@..........80@.9.,0@.
d7e20 75 37 50 ff 15 c0 20 40 00 8b 45 ec 8b 08 8b 09 89 4d e0 50 51 e8 8e 03 00 00 59 59 c3 8b 65 e8 u7P....@..E......M.PQ.....YY..e.
d7e40 8b 45 e0 a3 38 30 40 00 33 db 39 1d 2c 30 40 00 75 07 50 ff 15 68 20 40 00 39 1d 3c 30 40 00 75 .E..80@.3.9.,0@.u.P..h.@.9.<0@.u
d7e60 06 ff 15 9c 20 40 00 c7 45 fc fe ff ff ff a1 38 30 40 00 e8 fb 04 00 00 c3 b8 4d 5a 00 00 66 39 .....@..E......80@........MZ..f9
d7e80 05 00 00 40 00 74 04 33 c0 eb 4d a1 3c 00 40 00 8d 80 00 00 40 00 81 38 50 45 00 00 75 e9 0f b7 ...@.t.3..M.<.@.....@..8PE..u...
d7ea0 48 18 81 f9 0b 01 00 00 74 1b 81 f9 0b 02 00 00 75 d5 83 b8 84 00 00 00 0e 76 cc 33 c9 39 88 f8 H.......t.......u........v.3.9..
d7ec0 00 00 00 eb 0e 83 78 74 0e 76 bc 33 c9 39 88 e8 00 00 00 0f 95 c1 8b c1 6a 01 a3 2c 30 40 00 ff ......xt.v.3.9..........j..,0@..
d7ee0 15 70 20 40 00 6a ff ff 15 6c 20 40 00 59 59 a3 84 33 40 00 a3 88 33 40 00 ff 15 cc 20 40 00 8b .p.@.j...l.@.YY..3@...3@.....@..
d7f00 0d 74 33 40 00 89 08 ff 15 88 20 40 00 8b 0d 70 33 40 00 89 08 a1 a8 20 40 00 8b 00 a3 78 33 40 .t3@.......@...p3@......@....x3@
d7f20 00 e8 56 02 00 00 e8 ac 04 00 00 83 3d 14 30 40 00 00 75 0c 68 b5 17 40 00 ff 15 ac 20 40 00 59 ..V.........=.0@..u.h..@.....@.Y
d7f40 e8 67 04 00 00 83 3d 10 30 40 00 ff 75 09 6a ff ff 15 b0 20 40 00 59 33 c0 c3 e8 7b 04 00 00 e9 .g....=.0@..u.j.....@.Y3...{....
d7f60 9f fd ff ff 8b ff 55 8b ec 81 ec 28 03 00 00 a3 48 31 40 00 89 0d 44 31 40 00 89 15 40 31 40 00 ......U....(....H1@...D1@...@1@.
d7f80 89 1d 3c 31 40 00 89 35 38 31 40 00 89 3d 34 31 40 00 66 8c 15 60 31 40 00 66 8c 0d 54 31 40 00 ..<1@..581@..=41@.f..`1@.f..T1@.
d7fa0 66 8c 1d 30 31 40 00 66 8c 05 2c 31 40 00 66 8c 25 28 31 40 00 66 8c 2d 24 31 40 00 9c 8f 05 58 f..01@.f..,1@.f.%(1@.f.-$1@....X
d7fc0 31 40 00 8b 45 00 a3 4c 31 40 00 8b 45 04 a3 50 31 40 00 8d 45 08 a3 5c 31 40 00 8b 85 e0 fc ff 1@..E..L1@..E..P1@..E..\1@......
d7fe0 ff c7 05 98 30 40 00 01 00 01 00 a1 50 31 40 00 a3 4c 30 40 00 c7 05 40 30 40 00 09 04 00 c0 c7 ....0@......P1@..L0@...@0@......
d8000 05 44 30 40 00 01 00 00 00 a1 00 30 40 00 89 85 d8 fc ff ff a1 04 30 40 00 89 85 dc fc ff ff ff .D0@.......0@.........0@........
d8020 15 1c 20 40 00 a3 90 30 40 00 6a 01 e8 3f 04 00 00 59 6a 00 ff 15 20 20 40 00 68 1c 21 40 00 ff ...@...0@.j..?...Yj.....@.h.!@..
d8040 15 24 20 40 00 83 3d 90 30 40 00 00 75 08 6a 01 e8 1b 04 00 00 59 68 09 04 00 c0 ff 15 28 20 40 .$.@..=.0@..u.j......Yh......(.@
d8060 00 50 ff 15 2c 20 40 00 c9 c3 8b ff 55 8b ec 8b 45 08 8b 00 81 38 63 73 6d e0 75 2a 83 78 10 03 .P..,.@.....U...E....8csm.u*.x..
d8080 75 24 8b 40 14 3d 20 05 93 19 74 15 3d 21 05 93 19 74 0e 3d 22 05 93 19 74 07 3d 00 40 99 01 75 u$.@.=....t.=!...t.="...t.=.@..u
d80a0 05 e8 d0 03 00 00 33 c0 5d c2 04 00 68 48 14 40 00 ff 15 20 20 40 00 33 c0 c3 ff 25 a4 20 40 00 ......3.]...hH.@.....@.3...%..@.
d80c0 6a 14 68 28 22 40 00 e8 62 02 00 00 ff 35 88 33 40 00 8b 35 8c 20 40 00 ff d6 59 89 45 e4 83 f8 j.h("@..b....5.3@..5..@...Y.E...
d80e0 ff 75 0c ff 75 08 ff 15 c4 20 40 00 59 eb 67 6a 08 e8 92 03 00 00 59 83 65 fc 00 ff 35 88 33 40 .u..u.....@.Y.gj......Y.e...5.3@
d8100 00 ff d6 89 45 e4 ff 35 84 33 40 00 ff d6 59 59 89 45 e0 8d 45 e0 50 8d 45 e4 50 ff 75 08 8b 35 ....E..5.3@...YY.E..E.P.E.P.u..5
d8120 6c 20 40 00 ff d6 59 50 e8 55 03 00 00 89 45 dc ff 75 e4 ff d6 a3 88 33 40 00 ff 75 e0 ff d6 83 l.@...YP.U....E..u.....3@..u....
d8140 c4 14 a3 84 33 40 00 c7 45 fc fe ff ff ff e8 09 00 00 00 8b 45 dc e8 18 02 00 00 c3 6a 08 e8 19 ....3@..E...........E.......j...
d8160 03 00 00 59 c3 8b ff 55 8b ec ff 75 08 e8 4e ff ff ff f7 d8 1b c0 f7 d8 59 48 5d c3 8b ff 56 b8 ...Y...U...u..N.........YH]...V.
d8180 fc 21 40 00 be fc 21 40 00 57 8b f8 3b c6 73 0f 8b 07 85 c0 74 02 ff d0 83 c7 04 3b fe 72 f1 5f .!@...!@.W..;.s.....t......;.r._
d81a0 5e c3 8b ff 56 b8 04 22 40 00 be 04 22 40 00 57 8b f8 3b c6 73 0f 8b 07 85 c0 74 02 ff d0 83 c7 ^...V.."@..."@.W..;.s.....t.....
d81c0 04 3b fe 72 f1 5f 5e c3 ff 25 c8 20 40 00 cc cc cc cc 8b ff 55 8b ec 8b 4d 08 b8 4d 5a 00 00 66 .;.r._^..%..@.......U...M..MZ..f
d81e0 39 01 74 04 33 c0 5d c3 8b 41 3c 03 c1 81 38 50 45 00 00 75 ef 33 d2 b9 0b 01 00 00 66 39 48 18 9.t.3.]..A<...8PE..u.3......f9H.
d8200 0f 94 c2 8b c2 5d c3 cc cc cc cc cc cc cc cc cc cc cc 8b ff 55 8b ec 8b 45 08 8b 48 3c 03 c8 0f .....]..............U...E..H<...
d8220 b7 41 14 53 56 0f b7 71 06 33 d2 57 8d 44 08 18 85 f6 76 1b 8b 7d 0c 8b 48 0c 3b f9 72 09 8b 58 .A.SV..q.3.W.D....v..}..H.;.r..X
d8240 08 03 d9 3b fb 72 0a 42 83 c0 28 3b d6 72 e8 33 c0 5f 5e 5b 5d c3 cc cc cc cc cc cc cc cc cc cc ...;.r.B..(;.r.3._^[]...........
d8260 cc cc 8b ff 55 8b ec 6a fe 68 48 22 40 00 68 65 17 40 00 64 a1 00 00 00 00 50 83 ec 08 53 56 57 ....U..j.hH"@.he.@.d.....P...SVW
d8280 a1 00 30 40 00 31 45 f8 33 c5 50 8d 45 f0 64 a3 00 00 00 00 89 65 e8 c7 45 fc 00 00 00 00 68 00 ..0@.1E.3.P.E.d......e..E.....h.
d82a0 00 40 00 e8 2a ff ff ff 83 c4 04 85 c0 74 55 8b 45 08 2d 00 00 40 00 50 68 00 00 40 00 e8 50 ff .@..*........tU.E.-..@.Ph..@..P.
d82c0 ff ff 83 c4 08 85 c0 74 3b 8b 40 24 c1 e8 1f f7 d0 83 e0 01 c7 45 fc fe ff ff ff 8b 4d f0 64 89 .......t;.@$.........E......M.d.
d82e0 0d 00 00 00 00 59 5f 5e 5b 8b e5 5d c3 8b 45 ec 8b 08 8b 01 33 d2 3d 05 00 00 c0 0f 94 c2 8b c2 .....Y_^[..]..E.....3.=.........
d8300 c3 8b 65 e8 c7 45 fc fe ff ff ff 33 c0 8b 4d f0 64 89 0d 00 00 00 00 59 5f 5e 5b 8b e5 5d c3 cc ..e..E.....3..M.d......Y_^[..]..
d8320 ff 25 b8 20 40 00 ff 25 b4 20 40 00 cc cc 68 65 17 40 00 64 ff 35 00 00 00 00 8b 44 24 10 89 6c .%..@..%..@...he.@.d.5.....D$..l
d8340 24 10 8d 6c 24 10 2b e0 53 56 57 a1 00 30 40 00 31 45 fc 33 c5 50 89 65 e8 ff 75 f8 8b 45 fc c7 $..l$.+.SVW..0@.1E.3.P.e..u..E..
d8360 45 fc fe ff ff ff 89 45 f8 8d 45 f0 64 a3 00 00 00 00 c3 8b 4d f0 64 89 0d 00 00 00 00 59 5f 5f E......E..E.d.......M.d......Y__
d8380 5e 5b 8b e5 5d 51 c3 8b ff 55 8b ec ff 75 14 ff 75 10 ff 75 0c ff 75 08 68 87 10 40 00 68 00 30 ^[..]Q...U...u..u..u..u.h..@.h.0
d83a0 40 00 e8 e7 00 00 00 83 c4 18 5d c3 8b ff 56 68 00 00 03 00 68 00 00 01 00 33 f6 56 e8 d9 00 00 @.........]...Vh....h....3.V....
d83c0 00 83 c4 0c 85 c0 74 0d 56 56 56 56 56 e8 c2 00 00 00 83 c4 14 5e c3 33 c0 c3 8b ff 55 8b ec 83 ......t.VVVVV........^.3....U...
d83e0 ec 10 a1 00 30 40 00 83 65 f8 00 83 65 fc 00 53 57 bf 4e e6 40 bb bb 00 00 ff ff 3b c7 74 0d 85 ....0@..e...e..SW.N.@......;.t..
d8400 c3 74 09 f7 d0 a3 04 30 40 00 eb 60 56 8d 45 f8 50 ff 15 3c 20 40 00 8b 75 fc 33 75 f8 ff 15 0c .t.....0@..`V.E.P..<.@..u.3u....
d8420 20 40 00 33 f0 ff 15 10 20 40 00 33 f0 ff 15 14 20 40 00 33 f0 8d 45 f0 50 ff 15 18 20 40 00 8b .@.3.....@.3.....@.3..E.P....@..
d8440 45 f4 33 45 f0 33 f0 3b f7 75 07 be 4f e6 40 bb eb 0b 85 f3 75 07 8b c6 c1 e0 10 0b f0 89 35 00 E.3E.3.;.u..O.@.....u.........5.
d8460 30 40 00 f7 d6 89 35 04 30 40 00 5e 5f 5b c9 c3 ff 25 74 20 40 00 ff 25 78 20 40 00 ff 25 7c 20 0@....5.0@.^_[...%t.@..%x.@..%|.
d8480 40 00 ff 25 80 20 40 00 ff 25 84 20 40 00 ff 25 90 20 40 00 ff 25 94 20 40 00 ff 25 98 20 40 00 @..%..@..%..@..%..@..%..@..%..@.
d84a0 ff 25 d0 20 40 00 50 64 ff 35 00 00 00 00 8d 44 24 0c 2b 64 24 0c 53 56 57 89 28 8b e8 a1 00 30 .%..@.Pd.5.....D$.+d$.SVW.(....0
d84c0 40 00 33 c5 50 89 45 f0 ff 75 fc c7 45 fc ff ff ff ff 8d 45 f4 64 a3 00 00 00 00 c3 8b 4d f4 64 @.3.P.E..u..E......E.d.......M.d
d84e0 89 0d 00 00 00 00 59 5f 5f 5e 5b 8b e5 5d 51 c3 8b 4d f0 33 cd e8 af f7 ff ff e9 dd ff ff ff 8d ......Y__^[..]Q..M.3............
d8500 4d d4 ff 25 54 20 40 00 8b 54 24 08 8d 42 0c 8b 4a cc 33 c8 e8 90 f7 ff ff 8b 4a fc 33 c8 e8 86 M..%T.@..T$..B..J.3.......J.3...
d8520 f7 ff ff b8 6c 22 40 00 e9 73 ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ....l"@..s......................
d8540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d8560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d8580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d85a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d85c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d85e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d8600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d8620 00 00 b8 23 00 00 ca 23 00 00 dc 23 00 00 88 29 00 00 72 29 00 00 62 29 00 00 48 29 00 00 34 29 ...#...#...#...)..r)..b)..H)..4)
d8640 00 00 16 29 00 00 fa 28 00 00 e6 28 00 00 d2 28 00 00 b4 28 00 00 ac 28 00 00 96 28 00 00 9e 29 ...)...(...(...(...(...(...(...)
d8660 00 00 00 00 00 00 fa 23 00 00 e0 24 00 00 1a 25 00 00 ca 25 00 00 1a 26 00 00 64 26 00 00 ae 26 .......#...$...%...%...&..d&...&
d8680 00 00 a4 24 00 00 00 00 00 00 28 27 00 00 c4 27 00 00 d6 27 00 00 e8 27 00 00 fe 27 00 00 1e 28 ...$......('...'...'...'...'...(
d86a0 00 00 28 28 00 00 36 28 00 00 a6 27 00 00 48 28 00 00 5a 28 00 00 74 28 00 00 86 28 00 00 1e 27 ..((..6(...'..H(..Z(..t(...(...'
d86c0 00 00 0e 27 00 00 00 27 00 00 96 27 00 00 82 27 00 00 6c 27 00 00 5e 27 00 00 52 27 00 00 46 27 ...'...'...'...'..l'..^'..R'..F'
d86e0 00 00 3e 27 00 00 3e 28 00 00 30 27 00 00 b6 27 00 00 b8 29 00 00 00 00 00 00 00 00 00 00 96 10 ..>'..>(..0'...'...)............
d8700 40 00 00 00 00 00 00 00 00 00 57 12 40 00 8a 14 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @.........W.@...@...............
d8720 00 00 00 00 00 00 ac 4d 6f 4f 00 00 00 00 02 00 00 00 6c 00 00 00 80 21 00 00 80 0f 00 00 40 30 .......MoO........l....!......@0
d8740 40 00 98 30 40 00 62 61 64 20 61 6c 6c 6f 63 61 74 69 6f 6e 00 00 00 00 00 00 48 00 00 00 00 00 @..0@.bad.allocation......H.....
d8760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d8780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30 40 00 f0 21 40 00 02 00 .......................0@..!@...
d87a0 00 00 52 53 44 53 d1 8c b3 10 b4 8f 01 4a a8 21 f6 cc eb 4c 5a 00 01 00 00 00 63 3a 5c 75 73 65 ..RSDS.......J.!...LZ.....c:\use
d87c0 72 73 5c 73 65 6c 64 5c 64 6f 63 75 6d 65 6e 74 73 5c 76 69 73 75 61 6c 20 73 74 75 64 69 6f 20 rs\seld\documents\visual.studio.
d87e0 32 30 31 30 5c 50 72 6f 6a 65 63 74 73 5c 68 69 64 64 65 6e 69 6e 70 5c 52 65 6c 65 61 73 65 5c 2010\Projects\hiddeninp\Release\
d8800 68 69 64 64 65 6e 69 6e 70 2e 70 64 62 00 00 00 00 00 65 17 00 00 e6 18 00 00 00 00 00 00 00 00 hiddeninp.pdb.....e.............
d8820 00 00 00 00 00 00 00 00 00 00 fe ff ff ff 00 00 00 00 d0 ff ff ff 00 00 00 00 fe ff ff ff 07 12 ................................
d8840 40 00 1b 12 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 cc ff ff ff 00 00 00 00 fe ff ff ff 00 00 @...@...........................
d8860 00 00 3a 15 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 d8 ff ff ff 00 00 00 00 fe ff ff ff cb 16 ..:.@...........................
d8880 40 00 df 16 40 00 ff ff ff ff dd 18 40 00 22 05 93 19 01 00 00 00 64 22 40 00 00 00 00 00 00 00 @...@.......@.".......d"@.......
d88a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 22 00 00 00 00 00 00 00 00 00 00 ec 23 ..................."...........#
d88c0 00 00 00 20 00 00 24 23 00 00 00 00 00 00 00 00 00 00 f4 26 00 00 44 20 00 00 48 23 00 00 00 00 ......$#...........&..D...H#....
d88e0 00 00 00 00 00 00 12 28 00 00 68 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .......(..h.....................
d8900 00 00 b8 23 00 00 ca 23 00 00 dc 23 00 00 88 29 00 00 72 29 00 00 62 29 00 00 48 29 00 00 34 29 ...#...#...#...)..r)..b)..H)..4)
d8920 00 00 16 29 00 00 fa 28 00 00 e6 28 00 00 d2 28 00 00 b4 28 00 00 ac 28 00 00 96 28 00 00 9e 29 ...)...(...(...(...(...(...(...)
d8940 00 00 00 00 00 00 fa 23 00 00 e0 24 00 00 1a 25 00 00 ca 25 00 00 1a 26 00 00 64 26 00 00 ae 26 .......#...$...%...%...&..d&...&
d8960 00 00 a4 24 00 00 00 00 00 00 28 27 00 00 c4 27 00 00 d6 27 00 00 e8 27 00 00 fe 27 00 00 1e 28 ...$......('...'...'...'...'...(
d8980 00 00 28 28 00 00 36 28 00 00 a6 27 00 00 48 28 00 00 5a 28 00 00 74 28 00 00 86 28 00 00 1e 27 ..((..6(...'..H(..Z(..t(...(...'
d89a0 00 00 0e 27 00 00 00 27 00 00 96 27 00 00 82 27 00 00 6c 27 00 00 5e 27 00 00 52 27 00 00 46 27 ...'...'...'...'..l'..^'..R'..F'
d89c0 00 00 3e 27 00 00 3e 28 00 00 30 27 00 00 b6 27 00 00 b8 29 00 00 00 00 00 00 95 01 47 65 74 43 ..>'..>(..0'...'...)........GetC
d89e0 6f 6e 73 6f 6c 65 4d 6f 64 65 00 00 b7 03 53 65 74 43 6f 6e 73 6f 6c 65 4d 6f 64 65 00 00 3b 02 onsoleMode....SetConsoleMode..;.
d8a00 47 65 74 53 74 64 48 61 6e 64 6c 65 00 00 4b 45 52 4e 45 4c 33 32 2e 64 6c 6c 00 00 16 00 3f 3f GetStdHandle..KERNEL32.dll....??
d8a20 24 3f 36 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 56 3f 24 61 6c 6c $?6DU?$char_traits@D@std@@V?$all
d8a40 6f 63 61 74 6f 72 40 44 40 31 40 40 73 74 64 40 40 59 41 41 41 56 3f 24 62 61 73 69 63 5f 6f 73 ocator@D@1@@std@@YAAAV?$basic_os
d8a60 74 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 40 30 40 tream@DU?$char_traits@D@std@@@0@
d8a80 41 41 56 31 30 40 41 42 56 3f 24 62 61 73 69 63 5f 73 74 72 69 6e 67 40 44 55 3f 24 63 68 61 72 AAV10@ABV?$basic_string@DU?$char
d8aa0 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 32 40 _traits@D@std@@V?$allocator@D@2@
d8ac0 40 30 40 40 5a 00 91 06 3f 63 6f 75 74 40 73 74 64 40 40 33 56 3f 24 62 61 73 69 63 5f 6f 73 74 @0@@Z...?cout@std@@3V?$basic_ost
d8ae0 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 40 31 40 41 ream@DU?$char_traits@D@std@@@1@A
d8b00 00 00 4a 06 3f 63 69 6e 40 73 74 64 40 40 33 56 3f 24 62 61 73 69 63 5f 69 73 74 72 65 61 6d 40 ..J.?cin@std@@3V?$basic_istream@
d8b20 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 40 31 40 41 00 c2 00 3f 3f DU?$char_traits@D@std@@@1@A...??
d8b40 24 67 65 74 6c 69 6e 65 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 $getline@DU?$char_traits@D@std@@
d8b60 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 32 40 40 73 74 64 40 40 59 41 41 41 56 3f 24 62 61 V?$allocator@D@2@@std@@YAAAV?$ba
d8b80 73 69 63 5f 69 73 74 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 sic_istream@DU?$char_traits@D@st
d8ba0 64 40 40 40 30 40 41 41 56 31 30 40 41 41 56 3f 24 62 61 73 69 63 5f 73 74 72 69 6e 67 40 44 55 d@@@0@AAV10@AAV?$basic_string@DU
d8bc0 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f ?$char_traits@D@std@@V?$allocato
d8be0 72 40 44 40 32 40 40 30 40 40 5a 00 1d 03 3f 3f 36 3f 24 62 61 73 69 63 5f 6f 73 74 72 65 61 6d r@D@2@@0@@Z...??6?$basic_ostream
d8c00 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 40 73 74 64 40 40 51 41 @DU?$char_traits@D@std@@@std@@QA
d8c20 45 41 41 56 30 31 40 50 36 41 41 41 56 30 31 40 41 41 56 30 31 40 40 5a 40 5a 00 00 5f 02 3f 3f EAAV01@P6AAAV01@AAV01@@Z@Z.._.??
d8c40 31 3f 24 62 61 73 69 63 5f 73 74 72 69 6e 67 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 1?$basic_string@DU?$char_traits@
d8c60 44 40 73 74 64 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 32 40 40 73 74 64 40 40 51 41 D@std@@V?$allocator@D@2@@std@@QA
d8c80 45 40 58 5a 00 00 7b 01 3f 3f 30 3f 24 62 61 73 69 63 5f 73 74 72 69 6e 67 40 44 55 3f 24 63 68 E@XZ..{.??0?$basic_string@DU?$ch
d8ca0 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 ar_traits@D@std@@V?$allocator@D@
d8cc0 32 40 40 73 74 64 40 40 51 41 45 40 58 5a 00 00 b3 07 3f 65 6e 64 6c 40 73 74 64 40 40 59 41 41 2@@std@@QAE@XZ....?endl@std@@YAA
d8ce0 41 56 3f 24 62 61 73 69 63 5f 6f 73 74 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 AV?$basic_ostream@DU?$char_trait
d8d00 73 40 44 40 73 74 64 40 40 40 31 40 41 41 56 32 31 40 40 5a 00 00 4d 53 56 43 50 39 30 2e 64 6c s@D@std@@@1@AAV21@@Z..MSVCP90.dl
d8d20 6c 00 15 01 5f 61 6d 73 67 5f 65 78 69 74 00 00 9f 00 5f 5f 67 65 74 6d 61 69 6e 61 72 67 73 00 l..._amsg_exit....__getmainargs.
d8d40 2c 01 5f 63 65 78 69 74 00 00 7c 01 5f 65 78 69 74 00 66 00 5f 58 63 70 74 46 69 6c 74 65 72 00 ,._cexit..|._exit.f._XcptFilter.
d8d60 cc 04 65 78 69 74 00 00 a0 00 5f 5f 69 6e 69 74 65 6e 76 00 04 02 5f 69 6e 69 74 74 65 72 6d 00 ..exit....__initenv..._initterm.
d8d80 05 02 5f 69 6e 69 74 74 65 72 6d 5f 65 00 3c 01 5f 63 6f 6e 66 69 67 74 68 72 65 61 64 6c 6f 63 .._initterm_e.<._configthreadloc
d8da0 61 6c 65 00 e3 00 5f 5f 73 65 74 75 73 65 72 6d 61 74 68 65 72 72 00 00 0b 01 5f 61 64 6a 75 73 ale...__setusermatherr...._adjus
d8dc0 74 5f 66 64 69 76 00 00 cb 00 5f 5f 70 5f 5f 63 6f 6d 6d 6f 64 65 00 00 cf 00 5f 5f 70 5f 5f 66 t_fdiv....__p__commode....__p__f
d8de0 6d 6f 64 65 00 00 6a 01 5f 65 6e 63 6f 64 65 5f 70 6f 69 6e 74 65 72 00 e0 00 5f 5f 73 65 74 5f mode..j._encode_pointer...__set_
d8e00 61 70 70 5f 74 79 70 65 00 00 4b 01 5f 63 72 74 5f 64 65 62 75 67 67 65 72 5f 68 6f 6f 6b 00 00 app_type..K._crt_debugger_hook..
d8e20 43 00 3f 74 65 72 6d 69 6e 61 74 65 40 40 59 41 58 58 5a 00 4d 53 56 43 52 39 30 2e 64 6c 6c 00 C.?terminate@@YAXXZ.MSVCR90.dll.
d8e40 e6 03 5f 75 6e 6c 6f 63 6b 00 96 00 5f 5f 64 6c 6c 6f 6e 65 78 69 74 00 76 02 5f 6c 6f 63 6b 00 .._unlock...__dllonexit.v._lock.
d8e60 1c 03 5f 6f 6e 65 78 69 74 00 60 01 5f 64 65 63 6f 64 65 5f 70 6f 69 6e 74 65 72 00 73 01 5f 65 .._onexit.`._decode_pointer.s._e
d8e80 78 63 65 70 74 5f 68 61 6e 64 6c 65 72 34 5f 63 6f 6d 6d 6f 6e 00 0b 02 5f 69 6e 76 6f 6b 65 5f xcept_handler4_common..._invoke_
d8ea0 77 61 74 73 6f 6e 00 00 3f 01 5f 63 6f 6e 74 72 6f 6c 66 70 5f 73 00 00 bd 02 49 6e 74 65 72 6c watson..?._controlfp_s....Interl
d8ec0 6f 63 6b 65 64 45 78 63 68 61 6e 67 65 00 21 04 53 6c 65 65 70 00 ba 02 49 6e 74 65 72 6c 6f 63 ockedExchange.!.Sleep...Interloc
d8ee0 6b 65 64 43 6f 6d 70 61 72 65 45 78 63 68 61 6e 67 65 00 00 2d 04 54 65 72 6d 69 6e 61 74 65 50 kedCompareExchange..-.TerminateP
d8f00 72 6f 63 65 73 73 00 00 a9 01 47 65 74 43 75 72 72 65 6e 74 50 72 6f 63 65 73 73 00 3e 04 55 6e rocess....GetCurrentProcess.>.Un
d8f20 68 61 6e 64 6c 65 64 45 78 63 65 70 74 69 6f 6e 46 69 6c 74 65 72 00 00 15 04 53 65 74 55 6e 68 handledExceptionFilter....SetUnh
d8f40 61 6e 64 6c 65 64 45 78 63 65 70 74 69 6f 6e 46 69 6c 74 65 72 00 d1 02 49 73 44 65 62 75 67 67 andledExceptionFilter...IsDebugg
d8f60 65 72 50 72 65 73 65 6e 74 00 54 03 51 75 65 72 79 50 65 72 66 6f 72 6d 61 6e 63 65 43 6f 75 6e erPresent.T.QueryPerformanceCoun
d8f80 74 65 72 00 66 02 47 65 74 54 69 63 6b 43 6f 75 6e 74 00 00 ad 01 47 65 74 43 75 72 72 65 6e 74 ter.f.GetTickCount....GetCurrent
d8fa0 54 68 72 65 61 64 49 64 00 00 aa 01 47 65 74 43 75 72 72 65 6e 74 50 72 6f 63 65 73 73 49 64 00 ThreadId....GetCurrentProcessId.
d8fc0 4f 02 47 65 74 53 79 73 74 65 6d 54 69 6d 65 41 73 46 69 6c 65 54 69 6d 65 00 73 00 5f 5f 43 78 O.GetSystemTimeAsFileTime.s.__Cx
d8fe0 78 46 72 61 6d 65 48 61 6e 64 6c 65 72 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 xFrameHandler3..................
d9000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9020 00 00 4e e6 40 bb b1 19 bf 44 ff ff ff ff ff ff ff ff fe ff ff ff 01 00 00 00 24 21 40 00 00 00 ..N.@....D................$!@...
d9040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d90a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d90c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d90e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d91a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d91c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d91e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9220 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 02 00 10 00 00 00 20 00 00 80 18 00 00 00 38 00 ..............................8.
d9240 00 80 00 00 00 00 00 00 00 00 04 00 00 00 00 00 01 00 01 00 00 00 50 00 00 80 00 00 00 00 00 00 ......................P.........
d9260 00 00 04 00 00 00 00 00 01 00 01 00 00 00 68 00 00 80 00 00 00 00 00 00 00 00 04 00 00 00 00 00 ..............h.................
d9280 01 00 09 04 00 00 80 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 01 00 09 04 00 00 90 00 ................................
d92a0 00 00 a0 40 00 00 28 03 00 00 e4 04 00 00 00 00 00 00 c8 43 00 00 56 02 00 00 e4 04 00 00 00 00 ...@..(............C..V.........
d92c0 00 00 28 03 34 00 00 00 56 00 53 00 5f 00 56 00 45 00 52 00 53 00 49 00 4f 00 4e 00 5f 00 49 00 ..(.4...V.S._.V.E.R.S.I.O.N._.I.
d92e0 4e 00 46 00 4f 00 00 00 00 00 bd 04 ef fe 00 00 01 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 N.F.O...........................
d9300 00 00 17 00 00 00 00 00 00 00 04 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 86 02 ................................
d9320 00 00 01 00 53 00 74 00 72 00 69 00 6e 00 67 00 46 00 69 00 6c 00 65 00 49 00 6e 00 66 00 6f 00 ....S.t.r.i.n.g.F.i.l.e.I.n.f.o.
d9340 00 00 62 02 00 00 01 00 30 00 34 00 30 00 39 00 30 00 34 00 62 00 30 00 00 00 ca 00 51 00 01 00 ..b.....0.4.0.9.0.4.b.0.....Q...
d9360 46 00 69 00 6c 00 65 00 44 00 65 00 73 00 63 00 72 00 69 00 70 00 74 00 69 00 6f 00 6e 00 00 00 F.i.l.e.D.e.s.c.r.i.p.t.i.o.n...
d9380 00 00 52 00 65 00 61 00 64 00 73 00 20 00 66 00 72 00 6f 00 6d 00 20 00 73 00 74 00 64 00 69 00 ..R.e.a.d.s...f.r.o.m...s.t.d.i.
d93a0 6e 00 20 00 77 00 69 00 74 00 68 00 6f 00 75 00 74 00 20 00 6c 00 65 00 61 00 6b 00 69 00 6e 00 n...w.i.t.h.o.u.t...l.e.a.k.i.n.
d93c0 67 00 20 00 69 00 6e 00 66 00 6f 00 20 00 74 00 6f 00 20 00 74 00 68 00 65 00 20 00 74 00 65 00 g...i.n.f.o...t.o...t.h.e...t.e.
d93e0 72 00 6d 00 69 00 6e 00 61 00 6c 00 20 00 61 00 6e 00 64 00 20 00 6f 00 75 00 74 00 70 00 75 00 r.m.i.n.a.l...a.n.d...o.u.t.p.u.
d9400 74 00 73 00 20 00 62 00 61 00 63 00 6b 00 20 00 74 00 6f 00 20 00 73 00 74 00 64 00 6f 00 75 00 t.s...b.a.c.k...t.o...s.t.d.o.u.
d9420 74 00 00 00 00 00 36 00 0b 00 01 00 46 00 69 00 6c 00 65 00 56 00 65 00 72 00 73 00 69 00 6f 00 t.....6.....F.i.l.e.V.e.r.s.i.o.
d9440 6e 00 00 00 00 00 31 00 2c 00 20 00 30 00 2c 00 20 00 30 00 2c 00 20 00 30 00 00 00 00 00 38 00 n.....1.,...0.,...0.,...0.....8.
d9460 0c 00 01 00 49 00 6e 00 74 00 65 00 72 00 6e 00 61 00 6c 00 4e 00 61 00 6d 00 65 00 00 00 68 00 ....I.n.t.e.r.n.a.l.N.a.m.e...h.
d9480 69 00 64 00 64 00 65 00 6e 00 69 00 6e 00 70 00 75 00 74 00 00 00 50 00 16 00 01 00 4c 00 65 00 i.d.d.e.n.i.n.p.u.t...P.....L.e.
d94a0 67 00 61 00 6c 00 43 00 6f 00 70 00 79 00 72 00 69 00 67 00 68 00 74 00 00 00 4a 00 6f 00 72 00 g.a.l.C.o.p.y.r.i.g.h.t...J.o.r.
d94c0 64 00 69 00 20 00 42 00 6f 00 67 00 67 00 69 00 61 00 6e 00 6f 00 20 00 2d 00 20 00 32 00 30 00 d.i...B.o.g.g.i.a.n.o...-...2.0.
d94e0 31 00 32 00 00 00 48 00 10 00 01 00 4f 00 72 00 69 00 67 00 69 00 6e 00 61 00 6c 00 46 00 69 00 1.2...H.....O.r.i.g.i.n.a.l.F.i.
d9500 6c 00 65 00 6e 00 61 00 6d 00 65 00 00 00 68 00 69 00 64 00 64 00 65 00 6e 00 69 00 6e 00 70 00 l.e.n.a.m.e...h.i.d.d.e.n.i.n.p.
d9520 75 00 74 00 2e 00 65 00 78 00 65 00 00 00 3a 00 0d 00 01 00 50 00 72 00 6f 00 64 00 75 00 63 00 u.t...e.x.e...:.....P.r.o.d.u.c.
d9540 74 00 4e 00 61 00 6d 00 65 00 00 00 00 00 48 00 69 00 64 00 64 00 65 00 6e 00 20 00 49 00 6e 00 t.N.a.m.e.....H.i.d.d.e.n...I.n.
d9560 70 00 75 00 74 00 00 00 00 00 3a 00 0b 00 01 00 50 00 72 00 6f 00 64 00 75 00 63 00 74 00 56 00 p.u.t.....:.....P.r.o.d.u.c.t.V.
d9580 65 00 72 00 73 00 69 00 6f 00 6e 00 00 00 31 00 2c 00 20 00 30 00 2c 00 20 00 30 00 2c 00 20 00 e.r.s.i.o.n...1.,...0.,...0.,...
d95a0 30 00 00 00 00 00 44 00 00 00 01 00 56 00 61 00 72 00 46 00 69 00 6c 00 65 00 49 00 6e 00 66 00 0.....D.....V.a.r.F.i.l.e.I.n.f.
d95c0 6f 00 00 00 00 00 24 00 04 00 00 00 54 00 72 00 61 00 6e 00 73 00 6c 00 61 00 74 00 69 00 6f 00 o.....$.....T.r.a.n.s.l.a.t.i.o.
d95e0 6e 00 00 00 00 00 09 04 b0 04 3c 61 73 73 65 6d 62 6c 79 20 78 6d 6c 6e 73 3d 22 75 72 6e 3a 73 n.........<assembly.xmlns="urn:s
d9600 63 68 65 6d 61 73 2d 6d 69 63 72 6f 73 6f 66 74 2d 63 6f 6d 3a 61 73 6d 2e 76 31 22 20 6d 61 6e chemas-microsoft-com:asm.v1".man
d9620 69 66 65 73 74 56 65 72 73 69 6f 6e 3d 22 31 2e 30 22 3e 0d 0a 20 20 3c 74 72 75 73 74 49 6e 66 ifestVersion="1.0">....<trustInf
d9640 6f 20 78 6d 6c 6e 73 3d 22 75 72 6e 3a 73 63 68 65 6d 61 73 2d 6d 69 63 72 6f 73 6f 66 74 2d 63 o.xmlns="urn:schemas-microsoft-c
d9660 6f 6d 3a 61 73 6d 2e 76 33 22 3e 0d 0a 20 20 20 20 3c 73 65 63 75 72 69 74 79 3e 0d 0a 20 20 20 om:asm.v3">......<security>.....
d9680 20 20 20 3c 72 65 71 75 65 73 74 65 64 50 72 69 76 69 6c 65 67 65 73 3e 0d 0a 20 20 20 20 20 20 ...<requestedPrivileges>........
d96a0 20 20 3c 72 65 71 75 65 73 74 65 64 45 78 65 63 75 74 69 6f 6e 4c 65 76 65 6c 20 6c 65 76 65 6c ..<requestedExecutionLevel.level
d96c0 3d 22 61 73 49 6e 76 6f 6b 65 72 22 20 75 69 41 63 63 65 73 73 3d 22 66 61 6c 73 65 22 3e 3c 2f ="asInvoker".uiAccess="false"></
d96e0 72 65 71 75 65 73 74 65 64 45 78 65 63 75 74 69 6f 6e 4c 65 76 65 6c 3e 0d 0a 20 20 20 20 20 20 requestedExecutionLevel>........
d9700 3c 2f 72 65 71 75 65 73 74 65 64 50 72 69 76 69 6c 65 67 65 73 3e 0d 0a 20 20 20 20 3c 2f 73 65 </requestedPrivileges>......</se
d9720 63 75 72 69 74 79 3e 0d 0a 20 20 3c 2f 74 72 75 73 74 49 6e 66 6f 3e 0d 0a 20 20 3c 64 65 70 65 curity>....</trustInfo>....<depe
d9740 6e 64 65 6e 63 79 3e 0d 0a 20 20 20 20 3c 64 65 70 65 6e 64 65 6e 74 41 73 73 65 6d 62 6c 79 3e ndency>......<dependentAssembly>
d9760 0d 0a 20 20 20 20 20 20 3c 61 73 73 65 6d 62 6c 79 49 64 65 6e 74 69 74 79 20 74 79 70 65 3d 22 ........<assemblyIdentity.type="
d9780 77 69 6e 33 32 22 20 6e 61 6d 65 3d 22 4d 69 63 72 6f 73 6f 66 74 2e 56 43 39 30 2e 43 52 54 22 win32".name="Microsoft.VC90.CRT"
d97a0 20 76 65 72 73 69 6f 6e 3d 22 39 2e 30 2e 32 31 30 32 32 2e 38 22 20 70 72 6f 63 65 73 73 6f 72 .version="9.0.21022.8".processor
d97c0 41 72 63 68 69 74 65 63 74 75 72 65 3d 22 78 38 36 22 20 70 75 62 6c 69 63 4b 65 79 54 6f 6b 65 Architecture="x86".publicKeyToke
d97e0 6e 3d 22 31 66 63 38 62 33 62 39 61 31 65 31 38 65 33 62 22 3e 3c 2f 61 73 73 65 6d 62 6c 79 49 n="1fc8b3b9a1e18e3b"></assemblyI
d9800 64 65 6e 74 69 74 79 3e 0d 0a 20 20 20 20 3c 2f 64 65 70 65 6e 64 65 6e 74 41 73 73 65 6d 62 6c dentity>......</dependentAssembl
d9820 79 3e 0d 0a 20 20 3c 2f 64 65 70 65 6e 64 65 6e 63 79 3e 0d 0a 3c 2f 61 73 73 65 6d 62 6c 79 3e y>....</dependency>..</assembly>
d9840 50 41 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 PAPADDINGXXPADDINGPADDINGXXPADDI
d9860 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d9880 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d98a0 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d98c0 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d98e0 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d9900 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d9920 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d9940 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d9960 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d9980 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d99a0 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d99c0 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d99e0 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d9a00 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 NGPADDINGXXPADDINGPADDINGXXPADDI
d9a20 4e 47 00 10 00 00 40 01 00 00 03 30 10 30 21 30 2f 30 38 30 46 30 4c 30 54 30 5e 30 64 30 6e 30 NG....@....0.0!0/080F0L0T0^0d0n0
d9a40 7b 30 89 30 97 30 a1 30 a8 30 ae 30 b3 30 b8 30 bd 30 c2 30 c8 30 d0 30 e4 30 ff 30 08 31 23 31 {0.0.0.0.0.0.0.0.0.0.0.0.0.0.1#1
d9a60 2d 31 40 31 4a 31 4f 31 54 31 76 31 7b 31 84 31 89 31 96 31 a7 31 ad 31 b4 31 c8 31 cd 31 d3 31 -1@1J1O1T1v1{1.1.1.1.1.1.1.1.1.1
d9a80 db 31 e1 31 e7 31 f4 31 fa 31 03 32 22 32 2a 32 33 32 39 32 41 32 4d 32 5f 32 6a 32 70 32 b9 32 .1.1.1.1.1.2"2*23292A2M2_2j2p2.2
d9aa0 bf 32 c7 32 ce 32 d3 32 d9 32 df 32 e7 32 ed 32 f4 32 fb 32 0b 33 13 33 19 33 25 33 30 33 4e 33 .2.2.2.2.2.2.2.2.2.2.3.3.3%303N3
d9ac0 54 33 5a 33 60 33 66 33 6c 33 73 33 7a 33 81 33 88 33 8f 33 96 33 9d 33 a5 33 ad 33 b5 33 c1 33 T3Z3`3f3l3s3z3.3.3.3.3.3.3.3.3.3
d9ae0 ca 33 cf 33 d5 33 df 33 e8 33 f3 33 ff 33 04 34 14 34 19 34 1f 34 25 34 3b 34 42 34 8b 34 91 34 .3.3.3.3.3.3.3.4.4.4.4%4;4B4.4.4
d9b00 9a 34 a1 34 ac 34 b2 34 c6 34 db 34 e6 34 fe 34 14 35 21 35 5e 35 63 35 84 35 89 35 a8 35 48 36 .4.4.4.4.4.4.4.4.5!5^5c5.5.5.5H6
d9b20 4d 36 5f 36 7d 36 91 36 97 36 00 37 06 37 0d 37 2a 37 77 37 7c 37 c1 37 e4 37 f1 37 fd 37 05 38 M6_6}6.6.6.7.7.7*7w7|7.7.7.7.7.8
d9b40 0d 38 19 38 3d 38 45 38 50 38 56 38 5c 38 62 38 68 38 6e 38 74 38 7a 38 80 38 9c 38 e2 38 02 39 .8.8=8E8P8V8\8b8h8n8t8z8.8.8.8.9
d9b60 00 00 00 20 00 00 24 00 00 00 dc 30 e8 30 ec 30 1c 31 20 31 74 31 78 31 1c 32 20 32 40 32 5c 32 ......$....0.0.0.1.1t1x1.2.2@2\2
d9b80 60 32 68 32 74 32 00 30 00 00 0c 00 00 00 18 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 `2h2t2.0.......0................
d9ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9c20 00 00 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 ..<?php...........namespace.Symf
d9c40 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 3b 0a 0a 75 73 65 20 53 79 6d 66 ony\Component\Console;..use.Symf
d9c60 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 ony\Component\Console\Descriptor
d9c80 5c 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d \TextDescriptor;.use.Symfony\Com
d9ca0 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 5c 58 6d 6c 44 65 73 ponent\Console\Descriptor\XmlDes
d9cc0 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 criptor;.use.Symfony\Component\C
d9ce0 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 onsole\Exception\ExceptionInterf
d9d00 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f ace;.use.Symfony\Component\Conso
d9d20 6c 65 5c 48 65 6c 70 65 72 5c 44 65 62 75 67 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 3b 0a le\Helper\DebugFormatterHelper;.
d9d40 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 use.Symfony\Component\Console\He
d9d60 6c 70 65 72 5c 50 72 6f 63 65 73 73 48 65 6c 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c lper\ProcessHelper;.use.Symfony\
d9d80 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 51 75 65 73 74 69 6f Component\Console\Helper\Questio
d9da0 6e 48 65 6c 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 nHelper;.use.Symfony\Component\C
d9dc0 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 onsole\Input\InputInterface;.use
d9de0 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 .Symfony\Component\Console\Input
d9e00 5c 41 72 67 76 49 6e 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e \ArgvInput;.use.Symfony\Componen
d9e20 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 41 72 72 61 79 49 6e 70 75 74 3b 0a 75 73 65 20 t\Console\Input\ArrayInput;.use.
d9e40 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c Symfony\Component\Console\Input\
d9e60 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d InputDefinition;.use.Symfony\Com
d9e80 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e ponent\Console\Input\InputOption
d9ea0 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c ;.use.Symfony\Component\Console\
d9ec0 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 Input\InputArgument;.use.Symfony
d9ee0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 77 \Component\Console\Input\InputAw
d9f00 61 72 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e areInterface;.use.Symfony\Compon
d9f20 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 42 75 66 66 65 72 65 64 4f 75 74 70 75 ent\Console\Output\BufferedOutpu
d9f40 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 t;.use.Symfony\Component\Console
d9f60 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d \Output\OutputInterface;.use.Sym
d9f80 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 43 6f fony\Component\Console\Output\Co
d9fa0 6e 73 6f 6c 65 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 nsoleOutput;.use.Symfony\Compone
d9fc0 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 nt\Console\Output\ConsoleOutputI
d9fe0 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c nterface;.use.Symfony\Component\
da000 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d Console\Command\Command;.use.Sym
da020 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 48 fony\Component\Console\Command\H
da040 65 6c 70 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e elpCommand;.use.Symfony\Componen
da060 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 4c 69 73 74 43 6f 6d 6d 61 6e 64 3b 0a 75 t\Console\Command\ListCommand;.u
da080 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c se.Symfony\Component\Console\Hel
da0a0 70 65 72 5c 48 65 6c 70 65 72 53 65 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f per\HelperSet;.use.Symfony\Compo
da0c0 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 46 6f 72 6d 61 74 74 65 72 48 65 6c nent\Console\Helper\FormatterHel
da0e0 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f per;.use.Symfony\Component\Conso
da100 6c 65 5c 48 65 6c 70 65 72 5c 44 69 61 6c 6f 67 48 65 6c 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 le\Helper\DialogHelper;.use.Symf
da120 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 50 72 6f ony\Component\Console\Helper\Pro
da140 67 72 65 73 73 48 65 6c 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 gressHelper;.use.Symfony\Compone
da160 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 54 61 62 6c 65 48 65 6c 70 65 72 3b 0a 75 nt\Console\Helper\TableHelper;.u
da180 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 76 65 se.Symfony\Component\Console\Eve
da1a0 6e 74 5c 43 6f 6e 73 6f 6c 65 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 nt\ConsoleCommandEvent;.use.Symf
da1c0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 76 65 6e 74 5c 43 6f 6e 73 ony\Component\Console\Event\Cons
da1e0 6f 6c 65 45 78 63 65 70 74 69 6f 6e 45 76 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 oleExceptionEvent;.use.Symfony\C
da200 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 76 65 6e 74 5c 43 6f 6e 73 6f 6c 65 54 65 omponent\Console\Event\ConsoleTe
da220 72 6d 69 6e 61 74 65 45 76 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e rminateEvent;.use.Symfony\Compon
da240 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 43 6f 6d 6d 61 6e 64 4e 6f 74 ent\Console\Exception\CommandNot
da260 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 FoundException;.use.Symfony\Comp
da280 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 4c 6f 67 69 63 45 78 63 onent\Console\Exception\LogicExc
da2a0 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 45 76 eption;.use.Symfony\Component\Ev
da2c0 65 6e 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 49 6e 74 entDispatcher\EventDispatcherInt
da2e0 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 70 erface;.................class.Ap
da300 70 6c 69 63 61 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 plication.{.private.$commands.=.
da320 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 77 61 6e 74 48 65 6c 70 73 20 3d 20 66 61 array();.private.$wantHelps.=.fa
da340 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 3b 0a 70 72 lse;.private.$runningCommand;.pr
da360 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 76 65 72 73 69 6f 6e 3b 0a 70 ivate.$name;.private.$version;.p
da380 72 69 76 61 74 65 20 24 63 61 74 63 68 45 78 63 65 70 74 69 6f 6e 73 20 3d 20 74 72 75 65 3b 0a rivate.$catchExceptions.=.true;.
da3a0 70 72 69 76 61 74 65 20 24 61 75 74 6f 45 78 69 74 20 3d 20 74 72 75 65 3b 0a 70 72 69 76 61 74 private.$autoExit.=.true;.privat
da3c0 65 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 68 65 6c 70 65 72 53 65 e.$definition;.private.$helperSe
da3e0 74 3b 0a 70 72 69 76 61 74 65 20 24 64 69 73 70 61 74 63 68 65 72 3b 0a 70 72 69 76 61 74 65 20 t;.private.$dispatcher;.private.
da400 24 74 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 64 65 $terminalDimensions;.private.$de
da420 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 faultCommand;........public.func
da440 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 20 3d 20 27 55 4e 4b 4e 4f 57 tion.__construct($name.=.'UNKNOW
da460 4e 27 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 27 55 4e 4b 4e 4f 57 4e 27 29 0a 7b 0a 24 74 68 69 N',.$version.=.'UNKNOWN').{.$thi
da480 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 s->name.=.$name;.$this->version.
da4a0 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 43 6f 6d 6d 61 6e =.$version;.$this->defaultComman
da4c0 64 20 3d 20 27 6c 69 73 74 27 3b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 24 d.=.'list';.$this->helperSet.=.$
da4e0 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 48 65 6c 70 65 72 53 65 74 28 29 3b 0a 24 74 68 this->getDefaultHelperSet();.$th
da500 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 is->definition.=.$this->getDefau
da520 6c 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 ltInputDefinition();..foreach.($
da540 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 73 28 29 20 61 73 20 24 63 this->getDefaultCommands().as.$c
da560 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a ommand).{.$this->add($command);.
da580 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 70 61 74 63 68 }.}..public.function.setDispatch
da5a0 65 72 28 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 49 6e 74 65 72 66 61 63 65 20 24 64 69 73 er(EventDispatcherInterface.$dis
da5c0 70 61 74 63 68 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 70 61 74 63 68 65 72 20 3d 20 24 patcher).{.$this->dispatcher.=.$
da5e0 64 69 73 70 61 74 63 68 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 dispatcher;.}............public.
da600 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 function.run(InputInterface.$inp
da620 75 74 20 3d 20 6e 75 6c 6c 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 ut.=.null,.OutputInterface.$outp
da640 75 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 69 6e 70 75 74 ut.=.null).{.if.(null.===.$input
da660 29 20 7b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 67 76 49 6e 70 75 74 28 29 3b 0a 7d 0a ).{.$input.=.new.ArgvInput();.}.
da680 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6f 75 74 70 75 74 29 20 7b 0a 24 6f 75 74 70 75 74 .if.(null.===.$output).{.$output
da6a0 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 .=.new.ConsoleOutput();.}..$this
da6c0 2d 3e 63 6f 6e 66 69 67 75 72 65 49 4f 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a ->configureIO($input,.$output);.
da6e0 0a 74 72 79 20 7b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 64 6f 52 75 6e 28 .try.{.$exitCode.=.$this->doRun(
da700 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 $input,.$output);.}.catch.(\Exce
da720 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 63 61 74 63 68 45 78 63 ption.$e).{.if.(!$this->catchExc
da740 65 70 74 69 6f 6e 73 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 69 66 20 28 24 6f 75 74 eptions).{.throw.$e;.}..if.($out
da760 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 put.instanceof.ConsoleOutputInte
da780 72 66 61 63 65 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 45 78 63 65 70 74 69 6f 6e 28 rface).{.$this->renderException(
da7a0 24 65 2c 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a $e,.$output->getErrorOutput());.
da7c0 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 45 78 63 65 70 74 69 6f 6e 28 }.else.{.$this->renderException(
da7e0 24 65 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 24 65 2d $e,.$output);.}..$exitCode.=.$e-
da800 3e 67 65 74 43 6f 64 65 28 29 3b 0a 69 66 20 28 69 73 5f 6e 75 6d 65 72 69 63 28 24 65 78 69 74 >getCode();.if.(is_numeric($exit
da820 43 6f 64 65 29 29 20 7b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 28 69 6e 74 29 20 24 65 78 69 74 Code)).{.$exitCode.=.(int).$exit
da840 43 6f 64 65 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 65 78 69 74 43 6f 64 65 29 20 7b 0a 24 65 78 Code;.if.(0.===.$exitCode).{.$ex
da860 69 74 43 6f 64 65 20 3d 20 31 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 78 69 74 43 6f 64 65 itCode.=.1;.}.}.else.{.$exitCode
da880 20 3d 20 31 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 75 74 6f 45 78 69 74 29 20 .=.1;.}.}..if.($this->autoExit).
da8a0 7b 0a 69 66 20 28 24 65 78 69 74 43 6f 64 65 20 3e 20 32 35 35 29 20 7b 0a 24 65 78 69 74 43 6f {.if.($exitCode.>.255).{.$exitCo
da8c0 64 65 20 3d 20 32 35 35 3b 0a 7d 0a 0a 65 78 69 74 28 24 65 78 69 74 43 6f 64 65 29 3b 0a 7d 0a de.=.255;.}..exit($exitCode);.}.
da8e0 0a 72 65 74 75 72 6e 20 24 65 78 69 74 43 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 .return.$exitCode;.}..........pu
da900 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 52 75 6e 28 49 6e 70 75 74 49 6e 74 65 72 66 61 blic.function.doRun(InputInterfa
da920 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 ce.$input,.OutputInterface.$outp
da940 75 74 29 0a 7b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 ut).{.if.(true.===.$input->hasPa
da960 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 76 65 72 73 69 6f 6e 27 2c rameterOption(array('--version',
da980 20 27 2d 56 27 29 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 68 69 .'-V'))).{.$output->writeln($thi
da9a0 73 2d 3e 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f 6e 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 30 3b s->getLongVersion());..return.0;
da9c0 0a 7d 0a 0a 24 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 4e 61 6d .}..$name.=.$this->getCommandNam
da9e0 65 28 24 69 6e 70 75 74 29 3b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e e($input);.if.(true.===.$input->
daa00 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 68 65 6c 70 hasParameterOption(array('--help
daa20 27 2c 20 27 2d 68 27 29 29 29 20 7b 0a 69 66 20 28 21 24 6e 61 6d 65 29 20 7b 0a 24 6e 61 6d 65 ',.'-h'))).{.if.(!$name).{.$name
daa40 20 3d 20 27 68 65 6c 70 27 3b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 72 61 79 49 6e 70 .=.'help';.$input.=.new.ArrayInp
daa60 75 74 28 61 72 72 61 79 28 27 63 6f 6d 6d 61 6e 64 27 20 3d 3e 20 27 68 65 6c 70 27 29 29 3b 0a ut(array('command'.=>.'help'));.
daa80 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 77 61 6e 74 48 65 6c 70 73 20 3d 20 74 72 75 65 }.else.{.$this->wantHelps.=.true
daaa0 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 6e 61 6d 65 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 74 68 ;.}.}..if.(!$name).{.$name.=.$th
daac0 69 73 2d 3e 64 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 3b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 is->defaultCommand;.$input.=.new
daae0 20 41 72 72 61 79 49 6e 70 75 74 28 61 72 72 61 79 28 27 63 6f 6d 6d 61 6e 64 27 20 3d 3e 20 24 .ArrayInput(array('command'.=>.$
dab00 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 29 29 3b 0a 7d 0a 0a 0a 20 24 63 6f this->defaultCommand));.}....$co
dab20 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 28 24 6e 61 6d 65 29 3b 0a 0a 24 74 68 mmand.=.$this->find($name);..$th
dab40 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 24 is->runningCommand.=.$command;.$
dab60 65 78 69 74 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 64 6f 52 75 6e 43 6f 6d 6d 61 6e 64 28 24 exitCode.=.$this->doRunCommand($
dab80 63 6f 6d 6d 61 6e 64 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 74 68 69 73 command,.$input,.$output);.$this
daba0 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e ->runningCommand.=.null;..return
dabc0 20 24 65 78 69 74 43 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .$exitCode;.}.......public.funct
dabe0 69 6f 6e 20 73 65 74 48 65 6c 70 65 72 53 65 74 28 48 65 6c 70 65 72 53 65 74 20 24 68 65 6c 70 ion.setHelperSet(HelperSet.$help
dac00 65 72 53 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 24 68 65 6c erSet).{.$this->helperSet.=.$hel
dac20 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 perSet;.}.......public.function.
dac40 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 getHelperSet().{.return.$this->h
dac60 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f elperSet;.}.......public.functio
dac80 6e 20 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 n.setDefinition(InputDefinition.
daca0 24 64 65 66 69 6e 69 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e $definition).{.$this->definition
dacc0 20 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .=.$definition;.}.......public.f
dace0 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e unction.getDefinition().{.return
dad00 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c .$this->definition;.}.......publ
dad20 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 ic.function.getHelp().{.return.$
dad40 74 68 69 73 2d 3e 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a this->getLongVersion();.}.......
dad60 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 61 74 63 68 45 78 63 65 70 74 69 6f public.function.setCatchExceptio
dad80 6e 73 28 24 62 6f 6f 6c 65 61 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 61 74 63 68 45 78 63 65 70 ns($boolean).{.$this->catchExcep
dada0 74 69 6f 6e 73 20 3d 20 28 62 6f 6f 6c 29 20 24 62 6f 6f 6c 65 61 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a tions.=.(bool).$boolean;.}......
dadc0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 6f 45 78 69 74 28 24 62 6f .public.function.setAutoExit($bo
dade0 6f 6c 65 61 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 45 78 69 74 20 3d 20 28 62 6f 6f 6c olean).{.$this->autoExit.=.(bool
dae00 29 20 24 62 6f 6f 6c 65 61 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ).$boolean;.}.......public.funct
dae20 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 ion.getName().{.return.$this->na
dae40 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e me;.}.......public.function.setN
dae60 61 6d 65 28 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 ame($name).{.$this->name.=.$name
dae80 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 ;.}.......public.function.getVer
daea0 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 3b 0a sion().{.return.$this->version;.
daec0 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 73 69 }.......public.function.setVersi
daee0 6f 6e 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 3d 20 on($version).{.$this->version.=.
daf00 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f $version;.}.......public.functio
daf20 6e 20 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 69 66 20 28 27 55 4e 4b 4e 4f 57 n.getLongVersion().{.if.('UNKNOW
daf40 4e 27 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 69 66 20 28 27 N'.!==.$this->getName()).{.if.('
daf60 55 4e 4b 4e 4f 57 4e 27 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 UNKNOWN'.!==.$this->getVersion()
daf80 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e ).{.return.sprintf('<info>%s</in
dafa0 66 6f 3e 20 76 65 72 73 69 6f 6e 20 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 fo>.version.<comment>%s</comment
dafc0 3e 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 74 68 69 73 2d 3e 67 65 74 >',.$this->getName(),.$this->get
dafe0 56 65 72 73 69 6f 6e 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 3c Version());.}..return.sprintf('<
db000 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 info>%s</info>',.$this->getName(
db020 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 3c 69 6e 66 6f 3e 43 6f 6e 73 6f 6c 65 20 54 6f 6f ));.}..return.'<info>Console.Too
db040 6c 3c 2f 69 6e 66 6f 3e 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 l</info>';.}.........public.func
db060 74 69 6f 6e 20 72 65 67 69 73 74 65 72 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 tion.register($name).{.return.$t
db080 68 69 73 2d 3e 61 64 64 28 6e 65 77 20 43 6f 6d 6d 61 6e 64 28 24 6e 61 6d 65 29 29 3b 0a 7d 0a his->add(new.Command($name));.}.
db0a0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 43 6f 6d 6d 61 6e 64 ......public.function.addCommand
db0c0 73 28 61 72 72 61 79 20 24 63 6f 6d 6d 61 6e 64 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 s(array.$commands).{.foreach.($c
db0e0 6f 6d 6d 61 6e 64 73 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 ommands.as.$command).{.$this->ad
db100 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 d($command);.}.}...........publi
db120 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 29 c.function.add(Command.$command)
db140 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 73 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 24 74 68 69 .{.$command->setApplication($thi
db160 73 29 3b 0a 0a 69 66 20 28 21 24 63 6f 6d 6d 61 6e 64 2d 3e 69 73 45 6e 61 62 6c 65 64 28 29 29 s);..if.(!$command->isEnabled())
db180 20 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 73 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 6e 75 6c 6c .{.$command->setApplication(null
db1a0 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6d );..return;.}..if.(null.===.$com
db1c0 6d 61 6e 64 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e mand->getDefinition()).{.throw.n
db1e0 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 ew.LogicException(sprintf('Comma
db200 6e 64 20 63 6c 61 73 73 20 22 25 73 22 20 69 73 20 6e 6f 74 20 63 6f 72 72 65 63 74 6c 79 20 69 nd.class."%s".is.not.correctly.i
db220 6e 69 74 69 61 6c 69 7a 65 64 2e 20 59 6f 75 20 70 72 6f 62 61 62 6c 79 20 66 6f 72 67 6f 74 20 nitialized..You.probably.forgot.
db240 74 6f 20 63 61 6c 6c 20 74 68 65 20 70 61 72 65 6e 74 20 63 6f 6e 73 74 72 75 63 74 6f 72 2e 27 to.call.the.parent.constructor.'
db260 2c 20 67 65 74 5f 63 6c 61 73 73 28 24 63 6f 6d 6d 61 6e 64 29 29 29 3b 0a 7d 0a 0a 24 74 68 69 ,.get_class($command)));.}..$thi
db280 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 5d s->commands[$command->getName()]
db2a0 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 2d .=.$command;..foreach.($command-
db2c0 3e 67 65 74 41 6c 69 61 73 65 73 28 29 20 61 73 20 24 61 6c 69 61 73 29 20 7b 0a 24 74 68 69 73 >getAliases().as.$alias).{.$this
db2e0 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 61 6c 69 61 73 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d ->commands[$alias].=.$command;.}
db300 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ..return.$command;.}...........p
db320 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 ublic.function.get($name).{.if.(
db340 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 29 29 20 !isset($this->commands[$name])).
db360 7b 0a 74 68 72 6f 77 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 {.throw.new.CommandNotFoundExcep
db380 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 63 6f 6d 6d 61 6e 64 20 22 25 73 22 20 64 tion(sprintf('The.command."%s".d
db3a0 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 63 6f oes.not.exist.',.$name));.}..$co
db3c0 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 3b 0a mmand.=.$this->commands[$name];.
db3e0 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 61 6e 74 48 65 6c 70 73 29 20 7b 0a 24 74 68 69 73 2d 3e .if.($this->wantHelps).{.$this->
db400 77 61 6e 74 48 65 6c 70 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 24 68 65 6c 70 43 6f 6d 6d 61 6e 64 wantHelps.=.false;..$helpCommand
db420 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 28 27 68 65 6c 70 27 29 3b 0a 24 68 65 6c 70 43 6f 6d 6d .=.$this->get('help');.$helpComm
db440 61 6e 64 2d 3e 73 65 74 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 0a 72 65 74 75 and->setCommand($command);..retu
db460 72 6e 20 24 68 65 6c 70 43 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d rn.$helpCommand;.}..return.$comm
db480 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 and;.}.........public.function.h
db4a0 61 73 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e as($name).{.return.isset($this->
db4c0 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c commands[$name]);.}.........publ
db4e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 0a 7b 0a 24 6e ic.function.getNamespaces().{.$n
db500 61 6d 65 73 70 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 amespaces.=.array();.foreach.($t
db520 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 6e 61 his->commands.as.$command).{.$na
db540 6d 65 73 70 61 63 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6e 61 6d 65 73 70 61 63 mespaces.=.array_merge($namespac
db560 65 73 2c 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 41 6c 6c 4e 61 6d 65 73 70 61 63 65 73 28 es,.$this->extractAllNamespaces(
db580 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 $command->getName()));..foreach.
db5a0 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 20 61 73 20 24 61 6c 69 61 ($command->getAliases().as.$alia
db5c0 73 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 s).{.$namespaces.=.array_merge($
db5e0 6e 61 6d 65 73 70 61 63 65 73 2c 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 41 6c 6c 4e 61 6d namespaces,.$this->extractAllNam
db600 65 73 70 61 63 65 73 28 24 61 6c 69 61 73 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 espaces($alias));.}.}..return.ar
db620 72 61 79 5f 76 61 6c 75 65 73 28 61 72 72 61 79 5f 75 6e 69 71 75 65 28 61 72 72 61 79 5f 66 69 ray_values(array_unique(array_fi
db640 6c 74 65 72 28 24 6e 61 6d 65 73 70 61 63 65 73 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a lter($namespaces)));.}..........
db660 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 4e 61 6d 65 73 70 61 63 65 28 24 .public.function.findNamespace($
db680 6e 61 6d 65 73 70 61 63 65 29 0a 7b 0a 24 61 6c 6c 4e 61 6d 65 73 70 61 63 65 73 20 3d 20 24 74 namespace).{.$allNamespaces.=.$t
db6a0 68 69 73 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 3b 0a 24 65 78 70 72 20 3d 20 70 72 his->getNamespaces();.$expr.=.pr
db6c0 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 7b 28 5b 5e 3a 5d 2b 7c 29 7d 27 eg_replace_callback('{([^:]+|)}'
db6e0 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 68 65 73 29 20 7b 20 72 65 74 75 72 6e 20 70 ,.function.($matches).{.return.p
db700 72 65 67 5f 71 75 6f 74 65 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 2e 27 5b 5e 3a 5d 2a 27 3b 20 reg_quote($matches[1]).'[^:]*';.
db720 7d 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 70 72 },.$namespace);.$namespaces.=.pr
db740 65 67 5f 67 72 65 70 28 27 7b 5e 27 2e 24 65 78 70 72 2e 27 7d 27 2c 20 24 61 6c 6c 4e 61 6d 65 eg_grep('{^'.$expr.'}',.$allName
db760 73 70 61 63 65 73 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 6e 61 6d 65 73 70 61 63 65 73 29 spaces);..if.(empty($namespaces)
db780 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 27 54 68 65 72 65 20 61 72 ).{.$message.=.sprintf('There.ar
db7a0 65 20 6e 6f 20 63 6f 6d 6d 61 6e 64 73 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 65 20 22 25 73 e.no.commands.defined.in.the."%s
db7c0 22 20 6e 61 6d 65 73 70 61 63 65 2e 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 0a 69 66 20 ".namespace.',.$namespace);..if.
db7e0 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 41 6c 74 65 ($alternatives.=.$this->findAlte
db800 72 6e 61 74 69 76 65 73 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 61 6c 6c 4e 61 6d 65 73 70 61 rnatives($namespace,.$allNamespa
db820 63 65 73 29 29 20 7b 0a 69 66 20 28 31 20 3d 3d 20 63 6f 75 6e 74 28 24 61 6c 74 65 72 6e 61 74 ces)).{.if.(1.==.count($alternat
db840 69 76 65 73 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e 44 69 64 20 79 6f ives)).{.$message..=."\n\nDid.yo
db860 75 20 6d 65 61 6e 20 74 68 69 73 3f 5c 6e 20 20 20 20 22 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d u.mean.this?\n....";.}.else.{.$m
db880 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e 44 69 64 20 79 6f 75 20 6d 65 61 6e 20 6f 6e 65 20 essage..=."\n\nDid.you.mean.one.
db8a0 6f 66 20 74 68 65 73 65 3f 5c 6e 20 20 20 20 22 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 20 2e 3d of.these?\n....";.}..$message..=
db8c0 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 20 20 20 20 22 2c 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 .implode("\n....",.$alternatives
db8e0 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 );.}..throw.new.CommandNotFoundE
db900 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2c 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 xception($message,.$alternatives
db920 29 3b 0a 7d 0a 0a 24 65 78 61 63 74 20 3d 20 69 6e 5f 61 72 72 61 79 28 24 6e 61 6d 65 73 70 61 );.}..$exact.=.in_array($namespa
db940 63 65 2c 20 24 6e 61 6d 65 73 70 61 63 65 73 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 63 6f 75 6e ce,.$namespaces,.true);.if.(coun
db960 74 28 24 6e 61 6d 65 73 70 61 63 65 73 29 20 3e 20 31 20 26 26 20 21 24 65 78 61 63 74 29 20 7b t($namespaces).>.1.&&.!$exact).{
db980 0a 74 68 72 6f 77 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 .throw.new.CommandNotFoundExcept
db9a0 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 6e 61 6d 65 73 70 61 63 65 20 22 25 73 22 20 ion(sprintf('The.namespace."%s".
db9c0 69 73 20 61 6d 62 69 67 75 6f 75 73 20 28 25 73 29 2e 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 2c is.ambiguous.(%s).',.$namespace,
db9e0 20 24 74 68 69 73 2d 3e 67 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 53 75 67 67 65 73 74 69 6f .$this->getAbbreviationSuggestio
dba00 6e 73 28 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 6e 61 6d 65 73 70 61 63 65 73 29 29 29 2c 20 ns(array_values($namespaces))),.
dba20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 6e 61 6d 65 73 70 61 63 65 73 29 29 3b 0a 7d 0a 0a 72 array_values($namespaces));.}..r
dba40 65 74 75 72 6e 20 24 65 78 61 63 74 20 3f 20 24 6e 61 6d 65 73 70 61 63 65 20 3a 20 72 65 73 65 eturn.$exact.?.$namespace.:.rese
dba60 74 28 24 6e 61 6d 65 73 70 61 63 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 t($namespaces);.}..............p
dba80 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 28 24 6e 61 6d 65 29 0a 7b 0a 24 61 6c ublic.function.find($name).{.$al
dbaa0 6c 43 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 63 6f lCommands.=.array_keys($this->co
dbac0 6d 6d 61 6e 64 73 29 3b 0a 24 65 78 70 72 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 mmands);.$expr.=.preg_replace_ca
dbae0 6c 6c 62 61 63 6b 28 27 7b 28 5b 5e 3a 5d 2b 7c 29 7d 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 llback('{([^:]+|)}',.function.($
dbb00 6d 61 74 63 68 65 73 29 20 7b 20 72 65 74 75 72 6e 20 70 72 65 67 5f 71 75 6f 74 65 28 24 6d 61 matches).{.return.preg_quote($ma
dbb20 74 63 68 65 73 5b 31 5d 29 2e 27 5b 5e 3a 5d 2a 27 3b 20 7d 2c 20 24 6e 61 6d 65 29 3b 0a 24 63 tches[1]).'[^:]*';.},.$name);.$c
dbb40 6f 6d 6d 61 6e 64 73 20 3d 20 70 72 65 67 5f 67 72 65 70 28 27 7b 5e 27 2e 24 65 78 70 72 2e 27 ommands.=.preg_grep('{^'.$expr.'
dbb60 7d 27 2c 20 24 61 6c 6c 43 6f 6d 6d 61 6e 64 73 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 63 }',.$allCommands);..if.(empty($c
dbb80 6f 6d 6d 61 6e 64 73 29 20 7c 7c 20 63 6f 75 6e 74 28 70 72 65 67 5f 67 72 65 70 28 27 7b 5e 27 ommands).||.count(preg_grep('{^'
dbba0 2e 24 65 78 70 72 2e 27 24 7d 27 2c 20 24 63 6f 6d 6d 61 6e 64 73 29 29 20 3c 20 31 29 20 7b 0a .$expr.'$}',.$commands)).<.1).{.
dbbc0 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 72 72 70 6f 73 28 24 6e 61 if.(false.!==.$pos.=.strrpos($na
dbbe0 6d 65 2c 20 27 3a 27 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 66 69 6e 64 4e 61 6d 65 73 70 61 me,.':')).{...$this->findNamespa
dbc00 63 65 28 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 30 2c 20 24 70 6f 73 29 29 3b 0a 7d 0a 0a 24 ce(substr($name,.0,.$pos));.}..$
dbc20 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 22 25 73 22 20 message.=.sprintf('Command."%s".
dbc40 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2e 27 2c 20 24 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 24 is.not.defined.',.$name);..if.($
dbc60 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 41 6c 74 65 72 6e alternatives.=.$this->findAltern
dbc80 61 74 69 76 65 73 28 24 6e 61 6d 65 2c 20 24 61 6c 6c 43 6f 6d 6d 61 6e 64 73 29 29 20 7b 0a 69 atives($name,.$allCommands)).{.i
dbca0 66 20 28 31 20 3d 3d 20 63 6f 75 6e 74 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 29 20 7b 0a f.(1.==.count($alternatives)).{.
dbcc0 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e 44 69 64 20 79 6f 75 20 6d 65 61 6e 20 74 68 $message..=."\n\nDid.you.mean.th
dbce0 69 73 3f 5c 6e 20 20 20 20 22 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d is?\n....";.}.else.{.$message..=
dbd00 20 22 5c 6e 5c 6e 44 69 64 20 79 6f 75 20 6d 65 61 6e 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 3f ."\n\nDid.you.mean.one.of.these?
dbd20 5c 6e 20 20 20 20 22 3b 0a 7d 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 69 6d 70 6c 6f 64 65 28 22 \n....";.}.$message..=.implode("
dbd40 5c 6e 20 20 20 20 22 2c 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 3b 0a 7d 0a 0a 74 68 72 6f \n....",.$alternatives);.}..thro
dbd60 77 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 24 w.new.CommandNotFoundException($
dbd80 6d 65 73 73 61 67 65 2c 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 3b 0a 7d 0a 0a 0a 20 69 66 message,.$alternatives);.}....if
dbda0 20 28 63 6f 75 6e 74 28 24 63 6f 6d 6d 61 6e 64 73 29 20 3e 20 31 29 20 7b 0a 24 63 6f 6d 6d 61 .(count($commands).>.1).{.$comma
dbdc0 6e 64 4c 69 73 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 3b 0a 24 63 6f 6d 6d 61 ndList.=.$this->commands;.$comma
dbde0 6e 64 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 63 6f 6d 6d 61 6e 64 73 2c 20 66 75 nds.=.array_filter($commands,.fu
dbe00 6e 63 74 69 6f 6e 20 28 24 6e 61 6d 65 4f 72 41 6c 69 61 73 29 20 75 73 65 20 28 24 63 6f 6d 6d nction.($nameOrAlias).use.($comm
dbe20 61 6e 64 4c 69 73 74 2c 20 24 63 6f 6d 6d 61 6e 64 73 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 4e 61 andList,.$commands).{.$commandNa
dbe40 6d 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 4c 69 73 74 5b 24 6e 61 6d 65 4f 72 41 6c 69 61 73 5d 2d me.=.$commandList[$nameOrAlias]-
dbe60 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 >getName();..return.$commandName
dbe80 20 3d 3d 3d 20 24 6e 61 6d 65 4f 72 41 6c 69 61 73 20 7c 7c 20 21 69 6e 5f 61 72 72 61 79 28 24 .===.$nameOrAlias.||.!in_array($
dbea0 63 6f 6d 6d 61 6e 64 4e 61 6d 65 2c 20 24 63 6f 6d 6d 61 6e 64 73 29 3b 0a 7d 29 3b 0a 7d 0a 0a commandName,.$commands);.});.}..
dbec0 24 65 78 61 63 74 20 3d 20 69 6e 5f 61 72 72 61 79 28 24 6e 61 6d 65 2c 20 24 63 6f 6d 6d 61 6e $exact.=.in_array($name,.$comman
dbee0 64 73 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 63 6f 6d 6d 61 6e 64 73 29 20 ds,.true);.if.(count($commands).
dbf00 3e 20 31 20 26 26 20 21 24 65 78 61 63 74 29 20 7b 0a 24 73 75 67 67 65 73 74 69 6f 6e 73 20 3d >.1.&&.!$exact).{.$suggestions.=
dbf20 20 24 74 68 69 73 2d 3e 67 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 53 75 67 67 65 73 74 69 6f .$this->getAbbreviationSuggestio
dbf40 6e 73 28 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 63 6f 6d 6d 61 6e 64 73 29 29 3b 0a 0a 74 68 ns(array_values($commands));..th
dbf60 72 6f 77 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e row.new.CommandNotFoundException
dbf80 28 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 22 25 73 22 20 69 73 20 61 6d 62 69 67 75 (sprintf('Command."%s".is.ambigu
dbfa0 6f 75 73 20 28 25 73 29 2e 27 2c 20 24 6e 61 6d 65 2c 20 24 73 75 67 67 65 73 74 69 6f 6e 73 29 ous.(%s).',.$name,.$suggestions)
dbfc0 2c 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 63 6f 6d 6d 61 6e 64 73 29 29 3b 0a 7d 0a 0a 72 ,.array_values($commands));.}..r
dbfe0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 28 24 65 78 61 63 74 20 3f 20 24 6e 61 6d 65 20 eturn.$this->get($exact.?.$name.
dc000 3a 20 72 65 73 65 74 28 24 63 6f 6d 6d 61 6e 64 73 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a :.reset($commands));.}..........
dc020 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 6c 6c 28 24 6e 61 6d 65 73 70 61 63 65 20 .public.function.all($namespace.
dc040 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6e 61 6d 65 73 70 61 63 =.null).{.if.(null.===.$namespac
dc060 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 0a e).{.return.$this->commands;.}..
dc080 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 $commands.=.array();.foreach.($t
dc0a0 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 6f 6d 6d 61 his->commands.as.$name.=>.$comma
dc0c0 6e 64 29 20 7b 0a 69 66 20 28 24 6e 61 6d 65 73 70 61 63 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e nd).{.if.($namespace.===.$this->
dc0e0 65 78 74 72 61 63 74 4e 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 2c 20 73 75 62 73 74 72 5f 63 extractNamespace($name,.substr_c
dc100 6f 75 6e 74 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 27 3a 27 29 20 2b 20 31 29 29 20 7b 0a 24 63 ount($namespace,.':').+.1)).{.$c
dc120 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 7d 0a 0a ommands[$name].=.$command;.}.}..
dc140 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c return.$commands;.}.........publ
dc160 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 62 62 72 65 76 69 61 74 69 ic.static.function.getAbbreviati
dc180 6f 6e 73 28 24 6e 61 6d 65 73 29 0a 7b 0a 24 61 62 62 72 65 76 73 20 3d 20 61 72 72 61 79 28 29 ons($names).{.$abbrevs.=.array()
dc1a0 3b 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 66 6f ;.foreach.($names.as.$name).{.fo
dc1c0 72 20 28 24 6c 65 6e 20 3d 20 73 74 72 6c 65 6e 28 24 6e 61 6d 65 29 3b 20 24 6c 65 6e 20 3e 20 r.($len.=.strlen($name);.$len.>.
dc1e0 30 3b 20 2d 2d 24 6c 65 6e 29 20 7b 0a 24 61 62 62 72 65 76 20 3d 20 73 75 62 73 74 72 28 24 6e 0;.--$len).{.$abbrev.=.substr($n
dc200 61 6d 65 2c 20 30 2c 20 24 6c 65 6e 29 3b 0a 24 61 62 62 72 65 76 73 5b 24 61 62 62 72 65 76 5d ame,.0,.$len);.$abbrevs[$abbrev]
dc220 5b 5d 20 3d 20 24 6e 61 6d 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 62 62 72 65 76 73 [].=.$name;.}.}..return.$abbrevs
dc240 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 ;.}............public.function.a
dc260 73 54 65 78 74 28 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 6e 75 6c 6c 2c 20 24 72 61 77 20 3d 20 sText($namespace.=.null,.$raw.=.
dc280 66 61 6c 73 65 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f false).{.@trigger_error('The.'._
dc2a0 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 _METHOD__.'.method.is.deprecated
dc2c0 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 33 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 .since.version.2.3.and.will.be.r
dc2e0 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 emoved.in.3.0.',.E_USER_DEPRECAT
dc300 45 44 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 20 3d 20 6e 65 77 20 54 65 78 74 44 65 73 63 ED);..$descriptor.=.new.TextDesc
dc320 72 69 70 74 6f 72 28 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 42 75 66 66 65 72 65 64 riptor();.$output.=.new.Buffered
dc340 4f 75 74 70 75 74 28 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 3a 3a 56 45 52 42 4f 53 49 54 59 Output(BufferedOutput::VERBOSITY
dc360 5f 4e 4f 52 4d 41 4c 2c 20 21 24 72 61 77 29 3b 0a 24 64 65 73 63 72 69 70 74 6f 72 2d 3e 64 65 _NORMAL,.!$raw);.$descriptor->de
dc380 73 63 72 69 62 65 28 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2c 20 61 72 72 61 79 28 27 6e 61 scribe($output,.$this,.array('na
dc3a0 6d 65 73 70 61 63 65 27 20 3d 3e 20 24 6e 61 6d 65 73 70 61 63 65 2c 20 27 72 61 77 5f 6f 75 74 mespace'.=>.$namespace,.'raw_out
dc3c0 70 75 74 27 20 3d 3e 20 74 72 75 65 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 2d put'.=>.true));..return.$output-
dc3e0 3e 66 65 74 63 68 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 >fetch();.}............public.fu
dc400 6e 63 74 69 6f 6e 20 61 73 58 6d 6c 28 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 6e 75 6c 6c 2c 20 nction.asXml($namespace.=.null,.
dc420 24 61 73 44 6f 6d 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 $asDom.=.false).{.@trigger_error
dc440 28 27 54 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 ('The.'.__METHOD__.'.method.is.d
dc460 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 33 20 61 6e 64 20 eprecated.since.version.2.3.and.
dc480 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 will.be.removed.in.3.0.',.E_USER
dc4a0 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 20 3d 20 6e 65 77 _DEPRECATED);..$descriptor.=.new
dc4c0 20 58 6d 6c 44 65 73 63 72 69 70 74 6f 72 28 29 3b 0a 0a 69 66 20 28 24 61 73 44 6f 6d 29 20 7b .XmlDescriptor();..if.($asDom).{
dc4e0 0a 72 65 74 75 72 6e 20 24 64 65 73 63 72 69 70 74 6f 72 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 .return.$descriptor->getApplicat
dc500 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 74 68 69 73 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a ionDocument($this,.$namespace);.
dc520 7d 0a 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 28 }..$output.=.new.BufferedOutput(
dc540 29 3b 0a 24 64 65 73 63 72 69 70 74 6f 72 2d 3e 64 65 73 63 72 69 62 65 28 24 6f 75 74 70 75 74 );.$descriptor->describe($output
dc560 2c 20 24 74 68 69 73 2c 20 61 72 72 61 79 28 27 6e 61 6d 65 73 70 61 63 65 27 20 3d 3e 20 24 6e ,.$this,.array('namespace'.=>.$n
dc580 61 6d 65 73 70 61 63 65 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 2d 3e 66 65 74 amespace));..return.$output->fet
dc5a0 63 68 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 ch();.}........public.function.r
dc5c0 65 6e 64 65 72 45 78 63 65 70 74 69 6f 6e 28 24 65 2c 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 6f enderException($e,.$output).{.$o
dc5e0 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 utput->writeln('',.OutputInterfa
dc600 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 0a 64 6f 20 7b 0a 24 74 69 74 ce::VERBOSITY_QUIET);..do.{.$tit
dc620 6c 65 20 3d 20 73 70 72 69 6e 74 66 28 27 20 20 5b 25 73 5d 20 20 27 2c 20 67 65 74 5f 63 6c 61 le.=.sprintf('..[%s]..',.get_cla
dc640 73 73 28 24 65 29 29 3b 0a 0a 24 6c 65 6e 20 3d 20 24 74 68 69 73 2d 3e 73 74 72 69 6e 67 57 69 ss($e));..$len.=.$this->stringWi
dc660 64 74 68 28 24 74 69 74 6c 65 29 3b 0a 0a 24 77 69 64 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 dth($title);..$width.=.$this->ge
dc680 74 54 65 72 6d 69 6e 61 6c 57 69 64 74 68 28 29 20 3f 20 24 74 68 69 73 2d 3e 67 65 74 54 65 72 tTerminalWidth().?.$this->getTer
dc6a0 6d 69 6e 61 6c 57 69 64 74 68 28 29 20 2d 20 31 20 3a 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a minalWidth().-.1.:.PHP_INT_MAX;.
dc6c0 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 20 26 26 ..if.(defined('HHVM_VERSION').&&
dc6e0 20 24 77 69 64 74 68 20 3e 20 31 20 3c 3c 20 33 31 29 20 7b 0a 24 77 69 64 74 68 20 3d 20 31 20 .$width.>.1.<<.31).{.$width.=.1.
dc700 3c 3c 20 33 31 3b 0a 7d 0a 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 6f 75 74 70 75 74 2d 3e 67 <<.31;.}.$formatter.=.$output->g
dc720 65 74 46 6f 72 6d 61 74 74 65 72 28 29 3b 0a 24 6c 69 6e 65 73 20 3d 20 61 72 72 61 79 28 29 3b etFormatter();.$lines.=.array();
dc740 0a 66 6f 72 65 61 63 68 20 28 70 72 65 67 5f 73 70 6c 69 74 28 27 2f 5c 72 3f 5c 6e 2f 27 2c 20 .foreach.(preg_split('/\r?\n/',.
dc760 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 66 6f $e->getMessage()).as.$line).{.fo
dc780 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 73 70 6c 69 74 53 74 72 69 6e 67 42 79 57 69 64 74 68 reach.($this->splitStringByWidth
dc7a0 28 24 6c 69 6e 65 2c 20 24 77 69 64 74 68 20 2d 20 34 29 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a ($line,.$width.-.4).as.$line).{.
dc7c0 0a 20 24 6c 69 6e 65 4c 65 6e 67 74 68 20 3d 20 24 74 68 69 73 2d 3e 73 74 72 69 6e 67 57 69 64 ..$lineLength.=.$this->stringWid
dc7e0 74 68 28 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 1b 5c 5b 5b 5e 6d 5d 2a 6d 2f 27 2c 20 27 th(preg_replace('/.\[[^m]*m/',.'
dc800 27 2c 20 24 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 28 24 6c 69 6e 65 29 29 29 20 2b ',.$formatter->format($line))).+
dc820 20 34 3b 0a 24 6c 69 6e 65 73 5b 5d 20 3d 20 61 72 72 61 79 28 24 6c 69 6e 65 2c 20 24 6c 69 6e .4;.$lines[].=.array($line,.$lin
dc840 65 4c 65 6e 67 74 68 29 3b 0a 0a 24 6c 65 6e 20 3d 20 6d 61 78 28 24 6c 69 6e 65 4c 65 6e 67 74 eLength);..$len.=.max($lineLengt
dc860 68 2c 20 24 6c 65 6e 29 3b 0a 7d 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 h,.$len);.}.}..$messages.=.array
dc880 28 29 3b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 65 6d 70 74 79 4c 69 6e 65 20 3d 20 24 ();.$messages[].=.$emptyLine.=.$
dc8a0 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 28 73 70 72 69 6e 74 66 28 27 3c 65 72 72 6f formatter->format(sprintf('<erro
dc8c0 72 3e 25 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 r>%s</error>',.str_repeat('.',.$
dc8e0 6c 65 6e 29 29 29 3b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 66 6f 72 6d 61 74 74 65 72 len)));.$messages[].=.$formatter
dc900 2d 3e 66 6f 72 6d 61 74 28 73 70 72 69 6e 74 66 28 27 3c 65 72 72 6f 72 3e 25 73 25 73 3c 2f 65 ->format(sprintf('<error>%s%s</e
dc920 72 72 6f 72 3e 27 2c 20 24 74 69 74 6c 65 2c 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 rror>',.$title,.str_repeat('.',.
dc940 6d 61 78 28 30 2c 20 24 6c 65 6e 20 2d 20 24 74 68 69 73 2d 3e 73 74 72 69 6e 67 57 69 64 74 68 max(0,.$len.-.$this->stringWidth
dc960 28 24 74 69 74 6c 65 29 29 29 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 ($title)))));.foreach.($lines.as
dc980 20 24 6c 69 6e 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 66 6f 72 6d 61 74 74 .$line).{.$messages[].=.$formatt
dc9a0 65 72 2d 3e 66 6f 72 6d 61 74 28 73 70 72 69 6e 74 66 28 27 3c 65 72 72 6f 72 3e 20 20 25 73 20 er->format(sprintf('<error>..%s.
dc9c0 20 25 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 6c 69 6e 65 5b 30 5d 2c 20 73 74 72 5f 72 65 70 65 .%s</error>',.$line[0],.str_repe
dc9e0 61 74 28 27 20 27 2c 20 24 6c 65 6e 20 2d 20 24 6c 69 6e 65 5b 31 5d 29 29 29 3b 0a 7d 0a 24 6d at('.',.$len.-.$line[1])));.}.$m
dca00 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 65 6d 70 74 79 4c 69 6e 65 3b 0a 24 6d 65 73 73 61 67 65 essages[].=.$emptyLine;.$message
dca20 73 5b 5d 20 3d 20 27 27 3b 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 6d 65 73 s[].=.'';..$output->writeln($mes
dca40 73 61 67 65 73 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 52 sages,.OutputInterface::OUTPUT_R
dca60 41 57 20 7c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f AW.|.OutputInterface::VERBOSITY_
dca80 51 55 49 45 54 29 3b 0a 0a 69 66 20 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 QUIET);..if.(OutputInterface::VE
dcaa0 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 20 3c 3d 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 RBOSITY_VERBOSE.<=.$output->getV
dcac0 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 erbosity()).{.$output->writeln('
dcae0 3c 63 6f 6d 6d 65 6e 74 3e 45 78 63 65 70 74 69 6f 6e 20 74 72 61 63 65 3a 3c 2f 63 6f 6d 6d 65 <comment>Exception.trace:</comme
dcb00 6e 74 3e 27 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 nt>',.OutputInterface::VERBOSITY
dcb20 5f 51 55 49 45 54 29 3b 0a 0a 0a 20 24 74 72 61 63 65 20 3d 20 24 65 2d 3e 67 65 74 54 72 61 63 _QUIET);....$trace.=.$e->getTrac
dcb40 65 28 29 3b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 74 72 61 63 65 2c 20 61 72 72 61 79 e();.array_unshift($trace,.array
dcb60 28 0a 27 66 75 6e 63 74 69 6f 6e 27 20 3d 3e 20 27 27 2c 0a 27 66 69 6c 65 27 20 3d 3e 20 24 65 (.'function'.=>.'',.'file'.=>.$e
dcb80 2d 3e 67 65 74 46 69 6c 65 28 29 20 21 3d 3d 20 6e 75 6c 6c 20 3f 20 24 65 2d 3e 67 65 74 46 69 ->getFile().!==.null.?.$e->getFi
dcba0 6c 65 28 29 20 3a 20 27 6e 2f 61 27 2c 0a 27 6c 69 6e 65 27 20 3d 3e 20 24 65 2d 3e 67 65 74 4c le().:.'n/a',.'line'.=>.$e->getL
dcbc0 69 6e 65 28 29 20 21 3d 3d 20 6e 75 6c 6c 20 3f 20 24 65 2d 3e 67 65 74 4c 69 6e 65 28 29 20 3a ine().!==.null.?.$e->getLine().:
dcbe0 20 27 6e 2f 61 27 2c 0a 27 61 72 67 73 27 20 3d 3e 20 61 72 72 61 79 28 29 2c 0a 29 29 3b 0a 0a .'n/a',.'args'.=>.array(),.));..
dcc00 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 63 6f 75 6e 74 20 3d 20 63 6f 75 6e 74 28 24 74 72 61 for.($i.=.0,.$count.=.count($tra
dcc20 63 65 29 3b 20 24 69 20 3c 20 24 63 6f 75 6e 74 3b 20 2b 2b 24 69 29 20 7b 0a 24 63 6c 61 73 73 ce);.$i.<.$count;.++$i).{.$class
dcc40 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b 27 63 6c 61 73 73 27 5d 29 20 3f 20 .=.isset($trace[$i]['class']).?.
dcc60 24 74 72 61 63 65 5b 24 69 5d 5b 27 63 6c 61 73 73 27 5d 20 3a 20 27 27 3b 0a 24 74 79 70 65 20 $trace[$i]['class'].:.'';.$type.
dcc80 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b 27 74 79 70 65 27 5d 29 20 3f 20 24 74 =.isset($trace[$i]['type']).?.$t
dcca0 72 61 63 65 5b 24 69 5d 5b 27 74 79 70 65 27 5d 20 3a 20 27 27 3b 0a 24 66 75 6e 63 74 69 6f 6e race[$i]['type'].:.'';.$function
dccc0 20 3d 20 24 74 72 61 63 65 5b 24 69 5d 5b 27 66 75 6e 63 74 69 6f 6e 27 5d 3b 0a 24 66 69 6c 65 .=.$trace[$i]['function'];.$file
dcce0 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b 27 66 69 6c 65 27 5d 29 20 3f 20 24 .=.isset($trace[$i]['file']).?.$
dcd00 74 72 61 63 65 5b 24 69 5d 5b 27 66 69 6c 65 27 5d 20 3a 20 27 6e 2f 61 27 3b 0a 24 6c 69 6e 65 trace[$i]['file'].:.'n/a';.$line
dcd20 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b 27 6c 69 6e 65 27 5d 29 20 3f 20 24 .=.isset($trace[$i]['line']).?.$
dcd40 74 72 61 63 65 5b 24 69 5d 5b 27 6c 69 6e 65 27 5d 20 3a 20 27 6e 2f 61 27 3b 0a 0a 24 6f 75 74 trace[$i]['line'].:.'n/a';..$out
dcd60 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 20 25 73 25 73 25 73 28 29 20 put->writeln(sprintf('.%s%s%s().
dcd80 61 74 20 3c 69 6e 66 6f 3e 25 73 3a 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 24 63 6c 61 73 73 2c 20 at.<info>%s:%s</info>',.$class,.
dcda0 24 74 79 70 65 2c 20 24 66 75 6e 63 74 69 6f 6e 2c 20 24 66 69 6c 65 2c 20 24 6c 69 6e 65 29 2c $type,.$function,.$file,.$line),
dcdc0 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 .OutputInterface::VERBOSITY_QUIE
dcde0 54 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 2c 20 4f 75 74 70 T);.}..$output->writeln('',.Outp
dce00 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 7d utInterface::VERBOSITY_QUIET);.}
dce20 0a 7d 20 77 68 69 6c 65 20 28 24 65 20 3d 20 24 65 2d 3e 67 65 74 50 72 65 76 69 6f 75 73 28 29 .}.while.($e.=.$e->getPrevious()
dce40 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 );..if.(null.!==.$this->runningC
dce60 6f 6d 6d 61 6e 64 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e ommand).{.$output->writeln(sprin
dce80 74 66 28 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 73 70 72 69 6e 74 66 28 24 74 tf('<info>%s</info>',.sprintf($t
dcea0 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 his->runningCommand->getSynopsis
dcec0 28 29 2c 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 2c 20 4f 75 74 70 75 74 49 6e (),.$this->getName())),.OutputIn
dcee0 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 24 6f 75 74 70 terface::VERBOSITY_QUIET);.$outp
dcf00 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a ut->writeln('',.OutputInterface:
dcf20 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f :VERBOSITY_QUIET);.}.}.......pro
dcf40 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 65 72 6d 69 6e 61 6c 57 69 64 74 68 tected.function.getTerminalWidth
dcf60 28 29 0a 7b 0a 24 64 69 6d 65 6e 73 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 54 65 72 ().{.$dimensions.=.$this->getTer
dcf80 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 69 6d 65 minalDimensions();..return.$dime
dcfa0 6e 73 69 6f 6e 73 5b 30 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e nsions[0];.}.......protected.fun
dcfc0 63 74 69 6f 6e 20 67 65 74 54 65 72 6d 69 6e 61 6c 48 65 69 67 68 74 28 29 0a 7b 0a 24 64 69 6d ction.getTerminalHeight().{.$dim
dcfe0 65 6e 73 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 54 65 72 6d 69 6e 61 6c 44 69 6d 65 ensions.=.$this->getTerminalDime
dd000 6e 73 69 6f 6e 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 69 6d 65 6e 73 69 6f 6e 73 5b 31 5d nsions();..return.$dimensions[1]
dd020 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 65 72 ;.}.......public.function.getTer
dd040 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 74 minalDimensions().{.if.($this->t
dd060 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 erminalDimensions).{.return.$thi
dd080 73 2d 3e 74 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 3b 0a 7d 0a 0a 69 66 20 28 27 5c s->terminalDimensions;.}..if.('\
dd0a0 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 0a 20 \'.===.DIRECTORY_SEPARATOR).{...
dd0c0 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 5c 64 2b 29 78 5c 64 2b 20 5c 28 5c 64 if.(preg_match('/^(\d+)x\d+.\(\d
dd0e0 2b 78 28 5c 64 2b 29 5c 29 24 2f 27 2c 20 74 72 69 6d 28 67 65 74 65 6e 76 28 27 41 4e 53 49 43 +x(\d+)\)$/',.trim(getenv('ANSIC
dd100 4f 4e 27 29 29 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 ON')),.$matches)).{.return.array
dd120 28 28 69 6e 74 29 20 24 6d 61 74 63 68 65 73 5b 31 5d 2c 20 28 69 6e 74 29 20 24 6d 61 74 63 68 ((int).$matches[1],.(int).$match
dd140 65 73 5b 32 5d 29 3b 0a 7d 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 5c es[2]);.}...if.(preg_match('/^(\
dd160 64 2b 29 78 28 5c 64 2b 29 24 2f 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 73 6f 6c 65 4d d+)x(\d+)$/',.$this->getConsoleM
dd180 6f 64 65 28 29 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 ode(),.$matches)).{.return.array
dd1a0 28 28 69 6e 74 29 20 24 6d 61 74 63 68 65 73 5b 31 5d 2c 20 28 69 6e 74 29 20 24 6d 61 74 63 68 ((int).$matches[1],.(int).$match
dd1c0 65 73 5b 32 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 73 74 74 79 53 74 72 69 6e 67 20 3d 20 24 es[2]);.}.}..if.($sttyString.=.$
dd1e0 74 68 69 73 2d 3e 67 65 74 53 74 74 79 43 6f 6c 75 6d 6e 73 28 29 29 20 7b 0a 0a 20 69 66 20 28 this->getSttyColumns()).{...if.(
dd200 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 72 6f 77 73 2e 28 5c 64 2b 29 3b 2e 63 6f 6c 75 6d 6e 73 preg_match('/rows.(\d+);.columns
dd220 2e 28 5c 64 2b 29 3b 2f 69 27 2c 20 24 73 74 74 79 53 74 72 69 6e 67 2c 20 24 6d 61 74 63 68 65 .(\d+);/i',.$sttyString,.$matche
dd240 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 28 69 6e 74 29 20 24 6d 61 74 63 68 65 s)).{.return.array((int).$matche
dd260 73 5b 32 5d 2c 20 28 69 6e 74 29 20 24 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 7d 0a 0a 20 69 66 s[2],.(int).$matches[1]);.}...if
dd280 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 3b 2e 28 5c 64 2b 29 2e 72 6f 77 73 3b 2e 28 5c 64 .(preg_match('/;.(\d+).rows;.(\d
dd2a0 2b 29 2e 63 6f 6c 75 6d 6e 73 2f 69 27 2c 20 24 73 74 74 79 53 74 72 69 6e 67 2c 20 24 6d 61 74 +).columns/i',.$sttyString,.$mat
dd2c0 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 28 69 6e 74 29 20 24 6d 61 74 ches)).{.return.array((int).$mat
dd2e0 63 68 65 73 5b 32 5d 2c 20 28 69 6e 74 29 20 24 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 7d 0a 7d ches[2],.(int).$matches[1]);.}.}
dd300 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 75 6c 6c 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 0a 0a ..return.array(null,.null);.}...
dd320 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 65 72 6d .........public.function.setTerm
dd340 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 28 24 77 69 64 74 68 2c 20 24 68 65 69 67 68 74 29 0a inalDimensions($width,.$height).
dd360 7b 0a 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 20 3d 20 61 72 {.$this->terminalDimensions.=.ar
dd380 72 61 79 28 24 77 69 64 74 68 2c 20 24 68 65 69 67 68 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 ray($width,.$height);..return.$t
dd3a0 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e his;.}........protected.function
dd3c0 20 63 6f 6e 66 69 67 75 72 65 49 4f 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 .configureIO(InputInterface.$inp
dd3e0 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 69 ut,.OutputInterface.$output).{.i
dd400 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 f.(true.===.$input->hasParameter
dd420 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 61 6e 73 69 27 29 29 29 20 7b 0a 24 6f 75 74 70 Option(array('--ansi'))).{.$outp
dd440 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 74 72 75 65 29 3b 0a 7d 20 65 6c 73 65 69 66 ut->setDecorated(true);.}.elseif
dd460 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f .(true.===.$input->hasParameterO
dd480 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 6e 6f 2d 61 6e 73 69 27 29 29 29 20 7b 0a 24 6f 75 ption(array('--no-ansi'))).{.$ou
dd4a0 74 70 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 tput->setDecorated(false);.}..if
dd4c0 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f .(true.===.$input->hasParameterO
dd4e0 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 6e 6f 2d 69 6e 74 65 72 61 63 74 69 6f 6e 27 2c 20 ption(array('--no-interaction',.
dd500 27 2d 6e 27 29 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 '-n'))).{.$input->setInteractive
dd520 28 66 61 6c 73 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 (false);.}.elseif.(function_exis
dd540 74 73 28 27 70 6f 73 69 78 5f 69 73 61 74 74 79 27 29 20 26 26 20 24 74 68 69 73 2d 3e 67 65 74 ts('posix_isatty').&&.$this->get
dd560 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 68 61 73 28 27 71 75 65 73 74 69 6f 6e 27 29 29 20 7b 0a HelperSet()->has('question')).{.
dd580 24 69 6e 70 75 74 53 74 72 65 61 6d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 $inputStream.=.$this->getHelperS
dd5a0 65 74 28 29 2d 3e 67 65 74 28 27 71 75 65 73 74 69 6f 6e 27 29 2d 3e 67 65 74 49 6e 70 75 74 53 et()->get('question')->getInputS
dd5c0 74 72 65 61 6d 28 29 3b 0a 69 66 20 28 21 40 70 6f 73 69 78 5f 69 73 61 74 74 79 28 24 69 6e 70 tream();.if.(!@posix_isatty($inp
dd5e0 75 74 53 74 72 65 61 6d 29 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 67 65 74 65 6e 76 28 27 53 utStream).&&.false.===.getenv('S
dd600 48 45 4c 4c 5f 49 4e 54 45 52 41 43 54 49 56 45 27 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 HELL_INTERACTIVE')).{.$input->se
dd620 74 49 6e 74 65 72 61 63 74 69 76 65 28 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 74 72 tInteractive(false);.}.}..if.(tr
dd640 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f ue.===.$input->hasParameterOptio
dd660 6e 28 61 72 72 61 79 28 27 2d 2d 71 75 69 65 74 27 2c 20 27 2d 71 27 29 29 29 20 7b 0a 24 6f 75 n(array('--quiet',.'-q'))).{.$ou
dd680 74 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 tput->setVerbosity(OutputInterfa
dd6a0 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 ce::VERBOSITY_QUIET);.}.else.{.i
dd6c0 66 20 28 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d f.($input->hasParameterOption('-
dd6e0 76 76 76 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 vvv').||.$input->hasParameterOpt
dd700 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 3d 33 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 67 65 ion('--verbose=3').||.$input->ge
dd720 74 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 27 29 20 3d 3d tParameterOption('--verbose').==
dd740 3d 20 33 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 4f 75 74 =.3).{.$output->setVerbosity(Out
dd760 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 29 3b 0a putInterface::VERBOSITY_DEBUG);.
dd780 7d 20 65 6c 73 65 69 66 20 28 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 }.elseif.($input->hasParameterOp
dd7a0 74 69 6f 6e 28 27 2d 76 76 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 tion('-vv').||.$input->hasParame
dd7c0 74 65 72 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 3d 32 27 29 20 7c 7c 20 24 69 6e 70 terOption('--verbose=2').||.$inp
dd7e0 75 74 2d 3e 67 65 74 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 ut->getParameterOption('--verbos
dd800 65 27 29 20 3d 3d 3d 20 32 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 69 e').===.2).{.$output->setVerbosi
dd820 74 79 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 ty(OutputInterface::VERBOSITY_VE
dd840 52 59 5f 56 45 52 42 4f 53 45 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 6e 70 75 74 2d 3e 68 RY_VERBOSE);.}.elseif.($input->h
dd860 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d 76 27 29 20 7c 7c 20 24 69 6e 70 75 asParameterOption('-v').||.$inpu
dd880 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 t->hasParameterOption('--verbose
dd8a0 3d 31 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 =1').||.$input->hasParameterOpti
dd8c0 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 67 65 74 50 61 on('--verbose').||.$input->getPa
dd8e0 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 27 29 29 20 7b 0a 24 6f rameterOption('--verbose')).{.$o
dd900 75 74 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 4f 75 74 70 75 74 49 6e 74 65 72 66 utput->setVerbosity(OutputInterf
dd920 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 29 3b 0a 7d 0a 7d 0a 7d 0a 0a ace::VERBOSITY_VERBOSE);.}.}.}..
dd940 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e ..............protected.function
dd960 20 64 6f 52 75 6e 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 .doRunCommand(Command.$command,.
dd980 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 InputInterface.$input,.OutputInt
dd9a0 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d erface.$output).{.foreach.($comm
dd9c0 61 6e 64 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 20 61 73 20 24 68 65 6c 70 65 72 29 20 and->getHelperSet().as.$helper).
dd9e0 7b 0a 69 66 20 28 24 68 65 6c 70 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 41 77 {.if.($helper.instanceof.InputAw
dda00 61 72 65 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 68 65 6c 70 65 72 2d 3e 73 65 74 49 6e 70 75 areInterface).{.$helper->setInpu
dda20 74 28 24 69 6e 70 75 74 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 t($input);.}.}..if.(null.===.$th
dda40 69 73 2d 3e 64 69 73 70 61 74 63 68 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e is->dispatcher).{.return.$comman
dda60 64 2d 3e 72 75 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 20 74 72 d->run($input,.$output);.}....tr
dda80 79 20 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 6d 65 72 67 65 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 y.{.$command->mergeApplicationDe
ddaa0 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 24 69 6e 70 75 74 2d 3e 62 69 6e 64 28 24 63 6f 6d 6d 61 6e finition();.$input->bind($comman
ddac0 64 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 45 78 d->getDefinition());.}.catch.(Ex
ddae0 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 24 65 29 20 7b 0a 0a 20 7d 0a 0a 24 65 76 65 ceptionInterface.$e).{...}..$eve
ddb00 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 24 63 6f nt.=.new.ConsoleCommandEvent($co
ddb20 6d 6d 61 6e 64 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 74 68 69 73 2d 3e mmand,.$input,.$output);.$this->
ddb40 64 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 28 43 6f 6e 73 6f 6c 65 45 76 65 6e dispatcher->dispatch(ConsoleEven
ddb60 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 24 65 76 65 6e 74 29 3b 0a 0a 69 66 20 28 24 65 76 65 6e ts::COMMAND,.$event);..if.($even
ddb80 74 2d 3e 63 6f 6d 6d 61 6e 64 53 68 6f 75 6c 64 52 75 6e 28 29 29 20 7b 0a 74 72 79 20 7b 0a 24 t->commandShouldRun()).{.try.{.$
ddba0 65 78 69 74 43 6f 64 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 72 75 6e 28 24 69 6e 70 75 74 2c exitCode.=.$command->run($input,
ddbc0 20 24 6f 75 74 70 75 74 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 .$output);.}.catch.(\Exception.$
ddbe0 65 29 20 7b 0a 24 65 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 45 78 63 65 70 74 69 e).{.$event.=.new.ConsoleExcepti
ddc00 6f 6e 45 76 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 onEvent($command,.$input,.$outpu
ddc20 74 2c 20 24 65 2c 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 29 3b 0a 24 74 68 69 73 2d 3e 64 69 t,.$e,.$e->getCode());.$this->di
ddc40 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 28 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 73 spatcher->dispatch(ConsoleEvents
ddc60 3a 3a 45 58 43 45 50 54 49 4f 4e 2c 20 24 65 76 65 6e 74 29 3b 0a 0a 24 65 20 3d 20 24 65 76 65 ::EXCEPTION,.$event);..$e.=.$eve
ddc80 6e 74 2d 3e 67 65 74 45 78 63 65 70 74 69 6f 6e 28 29 3b 0a 0a 24 65 76 65 6e 74 20 3d 20 6e 65 nt->getException();..$event.=.ne
ddca0 77 20 43 6f 6e 73 6f 6c 65 54 65 72 6d 69 6e 61 74 65 45 76 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 w.ConsoleTerminateEvent($command
ddcc0 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 ,.$input,.$output,.$e->getCode()
ddce0 29 3b 0a 24 74 68 69 73 2d 3e 64 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 28 43 );.$this->dispatcher->dispatch(C
ddd00 6f 6e 73 6f 6c 65 45 76 65 6e 74 73 3a 3a 54 45 52 4d 49 4e 41 54 45 2c 20 24 65 76 65 6e 74 29 onsoleEvents::TERMINATE,.$event)
ddd20 3b 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 78 69 74 43 6f 64 ;..throw.$e;.}.}.else.{.$exitCod
ddd40 65 20 3d 20 43 6f 6e 73 6f 6c 65 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3a 3a 52 45 54 55 52 4e 5f e.=.ConsoleCommandEvent::RETURN_
ddd60 43 4f 44 45 5f 44 49 53 41 42 4c 45 44 3b 0a 7d 0a 0a 24 65 76 65 6e 74 20 3d 20 6e 65 77 20 43 CODE_DISABLED;.}..$event.=.new.C
ddd80 6f 6e 73 6f 6c 65 54 65 72 6d 69 6e 61 74 65 45 76 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 onsoleTerminateEvent($command,.$
ddda0 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 65 78 69 74 43 6f 64 65 29 3b 0a 24 74 68 69 input,.$output,.$exitCode);.$thi
dddc0 73 2d 3e 64 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 28 43 6f 6e 73 6f 6c 65 45 s->dispatcher->dispatch(ConsoleE
ddde0 76 65 6e 74 73 3a 3a 54 45 52 4d 49 4e 41 54 45 2c 20 24 65 76 65 6e 74 29 3b 0a 0a 72 65 74 75 vents::TERMINATE,.$event);..retu
dde00 72 6e 20 24 65 76 65 6e 74 2d 3e 67 65 74 45 78 69 74 43 6f 64 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a rn.$event->getExitCode();.}.....
dde20 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e ....protected.function.getComman
dde40 64 4e 61 6d 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 29 0a 7b 0a 72 dName(InputInterface.$input).{.r
dde60 65 74 75 72 6e 20 24 69 6e 70 75 74 2d 3e 67 65 74 46 69 72 73 74 41 72 67 75 6d 65 6e 74 28 29 eturn.$input->getFirstArgument()
dde80 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 ;.}.......protected.function.get
ddea0 44 65 66 61 75 6c 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 DefaultInputDefinition().{.retur
ddec0 6e 20 6e 65 77 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 n.new.InputDefinition(array(.new
ddee0 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 2c 20 49 6e 70 75 74 41 .InputArgument('command',.InputA
ddf00 72 67 75 6d 65 6e 74 3a 3a 52 45 51 55 49 52 45 44 2c 20 27 54 68 65 20 63 6f 6d 6d 61 6e 64 20 rgument::REQUIRED,.'The.command.
ddf20 74 6f 20 65 78 65 63 75 74 65 27 29 2c 0a 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 to.execute'),..new.InputOption('
ddf40 2d 2d 68 65 6c 70 27 2c 20 27 2d 68 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 --help',.'-h',.InputOption::VALU
ddf60 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 70 6c 61 79 20 74 68 69 73 20 68 65 6c 70 20 6d 65 73 73 61 E_NONE,.'Display.this.help.messa
ddf80 67 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 71 75 69 65 74 27 2c ge'),.new.InputOption('--quiet',
ddfa0 20 27 2d 71 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 .'-q',.InputOption::VALUE_NONE,.
ddfc0 27 44 6f 20 6e 6f 74 20 6f 75 74 70 75 74 20 61 6e 79 20 6d 65 73 73 61 67 65 27 29 2c 0a 6e 65 'Do.not.output.any.message'),.ne
ddfe0 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 27 2c 20 27 2d 76 7c 76 w.InputOption('--verbose',.'-v|v
de000 76 7c 76 76 76 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c v|vvv',.InputOption::VALUE_NONE,
de020 20 27 49 6e 63 72 65 61 73 65 20 74 68 65 20 76 65 72 62 6f 73 69 74 79 20 6f 66 20 6d 65 73 73 .'Increase.the.verbosity.of.mess
de040 61 67 65 73 3a 20 31 20 66 6f 72 20 6e 6f 72 6d 61 6c 20 6f 75 74 70 75 74 2c 20 32 20 66 6f 72 ages:.1.for.normal.output,.2.for
de060 20 6d 6f 72 65 20 76 65 72 62 6f 73 65 20 6f 75 74 70 75 74 20 61 6e 64 20 33 20 66 6f 72 20 64 .more.verbose.output.and.3.for.d
de080 65 62 75 67 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 73 69 ebug'),.new.InputOption('--versi
de0a0 6f 6e 27 2c 20 27 2d 56 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f on',.'-V',.InputOption::VALUE_NO
de0c0 4e 45 2c 20 27 44 69 73 70 6c 61 79 20 74 68 69 73 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 76 65 NE,.'Display.this.application.ve
de0e0 72 73 69 6f 6e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 61 6e 73 69 rsion'),.new.InputOption('--ansi
de100 27 2c 20 27 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 ',.'',.InputOption::VALUE_NONE,.
de120 27 46 6f 72 63 65 20 41 4e 53 49 20 6f 75 74 70 75 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 'Force.ANSI.output'),.new.InputO
de140 70 74 69 6f 6e 28 27 2d 2d 6e 6f 2d 61 6e 73 69 27 2c 20 27 27 2c 20 49 6e 70 75 74 4f 70 74 69 ption('--no-ansi',.'',.InputOpti
de160 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 20 41 4e 53 49 20 6f 75 on::VALUE_NONE,.'Disable.ANSI.ou
de180 74 70 75 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 6e 6f 2d 69 6e tput'),.new.InputOption('--no-in
de1a0 74 65 72 61 63 74 69 6f 6e 27 2c 20 27 2d 6e 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 teraction',.'-n',.InputOption::V
de1c0 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 20 6e 6f 74 20 61 73 6b 20 61 6e 79 20 69 6e 74 65 72 ALUE_NONE,.'Do.not.ask.any.inter
de1e0 61 63 74 69 76 65 20 71 75 65 73 74 69 6f 6e 27 29 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 active.question'),.));.}.......p
de200 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d rotected.function.getDefaultComm
de220 61 6e 64 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 65 77 20 48 65 6c 70 43 6f ands().{.return.array(new.HelpCo
de240 6d 6d 61 6e 64 28 29 2c 20 6e 65 77 20 4c 69 73 74 43 6f 6d 6d 61 6e 64 28 29 29 3b 0a 7d 0a 0a mmand(),.new.ListCommand());.}..
de260 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 .....protected.function.getDefau
de280 6c 74 48 65 6c 70 65 72 53 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 48 65 6c 70 65 ltHelperSet().{.return.new.Helpe
de2a0 72 53 65 74 28 61 72 72 61 79 28 0a 6e 65 77 20 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 28 rSet(array(.new.FormatterHelper(
de2c0 29 2c 0a 6e 65 77 20 44 69 61 6c 6f 67 48 65 6c 70 65 72 28 66 61 6c 73 65 29 2c 0a 6e 65 77 20 ),.new.DialogHelper(false),.new.
de2e0 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 28 66 61 6c 73 65 29 2c 0a 6e 65 77 20 54 61 62 6c 65 ProgressHelper(false),.new.Table
de300 48 65 6c 70 65 72 28 66 61 6c 73 65 29 2c 0a 6e 65 77 20 44 65 62 75 67 46 6f 72 6d 61 74 74 65 Helper(false),.new.DebugFormatte
de320 72 48 65 6c 70 65 72 28 29 2c 0a 6e 65 77 20 50 72 6f 63 65 73 73 48 65 6c 70 65 72 28 29 2c 0a rHelper(),.new.ProcessHelper(),.
de340 6e 65 77 20 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 28 29 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a new.QuestionHelper(),.));.}.....
de360 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 74 79 43 6f 6c 75 6d 6e ..private.function.getSttyColumn
de380 73 28 29 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 72 6f 63 s().{.if.(!function_exists('proc
de3a0 5f 6f 70 65 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 64 65 73 63 72 69 70 74 6f _open')).{.return;.}..$descripto
de3c0 72 73 70 65 63 20 3d 20 61 72 72 61 79 28 31 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c rspec.=.array(1.=>.array('pipe',
de3e0 20 27 77 27 29 2c 20 32 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 29 3b .'w'),.2.=>.array('pipe',.'w'));
de400 0a 24 70 72 6f 63 65 73 73 20 3d 20 70 72 6f 63 5f 6f 70 65 6e 28 27 73 74 74 79 20 2d 61 20 7c .$process.=.proc_open('stty.-a.|
de420 20 67 72 65 70 20 63 6f 6c 75 6d 6e 73 27 2c 20 24 64 65 73 63 72 69 70 74 6f 72 73 70 65 63 2c .grep.columns',.$descriptorspec,
de440 20 24 70 69 70 65 73 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 61 72 72 61 79 28 27 73 75 70 70 .$pipes,.null,.null,.array('supp
de460 72 65 73 73 5f 65 72 72 6f 72 73 27 20 3d 3e 20 74 72 75 65 29 29 3b 0a 69 66 20 28 69 73 5f 72 ress_errors'.=>.true));.if.(is_r
de480 65 73 6f 75 72 63 65 28 24 70 72 6f 63 65 73 73 29 29 20 7b 0a 24 69 6e 66 6f 20 3d 20 73 74 72 esource($process)).{.$info.=.str
de4a0 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 70 69 70 65 73 5b 31 5d 29 3b 0a 66 63 6c eam_get_contents($pipes[1]);.fcl
de4c0 6f 73 65 28 24 70 69 70 65 73 5b 31 5d 29 3b 0a 66 63 6c 6f 73 65 28 24 70 69 70 65 73 5b 32 5d ose($pipes[1]);.fclose($pipes[2]
de4e0 29 3b 0a 70 72 6f 63 5f 63 6c 6f 73 65 28 24 70 72 6f 63 65 73 73 29 3b 0a 0a 72 65 74 75 72 6e );.proc_close($process);..return
de500 20 24 69 6e 66 6f 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 .$info;.}.}.......private.functi
de520 6f 6e 20 67 65 74 43 6f 6e 73 6f 6c 65 4d 6f 64 65 28 29 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 on.getConsoleMode().{.if.(!funct
de540 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 72 6f 63 5f 6f 70 65 6e 27 29 29 20 7b 0a 72 65 74 75 72 ion_exists('proc_open')).{.retur
de560 6e 3b 0a 7d 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 73 70 65 63 20 3d 20 61 72 72 61 79 28 31 20 n;.}..$descriptorspec.=.array(1.
de580 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 2c 20 32 20 3d 3e 20 61 72 72 61 =>.array('pipe',.'w'),.2.=>.arra
de5a0 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 29 3b 0a 24 70 72 6f 63 65 73 73 20 3d 20 70 72 6f 63 y('pipe',.'w'));.$process.=.proc
de5c0 5f 6f 70 65 6e 28 27 6d 6f 64 65 20 43 4f 4e 27 2c 20 24 64 65 73 63 72 69 70 74 6f 72 73 70 65 _open('mode.CON',.$descriptorspe
de5e0 63 2c 20 24 70 69 70 65 73 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 61 72 72 61 79 28 27 73 75 c,.$pipes,.null,.null,.array('su
de600 70 70 72 65 73 73 5f 65 72 72 6f 72 73 27 20 3d 3e 20 74 72 75 65 29 29 3b 0a 69 66 20 28 69 73 ppress_errors'.=>.true));.if.(is
de620 5f 72 65 73 6f 75 72 63 65 28 24 70 72 6f 63 65 73 73 29 29 20 7b 0a 24 69 6e 66 6f 20 3d 20 73 _resource($process)).{.$info.=.s
de640 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 70 69 70 65 73 5b 31 5d 29 3b 0a 66 tream_get_contents($pipes[1]);.f
de660 63 6c 6f 73 65 28 24 70 69 70 65 73 5b 31 5d 29 3b 0a 66 63 6c 6f 73 65 28 24 70 69 70 65 73 5b close($pipes[1]);.fclose($pipes[
de680 32 5d 29 3b 0a 70 72 6f 63 5f 63 6c 6f 73 65 28 24 70 72 6f 63 65 73 73 29 3b 0a 0a 69 66 20 28 2]);.proc_close($process);..if.(
de6a0 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 2d 2d 2d 2d 2d 2d 2d 2d 2b 5c 72 3f 5c 6e 2e 2b 3f 28 5c preg_match('/--------+\r?\n.+?(\
de6c0 64 2b 29 5c 72 3f 5c 6e 2e 2b 3f 28 5c 64 2b 29 5c 72 3f 5c 6e 2f 27 2c 20 24 69 6e 66 6f 2c 20 d+)\r?\n.+?(\d+)\r?\n/',.$info,.
de6e0 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 5b 32 5d 2e $matches)).{.return.$matches[2].
de700 27 78 27 2e 24 6d 61 74 63 68 65 73 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 'x'.$matches[1];.}.}.}.........p
de720 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 53 rivate.function.getAbbreviationS
de740 75 67 67 65 73 74 69 6f 6e 73 28 24 61 62 62 72 65 76 73 29 0a 7b 0a 72 65 74 75 72 6e 20 73 70 uggestions($abbrevs).{.return.sp
de760 72 69 6e 74 66 28 27 25 73 2c 20 25 73 25 73 27 2c 20 24 61 62 62 72 65 76 73 5b 30 5d 2c 20 24 rintf('%s,.%s%s',.$abbrevs[0],.$
de780 61 62 62 72 65 76 73 5b 31 5d 2c 20 63 6f 75 6e 74 28 24 61 62 62 72 65 76 73 29 20 3e 20 32 20 abbrevs[1],.count($abbrevs).>.2.
de7a0 3f 20 73 70 72 69 6e 74 66 28 27 20 61 6e 64 20 25 64 20 6d 6f 72 65 27 2c 20 63 6f 75 6e 74 28 ?.sprintf('.and.%d.more',.count(
de7c0 24 61 62 62 72 65 76 73 29 20 2d 20 32 29 20 3a 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a $abbrevs).-.2).:.'');.}.........
de7e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 4e 61 6d 65 73 70 ...public.function.extractNamesp
de800 61 63 65 28 24 6e 61 6d 65 2c 20 24 6c 69 6d 69 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 61 72 ace($name,.$limit.=.null).{.$par
de820 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 6e 61 6d 65 29 3b 0a 61 72 72 61 79 5f ts.=.explode(':',.$name);.array_
de840 70 6f 70 28 24 70 61 72 74 73 29 3b 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 3a 27 pop($parts);..return.implode(':'
de860 2c 20 6e 75 6c 6c 20 3d 3d 3d 20 24 6c 69 6d 69 74 20 3f 20 24 70 61 72 74 73 20 3a 20 61 72 72 ,.null.===.$limit.?.$parts.:.arr
de880 61 79 5f 73 6c 69 63 65 28 24 70 61 72 74 73 2c 20 30 2c 20 24 6c 69 6d 69 74 29 29 3b 0a 7d 0a ay_slice($parts,.0,.$limit));.}.
de8a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 41 ..........private.function.findA
de8c0 6c 74 65 72 6e 61 74 69 76 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6c 6c 65 63 74 69 6f 6e 29 0a lternatives($name,.$collection).
de8e0 7b 0a 24 74 68 72 65 73 68 6f 6c 64 20 3d 20 31 65 33 3b 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 {.$threshold.=.1e3;.$alternative
de900 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 63 6f 6c 6c 65 63 74 69 6f 6e 50 61 72 74 73 20 3d s.=.array();..$collectionParts.=
de920 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6c 6c 65 63 74 69 6f 6e 20 61 .array();.foreach.($collection.a
de940 73 20 24 69 74 65 6d 29 20 7b 0a 24 63 6f 6c 6c 65 63 74 69 6f 6e 50 61 72 74 73 5b 24 69 74 65 s.$item).{.$collectionParts[$ite
de960 6d 5d 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 69 74 65 6d 29 3b 0a 7d 0a 0a 66 6f 72 m].=.explode(':',.$item);.}..for
de980 65 61 63 68 20 28 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 6e 61 6d 65 29 20 61 73 20 24 69 20 each.(explode(':',.$name).as.$i.
de9a0 3d 3e 20 24 73 75 62 6e 61 6d 65 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6c 6c 65 63 74 =>.$subname).{.foreach.($collect
de9c0 69 6f 6e 50 61 72 74 73 20 61 73 20 24 63 6f 6c 6c 65 63 74 69 6f 6e 4e 61 6d 65 20 3d 3e 20 24 ionParts.as.$collectionName.=>.$
de9e0 70 61 72 74 73 29 20 7b 0a 24 65 78 69 73 74 73 20 3d 20 69 73 73 65 74 28 24 61 6c 74 65 72 6e parts).{.$exists.=.isset($altern
dea00 61 74 69 76 65 73 5b 24 63 6f 6c 6c 65 63 74 69 6f 6e 4e 61 6d 65 5d 29 3b 0a 69 66 20 28 21 69 atives[$collectionName]);.if.(!i
dea20 73 73 65 74 28 24 70 61 72 74 73 5b 24 69 5d 29 20 26 26 20 24 65 78 69 73 74 73 29 20 7b 0a 24 sset($parts[$i]).&&.$exists).{.$
dea40 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 63 6f 6c 6c 65 63 74 69 6f 6e 4e 61 6d 65 5d 20 2b 3d alternatives[$collectionName].+=
dea60 20 24 74 68 72 65 73 68 6f 6c 64 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 .$threshold;.continue;.}.elseif.
dea80 28 21 69 73 73 65 74 28 24 70 61 72 74 73 5b 24 69 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b (!isset($parts[$i])).{.continue;
deaa0 0a 7d 0a 0a 24 6c 65 76 20 3d 20 6c 65 76 65 6e 73 68 74 65 69 6e 28 24 73 75 62 6e 61 6d 65 2c .}..$lev.=.levenshtein($subname,
deac0 20 24 70 61 72 74 73 5b 24 69 5d 29 3b 0a 69 66 20 28 24 6c 65 76 20 3c 3d 20 73 74 72 6c 65 6e .$parts[$i]);.if.($lev.<=.strlen
deae0 28 24 73 75 62 6e 61 6d 65 29 20 2f 20 33 20 7c 7c 20 27 27 20 21 3d 3d 20 24 73 75 62 6e 61 6d ($subname)./.3.||.''.!==.$subnam
deb00 65 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 70 61 72 74 73 5b 24 69 5d e.&&.false.!==.strpos($parts[$i]
deb20 2c 20 24 73 75 62 6e 61 6d 65 29 29 20 7b 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 63 6f ,.$subname)).{.$alternatives[$co
deb40 6c 6c 65 63 74 69 6f 6e 4e 61 6d 65 5d 20 3d 20 24 65 78 69 73 74 73 20 3f 20 24 61 6c 74 65 72 llectionName].=.$exists.?.$alter
deb60 6e 61 74 69 76 65 73 5b 24 63 6f 6c 6c 65 63 74 69 6f 6e 4e 61 6d 65 5d 20 2b 20 24 6c 65 76 20 natives[$collectionName].+.$lev.
deb80 3a 20 24 6c 65 76 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 65 78 69 73 74 73 29 20 7b 0a 24 61 6c :.$lev;.}.elseif.($exists).{.$al
deba0 74 65 72 6e 61 74 69 76 65 73 5b 24 63 6f 6c 6c 65 63 74 69 6f 6e 4e 61 6d 65 5d 20 2b 3d 20 24 ternatives[$collectionName].+=.$
debc0 74 68 72 65 73 68 6f 6c 64 3b 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6c 6c threshold;.}.}.}..foreach.($coll
debe0 65 63 74 69 6f 6e 20 61 73 20 24 69 74 65 6d 29 20 7b 0a 24 6c 65 76 20 3d 20 6c 65 76 65 6e 73 ection.as.$item).{.$lev.=.levens
dec00 68 74 65 69 6e 28 24 6e 61 6d 65 2c 20 24 69 74 65 6d 29 3b 0a 69 66 20 28 24 6c 65 76 20 3c 3d htein($name,.$item);.if.($lev.<=
dec20 20 73 74 72 6c 65 6e 28 24 6e 61 6d 65 29 20 2f 20 33 20 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 .strlen($name)./.3.||.false.!==.
dec40 73 74 72 70 6f 73 28 24 69 74 65 6d 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 24 61 6c 74 65 72 6e 61 strpos($item,.$name)).{.$alterna
dec60 74 69 76 65 73 5b 24 69 74 65 6d 5d 20 3d 20 69 73 73 65 74 28 24 61 6c 74 65 72 6e 61 74 69 76 tives[$item].=.isset($alternativ
dec80 65 73 5b 24 69 74 65 6d 5d 29 20 3f 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 69 74 65 6d es[$item]).?.$alternatives[$item
deca0 5d 20 2d 20 24 6c 65 76 20 3a 20 24 6c 65 76 3b 0a 7d 0a 7d 0a 0a 24 61 6c 74 65 72 6e 61 74 69 ].-.$lev.:.$lev;.}.}..$alternati
decc0 76 65 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 ves.=.array_filter($alternatives
dece0 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6c 65 76 29 20 75 73 65 20 28 24 74 68 72 65 73 68 6f 6c ,.function.($lev).use.($threshol
ded00 64 29 20 7b 20 72 65 74 75 72 6e 20 24 6c 65 76 20 3c 20 32 20 2a 20 24 74 68 72 65 73 68 6f 6c d).{.return.$lev.<.2.*.$threshol
ded20 64 3b 20 7d 29 3b 0a 61 73 6f 72 74 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 3b 0a 0a 72 65 d;.});.asort($alternatives);..re
ded40 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 3b 0a turn.array_keys($alternatives);.
ded60 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 66 61 75 }.......public.function.setDefau
ded80 6c 74 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d ltCommand($commandName).{.$this-
deda0 3e 64 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 3b 0a >defaultCommand.=.$commandName;.
dedc0 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 74 72 69 6e 67 57 69 64 74 68 28 }..private.function.stringWidth(
dede0 24 73 74 72 69 6e 67 29 0a 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 $string).{.if.(false.===.$encodi
dee00 6e 67 20 3d 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 74 72 69 6e 67 2c ng.=.mb_detect_encoding($string,
dee20 20 6e 75 6c 6c 2c 20 74 72 75 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 6c 65 6e 28 24 73 .null,.true)).{.return.strlen($s
dee40 74 72 69 6e 67 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6d 62 5f 73 74 72 77 69 64 74 68 28 24 73 tring);.}..return.mb_strwidth($s
dee60 74 72 69 6e 67 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 tring,.$encoding);.}..private.fu
dee80 6e 63 74 69 6f 6e 20 73 70 6c 69 74 53 74 72 69 6e 67 42 79 57 69 64 74 68 28 24 73 74 72 69 6e nction.splitStringByWidth($strin
deea0 67 2c 20 24 77 69 64 74 68 29 0a 7b 0a 0a 20 0a 20 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d g,.$width).{.......if.(false.===
deec0 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 .$encoding.=.mb_detect_encoding(
deee0 24 73 74 72 69 6e 67 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 $string,.null,.true)).{.return.s
def00 74 72 5f 73 70 6c 69 74 28 24 73 74 72 69 6e 67 2c 20 24 77 69 64 74 68 29 3b 0a 7d 0a 0a 24 75 tr_split($string,.$width);.}..$u
def20 74 66 38 53 74 72 69 6e 67 20 3d 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e 67 28 tf8String.=.mb_convert_encoding(
def40 24 73 74 72 69 6e 67 2c 20 27 75 74 66 38 27 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 6c 69 $string,.'utf8',.$encoding);.$li
def60 6e 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6c 69 6e 65 20 3d 20 27 27 3b 0a 66 6f 72 65 61 nes.=.array();.$line.=.'';.forea
def80 63 68 20 28 70 72 65 67 5f 73 70 6c 69 74 28 27 2f 2f 75 27 2c 20 24 75 74 66 38 53 74 72 69 6e ch.(preg_split('//u',.$utf8Strin
defa0 67 29 20 61 73 20 24 63 68 61 72 29 20 7b 0a 0a 20 69 66 20 28 6d 62 5f 73 74 72 77 69 64 74 68 g).as.$char).{...if.(mb_strwidth
defc0 28 24 6c 69 6e 65 2e 24 63 68 61 72 2c 20 27 75 74 66 38 27 29 20 3c 3d 20 24 77 69 64 74 68 29 ($line.$char,.'utf8').<=.$width)
defe0 20 7b 0a 24 6c 69 6e 65 20 2e 3d 20 24 63 68 61 72 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a .{.$line..=.$char;.continue;.}..
df000 20 24 6c 69 6e 65 73 5b 5d 20 3d 20 73 74 72 5f 70 61 64 28 24 6c 69 6e 65 2c 20 24 77 69 64 74 .$lines[].=.str_pad($line,.$widt
df020 68 29 3b 0a 24 6c 69 6e 65 20 3d 20 24 63 68 61 72 3b 0a 7d 0a 69 66 20 28 27 27 20 21 3d 3d 20 h);.$line.=.$char;.}.if.(''.!==.
df040 24 6c 69 6e 65 29 20 7b 0a 24 6c 69 6e 65 73 5b 5d 20 3d 20 63 6f 75 6e 74 28 24 6c 69 6e 65 73 $line).{.$lines[].=.count($lines
df060 29 20 3f 20 73 74 72 5f 70 61 64 28 24 6c 69 6e 65 2c 20 24 77 69 64 74 68 29 20 3a 20 24 6c 69 ).?.str_pad($line,.$width).:.$li
df080 6e 65 3b 0a 7d 0a 0a 6d 62 5f 63 6f 6e 76 65 72 74 5f 76 61 72 69 61 62 6c 65 73 28 24 65 6e 63 ne;.}..mb_convert_variables($enc
df0a0 6f 64 69 6e 67 2c 20 27 75 74 66 38 27 2c 20 24 6c 69 6e 65 73 29 3b 0a 0a 72 65 74 75 72 6e 20 oding,.'utf8',.$lines);..return.
df0c0 24 6c 69 6e 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 $lines;.}.........private.functi
df0e0 6f 6e 20 65 78 74 72 61 63 74 41 6c 6c 4e 61 6d 65 73 70 61 63 65 73 28 24 6e 61 6d 65 29 0a 7b on.extractAllNamespaces($name).{
df100 0a 0a 20 24 70 61 72 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 6e 61 6d 65 2c 20 ...$parts.=.explode(':',.$name,.
df120 2d 31 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 -1);.$namespaces.=.array();..for
df140 65 61 63 68 20 28 24 70 61 72 74 73 20 61 73 20 24 70 61 72 74 29 20 7b 0a 69 66 20 28 63 6f 75 each.($parts.as.$part).{.if.(cou
df160 6e 74 28 24 6e 61 6d 65 73 70 61 63 65 73 29 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 5b 5d nt($namespaces)).{.$namespaces[]
df180 20 3d 20 65 6e 64 28 24 6e 61 6d 65 73 70 61 63 65 73 29 2e 27 3a 27 2e 24 70 61 72 74 3b 0a 7d .=.end($namespaces).':'.$part;.}
df1a0 20 65 6c 73 65 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 5b 5d 20 3d 20 24 70 61 72 74 3b 0a 7d .else.{.$namespaces[].=.$part;.}
df1c0 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6e 61 6d 65 73 70 61 63 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 .}..return.$namespaces;.}.}.<?ph
df1e0 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f p...........namespace.Symfony\Co
df200 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 mponent\Console\Command;..use.Sy
df220 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 mfony\Component\Console\Descript
df240 6f 72 5c 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 or\TextDescriptor;.use.Symfony\C
df260 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 5c 58 6d 6c 44 omponent\Console\Descriptor\XmlD
df280 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 escriptor;.use.Symfony\Component
df2a0 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 \Console\Exception\ExceptionInte
df2c0 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e rface;.use.Symfony\Component\Con
df2e0 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 3b 0a 75 73 65 20 sole\Input\InputDefinition;.use.
df300 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c Symfony\Component\Console\Input\
df320 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 InputOption;.use.Symfony\Compone
df340 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a nt\Console\Input\InputArgument;.
df360 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e use.Symfony\Component\Console\In
df380 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c put\InputInterface;.use.Symfony\
df3a0 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 42 75 66 66 65 72 65 Component\Console\Output\Buffere
df3c0 64 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 dOutput;.use.Symfony\Component\C
df3e0 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 onsole\Output\OutputInterface;.u
df400 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 se.Symfony\Component\Console\App
df420 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c lication;.use.Symfony\Component\
df440 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 48 65 6c 70 65 72 53 65 74 3b 0a 75 73 65 20 53 79 Console\Helper\HelperSet;.use.Sy
df460 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f mfony\Component\Console\Exceptio
df480 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 n\InvalidArgumentException;.use.
df4a0 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 Symfony\Component\Console\Except
df4c0 69 6f 6e 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 ion\LogicException;.......class.
df4e0 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a Command.{.private.$application;.
df500 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 54 private.$name;.private.$processT
df520 69 74 6c 65 3b 0a 70 72 69 76 61 74 65 20 24 61 6c 69 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 itle;.private.$aliases.=.array()
df540 3b 0a 70 72 69 76 61 74 65 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 ;.private.$definition;.private.$
df560 68 65 6c 70 3b 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 70 72 69 76 help;.private.$description;.priv
df580 61 74 65 20 24 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 6f 6e 45 72 72 6f 72 73 20 3d 20 66 61 ate.$ignoreValidationErrors.=.fa
df5a0 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 lse;.private.$applicationDefinit
df5c0 69 6f 6e 4d 65 72 67 65 64 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 61 70 70 6c ionMerged.=.false;.private.$appl
df5e0 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 57 69 74 68 41 72 67 73 20 icationDefinitionMergedWithArgs.
df600 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 =.false;.private.$code;.private.
df620 24 73 79 6e 6f 70 73 69 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 75 73 $synopsis.=.array();.private.$us
df640 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 68 65 6c 70 65 72 53 ages.=.array();.private.$helperS
df660 65 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f et;.........public.function.__co
df680 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 nstruct($name.=.null).{.$this->d
df6a0 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 65 77 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 efinition.=.new.InputDefinition(
df6c0 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d );..if.(null.!==.$name).{.$this-
df6e0 3e 73 65 74 4e 61 6d 65 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 >setName($name);.}..$this->confi
df700 67 75 72 65 28 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6e 61 6d 65 29 20 7b 0a 74 68 72 gure();..if.(!$this->name).{.thr
df720 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 ow.new.LogicException(sprintf('T
df740 68 65 20 63 6f 6d 6d 61 6e 64 20 64 65 66 69 6e 65 64 20 69 6e 20 22 25 73 22 20 63 61 6e 6e 6f he.command.defined.in."%s".canno
df760 74 20 68 61 76 65 20 61 6e 20 65 6d 70 74 79 20 6e 61 6d 65 2e 27 2c 20 67 65 74 5f 63 6c 61 73 t.have.an.empty.name.',.get_clas
df780 73 28 24 74 68 69 73 29 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e s($this)));.}.}.......public.fun
df7a0 63 74 69 6f 6e 20 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 6f 6e 45 72 72 6f 72 73 28 29 0a 7b ction.ignoreValidationErrors().{
df7c0 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 6f 6e 45 72 72 6f 72 73 20 3d .$this->ignoreValidationErrors.=
df7e0 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 .true;.}.......public.function.s
df800 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 41 70 70 6c 69 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 etApplication(Application.$appli
df820 63 61 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 cation.=.null).{.$this->applicat
df840 69 6f 6e 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 69 66 20 28 24 61 70 70 6c 69 63 61 ion.=.$application;.if.($applica
df860 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 48 65 6c 70 65 72 53 65 74 28 24 61 70 70 tion).{.$this->setHelperSet($app
df880 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 29 3b 0a 7d 20 65 6c 73 lication->getHelperSet());.}.els
df8a0 65 20 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d e.{.$this->helperSet.=.null;.}.}
df8c0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 6c 70 65 72 .......public.function.setHelper
df8e0 53 65 74 28 48 65 6c 70 65 72 53 65 74 20 24 68 65 6c 70 65 72 53 65 74 29 0a 7b 0a 24 74 68 69 Set(HelperSet.$helperSet).{.$thi
df900 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a s->helperSet.=.$helperSet;.}....
df920 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 65 72 53 65 74 28 ...public.function.getHelperSet(
df940 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a ).{.return.$this->helperSet;.}..
df960 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 70 70 6c 69 63 61 74 .....public.function.getApplicat
df980 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f ion().{.return.$this->applicatio
df9a0 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 n;.}..........public.function.is
df9c0 45 6e 61 62 6c 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 70 Enabled().{.return.true;.}.....p
df9e0 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a rotected.function.configure().{.
dfa00 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 }...................protected.fu
dfa20 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 nction.execute(InputInterface.$i
dfa40 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b nput,.OutputInterface.$output).{
dfa60 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d .throw.new.LogicException('You.m
dfa80 75 73 74 20 6f 76 65 72 72 69 64 65 20 74 68 65 20 65 78 65 63 75 74 65 28 29 20 6d 65 74 68 6f ust.override.the.execute().metho
dfaa0 64 20 69 6e 20 74 68 65 20 63 6f 6e 63 72 65 74 65 20 63 6f 6d 6d 61 6e 64 20 63 6c 61 73 73 2e d.in.the.concrete.command.class.
dfac0 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 ');.}............protected.funct
dfae0 69 6f 6e 20 69 6e 74 65 72 61 63 74 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 ion.interact(InputInterface.$inp
dfb00 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 7d ut,.OutputInterface.$output).{.}
dfb20 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e ...........protected.function.in
dfb40 69 74 69 61 6c 69 7a 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 itialize(InputInterface.$input,.
dfb60 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 7d 0a 0a 0a 0a OutputInterface.$output).{.}....
dfb80 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 ...............public.function.r
dfba0 75 6e 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 un(InputInterface.$input,.Output
dfbc0 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 0a 20 24 74 68 69 73 2d 3e 67 65 Interface.$output).{...$this->ge
dfbe0 74 53 79 6e 6f 70 73 69 73 28 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 67 65 74 53 79 6e 6f 70 tSynopsis(true);.$this->getSynop
dfc00 73 69 73 28 66 61 6c 73 65 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 6d 65 72 67 65 41 70 70 6c 69 sis(false);....$this->mergeAppli
dfc20 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 0a 0a 20 74 72 79 20 7b 0a 24 69 6e cationDefinition();....try.{.$in
dfc40 70 75 74 2d 3e 62 69 6e 64 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 20 put->bind($this->definition);.}.
dfc60 63 61 74 63 68 20 28 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 24 65 29 20 7b 0a catch.(ExceptionInterface.$e).{.
dfc80 69 66 20 28 21 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 6f 6e 45 72 72 6f if.(!$this->ignoreValidationErro
dfca0 72 73 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 rs).{.throw.$e;.}.}..$this->init
dfcc0 69 61 6c 69 7a 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 0a 69 66 20 28 6e 75 ialize($input,.$output);..if.(nu
dfce0 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 54 69 74 6c 65 29 20 7b 0a 69 66 ll.!==.$this->processTitle).{.if
dfd00 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 63 6c 69 5f 73 65 74 5f 70 72 6f 63 65 .(function_exists('cli_set_proce
dfd20 73 73 5f 74 69 74 6c 65 27 29 29 20 7b 0a 63 6c 69 5f 73 65 74 5f 70 72 6f 63 65 73 73 5f 74 69 ss_title')).{.cli_set_process_ti
dfd40 74 6c 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 54 69 74 6c 65 29 3b 0a 7d 20 65 6c 73 65 tle($this->processTitle);.}.else
dfd60 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 73 65 74 70 72 6f 63 74 69 74 6c if.(function_exists('setproctitl
dfd80 65 27 29 29 20 7b 0a 73 65 74 70 72 6f 63 74 69 74 6c 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 e')).{.setproctitle($this->proce
dfda0 73 73 54 69 74 6c 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 4f 75 74 70 75 74 49 6e 74 65 72 66 ssTitle);.}.elseif.(OutputInterf
dfdc0 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 20 3d 3d 3d 20 ace::VERBOSITY_VERY_VERBOSE.===.
dfde0 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 24 6f 75 74 70 $output->getVerbosity()).{.$outp
dfe00 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 63 6f 6d 6d 65 6e 74 3e 49 6e 73 74 61 6c 6c 20 74 68 ut->writeln('<comment>Install.th
dfe20 65 20 70 72 6f 63 74 69 74 6c 65 20 50 45 43 4c 20 74 6f 20 62 65 20 61 62 6c 65 20 74 6f 20 63 e.proctitle.PECL.to.be.able.to.c
dfe40 68 61 6e 67 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 74 69 74 6c 65 2e 3c 2f 63 6f 6d 6d 65 6e hange.the.process.title.</commen
dfe60 74 3e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 t>');.}.}..if.($input->isInterac
dfe80 74 69 76 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 74 65 72 61 63 74 28 24 69 6e 70 75 74 tive()).{.$this->interact($input
dfea0 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 69 66 20 28 24 69 6e 70 75 74 2d ,.$output);.}........if.($input-
dfec0 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 29 20 26 26 20 6e 75 6c 6c 20 >hasArgument('command').&&.null.
dfee0 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 ===.$input->getArgument('command
dff00 27 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 ')).{.$input->setArgument('comma
dff20 6e 64 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 7d 0a 0a 24 69 6e 70 75 nd',.$this->getName());.}..$inpu
dff40 74 2d 3e 76 61 6c 69 64 61 74 65 28 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 64 65 29 t->validate();..if.($this->code)
dff60 20 7b 0a 24 73 74 61 74 75 73 43 6f 64 65 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 .{.$statusCode.=.call_user_func(
dff80 24 74 68 69 73 2d 3e 63 6f 64 65 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d $this->code,.$input,.$output);.}
dffa0 20 65 6c 73 65 20 7b 0a 24 73 74 61 74 75 73 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 .else.{.$statusCode.=.$this->exe
dffc0 63 75 74 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e cute($input,.$output);.}..return
dffe0 20 69 73 5f 6e 75 6d 65 72 69 63 28 24 73 74 61 74 75 73 43 6f 64 65 29 20 3f 20 28 69 6e 74 29 .is_numeric($statusCode).?.(int)
e0000 20 24 73 74 61 74 75 73 43 6f 64 65 20 3a 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .$statusCode.:.0;.}.............
e0020 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 64 65 28 24 63 6f 64 65 ...public.function.setCode($code
e0040 29 0a 7b 0a 69 66 20 28 21 69 73 5f 63 61 6c 6c 61 62 6c 65 28 24 63 6f 64 65 29 29 20 7b 0a 74 ).{.if.(!is_callable($code)).{.t
e0060 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f hrow.new.InvalidArgumentExceptio
e0080 6e 28 27 49 6e 76 61 6c 69 64 20 63 61 6c 6c 61 62 6c 65 20 70 72 6f 76 69 64 65 64 20 74 6f 20 n('Invalid.callable.provided.to.
e00a0 43 6f 6d 6d 61 6e 64 3a 3a 73 65 74 43 6f 64 65 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 50 48 50 5f Command::setCode.');.}..if.(PHP_
e00c0 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 35 30 34 30 30 20 26 26 20 24 63 6f 64 65 20 69 6e 73 VERSION_ID.>=.50400.&&.$code.ins
e00e0 74 61 6e 63 65 6f 66 20 5c 43 6c 6f 73 75 72 65 29 20 7b 0a 24 72 20 3d 20 6e 65 77 20 5c 52 65 tanceof.\Closure).{.$r.=.new.\Re
e0100 66 6c 65 63 74 69 6f 6e 46 75 6e 63 74 69 6f 6e 28 24 63 6f 64 65 29 3b 0a 69 66 20 28 6e 75 6c flectionFunction($code);.if.(nul
e0120 6c 20 3d 3d 3d 20 24 72 2d 3e 67 65 74 43 6c 6f 73 75 72 65 54 68 69 73 28 29 29 20 7b 0a 24 63 l.===.$r->getClosureThis()).{.$c
e0140 6f 64 65 20 3d 20 5c 43 6c 6f 73 75 72 65 3a 3a 62 69 6e 64 28 24 63 6f 64 65 2c 20 24 74 68 69 ode.=.\Closure::bind($code,.$thi
e0160 73 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 64 65 20 3d 20 24 63 6f 64 65 3b 0a 0a 72 s);.}.}..$this->code.=.$code;..r
e0180 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 eturn.$this;.}.........public.fu
e01a0 6e 63 74 69 6f 6e 20 6d 65 72 67 65 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f nction.mergeApplicationDefinitio
e01c0 6e 28 24 6d 65 72 67 65 41 72 67 73 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 n($mergeArgs.=.true).{.if.(null.
e01e0 3d 3d 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 20 7c 7c 20 28 74 72 75 65 20 ===.$this->application.||.(true.
e0200 3d 3d 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e ===.$this->applicationDefinition
e0220 4d 65 72 67 65 64 20 26 26 20 28 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 Merged.&&.($this->applicationDef
e0240 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 57 69 74 68 41 72 67 73 20 7c 7c 20 21 24 6d 65 72 67 65 initionMergedWithArgs.||.!$merge
e0260 41 72 67 73 29 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 6d 65 72 67 65 41 Args))).{.return;.}..if.($mergeA
e0280 72 67 73 29 20 7b 0a 24 63 75 72 72 65 6e 74 41 72 67 75 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 rgs).{.$currentArguments.=.$this
e02a0 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 3b 0a 24 74 ->definition->getArguments();.$t
e02c0 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 73 65 74 41 72 67 75 6d 65 6e 74 73 28 24 74 his->definition->setArguments($t
e02e0 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 his->application->getDefinition(
e0300 29 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 29 3b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e )->getArguments());.$this->defin
e0320 69 74 69 6f 6e 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 73 28 24 63 75 72 72 65 6e 74 41 72 67 75 ition->addArguments($currentArgu
e0340 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 ments);.}..$this->definition->ad
e0360 64 4f 70 74 69 6f 6e 73 28 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 dOptions($this->application->get
e0380 44 65 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 29 3b 0a 0a 24 74 Definition()->getOptions());..$t
e03a0 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 his->applicationDefinitionMerged
e03c0 20 3d 20 74 72 75 65 3b 0a 69 66 20 28 24 6d 65 72 67 65 41 72 67 73 29 20 7b 0a 24 74 68 69 73 .=.true;.if.($mergeArgs).{.$this
e03e0 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 57 69 74 ->applicationDefinitionMergedWit
e0400 68 41 72 67 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 hArgs.=.true;.}.}.........public
e0420 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 64 65 66 69 6e 69 74 .function.setDefinition($definit
e0440 69 6f 6e 29 0a 7b 0a 69 66 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 6f ion).{.if.($definition.instanceo
e0460 66 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 f.InputDefinition).{.$this->defi
e0480 6e 69 74 69 6f 6e 20 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 nition.=.$definition;.}.else.{.$
e04a0 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 this->definition->setDefinition(
e04c0 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 $definition);.}..$this->applicat
e04e0 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 72 65 ionDefinitionMerged.=.false;..re
e0500 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 turn.$this;.}.......public.funct
e0520 69 6f 6e 20 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 ion.getDefinition().{.return.$th
e0540 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 is->definition;.}............pub
e0560 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 74 69 76 65 44 65 66 69 6e 69 74 69 6f 6e lic.function.getNativeDefinition
e0580 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e ().{.return.$this->getDefinition
e05a0 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ();.}............public.function
e05c0 20 61 64 64 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 24 6d 6f 64 65 20 3d 20 6e 75 6c 6c .addArgument($name,.$mode.=.null
e05e0 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 27 27 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 ,.$description.=.'',.$default.=.
e0600 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 41 72 null).{.$this->definition->addAr
e0620 67 75 6d 65 6e 74 28 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 gument(new.InputArgument($name,.
e0640 24 6d 6f 64 65 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 29 3b $mode,.$description,.$default));
e0660 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ..return.$this;.}.............pu
e0680 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 blic.function.addOption($name,.$
e06a0 73 68 6f 72 74 63 75 74 20 3d 20 6e 75 6c 6c 2c 20 24 6d 6f 64 65 20 3d 20 6e 75 6c 6c 2c 20 24 shortcut.=.null,.$mode.=.null,.$
e06c0 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 27 27 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c description.=.'',.$default.=.nul
e06e0 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 4f 70 74 69 6f l).{.$this->definition->addOptio
e0700 6e 28 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 73 68 6f 72 74 63 n(new.InputOption($name,.$shortc
e0720 75 74 2c 20 24 6d 6f 64 65 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c ut,.$mode,.$description,.$defaul
e0740 74 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a t));..return.$this;.}...........
e0760 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e 61 6d 65 28 24 6e 61 .....public.function.setName($na
e0780 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 4e 61 6d 65 28 24 6e 61 6d 65 29 me).{.$this->validateName($name)
e07a0 3b 0a 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 0a 72 65 74 75 72 6e 20 ;..$this->name.=.$name;..return.
e07c0 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e $this;.}..............public.fun
e07e0 63 74 69 6f 6e 20 73 65 74 50 72 6f 63 65 73 73 54 69 74 6c 65 28 24 74 69 74 6c 65 29 0a 7b 0a ction.setProcessTitle($title).{.
e0800 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 54 69 74 6c 65 20 3d 20 24 74 69 74 6c 65 3b 0a 0a 72 $this->processTitle.=.$title;..r
e0820 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 eturn.$this;.}.......public.func
e0840 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e tion.getName().{.return.$this->n
e0860 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 ame;.}.........public.function.s
e0880 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 7b 0a 24 74 etDescription($description).{.$t
e08a0 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b his->description.=.$description;
e08c0 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ..return.$this;.}.......public.f
e08e0 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 unction.getDescription().{.retur
e0900 6e 20 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a n.$this->description;.}.........
e0920 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 6c 70 28 24 68 65 6c 70 29 0a 7b public.function.setHelp($help).{
e0940 0a 24 74 68 69 73 2d 3e 68 65 6c 70 20 3d 20 24 68 65 6c 70 3b 0a 0a 72 65 74 75 72 6e 20 24 74 .$this->help.=.$help;..return.$t
e0960 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 his;.}.......public.function.get
e0980 48 65 6c 70 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 3b 0a 7d 0a 0a Help().{.return.$this->help;.}..
e09a0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 63 65 73 73 ......public.function.getProcess
e09c0 65 64 48 65 6c 70 28 29 0a 7b 0a 24 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a edHelp().{.$name.=.$this->name;.
e09e0 0a 24 70 6c 61 63 65 68 6f 6c 64 65 72 73 20 3d 20 61 72 72 61 79 28 0a 27 25 63 6f 6d 6d 61 6e .$placeholders.=.array(.'%comman
e0a00 64 2e 6e 61 6d 65 25 27 2c 0a 27 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 27 2c d.name%',.'%command.full_name%',
e0a20 0a 29 3b 0a 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 0a 24 6e 61 6d 65 .);.$replacements.=.array(.$name
e0a40 2c 0a 24 5f 53 45 52 56 45 52 5b 27 50 48 50 5f 53 45 4c 46 27 5d 2e 27 20 27 2e 24 6e 61 6d 65 ,.$_SERVER['PHP_SELF'].'.'.$name
e0a60 2c 0a 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 24 70 6c 61 63 65 68 ,.);..return.str_replace($placeh
e0a80 6f 6c 64 65 72 73 2c 20 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 2c 20 24 74 68 69 73 2d 3e 67 65 olders,.$replacements,.$this->ge
e0aa0 74 48 65 6c 70 28 29 20 3f 3a 20 24 74 68 69 73 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e tHelp().?:.$this->getDescription
e0ac0 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ());.}...........public.function
e0ae0 20 73 65 74 41 6c 69 61 73 65 73 28 24 61 6c 69 61 73 65 73 29 0a 7b 0a 69 66 20 28 21 69 73 5f .setAliases($aliases).{.if.(!is_
e0b00 61 72 72 61 79 28 24 61 6c 69 61 73 65 73 29 20 26 26 20 21 24 61 6c 69 61 73 65 73 20 69 6e 73 array($aliases).&&.!$aliases.ins
e0b20 74 61 6e 63 65 6f 66 20 5c 54 72 61 76 65 72 73 61 62 6c 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 tanceof.\Traversable).{.throw.ne
e0b40 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 24 61 6c 69 w.InvalidArgumentException('$ali
e0b60 61 73 65 73 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 72 61 79 20 6f 72 20 61 6e 20 69 6e 73 74 ases.must.be.an.array.or.an.inst
e0b80 61 6e 63 65 20 6f 66 20 5c 54 72 61 76 65 72 73 61 62 6c 65 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 ance.of.\Traversable');.}..forea
e0ba0 63 68 20 28 24 61 6c 69 61 73 65 73 20 61 73 20 24 61 6c 69 61 73 29 20 7b 0a 24 74 68 69 73 2d ch.($aliases.as.$alias).{.$this-
e0bc0 3e 76 61 6c 69 64 61 74 65 4e 61 6d 65 28 24 61 6c 69 61 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d >validateName($alias);.}..$this-
e0be0 3e 61 6c 69 61 73 65 73 20 3d 20 24 61 6c 69 61 73 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 >aliases.=.$aliases;..return.$th
e0c00 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 is;.}.......public.function.getA
e0c20 6c 69 61 73 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 liases().{.return.$this->aliases
e0c40 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 ;.}.........public.function.getS
e0c60 79 6e 6f 70 73 69 73 28 24 73 68 6f 72 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6b 65 79 20 3d ynopsis($short.=.false).{.$key.=
e0c80 20 24 73 68 6f 72 74 20 3f 20 27 73 68 6f 72 74 27 20 3a 20 27 6c 6f 6e 67 27 3b 0a 0a 69 66 20 .$short.?.'short'.:.'long';..if.
e0ca0 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 79 6e 6f 70 73 69 73 5b 24 6b 65 79 5d 29 29 20 (!isset($this->synopsis[$key])).
e0cc0 7b 0a 24 74 68 69 73 2d 3e 73 79 6e 6f 70 73 69 73 5b 24 6b 65 79 5d 20 3d 20 74 72 69 6d 28 73 {.$this->synopsis[$key].=.trim(s
e0ce0 70 72 69 6e 74 66 28 27 25 73 20 25 73 27 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 2c 20 24 74 68 printf('%s.%s',.$this->name,.$th
e0d00 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 24 73 68 6f is->definition->getSynopsis($sho
e0d20 72 74 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 79 6e 6f 70 73 69 73 rt)));.}..return.$this->synopsis
e0d40 5b 24 6b 65 79 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 [$key];.}.......public.function.
e0d60 61 64 64 55 73 61 67 65 28 24 75 73 61 67 65 29 0a 7b 0a 69 66 20 28 30 20 21 3d 3d 20 73 74 72 addUsage($usage).{.if.(0.!==.str
e0d80 70 6f 73 28 24 75 73 61 67 65 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 29 29 20 7b 0a 24 75 73 61 pos($usage,.$this->name)).{.$usa
e0da0 67 65 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 20 25 73 27 2c 20 24 74 68 69 73 2d 3e 6e 61 6d ge.=.sprintf('%s.%s',.$this->nam
e0dc0 65 2c 20 24 75 73 61 67 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 73 61 67 65 73 5b 5d 20 3d e,.$usage);.}..$this->usages[].=
e0de0 20 24 75 73 61 67 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a .$usage;..return.$this;.}.......
e0e00 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 73 61 67 65 73 28 29 0a 7b 0a 72 65 public.function.getUsages().{.re
e0e20 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 73 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a turn.$this->usages;.}...........
e0e40 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 65 72 28 24 6e 61 6d 65 29 public.function.getHelper($name)
e0e60 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 2d 3e 67 65 74 28 .{.return.$this->helperSet->get(
e0e80 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f $name);.}.........public.functio
e0ea0 6e 20 61 73 54 65 78 74 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 n.asText().{.@trigger_error('The
e0ec0 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 .'.__METHOD__.'.method.is.deprec
e0ee0 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 33 20 61 6e 64 20 77 69 6c 6c 20 ated.since.version.2.3.and.will.
e0f00 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 be.removed.in.3.0.',.E_USER_DEPR
e0f20 45 43 41 54 45 44 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 20 3d 20 6e 65 77 20 54 65 78 74 ECATED);..$descriptor.=.new.Text
e0f40 44 65 73 63 72 69 70 74 6f 72 28 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 42 75 66 66 Descriptor();.$output.=.new.Buff
e0f60 65 72 65 64 4f 75 74 70 75 74 28 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 3a 3a 56 45 52 42 4f eredOutput(BufferedOutput::VERBO
e0f80 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 74 72 75 65 29 3b 0a 24 64 65 73 63 72 69 70 74 6f 72 2d SITY_NORMAL,.true);.$descriptor-
e0fa0 3e 64 65 73 63 72 69 62 65 28 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2c 20 61 72 72 61 79 28 >describe($output,.$this,.array(
e0fc0 27 72 61 77 5f 6f 75 74 70 75 74 27 20 3d 3e 20 74 72 75 65 29 29 3b 0a 0a 72 65 74 75 72 6e 20 'raw_output'.=>.true));..return.
e0fe0 24 6f 75 74 70 75 74 2d 3e 66 65 74 63 68 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 $output->fetch();.}...........pu
e1000 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 58 6d 6c 28 24 61 73 44 6f 6d 20 3d 20 66 61 6c blic.function.asXml($asDom.=.fal
e1020 73 65 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d 45 se).{.@trigger_error('The.'.__ME
e1040 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 THOD__.'.method.is.deprecated.si
e1060 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 33 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f nce.version.2.3.and.will.be.remo
e1080 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 ved.in.3.0.',.E_USER_DEPRECATED)
e10a0 3b 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 20 3d 20 6e 65 77 20 58 6d 6c 44 65 73 63 72 69 70 74 ;..$descriptor.=.new.XmlDescript
e10c0 6f 72 28 29 3b 0a 0a 69 66 20 28 24 61 73 44 6f 6d 29 20 7b 0a 72 65 74 75 72 6e 20 24 64 65 73 or();..if.($asDom).{.return.$des
e10e0 63 72 69 70 74 6f 72 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 44 6f 63 75 6d 65 6e 74 28 24 74 68 69 criptor->getCommandDocument($thi
e1100 73 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 42 75 66 66 65 72 65 64 4f 75 74 s);.}..$output.=.new.BufferedOut
e1120 70 75 74 28 29 3b 0a 24 64 65 73 63 72 69 70 74 6f 72 2d 3e 64 65 73 63 72 69 62 65 28 24 6f 75 put();.$descriptor->describe($ou
e1140 74 70 75 74 2c 20 24 74 68 69 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 2d 3e 66 tput,.$this);..return.$output->f
e1160 65 74 63 68 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 etch();.}...........private.func
e1180 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 4e 61 6d 65 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 tion.validateName($name).{.if.(!
e11a0 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 5b 5e 5c 3a 5d 2b 2b 28 5c 3a 5b 5e 5c 3a 5d 2b 2b 29 preg_match('/^[^\:]++(\:[^\:]++)
e11c0 2a 24 2f 27 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 *$/',.$name)).{.throw.new.Invali
e11e0 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d dArgumentException(sprintf('Comm
e1200 61 6e 64 20 6e 61 6d 65 20 22 25 73 22 20 69 73 20 69 6e 76 61 6c 69 64 2e 27 2c 20 24 6e 61 6d and.name."%s".is.invalid.',.$nam
e1220 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 e));.}.}.}.<?php...........names
e1240 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 pace.Symfony\Component\Console\C
e1260 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 ommand;..use.Symfony\Component\C
e1280 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 44 65 73 63 72 69 70 74 6f 72 48 65 6c 70 65 72 3b 0a onsole\Helper\DescriptorHelper;.
e12a0 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e use.Symfony\Component\Console\In
e12c0 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 put\InputArgument;.use.Symfony\C
e12e0 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 omponent\Console\Input\InputOpti
e1300 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c on;.use.Symfony\Component\Consol
e1320 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 e\Input\InputInterface;.use.Symf
e1340 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 ony\Component\Console\Output\Out
e1360 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 65 6c 70 43 6f putInterface;.......class.HelpCo
e1380 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 69 76 61 74 65 20 mmand.extends.Command.{.private.
e13a0 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e $command;.....protected.function
e13c0 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 61 6c 69 .configure().{.$this->ignoreVali
e13e0 64 61 74 69 6f 6e 45 72 72 6f 72 73 28 29 3b 0a 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 dationErrors();..$this.->setName
e1400 28 27 68 65 6c 70 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a ('help').->setDefinition(array(.
e1420 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 5f 6e 61 6d 65 27 new.InputArgument('command_name'
e1440 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 54 68 65 20 ,.InputArgument::OPTIONAL,.'The.
e1460 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 27 2c 20 27 68 65 6c 70 27 29 2c 0a 6e 65 77 20 49 6e 70 75 command.name',.'help'),.new.Inpu
e1480 74 4f 70 74 69 6f 6e 28 27 78 6d 6c 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e tOption('xml',.null,.InputOption
e14a0 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 54 6f 20 6f 75 74 70 75 74 20 68 65 6c 70 20 61 73 ::VALUE_NONE,.'To.output.help.as
e14c0 20 58 4d 4c 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 .XML'),.new.InputOption('format'
e14e0 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 ,.null,.InputOption::VALUE_REQUI
e1500 52 45 44 2c 20 27 54 68 65 20 6f 75 74 70 75 74 20 66 6f 72 6d 61 74 20 28 74 78 74 2c 20 78 6d RED,.'The.output.format.(txt,.xm
e1520 6c 2c 20 6a 73 6f 6e 2c 20 6f 72 20 6d 64 29 27 2c 20 27 74 78 74 27 29 2c 0a 6e 65 77 20 49 6e l,.json,.or.md)',.'txt'),.new.In
e1540 70 75 74 4f 70 74 69 6f 6e 28 27 72 61 77 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 putOption('raw',.null,.InputOpti
e1560 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 54 6f 20 6f 75 74 70 75 74 20 72 61 77 20 63 on::VALUE_NONE,.'To.output.raw.c
e1580 6f 6d 6d 61 6e 64 20 68 65 6c 70 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 ommand.help'),.)).->setDescripti
e15a0 6f 6e 28 27 44 69 73 70 6c 61 79 73 20 68 65 6c 70 20 66 6f 72 20 61 20 63 6f 6d 6d 61 6e 64 27 on('Displays.help.for.a.command'
e15c0 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 27 45 4f 46 27 0a 54 68 65 20 3c 69 6e 66 6f 3e 25 ).->setHelp(<<<'EOF'.The.<info>%
e15e0 63 6f 6d 6d 61 6e 64 2e 6e 61 6d 65 25 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 64 69 73 command.name%</info>.command.dis
e1600 70 6c 61 79 73 20 68 65 6c 70 20 66 6f 72 20 61 20 67 69 76 65 6e 20 63 6f 6d 6d 61 6e 64 3a 0a plays.help.for.a.given.command:.
e1620 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 ...<info>php.%command.full_name%
e1640 20 6c 69 73 74 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 6f 75 74 70 75 .list</info>..You.can.also.outpu
e1660 74 20 74 68 65 20 68 65 6c 70 20 69 6e 20 6f 74 68 65 72 20 66 6f 72 6d 61 74 73 20 62 79 20 75 t.the.help.in.other.formats.by.u
e1680 73 69 6e 67 20 74 68 65 20 3c 63 6f 6d 6d 65 6e 74 3e 2d 2d 66 6f 72 6d 61 74 3c 2f 63 6f 6d 6d sing.the.<comment>--format</comm
e16a0 65 6e 74 3e 20 6f 70 74 69 6f 6e 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 ent>.option:....<info>php.%comma
e16c0 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 66 6f 72 6d 61 74 3d 78 6d 6c 20 6c 69 73 74 3c nd.full_name%.--format=xml.list<
e16e0 2f 69 6e 66 6f 3e 0a 0a 54 6f 20 64 69 73 70 6c 61 79 20 74 68 65 20 6c 69 73 74 20 6f 66 20 61 /info>..To.display.the.list.of.a
e1700 76 61 69 6c 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 73 2c 20 70 6c 65 61 73 65 20 75 73 65 20 74 68 vailable.commands,.please.use.th
e1720 65 20 3c 69 6e 66 6f 3e 6c 69 73 74 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 2e 0a 45 4f 46 e.<info>list</info>.command..EOF
e1740 0a 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 .).;.}.......public.function.set
e1760 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 74 68 69 Command(Command.$command).{.$thi
e1780 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f s->command.=.$command;.}.....pro
e17a0 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 tected.function.execute(InputInt
e17c0 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 erface.$input,.OutputInterface.$
e17e0 6f 75 74 70 75 74 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 6f output).{.if.(null.===.$this->co
e1800 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d mmand).{.$this->command.=.$this-
e1820 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 2d 3e 66 69 6e 64 28 24 69 6e 70 75 74 2d 3e >getApplication()->find($input->
e1840 67 65 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 5f 6e 61 6d 65 27 29 29 3b 0a 7d 0a getArgument('command_name'));.}.
e1860 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 78 6d 6c 27 29 29 20 7b .if.($input->getOption('xml')).{
e1880 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 2d 2d 78 6d 6c 20 6f 70 74 69 6f .@trigger_error('The.--xml.optio
e18a0 6e 20 77 61 73 20 64 65 70 72 65 63 61 74 65 64 20 69 6e 20 76 65 72 73 69 6f 6e 20 32 2e 37 20 n.was.deprecated.in.version.2.7.
e18c0 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 76 65 72 73 69 6f 6e 20 33 and.will.be.removed.in.version.3
e18e0 2e 30 2e 20 55 73 65 20 74 68 65 20 2d 2d 66 6f 72 6d 61 74 20 6f 70 74 69 6f 6e 20 69 6e 73 74 .0..Use.the.--format.option.inst
e1900 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 24 69 6e 70 ead.',.E_USER_DEPRECATED);..$inp
e1920 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 2c 20 27 78 6d 6c 27 29 3b 0a ut->setOption('format',.'xml');.
e1940 7d 0a 0a 24 68 65 6c 70 65 72 20 3d 20 6e 65 77 20 44 65 73 63 72 69 70 74 6f 72 48 65 6c 70 65 }..$helper.=.new.DescriptorHelpe
e1960 72 28 29 3b 0a 24 68 65 6c 70 65 72 2d 3e 64 65 73 63 72 69 62 65 28 24 6f 75 74 70 75 74 2c 20 r();.$helper->describe($output,.
e1980 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 28 0a 27 66 6f 72 6d 61 74 27 20 $this->command,.array(.'format'.
e19a0 3d 3e 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 29 2c 0a =>.$input->getOption('format'),.
e19c0 27 72 61 77 5f 74 65 78 74 27 20 3d 3e 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 'raw_text'.=>.$input->getOption(
e19e0 27 72 61 77 27 29 2c 0a 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 6e 75 'raw'),.));..$this->command.=.nu
e1a00 6c 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 ll;.}.}.<?php...........namespac
e1a20 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d e.Symfony\Component\Console\Comm
e1a40 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 and;..use.Symfony\Component\Cons
e1a60 6f 6c 65 5c 48 65 6c 70 65 72 5c 44 65 73 63 72 69 70 74 6f 72 48 65 6c 70 65 72 3b 0a 75 73 65 ole\Helper\DescriptorHelper;.use
e1a80 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 .Symfony\Component\Console\Input
e1aa0 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 \InputArgument;.use.Symfony\Comp
e1ac0 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b onent\Console\Input\InputOption;
e1ae0 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 .use.Symfony\Component\Console\I
e1b00 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 nput\InputInterface;.use.Symfony
e1b20 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 \Component\Console\Output\Output
e1b40 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 Interface;.use.Symfony\Component
e1b60 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 3b 0a \Console\Input\InputDefinition;.
e1b80 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 69 73 74 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 ......class.ListCommand.extends.
e1ba0 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 Command.{....protected.function.
e1bc0 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 6c configure().{.$this.->setName('l
e1be0 69 73 74 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 74 68 69 73 2d 3e 63 72 65 ist').->setDefinition($this->cre
e1c00 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f ateDefinition()).->setDescriptio
e1c20 6e 28 27 4c 69 73 74 73 20 63 6f 6d 6d 61 6e 64 73 27 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c n('Lists.commands').->setHelp(<<
e1c40 3c 27 45 4f 46 27 0a 54 68 65 20 3c 69 6e 66 6f 3e 25 63 6f 6d 6d 61 6e 64 2e 6e 61 6d 65 25 3c <'EOF'.The.<info>%command.name%<
e1c60 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 6c 69 73 74 73 20 61 6c 6c 20 63 6f 6d 6d 61 6e 64 /info>.command.lists.all.command
e1c80 73 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 s:....<info>php.%command.full_na
e1ca0 6d 65 25 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 64 69 73 70 6c 61 79 me%</info>..You.can.also.display
e1cc0 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 61 20 73 70 65 63 69 66 69 63 20 6e 61 6d .the.commands.for.a.specific.nam
e1ce0 65 73 70 61 63 65 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 espace:....<info>php.%command.fu
e1d00 6c 6c 5f 6e 61 6d 65 25 20 74 65 73 74 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c ll_name%.test</info>..You.can.al
e1d20 73 6f 20 6f 75 74 70 75 74 20 74 68 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 6e 20 6f 74 68 so.output.the.information.in.oth
e1d40 65 72 20 66 6f 72 6d 61 74 73 20 62 79 20 75 73 69 6e 67 20 74 68 65 20 3c 63 6f 6d 6d 65 6e 74 er.formats.by.using.the.<comment
e1d60 3e 2d 2d 66 6f 72 6d 61 74 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 6f 70 74 69 6f 6e 3a 0a 0a 20 20 3c >--format</comment>.option:....<
e1d80 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 66 info>php.%command.full_name%.--f
e1da0 6f 72 6d 61 74 3d 78 6d 6c 3c 2f 69 6e 66 6f 3e 0a 0a 49 74 27 73 20 61 6c 73 6f 20 70 6f 73 73 ormat=xml</info>..It's.also.poss
e1dc0 69 62 6c 65 20 74 6f 20 67 65 74 20 72 61 77 20 6c 69 73 74 20 6f 66 20 63 6f 6d 6d 61 6e 64 73 ible.to.get.raw.list.of.commands
e1de0 20 28 75 73 65 66 75 6c 20 66 6f 72 20 65 6d 62 65 64 64 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 72 .(useful.for.embedding.command.r
e1e00 75 6e 6e 65 72 29 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 unner):....<info>php.%command.fu
e1e20 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 72 61 77 3c 2f 69 6e 66 6f 3e 0a 45 4f 46 0a 29 0a 3b 0a 7d 0a ll_name%.--raw</info>.EOF.).;.}.
e1e40 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 74 69 76 65 44 65 66 ....public.function.getNativeDef
e1e60 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 inition().{.return.$this->create
e1e80 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 Definition();.}.....protected.fu
e1ea0 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 nction.execute(InputInterface.$i
e1ec0 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b nput,.OutputInterface.$output).{
e1ee0 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 78 6d 6c 27 29 29 20 7b .if.($input->getOption('xml')).{
e1f00 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 2d 2d 78 6d 6c 20 6f 70 74 69 6f .@trigger_error('The.--xml.optio
e1f20 6e 20 77 61 73 20 64 65 70 72 65 63 61 74 65 64 20 69 6e 20 76 65 72 73 69 6f 6e 20 32 2e 37 20 n.was.deprecated.in.version.2.7.
e1f40 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 76 65 72 73 69 6f 6e 20 33 and.will.be.removed.in.version.3
e1f60 2e 30 2e 20 55 73 65 20 74 68 65 20 2d 2d 66 6f 72 6d 61 74 20 6f 70 74 69 6f 6e 20 69 6e 73 74 .0..Use.the.--format.option.inst
e1f80 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 24 69 6e 70 ead.',.E_USER_DEPRECATED);..$inp
e1fa0 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 2c 20 27 78 6d 6c 27 29 3b 0a ut->setOption('format',.'xml');.
e1fc0 7d 0a 0a 24 68 65 6c 70 65 72 20 3d 20 6e 65 77 20 44 65 73 63 72 69 70 74 6f 72 48 65 6c 70 65 }..$helper.=.new.DescriptorHelpe
e1fe0 72 28 29 3b 0a 24 68 65 6c 70 65 72 2d 3e 64 65 73 63 72 69 62 65 28 24 6f 75 74 70 75 74 2c 20 r();.$helper->describe($output,.
e2000 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 2c 20 61 72 72 61 79 28 0a $this->getApplication(),.array(.
e2020 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 66 'format'.=>.$input->getOption('f
e2040 6f 72 6d 61 74 27 29 2c 0a 27 72 61 77 5f 74 65 78 74 27 20 3d 3e 20 24 69 6e 70 75 74 2d 3e 67 ormat'),.'raw_text'.=>.$input->g
e2060 65 74 4f 70 74 69 6f 6e 28 27 72 61 77 27 29 2c 0a 27 6e 61 6d 65 73 70 61 63 65 27 20 3d 3e 20 etOption('raw'),.'namespace'.=>.
e2080 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 6e 61 6d 65 73 70 61 63 65 27 29 $input->getArgument('namespace')
e20a0 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 ,.));.}.....private.function.cre
e20c0 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 49 6e 70 ateDefinition().{.return.new.Inp
e20e0 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 utDefinition(array(.new.InputArg
e2100 75 6d 65 6e 74 28 27 6e 61 6d 65 73 70 61 63 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 ument('namespace',.InputArgument
e2120 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 54 68 65 20 6e 61 6d 65 73 70 61 63 65 20 6e 61 6d 65 27 ::OPTIONAL,.'The.namespace.name'
e2140 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 78 6d 6c 27 2c 20 6e 75 6c 6c 2c 20 ),.new.InputOption('xml',.null,.
e2160 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 54 6f 20 6f 75 74 InputOption::VALUE_NONE,.'To.out
e2180 70 75 74 20 6c 69 73 74 20 61 73 20 58 4d 4c 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 put.list.as.XML'),.new.InputOpti
e21a0 6f 6e 28 27 72 61 77 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c on('raw',.null,.InputOption::VAL
e21c0 55 45 5f 4e 4f 4e 45 2c 20 27 54 6f 20 6f 75 74 70 75 74 20 72 61 77 20 63 6f 6d 6d 61 6e 64 20 UE_NONE,.'To.output.raw.command.
e21e0 6c 69 73 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 list'),.new.InputOption('format'
e2200 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 ,.null,.InputOption::VALUE_REQUI
e2220 52 45 44 2c 20 27 54 68 65 20 6f 75 74 70 75 74 20 66 6f 72 6d 61 74 20 28 74 78 74 2c 20 78 6d RED,.'The.output.format.(txt,.xm
e2240 6c 2c 20 6a 73 6f 6e 2c 20 6f 72 20 6d 64 29 27 2c 20 27 74 78 74 27 29 2c 0a 29 29 3b 0a 7d 0a l,.json,.or.md)',.'txt'),.));.}.
e2260 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 }.<?php...........namespace.Symf
e2280 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 66 69 6e ony\Component\Console;.......fin
e22a0 61 6c 20 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a al.class.ConsoleEvents.{........
e22c0 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 43 4f 4d 4d 41 4e 44 20 3d 20 27 63 6f 6e 73 6f 6c 65 2e 63 6f .....const.COMMAND.=.'console.co
e22e0 6d 6d 61 6e 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 54 45 52 4d 49 4e mmand';.............const.TERMIN
e2300 41 54 45 20 3d 20 27 63 6f 6e 73 6f 6c 65 2e 74 65 72 6d 69 6e 61 74 65 27 3b 0a 0a 0a 0a 0a 0a ATE.=.'console.terminate';......
e2320 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 45 58 43 45 50 54 49 4f 4e 20 3d 20 27 63 6f 6e 73 6f ........const.EXCEPTION.=.'conso
e2340 6c 65 2e 65 78 63 65 70 74 69 6f 6e 27 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a le.exception';.}.<?php..........
e2360 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e .namespace.Symfony\Component\Con
e2380 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f sole\Descriptor;..use.Symfony\Co
e23a0 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 mponent\Console\Application;.use
e23c0 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 .Symfony\Component\Console\Comma
e23e0 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e nd\Command;.use.Symfony\Componen
e2400 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f t\Console\Exception\CommandNotFo
e2420 75 6e 64 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 70 70 6c 69 63 undException;.......class.Applic
e2440 61 74 69 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e 0a 7b 0a 63 6f 6e 73 74 20 47 4c 4f 42 41 4c 5f ationDescription.{.const.GLOBAL_
e2460 4e 41 4d 45 53 50 41 43 45 20 3d 20 27 5f 67 6c 6f 62 61 6c 27 3b 0a 0a 0a 0a 0a 70 72 69 76 61 NAMESPACE.=.'_global';.....priva
e2480 74 65 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6e 61 te.$application;.....private.$na
e24a0 6d 65 73 70 61 63 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 73 70 61 63 65 73 mespace;.....private.$namespaces
e24c0 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 73 3b 0a 0a 0a 0a 0a 70 72 69 ;.....private.$commands;.....pri
e24e0 76 61 74 65 20 24 61 6c 69 61 73 65 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e vate.$aliases;........public.fun
e2500 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 41 70 70 6c 69 63 61 74 69 6f 6e 20 24 61 ction.__construct(Application.$a
e2520 70 70 6c 69 63 61 74 69 6f 6e 2c 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 6e 75 6c 6c 29 0a 7b pplication,.$namespace.=.null).{
e2540 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 61 70 70 6c 69 63 61 74 69 .$this->application.=.$applicati
e2560 6f 6e 3b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 20 3d 20 24 6e 61 6d 65 73 70 61 63 on;.$this->namespace.=.$namespac
e2580 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 e;.}.....public.function.getName
e25a0 73 70 61 63 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6e spaces().{.if.(null.===.$this->n
e25c0 61 6d 65 73 70 61 63 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 70 65 63 74 41 70 70 6c 69 amespaces).{.$this->inspectAppli
e25e0 63 61 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 73 cation();.}..return.$this->names
e2600 70 61 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 paces;.}.....public.function.get
e2620 43 6f 6d 6d 61 6e 64 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d Commands().{.if.(null.===.$this-
e2640 3e 63 6f 6d 6d 61 6e 64 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 70 65 63 74 41 70 70 6c 69 >commands).{.$this->inspectAppli
e2660 63 61 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 cation();.}..return.$this->comma
e2680 6e 64 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 nds;.}.........public.function.g
e26a0 65 74 43 6f 6d 6d 61 6e 64 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 etCommand($name).{.if.(!isset($t
e26c0 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 29 20 26 26 20 21 69 73 73 65 74 28 his->commands[$name]).&&.!isset(
e26e0 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 $this->aliases[$name])).{.throw.
e2700 6e 65 77 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 73 70 72 new.CommandNotFoundException(spr
e2720 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 25 73 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e intf('Command.%s.does.not.exist.
e2740 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 ',.$name));.}..return.isset($thi
e2760 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 29 20 3f 20 24 74 68 69 73 2d 3e 63 6f 6d s->commands[$name]).?.$this->com
e2780 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 20 3a 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 5b 24 6e mands[$name].:.$this->aliases[$n
e27a0 61 6d 65 5d 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 70 65 63 ame];.}..private.function.inspec
e27c0 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 tApplication().{.$this->commands
e27e0 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 .=.array();.$this->namespaces.=.
e2800 61 72 72 61 79 28 29 3b 0a 0a 24 61 6c 6c 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 array();..$all.=.$this->applicat
e2820 69 6f 6e 2d 3e 61 6c 6c 28 24 74 68 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 20 3f 20 24 74 68 69 ion->all($this->namespace.?.$thi
e2840 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 66 69 6e 64 4e 61 6d 65 73 70 61 63 65 28 24 74 s->application->findNamespace($t
e2860 68 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 29 20 3a 20 6e 75 6c 6c 29 3b 0a 66 6f 72 65 61 63 68 his->namespace).:.null);.foreach
e2880 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 43 6f 6d 6d 61 6e 64 73 28 24 61 6c 6c 29 20 61 73 20 24 .($this->sortCommands($all).as.$
e28a0 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 73 29 20 7b 0a 24 6e 61 6d 65 73 namespace.=>.$commands).{.$names
e28c0 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 73 .=.array();...foreach.($commands
e28e0 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 69 66 20 28 21 24 63 .as.$name.=>.$command).{.if.(!$c
e2900 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d ommand->getName()).{.continue;.}
e2920 0a 0a 69 66 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d 20 24 6e ..if.($command->getName().===.$n
e2940 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 20 3d 20 ame).{.$this->commands[$name].=.
e2960 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 $command;.}.else.{.$this->aliase
e2980 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 24 6e 61 6d 65 73 5b 5d s[$name].=.$command;.}..$names[]
e29a0 20 3d 20 24 6e 61 6d 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 73 5b 24 .=.$name;.}..$this->namespaces[$
e29c0 6e 61 6d 65 73 70 61 63 65 5d 20 3d 20 61 72 72 61 79 28 27 69 64 27 20 3d 3e 20 24 6e 61 6d 65 namespace].=.array('id'.=>.$name
e29e0 73 70 61 63 65 2c 20 27 63 6f 6d 6d 61 6e 64 73 27 20 3d 3e 20 24 6e 61 6d 65 73 29 3b 0a 7d 0a space,.'commands'.=>.$names);.}.
e2a00 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 43 6f 6d }.......private.function.sortCom
e2a20 6d 61 6e 64 73 28 61 72 72 61 79 20 24 63 6f 6d 6d 61 6e 64 73 29 0a 7b 0a 24 6e 61 6d 65 73 70 mands(array.$commands).{.$namesp
e2a40 61 63 65 64 43 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 67 6c 6f 62 61 6c 43 acedCommands.=.array();.$globalC
e2a60 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d ommands.=.array();.foreach.($com
e2a80 6d 61 6e 64 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 6b mands.as.$name.=>.$command).{.$k
e2aa0 65 79 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 65 78 74 72 61 63 74 ey.=.$this->application->extract
e2ac0 4e 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 2c 20 31 29 3b 0a 69 66 20 28 21 24 6b 65 79 29 20 Namespace($name,.1);.if.(!$key).
e2ae0 7b 0a 24 67 6c 6f 62 61 6c 43 6f 6d 6d 61 6e 64 73 5b 27 5f 67 6c 6f 62 61 6c 27 5d 5b 24 6e 61 {.$globalCommands['_global'][$na
e2b00 6d 65 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6e 61 6d 65 73 70 me].=.$command;.}.else.{.$namesp
e2b20 61 63 65 64 43 6f 6d 6d 61 6e 64 73 5b 24 6b 65 79 5d 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 6f 6d acedCommands[$key][$name].=.$com
e2b40 6d 61 6e 64 3b 0a 7d 0a 7d 0a 6b 73 6f 72 74 28 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 mand;.}.}.ksort($namespacedComma
e2b60 6e 64 73 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 nds);.$namespacedCommands.=.arra
e2b80 79 5f 6d 65 72 67 65 28 24 67 6c 6f 62 61 6c 43 6f 6d 6d 61 6e 64 73 2c 20 24 6e 61 6d 65 73 70 y_merge($globalCommands,.$namesp
e2ba0 61 63 65 64 43 6f 6d 6d 61 6e 64 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 70 acedCommands);..foreach.($namesp
e2bc0 61 63 65 64 43 6f 6d 6d 61 6e 64 73 20 61 73 20 26 24 63 6f 6d 6d 61 6e 64 73 53 65 74 29 20 7b acedCommands.as.&$commandsSet).{
e2be0 0a 6b 73 6f 72 74 28 24 63 6f 6d 6d 61 6e 64 73 53 65 74 29 3b 0a 7d 0a 0a 20 75 6e 73 65 74 28 .ksort($commandsSet);.}...unset(
e2c00 24 63 6f 6d 6d 61 6e 64 73 53 65 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6e 61 6d 65 73 70 61 63 $commandsSet);..return.$namespac
e2c20 65 64 43 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a edCommands;.}.}.<?php...........
e2c40 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 namespace.Symfony\Component\Cons
e2c60 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d ole\Descriptor;..use.Symfony\Com
e2c80 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 ponent\Console\Application;.use.
e2ca0 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e Symfony\Component\Console\Comman
e2cc0 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 d\Command;.use.Symfony\Component
e2ce0 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 \Console\Input\InputArgument;.us
e2d00 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 e.Symfony\Component\Console\Inpu
e2d20 74 5c 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 t\InputDefinition;.use.Symfony\C
e2d40 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 omponent\Console\Input\InputOpti
e2d60 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c on;.use.Symfony\Component\Consol
e2d80 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 e\Output\OutputInterface;.use.Sy
e2da0 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f mfony\Component\Console\Exceptio
e2dc0 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a n\InvalidArgumentException;.....
e2de0 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 44 65 73 63 72 69 70 74 6f 72 20 69 6d 70 6c ..abstract.class.Descriptor.impl
e2e00 65 6d 65 6e 74 73 20 44 65 73 63 72 69 70 74 6f 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a ements.DescriptorInterface.{....
e2e20 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 private.$output;.....public.func
e2e40 74 69 6f 6e 20 64 65 73 63 72 69 62 65 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f tion.describe(OutputInterface.$o
e2e60 75 74 70 75 74 2c 20 24 6f 62 6a 65 63 74 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d utput,.$object,.array.$options.=
e2e80 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 .array()).{.$this->output.=.$out
e2ea0 70 75 74 3b 0a 0a 73 77 69 74 63 68 20 28 74 72 75 65 29 20 7b 0a 63 61 73 65 20 24 6f 62 6a 65 put;..switch.(true).{.case.$obje
e2ec0 63 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 0a 24 74 68 ct.instanceof.InputArgument:.$th
e2ee0 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 24 6f 62 6a 65 63 is->describeInputArgument($objec
e2f00 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 24 6f 62 6a 65 63 t,.$options);.break;.case.$objec
e2f20 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 0a 24 74 68 69 73 2d t.instanceof.InputOption:.$this-
e2f40 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 24 6f 62 6a 65 63 74 2c 20 24 6f >describeInputOption($object,.$o
e2f60 70 74 69 6f 6e 73 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 24 6f 62 6a 65 63 74 20 69 6e 73 ptions);.break;.case.$object.ins
e2f80 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 3a 0a 24 74 68 69 73 2d 3e tanceof.InputDefinition:.$this->
e2fa0 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 6f 62 6a 65 63 74 2c describeInputDefinition($object,
e2fc0 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 24 6f 62 6a 65 63 74 20 .$options);.break;.case.$object.
e2fe0 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 6d 61 6e 64 3a 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 instanceof.Command:.$this->descr
e3000 69 62 65 43 6f 6d 6d 61 6e 64 28 24 6f 62 6a 65 63 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 62 ibeCommand($object,.$options);.b
e3020 72 65 61 6b 3b 0a 63 61 73 65 20 24 6f 62 6a 65 63 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 70 reak;.case.$object.instanceof.Ap
e3040 70 6c 69 63 61 74 69 6f 6e 3a 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 41 70 70 6c 69 63 plication:.$this->describeApplic
e3060 61 74 69 6f 6e 28 24 6f 62 6a 65 63 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 62 72 65 61 6b 3b ation($object,.$options);.break;
e3080 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d .default:.throw.new.InvalidArgum
e30a0 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4f 62 6a 65 63 74 20 6f 66 20 entException(sprintf('Object.of.
e30c0 74 79 70 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 73 63 72 69 62 61 62 6c 65 2e 27 2c 20 type."%s".is.not.describable.',.
e30e0 67 65 74 5f 63 6c 61 73 73 28 24 6f 62 6a 65 63 74 29 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a get_class($object)));.}.}.......
e3100 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 63 6f 6e 74 65 .protected.function.write($conte
e3120 6e 74 2c 20 24 64 65 63 6f 72 61 74 65 64 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d nt,.$decorated.=.false).{.$this-
e3140 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 63 6f 6e 74 65 6e 74 2c 20 66 61 6c 73 65 2c 20 >output->write($content,.false,.
e3160 24 64 65 63 6f 72 61 74 65 64 20 3f 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 4f 55 $decorated.?.OutputInterface::OU
e3180 54 50 55 54 5f 4e 4f 52 4d 41 4c 20 3a 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 4f TPUT_NORMAL.:.OutputInterface::O
e31a0 55 54 50 55 54 5f 52 41 57 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 UTPUT_RAW);.}..........abstract.
e31c0 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 protected.function.describeInput
e31e0 41 72 67 75 6d 65 6e 74 28 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 20 24 61 72 67 75 6d 65 6e 74 Argument(InputArgument.$argument
e3200 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 3b 0a 0a 0a 0a ,.array.$options.=.array());....
e3220 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f ......abstract.protected.functio
e3240 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 49 6e 70 75 74 4f 70 74 69 6f n.describeInputOption(InputOptio
e3260 6e 20 24 6f 70 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 n.$option,.array.$options.=.arra
e3280 79 28 29 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 y());..........abstract.protecte
e32a0 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 d.function.describeInputDefiniti
e32c0 6f 6e 28 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 on(InputDefinition.$definition,.
e32e0 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 3b 0a 0a 0a 0a 0a 0a array.$options.=.array());......
e3300 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 ....abstract.protected.function.
e3320 64 65 73 63 72 69 62 65 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 describeCommand(Command.$command
e3340 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 3b 0a 0a 0a 0a ,.array.$options.=.array());....
e3360 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f ......abstract.protected.functio
e3380 6e 20 64 65 73 63 72 69 62 65 41 70 70 6c 69 63 61 74 69 6f 6e 28 41 70 70 6c 69 63 61 74 69 6f n.describeApplication(Applicatio
e33a0 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d n.$application,.array.$options.=
e33c0 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d .array());.}.<?php...........nam
e33e0 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 espace.Symfony\Component\Console
e3400 5c 44 65 73 63 72 69 70 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e \Descriptor;..use.Symfony\Compon
e3420 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 ent\Console\Output\OutputInterfa
e3440 63 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 44 65 73 63 72 69 70 74 6f 72 49 6e ce;.......interface.DescriptorIn
e3460 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e terface.{........public.function
e3480 20 64 65 73 63 72 69 62 65 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 .describe(OutputInterface.$outpu
e34a0 74 2c 20 24 6f 62 6a 65 63 74 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 t,.$object,.array.$options.=.arr
e34c0 61 79 28 29 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 ay());.}.<?php...........namespa
e34e0 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 ce.Symfony\Component\Console\Des
e3500 63 72 69 70 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c criptor;..use.Symfony\Component\
e3520 43 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 Console\Application;.use.Symfony
e3540 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 \Component\Console\Command\Comma
e3560 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c nd;.use.Symfony\Component\Consol
e3580 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f e\Input\InputArgument;.use.Symfo
e35a0 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 ny\Component\Console\Input\Input
e35c0 44 65 66 69 6e 69 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e Definition;.use.Symfony\Componen
e35e0 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 0a 0a 0a t\Console\Input\InputOption;....
e3600 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 44 65 73 63 72 69 70 74 6f 72 20 65 78 74 65 6e 64 .....class.JsonDescriptor.extend
e3620 73 20 44 65 73 63 72 69 70 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 s.Descriptor.{....protected.func
e3640 74 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 49 6e 70 75 74 tion.describeInputArgument(Input
e3660 41 72 67 75 6d 65 6e 74 20 24 61 72 67 75 6d 65 6e 74 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f Argument.$argument,.array.$optio
e3680 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 61 74 61 ns.=.array()).{.$this->writeData
e36a0 28 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 44 61 74 61 28 24 61 72 ($this->getInputArgumentData($ar
e36c0 67 75 6d 65 6e 74 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 gument),.$options);.}.....protec
e36e0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e ted.function.describeInputOption
e3700 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 (InputOption.$option,.array.$opt
e3720 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 61 ions.=.array()).{.$this->writeDa
e3740 74 61 28 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 4f 70 74 69 6f 6e 44 61 74 61 28 24 6f 70 ta($this->getInputOptionData($op
e3760 74 69 6f 6e 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 tion),.$options);.}.....protecte
e3780 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 d.function.describeInputDefiniti
e37a0 6f 6e 28 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 on(InputDefinition.$definition,.
e37c0 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 array.$options.=.array()).{.$thi
e37e0 73 2d 3e 77 72 69 74 65 44 61 74 61 28 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 44 65 66 69 s->writeData($this->getInputDefi
e3800 6e 69 74 69 6f 6e 44 61 74 61 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 2c 20 24 6f 70 74 69 6f 6e nitionData($definition),.$option
e3820 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 s);.}.....protected.function.des
e3840 63 72 69 62 65 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 61 cribeCommand(Command.$command,.a
e3860 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 rray.$options.=.array()).{.$this
e3880 2d 3e 77 72 69 74 65 44 61 74 61 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 44 61 74 ->writeData($this->getCommandDat
e38a0 61 28 24 63 6f 6d 6d 61 6e 64 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 a($command),.$options);.}.....pr
e38c0 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 41 70 70 6c 69 63 61 otected.function.describeApplica
e38e0 74 69 6f 6e 28 41 70 70 6c 69 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 61 tion(Application.$application,.a
e3900 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 64 65 73 63 rray.$options.=.array()).{.$desc
e3920 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 20 3d 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b ribedNamespace.=.isset($options[
e3940 27 6e 61 6d 65 73 70 61 63 65 27 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 6e 61 6d 65 73 70 'namespace']).?.$options['namesp
e3960 61 63 65 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 6e 65 77 ace'].:.null;.$description.=.new
e3980 20 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e 28 24 61 70 70 6c 69 63 61 .ApplicationDescription($applica
e39a0 74 69 6f 6e 2c 20 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 29 3b 0a 24 63 6f 6d tion,.$describedNamespace);.$com
e39c0 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 73 63 mands.=.array();..foreach.($desc
e39e0 72 69 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 73 28 29 20 61 73 20 24 63 6f 6d 6d 61 ription->getCommands().as.$comma
e3a00 6e 64 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f nd).{.$commands[].=.$this->getCo
e3a20 6d 6d 61 6e 64 44 61 74 61 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 7d 0a 0a 24 64 61 74 61 20 3d 20 mmandData($command);.}..$data.=.
e3a40 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 0a 3f 20 61 72 72 61 79 28 27 63 6f 6d $describedNamespace.?.array('com
e3a60 6d 61 6e 64 73 27 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 73 2c 20 27 6e 61 6d 65 73 70 61 63 65 27 mands'.=>.$commands,.'namespace'
e3a80 20 3d 3e 20 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 29 0a 3a 20 61 72 72 61 79 .=>.$describedNamespace).:.array
e3aa0 28 27 63 6f 6d 6d 61 6e 64 73 27 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 73 2c 20 27 6e 61 6d 65 73 ('commands'.=>.$commands,.'names
e3ac0 70 61 63 65 73 27 20 3d 3e 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 64 65 73 63 72 69 70 74 paces'.=>.array_values($descript
e3ae0 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 29 29 3b 0a 0a 24 74 68 69 73 2d 3e ion->getNamespaces()));..$this->
e3b00 77 72 69 74 65 44 61 74 61 28 24 64 61 74 61 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a writeData($data,.$options);.}...
e3b20 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 44 61 74 .......private.function.writeDat
e3b40 61 28 61 72 72 61 79 20 24 64 61 74 61 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 29 0a 7b a(array.$data,.array.$options).{
e3b60 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 61 74 61 2c .$this->write(json_encode($data,
e3b80 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 6a 73 6f 6e 5f 65 6e 63 6f 64 69 6e 67 27 5d .isset($options['json_encoding']
e3ba0 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 6a 73 6f 6e 5f 65 6e 63 6f 64 69 6e 67 27 5d 20 3a 20 ).?.$options['json_encoding'].:.
e3bc0 30 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 0));.}.......private.function.ge
e3be0 74 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 44 61 74 61 28 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 tInputArgumentData(InputArgument
e3c00 20 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 6e 61 6d .$argument).{.return.array(.'nam
e3c20 65 27 20 3d 3e 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 27 69 73 5f e'.=>.$argument->getName(),.'is_
e3c40 72 65 71 75 69 72 65 64 27 20 3d 3e 20 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 required'.=>.$argument->isRequir
e3c60 65 64 28 29 2c 0a 27 69 73 5f 61 72 72 61 79 27 20 3d 3e 20 24 61 72 67 75 6d 65 6e 74 2d 3e 69 ed(),.'is_array'.=>.$argument->i
e3c80 73 41 72 72 61 79 28 29 2c 0a 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 70 72 65 67 5f sArray(),.'description'.=>.preg_
e3ca0 72 65 70 6c 61 63 65 28 27 2f 5c 73 2a 5b 5c 72 5c 6e 5d 5c 73 2a 2f 27 2c 20 27 20 27 2c 20 24 replace('/\s*[\r\n]\s*/',.'.',.$
e3cc0 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 2c 0a 27 64 65 argument->getDescription()),.'de
e3ce0 66 61 75 6c 74 27 20 3d 3e 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 fault'.=>.$argument->getDefault(
e3d00 29 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 ),.);.}.......private.function.g
e3d20 65 74 49 6e 70 75 74 4f 70 74 69 6f 6e 44 61 74 61 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f etInputOptionData(InputOption.$o
e3d40 70 74 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 6e 61 6d 65 27 20 3d 3e ption).{.return.array(.'name'.=>
e3d60 20 27 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 27 73 68 6f 72 74 .'--'.$option->getName(),.'short
e3d80 63 75 74 27 20 3d 3e 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3f cut'.=>.$option->getShortcut().?
e3da0 20 27 2d 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 2d 27 2c 20 65 78 70 6c 6f 64 65 28 27 7c 27 2c 20 .'-'.implode('|-',.explode('|',.
e3dc0 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 29 20 3a 20 27 27 2c 0a 27 $option->getShortcut())).:.'',.'
e3de0 61 63 63 65 70 74 5f 76 61 6c 75 65 27 20 3d 3e 20 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 accept_value'.=>.$option->accept
e3e00 56 61 6c 75 65 28 29 2c 0a 27 69 73 5f 76 61 6c 75 65 5f 72 65 71 75 69 72 65 64 27 20 3d 3e 20 Value(),.'is_value_required'.=>.
e3e20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 2c 0a 27 69 73 5f $option->isValueRequired(),.'is_
e3e40 6d 75 6c 74 69 70 6c 65 27 20 3d 3e 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 2c multiple'.=>.$option->isArray(),
e3e60 0a 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 .'description'.=>.preg_replace('
e3e80 2f 5c 73 2a 5b 5c 72 5c 6e 5d 5c 73 2a 2f 27 2c 20 27 20 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 /\s*[\r\n]\s*/',.'.',.$option->g
e3ea0 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 2c 0a 27 64 65 66 61 75 6c 74 27 20 3d 3e 20 24 etDescription()),.'default'.=>.$
e3ec0 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a option->getDefault(),.);.}......
e3ee0 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 44 65 66 69 6e 69 .private.function.getInputDefini
e3f00 74 69 6f 6e 44 61 74 61 28 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 tionData(InputDefinition.$defini
e3f20 74 69 6f 6e 29 0a 7b 0a 24 69 6e 70 75 74 41 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 tion).{.$inputArguments.=.array(
e3f40 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 );.foreach.($definition->getArgu
e3f60 6d 65 6e 74 73 28 29 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 61 72 67 75 6d 65 6e 74 29 20 7b ments().as.$name.=>.$argument).{
e3f80 0a 24 69 6e 70 75 74 41 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 74 68 69 73 2d .$inputArguments[$name].=.$this-
e3fa0 3e 67 65 74 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 44 61 74 61 28 24 61 72 67 75 6d 65 6e 74 29 >getInputArgumentData($argument)
e3fc0 3b 0a 7d 0a 0a 24 69 6e 70 75 74 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f ;.}..$inputOptions.=.array();.fo
e3fe0 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 reach.($definition->getOptions()
e4000 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 69 6e 70 75 74 4f 70 .as.$name.=>.$option).{.$inputOp
e4020 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 4f 70 tions[$name].=.$this->getInputOp
e4040 74 69 6f 6e 44 61 74 61 28 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 tionData($option);.}..return.arr
e4060 61 79 28 27 61 72 67 75 6d 65 6e 74 73 27 20 3d 3e 20 24 69 6e 70 75 74 41 72 67 75 6d 65 6e 74 ay('arguments'.=>.$inputArgument
e4080 73 2c 20 27 6f 70 74 69 6f 6e 73 27 20 3d 3e 20 24 69 6e 70 75 74 4f 70 74 69 6f 6e 73 29 3b 0a s,.'options'.=>.$inputOptions);.
e40a0 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d }.......private.function.getComm
e40c0 61 6e 64 44 61 74 61 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 63 6f 6d andData(Command.$command).{.$com
e40e0 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 6d mand->getSynopsis();.$command->m
e4100 65 72 67 65 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 28 66 61 6c 73 65 29 ergeApplicationDefinition(false)
e4120 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 6e 61 6d 65 27 20 3d 3e 20 24 63 6f 6d 6d ;..return.array(.'name'.=>.$comm
e4140 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 27 75 73 61 67 65 27 20 3d 3e 20 61 72 72 61 79 and->getName(),.'usage'.=>.array
e4160 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 _merge(array($command->getSynops
e4180 69 73 28 29 29 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 55 73 61 67 65 73 28 29 2c 20 24 63 is()),.$command->getUsages(),.$c
e41a0 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 29 2c 0a 27 64 65 73 63 72 69 70 74 ommand->getAliases()),.'descript
e41c0 69 6f 6e 27 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e ion'.=>.$command->getDescription
e41e0 28 29 2c 0a 27 68 65 6c 70 27 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 50 72 6f 63 65 (),.'help'.=>.$command->getProce
e4200 73 73 65 64 48 65 6c 70 28 29 2c 0a 27 64 65 66 69 6e 69 74 69 6f 6e 27 20 3d 3e 20 24 74 68 69 ssedHelp(),.'definition'.=>.$thi
e4220 73 2d 3e 67 65 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 44 61 74 61 28 24 63 6f 6d 6d 61 s->getInputDefinitionData($comma
e4240 6e 64 2d 3e 67 65 74 4e 61 74 69 76 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 2c 0a 29 3b 0a 7d nd->getNativeDefinition()),.);.}
e4260 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d .}.<?php...........namespace.Sym
e4280 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f fony\Component\Console\Descripto
e42a0 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c r;..use.Symfony\Component\Consol
e42c0 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f e\Application;.use.Symfony\Compo
e42e0 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 nent\Console\Command\Command;.us
e4300 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 e.Symfony\Component\Console\Inpu
e4320 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d t\InputArgument;.use.Symfony\Com
e4340 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 44 65 66 69 6e 69 ponent\Console\Input\InputDefini
e4360 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 tion;.use.Symfony\Component\Cons
e4380 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 ole\Input\InputOption;.........c
e43a0 6c 61 73 73 20 4d 61 72 6b 64 6f 77 6e 44 65 73 63 72 69 70 74 6f 72 20 65 78 74 65 6e 64 73 20 lass.MarkdownDescriptor.extends.
e43c0 44 65 73 63 72 69 70 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 Descriptor.{....protected.functi
e43e0 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 49 6e 70 75 74 41 72 on.describeInputArgument(InputAr
e4400 67 75 6d 65 6e 74 20 24 61 72 67 75 6d 65 6e 74 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 gument.$argument,.array.$options
e4420 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 0a 27 2a 2a 27 .=.array()).{.$this->write(.'**'
e4440 2e 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 3a 2a 2a 27 2e 22 5c 6e 5c .$argument->getName().':**'."\n\
e4460 6e 22 0a 2e 27 2a 20 4e 61 6d 65 3a 20 27 2e 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 n"..'*.Name:.'.($argument->getNa
e4480 6d 65 28 29 20 3f 3a 20 27 3c 6e 6f 6e 65 3e 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 49 73 20 72 65 me().?:.'<none>')."\n"..'*.Is.re
e44a0 71 75 69 72 65 64 3a 20 27 2e 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 64 quired:.'.($argument->isRequired
e44c0 28 29 20 3f 20 27 79 65 73 27 20 3a 20 27 6e 6f 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 49 73 20 61 ().?.'yes'.:.'no')."\n"..'*.Is.a
e44e0 72 72 61 79 3a 20 27 2e 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 rray:.'.($argument->isArray().?.
e4500 27 79 65 73 27 20 3a 20 27 6e 6f 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 44 65 73 63 72 69 70 74 69 'yes'.:.'no')."\n"..'*.Descripti
e4520 6f 6e 3a 20 27 2e 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 5c 73 2a 5b 5c 72 5c 6e 5d 5c 73 on:.'.preg_replace('/\s*[\r\n]\s
e4540 2a 2f 27 2c 20 22 5c 6e 20 20 22 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 73 63 72 */',."\n..",.$argument->getDescr
e4560 69 70 74 69 6f 6e 28 29 20 3f 3a 20 27 3c 6e 6f 6e 65 3e 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 44 iption().?:.'<none>')."\n"..'*.D
e4580 65 66 61 75 6c 74 3a 20 60 27 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 27 27 2c efault:.`'.str_replace("\n",.'',
e45a0 20 76 61 72 5f 65 78 70 6f 72 74 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c .var_export($argument->getDefaul
e45c0 74 28 29 2c 20 74 72 75 65 29 29 2e 27 60 27 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 t(),.true)).'`'.);.}.....protect
e45e0 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 ed.function.describeInputOption(
e4600 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 InputOption.$option,.array.$opti
e4620 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 0a 27 ons.=.array()).{.$this->write(.'
e4640 2a 2a 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 3a 2a 2a 27 2e 22 5c 6e **'.$option->getName().':**'."\n
e4660 5c 6e 22 0a 2e 27 2a 20 4e 61 6d 65 3a 20 60 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e \n"..'*.Name:.`--'.$option->getN
e4680 61 6d 65 28 29 2e 27 60 27 2e 22 5c 6e 22 0a 2e 27 2a 20 53 68 6f 72 74 63 75 74 3a 20 27 2e 28 ame().'`'."\n"..'*.Shortcut:.'.(
e46a0 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3f 20 27 60 2d 27 2e 69 6d $option->getShortcut().?.'`-'.im
e46c0 70 6c 6f 64 65 28 27 7c 2d 27 2c 20 65 78 70 6c 6f 64 65 28 27 7c 27 2c 20 24 6f 70 74 69 6f 6e plode('|-',.explode('|',.$option
e46e0 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 29 2e 27 60 27 20 3a 20 27 3c 6e 6f 6e 65 3e 27 ->getShortcut())).'`'.:.'<none>'
e4700 29 2e 22 5c 6e 22 0a 2e 27 2a 20 41 63 63 65 70 74 20 76 61 6c 75 65 3a 20 27 2e 28 24 6f 70 74 )."\n"..'*.Accept.value:.'.($opt
e4720 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 20 3f 20 27 79 65 73 27 20 3a 20 27 6e 6f ion->acceptValue().?.'yes'.:.'no
e4740 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 49 73 20 76 61 6c 75 65 20 72 65 71 75 69 72 65 64 3a 20 27 ')."\n"..'*.Is.value.required:.'
e4760 2e 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 3f 20 27 .($option->isValueRequired().?.'
e4780 79 65 73 27 20 3a 20 27 6e 6f 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 49 73 20 6d 75 6c 74 69 70 6c yes'.:.'no')."\n"..'*.Is.multipl
e47a0 65 3a 20 27 2e 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 27 79 65 73 27 e:.'.($option->isArray().?.'yes'
e47c0 20 3a 20 27 6e 6f 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 44 65 73 63 72 69 70 74 69 6f 6e 3a 20 27 .:.'no')."\n"..'*.Description:.'
e47e0 2e 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 5c 73 2a 5b 5c 72 5c 6e 5d 5c 73 2a 2f 27 2c 20 .preg_replace('/\s*[\r\n]\s*/',.
e4800 22 5c 6e 20 20 22 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 "\n..",.$option->getDescription(
e4820 29 20 3f 3a 20 27 3c 6e 6f 6e 65 3e 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 44 65 66 61 75 6c 74 3a ).?:.'<none>')."\n"..'*.Default:
e4840 20 60 27 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 27 27 2c 20 76 61 72 5f 65 78 .`'.str_replace("\n",.'',.var_ex
e4860 70 6f 72 74 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 2c 20 74 72 75 65 port($option->getDefault(),.true
e4880 29 29 2e 27 60 27 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 )).'`'.);.}.....protected.functi
e48a0 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 49 6e 70 75 74 on.describeInputDefinition(Input
e48c0 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f Definition.$definition,.array.$o
e48e0 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 24 73 68 6f 77 41 72 67 ptions.=.array()).{.if.($showArg
e4900 75 6d 65 6e 74 73 20 3d 20 63 6f 75 6e 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 uments.=.count($definition->getA
e4920 72 67 75 6d 65 6e 74 73 28 29 29 20 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 rguments()).>.0).{.$this->write(
e4940 27 23 23 23 20 41 72 67 75 6d 65 6e 74 73 3a 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 '###.Arguments:');.foreach.($def
e4960 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 61 73 20 24 61 72 67 75 inition->getArguments().as.$argu
e4980 6d 65 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 22 5c 6e 5c 6e 22 29 3b 0a 24 74 ment).{.$this->write("\n\n");.$t
e49a0 68 69 73 2d 3e 77 72 69 74 65 28 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 41 his->write($this->describeInputA
e49c0 72 67 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f rgument($argument));.}.}..if.(co
e49e0 75 6e 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 29 20 3e unt($definition->getOptions()).>
e4a00 20 30 29 20 7b 0a 69 66 20 28 24 73 68 6f 77 41 72 67 75 6d 65 6e 74 73 29 20 7b 0a 24 74 68 69 .0).{.if.($showArguments).{.$thi
e4a20 73 2d 3e 77 72 69 74 65 28 22 5c 6e 5c 6e 22 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 s->write("\n\n");.}..$this->writ
e4a40 65 28 27 23 23 23 20 4f 70 74 69 6f 6e 73 3a 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 e('###.Options:');.foreach.($def
e4a60 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e inition->getOptions().as.$option
e4a80 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 22 5c 6e 5c 6e 22 29 3b 0a 24 74 68 69 73 2d ).{.$this->write("\n\n");.$this-
e4aa0 3e 77 72 69 74 65 28 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f >write($this->describeInputOptio
e4ac0 6e 28 24 6f 70 74 69 6f 6e 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 n($option));.}.}.}.....protected
e4ae0 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e .function.describeCommand(Comman
e4b00 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 d.$command,.array.$options.=.arr
e4b20 61 79 28 29 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 3b ay()).{.$command->getSynopsis();
e4b40 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 6d 65 72 67 65 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e .$command->mergeApplicationDefin
e4b60 69 74 69 6f 6e 28 66 61 6c 73 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 0a 24 63 6f ition(false);..$this->write(.$co
e4b80 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 22 5c 6e 22 0a 2e 73 74 72 5f 72 65 70 65 61 mmand->getName()."\n"..str_repea
e4ba0 74 28 27 2d 27 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 t('-',.strlen($command->getName(
e4bc0 29 29 29 2e 22 5c 6e 5c 6e 22 0a 2e 27 2a 20 44 65 73 63 72 69 70 74 69 6f 6e 3a 20 27 2e 28 24 )))."\n\n"..'*.Description:.'.($
e4be0 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 20 3f 3a 20 27 3c 6e command->getDescription().?:.'<n
e4c00 6f 6e 65 3e 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 55 73 61 67 65 3a 27 2e 22 5c 6e 5c 6e 22 0a 2e one>')."\n"..'*.Usage:'."\n\n"..
e4c20 61 72 72 61 79 5f 72 65 64 75 63 65 28 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 array_reduce(array_merge(array($
e4c40 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 29 2c 20 24 63 6f 6d 6d 61 6e command->getSynopsis()),.$comman
e4c60 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 55 73 d->getAliases(),.$command->getUs
e4c80 61 67 65 73 28 29 29 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 63 61 72 72 79 2c 20 24 75 73 61 67 ages()),.function.($carry,.$usag
e4ca0 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 72 72 79 20 2e 3d 20 27 20 20 2a 20 60 27 2e 24 75 e).{.return.$carry..=.'..*.`'.$u
e4cc0 73 61 67 65 2e 27 60 27 2e 22 5c 6e 22 3b 0a 7d 29 0a 29 3b 0a 0a 69 66 20 28 24 68 65 6c 70 20 sage.'`'."\n";.}).);..if.($help.
e4ce0 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 50 72 6f 63 65 73 73 65 64 48 65 6c 70 28 29 29 20 =.$command->getProcessedHelp()).
e4d00 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 22 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 {.$this->write("\n");.$this->wri
e4d20 74 65 28 24 68 65 6c 70 29 3b 0a 7d 0a 0a 69 66 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e te($help);.}..if.($command->getN
e4d40 61 74 69 76 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 ativeDefinition()).{.$this->writ
e4d60 65 28 22 5c 6e 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 e("\n\n");.$this->describeInputD
e4d80 65 66 69 6e 69 74 69 6f 6e 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 74 69 76 65 44 65 66 efinition($command->getNativeDef
e4da0 69 6e 69 74 69 6f 6e 28 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 inition());.}.}.....protected.fu
e4dc0 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 41 70 70 6c 69 63 61 74 69 6f 6e 28 41 70 70 6c 69 nction.describeApplication(Appli
e4de0 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 cation.$application,.array.$opti
e4e00 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 ons.=.array()).{.$describedNames
e4e20 70 61 63 65 20 3d 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 6e 61 6d 65 73 70 61 63 65 pace.=.isset($options['namespace
e4e40 27 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 6e 61 6d 65 73 70 61 63 65 27 5d 20 3a 20 6e 75 ']).?.$options['namespace'].:.nu
e4e60 6c 6c 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 6e 65 77 20 41 70 70 6c 69 63 61 74 69 ll;.$description.=.new.Applicati
e4e80 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 24 64 65 73 onDescription($application,.$des
e4ea0 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 cribedNamespace);..$this->write(
e4ec0 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 22 5c 6e 22 2e 73 74 72 $application->getName()."\n".str
e4ee0 5f 72 65 70 65 61 74 28 27 3d 27 2c 20 73 74 72 6c 65 6e 28 24 61 70 70 6c 69 63 61 74 69 6f 6e _repeat('=',.strlen($application
e4f00 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 73 63 72 ->getName())));..foreach.($descr
e4f20 69 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 20 61 73 20 24 6e 61 6d 65 iption->getNamespaces().as.$name
e4f40 73 70 61 63 65 29 20 7b 0a 69 66 20 28 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 73 63 72 69 70 74 space).{.if.(ApplicationDescript
e4f60 69 6f 6e 3a 3a 47 4c 4f 42 41 4c 5f 4e 41 4d 45 53 50 41 43 45 20 21 3d 3d 20 24 6e 61 6d 65 73 ion::GLOBAL_NAMESPACE.!==.$names
e4f80 70 61 63 65 5b 27 69 64 27 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 22 5c 6e 5c 6e pace['id']).{.$this->write("\n\n
e4fa0 22 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 27 2a 2a 27 2e 24 6e 61 6d 65 73 70 61 63 65 ");.$this->write('**'.$namespace
e4fc0 5b 27 69 64 27 5d 2e 27 3a 2a 2a 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 22 ['id'].':**');.}..$this->write("
e4fe0 5c 6e 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 69 6d 70 6c 6f 64 65 28 22 5c 6e \n\n");.$this->write(implode("\n
e5000 22 2c 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 63 6f 6d 6d 61 6e 64 4e ",.array_map(function.($commandN
e5020 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 27 2a 20 27 2e 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 3b ame).{.return.'*.'.$commandName;
e5040 0a 7d 2c 20 24 6e 61 6d 65 73 70 61 63 65 5b 27 63 6f 6d 6d 61 6e 64 73 27 5d 29 29 29 3b 0a 7d .},.$namespace['commands'])));.}
e5060 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 6d 6d ..foreach.($description->getComm
e5080 61 6e 64 73 28 29 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 ands().as.$command).{.$this->wri
e50a0 74 65 28 22 5c 6e 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 24 74 68 69 73 2d 3e te("\n\n");.$this->write($this->
e50c0 64 65 73 63 72 69 62 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a 7d 0a 7d 0a describeCommand($command));.}.}.
e50e0 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 }.<?php...........namespace.Symf
e5100 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 ony\Component\Console\Descriptor
e5120 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 ;..use.Symfony\Component\Console
e5140 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e \Application;.use.Symfony\Compon
e5160 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 ent\Console\Command\Command;.use
e5180 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 .Symfony\Component\Console\Input
e51a0 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 \InputArgument;.use.Symfony\Comp
e51c0 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 44 65 66 69 6e 69 74 onent\Console\Input\InputDefinit
e51e0 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f ion;.use.Symfony\Component\Conso
e5200 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c le\Input\InputOption;.........cl
e5220 61 73 73 20 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 20 65 78 74 65 6e 64 73 20 44 65 73 63 72 ass.TextDescriptor.extends.Descr
e5240 69 70 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 iptor.{....protected.function.de
e5260 73 63 72 69 62 65 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 49 6e 70 75 74 41 72 67 75 6d 65 6e scribeInputArgument(InputArgumen
e5280 74 20 24 61 72 67 75 6d 65 6e 74 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 t.$argument,.array.$options.=.ar
e52a0 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 61 72 67 75 6d 65 6e 74 2d ray()).{.if.(null.!==.$argument-
e52c0 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 26 26 20 28 21 69 73 5f 61 72 72 61 79 28 24 61 72 67 >getDefault().&&.(!is_array($arg
e52e0 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 7c 7c 20 63 6f 75 6e 74 28 24 61 ument->getDefault()).||.count($a
e5300 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 29 29 20 7b 0a 24 64 65 66 61 rgument->getDefault()))).{.$defa
e5320 75 6c 74 20 3d 20 73 70 72 69 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 20 5b 64 65 66 61 75 6c ult.=.sprintf('<comment>.[defaul
e5340 74 3a 20 25 73 5d 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 t:.%s]</comment>',.$this->format
e5360 44 65 66 61 75 6c 74 56 61 6c 75 65 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 DefaultValue($argument->getDefau
e5380 6c 74 28 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 27 27 3b 0a lt()));.}.else.{.$default.=.'';.
e53a0 7d 0a 0a 24 74 6f 74 61 6c 57 69 64 74 68 20 3d 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b }..$totalWidth.=.isset($options[
e53c0 27 74 6f 74 61 6c 5f 77 69 64 74 68 27 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 74 6f 74 61 'total_width']).?.$options['tota
e53e0 6c 5f 77 69 64 74 68 27 5d 20 3a 20 73 74 72 6c 65 6e 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 l_width'].:.strlen($argument->ge
e5400 74 4e 61 6d 65 28 29 29 3b 0a 24 73 70 61 63 69 6e 67 57 69 64 74 68 20 3d 20 24 74 6f 74 61 6c tName());.$spacingWidth.=.$total
e5420 57 69 64 74 68 20 2d 20 73 74 72 6c 65 6e 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d Width.-.strlen($argument->getNam
e5440 65 28 29 29 20 2b 20 32 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 73 70 72 69 e()).+.2;..$this->writeText(spri
e5460 6e 74 66 28 27 20 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 25 73 25 73 25 73 27 2c 0a 24 ntf('..<info>%s</info>%s%s%s',.$
e5480 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 73 74 72 5f 72 65 70 65 61 74 28 argument->getName(),.str_repeat(
e54a0 27 20 27 2c 20 24 73 70 61 63 69 6e 67 57 69 64 74 68 29 2c 0a 0a 20 70 72 65 67 5f 72 65 70 6c '.',.$spacingWidth),...preg_repl
e54c0 61 63 65 28 27 2f 5c 73 2a 5b 5c 72 5c 6e 5d 5c 73 2a 2f 27 2c 20 22 5c 6e 22 2e 73 74 72 5f 72 ace('/\s*[\r\n]\s*/',."\n".str_r
e54e0 65 70 65 61 74 28 27 20 27 2c 20 24 74 6f 74 61 6c 57 69 64 74 68 20 2b 20 31 37 29 2c 20 24 61 epeat('.',.$totalWidth.+.17),.$a
e5500 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 2c 0a 24 64 65 66 rgument->getDescription()),.$def
e5520 61 75 6c 74 0a 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 ault.),.$options);.}.....protect
e5540 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 ed.function.describeInputOption(
e5560 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 InputOption.$option,.array.$opti
e5580 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 61 63 ons.=.array()).{.if.($option->ac
e55a0 63 65 70 74 56 61 6c 75 65 28 29 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 6f 70 74 69 6f 6e 2d ceptValue().&&.null.!==.$option-
e55c0 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 26 26 20 28 21 69 73 5f 61 72 72 61 79 28 24 6f 70 74 >getDefault().&&.(!is_array($opt
e55e0 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 7c 7c 20 63 6f 75 6e 74 28 24 6f 70 74 ion->getDefault()).||.count($opt
e5600 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 29 29 20 7b 0a 24 64 65 66 61 75 6c 74 20 ion->getDefault()))).{.$default.
e5620 3d 20 73 70 72 69 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 20 5b 64 65 66 61 75 6c 74 3a 20 25 =.sprintf('<comment>.[default:.%
e5640 73 5d 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 44 65 66 61 s]</comment>',.$this->formatDefa
e5660 75 6c 74 56 61 6c 75 65 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 29 ultValue($option->getDefault()))
e5680 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 27 27 3b 0a 7d 0a 0a 24 76 61 ;.}.else.{.$default.=.'';.}..$va
e56a0 6c 75 65 20 3d 20 27 27 3b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c lue.=.'';.if.($option->acceptVal
e56c0 75 65 28 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 27 3d 27 2e 73 74 72 74 6f 75 70 70 65 72 28 ue()).{.$value.=.'='.strtoupper(
e56e0 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 0a 69 66 20 28 24 6f 70 74 69 6f $option->getName());..if.($optio
e5700 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d n->isValueOptional()).{.$value.=
e5720 20 27 5b 27 2e 24 76 61 6c 75 65 2e 27 5d 27 3b 0a 7d 0a 7d 0a 0a 24 74 6f 74 61 6c 57 69 64 74 .'['.$value.']';.}.}..$totalWidt
e5740 68 20 3d 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 74 6f 74 61 6c 5f 77 69 64 74 68 27 h.=.isset($options['total_width'
e5760 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 74 6f 74 61 6c 5f 77 69 64 74 68 27 5d 20 3a 20 24 ]).?.$options['total_width'].:.$
e5780 74 68 69 73 2d 3e 63 61 6c 63 75 6c 61 74 65 54 6f 74 61 6c 57 69 64 74 68 46 6f 72 4f 70 74 69 this->calculateTotalWidthForOpti
e57a0 6f 6e 73 28 61 72 72 61 79 28 24 6f 70 74 69 6f 6e 29 29 3b 0a 24 73 79 6e 6f 70 73 69 73 20 3d ons(array($option));.$synopsis.=
e57c0 20 73 70 72 69 6e 74 66 28 27 25 73 25 73 27 2c 0a 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f .sprintf('%s%s',.$option->getSho
e57e0 72 74 63 75 74 28 29 20 3f 20 73 70 72 69 6e 74 66 28 27 2d 25 73 2c 20 27 2c 20 24 6f 70 74 69 rtcut().?.sprintf('-%s,.',.$opti
e5800 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 3a 20 27 20 20 20 20 27 2c 0a 73 70 72 on->getShortcut()).:.'....',.spr
e5820 69 6e 74 66 28 27 2d 2d 25 73 25 73 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 intf('--%s%s',.$option->getName(
e5840 29 2c 20 24 76 61 6c 75 65 29 0a 29 3b 0a 0a 24 73 70 61 63 69 6e 67 57 69 64 74 68 20 3d 20 24 ),.$value).);..$spacingWidth.=.$
e5860 74 6f 74 61 6c 57 69 64 74 68 20 2d 20 73 74 72 6c 65 6e 28 24 73 79 6e 6f 70 73 69 73 29 20 2b totalWidth.-.strlen($synopsis).+
e5880 20 32 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 73 70 72 69 6e 74 66 28 27 20 .2;..$this->writeText(sprintf('.
e58a0 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 25 73 25 73 25 73 25 73 27 2c 0a 24 73 79 6e 6f .<info>%s</info>%s%s%s%s',.$syno
e58c0 70 73 69 73 2c 0a 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 73 70 61 63 69 6e 67 57 69 psis,.str_repeat('.',.$spacingWi
e58e0 64 74 68 29 2c 0a 0a 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 5c 73 2a 5b 5c 72 5c 6e 5d dth),...preg_replace('/\s*[\r\n]
e5900 5c 73 2a 2f 27 2c 20 22 5c 6e 22 2e 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 74 6f 74 \s*/',."\n".str_repeat('.',.$tot
e5920 61 6c 57 69 64 74 68 20 2b 20 31 37 29 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 63 72 alWidth.+.17),.$option->getDescr
e5940 69 70 74 69 6f 6e 28 29 29 2c 0a 24 64 65 66 61 75 6c 74 2c 0a 24 6f 70 74 69 6f 6e 2d 3e 69 73 iption()),.$default,.$option->is
e5960 41 72 72 61 79 28 29 20 3f 20 27 3c 63 6f 6d 6d 65 6e 74 3e 20 28 6d 75 6c 74 69 70 6c 65 20 76 Array().?.'<comment>.(multiple.v
e5980 61 6c 75 65 73 20 61 6c 6c 6f 77 65 64 29 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 20 3a 20 27 27 0a 29 alues.allowed)</comment>'.:.''.)
e59a0 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e ,.$options);.}.....protected.fun
e59c0 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 49 6e ction.describeInputDefinition(In
e59e0 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 61 72 72 61 79 putDefinition.$definition,.array
e5a00 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 6f 74 61 6c 57 69 64 .$options.=.array()).{.$totalWid
e5a20 74 68 20 3d 20 24 74 68 69 73 2d 3e 63 61 6c 63 75 6c 61 74 65 54 6f 74 61 6c 57 69 64 74 68 46 th.=.$this->calculateTotalWidthF
e5a40 6f 72 4f 70 74 69 6f 6e 73 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e orOptions($definition->getOption
e5a60 73 28 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 s());.foreach.($definition->getA
e5a80 72 67 75 6d 65 6e 74 73 28 29 20 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 74 6f 74 61 rguments().as.$argument).{.$tota
e5aa0 6c 57 69 64 74 68 20 3d 20 6d 61 78 28 24 74 6f 74 61 6c 57 69 64 74 68 2c 20 73 74 72 6c 65 6e lWidth.=.max($totalWidth,.strlen
e5ac0 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 ($argument->getName()));.}..if.(
e5ae0 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 29 20 7b 0a 24 $definition->getArguments()).{.$
e5b00 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 27 3c 63 6f 6d 6d 65 6e 74 3e 41 72 67 75 6d 65 this->writeText('<comment>Argume
e5b20 6e 74 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 24 74 68 69 nts:</comment>',.$options);.$thi
e5b40 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 s->writeText("\n");.foreach.($de
e5b60 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 61 73 20 24 61 72 67 finition->getArguments().as.$arg
e5b80 75 6d 65 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 41 72 67 ument).{.$this->describeInputArg
e5ba0 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 2c 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6f 70 ument($argument,.array_merge($op
e5bc0 74 69 6f 6e 73 2c 20 61 72 72 61 79 28 27 74 6f 74 61 6c 5f 77 69 64 74 68 27 20 3d 3e 20 24 74 tions,.array('total_width'.=>.$t
e5be0 6f 74 61 6c 57 69 64 74 68 29 29 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 otalWidth)));.$this->writeText("
e5c00 5c 6e 22 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 \n");.}.}..if.($definition->getA
e5c20 72 67 75 6d 65 6e 74 73 28 29 20 26 26 20 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 rguments().&&.$definition->getOp
e5c40 74 69 6f 6e 73 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 tions()).{.$this->writeText("\n"
e5c60 29 3b 0a 7d 0a 0a 69 66 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e );.}..if.($definition->getOption
e5c80 73 28 29 29 20 7b 0a 24 6c 61 74 65 72 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a s()).{.$laterOptions.=.array();.
e5ca0 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 27 3c 63 6f 6d 6d 65 6e 74 3e 4f 70 74 69 .$this->writeText('<comment>Opti
e5cc0 6f 6e 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 66 6f 72 65 ons:</comment>',.$options);.fore
e5ce0 61 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 20 61 ach.($definition->getOptions().a
e5d00 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 6f 70 74 69 6f 6e 2d s.$option).{.if.(strlen($option-
e5d20 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 3e 20 31 29 20 7b 0a 24 6c 61 74 65 72 4f 70 74 >getShortcut()).>.1).{.$laterOpt
e5d40 69 6f 6e 73 5b 5d 20 3d 20 24 6f 70 74 69 6f 6e 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 74 ions[].=.$option;.continue;.}.$t
e5d60 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 64 65 73 his->writeText("\n");.$this->des
e5d80 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 2c 20 61 72 72 61 79 5f cribeInputOption($option,.array_
e5da0 6d 65 72 67 65 28 24 6f 70 74 69 6f 6e 73 2c 20 61 72 72 61 79 28 27 74 6f 74 61 6c 5f 77 69 64 merge($options,.array('total_wid
e5dc0 74 68 27 20 3d 3e 20 24 74 6f 74 61 6c 57 69 64 74 68 29 29 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 th'.=>.$totalWidth)));.}.foreach
e5de0 20 28 24 6c 61 74 65 72 4f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 74 .($laterOptions.as.$option).{.$t
e5e00 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 64 65 73 his->writeText("\n");.$this->des
e5e20 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 2c 20 61 72 72 61 79 5f cribeInputOption($option,.array_
e5e40 6d 65 72 67 65 28 24 6f 70 74 69 6f 6e 73 2c 20 61 72 72 61 79 28 27 74 6f 74 61 6c 5f 77 69 64 merge($options,.array('total_wid
e5e60 74 68 27 20 3d 3e 20 24 74 6f 74 61 6c 57 69 64 74 68 29 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a th'.=>.$totalWidth)));.}.}.}....
e5e80 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 43 6f 6d 6d .protected.function.describeComm
e5ea0 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 20 24 6f 70 74 and(Command.$command,.array.$opt
e5ec0 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 ions.=.array()).{.$command->getS
e5ee0 79 6e 6f 70 73 69 73 28 74 72 75 65 29 3b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f ynopsis(true);.$command->getSyno
e5f00 70 73 69 73 28 66 61 6c 73 65 29 3b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 6d 65 72 67 65 41 70 70 6c psis(false);.$command->mergeAppl
e5f20 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 28 66 61 6c 73 65 29 3b 0a 0a 24 74 68 69 73 icationDefinition(false);..$this
e5f40 2d 3e 77 72 69 74 65 54 65 78 74 28 27 3c 63 6f 6d 6d 65 6e 74 3e 55 73 61 67 65 3a 3c 2f 63 6f ->writeText('<comment>Usage:</co
e5f60 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 mment>',.$options);.foreach.(arr
e5f80 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f ay_merge(array($command->getSyno
e5fa0 70 73 69 73 28 74 72 75 65 29 29 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 psis(true)),.$command->getAliase
e5fc0 73 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 55 73 61 67 65 73 28 29 29 20 61 73 20 24 s(),.$command->getUsages()).as.$
e5fe0 75 73 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b usage).{.$this->writeText("\n");
e6000 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 27 20 20 27 2e 24 75 73 61 67 65 2c 20 24 .$this->writeText('..'.$usage,.$
e6020 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e options);.}.$this->writeText("\n
e6040 22 29 3b 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 ");..$definition.=.$command->get
e6060 4e 61 74 69 76 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 69 66 20 28 24 64 65 66 69 6e 69 74 NativeDefinition();.if.($definit
e6080 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 20 7c 7c 20 24 64 65 66 69 6e 69 74 69 6f 6e ion->getOptions().||.$definition
e60a0 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 ->getArguments()).{.$this->write
e60c0 54 65 78 74 28 22 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 Text("\n");.$this->describeInput
e60e0 44 65 66 69 6e 69 74 69 6f 6e 28 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 24 6f 70 74 69 6f 6e 73 Definition($definition,.$options
e6100 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 7d 0a 0a 69 66 );.$this->writeText("\n");.}..if
e6120 20 28 24 68 65 6c 70 20 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 50 72 6f 63 65 73 73 65 64 .($help.=.$command->getProcessed
e6140 48 65 6c 70 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 Help()).{.$this->writeText("\n")
e6160 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 27 3c 63 6f 6d 6d 65 6e 74 3e 48 65 6c ;.$this->writeText('<comment>Hel
e6180 70 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 24 74 68 69 73 2d p:</comment>',.$options);.$this-
e61a0 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 >writeText("\n");.$this->writeTe
e61c0 78 74 28 27 20 27 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 22 5c 6e 20 22 2c 20 xt('.'.str_replace("\n",."\n.",.
e61e0 24 68 65 6c 70 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 $help),.$options);.$this->writeT
e6200 65 78 74 28 22 5c 6e 22 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e ext("\n");.}.}.....protected.fun
e6220 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 41 70 70 6c 69 63 61 74 69 6f 6e 28 41 70 70 6c 69 63 ction.describeApplication(Applic
e6240 61 74 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f ation.$application,.array.$optio
e6260 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 ns.=.array()).{.$describedNamesp
e6280 61 63 65 20 3d 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 6e 61 6d 65 73 70 61 63 65 27 ace.=.isset($options['namespace'
e62a0 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 6e 61 6d 65 73 70 61 63 65 27 5d 20 3a 20 6e 75 6c ]).?.$options['namespace'].:.nul
e62c0 6c 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 6e 65 77 20 41 70 70 6c 69 63 61 74 69 6f l;.$description.=.new.Applicatio
e62e0 6e 44 65 73 63 72 69 70 74 69 6f 6e 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 24 64 65 73 63 nDescription($application,.$desc
e6300 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 ribedNamespace);..if.(isset($opt
e6320 69 6f 6e 73 5b 27 72 61 77 5f 74 65 78 74 27 5d 29 20 26 26 20 24 6f 70 74 69 6f 6e 73 5b 27 72 ions['raw_text']).&&.$options['r
e6340 61 77 5f 74 65 78 74 27 5d 29 20 7b 0a 24 77 69 64 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 aw_text']).{.$width.=.$this->get
e6360 43 6f 6c 75 6d 6e 57 69 64 74 68 28 24 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 6d ColumnWidth($description->getCom
e6380 6d 61 6e 64 73 28 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 73 63 72 69 70 74 69 6f 6e mands());..foreach.($description
e63a0 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 73 28 29 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 ->getCommands().as.$command).{.$
e63c0 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 73 70 72 69 6e 74 66 28 22 25 2d 7b 24 77 69 64 this->writeText(sprintf("%-{$wid
e63e0 74 68 7d 73 20 25 73 22 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 th}s.%s",.$command->getName(),.$
e6400 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 2c 20 24 6f 70 74 command->getDescription()),.$opt
e6420 69 6f 6e 73 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 7d ions);.$this->writeText("\n");.}
e6440 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 27 27 20 21 3d 20 24 68 65 6c 70 20 3d 20 24 61 70 70 .}.else.{.if.(''.!=.$help.=.$app
e6460 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 48 65 6c 70 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 lication->getHelp()).{.$this->wr
e6480 69 74 65 54 65 78 74 28 22 24 68 65 6c 70 5c 6e 5c 6e 22 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a iteText("$help\n\n",.$options);.
e64a0 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 3c 63 6f 6d 6d 65 6e 74 3e 55 73 }..$this->writeText("<comment>Us
e64c0 61 67 65 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 5c 6e 22 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 24 74 age:</comment>\n",.$options);.$t
e64e0 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 20 20 63 6f 6d 6d 61 6e 64 20 5b 6f 70 74 69 6f his->writeText("..command.[optio
e6500 6e 73 5d 20 5b 61 72 67 75 6d 65 6e 74 73 5d 5c 6e 5c 6e 22 2c 20 24 6f 70 74 69 6f 6e 73 29 3b ns].[arguments]\n\n",.$options);
e6520 0a 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e ..$this->describeInputDefinition
e6540 28 6e 65 77 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 61 70 70 6c 69 63 61 74 69 6f (new.InputDefinition($applicatio
e6560 6e 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 n->getDefinition()->getOptions()
e6580 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 ),.$options);..$this->writeText(
e65a0 22 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 0a "\n");.$this->writeText("\n");..
e65c0 24 77 69 64 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6c 75 6d 6e 57 69 64 74 68 28 24 $width.=.$this->getColumnWidth($
e65e0 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 73 28 29 29 3b 0a 0a 69 66 description->getCommands());..if
e6600 20 28 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 29 20 7b 0a 24 74 68 69 73 2d 3e .($describedNamespace).{.$this->
e6620 77 72 69 74 65 54 65 78 74 28 73 70 72 69 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 41 76 61 69 writeText(sprintf('<comment>Avai
e6640 6c 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 74 68 65 20 22 25 73 22 20 6e 61 6d 65 lable.commands.for.the."%s".name
e6660 73 70 61 63 65 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 64 65 73 63 72 69 62 65 64 4e 61 6d space:</comment>',.$describedNam
e6680 65 73 70 61 63 65 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 espace),.$options);.}.else.{.$th
e66a0 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 27 3c 63 6f 6d 6d 65 6e 74 3e 41 76 61 69 6c 61 62 6c is->writeText('<comment>Availabl
e66c0 65 20 63 6f 6d 6d 61 6e 64 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f 6e 73 e.commands:</comment>',.$options
e66e0 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 67 );.}....foreach.($description->g
e6700 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a etNamespaces().as.$namespace).{.
e6720 69 66 20 28 21 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 20 26 26 20 41 70 70 6c if.(!$describedNamespace.&&.Appl
e6740 69 63 61 74 69 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e 3a 3a 47 4c 4f 42 41 4c 5f 4e 41 4d 45 53 icationDescription::GLOBAL_NAMES
e6760 50 41 43 45 20 21 3d 3d 20 24 6e 61 6d 65 73 70 61 63 65 5b 27 69 64 27 5d 29 20 7b 0a 24 74 68 PACE.!==.$namespace['id']).{.$th
e6780 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 is->writeText("\n");.$this->writ
e67a0 65 54 65 78 74 28 27 20 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 6e 61 6d 65 73 70 61 63 65 5b 27 69 eText('.<comment>'.$namespace['i
e67c0 64 27 5d 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a d'].'</comment>',.$options);.}..
e67e0 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 70 61 63 65 5b 27 63 6f 6d 6d 61 6e 64 73 27 5d 20 foreach.($namespace['commands'].
e6800 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e as.$name).{.$this->writeText("\n
e6820 22 29 3b 0a 24 73 70 61 63 69 6e 67 57 69 64 74 68 20 3d 20 24 77 69 64 74 68 20 2d 20 73 74 72 ");.$spacingWidth.=.$width.-.str
e6840 6c 65 6e 28 24 6e 61 6d 65 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 73 70 72 len($name);.$this->writeText(spr
e6860 69 6e 74 66 28 27 20 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 25 73 25 73 27 2c 20 24 6e intf('..<info>%s</info>%s%s',.$n
e6880 61 6d 65 2c 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 73 70 61 63 69 6e 67 57 69 64 ame,.str_repeat('.',.$spacingWid
e68a0 74 68 29 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 28 24 6e th),.$description->getCommand($n
e68c0 61 6d 65 29 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 2c 20 24 6f 70 74 69 6f 6e ame)->getDescription()),.$option
e68e0 73 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b s);.}.}..$this->writeText("\n");
e6900 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 54 .}.}.....private.function.writeT
e6920 65 78 74 28 24 63 6f 6e 74 65 6e 74 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 ext($content,.array.$options.=.a
e6940 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 0a 69 73 73 65 74 28 24 6f rray()).{.$this->write(.isset($o
e6960 70 74 69 6f 6e 73 5b 27 72 61 77 5f 74 65 78 74 27 5d 29 20 26 26 20 24 6f 70 74 69 6f 6e 73 5b ptions['raw_text']).&&.$options[
e6980 27 72 61 77 5f 74 65 78 74 27 5d 20 3f 20 73 74 72 69 70 5f 74 61 67 73 28 24 63 6f 6e 74 65 6e 'raw_text'].?.strip_tags($conten
e69a0 74 29 20 3a 20 24 63 6f 6e 74 65 6e 74 2c 0a 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 72 t).:.$content,.isset($options['r
e69c0 61 77 5f 6f 75 74 70 75 74 27 5d 29 20 3f 20 21 24 6f 70 74 69 6f 6e 73 5b 27 72 61 77 5f 6f 75 aw_output']).?.!$options['raw_ou
e69e0 74 70 75 74 27 5d 20 3a 20 74 72 75 65 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 tput'].:.true.);.}.........priva
e6a00 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 44 65 66 61 75 6c 74 56 61 6c 75 65 28 24 te.function.formatDefaultValue($
e6a20 64 65 66 61 75 6c 74 29 0a 7b 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 default).{.if.(PHP_VERSION_ID.<.
e6a40 35 30 34 30 30 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 50400).{.return.str_replace(arra
e6a60 79 28 27 5c 2f 27 2c 20 27 5c 5c 5c 5c 27 29 2c 20 61 72 72 61 79 28 27 2f 27 2c 20 27 5c 5c 27 y('\/',.'\\\\'),.array('/',.'\\'
e6a80 29 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 65 66 61 75 6c 74 29 29 3b 0a 7d 0a 0a 72 65 ),.json_encode($default));.}..re
e6aa0 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 5c 5c 27 2c 20 27 5c 5c 27 2c 20 6a turn.str_replace('\\\\',.'\\',.j
e6ac0 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 65 66 61 75 6c 74 2c 20 4a 53 4f 4e 5f 55 4e 45 53 43 41 son_encode($default,.JSON_UNESCA
e6ae0 50 45 44 5f 53 4c 41 53 48 45 53 20 7c 20 4a 53 4f 4e 5f 55 4e 45 53 43 41 50 45 44 5f 55 4e 49 PED_SLASHES.|.JSON_UNESCAPED_UNI
e6b00 43 4f 44 45 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e CODE));.}.......private.function
e6b20 20 67 65 74 43 6f 6c 75 6d 6e 57 69 64 74 68 28 61 72 72 61 79 20 24 63 6f 6d 6d 61 6e 64 73 29 .getColumnWidth(array.$commands)
e6b40 0a 7b 0a 24 77 69 64 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 .{.$widths.=.array();..foreach.(
e6b60 24 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 77 69 64 74 68 73 $commands.as.$command).{.$widths
e6b80 5b 5d 20 3d 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 [].=.strlen($command->getName())
e6ba0 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 ;.foreach.($command->getAliases(
e6bc0 29 20 61 73 20 24 61 6c 69 61 73 29 20 7b 0a 24 77 69 64 74 68 73 5b 5d 20 3d 20 73 74 72 6c 65 ).as.$alias).{.$widths[].=.strle
e6be0 6e 28 24 61 6c 69 61 73 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6d 61 78 28 24 77 69 64 74 n($alias);.}.}..return.max($widt
e6c00 68 73 29 20 2b 20 32 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f hs).+.2;.}.......private.functio
e6c20 6e 20 63 61 6c 63 75 6c 61 74 65 54 6f 74 61 6c 57 69 64 74 68 46 6f 72 4f 70 74 69 6f 6e 73 28 n.calculateTotalWidthForOptions(
e6c40 24 6f 70 74 69 6f 6e 73 29 0a 7b 0a 24 74 6f 74 61 6c 57 69 64 74 68 20 3d 20 30 3b 0a 66 6f 72 $options).{.$totalWidth.=.0;.for
e6c60 65 61 63 68 20 28 24 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 0a 20 24 each.($options.as.$option).{...$
e6c80 6e 61 6d 65 4c 65 6e 67 74 68 20 3d 20 31 20 2b 20 6d 61 78 28 73 74 72 6c 65 6e 28 24 6f 70 74 nameLength.=.1.+.max(strlen($opt
e6ca0 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 2c 20 31 29 20 2b 20 34 20 2b 20 73 74 ion->getShortcut()),.1).+.4.+.st
e6cc0 72 6c 65 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 0a 69 66 20 28 24 rlen($option->getName());..if.($
e6ce0 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 24 76 61 6c 75 65 4c option->acceptValue()).{.$valueL
e6d00 65 6e 67 74 68 20 3d 20 31 20 2b 20 73 74 72 6c 65 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e ength.=.1.+.strlen($option->getN
e6d20 61 6d 65 28 29 29 3b 20 0a 20 24 76 61 6c 75 65 4c 65 6e 67 74 68 20 2b 3d 20 24 6f 70 74 69 6f ame());...$valueLength.+=.$optio
e6d40 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 20 3f 20 32 20 3a 20 30 3b 20 0a 0a n->isValueOptional().?.2.:.0;...
e6d60 24 6e 61 6d 65 4c 65 6e 67 74 68 20 2b 3d 20 24 76 61 6c 75 65 4c 65 6e 67 74 68 3b 0a 7d 0a 24 $nameLength.+=.$valueLength;.}.$
e6d80 74 6f 74 61 6c 57 69 64 74 68 20 3d 20 6d 61 78 28 24 74 6f 74 61 6c 57 69 64 74 68 2c 20 24 6e totalWidth.=.max($totalWidth,.$n
e6da0 61 6d 65 4c 65 6e 67 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 74 61 6c 57 69 64 74 ameLength);.}..return.$totalWidt
e6dc0 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 h;.}.}.<?php...........namespace
e6de0 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 .Symfony\Component\Console\Descr
e6e00 69 70 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f iptor;..use.Symfony\Component\Co
e6e20 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 nsole\Application;.use.Symfony\C
e6e40 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 omponent\Console\Command\Command
e6e60 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c ;.use.Symfony\Component\Console\
e6e80 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 Input\InputArgument;.use.Symfony
e6ea0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 44 65 \Component\Console\Input\InputDe
e6ec0 66 69 6e 69 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c finition;.use.Symfony\Component\
e6ee0 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a Console\Input\InputOption;......
e6f00 0a 0a 0a 63 6c 61 73 73 20 58 6d 6c 44 65 73 63 72 69 70 74 6f 72 20 65 78 74 65 6e 64 73 20 44 ...class.XmlDescriptor.extends.D
e6f20 65 73 63 72 69 70 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e escriptor.{......public.function
e6f40 20 67 65 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 49 6e 70 75 .getInputDefinitionDocument(Inpu
e6f60 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 0a 7b 0a 24 64 6f 6d 20 tDefinition.$definition).{.$dom.
e6f80 3d 20 6e 65 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 2e 30 27 2c 20 27 55 54 46 2d 38 =.new.\DOMDocument('1.0',.'UTF-8
e6fa0 27 29 3b 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 66 69 6e 69 74 69 6f ');.$dom->appendChild($definitio
e6fc0 6e 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 66 69 nXML.=.$dom->createElement('defi
e6fe0 6e 69 74 69 6f 6e 27 29 29 3b 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 nition'));..$definitionXML->appe
e7000 6e 64 43 68 69 6c 64 28 24 61 72 67 75 6d 65 6e 74 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 ndChild($argumentsXML.=.$dom->cr
e7020 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 61 72 67 75 6d 65 6e 74 73 27 29 29 3b 0a 66 6f 72 65 61 eateElement('arguments'));.forea
e7040 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 ch.($definition->getArguments().
e7060 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 61 70 70 65 6e 64 44 6f 63 as.$argument).{.$this->appendDoc
e7080 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 73 58 4d 4c 2c 20 24 74 68 69 73 2d 3e 67 65 74 49 ument($argumentsXML,.$this->getI
e70a0 6e 70 75 74 41 72 67 75 6d 65 6e 74 44 6f 63 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 29 nputArgumentDocument($argument))
e70c0 3b 0a 7d 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 ;.}..$definitionXML->appendChild
e70e0 28 24 6f 70 74 69 6f 6e 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 ($optionsXML.=.$dom->createEleme
e7100 6e 74 28 27 6f 70 74 69 6f 6e 73 27 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 nt('options'));.foreach.($defini
e7120 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b tion->getOptions().as.$option).{
e7140 0a 24 74 68 69 73 2d 3e 61 70 70 65 6e 64 44 6f 63 75 6d 65 6e 74 28 24 6f 70 74 69 6f 6e 73 58 .$this->appendDocument($optionsX
e7160 4d 4c 2c 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 4f 70 74 69 6f 6e 44 6f 63 75 6d 65 6e ML,.$this->getInputOptionDocumen
e7180 74 28 24 6f 70 74 69 6f 6e 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 6f 6d 3b 0a 7d 0a 0a t($option));.}..return.$dom;.}..
e71a0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 44 .....public.function.getCommandD
e71c0 6f 63 75 6d 65 6e 74 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 64 6f 6d ocument(Command.$command).{.$dom
e71e0 20 3d 20 6e 65 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 2e 30 27 2c 20 27 55 54 46 2d .=.new.\DOMDocument('1.0',.'UTF-
e7200 38 27 29 3b 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 63 6f 6d 6d 61 6e 64 58 8');.$dom->appendChild($commandX
e7220 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e ML.=.$dom->createElement('comman
e7240 64 27 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 3b 0a d'));..$command->getSynopsis();.
e7260 24 63 6f 6d 6d 61 6e 64 2d 3e 6d 65 72 67 65 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 $command->mergeApplicationDefini
e7280 74 69 6f 6e 28 66 61 6c 73 65 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 73 65 74 41 74 tion(false);..$commandXML->setAt
e72a0 74 72 69 62 75 74 65 28 27 69 64 27 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 tribute('id',.$command->getName(
e72c0 29 29 3b 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 6e ));.$commandXML->setAttribute('n
e72e0 61 6d 65 27 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 0a 24 63 6f ame',.$command->getName());..$co
e7300 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 75 73 61 67 65 73 58 4d 4c mmandXML->appendChild($usagesXML
e7320 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 75 73 61 67 65 73 27 29 .=.$dom->createElement('usages')
e7340 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 );..foreach.(array_merge(array($
e7360 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 29 2c 20 24 63 6f 6d 6d 61 6e command->getSynopsis()),.$comman
e7380 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 55 73 d->getAliases(),.$command->getUs
e73a0 61 67 65 73 28 29 29 20 61 73 20 24 75 73 61 67 65 29 20 7b 0a 24 75 73 61 67 65 73 58 4d 4c 2d ages()).as.$usage).{.$usagesXML-
e73c0 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 >appendChild($dom->createElement
e73e0 28 27 75 73 61 67 65 27 2c 20 24 75 73 61 67 65 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 58 ('usage',.$usage));.}..$commandX
e7400 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 73 63 72 69 70 74 69 6f 6e 58 4d 4c 20 ML->appendChild($descriptionXML.
e7420 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 73 63 72 69 70 74 69 =.$dom->createElement('descripti
e7440 6f 6e 27 29 29 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 on'));.$descriptionXML->appendCh
e7460 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 73 74 72 5f 72 65 70 ild($dom->createTextNode(str_rep
e7480 6c 61 63 65 28 22 5c 6e 22 2c 20 22 5c 6e 20 22 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 lace("\n",."\n.",.$command->getD
e74a0 65 73 63 72 69 70 74 69 6f 6e 28 29 29 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 escription())));..$commandXML->a
e74c0 70 70 65 6e 64 43 68 69 6c 64 28 24 68 65 6c 70 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 ppendChild($helpXML.=.$dom->crea
e74e0 74 65 45 6c 65 6d 65 6e 74 28 27 68 65 6c 70 27 29 29 3b 0a 24 68 65 6c 70 58 4d 4c 2d 3e 61 70 teElement('help'));.$helpXML->ap
e7500 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 73 pendChild($dom->createTextNode(s
e7520 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 22 5c 6e 20 22 2c 20 24 63 6f 6d 6d 61 6e 64 tr_replace("\n",."\n.",.$command
e7540 2d 3e 67 65 74 50 72 6f 63 65 73 73 65 64 48 65 6c 70 28 29 29 29 29 3b 0a 0a 24 64 65 66 69 6e ->getProcessedHelp())));..$defin
e7560 69 74 69 6f 6e 58 4d 4c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 44 65 66 69 6e 69 itionXML.=.$this->getInputDefini
e7580 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 74 69 76 65 tionDocument($command->getNative
e75a0 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 3b 0a 24 74 68 69 73 2d 3e 61 70 70 65 6e 64 44 6f 63 75 Definition());.$this->appendDocu
e75c0 6d 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e 58 4d 4c ment($commandXML,.$definitionXML
e75e0 2d 3e 67 65 74 45 6c 65 6d 65 6e 74 73 42 79 54 61 67 4e 61 6d 65 28 27 64 65 66 69 6e 69 74 69 ->getElementsByTagName('definiti
e7600 6f 6e 27 29 2d 3e 69 74 65 6d 28 30 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 6f 6d 3b 0a 7d 0a on')->item(0));..return.$dom;.}.
e7620 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 70 70 6c 69 63 .......public.function.getApplic
e7640 61 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 41 70 70 6c 69 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 ationDocument(Application.$appli
e7660 63 61 74 69 6f 6e 2c 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 64 6f cation,.$namespace.=.null).{.$do
e7680 6d 20 3d 20 6e 65 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 2e 30 27 2c 20 27 55 54 46 m.=.new.\DOMDocument('1.0',.'UTF
e76a0 2d 38 27 29 3b 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 72 6f 6f 74 58 6d 6c -8');.$dom->appendChild($rootXml
e76c0 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 73 79 6d 66 6f 6e 79 27 .=.$dom->createElement('symfony'
e76e0 29 29 3b 0a 0a 69 66 20 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 ));..if.($application->getName()
e7700 20 21 3d 3d 20 27 55 4e 4b 4e 4f 57 4e 27 29 20 7b 0a 24 72 6f 6f 74 58 6d 6c 2d 3e 73 65 74 41 .!==.'UNKNOWN').{.$rootXml->setA
e7720 74 74 72 69 62 75 74 65 28 27 6e 61 6d 65 27 2c 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 ttribute('name',.$application->g
e7740 65 74 4e 61 6d 65 28 29 29 3b 0a 69 66 20 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 etName());.if.($application->get
e7760 56 65 72 73 69 6f 6e 28 29 20 21 3d 3d 20 27 55 4e 4b 4e 4f 57 4e 27 29 20 7b 0a 24 72 6f 6f 74 Version().!==.'UNKNOWN').{.$root
e7780 58 6d 6c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 76 65 72 73 69 6f 6e 27 2c 20 24 61 70 Xml->setAttribute('version',.$ap
e77a0 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 7d 0a 7d 0a 0a 24 plication->getVersion());.}.}..$
e77c0 72 6f 6f 74 58 6d 6c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 63 6f 6d 6d 61 6e 64 73 58 4d rootXml->appendChild($commandsXM
e77e0 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 L.=.$dom->createElement('command
e7800 73 27 29 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 6e 65 77 20 41 70 70 6c 69 63 s'));..$description.=.new.Applic
e7820 61 74 69 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 24 ationDescription($application,.$
e7840 6e 61 6d 65 73 70 61 63 65 29 3b 0a 0a 69 66 20 28 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a 24 namespace);..if.($namespace).{.$
e7860 63 6f 6d 6d 61 6e 64 73 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 6e 61 6d 65 73 commandsXML->setAttribute('names
e7880 70 61 63 65 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 pace',.$namespace);.}..foreach.(
e78a0 24 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 73 28 29 20 61 73 20 24 $description->getCommands().as.$
e78c0 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 61 70 70 65 6e 64 44 6f 63 75 6d 65 6e 74 command).{.$this->appendDocument
e78e0 28 24 63 6f 6d 6d 61 6e 64 73 58 4d 4c 2c 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 ($commandsXML,.$this->getCommand
e7900 44 6f 63 75 6d 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 6e 61 Document($command));.}..if.(!$na
e7920 6d 65 73 70 61 63 65 29 20 7b 0a 24 72 6f 6f 74 58 6d 6c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 mespace).{.$rootXml->appendChild
e7940 28 24 6e 61 6d 65 73 70 61 63 65 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c ($namespacesXML.=.$dom->createEl
e7960 65 6d 65 6e 74 28 27 6e 61 6d 65 73 70 61 63 65 73 27 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 ement('namespaces'));..foreach.(
e7980 24 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 20 61 73 $description->getNamespaces().as
e79a0 20 24 6e 61 6d 65 73 70 61 63 65 44 65 73 63 72 69 70 74 69 6f 6e 29 20 7b 0a 24 6e 61 6d 65 73 .$namespaceDescription).{.$names
e79c0 70 61 63 65 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 6e 61 6d 65 73 70 61 63 65 pacesXML->appendChild($namespace
e79e0 41 72 72 61 79 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 ArrayXML.=.$dom->createElement('
e7a00 6e 61 6d 65 73 70 61 63 65 27 29 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 41 72 72 61 79 58 4d 4c namespace'));.$namespaceArrayXML
e7a20 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 64 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 44 ->setAttribute('id',.$namespaceD
e7a40 65 73 63 72 69 70 74 69 6f 6e 5b 27 69 64 27 5d 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 escription['id']);..foreach.($na
e7a60 6d 65 73 70 61 63 65 44 65 73 63 72 69 70 74 69 6f 6e 5b 27 63 6f 6d 6d 61 6e 64 73 27 5d 20 61 mespaceDescription['commands'].a
e7a80 73 20 24 6e 61 6d 65 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 41 72 72 61 79 58 4d 4c 2d 3e 61 s.$name).{.$namespaceArrayXML->a
e7aa0 70 70 65 6e 64 43 68 69 6c 64 28 24 63 6f 6d 6d 61 6e 64 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 ppendChild($commandXML.=.$dom->c
e7ac0 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 29 29 3b 0a 24 63 6f 6d 6d 61 reateElement('command'));.$comma
e7ae0 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 54 ndXML->appendChild($dom->createT
e7b00 65 78 74 4e 6f 64 65 28 24 6e 61 6d 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 extNode($name));.}.}.}..return.$
e7b20 64 6f 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 dom;.}.....protected.function.de
e7b40 73 63 72 69 62 65 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 49 6e 70 75 74 41 72 67 75 6d 65 6e scribeInputArgument(InputArgumen
e7b60 74 20 24 61 72 67 75 6d 65 6e 74 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 t.$argument,.array.$options.=.ar
e7b80 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 6f 63 75 6d 65 6e 74 28 24 74 ray()).{.$this->writeDocument($t
e7ba0 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 44 6f 63 75 6d 65 6e 74 28 24 61 his->getInputArgumentDocument($a
e7bc0 72 67 75 6d 65 6e 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 rgument));.}.....protected.funct
e7be0 69 6f 6e 20 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 49 6e 70 75 74 4f 70 74 ion.describeInputOption(InputOpt
e7c00 69 6f 6e 20 24 6f 70 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 ion.$option,.array.$options.=.ar
e7c20 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 6f 63 75 6d 65 6e 74 28 24 74 ray()).{.$this->writeDocument($t
e7c40 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 4f 70 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 6f 70 74 his->getInputOptionDocument($opt
e7c60 69 6f 6e 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 ion));.}.....protected.function.
e7c80 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 49 6e 70 75 74 44 65 66 describeInputDefinition(InputDef
e7ca0 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 inition.$definition,.array.$opti
e7cc0 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 6f 63 ons.=.array()).{.$this->writeDoc
e7ce0 75 6d 65 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 44 ument($this->getInputDefinitionD
e7d00 6f 63 75 6d 65 6e 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f ocument($definition));.}.....pro
e7d20 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 43 6f 6d 6d 61 6e 64 28 tected.function.describeCommand(
e7d40 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 Command.$command,.array.$options
e7d60 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 6f 63 75 6d 65 .=.array()).{.$this->writeDocume
e7d80 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 44 6f 63 75 6d 65 6e 74 28 24 63 6f nt($this->getCommandDocument($co
e7da0 6d 6d 61 6e 64 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f mmand));.}.....protected.functio
e7dc0 6e 20 64 65 73 63 72 69 62 65 41 70 70 6c 69 63 61 74 69 6f 6e 28 41 70 70 6c 69 63 61 74 69 6f n.describeApplication(Applicatio
e7de0 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d n.$application,.array.$options.=
e7e00 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 6f 63 75 6d 65 6e 74 .array()).{.$this->writeDocument
e7e20 28 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 ($this->getApplicationDocument($
e7e40 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 6e 61 6d application,.isset($options['nam
e7e60 65 73 70 61 63 65 27 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 6e 61 6d 65 73 70 61 63 65 27 espace']).?.$options['namespace'
e7e80 5d 20 3a 20 6e 75 6c 6c 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e ].:.null));.}........private.fun
e7ea0 63 74 69 6f 6e 20 61 70 70 65 6e 64 44 6f 63 75 6d 65 6e 74 28 5c 44 4f 4d 4e 6f 64 65 20 24 70 ction.appendDocument(\DOMNode.$p
e7ec0 61 72 65 6e 74 4e 6f 64 65 2c 20 5c 44 4f 4d 4e 6f 64 65 20 24 69 6d 70 6f 72 74 65 64 50 61 72 arentNode,.\DOMNode.$importedPar
e7ee0 65 6e 74 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 69 6d 70 6f 72 74 65 64 50 61 72 65 6e 74 2d ent).{.foreach.($importedParent-
e7f00 3e 63 68 69 6c 64 4e 6f 64 65 73 20 61 73 20 24 63 68 69 6c 64 4e 6f 64 65 29 20 7b 0a 24 70 61 >childNodes.as.$childNode).{.$pa
e7f20 72 65 6e 74 4e 6f 64 65 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 70 61 72 65 6e 74 4e 6f 64 rentNode->appendChild($parentNod
e7f40 65 2d 3e 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 74 2d 3e 69 6d 70 6f 72 74 4e 6f 64 65 28 24 63 68 e->ownerDocument->importNode($ch
e7f60 69 6c 64 4e 6f 64 65 2c 20 74 72 75 65 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 ildNode,.true));.}.}.........pri
e7f80 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 44 6f 63 75 6d 65 6e 74 28 5c 44 4f 4d vate.function.writeDocument(\DOM
e7fa0 44 6f 63 75 6d 65 6e 74 20 24 64 6f 6d 29 0a 7b 0a 24 64 6f 6d 2d 3e 66 6f 72 6d 61 74 4f 75 74 Document.$dom).{.$dom->formatOut
e7fc0 70 75 74 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 24 64 6f 6d 2d 3e 73 put.=.true;.$this->write($dom->s
e7fe0 61 76 65 58 4d 4c 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 aveXML());.}.......private.funct
e8000 69 6f 6e 20 67 65 74 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 44 6f 63 75 6d 65 6e 74 28 49 6e 70 ion.getInputArgumentDocument(Inp
e8020 75 74 41 72 67 75 6d 65 6e 74 20 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 24 64 6f 6d 20 3d 20 6e utArgument.$argument).{.$dom.=.n
e8040 65 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 2e 30 27 2c 20 27 55 54 46 2d 38 27 29 3b ew.\DOMDocument('1.0',.'UTF-8');
e8060 0a 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 6f 62 6a 65 63 74 58 4d 4c 20 3d ..$dom->appendChild($objectXML.=
e8080 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 61 72 67 75 6d 65 6e 74 27 29 .$dom->createElement('argument')
e80a0 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 6e 61 6d );.$objectXML->setAttribute('nam
e80c0 65 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 24 6f 62 6a 65 e',.$argument->getName());.$obje
e80e0 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 73 5f 72 65 71 75 69 72 65 64 ctXML->setAttribute('is_required
e8100 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 20 3f 20 31 20 3a ',.$argument->isRequired().?.1.:
e8120 20 30 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 .0);.$objectXML->setAttribute('i
e8140 73 5f 61 72 72 61 79 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 20 3f s_array',.$argument->isArray().?
e8160 20 31 20 3a 20 30 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 .1.:.0);.$objectXML->appendChild
e8180 28 24 64 65 73 63 72 69 70 74 69 6f 6e 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 ($descriptionXML.=.$dom->createE
e81a0 6c 65 6d 65 6e 74 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 29 29 3b 0a 24 64 65 73 63 72 69 70 lement('description'));.$descrip
e81c0 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 tionXML->appendChild($dom->creat
e81e0 65 54 65 78 74 4e 6f 64 65 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 73 63 72 69 70 74 eTextNode($argument->getDescript
e8200 69 6f 6e 28 29 29 29 3b 0a 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c ion()));..$objectXML->appendChil
e8220 64 28 24 64 65 66 61 75 6c 74 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 d($defaultsXML.=.$dom->createEle
e8240 6d 65 6e 74 28 27 64 65 66 61 75 6c 74 73 27 29 29 3b 0a 24 64 65 66 61 75 6c 74 73 20 3d 20 69 ment('defaults'));.$defaults.=.i
e8260 73 5f 61 72 72 61 79 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 s_array($argument->getDefault())
e8280 20 3f 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3a 20 28 69 73 .?.$argument->getDefault().:.(is
e82a0 5f 62 6f 6f 6c 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 3f _bool($argument->getDefault()).?
e82c0 20 61 72 72 61 79 28 76 61 72 5f 65 78 70 6f 72 74 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 .array(var_export($argument->get
e82e0 44 65 66 61 75 6c 74 28 29 2c 20 74 72 75 65 29 29 20 3a 20 28 24 61 72 67 75 6d 65 6e 74 2d 3e Default(),.true)).:.($argument->
e8300 67 65 74 44 65 66 61 75 6c 74 28 29 20 3f 20 61 72 72 61 79 28 24 61 72 67 75 6d 65 6e 74 2d 3e getDefault().?.array($argument->
e8320 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 3a 20 61 72 72 61 79 28 29 29 29 3b 0a 66 6f 72 65 61 getDefault()).:.array()));.forea
e8340 63 68 20 28 24 64 65 66 61 75 6c 74 73 20 61 73 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 24 64 65 ch.($defaults.as.$default).{.$de
e8360 66 61 75 6c 74 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 66 61 75 6c 74 58 faultsXML->appendChild($defaultX
e8380 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 66 61 75 6c ML.=.$dom->createElement('defaul
e83a0 74 27 29 29 3b 0a 24 64 65 66 61 75 6c 74 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 t'));.$defaultXML->appendChild($
e83c0 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 64 65 66 61 75 6c 74 29 29 3b 0a dom->createTextNode($default));.
e83e0 7d 0a 0a 72 65 74 75 72 6e 20 24 64 6f 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 }..return.$dom;.}.......private.
e8400 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 4f 70 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 function.getInputOptionDocument(
e8420 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 29 0a 7b 0a 24 64 6f 6d 20 3d 20 6e 65 InputOption.$option).{.$dom.=.ne
e8440 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 2e 30 27 2c 20 27 55 54 46 2d 38 27 29 3b 0a w.\DOMDocument('1.0',.'UTF-8');.
e8460 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 6f 62 6a 65 63 74 58 4d 4c 20 3d 20 .$dom->appendChild($objectXML.=.
e8480 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 6f 70 74 69 6f 6e 27 29 29 3b 0a $dom->createElement('option'));.
e84a0 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 6e 61 6d 65 27 2c $objectXML->setAttribute('name',
e84c0 20 27 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 24 70 6f 73 20 .'--'.$option->getName());.$pos.
e84e0 3d 20 73 74 72 70 6f 73 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 2c =.strpos($option->getShortcut(),
e8500 20 27 7c 27 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 29 20 7b 0a 24 6f 62 .'|');.if.(false.!==.$pos).{.$ob
e8520 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 73 68 6f 72 74 63 75 74 27 jectXML->setAttribute('shortcut'
e8540 2c 20 27 2d 27 2e 73 75 62 73 74 72 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 ,.'-'.substr($option->getShortcu
e8560 74 28 29 2c 20 30 2c 20 24 70 6f 73 29 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 t(),.0,.$pos));.$objectXML->setA
e8580 74 74 72 69 62 75 74 65 28 27 73 68 6f 72 74 63 75 74 73 27 2c 20 27 2d 27 2e 69 6d 70 6c 6f 64 ttribute('shortcuts',.'-'.implod
e85a0 65 28 27 7c 2d 27 2c 20 65 78 70 6c 6f 64 65 28 27 7c 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 e('|-',.explode('|',.$option->ge
e85c0 74 53 68 6f 72 74 63 75 74 28 29 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 62 6a 65 63 74 tShortcut())));.}.else.{.$object
e85e0 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 73 68 6f 72 74 63 75 74 27 2c 20 24 6f XML->setAttribute('shortcut',.$o
e8600 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3f 20 27 2d 27 2e 24 6f 70 74 69 ption->getShortcut().?.'-'.$opti
e8620 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3a 20 27 27 29 3b 0a 7d 0a 24 6f 62 6a 65 on->getShortcut().:.'');.}.$obje
e8640 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 61 63 63 65 70 74 5f 76 61 6c 75 ctXML->setAttribute('accept_valu
e8660 65 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 20 3f 20 31 20 3a e',.$option->acceptValue().?.1.:
e8680 20 30 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 .0);.$objectXML->setAttribute('i
e86a0 73 5f 76 61 6c 75 65 5f 72 65 71 75 69 72 65 64 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 s_value_required',.$option->isVa
e86c0 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 3f 20 31 20 3a 20 30 29 3b 0a 24 6f 62 6a 65 63 74 58 lueRequired().?.1.:.0);.$objectX
e86e0 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 73 5f 6d 75 6c 74 69 70 6c 65 27 2c 20 ML->setAttribute('is_multiple',.
e8700 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 31 20 3a 20 30 29 3b 0a 24 6f 62 $option->isArray().?.1.:.0);.$ob
e8720 6a 65 63 74 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 73 63 72 69 70 74 69 6f jectXML->appendChild($descriptio
e8740 6e 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 73 63 nXML.=.$dom->createElement('desc
e8760 72 69 70 74 69 6f 6e 27 29 29 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 ription'));.$descriptionXML->app
e8780 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 6f endChild($dom->createTextNode($o
e87a0 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 29 3b 0a 0a 69 66 20 28 ption->getDescription()));..if.(
e87c0 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 24 64 65 66 61 75 $option->acceptValue()).{.$defau
e87e0 6c 74 73 20 3d 20 69 73 5f 61 72 72 61 79 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 lts.=.is_array($option->getDefau
e8800 6c 74 28 29 29 20 3f 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3a 20 lt()).?.$option->getDefault().:.
e8820 28 69 73 5f 62 6f 6f 6c 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 (is_bool($option->getDefault()).
e8840 3f 20 61 72 72 61 79 28 76 61 72 5f 65 78 70 6f 72 74 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 ?.array(var_export($option->getD
e8860 65 66 61 75 6c 74 28 29 2c 20 74 72 75 65 29 29 20 3a 20 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 efault(),.true)).:.($option->get
e8880 44 65 66 61 75 6c 74 28 29 20 3f 20 61 72 72 61 79 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 Default().?.array($option->getDe
e88a0 66 61 75 6c 74 28 29 29 20 3a 20 61 72 72 61 79 28 29 29 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c fault()).:.array()));.$objectXML
e88c0 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 66 61 75 6c 74 73 58 4d 4c 20 3d 20 24 64 6f ->appendChild($defaultsXML.=.$do
e88e0 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 66 61 75 6c 74 73 27 29 29 3b 0a 0a m->createElement('defaults'));..
e8900 69 66 20 28 21 65 6d 70 74 79 28 24 64 65 66 61 75 6c 74 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 if.(!empty($defaults)).{.foreach
e8920 20 28 24 64 65 66 61 75 6c 74 73 20 61 73 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 24 64 65 66 61 .($defaults.as.$default).{.$defa
e8940 75 6c 74 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 66 61 75 6c 74 58 4d 4c ultsXML->appendChild($defaultXML
e8960 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 66 61 75 6c 74 27 .=.$dom->createElement('default'
e8980 29 29 3b 0a 24 64 65 66 61 75 6c 74 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f ));.$defaultXML->appendChild($do
e89a0 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 64 65 66 61 75 6c 74 29 29 3b 0a 7d 0a m->createTextNode($default));.}.
e89c0 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 6f 6d 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a }.}..return.$dom;.}.}.<?php.....
e89e0 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e ......namespace.Symfony\Componen
e8a00 74 5c 43 6f 6e 73 6f 6c 65 5c 45 76 65 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e t\Console\Event;.......class.Con
e8a20 73 6f 6c 65 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 6f 6c 65 soleCommandEvent.extends.Console
e8a40 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 63 6f 6e 73 74 20 52 45 54 55 52 4e 5f 43 4f 44 45 5f 44 49 53 Event.{....const.RETURN_CODE_DIS
e8a60 41 42 4c 45 44 20 3d 20 31 31 33 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d ABLED.=.113;.......private.$comm
e8a80 61 6e 64 53 68 6f 75 6c 64 52 75 6e 20 3d 20 74 72 75 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 andShouldRun.=.true;.......publi
e8aa0 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 43 6f 6d 6d 61 6e 64 28 29 0a 7b 0a 72 65 c.function.disableCommand().{.re
e8ac0 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 53 68 6f 75 6c 64 52 75 6e 20 3d 20 66 turn.$this->commandShouldRun.=.f
e8ae0 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 6e alse;.}.......public.function.en
e8b00 61 62 6c 65 43 6f 6d 6d 61 6e 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f ableCommand().{.return.$this->co
e8b20 6d 6d 61 6e 64 53 68 6f 75 6c 64 52 75 6e 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 mmandShouldRun.=.true;.}.......p
e8b40 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 6d 61 6e 64 53 68 6f 75 6c 64 52 75 6e 28 ublic.function.commandShouldRun(
e8b60 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 53 68 6f 75 6c 64 52 ).{.return.$this->commandShouldR
e8b80 75 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 un;.}.}.<?php...........namespac
e8ba0 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 76 65 6e e.Symfony\Component\Console\Even
e8bc0 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c t;..use.Symfony\Component\Consol
e8be0 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 e\Command\Command;.use.Symfony\C
e8c00 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 omponent\Console\Input\InputInte
e8c20 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e rface;.use.Symfony\Component\Con
e8c40 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 sole\Output\OutputInterface;.use
e8c60 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 .Symfony\Component\EventDispatch
e8c80 65 72 5c 45 76 65 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 45 76 65 er\Event;.......class.ConsoleEve
e8ca0 6e 74 20 65 78 74 65 6e 64 73 20 45 76 65 6e 74 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f nt.extends.Event.{.protected.$co
e8cc0 6d 6d 61 6e 64 3b 0a 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 3b 0a 70 72 69 76 61 74 65 20 mmand;..private.$input;.private.
e8ce0 24 6f 75 74 70 75 74 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 $output;..public.function.__cons
e8d00 74 72 75 63 74 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 49 6e 70 75 74 49 6e 74 truct(Command.$command,.InputInt
e8d20 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 erface.$input,.OutputInterface.$
e8d40 6f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d output).{.$this->command.=.$comm
e8d60 61 6e 64 3b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 24 74 68 69 and;.$this->input.=.$input;.$thi
e8d80 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 s->output.=.$output;.}.......pub
e8da0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 28 29 0a 7b 0a 72 65 74 75 lic.function.getCommand().{.retu
e8dc0 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 rn.$this->command;.}.......publi
e8de0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 c.function.getInput().{.return.$
e8e00 74 68 69 73 2d 3e 69 6e 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 this->input;.}.......public.func
e8e20 74 69 6f 6e 20 67 65 74 4f 75 74 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d tion.getOutput().{.return.$this-
e8e40 3e 6f 75 74 70 75 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d >output;.}.}.<?php...........nam
e8e60 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 espace.Symfony\Component\Console
e8e80 5c 45 76 65 6e 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 \Event;..use.Symfony\Component\C
e8ea0 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 onsole\Command\Command;.use.Symf
e8ec0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 ony\Component\Console\Input\Inpu
e8ee0 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e tInterface;.use.Symfony\Componen
e8f00 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 t\Console\Output\OutputInterface
e8f20 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 45 78 63 65 70 74 69 6f 6e 45 76 ;.......class.ConsoleExceptionEv
e8f40 65 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 0a 7b 0a 70 72 69 76 61 ent.extends.ConsoleEvent.{.priva
e8f60 74 65 20 24 65 78 63 65 70 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 65 78 69 74 43 6f 64 65 te.$exception;.private.$exitCode
e8f80 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 43 ;..public.function.__construct(C
e8fa0 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 ommand.$command,.InputInterface.
e8fc0 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c $input,.OutputInterface.$output,
e8fe0 20 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f 6e 2c 20 24 65 78 69 74 43 6f 64 .\Exception.$exception,.$exitCod
e9000 65 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 63 6f 6d 6d 61 6e e).{.parent::__construct($comman
e9020 64 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 d,.$input,.$output);..$this->set
e9040 45 78 63 65 70 74 69 6f 6e 28 24 65 78 63 65 70 74 69 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 65 78 Exception($exception);.$this->ex
e9060 69 74 43 6f 64 65 20 3d 20 28 69 6e 74 29 20 24 65 78 69 74 43 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a itCode.=.(int).$exitCode;.}.....
e9080 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 63 65 70 74 69 6f 6e 28 29 ..public.function.getException()
e90a0 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a .{.return.$this->exception;.}...
e90c0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 78 63 65 70 74 69 ......public.function.setExcepti
e90e0 6f 6e 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 on(\Exception.$exception).{.$thi
e9100 73 2d 3e 65 78 63 65 70 74 69 6f 6e 20 3d 20 24 65 78 63 65 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a s->exception.=.$exception;.}....
e9120 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 69 74 43 6f 64 65 28 29 ...public.function.getExitCode()
e9140 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 69 74 43 6f 64 65 3b 0a 7d 0a 7d 0a 3c .{.return.$this->exitCode;.}.}.<
e9160 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 ?php...........namespace.Symfony
e9180 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 76 65 6e 74 3b 0a 0a 75 73 65 20 53 \Component\Console\Event;..use.S
e91a0 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 ymfony\Component\Console\Command
e91c0 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c \Command;.use.Symfony\Component\
e91e0 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 Console\Input\InputInterface;.us
e9200 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 e.Symfony\Component\Console\Outp
e9220 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 ut\OutputInterface;.......class.
e9240 43 6f 6e 73 6f 6c 65 54 65 72 6d 69 6e 61 74 65 45 76 65 6e 74 20 65 78 74 65 6e 64 73 20 43 6f ConsoleTerminateEvent.extends.Co
e9260 6e 73 6f 6c 65 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 65 78 69 74 43 nsoleEvent.{......private.$exitC
e9280 6f 64 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ode;..public.function.__construc
e92a0 74 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 49 6e 70 75 74 49 6e 74 65 72 66 61 t(Command.$command,.InputInterfa
e92c0 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 ce.$input,.OutputInterface.$outp
e92e0 75 74 2c 20 24 65 78 69 74 43 6f 64 65 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 ut,.$exitCode).{.parent::__const
e9300 72 75 63 74 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b ruct($command,.$input,.$output);
e9320 0a 0a 24 74 68 69 73 2d 3e 73 65 74 45 78 69 74 43 6f 64 65 28 24 65 78 69 74 43 6f 64 65 29 3b ..$this->setExitCode($exitCode);
e9340 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 78 69 74 .}.......public.function.setExit
e9360 43 6f 64 65 28 24 65 78 69 74 43 6f 64 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 78 69 74 43 6f 64 Code($exitCode).{.$this->exitCod
e9380 65 20 3d 20 28 69 6e 74 29 20 24 65 78 69 74 43 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 e.=.(int).$exitCode;.}.......pub
e93a0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 69 74 43 6f 64 65 28 29 0a 7b 0a 72 65 74 lic.function.getExitCode().{.ret
e93c0 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 69 74 43 6f 64 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a urn.$this->exitCode;.}.}.<?php..
e93e0 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f .........namespace.Symfony\Compo
e9400 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c nent\Console\Exception;.......cl
e9420 61 73 73 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 20 65 78 74 ass.CommandNotFoundException.ext
e9440 65 6e 64 73 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 20 69 ends.\InvalidArgumentException.i
e9460 6d 70 6c 65 6d 65 6e 74 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 mplements.ExceptionInterface.{.p
e9480 72 69 76 61 74 65 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 rivate.$alternatives;........pub
e94a0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 lic.function.__construct($messag
e94c0 65 2c 20 61 72 72 61 79 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 61 72 72 61 79 28 29 e,.array.$alternatives.=.array()
e94e0 2c 20 24 63 6f 64 65 20 3d 20 30 2c 20 5c 45 78 63 65 70 74 69 6f 6e 20 24 70 72 65 76 69 6f 75 ,.$code.=.0,.\Exception.$previou
e9500 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 s.=.null).{.parent::__construct(
e9520 24 6d 65 73 73 61 67 65 2c 20 24 63 6f 64 65 2c 20 24 70 72 65 76 69 6f 75 73 29 3b 0a 0a 24 74 $message,.$code,.$previous);..$t
e9540 68 69 73 2d 3e 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 24 61 6c 74 65 72 6e 61 74 69 76 65 his->alternatives.=.$alternative
e9560 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 74 65 s;.}.....public.function.getAlte
e9580 72 6e 61 74 69 76 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 74 65 72 rnatives().{.return.$this->alter
e95a0 6e 61 74 69 76 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d natives;.}.}.<?php...........nam
e95c0 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 espace.Symfony\Component\Console
e95e0 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 45 78 63 65 \Exception;.......interface.Exce
e9600 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a ptionInterface.{.}.<?php........
e9620 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 ...namespace.Symfony\Component\C
e9640 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 76 61 onsole\Exception;.....class.Inva
e9660 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 49 6e lidArgumentException.extends.\In
e9680 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 validArgumentException.implement
e96a0 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a s.ExceptionInterface.{.}.<?php..
e96c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f .........namespace.Symfony\Compo
e96e0 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c nent\Console\Exception;.......cl
e9700 61 73 73 20 49 6e 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e ass.InvalidOptionException.exten
e9720 64 73 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 20 69 6d 70 ds.\InvalidArgumentException.imp
e9740 6c 65 6d 65 6e 74 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c lements.ExceptionInterface.{.}.<
e9760 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 ?php...........namespace.Symfony
e9780 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a \Component\Console\Exception;...
e97a0 0a 0a 63 6c 61 73 73 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c ..class.LogicException.extends.\
e97c0 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 45 78 63 65 70 74 LogicException.implements.Except
e97e0 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ionInterface.{.}.<?php..........
e9800 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e .namespace.Symfony\Component\Con
e9820 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6e 74 69 6d sole\Exception;.....class.Runtim
e9840 65 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 eException.extends.\RuntimeExcep
e9860 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 tion.implements.ExceptionInterfa
e9880 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 ce.{.}.<?php...........namespace
e98a0 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 .Symfony\Component\Console\Forma
e98c0 74 74 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e tter;..use.Symfony\Component\Con
e98e0 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 sole\Exception\InvalidArgumentEx
e9900 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 ception;.......class.OutputForma
e9920 74 74 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 tter.implements.OutputFormatterI
e9940 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 64 65 63 6f 72 61 74 65 64 3b 0a 70 nterface.{.private.$decorated;.p
e9960 72 69 76 61 74 65 20 24 73 74 79 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 rivate.$styles.=.array();.privat
e9980 65 20 24 73 74 79 6c 65 53 74 61 63 6b 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 e.$styleStack;.........public.st
e99a0 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 73 63 61 70 65 28 24 74 65 78 74 29 0a 7b 0a 72 65 atic.function.escape($text).{.re
e99c0 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 28 5b 5e 5c 5c 5c 5c 5d 3f 29 3c 2f turn.preg_replace('/([^\\\\]?)</
e99e0 27 2c 20 27 24 31 5c 5c 3c 27 2c 20 24 74 65 78 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ',.'$1\\<',.$text);.}........pub
e9a00 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 64 65 63 6f 72 61 lic.function.__construct($decora
e9a20 74 65 64 20 3d 20 66 61 6c 73 65 2c 20 61 72 72 61 79 20 24 73 74 79 6c 65 73 20 3d 20 61 72 72 ted.=.false,.array.$styles.=.arr
e9a40 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 63 6f 72 61 74 65 64 20 3d 20 28 62 6f 6f 6c ay()).{.$this->decorated.=.(bool
e9a60 29 20 24 64 65 63 6f 72 61 74 65 64 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 53 74 79 6c 65 28 27 ).$decorated;..$this->setStyle('
e9a80 65 72 72 6f 72 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 error',.new.OutputFormatterStyle
e9aa0 28 27 77 68 69 74 65 27 2c 20 27 72 65 64 27 29 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 53 74 79 ('white',.'red'));.$this->setSty
e9ac0 6c 65 28 27 69 6e 66 6f 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 le('info',.new.OutputFormatterSt
e9ae0 79 6c 65 28 27 67 72 65 65 6e 27 29 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 53 74 79 6c 65 28 27 yle('green'));.$this->setStyle('
e9b00 63 6f 6d 6d 65 6e 74 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 comment',.new.OutputFormatterSty
e9b20 6c 65 28 27 79 65 6c 6c 6f 77 27 29 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 53 74 79 6c 65 28 27 le('yellow'));.$this->setStyle('
e9b40 71 75 65 73 74 69 6f 6e 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 question',.new.OutputFormatterSt
e9b60 79 6c 65 28 27 62 6c 61 63 6b 27 2c 20 27 63 79 61 6e 27 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 yle('black',.'cyan'));..foreach.
e9b80 28 24 73 74 79 6c 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 73 74 79 6c 65 29 20 7b 0a 24 ($styles.as.$name.=>.$style).{.$
e9ba0 74 68 69 73 2d 3e 73 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 2c 20 24 73 74 79 6c 65 29 3b 0a 7d this->setStyle($name,.$style);.}
e9bc0 0a 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 20 3d 20 6e 65 77 20 4f 75 74 70 75 74 ..$this->styleStack.=.new.Output
e9be0 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 53 74 61 63 6b 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 FormatterStyleStack();.}.......p
e9c00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 ublic.function.setDecorated($dec
e9c20 6f 72 61 74 65 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 63 6f 72 61 74 65 64 20 3d 20 28 62 6f orated).{.$this->decorated.=.(bo
e9c40 6f 6c 29 20 24 64 65 63 6f 72 61 74 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ol).$decorated;.}.......public.f
e9c60 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 unction.isDecorated().{.return.$
e9c80 74 68 69 73 2d 3e 64 65 63 6f 72 61 74 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 this->decorated;.}........public
e9ca0 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 2c 20 4f 75 74 70 75 74 .function.setStyle($name,.Output
e9cc0 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 20 24 73 74 79 6c 65 29 0a FormatterStyleInterface.$style).
e9ce0 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 {.$this->styles[strtolower($name
e9d00 29 5d 20 3d 20 24 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 )].=.$style;.}.........public.fu
e9d20 6e 63 74 69 6f 6e 20 68 61 73 53 74 79 6c 65 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 nction.hasStyle($name).{.return.
e9d40 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 isset($this->styles[strtolower($
e9d60 6e 61 6d 65 29 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 name)]);.}...........public.func
e9d80 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 tion.getStyle($name).{.if.(!$thi
e9da0 73 2d 3e 68 61 73 53 74 79 6c 65 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 s->hasStyle($name)).{.throw.new.
e9dc0 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 InvalidArgumentException(sprintf
e9de0 28 27 55 6e 64 65 66 69 6e 65 64 20 73 74 79 6c 65 3a 20 25 73 27 2c 20 24 6e 61 6d 65 29 29 3b ('Undefined.style:.%s',.$name));
e9e00 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 73 74 72 74 6f 6c 6f .}..return.$this->styles[strtolo
e9e20 77 65 72 28 24 6e 61 6d 65 29 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 wer($name)];.}.........public.fu
e9e40 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 6d 65 73 73 61 nction.format($message).{.$messa
e9e60 67 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6d 65 73 73 61 67 65 3b 0a 24 6f 66 66 73 65 74 20 ge.=.(string).$message;.$offset.
e9e80 3d 20 30 3b 0a 24 6f 75 74 70 75 74 20 3d 20 27 27 3b 0a 24 74 61 67 52 65 67 65 78 20 3d 20 27 =.0;.$output.=.'';.$tagRegex.=.'
e9ea0 5b 61 2d 7a 5d 5b 61 2d 7a 30 2d 39 5f 3d 3b 2d 5d 2a 27 3b 0a 70 72 65 67 5f 6d 61 74 63 68 5f [a-z][a-z0-9_=;-]*';.preg_match_
e9ec0 61 6c 6c 28 22 23 3c 28 28 24 74 61 67 52 65 67 65 78 29 20 7c 20 2f 28 24 74 61 67 52 65 67 65 all("#<(($tagRegex).|./($tagRege
e9ee0 78 29 3f 29 3e 23 69 78 22 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 6d 61 74 63 68 65 73 2c 20 50 x)?)>#ix",.$message,.$matches,.P
e9f00 52 45 47 5f 4f 46 46 53 45 54 5f 43 41 50 54 55 52 45 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d REG_OFFSET_CAPTURE);.foreach.($m
e9f20 61 74 63 68 65 73 5b 30 5d 20 61 73 20 24 69 20 3d 3e 20 24 6d 61 74 63 68 29 20 7b 0a 24 70 6f atches[0].as.$i.=>.$match).{.$po
e9f40 73 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 74 65 78 74 20 3d 20 24 6d 61 74 63 68 5b 30 5d s.=.$match[1];.$text.=.$match[0]
e9f60 3b 0a 0a 69 66 20 28 30 20 21 3d 20 24 70 6f 73 20 26 26 20 27 5c 5c 27 20 3d 3d 20 24 6d 65 73 ;..if.(0.!=.$pos.&&.'\\'.==.$mes
e9f80 73 61 67 65 5b 24 70 6f 73 20 2d 20 31 5d 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a sage[$pos.-.1]).{.continue;.}...
e9fa0 20 24 6f 75 74 70 75 74 20 2e 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 79 43 75 72 72 65 6e 74 53 .$output..=.$this->applyCurrentS
e9fc0 74 79 6c 65 28 73 75 62 73 74 72 28 24 6d 65 73 73 61 67 65 2c 20 24 6f 66 66 73 65 74 2c 20 24 tyle(substr($message,.$offset,.$
e9fe0 70 6f 73 20 2d 20 24 6f 66 66 73 65 74 29 29 3b 0a 24 6f 66 66 73 65 74 20 3d 20 24 70 6f 73 20 pos.-.$offset));.$offset.=.$pos.
ea000 2b 20 73 74 72 6c 65 6e 28 24 74 65 78 74 29 3b 0a 0a 0a 20 69 66 20 28 24 6f 70 65 6e 20 3d 20 +.strlen($text);....if.($open.=.
ea020 27 2f 27 20 21 3d 20 24 74 65 78 74 5b 31 5d 29 20 7b 0a 24 74 61 67 20 3d 20 24 6d 61 74 63 68 '/'.!=.$text[1]).{.$tag.=.$match
ea040 65 73 5b 31 5d 5b 24 69 5d 5b 30 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 61 67 20 3d 20 69 73 es[1][$i][0];.}.else.{.$tag.=.is
ea060 73 65 74 28 24 6d 61 74 63 68 65 73 5b 33 5d 5b 24 69 5d 5b 30 5d 29 20 3f 20 24 6d 61 74 63 68 set($matches[3][$i][0]).?.$match
ea080 65 73 5b 33 5d 5b 24 69 5d 5b 30 5d 20 3a 20 27 27 3b 0a 7d 0a 0a 69 66 20 28 21 24 6f 70 65 6e es[3][$i][0].:.'';.}..if.(!$open
ea0a0 20 26 26 20 21 24 74 61 67 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b .&&.!$tag).{...$this->styleStack
ea0c0 2d 3e 70 6f 70 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 73 74 ->pop();.}.elseif.(false.===.$st
ea0e0 79 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 53 74 79 6c 65 46 72 6f 6d 53 74 72 69 yle.=.$this->createStyleFromStri
ea100 6e 67 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 61 67 29 29 29 20 7b 0a 24 6f 75 74 70 75 74 20 ng(strtolower($tag))).{.$output.
ea120 2e 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 79 43 75 72 72 65 6e 74 53 74 79 6c 65 28 24 74 65 78 .=.$this->applyCurrentStyle($tex
ea140 74 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6f 70 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 t);.}.elseif.($open).{.$this->st
ea160 79 6c 65 53 74 61 63 6b 2d 3e 70 75 73 68 28 24 73 74 79 6c 65 29 3b 0a 7d 20 65 6c 73 65 20 7b yleStack->push($style);.}.else.{
ea180 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 2d 3e 70 6f 70 28 24 73 74 79 6c 65 29 3b .$this->styleStack->pop($style);
ea1a0 0a 7d 0a 7d 0a 0a 24 6f 75 74 70 75 74 20 2e 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 79 43 75 72 .}.}..$output..=.$this->applyCur
ea1c0 72 65 6e 74 53 74 79 6c 65 28 73 75 62 73 74 72 28 24 6d 65 73 73 61 67 65 2c 20 24 6f 66 66 73 rentStyle(substr($message,.$offs
ea1e0 65 74 29 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 3c 27 2c et));..return.str_replace('\\<',
ea200 20 27 3c 27 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .'<',.$output);.}.....public.fun
ea220 63 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 53 74 61 63 6b 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 ction.getStyleStack().{.return.$
ea240 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 this->styleStack;.}.........priv
ea260 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 53 74 79 6c 65 46 72 6f 6d 53 74 72 69 ate.function.createStyleFromStri
ea280 6e 67 28 24 73 74 72 69 6e 67 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 ng($string).{.if.(isset($this->s
ea2a0 74 79 6c 65 73 5b 24 73 74 72 69 6e 67 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d tyles[$string])).{.return.$this-
ea2c0 3e 73 74 79 6c 65 73 5b 24 73 74 72 69 6e 67 5d 3b 0a 7d 0a 0a 69 66 20 28 21 70 72 65 67 5f 6d >styles[$string];.}..if.(!preg_m
ea2e0 61 74 63 68 5f 61 6c 6c 28 27 2f 28 5b 5e 3d 5d 2b 29 3d 28 5b 5e 3b 5d 2b 29 28 3b 7c 24 29 2f atch_all('/([^=]+)=([^;]+)(;|$)/
ea300 27 2c 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 74 72 69 6e 67 29 2c 20 24 6d 61 74 63 68 65 73 ',.strtolower($string),.$matches
ea320 2c 20 50 52 45 47 5f 53 45 54 5f 4f 52 44 45 52 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 ,.PREG_SET_ORDER)).{.return.fals
ea340 65 3b 0a 7d 0a 0a 24 73 74 79 6c 65 20 3d 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 e;.}..$style.=.new.OutputFormatt
ea360 65 72 53 74 79 6c 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 68 65 73 20 61 73 20 erStyle();.foreach.($matches.as.
ea380 24 6d 61 74 63 68 29 20 7b 0a 61 72 72 61 79 5f 73 68 69 66 74 28 24 6d 61 74 63 68 29 3b 0a 0a $match).{.array_shift($match);..
ea3a0 69 66 20 28 27 66 67 27 20 3d 3d 20 24 6d 61 74 63 68 5b 30 5d 29 20 7b 0a 24 73 74 79 6c 65 2d if.('fg'.==.$match[0]).{.$style-
ea3c0 3e 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 65 6c 73 >setForeground($match[1]);.}.els
ea3e0 65 69 66 20 28 27 62 67 27 20 3d 3d 20 24 6d 61 74 63 68 5b 30 5d 29 20 7b 0a 24 73 74 79 6c 65 eif.('bg'.==.$match[0]).{.$style
ea400 2d 3e 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 65 6c ->setBackground($match[1]);.}.el
ea420 73 65 20 7b 0a 74 72 79 20 7b 0a 24 73 74 79 6c 65 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 24 6d 61 se.{.try.{.$style->setOption($ma
ea440 74 63 68 5b 31 5d 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 tch[1]);.}.catch.(\InvalidArgume
ea460 6e 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a ntException.$e).{.return.false;.
ea480 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a }.}.}..return.$style;.}.........
ea4a0 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 6c 79 43 75 72 72 65 6e 74 53 74 79 private.function.applyCurrentSty
ea4c0 6c 65 28 24 74 65 78 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 44 65 63 6f le($text).{.return.$this->isDeco
ea4e0 72 61 74 65 64 28 29 20 26 26 20 73 74 72 6c 65 6e 28 24 74 65 78 74 29 20 3e 20 30 20 3f 20 24 rated().&&.strlen($text).>.0.?.$
ea500 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 2d 3e 67 65 74 43 75 72 72 65 6e 74 28 29 2d 3e this->styleStack->getCurrent()->
ea520 61 70 70 6c 79 28 24 74 65 78 74 29 20 3a 20 24 74 65 78 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a apply($text).:.$text;.}.}.<?php.
ea540 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 ..........namespace.Symfony\Comp
ea560 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 69 onent\Console\Formatter;.......i
ea580 6e 74 65 72 66 61 63 65 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 nterface.OutputFormatterInterfac
ea5a0 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f e.{......public.function.setDeco
ea5c0 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 rated($decorated);.......public.
ea5e0 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 function.isDecorated();........p
ea600 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 2c 20 4f ublic.function.setStyle($name,.O
ea620 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 20 24 73 74 utputFormatterStyleInterface.$st
ea640 79 6c 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 yle);.........public.function.ha
ea660 73 53 74 79 6c 65 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 sStyle($name);.........public.fu
ea680 6e 63 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a nction.getStyle($name);.........
ea6a0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 67 65 29 public.function.format($message)
ea6c0 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 ;.}.<?php...........namespace.Sy
ea6e0 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 mfony\Component\Console\Formatte
ea700 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c r;..use.Symfony\Component\Consol
ea720 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 e\Exception\InvalidArgumentExcep
ea740 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 tion;.......class.OutputFormatte
ea760 72 53 74 79 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 rStyle.implements.OutputFormatte
ea780 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 rStyleInterface.{.private.static
ea7a0 20 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 20 3d 20 61 72 .$availableForegroundColors.=.ar
ea7c0 72 61 79 28 0a 27 62 6c 61 63 6b 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 ray(.'black'.=>.array('set'.=>.3
ea7e0 30 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 72 65 64 27 20 3d 3e 20 61 72 72 61 0,.'unset'.=>.39),.'red'.=>.arra
ea800 79 28 27 73 65 74 27 20 3d 3e 20 33 31 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 y('set'.=>.31,.'unset'.=>.39),.'
ea820 67 72 65 65 6e 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 32 2c 20 27 75 6e green'.=>.array('set'.=>.32,.'un
ea840 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 79 65 6c 6c 6f 77 27 20 3d 3e 20 61 72 72 61 79 28 27 set'.=>.39),.'yellow'.=>.array('
ea860 73 65 74 27 20 3d 3e 20 33 33 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 62 6c 75 set'.=>.33,.'unset'.=>.39),.'blu
ea880 65 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 34 2c 20 27 75 6e 73 65 74 27 e'.=>.array('set'.=>.34,.'unset'
ea8a0 20 3d 3e 20 33 39 29 2c 0a 27 6d 61 67 65 6e 74 61 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 .=>.39),.'magenta'.=>.array('set
ea8c0 27 20 3d 3e 20 33 35 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 63 79 61 6e 27 20 '.=>.35,.'unset'.=>.39),.'cyan'.
ea8e0 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 36 2c 20 27 75 6e 73 65 74 27 20 3d 3e =>.array('set'.=>.36,.'unset'.=>
ea900 20 33 39 29 2c 0a 27 77 68 69 74 65 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 .39),.'white'.=>.array('set'.=>.
ea920 33 37 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 64 65 66 61 75 6c 74 27 20 3d 3e 37,.'unset'.=>.39),.'default'.=>
ea940 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 39 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 .array('set'.=>.39,.'unset'.=>.3
ea960 39 29 2c 0a 29 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 61 76 61 69 6c 61 62 6c 65 9),.);.private.static.$available
ea980 42 61 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 20 3d 20 61 72 72 61 79 28 0a 27 62 6c 61 63 6b BackgroundColors.=.array(.'black
ea9a0 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 30 2c 20 27 75 6e 73 65 74 27 20 '.=>.array('set'.=>.40,.'unset'.
ea9c0 3d 3e 20 34 39 29 2c 0a 27 72 65 64 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 =>.49),.'red'.=>.array('set'.=>.
ea9e0 34 31 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 67 72 65 65 6e 27 20 3d 3e 20 61 41,.'unset'.=>.49),.'green'.=>.a
eaa00 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 32 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 rray('set'.=>.42,.'unset'.=>.49)
eaa20 2c 0a 27 79 65 6c 6c 6f 77 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 33 2c ,.'yellow'.=>.array('set'.=>.43,
eaa40 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 62 6c 75 65 27 20 3d 3e 20 61 72 72 61 79 .'unset'.=>.49),.'blue'.=>.array
eaa60 28 27 73 65 74 27 20 3d 3e 20 34 34 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 6d ('set'.=>.44,.'unset'.=>.49),.'m
eaa80 61 67 65 6e 74 61 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 35 2c 20 27 75 agenta'.=>.array('set'.=>.45,.'u
eaaa0 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 63 79 61 6e 27 20 3d 3e 20 61 72 72 61 79 28 27 73 nset'.=>.49),.'cyan'.=>.array('s
eaac0 65 74 27 20 3d 3e 20 34 36 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 77 68 69 74 et'.=>.46,.'unset'.=>.49),.'whit
eaae0 65 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 37 2c 20 27 75 6e 73 65 74 27 e'.=>.array('set'.=>.47,.'unset'
eab00 20 3d 3e 20 34 39 29 2c 0a 27 64 65 66 61 75 6c 74 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 .=>.49),.'default'.=>.array('set
eab20 27 20 3d 3e 20 34 39 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 29 3b 0a 70 72 69 76 '.=>.49,.'unset'.=>.49),.);.priv
eab40 61 74 65 20 73 74 61 74 69 63 20 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 20 3d 20 61 ate.static.$availableOptions.=.a
eab60 72 72 61 79 28 0a 27 62 6f 6c 64 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 31 rray(.'bold'.=>.array('set'.=>.1
eab80 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 32 32 29 2c 0a 27 75 6e 64 65 72 73 63 6f 72 65 27 20 3d ,.'unset'.=>.22),.'underscore'.=
eaba0 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 32 >.array('set'.=>.4,.'unset'.=>.2
eabc0 34 29 2c 0a 27 62 6c 69 6e 6b 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 35 2c 4),.'blink'.=>.array('set'.=>.5,
eabe0 20 27 75 6e 73 65 74 27 20 3d 3e 20 32 35 29 2c 0a 27 72 65 76 65 72 73 65 27 20 3d 3e 20 61 72 .'unset'.=>.25),.'reverse'.=>.ar
eac00 72 61 79 28 27 73 65 74 27 20 3d 3e 20 37 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 32 37 29 2c 0a ray('set'.=>.7,.'unset'.=>.27),.
eac20 27 63 6f 6e 63 65 61 6c 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 38 2c 20 27 'conceal'.=>.array('set'.=>.8,.'
eac40 75 6e 73 65 74 27 20 3d 3e 20 32 38 29 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 66 6f 72 65 unset'.=>.28),.);..private.$fore
eac60 67 72 6f 75 6e 64 3b 0a 70 72 69 76 61 74 65 20 24 62 61 63 6b 67 72 6f 75 6e 64 3b 0a 70 72 69 ground;.private.$background;.pri
eac80 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a vate.$options.=.array();........
eaca0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 66 6f .public.function.__construct($fo
eacc0 72 65 67 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 2c 20 24 62 61 63 6b 67 72 6f 75 6e 64 20 3d 20 6e reground.=.null,.$background.=.n
eace0 75 6c 6c 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b ull,.array.$options.=.array()).{
ead00 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 66 6f 72 65 67 72 6f 75 6e 64 29 20 7b 0a 24 74 68 .if.(null.!==.$foreground).{.$th
ead20 69 73 2d 3e 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 28 24 66 6f 72 65 67 72 6f 75 6e 64 29 3b 0a is->setForeground($foreground);.
ead40 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 62 61 63 6b 67 72 6f 75 6e 64 29 20 7b 0a 24 74 }.if.(null.!==.$background).{.$t
ead60 68 69 73 2d 3e 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 62 61 63 6b 67 72 6f 75 6e 64 29 3b his->setBackground($background);
ead80 0a 7d 0a 69 66 20 28 63 6f 75 6e 74 28 24 6f 70 74 69 6f 6e 73 29 29 20 7b 0a 24 74 68 69 73 2d .}.if.(count($options)).{.$this-
eada0 3e 73 65 74 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a >setOptions($options);.}.}......
eadc0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 ...public.function.setForeground
eade0 28 24 63 6f 6c 6f 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 ($color.=.null).{.if.(null.===.$
eae00 63 6f 6c 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 65 67 72 6f 75 6e 64 20 3d 20 6e 75 6c color).{.$this->foreground.=.nul
eae20 6c 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 73 74 61 74 69 63 l;..return;.}..if.(!isset(static
eae40 3a 3a 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f ::$availableForegroundColors[$co
eae60 6c 6f 72 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 lor])).{.throw.new.InvalidArgume
eae80 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 66 6f ntException(sprintf(.'Invalid.fo
eaea0 72 65 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 20 73 70 65 63 69 66 69 65 64 3a 20 22 25 73 22 2e 20 reground.color.specified:."%s"..
eaec0 45 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 28 25 73 29 27 2c 0a 24 63 6f 6c 6f 72 2c 0a 69 Expected.one.of.(%s)',.$color,.i
eaee0 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 73 74 61 74 69 63 3a 3a mplode(',.',.array_keys(static::
eaf00 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 29 29 0a 29 29 3b $availableForegroundColors)).));
eaf20 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 6f 72 65 67 72 6f 75 6e 64 20 3d 20 73 74 61 74 69 63 3a 3a .}..$this->foreground.=.static::
eaf40 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 6c 6f $availableForegroundColors[$colo
eaf60 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 r];.}.........public.function.se
eaf80 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 63 6f 6c 6f 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 tBackground($color.=.null).{.if.
eafa0 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6c 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 62 61 63 6b 67 (null.===.$color).{.$this->backg
eafc0 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 69 round.=.null;..return;.}..if.(!i
eafe0 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e sset(static::$availableBackgroun
eb000 64 43 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e dColors[$color])).{.throw.new.In
eb020 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a validArgumentException(sprintf(.
eb040 27 49 6e 76 61 6c 69 64 20 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 20 73 70 65 63 69 66 'Invalid.background.color.specif
eb060 69 65 64 3a 20 22 25 73 22 2e 20 45 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 28 25 73 29 27 ied:."%s"..Expected.one.of.(%s)'
eb080 2c 0a 24 63 6f 6c 6f 72 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 ,.$color,.implode(',.',.array_ke
eb0a0 79 73 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 43 ys(static::$availableBackgroundC
eb0c0 6f 6c 6f 72 73 29 29 0a 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 olors)).));.}..$this->background
eb0e0 20 3d 20 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 43 .=.static::$availableBackgroundC
eb100 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 olors[$color];.}.........public.
eb120 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 0a 7b 0a 69 66 function.setOption($option).{.if
eb140 20 28 21 69 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f .(!isset(static::$availableOptio
eb160 6e 73 5b 24 6f 70 74 69 6f 6e 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 ns[$option])).{.throw.new.Invali
eb180 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 49 6e 76 dArgumentException(sprintf(.'Inv
eb1a0 61 6c 69 64 20 6f 70 74 69 6f 6e 20 73 70 65 63 69 66 69 65 64 3a 20 22 25 73 22 2e 20 45 78 70 alid.option.specified:."%s"..Exp
eb1c0 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 28 25 73 29 27 2c 0a 24 6f 70 74 69 6f 6e 2c 0a 69 6d 70 ected.one.of.(%s)',.$option,.imp
eb1e0 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 73 74 61 74 69 63 3a 3a 24 61 lode(',.',.array_keys(static::$a
eb200 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 29 29 0a 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 6e vailableOptions)).));.}..if.(!in
eb220 5f 61 72 72 61 79 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 _array(static::$availableOptions
eb240 5b 24 6f 70 74 69 6f 6e 5d 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 29 20 7b 0a 24 74 [$option],.$this->options)).{.$t
eb260 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 5d 20 3d 20 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 his->options[].=.static::$availa
eb280 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 5d 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a bleOptions[$option];.}.}........
eb2a0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 73 65 74 4f 70 74 69 6f 6e 28 24 6f 70 .public.function.unsetOption($op
eb2c0 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 tion).{.if.(!isset(static::$avai
eb2e0 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 5d 29 29 20 7b 0a 74 68 72 6f 77 20 lableOptions[$option])).{.throw.
eb300 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 new.InvalidArgumentException(spr
eb320 69 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 6f 70 74 69 6f 6e 20 73 70 65 63 69 66 69 65 64 3a intf(.'Invalid.option.specified:
eb340 20 22 25 73 22 2e 20 45 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 28 25 73 29 27 2c 0a 24 6f ."%s"..Expected.one.of.(%s)',.$o
eb360 70 74 69 6f 6e 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 ption,.implode(',.',.array_keys(
eb380 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 29 29 0a 29 29 3b 0a static::$availableOptions)).));.
eb3a0 7d 0a 0a 24 70 6f 73 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 73 74 61 74 69 63 3a 3a 24 }..$pos.=.array_search(static::$
eb3c0 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 5d 2c 20 24 74 68 69 73 availableOptions[$option],.$this
eb3e0 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 29 20 ->options);.if.(false.!==.$pos).
eb400 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 70 6f 73 5d 29 3b 0a 7d {.unset($this->options[$pos]);.}
eb420 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 .}.......public.function.setOpti
eb440 6f 6e 73 28 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 ons(array.$options).{.$this->opt
eb460 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6f 70 74 69 6f ions.=.array();..foreach.($optio
eb480 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 74 69 6f ns.as.$option).{.$this->setOptio
eb4a0 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 n($option);.}.}.........public.f
eb4c0 75 6e 63 74 69 6f 6e 20 61 70 70 6c 79 28 24 74 65 78 74 29 0a 7b 0a 24 73 65 74 43 6f 64 65 73 unction.apply($text).{.$setCodes
eb4e0 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 75 6e 73 65 74 43 6f 64 65 73 20 3d 20 61 72 72 61 79 28 .=.array();.$unsetCodes.=.array(
eb500 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 66 6f 72 65 67 72 6f 75 );..if.(null.!==.$this->foregrou
eb520 6e 64 29 20 7b 0a 24 73 65 74 43 6f 64 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 66 6f 72 65 67 nd).{.$setCodes[].=.$this->foreg
eb540 72 6f 75 6e 64 5b 27 73 65 74 27 5d 3b 0a 24 75 6e 73 65 74 43 6f 64 65 73 5b 5d 20 3d 20 24 74 round['set'];.$unsetCodes[].=.$t
eb560 68 69 73 2d 3e 66 6f 72 65 67 72 6f 75 6e 64 5b 27 75 6e 73 65 74 27 5d 3b 0a 7d 0a 69 66 20 28 his->foreground['unset'];.}.if.(
eb580 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 29 20 7b 0a 24 73 null.!==.$this->background).{.$s
eb5a0 65 74 43 6f 64 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 5b 27 73 etCodes[].=.$this->background['s
eb5c0 65 74 27 5d 3b 0a 24 75 6e 73 65 74 43 6f 64 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 62 61 63 et'];.$unsetCodes[].=.$this->bac
eb5e0 6b 67 72 6f 75 6e 64 5b 27 75 6e 73 65 74 27 5d 3b 0a 7d 0a 69 66 20 28 63 6f 75 6e 74 28 24 74 kground['unset'];.}.if.(count($t
eb600 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d his->options)).{.foreach.($this-
eb620 3e 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 73 65 74 43 6f 64 65 73 >options.as.$option).{.$setCodes
eb640 5b 5d 20 3d 20 24 6f 70 74 69 6f 6e 5b 27 73 65 74 27 5d 3b 0a 24 75 6e 73 65 74 43 6f 64 65 73 [].=.$option['set'];.$unsetCodes
eb660 5b 5d 20 3d 20 24 6f 70 74 69 6f 6e 5b 27 75 6e 73 65 74 27 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 [].=.$option['unset'];.}.}..if.(
eb680 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 73 65 74 43 6f 64 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 0.===.count($setCodes)).{.return
eb6a0 20 24 74 65 78 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 5c 30 33 33 5b .$text;.}..return.sprintf("\033[
eb6c0 25 73 6d 25 73 5c 30 33 33 5b 25 73 6d 22 2c 20 69 6d 70 6c 6f 64 65 28 27 3b 27 2c 20 24 73 65 %sm%s\033[%sm",.implode(';',.$se
eb6e0 74 43 6f 64 65 73 29 2c 20 24 74 65 78 74 2c 20 69 6d 70 6c 6f 64 65 28 27 3b 27 2c 20 24 75 6e tCodes),.$text,.implode(';',.$un
eb700 73 65 74 43 6f 64 65 73 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a setCodes));.}.}.<?php...........
eb720 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 namespace.Symfony\Component\Cons
eb740 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4f ole\Formatter;.......interface.O
eb760 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a utputFormatterStyleInterface.{..
eb780 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 65 67 72 6f 75 6e ....public.function.setForegroun
eb7a0 64 28 24 63 6f 6c 6f 72 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 d($color.=.null);.......public.f
eb7c0 75 6e 63 74 69 6f 6e 20 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 63 6f 6c 6f 72 20 3d 20 6e unction.setBackground($color.=.n
eb7e0 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f ull);.......public.function.setO
eb800 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ption($option);.......public.fun
eb820 63 74 69 6f 6e 20 75 6e 73 65 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 0a 0a 0a 0a ction.unsetOption($option);.....
eb840 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 61 72 72 ..public.function.setOptions(arr
eb860 61 79 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ay.$options);.........public.fun
eb880 63 74 69 6f 6e 20 61 70 70 6c 79 28 24 74 65 78 74 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a ction.apply($text);.}.<?php.....
eb8a0 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e ......namespace.Symfony\Componen
eb8c0 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e t\Console\Formatter;..use.Symfon
eb8e0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e y\Component\Console\Exception\In
eb900 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 validArgumentException;.....clas
eb920 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 53 74 61 63 6b 0a 7b 0a 0a 0a s.OutputFormatterStyleStack.{...
eb940 0a 70 72 69 76 61 74 65 20 24 73 74 79 6c 65 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 65 .private.$styles;.....private.$e
eb960 6d 70 74 79 53 74 79 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e mptyStyle;.......public.function
eb980 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c .__construct(OutputFormatterStyl
eb9a0 65 49 6e 74 65 72 66 61 63 65 20 24 65 6d 70 74 79 53 74 79 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b eInterface.$emptyStyle.=.null).{
eb9c0 0a 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 20 3d 20 24 65 6d 70 74 79 53 74 79 6c 65 .$this->emptyStyle.=.$emptyStyle
eb9e0 20 3f 3a 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 29 3b 0a .?:.new.OutputFormatterStyle();.
eba00 24 74 68 69 73 2d 3e 72 65 73 65 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e $this->reset();.}.....public.fun
eba20 63 74 69 6f 6e 20 72 65 73 65 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 20 3d 20 ction.reset().{.$this->styles.=.
eba40 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e array();.}.......public.function
eba60 20 70 75 73 68 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 .push(OutputFormatterStyleInterf
eba80 61 63 65 20 24 73 74 79 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 5d 20 3d 20 ace.$style).{.$this->styles[].=.
ebaa0 24 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 $style;.}...........public.funct
ebac0 69 6f 6e 20 70 6f 70 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 ion.pop(OutputFormatterStyleInte
ebae0 72 66 61 63 65 20 24 73 74 79 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 rface.$style.=.null).{.if.(empty
ebb00 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ($this->styles)).{.return.$this-
ebb20 3e 65 6d 70 74 79 53 74 79 6c 65 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 73 74 >emptyStyle;.}..if.(null.===.$st
ebb40 79 6c 65 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 2d 3e 73 yle).{.return.array_pop($this->s
ebb60 74 79 6c 65 73 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 72 65 76 65 72 73 tyles);.}..foreach.(array_revers
ebb80 65 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 2c 20 74 72 75 65 29 20 61 73 20 24 69 6e 64 65 78 e($this->styles,.true).as.$index
ebba0 20 3d 3e 20 24 73 74 61 63 6b 65 64 53 74 79 6c 65 29 20 7b 0a 69 66 20 28 24 73 74 79 6c 65 2d .=>.$stackedStyle).{.if.($style-
ebbc0 3e 61 70 70 6c 79 28 27 27 29 20 3d 3d 3d 20 24 73 74 61 63 6b 65 64 53 74 79 6c 65 2d 3e 61 70 >apply('').===.$stackedStyle->ap
ebbe0 70 6c 79 28 27 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 20 3d 20 61 72 72 61 79 ply('')).{.$this->styles.=.array
ebc00 5f 73 6c 69 63 65 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 2c 20 30 2c 20 24 69 6e 64 65 78 29 _slice($this->styles,.0,.$index)
ebc20 3b 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 63 6b 65 64 53 74 79 6c 65 3b 0a 7d 0a 7d 0a 0a 74 68 ;..return.$stackedStyle;.}.}..th
ebc40 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e row.new.InvalidArgumentException
ebc60 28 27 49 6e 63 6f 72 72 65 63 74 6c 79 20 6e 65 73 74 65 64 20 73 74 79 6c 65 20 74 61 67 20 66 ('Incorrectly.nested.style.tag.f
ebc80 6f 75 6e 64 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ound.');.}.......public.function
ebca0 20 67 65 74 43 75 72 72 65 6e 74 28 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 2d .getCurrent().{.if.(empty($this-
ebcc0 3e 73 74 79 6c 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 >styles)).{.return.$this->emptyS
ebce0 74 79 6c 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 63 6f tyle;.}..return.$this->styles[co
ebd00 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 29 20 2d 20 31 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a unt($this->styles).-.1];.}......
ebd20 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 6d 70 74 79 53 74 79 6c 65 28 4f .public.function.setEmptyStyle(O
ebd40 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 20 24 65 6d utputFormatterStyleInterface.$em
ebd60 70 74 79 53 74 79 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 20 3d 20 ptyStyle).{.$this->emptyStyle.=.
ebd80 24 65 6d 70 74 79 53 74 79 6c 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a $emptyStyle;..return.$this;.}...
ebda0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 6d 70 74 79 53 74 79 6c 65 28 ..public.function.getEmptyStyle(
ebdc0 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 3b 0a 7d 0a ).{.return.$this->emptyStyle;.}.
ebde0 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 }.<?php...........namespace.Symf
ebe00 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 0a ony\Component\Console\Helper;...
ebe20 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 62 75 67 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 ......class.DebugFormatterHelper
ebe40 20 65 78 74 65 6e 64 73 20 48 65 6c 70 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6c 6f 72 .extends.Helper.{.private.$color
ebe60 73 20 3d 20 61 72 72 61 79 28 27 62 6c 61 63 6b 27 2c 20 27 72 65 64 27 2c 20 27 67 72 65 65 6e s.=.array('black',.'red',.'green
ebe80 27 2c 20 27 79 65 6c 6c 6f 77 27 2c 20 27 62 6c 75 65 27 2c 20 27 6d 61 67 65 6e 74 61 27 2c 20 ',.'yellow',.'blue',.'magenta',.
ebea0 27 63 79 61 6e 27 2c 20 27 77 68 69 74 65 27 2c 20 27 64 65 66 61 75 6c 74 27 29 3b 0a 70 72 69 'cyan',.'white',.'default');.pri
ebec0 76 61 74 65 20 24 73 74 61 72 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 vate.$started.=.array();.private
ebee0 20 24 63 6f 75 6e 74 20 3d 20 2d 31 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .$count.=.-1;...........public.f
ebf00 75 6e 63 74 69 6f 6e 20 73 74 61 72 74 28 24 69 64 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 70 72 unction.start($id,.$message,.$pr
ebf20 65 66 69 78 20 3d 20 27 52 55 4e 27 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 efix.=.'RUN').{.$this->started[$
ebf40 69 64 5d 20 3d 20 61 72 72 61 79 28 27 62 6f 72 64 65 72 27 20 3d 3e 20 2b 2b 24 74 68 69 73 2d id].=.array('border'.=>.++$this-
ebf60 3e 63 6f 75 6e 74 20 25 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 29 29 3b 0a >count.%.count($this->colors));.
ebf80 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 25 73 3c 62 67 3d 62 6c 75 65 3b 66 67 3d 77 .return.sprintf("%s<bg=blue;fg=w
ebfa0 68 69 74 65 3e 20 25 73 20 3c 2f 3e 20 3c 66 67 3d 62 6c 75 65 3e 25 73 3c 2f 3e 5c 6e 22 2c 20 hite>.%s.</>.<fg=blue>%s</>\n",.
ebfc0 24 74 68 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 28 24 69 64 29 2c 20 24 70 72 65 66 69 78 2c 20 $this->getBorder($id),.$prefix,.
ebfe0 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 $message);.}.............public.
ec000 66 75 6e 63 74 69 6f 6e 20 70 72 6f 67 72 65 73 73 28 24 69 64 2c 20 24 62 75 66 66 65 72 2c 20 function.progress($id,.$buffer,.
ec020 24 65 72 72 6f 72 20 3d 20 66 61 6c 73 65 2c 20 24 70 72 65 66 69 78 20 3d 20 27 4f 55 54 27 2c $error.=.false,.$prefix.=.'OUT',
ec040 20 24 65 72 72 6f 72 50 72 65 66 69 78 20 3d 20 27 45 52 52 27 29 0a 7b 0a 24 6d 65 73 73 61 67 .$errorPrefix.=.'ERR').{.$messag
ec060 65 20 3d 20 27 27 3b 0a 0a 69 66 20 28 24 65 72 72 6f 72 29 20 7b 0a 69 66 20 28 69 73 73 65 74 e.=.'';..if.($error).{.if.(isset
ec080 28 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 6f 75 74 27 5d 29 29 20 7b 0a ($this->started[$id]['out'])).{.
ec0a0 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 22 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 73 $message..=."\n";.unset($this->s
ec0c0 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 6f 75 74 27 5d 29 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 tarted[$id]['out']);.}.if.(!isse
ec0e0 74 28 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 65 72 72 27 5d 29 29 20 7b t($this->started[$id]['err'])).{
ec100 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 73 70 72 69 6e 74 66 28 27 25 73 3c 62 67 3d 72 65 64 3b .$message..=.sprintf('%s<bg=red;
ec120 66 67 3d 77 68 69 74 65 3e 20 25 73 20 3c 2f 3e 20 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 42 6f fg=white>.%s.</>.',.$this->getBo
ec140 72 64 65 72 28 24 69 64 29 2c 20 24 65 72 72 6f 72 50 72 65 66 69 78 29 3b 0a 24 74 68 69 73 2d rder($id),.$errorPrefix);.$this-
ec160 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 65 72 72 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a >started[$id]['err'].=.true;.}..
ec180 24 6d 65 73 73 61 67 65 20 2e 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 73 70 $message..=.str_replace("\n",.sp
ec1a0 72 69 6e 74 66 28 22 5c 6e 25 73 3c 62 67 3d 72 65 64 3b 66 67 3d 77 68 69 74 65 3e 20 25 73 20 rintf("\n%s<bg=red;fg=white>.%s.
ec1c0 3c 2f 3e 20 22 2c 20 24 74 68 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 28 24 69 64 29 2c 20 24 65 </>.",.$this->getBorder($id),.$e
ec1e0 72 72 6f 72 50 72 65 66 69 78 29 2c 20 24 62 75 66 66 65 72 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a rrorPrefix),.$buffer);.}.else.{.
ec200 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 65 if.(isset($this->started[$id]['e
ec220 72 72 27 5d 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 22 3b 0a 75 6e 73 65 74 rr'])).{.$message..=."\n";.unset
ec240 28 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 65 72 72 27 5d 29 3b 0a 7d 0a ($this->started[$id]['err']);.}.
ec260 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 if.(!isset($this->started[$id]['
ec280 6f 75 74 27 5d 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 73 70 72 69 6e 74 66 28 27 25 out'])).{.$message..=.sprintf('%
ec2a0 73 3c 62 67 3d 67 72 65 65 6e 3b 66 67 3d 77 68 69 74 65 3e 20 25 73 20 3c 2f 3e 20 27 2c 20 24 s<bg=green;fg=white>.%s.</>.',.$
ec2c0 74 68 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 28 24 69 64 29 2c 20 24 70 72 65 66 69 78 29 3b 0a this->getBorder($id),.$prefix);.
ec2e0 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 6f 75 74 27 5d 20 3d 20 74 72 75 $this->started[$id]['out'].=.tru
ec300 65 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c e;.}..$message..=.str_replace("\
ec320 6e 22 2c 20 73 70 72 69 6e 74 66 28 22 5c 6e 25 73 3c 62 67 3d 67 72 65 65 6e 3b 66 67 3d 77 68 n",.sprintf("\n%s<bg=green;fg=wh
ec340 69 74 65 3e 20 25 73 20 3c 2f 3e 20 22 2c 20 24 74 68 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 28 ite>.%s.</>.",.$this->getBorder(
ec360 24 69 64 29 2c 20 24 70 72 65 66 69 78 29 2c 20 24 62 75 66 66 65 72 29 3b 0a 7d 0a 0a 72 65 74 $id),.$prefix),.$buffer);.}..ret
ec380 75 72 6e 20 24 6d 65 73 73 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 urn.$message;.}............publi
ec3a0 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 6f 70 28 24 69 64 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 c.function.stop($id,.$message,.$
ec3c0 73 75 63 63 65 73 73 66 75 6c 2c 20 24 70 72 65 66 69 78 20 3d 20 27 52 45 53 27 29 0a 7b 0a 24 successful,.$prefix.=.'RES').{.$
ec3e0 74 72 61 69 6c 69 6e 67 45 4f 4c 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 61 72 74 trailingEOL.=.isset($this->start
ec400 65 64 5b 24 69 64 5d 5b 27 6f 75 74 27 5d 29 20 7c 7c 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e ed[$id]['out']).||.isset($this->
ec420 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 65 72 72 27 5d 29 20 3f 20 22 5c 6e 22 20 3a 20 27 27 started[$id]['err']).?."\n".:.''
ec440 3b 0a 0a 69 66 20 28 24 73 75 63 63 65 73 73 66 75 6c 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 ;..if.($successful).{.return.spr
ec460 69 6e 74 66 28 22 25 73 25 73 3c 62 67 3d 67 72 65 65 6e 3b 66 67 3d 77 68 69 74 65 3e 20 25 73 intf("%s%s<bg=green;fg=white>.%s
ec480 20 3c 2f 3e 20 3c 66 67 3d 67 72 65 65 6e 3e 25 73 3c 2f 3e 5c 6e 22 2c 20 24 74 72 61 69 6c 69 .</>.<fg=green>%s</>\n",.$traili
ec4a0 6e 67 45 4f 4c 2c 20 24 74 68 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 28 24 69 64 29 2c 20 24 70 ngEOL,.$this->getBorder($id),.$p
ec4c0 72 65 66 69 78 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 20 3d 20 refix,.$message);.}..$message.=.
ec4e0 73 70 72 69 6e 74 66 28 22 25 73 25 73 3c 62 67 3d 72 65 64 3b 66 67 3d 77 68 69 74 65 3e 20 25 sprintf("%s%s<bg=red;fg=white>.%
ec500 73 20 3c 2f 3e 20 3c 66 67 3d 72 65 64 3e 25 73 3c 2f 3e 5c 6e 22 2c 20 24 74 72 61 69 6c 69 6e s.</>.<fg=red>%s</>\n",.$trailin
ec520 67 45 4f 4c 2c 20 24 74 68 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 28 24 69 64 29 2c 20 24 70 72 gEOL,.$this->getBorder($id),.$pr
ec540 65 66 69 78 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 73 efix,.$message);..unset($this->s
ec560 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 6f 75 74 27 5d 2c 20 24 74 68 69 73 2d 3e 73 74 61 72 74 tarted[$id]['out'],.$this->start
ec580 65 64 5b 24 69 64 5d 5b 27 65 72 72 27 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6d 65 73 73 61 67 ed[$id]['err']);..return.$messag
ec5a0 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 e;.}.......private.function.getB
ec5c0 6f 72 64 65 72 28 24 69 64 29 0a 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 3c 62 67 order($id).{.return.sprintf('<bg
ec5e0 3d 25 73 3e 20 3c 2f 3e 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 5b 24 74 68 69 73 2d 3e =%s>.</>',.$this->colors[$this->
ec600 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 62 6f 72 64 65 72 27 5d 5d 29 3b 0a 7d 0a 0a 0a 0a 0a started[$id]['border']]);.}.....
ec620 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 public.function.getName().{.retu
ec640 72 6e 20 27 64 65 62 75 67 5f 66 6f 72 6d 61 74 74 65 72 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a rn.'debug_formatter';.}.}.<?php.
ec660 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 ..........namespace.Symfony\Comp
ec680 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f onent\Console\Helper;..use.Symfo
ec6a0 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 5c ny\Component\Console\Descriptor\
ec6c0 44 65 73 63 72 69 70 74 6f 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 DescriptorInterface;.use.Symfony
ec6e0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 5c 4a 73 \Component\Console\Descriptor\Js
ec700 6f 6e 44 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e onDescriptor;.use.Symfony\Compon
ec720 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 5c 4d 61 72 6b 64 6f 77 6e 44 ent\Console\Descriptor\MarkdownD
ec740 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 escriptor;.use.Symfony\Component
ec760 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 5c 54 65 78 74 44 65 73 63 72 69 70 74 \Console\Descriptor\TextDescript
ec780 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c or;.use.Symfony\Component\Consol
ec7a0 65 5c 44 65 73 63 72 69 70 74 6f 72 5c 58 6d 6c 44 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 e\Descriptor\XmlDescriptor;.use.
ec7c0 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 Symfony\Component\Console\Output
ec7e0 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f \OutputInterface;.use.Symfony\Co
ec800 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 mponent\Console\Exception\Invali
ec820 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 dArgumentException;.......class.
ec840 44 65 73 63 72 69 70 74 6f 72 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c 70 65 72 0a DescriptorHelper.extends.Helper.
ec860 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 72 69 70 74 6f 72 73 20 3d 20 61 72 72 61 {....private.$descriptors.=.arra
ec880 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 y();.....public.function.__const
ec8a0 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 72 65 67 69 73 74 65 72 28 27 74 78 74 27 2c ruct().{.$this.->register('txt',
ec8c0 20 6e 65 77 20 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 28 29 29 0a 2d 3e 72 65 67 69 73 74 65 .new.TextDescriptor()).->registe
ec8e0 72 28 27 78 6d 6c 27 2c 20 6e 65 77 20 58 6d 6c 44 65 73 63 72 69 70 74 6f 72 28 29 29 0a 2d 3e r('xml',.new.XmlDescriptor()).->
ec900 72 65 67 69 73 74 65 72 28 27 6a 73 6f 6e 27 2c 20 6e 65 77 20 4a 73 6f 6e 44 65 73 63 72 69 70 register('json',.new.JsonDescrip
ec920 74 6f 72 28 29 29 0a 2d 3e 72 65 67 69 73 74 65 72 28 27 6d 64 27 2c 20 6e 65 77 20 4d 61 72 6b tor()).->register('md',.new.Mark
ec940 64 6f 77 6e 44 65 73 63 72 69 70 74 6f 72 28 29 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a downDescriptor()).;.}...........
ec960 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 28 4f 75 74 ....public.function.describe(Out
ec980 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 6f 62 6a 65 63 74 2c 20 61 putInterface.$output,.$object,.a
ec9a0 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 6f 70 74 69 rray.$options.=.array()).{.$opti
ec9c0 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 0a 27 72 61 77 5f 74 65 ons.=.array_merge(array(.'raw_te
ec9e0 78 74 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 27 66 6f 72 6d 61 74 27 20 3d 3e 20 27 74 78 74 27 2c xt'.=>.false,.'format'.=>.'txt',
eca00 0a 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 .),.$options);..if.(!isset($this
eca20 2d 3e 64 65 73 63 72 69 70 74 6f 72 73 5b 24 6f 70 74 69 6f 6e 73 5b 27 66 6f 72 6d 61 74 27 5d ->descriptors[$options['format']
eca40 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 ])).{.throw.new.InvalidArgumentE
eca60 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 73 75 70 70 6f 72 74 65 64 20 66 6f xception(sprintf('Unsupported.fo
eca80 72 6d 61 74 20 22 25 73 22 2e 27 2c 20 24 6f 70 74 69 6f 6e 73 5b 27 66 6f 72 6d 61 74 27 5d 29 rmat."%s".',.$options['format'])
ecaa0 29 3b 0a 7d 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 64 65 73 63 72 );.}..$descriptor.=.$this->descr
ecac0 69 70 74 6f 72 73 5b 24 6f 70 74 69 6f 6e 73 5b 27 66 6f 72 6d 61 74 27 5d 5d 3b 0a 24 64 65 73 iptors[$options['format']];.$des
ecae0 63 72 69 70 74 6f 72 2d 3e 64 65 73 63 72 69 62 65 28 24 6f 75 74 70 75 74 2c 20 24 6f 62 6a 65 criptor->describe($output,.$obje
ecb00 63 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ct,.$options);.}..........public
ecb20 20 66 75 6e 63 74 69 6f 6e 20 72 65 67 69 73 74 65 72 28 24 66 6f 72 6d 61 74 2c 20 44 65 73 63 .function.register($format,.Desc
ecb40 72 69 70 74 6f 72 49 6e 74 65 72 66 61 63 65 20 24 64 65 73 63 72 69 70 74 6f 72 29 0a 7b 0a 24 riptorInterface.$descriptor).{.$
ecb60 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 6f 72 73 5b 24 66 6f 72 6d 61 74 5d 20 3d 20 24 64 65 this->descriptors[$format].=.$de
ecb80 73 63 72 69 70 74 6f 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 scriptor;..return.$this;.}.....p
ecba0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 ublic.function.getName().{.retur
ecbc0 6e 20 27 64 65 73 63 72 69 70 74 6f 72 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a n.'descriptor';.}.}.<?php.......
ecbe0 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c ....namespace.Symfony\Component\
ecc00 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d Console\Helper;..use.Symfony\Com
ecc20 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 ponent\Console\Exception\Invalid
ecc40 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 ArgumentException;.use.Symfony\C
ecc60 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 52 75 6e 74 69 omponent\Console\Exception\Runti
ecc80 6d 65 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 meException;.use.Symfony\Compone
ecca0 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 nt\Console\Output\OutputInterfac
eccc0 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 e;.use.Symfony\Component\Console
ecce0 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 3b \Formatter\OutputFormatterStyle;
ecd00 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 69 61 6c 6f 67 48 65 6c 70 65 72 20 65 78 74 ..........class.DialogHelper.ext
ecd20 65 6e 64 73 20 49 6e 70 75 74 41 77 61 72 65 48 65 6c 70 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 ends.InputAwareHelper.{.private.
ecd40 24 69 6e 70 75 74 53 74 72 65 61 6d 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 73 68 $inputStream;.private.static.$sh
ecd60 65 6c 6c 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 73 74 74 79 3b 0a 0a 70 75 62 6c ell;.private.static.$stty;..publ
ecd80 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 72 69 67 67 65 72 ic.function.__construct($trigger
ecda0 44 65 70 72 65 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 24 DeprecationError.=.true).{.if.($
ecdc0 74 72 69 67 67 65 72 44 65 70 72 65 63 61 74 69 6f 6e 45 72 72 6f 72 29 20 7b 0a 40 74 72 69 67 triggerDeprecationError).{.@trig
ecde0 67 65 72 5f 65 72 72 6f 72 28 27 22 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f ger_error('"Symfony\Component\Co
ece00 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 44 69 61 6c 6f 67 48 65 6c 70 65 72 22 20 69 73 20 64 65 nsole\Helper\DialogHelper".is.de
ece20 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 35 20 61 6e 64 20 77 precated.since.version.2.5.and.w
ece40 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 22 53 79 6d 66 ill.be.removed.in.3.0..Use."Symf
ece60 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 51 75 65 ony\Component\Console\Helper\Que
ece80 73 74 69 6f 6e 48 65 6c 70 65 72 22 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 stionHelper".instead.',.E_USER_D
ecea0 45 50 52 45 43 41 54 45 44 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a EPRECATED);.}.}.................
ecec0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 28 4f 75 74 70 75 74 49 6e 74 public.function.select(OutputInt
ecee0 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 63 68 6f 69 erface.$output,.$question,.$choi
ecf00 63 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 24 61 74 74 65 6d 70 74 73 20 ces,.$default.=.null,.$attempts.
ecf20 3d 20 66 61 6c 73 65 2c 20 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d 20 27 56 61 6c 75 65 20 =.false,.$errorMessage.=.'Value.
ecf40 22 25 73 22 20 69 73 20 69 6e 76 61 6c 69 64 27 2c 20 24 6d 75 6c 74 69 73 65 6c 65 63 74 20 3d "%s".is.invalid',.$multiselect.=
ecf60 20 66 61 6c 73 65 29 0a 7b 0a 24 77 69 64 74 68 20 3d 20 6d 61 78 28 61 72 72 61 79 5f 6d 61 70 .false).{.$width.=.max(array_map
ecf80 28 27 73 74 72 6c 65 6e 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 63 68 6f 69 63 65 73 29 29 ('strlen',.array_keys($choices))
ecfa0 29 3b 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 71 75 65 73 74 69 6f );..$messages.=.(array).$questio
ecfc0 6e 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 68 6f 69 63 65 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 n;.foreach.($choices.as.$key.=>.
ecfe0 24 76 61 6c 75 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 $value).{.$messages[].=.sprintf(
ed000 22 20 20 5b 3c 69 6e 66 6f 3e 25 2d 7b 24 77 69 64 74 68 7d 73 3c 2f 69 6e 66 6f 3e 5d 20 25 73 "..[<info>%-{$width}s</info>].%s
ed020 22 2c 20 24 6b 65 79 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 ",.$key,.$value);.}..$output->wr
ed040 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 29 3b 0a 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 iteln($messages);..$result.=.$th
ed060 69 73 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 24 6f 75 74 70 75 74 2c 20 27 3e 20 27 is->askAndValidate($output,.'>.'
ed080 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 70 69 63 6b 65 64 29 20 75 73 65 20 28 24 63 68 6f 69 63 ,.function.($picked).use.($choic
ed0a0 65 73 2c 20 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c 20 24 6d 75 6c 74 69 73 65 6c 65 63 74 29 es,.$errorMessage,.$multiselect)
ed0c0 20 7b 0a 0a 20 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 20 3d 20 73 74 72 5f 72 65 70 6c .{...$selectedChoices.=.str_repl
ed0e0 61 63 65 28 27 20 27 2c 20 27 27 2c 20 24 70 69 63 6b 65 64 29 3b 0a 0a 69 66 20 28 24 6d 75 6c ace('.',.'',.$picked);..if.($mul
ed100 74 69 73 65 6c 65 63 74 29 20 7b 0a 0a 20 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f tiselect).{...if.(!preg_match('/
ed120 5e 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 2d 5d 2b 28 3f 3a 2c 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 2d 5d ^[a-zA-Z0-9_-]+(?:,[a-zA-Z0-9_-]
ed140 2b 29 2a 24 2f 27 2c 20 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 2c 20 24 6d 61 74 63 68 +)*$/',.$selectedChoices,.$match
ed160 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 es)).{.throw.new.InvalidArgument
ed180 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c Exception(sprintf($errorMessage,
ed1a0 20 24 70 69 63 6b 65 64 29 29 3b 0a 7d 0a 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 20 3d .$picked));.}.$selectedChoices.=
ed1c0 20 65 78 70 6c 6f 64 65 28 27 2c 27 2c 20 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 29 3b .explode(',',.$selectedChoices);
ed1e0 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 20 3d 20 61 72 72 .}.else.{.$selectedChoices.=.arr
ed200 61 79 28 24 70 69 63 6b 65 64 29 3b 0a 7d 0a 0a 24 6d 75 6c 74 69 73 65 6c 65 63 74 43 68 6f 69 ay($picked);.}..$multiselectChoi
ed220 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 73 65 6c 65 63 74 ces.=.array();..foreach.($select
ed240 65 64 43 68 6f 69 63 65 73 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 65 6d 70 74 79 edChoices.as.$value).{.if.(empty
ed260 28 24 63 68 6f 69 63 65 73 5b 24 76 61 6c 75 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 ($choices[$value])).{.throw.new.
ed280 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 InvalidArgumentException(sprintf
ed2a0 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c 20 24 76 61 6c 75 65 29 29 3b 0a 7d 0a 24 6d 75 6c ($errorMessage,.$value));.}.$mul
ed2c0 74 69 73 65 6c 65 63 74 43 68 6f 69 63 65 73 5b 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 69 tiselectChoices[].=.$value;.}..i
ed2e0 66 20 28 24 6d 75 6c 74 69 73 65 6c 65 63 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 75 6c 74 69 f.($multiselect).{.return.$multi
ed300 73 65 6c 65 63 74 43 68 6f 69 63 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 69 63 6b 65 64 selectChoices;.}..return.$picked
ed320 3b 0a 7d 2c 20 24 61 74 74 65 6d 70 74 73 2c 20 24 64 65 66 61 75 6c 74 29 3b 0a 0a 72 65 74 75 ;.},.$attempts,.$default);..retu
ed340 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 rn.$result;.}..............publi
ed360 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 c.function.ask(OutputInterface.$
ed380 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 output,.$question,.$default.=.nu
ed3a0 6c 6c 2c 20 61 72 72 61 79 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 20 3d 20 6e 75 6c 6c 29 0a ll,.array.$autocomplete.=.null).
ed3c0 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 26 26 20 21 24 74 68 69 73 2d 3e 69 6e {.if.($this->input.&&.!$this->in
ed3e0 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 put->isInteractive()).{.return.$
ed400 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 71 75 65 73 default;.}..$output->write($ques
ed420 74 69 6f 6e 29 3b 0a 0a 24 69 6e 70 75 74 53 74 72 65 61 6d 20 3d 20 24 74 68 69 73 2d 3e 69 6e tion);..$inputStream.=.$this->in
ed440 70 75 74 53 74 72 65 61 6d 20 3f 3a 20 53 54 44 49 4e 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d putStream.?:.STDIN;..if.(null.==
ed460 3d 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 20 7c 7c 20 21 24 74 68 69 73 2d 3e 68 61 73 53 74 =.$autocomplete.||.!$this->hasSt
ed480 74 79 41 76 61 69 6c 61 62 6c 65 28 29 29 20 7b 0a 24 72 65 74 20 3d 20 66 67 65 74 73 28 24 69 tyAvailable()).{.$ret.=.fgets($i
ed4a0 6e 70 75 74 53 74 72 65 61 6d 2c 20 34 30 39 36 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d nputStream,.4096);.if.(false.===
ed4c0 20 24 72 65 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 .$ret).{.throw.new.RuntimeExcept
ed4e0 69 6f 6e 28 27 41 62 6f 72 74 65 64 27 29 3b 0a 7d 0a 24 72 65 74 20 3d 20 74 72 69 6d 28 24 72 ion('Aborted');.}.$ret.=.trim($r
ed500 65 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 74 20 3d 20 27 27 3b 0a 0a 24 69 20 3d 20 30 et);.}.else.{.$ret.=.'';..$i.=.0
ed520 3b 0a 24 6f 66 73 20 3d 20 2d 31 3b 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 61 75 74 6f 63 6f 6d ;.$ofs.=.-1;.$matches.=.$autocom
ed540 70 6c 65 74 65 3b 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 63 6f 75 6e 74 28 24 6d 61 74 63 plete;.$numMatches.=.count($matc
ed560 68 65 73 29 3b 0a 0a 24 73 74 74 79 4d 6f 64 65 20 3d 20 73 68 65 6c 6c 5f 65 78 65 63 28 27 73 hes);..$sttyMode.=.shell_exec('s
ed580 74 74 79 20 2d 67 27 29 3b 0a 0a 0a 20 73 68 65 6c 6c 5f 65 78 65 63 28 27 73 74 74 79 20 2d 69 tty.-g');....shell_exec('stty.-i
ed5a0 63 61 6e 6f 6e 20 2d 65 63 68 6f 27 29 3b 0a 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f canon.-echo');....$output->getFo
ed5c0 72 6d 61 74 74 65 72 28 29 2d 3e 73 65 74 53 74 79 6c 65 28 27 68 6c 27 2c 20 6e 65 77 20 4f 75 rmatter()->setStyle('hl',.new.Ou
ed5e0 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 62 6c 61 63 6b 27 2c 20 27 77 68 69 tputFormatterStyle('black',.'whi
ed600 74 65 27 29 29 3b 0a 0a 0a 20 77 68 69 6c 65 20 28 21 66 65 6f 66 28 24 69 6e 70 75 74 53 74 72 te'));....while.(!feof($inputStr
ed620 65 61 6d 29 29 20 7b 0a 24 63 20 3d 20 66 72 65 61 64 28 24 69 6e 70 75 74 53 74 72 65 61 6d 2c eam)).{.$c.=.fread($inputStream,
ed640 20 31 29 3b 0a 0a 0a 20 69 66 20 28 22 5c 31 37 37 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 69 66 20 .1);....if.("\177".===.$c).{.if.
ed660 28 30 20 3d 3d 3d 20 24 6e 75 6d 4d 61 74 63 68 65 73 20 26 26 20 30 20 21 3d 3d 20 24 69 29 20 (0.===.$numMatches.&&.0.!==.$i).
ed680 7b 0a 2d 2d 24 69 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 5c 30 33 33 5b 31 {.--$i;...$output->write("\033[1
ed6a0 44 22 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 20 3d 3d 3d 20 30 29 20 7b 0a 24 6f 66 73 20 3d 20 2d D");.}..if.($i.===.0).{.$ofs.=.-
ed6c0 31 3b 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 3b 0a 24 6e 75 1;.$matches.=.$autocomplete;.$nu
ed6e0 6d 4d 61 74 63 68 65 73 20 3d 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 65 73 29 3b 0a 7d 20 65 6c mMatches.=.count($matches);.}.el
ed700 73 65 20 7b 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a 7d 0a 0a 0a 20 24 72 65 74 20 se.{.$numMatches.=.0;.}....$ret.
ed720 3d 20 73 75 62 73 74 72 28 24 72 65 74 2c 20 30 2c 20 24 69 29 3b 0a 7d 20 65 6c 73 65 69 66 20 =.substr($ret,.0,.$i);.}.elseif.
ed740 28 22 5c 30 33 33 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 0a 20 24 63 20 2e 3d 20 66 72 65 61 64 28 ("\033".===.$c).{...$c..=.fread(
ed760 24 69 6e 70 75 74 53 74 72 65 61 6d 2c 20 32 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 $inputStream,.2);....if.(isset($
ed780 63 5b 32 5d 29 20 26 26 20 28 27 41 27 20 3d 3d 3d 20 24 63 5b 32 5d 20 7c 7c 20 27 42 27 20 3d c[2]).&&.('A'.===.$c[2].||.'B'.=
ed7a0 3d 3d 20 24 63 5b 32 5d 29 29 20 7b 0a 69 66 20 28 27 41 27 20 3d 3d 3d 20 24 63 5b 32 5d 20 26 ==.$c[2])).{.if.('A'.===.$c[2].&
ed7c0 26 20 2d 31 20 3d 3d 3d 20 24 6f 66 73 29 20 7b 0a 24 6f 66 73 20 3d 20 30 3b 0a 7d 0a 0a 69 66 &.-1.===.$ofs).{.$ofs.=.0;.}..if
ed7e0 20 28 30 20 3d 3d 3d 20 24 6e 75 6d 4d 61 74 63 68 65 73 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b .(0.===.$numMatches).{.continue;
ed800 0a 7d 0a 0a 24 6f 66 73 20 2b 3d 20 28 27 41 27 20 3d 3d 3d 20 24 63 5b 32 5d 29 20 3f 20 2d 31 .}..$ofs.+=.('A'.===.$c[2]).?.-1
ed820 20 3a 20 31 3b 0a 24 6f 66 73 20 3d 20 28 24 6e 75 6d 4d 61 74 63 68 65 73 20 2b 20 24 6f 66 73 .:.1;.$ofs.=.($numMatches.+.$ofs
ed840 29 20 25 20 24 6e 75 6d 4d 61 74 63 68 65 73 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 6f 72 64 ).%.$numMatches;.}.}.elseif.(ord
ed860 28 24 63 29 20 3c 20 33 32 29 20 7b 0a 69 66 20 28 22 5c 74 22 20 3d 3d 3d 20 24 63 20 7c 7c 20 ($c).<.32).{.if.("\t".===.$c.||.
ed880 22 5c 6e 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 69 66 20 28 24 6e 75 6d 4d 61 74 63 68 65 73 20 3e "\n".===.$c).{.if.($numMatches.>
ed8a0 20 30 20 26 26 20 2d 31 20 21 3d 3d 20 24 6f 66 73 29 20 7b 0a 24 72 65 74 20 3d 20 24 6d 61 74 .0.&&.-1.!==.$ofs).{.$ret.=.$mat
ed8c0 63 68 65 73 5b 24 6f 66 73 5d 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 75 62 ches[$ofs];...$output->write(sub
ed8e0 73 74 72 28 24 72 65 74 2c 20 24 69 29 29 3b 0a 24 69 20 3d 20 73 74 72 6c 65 6e 28 24 72 65 74 str($ret,.$i));.$i.=.strlen($ret
ed900 29 3b 0a 7d 0a 0a 69 66 20 28 22 5c 6e 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 24 6f 75 74 70 75 74 );.}..if.("\n".===.$c).{.$output
ed920 2d 3e 77 72 69 74 65 28 24 63 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 6e 75 6d 4d 61 74 63 68 ->write($c);.break;.}..$numMatch
ed940 65 73 20 3d 20 30 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f es.=.0;.}..continue;.}.else.{.$o
ed960 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 63 29 3b 0a 24 72 65 74 20 2e 3d 20 24 63 3b 0a 2b 2b utput->write($c);.$ret..=.$c;.++
ed980 24 69 3b 0a 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a 24 6f 66 73 20 3d 20 30 3b 0a $i;..$numMatches.=.0;.$ofs.=.0;.
ed9a0 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 20 61 73 20 24 76 61 6c 75 .foreach.($autocomplete.as.$valu
ed9c0 65 29 20 7b 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 76 61 6c 75 65 2c 20 e).{...if.(0.===.strpos($value,.
ed9e0 24 72 65 74 29 20 26 26 20 24 69 20 21 3d 3d 20 73 74 72 6c 65 6e 28 24 76 61 6c 75 65 29 29 20 $ret).&&.$i.!==.strlen($value)).
eda00 7b 0a 24 6d 61 74 63 68 65 73 5b 24 6e 75 6d 4d 61 74 63 68 65 73 2b 2b 5d 20 3d 20 24 76 61 6c {.$matches[$numMatches++].=.$val
eda20 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 5c 30 33 ue;.}.}.}....$output->write("\03
eda40 33 5b 4b 22 29 3b 0a 0a 69 66 20 28 24 6e 75 6d 4d 61 74 63 68 65 73 20 3e 20 30 20 26 26 20 2d 3[K");..if.($numMatches.>.0.&&.-
eda60 31 20 21 3d 3d 20 24 6f 66 73 29 20 7b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 1.!==.$ofs).{...$output->write("
eda80 5c 30 33 33 37 22 29 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 27 3c 68 6c 3e 27 \0337");...$output->write('<hl>'
edaa0 2e 73 75 62 73 74 72 28 24 6d 61 74 63 68 65 73 5b 24 6f 66 73 5d 2c 20 24 69 29 2e 27 3c 2f 68 .substr($matches[$ofs],.$i).'</h
edac0 6c 3e 27 29 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 5c 30 33 33 38 22 29 3b l>');...$output->write("\0338");
edae0 0a 7d 0a 7d 0a 0a 0a 20 73 68 65 6c 6c 5f 65 78 65 63 28 73 70 72 69 6e 74 66 28 27 73 74 74 79 .}.}....shell_exec(sprintf('stty
edb00 20 25 73 27 2c 20 24 73 74 74 79 4d 6f 64 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 72 .%s',.$sttyMode));.}..return.str
edb20 6c 65 6e 28 24 72 65 74 29 20 3e 20 30 20 3f 20 24 72 65 74 20 3a 20 24 64 65 66 61 75 6c 74 3b len($ret).>.0.?.$ret.:.$default;
edb40 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 .}.............public.function.a
edb60 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 skConfirmation(OutputInterface.$
edb80 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 output,.$question,.$default.=.tr
edba0 75 65 29 0a 7b 0a 24 61 6e 73 77 65 72 20 3d 20 27 7a 27 3b 0a 77 68 69 6c 65 20 28 24 61 6e 73 ue).{.$answer.=.'z';.while.($ans
edbc0 77 65 72 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 61 6e 73 wer.&&.!in_array(strtolower($ans
edbe0 77 65 72 5b 30 5d 29 2c 20 61 72 72 61 79 28 27 79 27 2c 20 27 6e 27 29 29 29 20 7b 0a 24 61 6e wer[0]),.array('y',.'n'))).{.$an
edc00 73 77 65 72 20 3d 20 24 74 68 69 73 2d 3e 61 73 6b 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 swer.=.$this->ask($output,.$ques
edc20 74 69 6f 6e 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 64 65 66 61 75 6c 74 tion);.}..if.(false.===.$default
edc40 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 65 72 20 26 26 20 27 79 27 20 3d 3d 20 73 74 72 ).{.return.$answer.&&.'y'.==.str
edc60 74 6f 6c 6f 77 65 72 28 24 61 6e 73 77 65 72 5b 30 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 21 tolower($answer[0]);.}..return.!
edc80 24 61 6e 73 77 65 72 20 7c 7c 20 27 79 27 20 3d 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 61 6e $answer.||.'y'.==.strtolower($an
edca0 73 77 65 72 5b 30 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 swer[0]);.}.............public.f
edcc0 75 6e 63 74 69 6f 6e 20 61 73 6b 48 69 64 64 65 6e 52 65 73 70 6f 6e 73 65 28 4f 75 74 70 75 74 unction.askHiddenResponse(Output
edce0 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 66 Interface.$output,.$question,.$f
edd00 61 6c 6c 62 61 63 6b 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 allback.=.true).{.if.('\\'.===.D
edd20 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 24 65 78 65 20 3d 20 5f 5f 44 IRECTORY_SEPARATOR).{.$exe.=.__D
edd40 49 52 5f 5f 2e 27 2f 2e 2e 2f 52 65 73 6f 75 72 63 65 73 2f 62 69 6e 2f 68 69 64 64 65 6e 69 6e IR__.'/../Resources/bin/hiddenin
edd60 70 75 74 2e 65 78 65 27 3b 0a 0a 0a 20 69 66 20 28 27 70 68 61 72 3a 27 20 3d 3d 3d 20 73 75 62 put.exe';....if.('phar:'.===.sub
edd80 73 74 72 28 5f 5f 46 49 4c 45 5f 5f 2c 20 30 2c 20 35 29 29 20 7b 0a 24 74 6d 70 45 78 65 20 3d str(__FILE__,.0,.5)).{.$tmpExe.=
edda0 20 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 28 29 2e 27 2f 68 69 64 64 65 6e 69 6e 70 75 .sys_get_temp_dir().'/hiddeninpu
eddc0 74 2e 65 78 65 27 3b 0a 63 6f 70 79 28 24 65 78 65 2c 20 24 74 6d 70 45 78 65 29 3b 0a 24 65 78 t.exe';.copy($exe,.$tmpExe);.$ex
edde0 65 20 3d 20 24 74 6d 70 45 78 65 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 e.=.$tmpExe;.}..$output->write($
ede00 71 75 65 73 74 69 6f 6e 29 3b 0a 24 76 61 6c 75 65 20 3d 20 72 74 72 69 6d 28 73 68 65 6c 6c 5f question);.$value.=.rtrim(shell_
ede20 65 78 65 63 28 24 65 78 65 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 exec($exe));.$output->writeln(''
ede40 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 6d 70 45 78 65 29 29 20 7b 0a 75 6e 6c 69 6e 6b );..if.(isset($tmpExe)).{.unlink
ede60 28 24 74 6d 70 45 78 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a ($tmpExe);.}..return.$value;.}..
ede80 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 53 74 74 79 41 76 61 69 6c 61 62 6c 65 28 29 29 20 7b if.($this->hasSttyAvailable()).{
edea0 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 71 75 65 73 74 69 6f 6e 29 3b 0a 0a 24 73 74 .$output->write($question);..$st
edec0 74 79 4d 6f 64 65 20 3d 20 73 68 65 6c 6c 5f 65 78 65 63 28 27 73 74 74 79 20 2d 67 27 29 3b 0a tyMode.=.shell_exec('stty.-g');.
edee0 0a 73 68 65 6c 6c 5f 65 78 65 63 28 27 73 74 74 79 20 2d 65 63 68 6f 27 29 3b 0a 24 76 61 6c 75 .shell_exec('stty.-echo');.$valu
edf00 65 20 3d 20 66 67 65 74 73 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 20 3f 3a 20 e.=.fgets($this->inputStream.?:.
edf20 53 54 44 49 4e 2c 20 34 30 39 36 29 3b 0a 73 68 65 6c 6c 5f 65 78 65 63 28 73 70 72 69 6e 74 66 STDIN,.4096);.shell_exec(sprintf
edf40 28 27 73 74 74 79 20 25 73 27 2c 20 24 73 74 74 79 4d 6f 64 65 29 29 3b 0a 0a 69 66 20 28 66 61 ('stty.%s',.$sttyMode));..if.(fa
edf60 6c 73 65 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 lse.===.$value).{.throw.new.Runt
edf80 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 41 62 6f 72 74 65 64 27 29 3b 0a 7d 0a 0a 24 76 61 6c imeException('Aborted');.}..$val
edfa0 75 65 20 3d 20 74 72 69 6d 28 24 76 61 6c 75 65 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 ue.=.trim($value);.$output->writ
edfc0 65 6c 6e 28 27 27 29 3b 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 eln('');..return.$value;.}..if.(
edfe0 66 61 6c 73 65 20 21 3d 3d 20 24 73 68 65 6c 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 68 65 false.!==.$shell.=.$this->getShe
ee000 6c 6c 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 71 75 65 73 74 69 6f 6e ll()).{.$output->write($question
ee020 29 3b 0a 24 72 65 61 64 43 6d 64 20 3d 20 24 73 68 65 6c 6c 20 3d 3d 3d 20 27 63 73 68 27 20 3f );.$readCmd.=.$shell.===.'csh'.?
ee040 20 27 73 65 74 20 6d 79 70 61 73 73 77 6f 72 64 20 3d 20 24 3c 27 20 3a 20 27 72 65 61 64 20 2d .'set.mypassword.=.$<'.:.'read.-
ee060 72 20 6d 79 70 61 73 73 77 6f 72 64 27 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 r.mypassword';.$command.=.sprint
ee080 66 28 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 25 73 20 2d 63 20 27 73 74 74 79 20 2d 65 63 68 f("/usr/bin/env.%s.-c.'stty.-ech
ee0a0 6f 3b 20 25 73 3b 20 73 74 74 79 20 65 63 68 6f 3b 20 65 63 68 6f 20 5c 24 6d 79 70 61 73 73 77 o;.%s;.stty.echo;.echo.\$mypassw
ee0c0 6f 72 64 27 22 2c 20 24 73 68 65 6c 6c 2c 20 24 72 65 61 64 43 6d 64 29 3b 0a 24 76 61 6c 75 65 ord'",.$shell,.$readCmd);.$value
ee0e0 20 3d 20 72 74 72 69 6d 28 73 68 65 6c 6c 5f 65 78 65 63 28 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a .=.rtrim(shell_exec($command));.
ee100 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a 0a 72 65 74 75 72 6e 20 24 76 $output->writeln('');..return.$v
ee120 61 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 66 61 6c 6c 62 61 63 6b 29 20 7b 0a 72 65 74 75 72 6e alue;.}..if.($fallback).{.return
ee140 20 24 74 68 69 73 2d 3e 61 73 6b 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b .$this->ask($output,.$question);
ee160 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 .}..throw.new.RuntimeException('
ee180 55 6e 61 62 6c 65 20 74 6f 20 68 69 64 65 20 74 68 65 20 72 65 73 70 6f 6e 73 65 27 29 3b 0a 7d Unable.to.hide.the.response');.}
ee1a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ....................public.funct
ee1c0 69 6f 6e 20 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 ion.askAndValidate(OutputInterfa
ee1e0 63 65 20 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f ce.$output,.$question,.$validato
ee200 72 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 64 65 66 61 75 6c 74 20 3d r,.$attempts.=.false,.$default.=
ee220 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 20 3d 20 6e 75 6c .null,.array.$autocomplete.=.nul
ee240 6c 29 0a 7b 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a 0a 24 69 6e 74 65 72 76 69 65 77 65 l).{.$that.=.$this;..$interviewe
ee260 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 75 73 65 20 28 24 6f 75 74 70 75 74 2c 20 24 71 r.=.function.().use.($output,.$q
ee280 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 2c 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 uestion,.$default,.$autocomplete
ee2a0 2c 20 24 74 68 61 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 61 74 2d 3e 61 73 6b 28 24 6f 75 ,.$that).{.return.$that->ask($ou
ee2c0 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 2c 20 24 61 75 74 6f tput,.$question,.$default,.$auto
ee2e0 63 6f 6d 70 6c 65 74 65 29 3b 0a 7d 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c complete);.};..return.$this->val
ee300 69 64 61 74 65 41 74 74 65 6d 70 74 73 28 24 69 6e 74 65 72 76 69 65 77 65 72 2c 20 24 6f 75 74 idateAttempts($interviewer,.$out
ee320 70 75 74 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 29 3b 0a 7d 0a 0a put,.$validator,.$attempts);.}..
ee340 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ..................public.functio
ee360 6e 20 61 73 6b 48 69 64 64 65 6e 52 65 73 70 6f 6e 73 65 41 6e 64 56 61 6c 69 64 61 74 65 28 4f n.askHiddenResponseAndValidate(O
ee380 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f utputInterface.$output,.$questio
ee3a0 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 n,.$validator,.$attempts.=.false
ee3c0 2c 20 24 66 61 6c 6c 62 61 63 6b 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 61 74 20 3d 20 24 74 ,.$fallback.=.true).{.$that.=.$t
ee3e0 68 69 73 3b 0a 0a 24 69 6e 74 65 72 76 69 65 77 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 29 his;..$interviewer.=.function.()
ee400 20 75 73 65 20 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 66 61 6c 6c 62 .use.($output,.$question,.$fallb
ee420 61 63 6b 2c 20 24 74 68 61 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 61 74 2d 3e 61 73 6b 48 ack,.$that).{.return.$that->askH
ee440 69 64 64 65 6e 52 65 73 70 6f 6e 73 65 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e iddenResponse($output,.$question
ee460 2c 20 24 66 61 6c 6c 62 61 63 6b 29 3b 0a 7d 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e ,.$fallback);.};..return.$this->
ee480 76 61 6c 69 64 61 74 65 41 74 74 65 6d 70 74 73 28 24 69 6e 74 65 72 76 69 65 77 65 72 2c 20 24 validateAttempts($interviewer,.$
ee4a0 6f 75 74 70 75 74 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 29 3b 0a output,.$validator,.$attempts);.
ee4c0 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 70 }.........public.function.setInp
ee4e0 75 74 53 74 72 65 61 6d 28 24 73 74 72 65 61 6d 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 utStream($stream).{.$this->input
ee500 53 74 72 65 61 6d 20 3d 20 24 73 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 Stream.=.$stream;.}.......public
ee520 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 53 74 72 65 61 6d 28 29 0a 7b 0a 72 65 74 .function.getInputStream().{.ret
ee540 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 urn.$this->inputStream;.}.....pu
ee560 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e blic.function.getName().{.return
ee580 20 27 64 69 61 6c 6f 67 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 .'dialog';.}.......private.funct
ee5a0 69 6f 6e 20 67 65 74 53 68 65 6c 6c 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 73 65 ion.getShell().{.if.(null.!==.se
ee5c0 6c 66 3a 3a 24 73 68 65 6c 6c 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 68 65 6c lf::$shell).{.return.self::$shel
ee5e0 6c 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 73 68 65 6c 6c 20 3d 20 66 61 6c 73 65 3b 0a 0a 69 66 20 l;.}..self::$shell.=.false;..if.
ee600 28 66 69 6c 65 5f 65 78 69 73 74 73 28 27 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 27 29 29 20 7b 0a (file_exists('/usr/bin/env')).{.
ee620 0a 20 24 74 65 73 74 20 3d 20 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 25 73 20 2d 63 20 27 65 ..$test.=."/usr/bin/env.%s.-c.'e
ee640 63 68 6f 20 4f 4b 27 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 22 3b 0a 66 6f 72 65 61 63 68 20 28 cho.OK'.2>./dev/null";.foreach.(
ee660 61 72 72 61 79 28 27 62 61 73 68 27 2c 20 27 7a 73 68 27 2c 20 27 6b 73 68 27 2c 20 27 63 73 68 array('bash',.'zsh',.'ksh',.'csh
ee680 27 29 20 61 73 20 24 73 68 29 20 7b 0a 69 66 20 28 27 4f 4b 27 20 3d 3d 3d 20 72 74 72 69 6d 28 ').as.$sh).{.if.('OK'.===.rtrim(
ee6a0 73 68 65 6c 6c 5f 65 78 65 63 28 73 70 72 69 6e 74 66 28 24 74 65 73 74 2c 20 24 73 68 29 29 29 shell_exec(sprintf($test,.$sh)))
ee6c0 29 20 7b 0a 73 65 6c 66 3a 3a 24 73 68 65 6c 6c 20 3d 20 24 73 68 3b 0a 62 72 65 61 6b 3b 0a 7d ).{.self::$shell.=.$sh;.break;.}
ee6e0 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 68 65 6c 6c 3b 0a 7d 0a 0a 70 72 .}.}..return.self::$shell;.}..pr
ee700 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 74 79 41 76 61 69 6c 61 62 6c 65 28 ivate.function.hasSttyAvailable(
ee720 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 73 65 6c 66 3a 3a 24 73 74 74 79 29 20 7b 0a ).{.if.(null.!==.self::$stty).{.
ee740 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 74 74 79 3b 0a 7d 0a 0a 65 78 65 63 28 27 73 74 74 return.self::$stty;.}..exec('stt
ee760 79 20 32 3e 26 31 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 65 78 69 74 63 6f 64 65 29 3b 0a 0a 72 y.2>&1',.$output,.$exitcode);..r
ee780 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 74 74 79 20 3d 20 24 65 78 69 74 63 6f 64 65 20 3d 3d eturn.self::$stty.=.$exitcode.==
ee7a0 3d 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 =.0;.}..............private.func
ee7c0 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 41 74 74 65 6d 70 74 73 28 24 69 6e 74 65 72 76 69 65 77 tion.validateAttempts($interview
ee7e0 65 72 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 76 61 er,.OutputInterface.$output,.$va
ee800 6c 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 29 0a 7b 0a 24 65 20 3d 20 6e 75 6c 6c 3b lidator,.$attempts).{.$e.=.null;
ee820 0a 77 68 69 6c 65 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 61 74 74 65 6d 70 74 73 20 7c 7c 20 24 .while.(false.===.$attempts.||.$
ee840 61 74 74 65 6d 70 74 73 2d 2d 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 65 29 20 7b attempts--).{.if.(null.!==.$e).{
ee860 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 .$output->writeln($this->getHelp
ee880 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 66 6f 72 6d 61 74 74 65 72 27 29 2d 3e 66 6f 72 6d 61 erSet()->get('formatter')->forma
ee8a0 74 42 6c 6f 63 6b 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 27 65 72 72 6f 72 27 tBlock($e->getMessage(),.'error'
ee8c0 29 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 ));.}..try.{.return.call_user_fu
ee8e0 6e 63 28 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 69 6e 74 65 72 76 69 65 77 65 72 28 29 29 3b 0a nc($validator,.$interviewer());.
ee900 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 7d 0a 0a 74 }.catch.(\Exception.$e).{.}.}..t
ee920 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d hrow.$e;.}.}.<?php...........nam
ee940 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 espace.Symfony\Component\Console
ee960 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c \Helper;..use.Symfony\Component\
ee980 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 Console\Formatter\OutputFormatte
ee9a0 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 20 65 r;.......class.FormatterHelper.e
ee9c0 78 74 65 6e 64 73 20 48 65 6c 70 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 xtends.Helper.{..........public.
ee9e0 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 53 65 63 74 69 6f 6e 28 24 73 65 63 74 69 6f 6e 2c function.formatSection($section,
eea00 20 24 6d 65 73 73 61 67 65 2c 20 24 73 74 79 6c 65 20 3d 20 27 69 6e 66 6f 27 29 0a 7b 0a 72 65 .$message,.$style.=.'info').{.re
eea20 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 3c 25 73 3e 5b 25 73 5d 3c 2f 25 73 3e 20 25 73 27 2c turn.sprintf('<%s>[%s]</%s>.%s',
eea40 20 24 73 74 79 6c 65 2c 20 24 73 65 63 74 69 6f 6e 2c 20 24 73 74 79 6c 65 2c 20 24 6d 65 73 73 .$style,.$section,.$style,.$mess
eea60 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f age);.}...........public.functio
eea80 6e 20 66 6f 72 6d 61 74 42 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 73 2c 20 24 73 74 79 6c 65 2c n.formatBlock($messages,.$style,
eeaa0 20 24 6c 61 72 67 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 .$large.=.false).{.if.(!is_array
eeac0 28 24 6d 65 73 73 61 67 65 73 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 ($messages)).{.$messages.=.array
eeae0 28 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a 24 6c 65 6e 20 3d 20 30 3b 0a 24 6c 69 6e 65 73 ($messages);.}..$len.=.0;.$lines
eeb00 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 .=.array();.foreach.($messages.a
eeb20 73 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 4f 75 74 70 75 74 46 s.$message).{.$message.=.OutputF
eeb40 6f 72 6d 61 74 74 65 72 3a 3a 65 73 63 61 70 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 24 6c 69 6e ormatter::escape($message);.$lin
eeb60 65 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 24 6c 61 72 67 65 20 3f 20 27 20 20 25 73 20 20 27 es[].=.sprintf($large.?.'..%s..'
eeb80 20 3a 20 27 20 25 73 20 27 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 24 6c 65 6e 20 3d 20 6d 61 78 .:.'.%s.',.$message);.$len.=.max
eeba0 28 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 6d 65 73 73 61 67 65 29 20 2b 20 28 24 6c 61 72 ($this->strlen($message).+.($lar
eebc0 67 65 20 3f 20 34 20 3a 20 32 29 2c 20 24 6c 65 6e 29 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 73 ge.?.4.:.2),.$len);.}..$messages
eebe0 20 3d 20 24 6c 61 72 67 65 20 3f 20 61 72 72 61 79 28 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 .=.$large.?.array(str_repeat('.'
eec00 2c 20 24 6c 65 6e 29 29 20 3a 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b ,.$len)).:.array();.for.($i.=.0;
eec20 20 69 73 73 65 74 28 24 6c 69 6e 65 73 5b 24 69 5d 29 3b 20 2b 2b 24 69 29 20 7b 0a 24 6d 65 73 .isset($lines[$i]);.++$i).{.$mes
eec40 73 61 67 65 73 5b 5d 20 3d 20 24 6c 69 6e 65 73 5b 24 69 5d 2e 73 74 72 5f 72 65 70 65 61 74 28 sages[].=.$lines[$i].str_repeat(
eec60 27 20 27 2c 20 24 6c 65 6e 20 2d 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 6c 69 6e 65 73 '.',.$len.-.$this->strlen($lines
eec80 5b 24 69 5d 29 29 3b 0a 7d 0a 69 66 20 28 24 6c 61 72 67 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 [$i]));.}.if.($large).{.$message
eeca0 73 5b 5d 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 29 3b 0a 7d 0a 0a s[].=.str_repeat('.',.$len);.}..
eecc0 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 69 73 73 65 74 28 24 6d 65 73 73 61 67 65 73 5b 24 69 5d for.($i.=.0;.isset($messages[$i]
eece0 29 3b 20 2b 2b 24 69 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 24 69 5d 20 3d 20 73 70 72 69 6e );.++$i).{.$messages[$i].=.sprin
eed00 74 66 28 27 3c 25 73 3e 25 73 3c 2f 25 73 3e 27 2c 20 24 73 74 79 6c 65 2c 20 24 6d 65 73 73 61 tf('<%s>%s</%s>',.$style,.$messa
eed20 67 65 73 5b 24 69 5d 2c 20 24 73 74 79 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c ges[$i],.$style);.}..return.impl
eed40 6f 64 65 28 22 5c 6e 22 2c 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c ode("\n",.$messages);.}.....publ
eed60 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 ic.function.getName().{.return.'
eed80 66 6f 72 6d 61 74 74 65 72 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a formatter';.}.}.<?php...........
eeda0 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 namespace.Symfony\Component\Cons
eedc0 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 ole\Helper;..use.Symfony\Compone
eede0 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 nt\Console\Formatter\OutputForma
eee00 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c tterInterface;.......abstract.cl
eee20 61 73 73 20 48 65 6c 70 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 48 65 6c 70 65 72 49 6e 74 65 ass.Helper.implements.HelperInte
eee40 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 65 6c 70 65 72 53 65 74 20 3d 20 6e rface.{.protected.$helperSet.=.n
eee60 75 6c 6c 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 ull;.......public.function.setHe
eee80 6c 70 65 72 53 65 74 28 48 65 6c 70 65 72 53 65 74 20 24 68 65 6c 70 65 72 53 65 74 20 3d 20 6e lperSet(HelperSet.$helperSet.=.n
eeea0 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 24 68 65 6c 70 65 ull).{.$this->helperSet.=.$helpe
eeec0 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 rSet;.}.......public.function.ge
eeee0 74 48 65 6c 70 65 72 53 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c tHelperSet().{.return.$this->hel
eef00 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 perSet;.}.........public.static.
eef20 66 75 6e 63 74 69 6f 6e 20 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 0a 7b 0a 69 66 20 28 66 function.strlen($string).{.if.(f
eef40 61 6c 73 65 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6d 62 5f 64 65 74 65 63 74 5f 65 alse.===.$encoding.=.mb_detect_e
eef60 6e 63 6f 64 69 6e 67 28 24 73 74 72 69 6e 67 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 29 20 7b 0a ncoding($string,.null,.true)).{.
eef80 72 65 74 75 72 6e 20 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 3b 0a 7d 0a 0a 72 65 74 75 72 return.strlen($string);.}..retur
eefa0 6e 20 6d 62 5f 73 74 72 77 69 64 74 68 28 24 73 74 72 69 6e 67 2c 20 24 65 6e 63 6f 64 69 6e 67 n.mb_strwidth($string,.$encoding
eefc0 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 );.}..public.static.function.for
eefe0 6d 61 74 54 69 6d 65 28 24 73 65 63 73 29 0a 7b 0a 73 74 61 74 69 63 20 24 74 69 6d 65 46 6f 72 matTime($secs).{.static.$timeFor
ef000 6d 61 74 73 20 3d 20 61 72 72 61 79 28 0a 61 72 72 61 79 28 30 2c 20 27 3c 20 31 20 73 65 63 27 mats.=.array(.array(0,.'<.1.sec'
ef020 29 2c 0a 61 72 72 61 79 28 32 2c 20 27 31 20 73 65 63 27 29 2c 0a 61 72 72 61 79 28 35 39 2c 20 ),.array(2,.'1.sec'),.array(59,.
ef040 27 73 65 63 73 27 2c 20 31 29 2c 0a 61 72 72 61 79 28 36 30 2c 20 27 31 20 6d 69 6e 27 29 2c 0a 'secs',.1),.array(60,.'1.min'),.
ef060 61 72 72 61 79 28 33 36 30 30 2c 20 27 6d 69 6e 73 27 2c 20 36 30 29 2c 0a 61 72 72 61 79 28 35 array(3600,.'mins',.60),.array(5
ef080 34 30 30 2c 20 27 31 20 68 72 27 29 2c 0a 61 72 72 61 79 28 38 36 34 30 30 2c 20 27 68 72 73 27 400,.'1.hr'),.array(86400,.'hrs'
ef0a0 2c 20 33 36 30 30 29 2c 0a 61 72 72 61 79 28 31 32 39 36 30 30 2c 20 27 31 20 64 61 79 27 29 2c ,.3600),.array(129600,.'1.day'),
ef0c0 0a 61 72 72 61 79 28 36 30 34 38 30 30 2c 20 27 64 61 79 73 27 2c 20 38 36 34 30 30 29 2c 0a 29 .array(604800,.'days',.86400),.)
ef0e0 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 69 6d 65 46 6f 72 6d 61 74 73 20 61 73 20 24 66 6f 72 ;..foreach.($timeFormats.as.$for
ef100 6d 61 74 29 20 7b 0a 69 66 20 28 24 73 65 63 73 20 3e 3d 20 24 66 6f 72 6d 61 74 5b 30 5d 29 20 mat).{.if.($secs.>=.$format[0]).
ef120 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 32 20 3d 3d 20 63 6f 75 6e 74 28 24 66 {.continue;.}..if.(2.==.count($f
ef140 6f 72 6d 61 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 6f 72 6d 61 74 5b 31 5d 3b 0a 7d 0a 0a ormat)).{.return.$format[1];.}..
ef160 72 65 74 75 72 6e 20 63 65 69 6c 28 24 73 65 63 73 20 2f 20 24 66 6f 72 6d 61 74 5b 32 5d 29 2e return.ceil($secs./.$format[2]).
ef180 27 20 27 2e 24 66 6f 72 6d 61 74 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 '.'.$format[1];.}.}..public.stat
ef1a0 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 4d 65 6d 6f 72 79 28 24 6d 65 6d 6f 72 79 ic.function.formatMemory($memory
ef1c0 29 0a 7b 0a 69 66 20 28 24 6d 65 6d 6f 72 79 20 3e 3d 20 31 30 32 34 20 2a 20 31 30 32 34 20 2a ).{.if.($memory.>=.1024.*.1024.*
ef1e0 20 31 30 32 34 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 25 2e 31 66 20 47 69 .1024).{.return.sprintf('%.1f.Gi
ef200 42 27 2c 20 24 6d 65 6d 6f 72 79 20 2f 20 31 30 32 34 20 2f 20 31 30 32 34 20 2f 20 31 30 32 34 B',.$memory./.1024./.1024./.1024
ef220 29 3b 0a 7d 0a 0a 69 66 20 28 24 6d 65 6d 6f 72 79 20 3e 3d 20 31 30 32 34 20 2a 20 31 30 32 34 );.}..if.($memory.>=.1024.*.1024
ef240 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 25 2e 31 66 20 4d 69 42 27 2c 20 24 ).{.return.sprintf('%.1f.MiB',.$
ef260 6d 65 6d 6f 72 79 20 2f 20 31 30 32 34 20 2f 20 31 30 32 34 29 3b 0a 7d 0a 0a 69 66 20 28 24 6d memory./.1024./.1024);.}..if.($m
ef280 65 6d 6f 72 79 20 3e 3d 20 31 30 32 34 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 emory.>=.1024).{.return.sprintf(
ef2a0 27 25 64 20 4b 69 42 27 2c 20 24 6d 65 6d 6f 72 79 20 2f 20 31 30 32 34 29 3b 0a 7d 0a 0a 72 65 '%d.KiB',.$memory./.1024);.}..re
ef2c0 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 25 64 20 42 27 2c 20 24 6d 65 6d 6f 72 79 29 3b 0a 7d turn.sprintf('%d.B',.$memory);.}
ef2e0 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 72 6c 65 6e 57 ..public.static.function.strlenW
ef300 69 74 68 6f 75 74 44 65 63 6f 72 61 74 69 6f 6e 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 ithoutDecoration(OutputFormatter
ef320 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 2c 20 24 73 74 72 69 6e 67 29 0a 7b Interface.$formatter,.$string).{
ef340 0a 24 69 73 44 65 63 6f 72 61 74 65 64 20 3d 20 24 66 6f 72 6d 61 74 74 65 72 2d 3e 69 73 44 65 .$isDecorated.=.$formatter->isDe
ef360 63 6f 72 61 74 65 64 28 29 3b 0a 24 66 6f 72 6d 61 74 74 65 72 2d 3e 73 65 74 44 65 63 6f 72 61 corated();.$formatter->setDecora
ef380 74 65 64 28 66 61 6c 73 65 29 3b 0a 0a 20 24 73 74 72 69 6e 67 20 3d 20 24 66 6f 72 6d 61 74 74 ted(false);...$string.=.$formatt
ef3a0 65 72 2d 3e 66 6f 72 6d 61 74 28 24 73 74 72 69 6e 67 29 3b 0a 0a 20 24 73 74 72 69 6e 67 20 3d er->format($string);...$string.=
ef3c0 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 22 2f 5c 30 33 33 5c 5b 5b 5e 6d 5d 2a 6d 2f 22 2c 20 .preg_replace("/\033\[[^m]*m/",.
ef3e0 27 27 2c 20 24 73 74 72 69 6e 67 29 3b 0a 24 66 6f 72 6d 61 74 74 65 72 2d 3e 73 65 74 44 65 63 '',.$string);.$formatter->setDec
ef400 6f 72 61 74 65 64 28 24 69 73 44 65 63 6f 72 61 74 65 64 29 3b 0a 0a 72 65 74 75 72 6e 20 73 65 orated($isDecorated);..return.se
ef420 6c 66 3a 3a 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a lf::strlen($string);.}.}.<?php..
ef440 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f .........namespace.Symfony\Compo
ef460 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 nent\Console\Helper;.......inter
ef480 66 61 63 65 20 48 65 6c 70 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c face.HelperInterface.{......publ
ef4a0 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 6c 70 65 72 53 65 74 28 48 65 6c 70 65 72 53 ic.function.setHelperSet(HelperS
ef4c0 65 74 20 24 68 65 6c 70 65 72 53 65 74 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 et.$helperSet.=.null);.......pub
ef4e0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 3b 0a 0a 0a 0a lic.function.getHelperSet();....
ef500 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 3b 0a 7d 0a ...public.function.getName();.}.
ef520 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e <?php...........namespace.Symfon
ef540 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 y\Component\Console\Helper;..use
ef560 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 .Symfony\Component\Console\Comma
ef580 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e nd\Command;.use.Symfony\Componen
ef5a0 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d t\Console\Exception\InvalidArgum
ef5c0 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 65 6c 70 65 72 entException;.......class.Helper
ef5e0 53 65 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 Set.implements.\IteratorAggregat
ef600 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 68 65 6c 70 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a e.{.private.$helpers.=.array();.
ef620 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 private.$command;.......public.f
ef640 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 68 65 6c 70 65 unction.__construct(array.$helpe
ef660 72 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 68 65 6c 70 65 72 rs.=.array()).{.foreach.($helper
ef680 73 20 61 73 20 24 61 6c 69 61 73 20 3d 3e 20 24 68 65 6c 70 65 72 29 20 7b 0a 24 74 68 69 73 2d s.as.$alias.=>.$helper).{.$this-
ef6a0 3e 73 65 74 28 24 68 65 6c 70 65 72 2c 20 69 73 5f 69 6e 74 28 24 61 6c 69 61 73 29 20 3f 20 6e >set($helper,.is_int($alias).?.n
ef6c0 75 6c 6c 20 3a 20 24 61 6c 69 61 73 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ull.:.$alias);.}.}........public
ef6e0 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 28 48 65 6c 70 65 72 49 6e 74 65 72 66 61 63 65 20 24 68 .function.set(HelperInterface.$h
ef700 65 6c 70 65 72 2c 20 24 61 6c 69 61 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 elper,.$alias.=.null).{.$this->h
ef720 65 6c 70 65 72 73 5b 24 68 65 6c 70 65 72 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 68 65 elpers[$helper->getName()].=.$he
ef740 6c 70 65 72 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 61 6c 69 61 73 29 20 7b 0a 24 74 68 lper;.if.(null.!==.$alias).{.$th
ef760 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 61 6c 69 61 73 5d 20 3d 20 24 68 65 6c 70 65 72 3b 0a 7d is->helpers[$alias].=.$helper;.}
ef780 0a 0a 24 68 65 6c 70 65 72 2d 3e 73 65 74 48 65 6c 70 65 72 53 65 74 28 24 74 68 69 73 29 3b 0a ..$helper->setHelperSet($this);.
ef7a0 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 28 24 6e }.........public.function.has($n
ef7c0 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 68 65 6c 70 65 ame).{.return.isset($this->helpe
ef7e0 72 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 rs[$name]);.}...........public.f
ef800 75 6e 63 74 69 6f 6e 20 67 65 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d unction.get($name).{.if.(!$this-
ef820 3e 68 61 73 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 >has($name)).{.throw.new.Invalid
ef840 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 68 ArgumentException(sprintf('The.h
ef860 65 6c 70 65 72 20 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2e 27 2c 20 24 6e 61 elper."%s".is.not.defined.',.$na
ef880 6d 65 29 29 3b 0a 7d 0a 0a 69 66 20 28 27 64 69 61 6c 6f 67 27 20 3d 3d 3d 20 24 6e 61 6d 65 20 me));.}..if.('dialog'.===.$name.
ef8a0 26 26 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 6e 61 6d 65 5d 20 69 6e 73 74 61 6e 63 &&.$this->helpers[$name].instanc
ef8c0 65 6f 66 20 44 69 61 6c 6f 67 48 65 6c 70 65 72 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 eof.DialogHelper).{.@trigger_err
ef8e0 6f 72 28 27 22 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 or('"Symfony\Component\Console\H
ef900 65 6c 70 65 72 5c 44 69 61 6c 6f 67 48 65 6c 70 65 72 22 20 69 73 20 64 65 70 72 65 63 61 74 65 elper\DialogHelper".is.deprecate
ef920 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 35 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 d.since.version.2.5.and.will.be.
ef940 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 22 53 79 6d 66 6f 6e 79 5c 43 6f 6d removed.in.3.0..Use."Symfony\Com
ef960 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 51 75 65 73 74 69 6f 6e 48 65 ponent\Console\Helper\QuestionHe
ef980 6c 70 65 72 22 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 lper".instead.',.E_USER_DEPRECAT
ef9a0 45 44 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 70 72 6f 67 72 65 73 73 27 20 3d 3d 3d 20 24 6e ED);.}.elseif.('progress'.===.$n
ef9c0 61 6d 65 20 26 26 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 6e 61 6d 65 5d 20 69 6e 73 ame.&&.$this->helpers[$name].ins
ef9e0 74 61 6e 63 65 6f 66 20 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 29 20 7b 0a 40 74 72 69 67 67 tanceof.ProgressHelper).{.@trigg
efa00 65 72 5f 65 72 72 6f 72 28 27 22 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e er_error('"Symfony\Component\Con
efa20 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 22 20 69 73 20 64 sole\Helper\ProgressHelper".is.d
efa40 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 35 20 61 6e 64 20 eprecated.since.version.2.5.and.
efa60 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 22 53 79 6d will.be.removed.in.3.0..Use."Sym
efa80 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 50 72 fony\Component\Console\Helper\Pr
efaa0 6f 67 72 65 73 73 42 61 72 22 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 ogressBar".instead.',.E_USER_DEP
efac0 52 45 43 41 54 45 44 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 74 61 62 6c 65 27 20 3d 3d 3d 20 RECATED);.}.elseif.('table'.===.
efae0 24 6e 61 6d 65 20 26 26 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 6e 61 6d 65 5d 20 69 $name.&&.$this->helpers[$name].i
efb00 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 48 65 6c 70 65 72 29 20 7b 0a 40 74 72 69 67 67 65 nstanceof.TableHelper).{.@trigge
efb20 72 5f 65 72 72 6f 72 28 27 22 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 r_error('"Symfony\Component\Cons
efb40 6f 6c 65 5c 48 65 6c 70 65 72 5c 54 61 62 6c 65 48 65 6c 70 65 72 22 20 69 73 20 64 65 70 72 65 ole\Helper\TableHelper".is.depre
efb60 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 35 20 61 6e 64 20 77 69 6c 6c cated.since.version.2.5.and.will
efb80 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 22 53 79 6d 66 6f 6e 79 .be.removed.in.3.0..Use."Symfony
efba0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 54 61 62 6c 65 22 \Component\Console\Helper\Table"
efbc0 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a .instead.',.E_USER_DEPRECATED);.
efbe0 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 6e 61 6d 65 5d 3b }..return.$this->helpers[$name];
efc00 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6d 6d .}.......public.function.setComm
efc20 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 and(Command.$command.=.null).{.$
efc40 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a this->command.=.$command;.}.....
efc60 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 28 29 0a 7b ..public.function.getCommand().{
efc80 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 70 75 62 6c 69 .return.$this->command;.}..publi
efca0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 74 65 72 61 74 6f 72 28 29 0a 7b 0a 72 65 74 75 72 c.function.getIterator().{.retur
efcc0 6e 20 6e 65 77 20 5c 41 72 72 61 79 49 74 65 72 61 74 6f 72 28 24 74 68 69 73 2d 3e 68 65 6c 70 n.new.\ArrayIterator($this->help
efce0 65 72 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 ers);.}.}.<?php...........namesp
efd00 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 ace.Symfony\Component\Console\He
efd20 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e lper;..use.Symfony\Component\Con
efd40 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 sole\Input\InputInterface;.use.S
efd60 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 ymfony\Component\Console\Input\I
efd80 6e 70 75 74 41 77 61 72 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 nputAwareInterface;.......abstra
efda0 63 74 20 63 6c 61 73 73 20 49 6e 70 75 74 41 77 61 72 65 48 65 6c 70 65 72 20 65 78 74 65 6e 64 ct.class.InputAwareHelper.extend
efdc0 73 20 48 65 6c 70 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 70 75 74 41 77 61 72 65 49 6e s.Helper.implements.InputAwareIn
efde0 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 70 75 74 3b 0a 0a 0a 0a 0a terface.{.protected.$input;.....
efe00 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 70 75 74 28 49 6e 70 75 74 49 6e public.function.setInput(InputIn
efe20 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d terface.$input).{.$this->input.=
efe40 20 24 69 6e 70 75 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d .$input;.}.}.<?php...........nam
efe60 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 espace.Symfony\Component\Console
efe80 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c \Helper;..use.Symfony\Component\
efea0 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 Console\Output\ConsoleOutputInte
efec0 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e rface;.use.Symfony\Component\Con
efee0 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 sole\Output\OutputInterface;.use
eff00 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 .Symfony\Component\Process\Excep
eff20 74 69 6f 6e 5c 50 72 6f 63 65 73 73 46 61 69 6c 65 64 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 tion\ProcessFailedException;.use
eff40 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 .Symfony\Component\Process\Proce
eff60 73 73 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 ss;.use.Symfony\Component\Proces
eff80 73 5c 50 72 6f 63 65 73 73 42 75 69 6c 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 s\ProcessBuilder;.......class.Pr
effa0 6f 63 65 73 73 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c 70 65 72 0a 7b 0a 0a 0a 0a ocessHelper.extends.Helper.{....
effc0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 4f 75 74 .........public.function.run(Out
effe0 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 63 6d 64 2c 20 24 65 72 72 putInterface.$output,.$cmd,.$err
f0000 6f 72 20 3d 20 6e 75 6c 6c 2c 20 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 2c 20 24 76 65 or.=.null,.$callback.=.null,.$ve
f0020 72 62 6f 73 69 74 79 20 3d 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f rbosity.=.OutputInterface::VERBO
f0040 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 29 0a 7b 0a 69 66 20 28 24 6f 75 74 70 75 74 SITY_VERY_VERBOSE).{.if.($output
f0060 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 .instanceof.ConsoleOutputInterfa
f0080 63 65 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f ce).{.$output.=.$output->getErro
f00a0 72 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 74 68 69 73 rOutput();.}..$formatter.=.$this
f00c0 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 64 65 62 75 67 5f 66 6f 72 ->getHelperSet()->get('debug_for
f00e0 6d 61 74 74 65 72 27 29 3b 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 63 6d 64 29 29 20 7b matter');..if.(is_array($cmd)).{
f0100 0a 24 70 72 6f 63 65 73 73 20 3d 20 50 72 6f 63 65 73 73 42 75 69 6c 64 65 72 3a 3a 63 72 65 61 .$process.=.ProcessBuilder::crea
f0120 74 65 28 24 63 6d 64 29 2d 3e 67 65 74 50 72 6f 63 65 73 73 28 29 3b 0a 7d 20 65 6c 73 65 69 66 te($cmd)->getProcess();.}.elseif
f0140 20 28 24 63 6d 64 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 72 6f 63 65 73 73 29 20 7b 0a 24 70 72 .($cmd.instanceof.Process).{.$pr
f0160 6f 63 65 73 73 20 3d 20 24 63 6d 64 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 72 6f 63 65 73 73 20 ocess.=.$cmd;.}.else.{.$process.
f0180 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 28 24 63 6d 64 29 3b 0a 7d 0a 0a 69 66 20 28 24 76 65 72 =.new.Process($cmd);.}..if.($ver
f01a0 62 6f 73 69 74 79 20 3c 3d 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 bosity.<=.$output->getVerbosity(
f01c0 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 66 6f 72 6d 61 74 74 65 72 2d 3e )).{.$output->write($formatter->
f01e0 73 74 61 72 74 28 73 70 6c 5f 6f 62 6a 65 63 74 5f 68 61 73 68 28 24 70 72 6f 63 65 73 73 29 2c start(spl_object_hash($process),
f0200 20 24 74 68 69 73 2d 3e 65 73 63 61 70 65 53 74 72 69 6e 67 28 24 70 72 6f 63 65 73 73 2d 3e 67 .$this->escapeString($process->g
f0220 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 6f 75 74 70 etCommandLine())));.}..if.($outp
f0240 75 74 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 63 61 6c 6c 62 61 63 6b 20 3d 20 24 74 68 ut->isDebug()).{.$callback.=.$th
f0260 69 73 2d 3e 77 72 61 70 43 61 6c 6c 62 61 63 6b 28 24 6f 75 74 70 75 74 2c 20 24 70 72 6f 63 65 is->wrapCallback($output,.$proce
f0280 73 73 2c 20 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 2d 3e 72 75 6e ss,.$callback);.}..$process->run
f02a0 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 69 66 20 28 24 76 65 72 62 6f 73 69 74 79 20 3c 3d 20 ($callback);..if.($verbosity.<=.
f02c0 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 24 6d 65 73 73 $output->getVerbosity()).{.$mess
f02e0 61 67 65 20 3d 20 24 70 72 6f 63 65 73 73 2d 3e 69 73 53 75 63 63 65 73 73 66 75 6c 28 29 20 3f age.=.$process->isSuccessful().?
f0300 20 27 43 6f 6d 6d 61 6e 64 20 72 61 6e 20 73 75 63 63 65 73 73 66 75 6c 6c 79 27 20 3a 20 73 70 .'Command.ran.successfully'.:.sp
f0320 72 69 6e 74 66 28 27 25 73 20 43 6f 6d 6d 61 6e 64 20 64 69 64 20 6e 6f 74 20 72 75 6e 20 73 75 rintf('%s.Command.did.not.run.su
f0340 63 63 65 73 73 66 75 6c 6c 79 27 2c 20 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 78 69 74 43 6f ccessfully',.$process->getExitCo
f0360 64 65 28 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 66 6f 72 6d 61 74 74 65 72 de());.$output->write($formatter
f0380 2d 3e 73 74 6f 70 28 73 70 6c 5f 6f 62 6a 65 63 74 5f 68 61 73 68 28 24 70 72 6f 63 65 73 73 29 ->stop(spl_object_hash($process)
f03a0 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 70 72 6f 63 65 73 73 2d 3e 69 73 53 75 63 63 65 73 73 66 ,.$message,.$process->isSuccessf
f03c0 75 6c 28 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 70 72 6f 63 65 73 73 2d 3e 69 73 53 75 63 63 ul()));.}..if.(!$process->isSucc
f03e0 65 73 73 66 75 6c 28 29 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 65 72 72 6f 72 29 20 7b 0a 24 essful().&&.null.!==.$error).{.$
f0400 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 3c 65 72 72 6f 72 3e output->writeln(sprintf('<error>
f0420 25 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 74 68 69 73 2d 3e 65 73 63 61 70 65 53 74 72 69 6e 67 %s</error>',.$this->escapeString
f0440 28 24 65 72 72 6f 72 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 63 65 73 73 3b 0a ($error)));.}..return.$process;.
f0460 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 }....................public.func
f0480 74 69 6f 6e 20 6d 75 73 74 52 75 6e 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 tion.mustRun(OutputInterface.$ou
f04a0 74 70 75 74 2c 20 24 63 6d 64 2c 20 24 65 72 72 6f 72 20 3d 20 6e 75 6c 6c 2c 20 24 63 61 6c 6c tput,.$cmd,.$error.=.null,.$call
f04c0 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 72 6f 63 65 73 73 20 3d 20 24 74 68 69 73 2d back.=.null).{.$process.=.$this-
f04e0 3e 72 75 6e 28 24 6f 75 74 70 75 74 2c 20 24 63 6d 64 2c 20 24 65 72 72 6f 72 2c 20 24 63 61 6c >run($output,.$cmd,.$error,.$cal
f0500 6c 62 61 63 6b 29 3b 0a 0a 69 66 20 28 21 24 70 72 6f 63 65 73 73 2d 3e 69 73 53 75 63 63 65 73 lback);..if.(!$process->isSucces
f0520 73 66 75 6c 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 50 72 6f 63 65 73 73 46 61 69 6c 65 sful()).{.throw.new.ProcessFaile
f0540 64 45 78 63 65 70 74 69 6f 6e 28 24 70 72 6f 63 65 73 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 dException($process);.}..return.
f0560 24 70 72 6f 63 65 73 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e $process;.}...........public.fun
f0580 63 74 69 6f 6e 20 77 72 61 70 43 61 6c 6c 62 61 63 6b 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 ction.wrapCallback(OutputInterfa
f05a0 63 65 20 24 6f 75 74 70 75 74 2c 20 50 72 6f 63 65 73 73 20 24 70 72 6f 63 65 73 73 2c 20 24 63 ce.$output,.Process.$process,.$c
f05c0 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 6f 75 74 70 75 74 20 69 6e allback.=.null).{.if.($output.in
f05e0 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 29 stanceof.ConsoleOutputInterface)
f0600 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f 72 4f 75 .{.$output.=.$output->getErrorOu
f0620 74 70 75 74 28 29 3b 0a 7d 0a 0a 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 tput();.}..$formatter.=.$this->g
f0640 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 64 65 62 75 67 5f 66 6f 72 6d 61 74 etHelperSet()->get('debug_format
f0660 74 65 72 27 29 3b 0a 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a 0a 72 65 74 75 72 6e 20 66 ter');..$that.=.$this;..return.f
f0680 75 6e 63 74 69 6f 6e 20 28 24 74 79 70 65 2c 20 24 62 75 66 66 65 72 29 20 75 73 65 20 28 24 6f unction.($type,.$buffer).use.($o
f06a0 75 74 70 75 74 2c 20 24 70 72 6f 63 65 73 73 2c 20 24 63 61 6c 6c 62 61 63 6b 2c 20 24 66 6f 72 utput,.$process,.$callback,.$for
f06c0 6d 61 74 74 65 72 2c 20 24 74 68 61 74 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 matter,.$that).{.$output->write(
f06e0 24 66 6f 72 6d 61 74 74 65 72 2d 3e 70 72 6f 67 72 65 73 73 28 73 70 6c 5f 6f 62 6a 65 63 74 5f $formatter->progress(spl_object_
f0700 68 61 73 68 28 24 70 72 6f 63 65 73 73 29 2c 20 24 74 68 61 74 2d 3e 65 73 63 61 70 65 53 74 72 hash($process),.$that->escapeStr
f0720 69 6e 67 28 24 62 75 66 66 65 72 29 2c 20 50 72 6f 63 65 73 73 3a 3a 45 52 52 20 3d 3d 3d 20 24 ing($buffer),.Process::ERR.===.$
f0740 74 79 70 65 29 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 61 6c 6c 62 61 63 6b 29 type));..if.(null.!==.$callback)
f0760 20 7b 0a 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 61 6c 6c 62 61 63 6b 2c 20 24 74 79 .{.call_user_func($callback,.$ty
f0780 70 65 2c 20 24 62 75 66 66 65 72 29 3b 0a 7d 0a 7d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 pe,.$buffer);.}.};.}.......publi
f07a0 63 20 66 75 6e 63 74 69 6f 6e 20 65 73 63 61 70 65 53 74 72 69 6e 67 28 24 73 74 72 29 0a 7b 0a c.function.escapeString($str).{.
f07c0 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 3c 27 2c 20 27 5c 5c 3c 27 2c 20 24 return.str_replace('<',.'\\<',.$
f07e0 73 74 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e str);.}.....public.function.getN
f0800 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 70 72 6f 63 65 73 73 27 3b 0a 7d 0a 7d 0a 3c 3f ame().{.return.'process';.}.}.<?
f0820 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c php...........namespace.Symfony\
f0840 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 Component\Console\Helper;..use.S
f0860 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c ymfony\Component\Console\Output\
f0880 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 ConsoleOutputInterface;.use.Symf
f08a0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 ony\Component\Console\Output\Out
f08c0 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e putInterface;.use.Symfony\Compon
f08e0 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 4c 6f 67 69 63 45 78 63 65 70 ent\Console\Exception\LogicExcep
f0900 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 67 72 65 73 73 42 61 72 0a 7b tion;........class.ProgressBar.{
f0920 0a 0a 20 70 72 69 76 61 74 65 20 24 62 61 72 57 69 64 74 68 20 3d 20 32 38 3b 0a 70 72 69 76 61 ...private.$barWidth.=.28;.priva
f0940 74 65 20 24 62 61 72 43 68 61 72 3b 0a 70 72 69 76 61 74 65 20 24 65 6d 70 74 79 42 61 72 43 68 te.$barChar;.private.$emptyBarCh
f0960 61 72 20 3d 20 27 2d 27 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 67 72 65 73 73 43 68 61 72 20 ar.=.'-';.private.$progressChar.
f0980 3d 20 27 3e 27 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 3b 0a 70 72 69 76 61 74 65 20 =.'>';.private.$format;.private.
f09a0 24 69 6e 74 65 72 6e 61 6c 46 6f 72 6d 61 74 3b 0a 70 72 69 76 61 74 65 20 24 72 65 64 72 61 77 $internalFormat;.private.$redraw
f09c0 46 72 65 71 20 3d 20 31 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 70 Freq.=.1;.....private.$output;.p
f09e0 72 69 76 61 74 65 20 24 73 74 65 70 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 24 6d 61 78 3b 0a rivate.$step.=.0;.private.$max;.
f0a00 70 72 69 76 61 74 65 20 24 73 74 61 72 74 54 69 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 73 74 65 private.$startTime;.private.$ste
f0a20 70 57 69 64 74 68 3b 0a 70 72 69 76 61 74 65 20 24 70 65 72 63 65 6e 74 20 3d 20 30 2e 30 3b 0a pWidth;.private.$percent.=.0.0;.
f0a40 70 72 69 76 61 74 65 20 24 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3d 20 30 3b private.$lastMessagesLength.=.0;
f0a60 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 4c 69 6e 65 43 6f 75 6e 74 3b 0a 70 72 69 76 61 .private.$formatLineCount;.priva
f0a80 74 65 20 24 6d 65 73 73 61 67 65 73 3b 0a 70 72 69 76 61 74 65 20 24 6f 76 65 72 77 72 69 74 65 te.$messages;.private.$overwrite
f0aa0 20 3d 20 74 72 75 65 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 66 6f 72 6d 61 74 .=.true;..private.static.$format
f0ac0 74 65 72 73 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 66 6f 72 6d 61 74 73 3b 0a 0a ters;.private.static.$formats;..
f0ae0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ......public.function.__construc
f0b00 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 6d 61 78 20 t(OutputInterface.$output,.$max.
f0b20 3d 20 30 29 0a 7b 0a 69 66 20 28 24 6f 75 74 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f =.0).{.if.($output.instanceof.Co
f0b40 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 6f 75 74 70 75 74 20 nsoleOutputInterface).{.$output.
f0b60 3d 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a =.$output->getErrorOutput();.}..
f0b80 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 3b 0a 24 74 68 69 73 2d 3e $this->output.=.$output;.$this->
f0ba0 73 65 74 4d 61 78 53 74 65 70 73 28 24 6d 61 78 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e setMaxSteps($max);..if.(!$this->
f0bc0 6f 75 74 70 75 74 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 29 20 7b 0a 0a 20 24 74 68 69 73 output->isDecorated()).{...$this
f0be0 2d 3e 6f 76 65 72 77 72 69 74 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 73 ->overwrite.=.false;....$this->s
f0c00 65 74 52 65 64 72 61 77 46 72 65 71 75 65 6e 63 79 28 24 6d 61 78 20 2f 20 31 30 29 3b 0a 7d 0a etRedrawFrequency($max./.10);.}.
f0c20 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 20 3d 20 74 69 6d 65 28 29 3b 0a 7d 0a 0a 0a .$this->startTime.=.time();.}...
f0c40 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 .......public.static.function.se
f0c60 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 44 65 66 69 6e 69 74 69 6f 6e 28 tPlaceholderFormatterDefinition(
f0c80 24 6e 61 6d 65 2c 20 24 63 61 6c 6c 61 62 6c 65 29 0a 7b 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 $name,.$callable).{.if.(!self::$
f0ca0 66 6f 72 6d 61 74 74 65 72 73 29 20 7b 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 20 formatters).{.self::$formatters.
f0cc0 3d 20 73 65 6c 66 3a 3a 69 6e 69 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 =.self::initPlaceholderFormatter
f0ce0 73 28 29 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 5b 24 6e 61 6d 65 5d s();.}..self::$formatters[$name]
f0d00 20 3d 20 24 63 61 6c 6c 61 62 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 .=.$callable;.}.........public.s
f0d20 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 tatic.function.getPlaceholderFor
f0d40 6d 61 74 74 65 72 44 65 66 69 6e 69 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 73 matterDefinition($name).{.if.(!s
f0d60 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 29 20 7b 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 elf::$formatters).{.self::$forma
f0d80 74 74 65 72 73 20 3d 20 73 65 6c 66 3a 3a 69 6e 69 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 tters.=.self::initPlaceholderFor
f0da0 6d 61 74 74 65 72 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 73 65 6c 66 3a matters();.}..return.isset(self:
f0dc0 3a 24 66 6f 72 6d 61 74 74 65 72 73 5b 24 6e 61 6d 65 5d 29 20 3f 20 73 65 6c 66 3a 3a 24 66 6f :$formatters[$name]).?.self::$fo
f0de0 72 6d 61 74 74 65 72 73 5b 24 6e 61 6d 65 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a rmatters[$name].:.null;.}.......
f0e00 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 ...public.static.function.setFor
f0e20 6d 61 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 66 6f 72 6d 61 74 29 0a 7b 0a matDefinition($name,.$format).{.
f0e40 69 66 20 28 21 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 29 20 7b 0a 73 65 6c 66 3a 3a 24 66 6f if.(!self::$formats).{.self::$fo
f0e60 72 6d 61 74 73 20 3d 20 73 65 6c 66 3a 3a 69 6e 69 74 46 6f 72 6d 61 74 73 28 29 3b 0a 7d 0a 0a rmats.=.self::initFormats();.}..
f0e80 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 66 6f 72 6d 61 74 3b self::$formats[$name].=.$format;
f0ea0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f .}.........public.static.functio
f0ec0 6e 20 67 65 74 46 6f 72 6d 61 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 n.getFormatDefinition($name).{.i
f0ee0 66 20 28 21 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 29 20 7b 0a 73 65 6c 66 3a 3a 24 66 6f 72 f.(!self::$formats).{.self::$for
f0f00 6d 61 74 73 20 3d 20 73 65 6c 66 3a 3a 69 6e 69 74 46 6f 72 6d 61 74 73 28 29 3b 0a 7d 0a 0a 72 mats.=.self::initFormats();.}..r
f0f20 65 74 75 72 6e 20 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 5b 24 6e 61 6d 65 eturn.isset(self::$formats[$name
f0f40 5d 29 20 3f 20 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 5b 24 6e 61 6d 65 5d 20 3a 20 6e 75 6c ]).?.self::$formats[$name].:.nul
f0f60 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4d 65 73 73 61 67 65 l;.}..public.function.setMessage
f0f80 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 61 6d 65 20 3d 20 27 6d 65 73 73 61 67 65 27 29 0a 7b 0a ($message,.$name.=.'message').{.
f0fa0 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 6d 65 73 73 61 67 $this->messages[$name].=.$messag
f0fc0 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 65 73 73 61 67 65 e;.}..public.function.getMessage
f0fe0 28 24 6e 61 6d 65 20 3d 20 27 6d 65 73 73 61 67 65 27 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 ($name.=.'message').{.return.$th
f1000 69 73 2d 3e 6d 65 73 73 61 67 65 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 is->messages[$name];.}.......pub
f1020 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 72 74 54 69 6d 65 28 29 0a 7b 0a 72 65 lic.function.getStartTime().{.re
f1040 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 turn.$this->startTime;.}.......p
f1060 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 61 78 53 74 65 70 73 28 29 0a 7b 0a 72 ublic.function.getMaxSteps().{.r
f1080 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c eturn.$this->max;.}.........publ
f10a0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 65 70 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 ic.function.getStep().{.@trigger
f10c0 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f _error('The.'.__METHOD__.'.metho
f10e0 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e d.is.deprecated.since.version.2.
f1100 36 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 6.and.will.be.removed.in.3.0..Us
f1120 65 20 74 68 65 20 67 65 74 50 72 6f 67 72 65 73 73 28 29 20 6d 65 74 68 6f 64 20 69 6e 73 74 65 e.the.getProgress().method.inste
f1140 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 72 65 74 75 72 ad.',.E_USER_DEPRECATED);..retur
f1160 6e 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a n.$this->getProgress();.}.......
f1180 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 67 72 65 73 73 28 29 0a 7b 0a public.function.getProgress().{.
f11a0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 65 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 return.$this->step;.}.........pu
f11c0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 65 70 57 69 64 74 68 28 29 0a 7b 0a 72 blic.function.getStepWidth().{.r
f11e0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 65 70 57 69 64 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a eturn.$this->stepWidth;.}.......
f1200 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 67 72 65 73 73 50 65 72 63 65 public.function.getProgressPerce
f1220 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 65 72 63 65 6e 74 3b 0a 7d 0a nt().{.return.$this->percent;.}.
f1240 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 42 61 72 57 69 64 74 ......public.function.setBarWidt
f1260 68 28 24 73 69 7a 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 20 3d 20 28 69 6e h($size).{.$this->barWidth.=.(in
f1280 74 29 20 24 73 69 7a 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f t).$size;.}.......public.functio
f12a0 6e 20 67 65 74 42 61 72 57 69 64 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e n.getBarWidth().{.return.$this->
f12c0 62 61 72 57 69 64 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f barWidth;.}.......public.functio
f12e0 6e 20 73 65 74 42 61 72 43 68 61 72 61 63 74 65 72 28 24 63 68 61 72 29 0a 7b 0a 24 74 68 69 73 n.setBarCharacter($char).{.$this
f1300 2d 3e 62 61 72 43 68 61 72 20 3d 20 24 63 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ->barChar.=.$char;.}.......publi
f1320 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 61 72 43 68 61 72 61 63 74 65 72 28 29 0a 7b 0a 69 c.function.getBarCharacter().{.i
f1340 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 29 20 7b 0a 72 65 f.(null.===.$this->barChar).{.re
f1360 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 27 3d 27 20 3a 20 24 74 68 69 73 2d 3e 65 turn.$this->max.?.'='.:.$this->e
f1380 6d 70 74 79 42 61 72 43 68 61 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 61 mptyBarChar;.}..return.$this->ba
f13a0 72 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 rChar;.}.......public.function.s
f13c0 65 74 45 6d 70 74 79 42 61 72 43 68 61 72 61 63 74 65 72 28 24 63 68 61 72 29 0a 7b 0a 24 74 68 etEmptyBarCharacter($char).{.$th
f13e0 69 73 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 20 3d 20 24 63 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a is->emptyBarChar.=.$char;.}.....
f1400 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 6d 70 74 79 42 61 72 43 68 61 ..public.function.getEmptyBarCha
f1420 72 61 63 74 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 42 61 racter().{.return.$this->emptyBa
f1440 72 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 rChar;.}.......public.function.s
f1460 65 74 50 72 6f 67 72 65 73 73 43 68 61 72 61 63 74 65 72 28 24 63 68 61 72 29 0a 7b 0a 24 74 68 etProgressCharacter($char).{.$th
f1480 69 73 2d 3e 70 72 6f 67 72 65 73 73 43 68 61 72 20 3d 20 24 63 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a is->progressChar.=.$char;.}.....
f14a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 67 72 65 73 73 43 68 61 ..public.function.getProgressCha
f14c0 72 61 63 74 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 racter().{.return.$this->progres
f14e0 73 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 sChar;.}.......public.function.s
f1500 65 74 46 6f 72 6d 61 74 28 24 66 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 etFormat($format).{.$this->forma
f1520 74 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 74 65 72 6e 61 6c 46 6f 72 6d 61 74 20 t.=.null;.$this->internalFormat.
f1540 3d 20 24 66 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 =.$format;.}.......public.functi
f1560 6f 6e 20 73 65 74 52 65 64 72 61 77 46 72 65 71 75 65 6e 63 79 28 24 66 72 65 71 29 0a 7b 0a 24 on.setRedrawFrequency($freq).{.$
f1580 74 68 69 73 2d 3e 72 65 64 72 61 77 46 72 65 71 20 3d 20 6d 61 78 28 28 69 6e 74 29 20 24 66 72 this->redrawFreq.=.max((int).$fr
f15a0 65 71 2c 20 31 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 eq,.1);.}.......public.function.
f15c0 73 74 61 72 74 28 24 6d 61 78 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 start($max.=.null).{.$this->star
f15e0 74 54 69 6d 65 20 3d 20 74 69 6d 65 28 29 3b 0a 24 74 68 69 73 2d 3e 73 74 65 70 20 3d 20 30 3b tTime.=.time();.$this->step.=.0;
f1600 0a 24 74 68 69 73 2d 3e 70 65 72 63 65 6e 74 20 3d 20 30 2e 30 3b 0a 0a 69 66 20 28 6e 75 6c 6c .$this->percent.=.0.0;..if.(null
f1620 20 21 3d 3d 20 24 6d 61 78 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 4d 61 78 53 74 65 70 73 28 .!==.$max).{.$this->setMaxSteps(
f1640 24 6d 61 78 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 28 29 3b 0a 7d 0a 0a 0a $max);.}..$this->display();.}...
f1660 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 76 61 6e 63 65 28 24 73 ......public.function.advance($s
f1680 74 65 70 20 3d 20 31 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 67 72 65 73 73 28 24 74 tep.=.1).{.$this->setProgress($t
f16a0 68 69 73 2d 3e 73 74 65 70 20 2b 20 24 73 74 65 70 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a his->step.+.$step);.}...........
f16c0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 75 72 72 65 6e 74 28 24 73 74 65 70 public.function.setCurrent($step
f16e0 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d 45 54 48 ).{.@trigger_error('The.'.__METH
f1700 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 OD__.'.method.is.deprecated.sinc
f1720 65 20 76 65 72 73 69 6f 6e 20 32 2e 36 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 e.version.2.6.and.will.be.remove
f1740 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 74 68 65 20 73 65 74 50 72 6f 67 72 65 73 73 28 29 20 d.in.3.0..Use.the.setProgress().
f1760 6d 65 74 68 6f 64 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 method.instead.',.E_USER_DEPRECA
f1780 54 45 44 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 67 72 65 73 73 28 24 73 74 65 70 29 TED);..$this->setProgress($step)
f17a0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 76 65 ;.}.......public.function.setOve
f17c0 72 77 72 69 74 65 28 24 6f 76 65 72 77 72 69 74 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 76 65 72 rwrite($overwrite).{.$this->over
f17e0 77 72 69 74 65 20 3d 20 28 62 6f 6f 6c 29 20 24 6f 76 65 72 77 72 69 74 65 3b 0a 7d 0a 0a 0a 0a write.=.(bool).$overwrite;.}....
f1800 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 6f 67 72 65 73 73 .....public.function.setProgress
f1820 28 24 73 74 65 70 29 0a 7b 0a 24 73 74 65 70 20 3d 20 28 69 6e 74 29 20 24 73 74 65 70 3b 0a 69 ($step).{.$step.=.(int).$step;.i
f1840 66 20 28 24 73 74 65 70 20 3c 20 24 74 68 69 73 2d 3e 73 74 65 70 29 20 7b 0a 74 68 72 6f 77 20 f.($step.<.$this->step).{.throw.
f1860 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 63 61 6e 5c 27 74 20 72 new.LogicException('You.can\'t.r
f1880 65 67 72 65 73 73 20 74 68 65 20 70 72 6f 67 72 65 73 73 20 62 61 72 2e 27 29 3b 0a 7d 0a 0a 69 egress.the.progress.bar.');.}..i
f18a0 66 20 28 24 74 68 69 73 2d 3e 6d 61 78 20 26 26 20 24 73 74 65 70 20 3e 20 24 74 68 69 73 2d 3e f.($this->max.&&.$step.>.$this->
f18c0 6d 61 78 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 61 78 20 3d 20 24 73 74 65 70 3b 0a 7d 0a 0a 24 70 max).{.$this->max.=.$step;.}..$p
f18e0 72 65 76 50 65 72 69 6f 64 20 3d 20 28 69 6e 74 29 20 28 24 74 68 69 73 2d 3e 73 74 65 70 20 2f revPeriod.=.(int).($this->step./
f1900 20 24 74 68 69 73 2d 3e 72 65 64 72 61 77 46 72 65 71 29 3b 0a 24 63 75 72 72 50 65 72 69 6f 64 .$this->redrawFreq);.$currPeriod
f1920 20 3d 20 28 69 6e 74 29 20 28 24 73 74 65 70 20 2f 20 24 74 68 69 73 2d 3e 72 65 64 72 61 77 46 .=.(int).($step./.$this->redrawF
f1940 72 65 71 29 3b 0a 24 74 68 69 73 2d 3e 73 74 65 70 20 3d 20 24 73 74 65 70 3b 0a 24 74 68 69 73 req);.$this->step.=.$step;.$this
f1960 2d 3e 70 65 72 63 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 28 66 6c 6f 61 74 29 ->percent.=.$this->max.?.(float)
f1980 20 24 74 68 69 73 2d 3e 73 74 65 70 20 2f 20 24 74 68 69 73 2d 3e 6d 61 78 20 3a 20 30 3b 0a 69 .$this->step./.$this->max.:.0;.i
f19a0 66 20 28 24 70 72 65 76 50 65 72 69 6f 64 20 21 3d 3d 20 24 63 75 72 72 50 65 72 69 6f 64 20 7c f.($prevPeriod.!==.$currPeriod.|
f19c0 7c 20 24 74 68 69 73 2d 3e 6d 61 78 20 3d 3d 3d 20 24 73 74 65 70 29 20 7b 0a 24 74 68 69 73 2d |.$this->max.===.$step).{.$this-
f19e0 3e 64 69 73 70 6c 61 79 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 >display();.}.}.....public.funct
f1a00 69 6f 6e 20 66 69 6e 69 73 68 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6d 61 78 29 20 ion.finish().{.if.(!$this->max).
f1a20 7b 0a 24 74 68 69 73 2d 3e 6d 61 78 20 3d 20 24 74 68 69 73 2d 3e 73 74 65 70 3b 0a 7d 0a 0a 69 {.$this->max.=.$this->step;.}..i
f1a40 66 20 28 24 74 68 69 73 2d 3e 73 74 65 70 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6d 61 78 20 26 26 f.($this->step.===.$this->max.&&
f1a60 20 21 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a .!$this->overwrite).{...return;.
f1a80 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 67 72 65 73 73 28 24 74 68 69 73 2d 3e 6d 61 78 }..$this->setProgress($this->max
f1aa0 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 );.}.....public.function.display
f1ac0 28 29 0a 7b 0a 69 66 20 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 ().{.if.(OutputInterface::VERBOS
f1ae0 49 54 59 5f 51 55 49 45 54 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 ITY_QUIET.===.$this->output->get
f1b00 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 6e 75 Verbosity()).{.return;.}..if.(nu
f1b20 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 ll.===.$this->format).{.$this->s
f1b40 65 74 52 65 61 6c 46 6f 72 6d 61 74 28 24 74 68 69 73 2d 3e 69 6e 74 65 72 6e 61 6c 46 6f 72 6d etRealFormat($this->internalForm
f1b60 61 74 20 3f 3a 20 24 74 68 69 73 2d 3e 64 65 74 65 72 6d 69 6e 65 42 65 73 74 46 6f 72 6d 61 74 at.?:.$this->determineBestFormat
f1b80 28 29 29 3b 0a 7d 0a 0a 0a 20 24 73 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 24 6f 75 74 70 75 74 ());.}....$self.=.$this;.$output
f1ba0 20 3d 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 24 74 .=.$this->output;.$messages.=.$t
f1bc0 68 69 73 2d 3e 6d 65 73 73 61 67 65 73 3b 0a 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 28 his->messages;.$this->overwrite(
f1be0 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 22 7b 25 28 5b 61 2d 7a 5c 2d preg_replace_callback("{%([a-z\-
f1c00 5f 5d 2b 29 28 3f 3a 5c 3a 28 5b 5e 25 5d 2b 29 29 3f 25 7d 69 22 2c 20 66 75 6e 63 74 69 6f 6e _]+)(?:\:([^%]+))?%}i",.function
f1c20 20 28 24 6d 61 74 63 68 65 73 29 20 75 73 65 20 28 24 73 65 6c 66 2c 20 24 6f 75 74 70 75 74 2c .($matches).use.($self,.$output,
f1c40 20 24 6d 65 73 73 61 67 65 73 29 20 7b 0a 69 66 20 28 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 .$messages).{.if.($formatter.=.$
f1c60 73 65 6c 66 3a 3a 67 65 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 44 65 66 self::getPlaceholderFormatterDef
f1c80 69 6e 69 74 69 6f 6e 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 29 20 7b 0a 24 74 65 78 74 20 3d 20 inition($matches[1])).{.$text.=.
f1ca0 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 66 6f 72 6d 61 74 74 65 72 2c 20 24 73 65 6c 66 call_user_func($formatter,.$self
f1cc0 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 6d 65 73 ,.$output);.}.elseif.(isset($mes
f1ce0 73 61 67 65 73 5b 24 6d 61 74 63 68 65 73 5b 31 5d 5d 29 29 20 7b 0a 24 74 65 78 74 20 3d 20 24 sages[$matches[1]])).{.$text.=.$
f1d00 6d 65 73 73 61 67 65 73 5b 24 6d 61 74 63 68 65 73 5b 31 5d 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a messages[$matches[1]];.}.else.{.
f1d20 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 5b 30 5d 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 return.$matches[0];.}..if.(isset
f1d40 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a 24 74 65 78 74 20 3d 20 73 70 72 69 6e 74 66 ($matches[2])).{.$text.=.sprintf
f1d60 28 27 25 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 2c 20 24 74 65 78 74 29 3b 0a 7d 0a 0a 72 65 74 ('%'.$matches[2],.$text);.}..ret
f1d80 75 72 6e 20 24 74 65 78 74 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 29 29 3b 0a 7d urn.$text;.},.$this->format));.}
f1da0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 72 28 29 .........public.function.clear()
f1dc0 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 29 20 7b 0a 72 65 74 75 .{.if.(!$this->overwrite).{.retu
f1de0 72 6e 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 rn;.}..if.(null.===.$this->forma
f1e00 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 52 65 61 6c 46 6f 72 6d 61 74 28 24 74 68 69 73 2d t).{.$this->setRealFormat($this-
f1e20 3e 69 6e 74 65 72 6e 61 6c 46 6f 72 6d 61 74 20 3f 3a 20 24 74 68 69 73 2d 3e 64 65 74 65 72 6d >internalFormat.?:.$this->determ
f1e40 69 6e 65 42 65 73 74 46 6f 72 6d 61 74 28 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 76 65 72 ineBestFormat());.}..$this->over
f1e60 77 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 22 5c 6e 22 2c 20 24 74 68 69 73 2d 3e 66 6f write(str_repeat("\n",.$this->fo
f1e80 72 6d 61 74 4c 69 6e 65 43 6f 75 6e 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 rmatLineCount));.}.......private
f1ea0 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 61 6c 46 6f 72 6d 61 74 28 24 66 6f 72 6d 61 74 29 .function.setRealFormat($format)
f1ec0 0a 7b 0a 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 6d 61 78 20 26 26 20 6e 75 6c 6c 20 21 3d 3d .{...if.(!$this->max.&&.null.!==
f1ee0 20 73 65 6c 66 3a 3a 67 65 74 46 6f 72 6d 61 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 66 6f 72 6d .self::getFormatDefinition($form
f1f00 61 74 2e 27 5f 6e 6f 6d 61 78 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 at.'_nomax')).{.$this->format.=.
f1f20 73 65 6c 66 3a 3a 67 65 74 46 6f 72 6d 61 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 66 6f 72 6d 61 self::getFormatDefinition($forma
f1f40 74 2e 27 5f 6e 6f 6d 61 78 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 t.'_nomax');.}.elseif.(null.!==.
f1f60 73 65 6c 66 3a 3a 67 65 74 46 6f 72 6d 61 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 66 6f 72 6d 61 self::getFormatDefinition($forma
f1f80 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 73 65 6c 66 3a 3a 67 65 74 46 t)).{.$this->format.=.self::getF
f1fa0 6f 72 6d 61 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 66 6f 72 6d 61 74 29 3b 0a 7d 20 65 6c 73 65 ormatDefinition($format);.}.else
f1fc0 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 24 66 6f 72 6d 61 74 3b 0a 7d 0a 0a 24 .{.$this->format.=.$format;.}..$
f1fe0 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 69 6e 65 43 6f 75 6e 74 20 3d 20 73 75 62 73 74 72 5f 63 this->formatLineCount.=.substr_c
f2000 6f 75 6e 74 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 2c 20 22 5c 6e 22 29 3b 0a 7d 0a 0a 0a 0a ount($this->format,."\n");.}....
f2020 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4d 61 78 53 74 65 70 73 28 ...private.function.setMaxSteps(
f2040 24 6d 61 78 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 61 78 20 3d 20 6d 61 78 28 30 2c 20 28 69 6e 74 $max).{.$this->max.=.max(0,.(int
f2060 29 20 24 6d 61 78 29 3b 0a 24 74 68 69 73 2d 3e 73 74 65 70 57 69 64 74 68 20 3d 20 24 74 68 69 ).$max);.$this->stepWidth.=.$thi
f2080 73 2d 3e 6d 61 78 20 3f 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 6d s->max.?.Helper::strlen($this->m
f20a0 61 78 29 20 3a 20 34 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f ax).:.4;.}.......private.functio
f20c0 6e 20 6f 76 65 72 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 6c 69 6e 65 73 20 3d n.overwrite($message).{.$lines.=
f20e0 20 65 78 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 20 69 66 20 .explode("\n",.$message);....if.
f2100 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e (null.!==.$this->lastMessagesLen
f2120 67 74 68 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 24 69 20 3d 3e 20 gth).{.foreach.($lines.as.$i.=>.
f2140 24 6c 69 6e 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 $line).{.if.($this->lastMessages
f2160 4c 65 6e 67 74 68 20 3e 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 6f 75 74 44 65 Length.>.Helper::strlenWithoutDe
f2180 63 6f 72 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 coration($this->output->getForma
f21a0 74 74 65 72 28 29 2c 20 24 6c 69 6e 65 29 29 20 7b 0a 24 6c 69 6e 65 73 5b 24 69 5d 20 3d 20 73 tter(),.$line)).{.$lines[$i].=.s
f21c0 74 72 5f 70 61 64 28 24 6c 69 6e 65 2c 20 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 tr_pad($line,.$this->lastMessage
f21e0 73 4c 65 6e 67 74 68 2c 20 22 5c 78 32 30 22 2c 20 53 54 52 5f 50 41 44 5f 52 49 47 48 54 29 3b sLength,."\x20",.STR_PAD_RIGHT);
f2200 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 29 20 7b 0a .}.}.}..if.($this->overwrite).{.
f2220 0a 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 5c 78 30 44 22 29 3b 0a ..$this->output->write("\x0D");.
f2240 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 73 74 65 70 20 3e 20 30 29 20 7b 0a 0a 20 24 }.elseif.($this->step.>.0).{...$
f2260 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a 7d 0a 0a 69 66 this->output->writeln('');.}..if
f2280 20 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 69 6e 65 43 6f 75 6e 74 29 20 7b 0a 24 74 68 69 .($this->formatLineCount).{.$thi
f22a0 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 22 5c 30 33 33 5b 25 s->output->write(sprintf("\033[%
f22c0 64 41 22 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 69 6e 65 43 6f 75 6e 74 29 29 3b 0a 7d dA",.$this->formatLineCount));.}
f22e0 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 69 6d 70 6c 6f 64 65 28 22 5c .$this->output->write(implode("\
f2300 6e 22 2c 20 24 6c 69 6e 65 73 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 n",.$lines));..$this->lastMessag
f2320 65 73 4c 65 6e 67 74 68 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 esLength.=.0;.foreach.($lines.as
f2340 20 24 6c 69 6e 65 29 20 7b 0a 24 6c 65 6e 20 3d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 .$line).{.$len.=.Helper::strlenW
f2360 69 74 68 6f 75 74 44 65 63 6f 72 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e ithoutDecoration($this->output->
f2380 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 6c 69 6e 65 29 3b 0a 69 66 20 28 24 6c 65 6e getFormatter(),.$line);.if.($len
f23a0 20 3e 20 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 29 20 7b 0a .>.$this->lastMessagesLength).{.
f23c0 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3d 20 24 6c 65 6e $this->lastMessagesLength.=.$len
f23e0 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 74 65 72 6d ;.}.}.}..private.function.determ
f2400 69 6e 65 42 65 73 74 46 6f 72 6d 61 74 28 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d ineBestFormat().{.switch.($this-
f2420 3e 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 0a 20 63 61 73 >output->getVerbosity()).{...cas
f2440 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 e.OutputInterface::VERBOSITY_VER
f2460 42 4f 53 45 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 27 76 65 72 62 6f BOSE:.return.$this->max.?.'verbo
f2480 73 65 27 20 3a 20 27 76 65 72 62 6f 73 65 5f 6e 6f 6d 61 78 27 3b 0a 63 61 73 65 20 4f 75 74 70 se'.:.'verbose_nomax';.case.Outp
f24a0 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 utInterface::VERBOSITY_VERY_VERB
f24c0 4f 53 45 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 27 76 65 72 79 5f 76 OSE:.return.$this->max.?.'very_v
f24e0 65 72 62 6f 73 65 27 20 3a 20 27 76 65 72 79 5f 76 65 72 62 6f 73 65 5f 6e 6f 6d 61 78 27 3b 0a erbose'.:.'very_verbose_nomax';.
f2500 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f case.OutputInterface::VERBOSITY_
f2520 44 45 42 55 47 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 27 64 65 62 75 DEBUG:.return.$this->max.?.'debu
f2540 67 27 20 3a 20 27 64 65 62 75 67 5f 6e 6f 6d 61 78 27 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 g'.:.'debug_nomax';.default:.ret
f2560 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 27 6e 6f 72 6d 61 6c 27 20 3a 20 27 6e 6f 72 urn.$this->max.?.'normal'.:.'nor
f2580 6d 61 6c 5f 6e 6f 6d 61 78 27 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 mal_nomax';.}.}..private.static.
f25a0 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 function.initPlaceholderFormatte
f25c0 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 62 61 72 27 20 3d 3e 20 66 75 rs().{.return.array(.'bar'.=>.fu
f25e0 6e 63 74 69 6f 6e 20 28 50 72 6f 67 72 65 73 73 42 61 72 20 24 62 61 72 2c 20 4f 75 74 70 75 74 nction.(ProgressBar.$bar,.Output
f2600 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 20 7b 0a 24 63 6f 6d 70 6c 65 74 65 42 61 Interface.$output).{.$completeBa
f2620 72 73 20 3d 20 66 6c 6f 6f 72 28 24 62 61 72 2d 3e 67 65 74 4d 61 78 53 74 65 70 73 28 29 20 3e rs.=.floor($bar->getMaxSteps().>
f2640 20 30 20 3f 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 50 65 72 63 65 6e 74 28 29 20 .0.?.$bar->getProgressPercent().
f2660 2a 20 24 62 61 72 2d 3e 67 65 74 42 61 72 57 69 64 74 68 28 29 20 3a 20 24 62 61 72 2d 3e 67 65 *.$bar->getBarWidth().:.$bar->ge
f2680 74 50 72 6f 67 72 65 73 73 28 29 20 25 20 24 62 61 72 2d 3e 67 65 74 42 61 72 57 69 64 74 68 28 tProgress().%.$bar->getBarWidth(
f26a0 29 29 3b 0a 24 64 69 73 70 6c 61 79 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 24 62 61 72 2d 3e ));.$display.=.str_repeat($bar->
f26c0 67 65 74 42 61 72 43 68 61 72 61 63 74 65 72 28 29 2c 20 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 getBarCharacter(),.$completeBars
f26e0 29 3b 0a 69 66 20 28 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3c 20 24 62 61 72 2d 3e 67 65 74 );.if.($completeBars.<.$bar->get
f2700 42 61 72 57 69 64 74 68 28 29 29 20 7b 0a 24 65 6d 70 74 79 42 61 72 73 20 3d 20 24 62 61 72 2d BarWidth()).{.$emptyBars.=.$bar-
f2720 3e 67 65 74 42 61 72 57 69 64 74 68 28 29 20 2d 20 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 2d >getBarWidth().-.$completeBars.-
f2740 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 6f 75 74 44 65 63 6f 72 61 74 69 6f 6e .Helper::strlenWithoutDecoration
f2760 28 24 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 62 61 72 2d 3e ($output->getFormatter(),.$bar->
f2780 67 65 74 50 72 6f 67 72 65 73 73 43 68 61 72 61 63 74 65 72 28 29 29 3b 0a 24 64 69 73 70 6c 61 getProgressCharacter());.$displa
f27a0 79 20 2e 3d 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 43 68 61 72 61 63 74 65 72 28 y..=.$bar->getProgressCharacter(
f27c0 29 2e 73 74 72 5f 72 65 70 65 61 74 28 24 62 61 72 2d 3e 67 65 74 45 6d 70 74 79 42 61 72 43 68 ).str_repeat($bar->getEmptyBarCh
f27e0 61 72 61 63 74 65 72 28 29 2c 20 24 65 6d 70 74 79 42 61 72 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 aracter(),.$emptyBars);.}..retur
f2800 6e 20 24 64 69 73 70 6c 61 79 3b 0a 7d 2c 0a 27 65 6c 61 70 73 65 64 27 20 3d 3e 20 66 75 6e 63 n.$display;.},.'elapsed'.=>.func
f2820 74 69 6f 6e 20 28 50 72 6f 67 72 65 73 73 42 61 72 20 24 62 61 72 29 20 7b 0a 72 65 74 75 72 6e tion.(ProgressBar.$bar).{.return
f2840 20 48 65 6c 70 65 72 3a 3a 66 6f 72 6d 61 74 54 69 6d 65 28 74 69 6d 65 28 29 20 2d 20 24 62 61 .Helper::formatTime(time().-.$ba
f2860 72 2d 3e 67 65 74 53 74 61 72 74 54 69 6d 65 28 29 29 3b 0a 7d 2c 0a 27 72 65 6d 61 69 6e 69 6e r->getStartTime());.},.'remainin
f2880 67 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 50 72 6f 67 72 65 73 73 42 61 72 20 24 62 61 72 g'.=>.function.(ProgressBar.$bar
f28a0 29 20 7b 0a 69 66 20 28 21 24 62 61 72 2d 3e 67 65 74 4d 61 78 53 74 65 70 73 28 29 29 20 7b 0a ).{.if.(!$bar->getMaxSteps()).{.
f28c0 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 throw.new.LogicException('Unable
f28e0 20 74 6f 20 64 69 73 70 6c 61 79 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 74 69 6d 65 20 69 .to.display.the.remaining.time.i
f2900 66 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 73 74 65 70 73 20 69 73 f.the.maximum.number.of.steps.is
f2920 20 6e 6f 74 20 73 65 74 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 62 61 72 2d 3e 67 65 74 50 72 .not.set.');.}..if.(!$bar->getPr
f2940 6f 67 72 65 73 73 28 29 29 20 7b 0a 24 72 65 6d 61 69 6e 69 6e 67 20 3d 20 30 3b 0a 7d 20 65 6c ogress()).{.$remaining.=.0;.}.el
f2960 73 65 20 7b 0a 24 72 65 6d 61 69 6e 69 6e 67 20 3d 20 72 6f 75 6e 64 28 28 74 69 6d 65 28 29 20 se.{.$remaining.=.round((time().
f2980 2d 20 24 62 61 72 2d 3e 67 65 74 53 74 61 72 74 54 69 6d 65 28 29 29 20 2f 20 24 62 61 72 2d 3e -.$bar->getStartTime())./.$bar->
f29a0 67 65 74 50 72 6f 67 72 65 73 73 28 29 20 2a 20 28 24 62 61 72 2d 3e 67 65 74 4d 61 78 53 74 65 getProgress().*.($bar->getMaxSte
f29c0 70 73 28 29 20 2d 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 29 29 3b 0a 7d 0a ps().-.$bar->getProgress()));.}.
f29e0 0a 72 65 74 75 72 6e 20 48 65 6c 70 65 72 3a 3a 66 6f 72 6d 61 74 54 69 6d 65 28 24 72 65 6d 61 .return.Helper::formatTime($rema
f2a00 69 6e 69 6e 67 29 3b 0a 7d 2c 0a 27 65 73 74 69 6d 61 74 65 64 27 20 3d 3e 20 66 75 6e 63 74 69 ining);.},.'estimated'.=>.functi
f2a20 6f 6e 20 28 50 72 6f 67 72 65 73 73 42 61 72 20 24 62 61 72 29 20 7b 0a 69 66 20 28 21 24 62 61 on.(ProgressBar.$bar).{.if.(!$ba
f2a40 72 2d 3e 67 65 74 4d 61 78 53 74 65 70 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f r->getMaxSteps()).{.throw.new.Lo
f2a60 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 64 69 73 70 6c 61 79 20 gicException('Unable.to.display.
f2a80 74 68 65 20 65 73 74 69 6d 61 74 65 64 20 74 69 6d 65 20 69 66 20 74 68 65 20 6d 61 78 69 6d 75 the.estimated.time.if.the.maximu
f2aa0 6d 20 6e 75 6d 62 65 72 20 6f 66 20 73 74 65 70 73 20 69 73 20 6e 6f 74 20 73 65 74 2e 27 29 3b m.number.of.steps.is.not.set.');
f2ac0 0a 7d 0a 0a 69 66 20 28 21 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 29 20 7b 0a .}..if.(!$bar->getProgress()).{.
f2ae0 24 65 73 74 69 6d 61 74 65 64 20 3d 20 30 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 73 74 69 6d 61 $estimated.=.0;.}.else.{.$estima
f2b00 74 65 64 20 3d 20 72 6f 75 6e 64 28 28 74 69 6d 65 28 29 20 2d 20 24 62 61 72 2d 3e 67 65 74 53 ted.=.round((time().-.$bar->getS
f2b20 74 61 72 74 54 69 6d 65 28 29 29 20 2f 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 tartTime())./.$bar->getProgress(
f2b40 29 20 2a 20 24 62 61 72 2d 3e 67 65 74 4d 61 78 53 74 65 70 73 28 29 29 3b 0a 7d 0a 0a 72 65 74 ).*.$bar->getMaxSteps());.}..ret
f2b60 75 72 6e 20 48 65 6c 70 65 72 3a 3a 66 6f 72 6d 61 74 54 69 6d 65 28 24 65 73 74 69 6d 61 74 65 urn.Helper::formatTime($estimate
f2b80 64 29 3b 0a 7d 2c 0a 27 6d 65 6d 6f 72 79 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 50 72 6f d);.},.'memory'.=>.function.(Pro
f2ba0 67 72 65 73 73 42 61 72 20 24 62 61 72 29 20 7b 0a 72 65 74 75 72 6e 20 48 65 6c 70 65 72 3a 3a gressBar.$bar).{.return.Helper::
f2bc0 66 6f 72 6d 61 74 4d 65 6d 6f 72 79 28 6d 65 6d 6f 72 79 5f 67 65 74 5f 75 73 61 67 65 28 74 72 formatMemory(memory_get_usage(tr
f2be0 75 65 29 29 3b 0a 7d 2c 0a 27 63 75 72 72 65 6e 74 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 ue));.},.'current'.=>.function.(
f2c00 50 72 6f 67 72 65 73 73 42 61 72 20 24 62 61 72 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 5f 70 ProgressBar.$bar).{.return.str_p
f2c20 61 64 28 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 2c 20 24 62 61 72 2d 3e 67 65 ad($bar->getProgress(),.$bar->ge
f2c40 74 53 74 65 70 57 69 64 74 68 28 29 2c 20 27 20 27 2c 20 53 54 52 5f 50 41 44 5f 4c 45 46 54 29 tStepWidth(),.'.',.STR_PAD_LEFT)
f2c60 3b 0a 7d 2c 0a 27 6d 61 78 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 50 72 6f 67 72 65 73 73 ;.},.'max'.=>.function.(Progress
f2c80 42 61 72 20 24 62 61 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 62 61 72 2d 3e 67 65 74 4d 61 78 53 Bar.$bar).{.return.$bar->getMaxS
f2ca0 74 65 70 73 28 29 3b 0a 7d 2c 0a 27 70 65 72 63 65 6e 74 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e teps();.},.'percent'.=>.function
f2cc0 20 28 50 72 6f 67 72 65 73 73 42 61 72 20 24 62 61 72 29 20 7b 0a 72 65 74 75 72 6e 20 66 6c 6f .(ProgressBar.$bar).{.return.flo
f2ce0 6f 72 28 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 50 65 72 63 65 6e 74 28 29 20 2a 20 or($bar->getProgressPercent().*.
f2d00 31 30 30 29 3b 0a 7d 2c 0a 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 100);.},.);.}..private.static.fu
f2d20 6e 63 74 69 6f 6e 20 69 6e 69 74 46 6f 72 6d 61 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 nction.initFormats().{.return.ar
f2d40 72 61 79 28 0a 27 6e 6f 72 6d 61 6c 27 20 3d 3e 20 27 20 25 63 75 72 72 65 6e 74 25 2f 25 6d 61 ray(.'normal'.=>.'.%current%/%ma
f2d60 78 25 20 5b 25 62 61 72 25 5d 20 25 70 65 72 63 65 6e 74 3a 33 73 25 25 27 2c 0a 27 6e 6f 72 6d x%.[%bar%].%percent:3s%%',.'norm
f2d80 61 6c 5f 6e 6f 6d 61 78 27 20 3d 3e 20 27 20 25 63 75 72 72 65 6e 74 25 20 5b 25 62 61 72 25 5d al_nomax'.=>.'.%current%.[%bar%]
f2da0 27 2c 0a 0a 27 76 65 72 62 6f 73 65 27 20 3d 3e 20 27 20 25 63 75 72 72 65 6e 74 25 2f 25 6d 61 ',..'verbose'.=>.'.%current%/%ma
f2dc0 78 25 20 5b 25 62 61 72 25 5d 20 25 70 65 72 63 65 6e 74 3a 33 73 25 25 20 25 65 6c 61 70 73 65 x%.[%bar%].%percent:3s%%.%elapse
f2de0 64 3a 36 73 25 27 2c 0a 27 76 65 72 62 6f 73 65 5f 6e 6f 6d 61 78 27 20 3d 3e 20 27 20 25 63 75 d:6s%',.'verbose_nomax'.=>.'.%cu
f2e00 72 72 65 6e 74 25 20 5b 25 62 61 72 25 5d 20 25 65 6c 61 70 73 65 64 3a 36 73 25 27 2c 0a 0a 27 rrent%.[%bar%].%elapsed:6s%',..'
f2e20 76 65 72 79 5f 76 65 72 62 6f 73 65 27 20 3d 3e 20 27 20 25 63 75 72 72 65 6e 74 25 2f 25 6d 61 very_verbose'.=>.'.%current%/%ma
f2e40 78 25 20 5b 25 62 61 72 25 5d 20 25 70 65 72 63 65 6e 74 3a 33 73 25 25 20 25 65 6c 61 70 73 65 x%.[%bar%].%percent:3s%%.%elapse
f2e60 64 3a 36 73 25 2f 25 65 73 74 69 6d 61 74 65 64 3a 2d 36 73 25 27 2c 0a 27 76 65 72 79 5f 76 65 d:6s%/%estimated:-6s%',.'very_ve
f2e80 72 62 6f 73 65 5f 6e 6f 6d 61 78 27 20 3d 3e 20 27 20 25 63 75 72 72 65 6e 74 25 20 5b 25 62 61 rbose_nomax'.=>.'.%current%.[%ba
f2ea0 72 25 5d 20 25 65 6c 61 70 73 65 64 3a 36 73 25 27 2c 0a 0a 27 64 65 62 75 67 27 20 3d 3e 20 27 r%].%elapsed:6s%',..'debug'.=>.'
f2ec0 20 25 63 75 72 72 65 6e 74 25 2f 25 6d 61 78 25 20 5b 25 62 61 72 25 5d 20 25 70 65 72 63 65 6e .%current%/%max%.[%bar%].%percen
f2ee0 74 3a 33 73 25 25 20 25 65 6c 61 70 73 65 64 3a 36 73 25 2f 25 65 73 74 69 6d 61 74 65 64 3a 2d t:3s%%.%elapsed:6s%/%estimated:-
f2f00 36 73 25 20 25 6d 65 6d 6f 72 79 3a 36 73 25 27 2c 0a 27 64 65 62 75 67 5f 6e 6f 6d 61 78 27 20 6s%.%memory:6s%',.'debug_nomax'.
f2f20 3d 3e 20 27 20 25 63 75 72 72 65 6e 74 25 20 5b 25 62 61 72 25 5d 20 25 65 6c 61 70 73 65 64 3a =>.'.%current%.[%bar%].%elapsed:
f2f40 36 73 25 20 25 6d 65 6d 6f 72 79 3a 36 73 25 27 2c 0a 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 6s%.%memory:6s%',.);.}.}.<?php..
f2f60 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f .........namespace.Symfony\Compo
f2f80 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e nent\Console\Helper;..use.Symfon
f2fa0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4e 75 6c 6c 4f y\Component\Console\Output\NullO
f2fc0 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e utput;.use.Symfony\Component\Con
f2fe0 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 sole\Output\OutputInterface;.use
f3000 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 .Symfony\Component\Console\Excep
f3020 74 69 6f 6e 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 tion\LogicException;...........c
f3040 6c 61 73 73 20 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c 70 lass.ProgressHelper.extends.Help
f3060 65 72 0a 7b 0a 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 51 55 49 45 54 20 3d 20 27 20 25 70 65 72 er.{.const.FORMAT_QUIET.=.'.%per
f3080 63 65 6e 74 25 25 27 3b 0a 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 4e 4f 52 4d 41 4c 20 3d 20 27 cent%%';.const.FORMAT_NORMAL.=.'
f30a0 20 25 63 75 72 72 65 6e 74 25 2f 25 6d 61 78 25 20 5b 25 62 61 72 25 5d 20 25 70 65 72 63 65 6e .%current%/%max%.[%bar%].%percen
f30c0 74 25 25 27 3b 0a 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 56 45 52 42 4f 53 45 20 3d 20 27 20 25 t%%';.const.FORMAT_VERBOSE.=.'.%
f30e0 63 75 72 72 65 6e 74 25 2f 25 6d 61 78 25 20 5b 25 62 61 72 25 5d 20 25 70 65 72 63 65 6e 74 25 current%/%max%.[%bar%].%percent%
f3100 25 20 45 6c 61 70 73 65 64 3a 20 25 65 6c 61 70 73 65 64 25 27 3b 0a 63 6f 6e 73 74 20 46 4f 52 %.Elapsed:.%elapsed%';.const.FOR
f3120 4d 41 54 5f 51 55 49 45 54 5f 4e 4f 4d 41 58 20 3d 20 27 20 25 63 75 72 72 65 6e 74 25 27 3b 0a MAT_QUIET_NOMAX.=.'.%current%';.
f3140 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 4e 4f 52 4d 41 4c 5f 4e 4f 4d 41 58 20 3d 20 27 20 25 63 const.FORMAT_NORMAL_NOMAX.=.'.%c
f3160 75 72 72 65 6e 74 25 20 5b 25 62 61 72 25 5d 27 3b 0a 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 56 urrent%.[%bar%]';.const.FORMAT_V
f3180 45 52 42 4f 53 45 5f 4e 4f 4d 41 58 20 3d 20 27 20 25 63 75 72 72 65 6e 74 25 20 5b 25 62 61 72 ERBOSE_NOMAX.=.'.%current%.[%bar
f31a0 25 5d 20 45 6c 61 70 73 65 64 3a 20 25 65 6c 61 70 73 65 64 25 27 3b 0a 0a 0a 20 70 72 69 76 61 %].Elapsed:.%elapsed%';....priva
f31c0 74 65 20 24 62 61 72 57 69 64 74 68 20 3d 20 32 38 3b 0a 70 72 69 76 61 74 65 20 24 62 61 72 43 te.$barWidth.=.28;.private.$barC
f31e0 68 61 72 20 3d 20 27 3d 27 3b 0a 70 72 69 76 61 74 65 20 24 65 6d 70 74 79 42 61 72 43 68 61 72 har.=.'=';.private.$emptyBarChar
f3200 20 3d 20 27 2d 27 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 67 72 65 73 73 43 68 61 72 20 3d 20 .=.'-';.private.$progressChar.=.
f3220 27 3e 27 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 20 3d 20 6e 75 6c 6c 3b 0a 70 72 69 '>';.private.$format.=.null;.pri
f3240 76 61 74 65 20 24 72 65 64 72 61 77 46 72 65 71 20 3d 20 31 3b 0a 0a 70 72 69 76 61 74 65 20 24 vate.$redrawFreq.=.1;..private.$
f3260 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 3b 0a 70 72 69 76 61 74 65 20 24 62 61 72 lastMessagesLength;.private.$bar
f3280 43 68 61 72 4f 72 69 67 69 6e 61 6c 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 CharOriginal;.....private.$outpu
f32a0 74 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 75 72 72 65 6e 74 3b 0a 0a 0a 0a 0a 0a t;.......private.$current;......
f32c0 0a 70 72 69 76 61 74 65 20 24 6d 61 78 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 74 .private.$max;.......private.$st
f32e0 61 72 74 54 69 6d 65 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 64 65 66 61 75 6c 74 46 artTime;.......private.$defaultF
f3300 6f 72 6d 61 74 56 61 72 73 20 3d 20 61 72 72 61 79 28 0a 27 63 75 72 72 65 6e 74 27 2c 0a 27 6d ormatVars.=.array(.'current',.'m
f3320 61 78 27 2c 0a 27 62 61 72 27 2c 0a 27 70 65 72 63 65 6e 74 27 2c 0a 27 65 6c 61 70 73 65 64 27 ax',.'bar',.'percent',.'elapsed'
f3340 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 56 61 72 73 3b 0a ,.);.......private.$formatVars;.
f3360 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 77 69 64 74 68 73 20 3d 20 61 72 72 61 79 28 0a 27 ......private.$widths.=.array(.'
f3380 63 75 72 72 65 6e 74 27 20 3d 3e 20 34 2c 0a 27 6d 61 78 27 20 3d 3e 20 34 2c 0a 27 70 65 72 63 current'.=>.4,.'max'.=>.4,.'perc
f33a0 65 6e 74 27 20 3d 3e 20 33 2c 0a 27 65 6c 61 70 73 65 64 27 20 3d 3e 20 36 2c 0a 29 3b 0a 0a 0a ent'.=>.3,.'elapsed'.=>.6,.);...
f33c0 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 74 69 6d 65 46 6f 72 6d 61 74 73 20 3d 20 61 72 72 61 79 ....private.$timeFormats.=.array
f33e0 28 0a 61 72 72 61 79 28 30 2c 20 27 3f 3f 3f 27 29 2c 0a 61 72 72 61 79 28 32 2c 20 27 31 20 73 (.array(0,.'???'),.array(2,.'1.s
f3400 65 63 27 29 2c 0a 61 72 72 61 79 28 35 39 2c 20 27 73 65 63 73 27 2c 20 31 29 2c 0a 61 72 72 61 ec'),.array(59,.'secs',.1),.arra
f3420 79 28 36 30 2c 20 27 31 20 6d 69 6e 27 29 2c 0a 61 72 72 61 79 28 33 36 30 30 2c 20 27 6d 69 6e y(60,.'1.min'),.array(3600,.'min
f3440 73 27 2c 20 36 30 29 2c 0a 61 72 72 61 79 28 35 34 30 30 2c 20 27 31 20 68 72 27 29 2c 0a 61 72 s',.60),.array(5400,.'1.hr'),.ar
f3460 72 61 79 28 38 36 34 30 30 2c 20 27 68 72 73 27 2c 20 33 36 30 30 29 2c 0a 61 72 72 61 79 28 31 ray(86400,.'hrs',.3600),.array(1
f3480 32 39 36 30 30 2c 20 27 31 20 64 61 79 27 29 2c 0a 61 72 72 61 79 28 36 30 34 38 30 30 2c 20 27 29600,.'1.day'),.array(604800,.'
f34a0 64 61 79 73 27 2c 20 38 36 34 30 30 29 2c 0a 29 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 days',.86400),.);..public.functi
f34c0 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 72 69 67 67 65 72 44 65 70 72 65 63 61 74 69 on.__construct($triggerDeprecati
f34e0 6f 6e 45 72 72 6f 72 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 24 74 72 69 67 67 65 72 44 65 onError.=.true).{.if.($triggerDe
f3500 70 72 65 63 61 74 69 6f 6e 45 72 72 6f 72 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 precationError).{.@trigger_error
f3520 28 27 54 68 65 20 27 2e 5f 5f 43 4c 41 53 53 5f 5f 2e 27 20 63 6c 61 73 73 20 69 73 20 64 65 70 ('The.'.__CLASS__.'.class.is.dep
f3540 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 35 20 61 6e 64 20 77 69 recated.since.version.2.5.and.wi
f3560 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 74 68 65 20 53 79 ll.be.removed.in.3.0..Use.the.Sy
f3580 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 50 mfony\Component\Console\Helper\P
f35a0 72 6f 67 72 65 73 73 42 61 72 20 63 6c 61 73 73 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 rogressBar.class.instead.',.E_US
f35c0 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ER_DEPRECATED);.}.}.......public
f35e0 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 42 61 72 57 69 64 74 68 28 24 73 69 7a 65 29 0a 7b 0a 24 .function.setBarWidth($size).{.$
f3600 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 20 3d 20 28 69 6e 74 29 20 24 73 69 7a 65 3b 0a 7d 0a this->barWidth.=.(int).$size;.}.
f3620 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 42 61 72 43 68 61 72 ......public.function.setBarChar
f3640 61 63 74 65 72 28 24 63 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 20 3d 20 acter($char).{.$this->barChar.=.
f3660 24 63 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 $char;.}.......public.function.s
f3680 65 74 45 6d 70 74 79 42 61 72 43 68 61 72 61 63 74 65 72 28 24 63 68 61 72 29 0a 7b 0a 24 74 68 etEmptyBarCharacter($char).{.$th
f36a0 69 73 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 20 3d 20 24 63 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a is->emptyBarChar.=.$char;.}.....
f36c0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 6f 67 72 65 73 73 43 68 61 ..public.function.setProgressCha
f36e0 72 61 63 74 65 72 28 24 63 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 43 racter($char).{.$this->progressC
f3700 68 61 72 20 3d 20 24 63 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 har.=.$char;.}.......public.func
f3720 74 69 6f 6e 20 73 65 74 46 6f 72 6d 61 74 28 24 66 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d tion.setFormat($format).{.$this-
f3740 3e 66 6f 72 6d 61 74 20 3d 20 24 66 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 >format.=.$format;.}.......publi
f3760 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 64 72 61 77 46 72 65 71 75 65 6e 63 79 28 24 66 c.function.setRedrawFrequency($f
f3780 72 65 71 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 64 72 61 77 46 72 65 71 20 3d 20 28 69 6e 74 29 req).{.$this->redrawFreq.=.(int)
f37a0 20 24 66 72 65 71 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e .$freq;.}........public.function
f37c0 20 73 74 61 72 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 .start(OutputInterface.$output,.
f37e0 24 6d 61 78 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 20 $max.=.null).{.$this->startTime.
f3800 3d 20 74 69 6d 65 28 29 3b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 20 3d 20 30 3b 0a 24 74 =.time();.$this->current.=.0;.$t
f3820 68 69 73 2d 3e 6d 61 78 20 3d 20 28 69 6e 74 29 20 24 6d 61 78 3b 0a 0a 0a 20 24 74 68 69 73 2d his->max.=.(int).$max;....$this-
f3840 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 >output.=.$output->isDecorated()
f3860 20 3f 20 24 6f 75 74 70 75 74 20 3a 20 6e 65 77 20 4e 75 6c 6c 4f 75 74 70 75 74 28 29 3b 0a 24 .?.$output.:.new.NullOutput();.$
f3880 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3d 20 30 3b 0a 24 74 this->lastMessagesLength.=.0;.$t
f38a0 68 69 73 2d 3e 62 61 72 43 68 61 72 4f 72 69 67 69 6e 61 6c 20 3d 20 27 27 3b 0a 0a 69 66 20 28 his->barCharOriginal.=.'';..if.(
f38c0 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 29 20 7b 0a 73 77 69 74 63 68 null.===.$this->format).{.switch
f38e0 20 28 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 63 61 73 .($output->getVerbosity()).{.cas
f3900 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 e.OutputInterface::VERBOSITY_QUI
f3920 45 54 3a 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 73 65 6c 66 3a 3a 46 4f 52 4d 41 54 ET:.$this->format.=.self::FORMAT
f3940 5f 51 55 49 45 54 5f 4e 4f 4d 41 58 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 78 20 3e 20 30 _QUIET_NOMAX;.if.($this->max.>.0
f3960 29 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 73 65 6c 66 3a 3a 46 4f 52 4d 41 54 ).{.$this->format.=.self::FORMAT
f3980 5f 51 55 49 45 54 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 _QUIET;.}.break;.case.OutputInte
f39a0 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 3a 0a 63 61 73 65 20 4f rface::VERBOSITY_VERBOSE:.case.O
f39c0 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 utputInterface::VERBOSITY_VERY_V
f39e0 45 52 42 4f 53 45 3a 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 ERBOSE:.case.OutputInterface::VE
f3a00 52 42 4f 53 49 54 59 5f 44 45 42 55 47 3a 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 73 RBOSITY_DEBUG:.$this->format.=.s
f3a20 65 6c 66 3a 3a 46 4f 52 4d 41 54 5f 56 45 52 42 4f 53 45 5f 4e 4f 4d 41 58 3b 0a 69 66 20 28 24 elf::FORMAT_VERBOSE_NOMAX;.if.($
f3a40 74 68 69 73 2d 3e 6d 61 78 20 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d this->max.>.0).{.$this->format.=
f3a60 20 73 65 6c 66 3a 3a 46 4f 52 4d 41 54 5f 56 45 52 42 4f 53 45 3b 0a 7d 0a 62 72 65 61 6b 3b 0a .self::FORMAT_VERBOSE;.}.break;.
f3a80 64 65 66 61 75 6c 74 3a 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 73 65 6c 66 3a 3a 46 default:.$this->format.=.self::F
f3aa0 4f 52 4d 41 54 5f 4e 4f 52 4d 41 4c 5f 4e 4f 4d 41 58 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d ORMAT_NORMAL_NOMAX;.if.($this->m
f3ac0 61 78 20 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 73 65 6c 66 3a 3a ax.>.0).{.$this->format.=.self::
f3ae0 46 4f 52 4d 41 54 5f 4e 4f 52 4d 41 4c 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 24 74 68 FORMAT_NORMAL;.}.break;.}.}..$th
f3b00 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 is->initialize();.}..........pub
f3b20 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 76 61 6e 63 65 28 24 73 74 65 70 20 3d 20 31 2c 20 lic.function.advance($step.=.1,.
f3b40 24 72 65 64 72 61 77 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 74 43 75 72 $redraw.=.false).{.$this->setCur
f3b60 72 65 6e 74 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 20 2b 20 24 73 74 65 70 2c 20 24 72 65 rent($this->current.+.$step,.$re
f3b80 64 72 61 77 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f draw);.}..........public.functio
f3ba0 6e 20 73 65 74 43 75 72 72 65 6e 74 28 24 63 75 72 72 65 6e 74 2c 20 24 72 65 64 72 61 77 20 3d n.setCurrent($current,.$redraw.=
f3bc0 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 73 74 .false).{.if.(null.===.$this->st
f3be0 61 72 74 54 69 6d 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 artTime).{.throw.new.LogicExcept
f3c00 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 73 74 61 72 74 20 74 68 65 20 70 72 6f 67 72 65 73 73 ion('You.must.start.the.progress
f3c20 20 62 61 72 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 73 65 74 43 75 72 72 65 6e 74 28 29 .bar.before.calling.setCurrent()
f3c40 2e 27 29 3b 0a 7d 0a 0a 24 63 75 72 72 65 6e 74 20 3d 20 28 69 6e 74 29 20 24 63 75 72 72 65 6e .');.}..$current.=.(int).$curren
f3c60 74 3b 0a 0a 69 66 20 28 24 63 75 72 72 65 6e 74 20 3c 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e t;..if.($current.<.$this->curren
f3c80 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 59 t).{.throw.new.LogicException('Y
f3ca0 6f 75 20 63 61 6e 5c 27 74 20 72 65 67 72 65 73 73 20 74 68 65 20 70 72 6f 67 72 65 73 73 20 62 ou.can\'t.regress.the.progress.b
f3cc0 61 72 27 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e ar');.}..if.(0.===.$this->curren
f3ce0 74 29 20 7b 0a 24 72 65 64 72 61 77 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 70 72 65 76 50 65 72 t).{.$redraw.=.true;.}..$prevPer
f3d00 69 6f 64 20 3d 20 28 69 6e 74 29 20 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 20 2f 20 24 74 iod.=.(int).($this->current./.$t
f3d20 68 69 73 2d 3e 72 65 64 72 61 77 46 72 65 71 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e his->redrawFreq);..$this->curren
f3d40 74 20 3d 20 24 63 75 72 72 65 6e 74 3b 0a 0a 24 63 75 72 72 50 65 72 69 6f 64 20 3d 20 28 69 6e t.=.$current;..$currPeriod.=.(in
f3d60 74 29 20 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 20 2f 20 24 74 68 69 73 2d 3e 72 65 64 72 t).($this->current./.$this->redr
f3d80 61 77 46 72 65 71 29 3b 0a 69 66 20 28 24 72 65 64 72 61 77 20 7c 7c 20 24 70 72 65 76 50 65 72 awFreq);.if.($redraw.||.$prevPer
f3da0 69 6f 64 20 21 3d 3d 20 24 63 75 72 72 50 65 72 69 6f 64 20 7c 7c 20 24 74 68 69 73 2d 3e 6d 61 iod.!==.$currPeriod.||.$this->ma
f3dc0 78 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 64 x.===.$this->current).{.$this->d
f3de0 69 73 70 6c 61 79 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e isplay();.}.}.........public.fun
f3e00 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 28 24 66 69 6e 69 73 68 20 3d 20 66 61 6c 73 65 29 0a 7b ction.display($finish.=.false).{
f3e20 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 29 20 .if.(null.===.$this->startTime).
f3e40 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 {.throw.new.LogicException('You.
f3e60 6d 75 73 74 20 73 74 61 72 74 20 74 68 65 20 70 72 6f 67 72 65 73 73 20 62 61 72 20 62 65 66 6f must.start.the.progress.bar.befo
f3e80 72 65 20 63 61 6c 6c 69 6e 67 20 64 69 73 70 6c 61 79 28 29 2e 27 29 3b 0a 7d 0a 0a 24 6d 65 73 re.calling.display().');.}..$mes
f3ea0 73 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 3b 0a 66 6f 72 65 61 63 68 20 28 24 sage.=.$this->format;.foreach.($
f3ec0 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 28 24 66 69 6e 69 73 68 29 20 61 73 20 24 6e 61 6d 65 this->generate($finish).as.$name
f3ee0 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 74 72 5f 72 65 70 .=>.$value).{.$message.=.str_rep
f3f00 6c 61 63 65 28 22 25 7b 24 6e 61 6d 65 7d 25 22 2c 20 24 76 61 6c 75 65 2c 20 24 6d 65 73 73 61 lace("%{$name}%",.$value,.$messa
f3f20 67 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 28 24 74 68 69 73 2d 3e 6f ge);.}.$this->overwrite($this->o
f3f40 75 74 70 75 74 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c utput,.$message);.}.........publ
f3f60 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 76 65 ic.function.clear().{.$this->ove
f3f80 72 77 72 69 74 65 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2c 20 27 27 29 3b 0a 7d 0a 0a 0a 0a rwrite($this->output,.'');.}....
f3fa0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 69 73 68 28 29 0a 7b 0a 69 66 20 28 .public.function.finish().{.if.(
f3fc0 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 29 20 7b 0a 74 68 72 null.===.$this->startTime).{.thr
f3fe0 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 ow.new.LogicException('You.must.
f4000 73 74 61 72 74 20 74 68 65 20 70 72 6f 67 72 65 73 73 20 62 61 72 20 62 65 66 6f 72 65 20 63 61 start.the.progress.bar.before.ca
f4020 6c 6c 69 6e 67 20 66 69 6e 69 73 68 28 29 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 lling.finish().');.}..if.(null.!
f4040 3d 3d 20 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 29 20 7b 0a 69 66 20 28 21 24 74 68 69 ==.$this->startTime).{.if.(!$thi
f4060 73 2d 3e 6d 61 78 29 20 7b 0a 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 20 3d 20 24 74 68 69 73 s->max).{.$this->barChar.=.$this
f4080 2d 3e 62 61 72 43 68 61 72 4f 72 69 67 69 6e 61 6c 3b 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 ->barCharOriginal;.$this->displa
f40a0 79 28 74 72 75 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 20 3d 20 6e 75 y(true);.}.$this->startTime.=.nu
f40c0 6c 6c 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a ll;.$this->output->writeln('');.
f40e0 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 $this->output.=.null;.}.}.....pr
f4100 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 24 74 ivate.function.initialize().{.$t
f4120 68 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 his->formatVars.=.array();.forea
f4140 63 68 20 28 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 46 6f 72 6d 61 74 56 61 72 73 20 61 73 20 ch.($this->defaultFormatVars.as.
f4160 24 76 61 72 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 74 68 $var).{.if.(false.!==.strpos($th
f4180 69 73 2d 3e 66 6f 72 6d 61 74 2c 20 22 25 7b 24 76 61 72 7d 25 22 29 29 20 7b 0a 24 74 68 69 73 is->format,."%{$var}%")).{.$this
f41a0 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 24 76 61 72 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a ->formatVars[$var].=.true;.}.}..
f41c0 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 78 20 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 77 69 64 if.($this->max.>.0).{.$this->wid
f41e0 74 68 73 5b 27 6d 61 78 27 5d 20 3d 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 74 68 69 73 ths['max'].=.$this->strlen($this
f4200 2d 3e 6d 61 78 29 3b 0a 24 74 68 69 73 2d 3e 77 69 64 74 68 73 5b 27 63 75 72 72 65 6e 74 27 5d ->max);.$this->widths['current']
f4220 20 3d 20 24 74 68 69 73 2d 3e 77 69 64 74 68 73 5b 27 6d 61 78 27 5d 3b 0a 7d 20 65 6c 73 65 20 .=.$this->widths['max'];.}.else.
f4240 7b 0a 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 4f 72 69 67 69 6e 61 6c 20 3d 20 24 74 68 69 73 {.$this->barCharOriginal.=.$this
f4260 2d 3e 62 61 72 43 68 61 72 3b 0a 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 20 3d 20 24 74 68 69 ->barChar;.$this->barChar.=.$thi
f4280 73 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 s->emptyBarChar;.}.}.........pri
f42a0 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 28 24 66 69 6e 69 73 68 20 3d vate.function.generate($finish.=
f42c0 20 66 61 6c 73 65 29 0a 7b 0a 24 76 61 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 70 65 72 63 .false).{.$vars.=.array();.$perc
f42e0 65 6e 74 20 3d 20 30 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 78 20 3e 20 30 29 20 7b 0a 24 ent.=.0;.if.($this->max.>.0).{.$
f4300 70 65 72 63 65 6e 74 20 3d 20 28 66 6c 6f 61 74 29 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 percent.=.(float).$this->current
f4320 20 2f 20 24 74 68 69 73 2d 3e 6d 61 78 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 ./.$this->max;.}..if.(isset($thi
f4340 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 62 61 72 27 5d 29 29 20 7b 0a 24 63 6f 6d 70 6c 65 s->formatVars['bar'])).{.$comple
f4360 74 65 42 61 72 73 20 3d 20 30 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 78 20 3e 20 30 29 teBars.=.0;..if.($this->max.>.0)
f4380 20 7b 0a 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3d 20 66 6c 6f 6f 72 28 24 70 65 72 63 65 6e .{.$completeBars.=.floor($percen
f43a0 74 20 2a 20 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 t.*.$this->barWidth);.}.else.{.i
f43c0 66 20 28 21 24 66 69 6e 69 73 68 29 20 7b 0a 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3d 20 66 f.(!$finish).{.$completeBars.=.f
f43e0 6c 6f 6f 72 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 20 25 20 24 74 68 69 73 2d 3e 62 61 72 loor($this->current.%.$this->bar
f4400 57 69 64 74 68 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3d Width);.}.else.{.$completeBars.=
f4420 20 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 3b 0a 7d 0a 7d 0a 0a 24 65 6d 70 74 79 42 61 72 .$this->barWidth;.}.}..$emptyBar
f4440 73 20 3d 20 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 20 2d 20 24 63 6f 6d 70 6c 65 74 65 42 s.=.$this->barWidth.-.$completeB
f4460 61 72 73 20 2d 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 70 72 6f 67 72 ars.-.$this->strlen($this->progr
f4480 65 73 73 43 68 61 72 29 3b 0a 24 62 61 72 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 24 74 68 69 essChar);.$bar.=.str_repeat($thi
f44a0 73 2d 3e 62 61 72 43 68 61 72 2c 20 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 29 3b 0a 69 66 20 28 s->barChar,.$completeBars);.if.(
f44c0 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3c 20 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 29 $completeBars.<.$this->barWidth)
f44e0 20 7b 0a 24 62 61 72 20 2e 3d 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 43 68 61 72 3b 0a .{.$bar..=.$this->progressChar;.
f4500 24 62 61 72 20 2e 3d 20 73 74 72 5f 72 65 70 65 61 74 28 24 74 68 69 73 2d 3e 65 6d 70 74 79 42 $bar..=.str_repeat($this->emptyB
f4520 61 72 43 68 61 72 2c 20 24 65 6d 70 74 79 42 61 72 73 29 3b 0a 7d 0a 0a 24 76 61 72 73 5b 27 62 arChar,.$emptyBars);.}..$vars['b
f4540 61 72 27 5d 20 3d 20 24 62 61 72 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d ar'].=.$bar;.}..if.(isset($this-
f4560 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 65 6c 61 70 73 65 64 27 5d 29 29 20 7b 0a 24 65 6c 61 70 >formatVars['elapsed'])).{.$elap
f4580 73 65 64 20 3d 20 74 69 6d 65 28 29 20 2d 20 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 3b sed.=.time().-.$this->startTime;
f45a0 0a 24 76 61 72 73 5b 27 65 6c 61 70 73 65 64 27 5d 20 3d 20 73 74 72 5f 70 61 64 28 24 74 68 69 .$vars['elapsed'].=.str_pad($thi
f45c0 73 2d 3e 68 75 6d 61 6e 65 54 69 6d 65 28 24 65 6c 61 70 73 65 64 29 2c 20 24 74 68 69 73 2d 3e s->humaneTime($elapsed),.$this->
f45e0 77 69 64 74 68 73 5b 27 65 6c 61 70 73 65 64 27 5d 2c 20 27 20 27 2c 20 53 54 52 5f 50 41 44 5f widths['elapsed'],.'.',.STR_PAD_
f4600 4c 45 46 54 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 LEFT);.}..if.(isset($this->forma
f4620 74 56 61 72 73 5b 27 63 75 72 72 65 6e 74 27 5d 29 29 20 7b 0a 24 76 61 72 73 5b 27 63 75 72 72 tVars['current'])).{.$vars['curr
f4640 65 6e 74 27 5d 20 3d 20 73 74 72 5f 70 61 64 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 2c 20 ent'].=.str_pad($this->current,.
f4660 24 74 68 69 73 2d 3e 77 69 64 74 68 73 5b 27 63 75 72 72 65 6e 74 27 5d 2c 20 27 20 27 2c 20 53 $this->widths['current'],.'.',.S
f4680 54 52 5f 50 41 44 5f 4c 45 46 54 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 TR_PAD_LEFT);.}..if.(isset($this
f46a0 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 6d 61 78 27 5d 29 29 20 7b 0a 24 76 61 72 73 5b 27 6d ->formatVars['max'])).{.$vars['m
f46c0 61 78 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6d 61 78 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 ax'].=.$this->max;.}..if.(isset(
f46e0 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 70 65 72 63 65 6e 74 27 5d 29 29 20 7b $this->formatVars['percent'])).{
f4700 0a 24 76 61 72 73 5b 27 70 65 72 63 65 6e 74 27 5d 20 3d 20 73 74 72 5f 70 61 64 28 66 6c 6f 6f .$vars['percent'].=.str_pad(floo
f4720 72 28 24 70 65 72 63 65 6e 74 20 2a 20 31 30 30 29 2c 20 24 74 68 69 73 2d 3e 77 69 64 74 68 73 r($percent.*.100),.$this->widths
f4740 5b 27 70 65 72 63 65 6e 74 27 5d 2c 20 27 20 27 2c 20 53 54 52 5f 50 41 44 5f 4c 45 46 54 29 3b ['percent'],.'.',.STR_PAD_LEFT);
f4760 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 72 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 .}..return.$vars;.}.........priv
f4780 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 68 75 6d 61 6e 65 54 69 6d 65 28 24 73 65 63 73 29 0a 7b ate.function.humaneTime($secs).{
f47a0 0a 24 74 65 78 74 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 69 6d .$text.=.'';.foreach.($this->tim
f47c0 65 46 6f 72 6d 61 74 73 20 61 73 20 24 66 6f 72 6d 61 74 29 20 7b 0a 69 66 20 28 24 73 65 63 73 eFormats.as.$format).{.if.($secs
f47e0 20 3c 20 24 66 6f 72 6d 61 74 5b 30 5d 29 20 7b 0a 69 66 20 28 63 6f 75 6e 74 28 24 66 6f 72 6d .<.$format[0]).{.if.(count($form
f4800 61 74 29 20 3d 3d 20 32 29 20 7b 0a 24 74 65 78 74 20 3d 20 24 66 6f 72 6d 61 74 5b 31 5d 3b 0a at).==.2).{.$text.=.$format[1];.
f4820 62 72 65 61 6b 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 65 78 74 20 3d 20 63 65 69 6c 28 24 73 65 break;.}.else.{.$text.=.ceil($se
f4840 63 73 20 2f 20 24 66 6f 72 6d 61 74 5b 32 5d 29 2e 27 20 27 2e 24 66 6f 72 6d 61 74 5b 31 5d 3b cs./.$format[2]).'.'.$format[1];
f4860 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 65 78 74 3b 0a 7d 0a 0a .break;.}.}.}..return.$text;.}..
f4880 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6f 76 65 72 77 72 69 74 65 ......private.function.overwrite
f48a0 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 6d 65 73 73 61 (OutputInterface.$output,.$messa
f48c0 67 65 29 0a 7b 0a 24 6c 65 6e 67 74 68 20 3d 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 6d ge).{.$length.=.$this->strlen($m
f48e0 65 73 73 61 67 65 29 3b 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e essage);....if.(null.!==.$this->
f4900 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 26 26 20 24 74 68 69 73 2d 3e 6c 61 73 lastMessagesLength.&&.$this->las
f4920 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3e 20 24 6c 65 6e 67 74 68 29 20 7b 0a 24 6d 65 tMessagesLength.>.$length).{.$me
f4940 73 73 61 67 65 20 3d 20 73 74 72 5f 70 61 64 28 24 6d 65 73 73 61 67 65 2c 20 24 74 68 69 73 2d ssage.=.str_pad($message,.$this-
f4960 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 2c 20 22 5c 78 32 30 22 2c 20 53 54 52 >lastMessagesLength,."\x20",.STR
f4980 5f 50 41 44 5f 52 49 47 48 54 29 3b 0a 7d 0a 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 _PAD_RIGHT);.}....$output->write
f49a0 28 22 5c 78 30 44 22 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 ("\x0D");.$output->write($messag
f49c0 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3d e);..$this->lastMessagesLength.=
f49e0 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a .$this->strlen($message);.}.....
f4a00 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 public.function.getName().{.retu
f4a20 72 6e 20 27 70 72 6f 67 72 65 73 73 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a rn.'progress';.}.}.<?php........
f4a40 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 ...namespace.Symfony\Component\C
f4a60 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 onsole\Helper;..use.Symfony\Comp
f4a80 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 onent\Console\Output\OutputInter
f4aa0 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 67 72 65 73 73 49 6e 64 69 63 61 74 6f face;.....class.ProgressIndicato
f4ac0 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 73 74 r.{.private.$output;.private.$st
f4ae0 61 72 74 54 69 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 3b 0a 70 72 69 76 61 74 artTime;.private.$format;.privat
f4b00 65 20 24 6d 65 73 73 61 67 65 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 64 69 63 61 74 6f 72 56 61 e.$message;.private.$indicatorVa
f4b20 6c 75 65 73 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 64 69 63 61 74 6f 72 43 75 72 72 65 6e 74 3b lues;.private.$indicatorCurrent;
f4b40 0a 70 72 69 76 61 74 65 20 24 69 6e 64 69 63 61 74 6f 72 43 68 61 6e 67 65 49 6e 74 65 72 76 61 .private.$indicatorChangeInterva
f4b60 6c 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 64 69 63 61 74 6f 72 55 70 64 61 74 65 54 69 6d 65 3b l;.private.$indicatorUpdateTime;
f4b80 0a 70 72 69 76 61 74 65 20 24 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 3b 0a 70 72 .private.$lastMessagesLength;.pr
f4ba0 69 76 61 74 65 20 24 73 74 61 72 74 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 70 72 69 76 61 74 65 ivate.$started.=.false;..private
f4bc0 20 73 74 61 74 69 63 20 24 66 6f 72 6d 61 74 74 65 72 73 3b 0a 70 72 69 76 61 74 65 20 73 74 61 .static.$formatters;.private.sta
f4be0 74 69 63 20 24 66 6f 72 6d 61 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 tic.$formats;........public.func
f4c00 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 tion.__construct(OutputInterface
f4c20 20 24 6f 75 74 70 75 74 2c 20 24 66 6f 72 6d 61 74 20 3d 20 6e 75 6c 6c 2c 20 24 69 6e 64 69 63 .$output,.$format.=.null,.$indic
f4c40 61 74 6f 72 43 68 61 6e 67 65 49 6e 74 65 72 76 61 6c 20 3d 20 31 30 30 2c 20 24 69 6e 64 69 63 atorChangeInterval.=.100,.$indic
f4c60 61 74 6f 72 56 61 6c 75 65 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 atorValues.=.null).{.$this->outp
f4c80 75 74 20 3d 20 24 6f 75 74 70 75 74 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 66 6f 72 ut.=.$output;..if.(null.===.$for
f4ca0 6d 61 74 29 20 7b 0a 24 66 6f 72 6d 61 74 20 3d 20 24 74 68 69 73 2d 3e 64 65 74 65 72 6d 69 6e mat).{.$format.=.$this->determin
f4cc0 65 42 65 73 74 46 6f 72 6d 61 74 28 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 eBestFormat();.}..if.(null.===.$
f4ce0 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 29 20 7b 0a 24 69 6e 64 69 63 61 74 6f 72 56 61 6c indicatorValues).{.$indicatorVal
f4d00 75 65 73 20 3d 20 61 72 72 61 79 28 27 2d 27 2c 20 27 5c 5c 27 2c 20 27 7c 27 2c 20 27 2f 27 29 ues.=.array('-',.'\\',.'|',.'/')
f4d20 3b 0a 7d 0a 0a 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 20 3d 20 61 72 72 61 79 5f 76 61 ;.}..$indicatorValues.=.array_va
f4d40 6c 75 65 73 28 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 29 3b 0a 0a 69 66 20 28 32 20 3e lues($indicatorValues);..if.(2.>
f4d60 20 63 6f 75 6e 74 28 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 29 29 20 7b 0a 74 68 72 6f .count($indicatorValues)).{.thro
f4d80 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 w.new.\InvalidArgumentException(
f4da0 27 4d 75 73 74 20 68 61 76 65 20 61 74 20 6c 65 61 73 74 20 32 20 69 6e 64 69 63 61 74 6f 72 20 'Must.have.at.least.2.indicator.
f4dc0 76 61 6c 75 65 20 63 68 61 72 61 63 74 65 72 73 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 value.characters.');.}..$this->f
f4de0 6f 72 6d 61 74 20 3d 20 73 65 6c 66 3a 3a 67 65 74 46 6f 72 6d 61 74 44 65 66 69 6e 69 74 69 6f ormat.=.self::getFormatDefinitio
f4e00 6e 28 24 66 6f 72 6d 61 74 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 43 68 61 6e n($format);.$this->indicatorChan
f4e20 67 65 49 6e 74 65 72 76 61 6c 20 3d 20 24 69 6e 64 69 63 61 74 6f 72 43 68 61 6e 67 65 49 6e 74 geInterval.=.$indicatorChangeInt
f4e40 65 72 76 61 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 20 3d 20 erval;.$this->indicatorValues.=.
f4e60 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 3b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 $indicatorValues;.$this->startTi
f4e80 6d 65 20 3d 20 74 69 6d 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 me.=.time();.}.......public.func
f4ea0 74 69 6f 6e 20 73 65 74 4d 65 73 73 61 67 65 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 tion.setMessage($message).{.$thi
f4ec0 73 2d 3e 6d 65 73 73 61 67 65 20 3d 20 24 6d 65 73 73 61 67 65 3b 0a 0a 24 74 68 69 73 2d 3e 64 s->message.=.$message;..$this->d
f4ee0 69 73 70 6c 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 isplay();.}.........public.funct
f4f00 69 6f 6e 20 67 65 74 4d 65 73 73 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ion.getMessage().{.return.$this-
f4f20 3e 6d 65 73 73 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 >message;.}.........public.funct
f4f40 69 6f 6e 20 67 65 74 53 74 61 72 74 54 69 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 ion.getStartTime().{.return.$thi
f4f60 73 2d 3e 73 74 61 72 74 54 69 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 s->startTime;.}.........public.f
f4f80 75 6e 63 74 69 6f 6e 20 67 65 74 43 75 72 72 65 6e 74 56 61 6c 75 65 28 29 0a 7b 0a 72 65 74 75 unction.getCurrentValue().{.retu
f4fa0 72 6e 20 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 5b 24 74 68 69 73 2d rn.$this->indicatorValues[$this-
f4fc0 3e 69 6e 64 69 63 61 74 6f 72 43 75 72 72 65 6e 74 20 25 20 63 6f 75 6e 74 28 24 74 68 69 73 2d >indicatorCurrent.%.count($this-
f4fe0 3e 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 29 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c >indicatorValues)];.}.......publ
f5000 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 61 72 74 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 69 66 ic.function.start($message).{.if
f5020 20 28 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c .($this->started).{.throw.new.\L
f5040 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 50 72 6f 67 72 65 73 73 20 69 6e 64 69 63 61 74 6f ogicException('Progress.indicato
f5060 72 20 61 6c 72 65 61 64 79 20 73 74 61 72 74 65 64 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e r.already.started.');.}..$this->
f5080 6d 65 73 73 61 67 65 20 3d 20 24 6d 65 73 73 61 67 65 3b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 message.=.$message;.$this->start
f50a0 65 64 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 ed.=.true;.$this->lastMessagesLe
f50c0 6e 67 74 68 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 20 3d 20 74 69 6d ngth.=.0;.$this->startTime.=.tim
f50e0 65 28 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 55 70 64 61 74 65 54 69 6d 65 20 e();.$this->indicatorUpdateTime.
f5100 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 75 72 72 65 6e 74 54 69 6d 65 49 6e 4d 69 6c 6c 69 73 65 =.$this->getCurrentTimeInMillise
f5120 63 6f 6e 64 73 28 29 20 2b 20 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 43 68 61 6e 67 65 conds().+.$this->indicatorChange
f5140 49 6e 74 65 72 76 61 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 43 75 72 72 65 6e Interval;.$this->indicatorCurren
f5160 74 20 3d 20 30 3b 0a 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a t.=.0;..$this->display();.}.....
f5180 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 76 61 6e 63 65 28 29 0a 7b 0a 69 66 20 28 public.function.advance().{.if.(
f51a0 21 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f !$this->started).{.throw.new.\Lo
f51c0 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 50 72 6f 67 72 65 73 73 20 69 6e 64 69 63 61 74 6f 72 gicException('Progress.indicator
f51e0 20 68 61 73 20 6e 6f 74 20 79 65 74 20 62 65 65 6e 20 73 74 61 72 74 65 64 2e 27 29 3b 0a 7d 0a .has.not.yet.been.started.');.}.
f5200 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 .if.(!$this->output->isDecorated
f5220 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 75 72 72 65 6e 74 54 69 6d 65 20 3d 20 ()).{.return;.}..$currentTime.=.
f5240 24 74 68 69 73 2d 3e 67 65 74 43 75 72 72 65 6e 74 54 69 6d 65 49 6e 4d 69 6c 6c 69 73 65 63 6f $this->getCurrentTimeInMilliseco
f5260 6e 64 73 28 29 3b 0a 0a 69 66 20 28 24 63 75 72 72 65 6e 74 54 69 6d 65 20 3c 20 24 74 68 69 73 nds();..if.($currentTime.<.$this
f5280 2d 3e 69 6e 64 69 63 61 74 6f 72 55 70 64 61 74 65 54 69 6d 65 29 20 7b 0a 72 65 74 75 72 6e 3b ->indicatorUpdateTime).{.return;
f52a0 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 55 70 64 61 74 65 54 69 6d 65 20 3d .}..$this->indicatorUpdateTime.=
f52c0 20 24 63 75 72 72 65 6e 74 54 69 6d 65 20 2b 20 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 .$currentTime.+.$this->indicator
f52e0 43 68 61 6e 67 65 49 6e 74 65 72 76 61 6c 3b 0a 2b 2b 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 ChangeInterval;.++$this->indicat
f5300 6f 72 43 75 72 72 65 6e 74 3b 0a 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 28 29 3b 0a 7d 0a orCurrent;..$this->display();.}.
f5320 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 69 73 68 28 24 6d 65 ......public.function.finish($me
f5340 73 73 61 67 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 29 20 7b 0a ssage).{.if.(!$this->started).{.
f5360 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 50 72 6f 67 72 throw.new.\LogicException('Progr
f5380 65 73 73 20 69 6e 64 69 63 61 74 6f 72 20 68 61 73 20 6e 6f 74 20 79 65 74 20 62 65 65 6e 20 73 ess.indicator.has.not.yet.been.s
f53a0 74 61 72 74 65 64 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 20 3d 20 24 tarted.');.}..$this->message.=.$
f53c0 6d 65 73 73 61 67 65 3b 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 28 29 3b 0a 24 74 68 69 73 message;.$this->display();.$this
f53e0 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a 24 74 68 69 73 2d 3e 73 74 ->output->writeln('');.$this->st
f5400 61 72 74 65 64 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 arted.=.false;.}.........public.
f5420 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 6f 72 6d 61 74 44 65 66 69 6e 69 74 static.function.getFormatDefinit
f5440 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 ion($name).{.if.(!self::$formats
f5460 29 20 7b 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 20 3d 20 73 65 6c 66 3a 3a 69 6e 69 74 46 ).{.self::$formats.=.self::initF
f5480 6f 72 6d 61 74 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 73 65 6c 66 3a 3a ormats();.}..return.isset(self::
f54a0 24 66 6f 72 6d 61 74 73 5b 24 6e 61 6d 65 5d 29 20 3f 20 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 $formats[$name]).?.self::$format
f54c0 73 5b 24 6e 61 6d 65 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c s[$name].:.null;.}..........publ
f54e0 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 6c 61 63 65 68 6f 6c 64 65 ic.static.function.setPlaceholde
f5500 72 46 6f 72 6d 61 74 74 65 72 44 65 66 69 6e 69 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 63 61 6c rFormatterDefinition($name,.$cal
f5520 6c 61 62 6c 65 29 0a 7b 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 29 lable).{.if.(!self::$formatters)
f5540 20 7b 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 20 3d 20 73 65 6c 66 3a 3a 69 6e 69 .{.self::$formatters.=.self::ini
f5560 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 73 28 29 3b 0a 7d 0a 0a 73 65 6c tPlaceholderFormatters();.}..sel
f5580 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 61 6c 6c 61 62 6c f::$formatters[$name].=.$callabl
f55a0 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 e;.}.........public.static.funct
f55c0 69 6f 6e 20 67 65 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 44 65 66 69 6e ion.getPlaceholderFormatterDefin
f55e0 69 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 ition($name).{.if.(!self::$forma
f5600 74 74 65 72 73 29 20 7b 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 20 3d 20 73 65 6c tters).{.self::$formatters.=.sel
f5620 66 3a 3a 69 6e 69 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 73 28 29 3b 0a f::initPlaceholderFormatters();.
f5640 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 }..return.isset(self::$formatter
f5660 73 5b 24 6e 61 6d 65 5d 29 20 3f 20 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 5b 24 6e s[$name]).?.self::$formatters[$n
f5680 61 6d 65 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e ame].:.null;.}..private.function
f56a0 20 64 69 73 70 6c 61 79 28 29 0a 7b 0a 69 66 20 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 .display().{.if.(OutputInterface
f56c0 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6f 75 74 ::VERBOSITY_QUIET.===.$this->out
f56e0 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d put->getVerbosity()).{.return;.}
f5700 0a 0a 24 73 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 0a 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 ..$self.=.$this;..$this->overwri
f5720 74 65 28 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 22 7b 25 28 5b 61 2d te(preg_replace_callback("{%([a-
f5740 7a 5c 2d 5f 5d 2b 29 28 3f 3a 5c 3a 28 5b 5e 25 5d 2b 29 29 3f 25 7d 69 22 2c 20 66 75 6e 63 74 z\-_]+)(?:\:([^%]+))?%}i",.funct
f5760 69 6f 6e 20 28 24 6d 61 74 63 68 65 73 29 20 75 73 65 20 28 24 73 65 6c 66 29 20 7b 0a 69 66 20 ion.($matches).use.($self).{.if.
f5780 28 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 73 65 6c 66 3a 3a 67 65 74 50 6c 61 63 65 68 6f 6c ($formatter.=.$self::getPlacehol
f57a0 64 65 72 46 6f 72 6d 61 74 74 65 72 44 65 66 69 6e 69 74 69 6f 6e 28 24 6d 61 74 63 68 65 73 5b derFormatterDefinition($matches[
f57c0 31 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 66 6f 1])).{.return.call_user_func($fo
f57e0 72 6d 61 74 74 65 72 2c 20 24 73 65 6c 66 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 rmatter,.$self);.}..return.$matc
f5800 68 65 73 5b 30 5d 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 29 29 3b 0a 7d 0a 0a 70 hes[0];.},.$this->format));.}..p
f5820 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 74 65 72 6d 69 6e 65 42 65 73 74 46 6f 72 rivate.function.determineBestFor
f5840 6d 61 74 28 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 mat().{.switch.($this->output->g
f5860 65 74 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 0a 20 63 61 73 65 20 4f 75 74 70 75 74 49 6e etVerbosity()).{...case.OutputIn
f5880 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 3a 0a 72 65 74 75 terface::VERBOSITY_VERBOSE:.retu
f58a0 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 20 rn.$this->output->isDecorated().
f58c0 3f 20 27 76 65 72 62 6f 73 65 27 20 3a 20 27 76 65 72 62 6f 73 65 5f 6e 6f 5f 61 6e 73 69 27 3b ?.'verbose'.:.'verbose_no_ansi';
f58e0 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 .case.OutputInterface::VERBOSITY
f5900 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 3a 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 _VERY_VERBOSE:.case.OutputInterf
f5920 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 3a 0a 72 65 74 75 72 6e 20 24 74 68 ace::VERBOSITY_DEBUG:.return.$th
f5940 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 20 3f 20 27 76 65 72 is->output->isDecorated().?.'ver
f5960 79 5f 76 65 72 62 6f 73 65 27 20 3a 20 27 76 65 72 79 5f 76 65 72 62 6f 73 65 5f 6e 6f 5f 61 6e y_verbose'.:.'very_verbose_no_an
f5980 73 69 27 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 si';.default:.return.$this->outp
f59a0 75 74 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 20 3f 20 27 6e 6f 72 6d 61 6c 27 20 3a 20 27 ut->isDecorated().?.'normal'.:.'
f59c0 6e 6f 72 6d 61 6c 5f 6e 6f 5f 61 6e 73 69 27 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 normal_no_ansi';.}.}.......priva
f59e0 74 65 20 66 75 6e 63 74 69 6f 6e 20 6f 76 65 72 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 29 0a te.function.overwrite($message).
f5a00 7b 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 {...if.(null.!==.$this->lastMess
f5a20 61 67 65 73 4c 65 6e 67 74 68 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 agesLength).{.if.($this->lastMes
f5a40 73 61 67 65 73 4c 65 6e 67 74 68 20 3e 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 sagesLength.>.Helper::strlenWith
f5a60 6f 75 74 44 65 63 6f 72 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 outDecoration($this->output->get
f5a80 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 6d 65 73 73 61 67 65 29 29 20 7b 0a 24 6d 65 73 73 61 Formatter(),.$message)).{.$messa
f5aa0 67 65 20 3d 20 73 74 72 5f 70 61 64 28 24 6d 65 73 73 61 67 65 2c 20 24 74 68 69 73 2d 3e 6c 61 ge.=.str_pad($message,.$this->la
f5ac0 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 2c 20 22 5c 78 32 30 22 2c 20 53 54 52 5f 50 41 stMessagesLength,."\x20",.STR_PA
f5ae0 44 5f 52 49 47 48 54 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 D_RIGHT);.}.}..if.($this->output
f5b00 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 ->isDecorated()).{.$this->output
f5b20 2d 3e 77 72 69 74 65 28 22 5c 78 30 44 22 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e ->write("\x0D");.$this->output->
f5b40 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d write($message);.}.else.{.$this-
f5b60 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 24 >output->writeln($message);.}..$
f5b80 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3d 20 30 3b 0a 0a 24 this->lastMessagesLength.=.0;..$
f5ba0 6c 65 6e 20 3d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 6f 75 74 44 65 63 6f 72 len.=.Helper::strlenWithoutDecor
f5bc0 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 ation($this->output->getFormatte
f5be0 72 28 29 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 0a 69 66 20 28 24 6c 65 6e 20 3e 20 24 74 68 69 r(),.$message);..if.($len.>.$thi
f5c00 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e s->lastMessagesLength).{.$this->
f5c20 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3d 20 24 6c 65 6e 3b 0a 7d 0a 7d 0a 0a lastMessagesLength.=.$len;.}.}..
f5c40 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 75 72 72 65 6e 74 54 69 6d 65 49 private.function.getCurrentTimeI
f5c60 6e 4d 69 6c 6c 69 73 65 63 6f 6e 64 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 72 6f 75 6e 64 28 6d nMilliseconds().{.return.round(m
f5c80 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 20 2a 20 31 30 30 30 29 3b 0a 7d 0a 0a 70 72 69 76 61 icrotime(true).*.1000);.}..priva
f5ca0 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 50 6c 61 63 65 68 6f 6c 64 te.static.function.initPlacehold
f5cc0 65 72 46 6f 72 6d 61 74 74 65 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 erFormatters().{.return.array(.'
f5ce0 69 6e 64 69 63 61 74 6f 72 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 50 72 6f 67 72 65 73 73 indicator'.=>.function.(Progress
f5d00 49 6e 64 69 63 61 74 6f 72 20 24 69 6e 64 69 63 61 74 6f 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 Indicator.$indicator).{.return.$
f5d20 69 6e 64 69 63 61 74 6f 72 2d 3e 67 65 74 43 75 72 72 65 6e 74 56 61 6c 75 65 28 29 3b 0a 7d 2c indicator->getCurrentValue();.},
f5d40 0a 27 6d 65 73 73 61 67 65 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 50 72 6f 67 72 65 73 73 .'message'.=>.function.(Progress
f5d60 49 6e 64 69 63 61 74 6f 72 20 24 69 6e 64 69 63 61 74 6f 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 Indicator.$indicator).{.return.$
f5d80 69 6e 64 69 63 61 74 6f 72 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 3b 0a 7d 2c 0a 27 65 6c 61 indicator->getMessage();.},.'ela
f5da0 70 73 65 64 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 50 72 6f 67 72 65 73 73 49 6e 64 69 63 psed'.=>.function.(ProgressIndic
f5dc0 61 74 6f 72 20 24 69 6e 64 69 63 61 74 6f 72 29 20 7b 0a 72 65 74 75 72 6e 20 48 65 6c 70 65 72 ator.$indicator).{.return.Helper
f5de0 3a 3a 66 6f 72 6d 61 74 54 69 6d 65 28 74 69 6d 65 28 29 20 2d 20 24 69 6e 64 69 63 61 74 6f 72 ::formatTime(time().-.$indicator
f5e00 2d 3e 67 65 74 53 74 61 72 74 54 69 6d 65 28 29 29 3b 0a 7d 2c 0a 27 6d 65 6d 6f 72 79 27 20 3d ->getStartTime());.},.'memory'.=
f5e20 3e 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0a 72 65 74 75 72 6e 20 48 65 6c 70 65 72 3a 3a 66 >.function.().{.return.Helper::f
f5e40 6f 72 6d 61 74 4d 65 6d 6f 72 79 28 6d 65 6d 6f 72 79 5f 67 65 74 5f 75 73 61 67 65 28 74 72 75 ormatMemory(memory_get_usage(tru
f5e60 65 29 29 3b 0a 7d 2c 0a 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e e));.},.);.}..private.static.fun
f5e80 63 74 69 6f 6e 20 69 6e 69 74 46 6f 72 6d 61 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 ction.initFormats().{.return.arr
f5ea0 61 79 28 0a 27 6e 6f 72 6d 61 6c 27 20 3d 3e 20 27 20 25 69 6e 64 69 63 61 74 6f 72 25 20 25 6d ay(.'normal'.=>.'.%indicator%.%m
f5ec0 65 73 73 61 67 65 25 27 2c 0a 27 6e 6f 72 6d 61 6c 5f 6e 6f 5f 61 6e 73 69 27 20 3d 3e 20 27 20 essage%',.'normal_no_ansi'.=>.'.
f5ee0 25 6d 65 73 73 61 67 65 25 27 2c 0a 0a 27 76 65 72 62 6f 73 65 27 20 3d 3e 20 27 20 25 69 6e 64 %message%',..'verbose'.=>.'.%ind
f5f00 69 63 61 74 6f 72 25 20 25 6d 65 73 73 61 67 65 25 20 28 25 65 6c 61 70 73 65 64 3a 36 73 25 29 icator%.%message%.(%elapsed:6s%)
f5f20 27 2c 0a 27 76 65 72 62 6f 73 65 5f 6e 6f 5f 61 6e 73 69 27 20 3d 3e 20 27 20 25 6d 65 73 73 61 ',.'verbose_no_ansi'.=>.'.%messa
f5f40 67 65 25 20 28 25 65 6c 61 70 73 65 64 3a 36 73 25 29 27 2c 0a 0a 27 76 65 72 79 5f 76 65 72 62 ge%.(%elapsed:6s%)',..'very_verb
f5f60 6f 73 65 27 20 3d 3e 20 27 20 25 69 6e 64 69 63 61 74 6f 72 25 20 25 6d 65 73 73 61 67 65 25 20 ose'.=>.'.%indicator%.%message%.
f5f80 28 25 65 6c 61 70 73 65 64 3a 36 73 25 2c 20 25 6d 65 6d 6f 72 79 3a 36 73 25 29 27 2c 0a 27 76 (%elapsed:6s%,.%memory:6s%)',.'v
f5fa0 65 72 79 5f 76 65 72 62 6f 73 65 5f 6e 6f 5f 61 6e 73 69 27 20 3d 3e 20 27 20 25 6d 65 73 73 61 ery_verbose_no_ansi'.=>.'.%messa
f5fc0 67 65 25 20 28 25 65 6c 61 70 73 65 64 3a 36 73 25 2c 20 25 6d 65 6d 6f 72 79 3a 36 73 25 29 27 ge%.(%elapsed:6s%,.%memory:6s%)'
f5fe0 2c 0a 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 ,.);.}.}.<?php...........namespa
f6000 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c ce.Symfony\Component\Console\Hel
f6020 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 per;..use.Symfony\Component\Cons
f6040 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 ole\Exception\InvalidArgumentExc
f6060 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f eption;.use.Symfony\Component\Co
f6080 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e nsole\Exception\RuntimeException
f60a0 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c ;.use.Symfony\Component\Console\
f60c0 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e Input\InputInterface;.use.Symfon
f60e0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 6f y\Component\Console\Output\Conso
f6100 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 leOutputInterface;.use.Symfony\C
f6120 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e omponent\Console\Output\OutputIn
f6140 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 terface;.use.Symfony\Component\C
f6160 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 onsole\Formatter\OutputFormatter
f6180 53 74 79 6c 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e Style;.use.Symfony\Component\Con
f61a0 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 51 75 65 73 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 sole\Question\Question;.use.Symf
f61c0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 43 ony\Component\Console\Question\C
f61e0 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 51 75 65 73 74 hoiceQuestion;.......class.Quest
f6200 69 6f 6e 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c 70 65 72 0a 7b 0a 70 72 69 76 61 ionHelper.extends.Helper.{.priva
f6220 74 65 20 24 69 6e 70 75 74 53 74 72 65 61 6d 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 te.$inputStream;.private.static.
f6240 24 73 68 65 6c 6c 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 73 74 74 79 3b 0a 0a 0a $shell;.private.static.$stty;...
f6260 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 49 6e ..........public.function.ask(In
f6280 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 putInterface.$input,.OutputInter
f62a0 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 51 75 65 73 74 69 6f 6e 20 24 71 75 65 73 74 69 6f 6e face.$output,.Question.$question
f62c0 29 0a 7b 0a 69 66 20 28 24 6f 75 74 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 6f ).{.if.($output.instanceof.Conso
f62e0 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 leOutputInterface).{.$output.=.$
f6300 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 69 66 20 output->getErrorOutput();.}..if.
f6320 28 21 24 69 6e 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 72 65 74 (!$input->isInteractive()).{.ret
f6340 75 72 6e 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 7d 0a 0a urn.$question->getDefault();.}..
f6360 69 66 20 28 21 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 56 61 6c 69 64 61 74 6f 72 28 29 29 20 if.(!$question->getValidator()).
f6380 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 41 73 6b 28 24 6f 75 74 70 75 74 2c 20 24 {.return.$this->doAsk($output,.$
f63a0 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a 0a 24 69 question);.}..$that.=.$this;..$i
f63c0 6e 74 65 72 76 69 65 77 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 75 73 65 20 28 24 6f nterviewer.=.function.().use.($o
f63e0 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 74 68 61 74 29 20 7b 0a 72 65 74 75 72 utput,.$question,.$that).{.retur
f6400 6e 20 24 74 68 61 74 2d 3e 64 6f 41 73 6b 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f n.$that->doAsk($output,.$questio
f6420 6e 29 3b 0a 7d 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 74 n);.};..return.$this->validateAt
f6440 74 65 6d 70 74 73 28 24 69 6e 74 65 72 76 69 65 77 65 72 2c 20 24 6f 75 74 70 75 74 2c 20 24 71 tempts($interviewer,.$output,.$q
f6460 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e uestion);.}...........public.fun
f6480 63 74 69 6f 6e 20 73 65 74 49 6e 70 75 74 53 74 72 65 61 6d 28 24 73 74 72 65 61 6d 29 0a 7b 0a ction.setInputStream($stream).{.
f64a0 69 66 20 28 21 69 73 5f 72 65 73 6f 75 72 63 65 28 24 73 74 72 65 61 6d 29 29 20 7b 0a 74 68 72 if.(!is_resource($stream)).{.thr
f64c0 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 ow.new.InvalidArgumentException(
f64e0 27 49 6e 70 75 74 20 73 74 72 65 61 6d 20 6d 75 73 74 20 62 65 20 61 20 76 61 6c 69 64 20 72 65 'Input.stream.must.be.a.valid.re
f6500 73 6f 75 72 63 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d source.');.}..$this->inputStream
f6520 20 3d 20 24 73 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .=.$stream;.}.......public.funct
f6540 69 6f 6e 20 67 65 74 49 6e 70 75 74 53 74 72 65 61 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 ion.getInputStream().{.return.$t
f6560 68 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 his->inputStream;.}.....public.f
f6580 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 71 75 65 73 unction.getName().{.return.'ques
f65a0 74 69 6f 6e 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 tion';.}...............public.fu
f65c0 6e 63 74 69 6f 6e 20 64 6f 41 73 6b 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 nction.doAsk(OutputInterface.$ou
f65e0 74 70 75 74 2c 20 51 75 65 73 74 69 6f 6e 20 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 tput,.Question.$question).{.$thi
f6600 73 2d 3e 77 72 69 74 65 50 72 6f 6d 70 74 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f s->writePrompt($output,.$questio
f6620 6e 29 3b 0a 0a 24 69 6e 70 75 74 53 74 72 65 61 6d 20 3d 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 n);..$inputStream.=.$this->input
f6640 53 74 72 65 61 6d 20 3f 3a 20 53 54 44 49 4e 3b 0a 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 20 3d Stream.?:.STDIN;.$autocomplete.=
f6660 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 41 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 .$question->getAutocompleterValu
f6680 65 73 28 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 es();..if.(null.===.$autocomplet
f66a0 65 20 7c 7c 20 21 24 74 68 69 73 2d 3e 68 61 73 53 74 74 79 41 76 61 69 6c 61 62 6c 65 28 29 29 e.||.!$this->hasSttyAvailable())
f66c0 20 7b 0a 24 72 65 74 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 24 71 75 65 73 74 69 6f 6e 2d 3e .{.$ret.=.false;.if.($question->
f66e0 69 73 48 69 64 64 65 6e 28 29 29 20 7b 0a 74 72 79 20 7b 0a 24 72 65 74 20 3d 20 74 72 69 6d 28 isHidden()).{.try.{.$ret.=.trim(
f6700 24 74 68 69 73 2d 3e 67 65 74 48 69 64 64 65 6e 52 65 73 70 6f 6e 73 65 28 24 6f 75 74 70 75 74 $this->getHiddenResponse($output
f6720 2c 20 24 69 6e 70 75 74 53 74 72 65 61 6d 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 ,.$inputStream));.}.catch.(\Runt
f6740 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 21 24 71 75 65 73 74 69 6f imeException.$e).{.if.(!$questio
f6760 6e 2d 3e 69 73 48 69 64 64 65 6e 46 61 6c 6c 62 61 63 6b 28 29 29 20 7b 0a 74 68 72 6f 77 20 24 n->isHiddenFallback()).{.throw.$
f6780 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 74 29 20 7b 0a e;.}.}.}..if.(false.===.$ret).{.
f67a0 24 72 65 74 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 46 72 6f 6d 49 6e 70 75 74 28 24 69 6e 70 $ret.=.$this->readFromInput($inp
f67c0 75 74 53 74 72 65 61 6d 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 74 20 3d 20 74 72 69 utStream);.}.}.else.{.$ret.=.tri
f67e0 6d 28 24 74 68 69 73 2d 3e 61 75 74 6f 63 6f 6d 70 6c 65 74 65 28 24 6f 75 74 70 75 74 2c 20 24 m($this->autocomplete($output,.$
f6800 71 75 65 73 74 69 6f 6e 2c 20 24 69 6e 70 75 74 53 74 72 65 61 6d 29 29 3b 0a 7d 0a 0a 24 72 65 question,.$inputStream));.}..$re
f6820 74 20 3d 20 73 74 72 6c 65 6e 28 24 72 65 74 29 20 3e 20 30 20 3f 20 24 72 65 74 20 3a 20 24 71 t.=.strlen($ret).>.0.?.$ret.:.$q
f6840 75 65 73 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 0a 69 66 20 28 24 6e 6f 72 uestion->getDefault();..if.($nor
f6860 6d 61 6c 69 7a 65 72 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 4e 6f 72 6d 61 6c 69 7a malizer.=.$question->getNormaliz
f6880 65 72 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6e 6f 72 6d 61 6c 69 7a 65 72 28 24 72 65 74 29 er()).{.return.$normalizer($ret)
f68a0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 ;.}..return.$ret;.}........prote
f68c0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 50 72 6f 6d 70 74 28 4f 75 74 70 75 74 cted.function.writePrompt(Output
f68e0 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 51 75 65 73 74 69 6f 6e 20 24 71 75 65 Interface.$output,.Question.$que
f6900 73 74 69 6f 6e 29 0a 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 stion).{.$message.=.$question->g
f6920 65 74 51 75 65 73 74 69 6f 6e 28 29 3b 0a 0a 69 66 20 28 24 71 75 65 73 74 69 6f 6e 20 69 6e 73 etQuestion();..if.($question.ins
f6940 74 61 6e 63 65 6f 66 20 43 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 29 20 7b 0a 24 6d 61 78 57 69 tanceof.ChoiceQuestion).{.$maxWi
f6960 64 74 68 20 3d 20 6d 61 78 28 61 72 72 61 79 5f 6d 61 70 28 61 72 72 61 79 28 24 74 68 69 73 2c dth.=.max(array_map(array($this,
f6980 20 27 73 74 72 6c 65 6e 27 29 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 71 75 65 73 74 69 6f 6e .'strlen'),.array_keys($question
f69a0 2d 3e 67 65 74 43 68 6f 69 63 65 73 28 29 29 29 29 3b 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 ->getChoices())));..$messages.=.
f69c0 28 61 72 72 61 79 29 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 29 (array).$question->getQuestion()
f69e0 3b 0a 66 6f 72 65 61 63 68 20 28 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 43 68 6f 69 63 65 73 ;.foreach.($question->getChoices
f6a00 28 29 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 77 69 64 74 68 20 3d ().as.$key.=>.$value).{.$width.=
f6a20 20 24 6d 61 78 57 69 64 74 68 20 2d 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 6b 65 79 29 .$maxWidth.-.$this->strlen($key)
f6a40 3b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 27 20 20 5b 3c 69 6e 66 6f 3e 27 2e 24 6b 65 79 ;.$messages[].=.'..[<info>'.$key
f6a60 2e 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 77 69 64 74 68 29 2e 27 3c 2f 69 6e 66 6f .str_repeat('.',.$width).'</info
f6a80 3e 5d 20 27 2e 24 76 61 6c 75 65 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e >].'.$value;.}..$output->writeln
f6aa0 28 24 6d 65 73 73 61 67 65 73 29 3b 0a 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 71 75 65 73 74 69 ($messages);..$message.=.$questi
f6ac0 6f 6e 2d 3e 67 65 74 50 72 6f 6d 70 74 28 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 on->getPrompt();.}..$output->wri
f6ae0 74 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 te($message);.}........protected
f6b00 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 45 72 72 6f 72 28 4f 75 74 70 75 74 49 6e 74 65 72 .function.writeError(OutputInter
f6b20 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 72 72 6f 72 29 face.$output,.\Exception.$error)
f6b40 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 .{.if.(null.!==.$this->getHelper
f6b60 53 65 74 28 29 20 26 26 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e Set().&&.$this->getHelperSet()->
f6b80 68 61 73 28 27 66 6f 72 6d 61 74 74 65 72 27 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 has('formatter')).{.$message.=.$
f6ba0 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 66 6f 72 6d 61 this->getHelperSet()->get('forma
f6bc0 74 74 65 72 27 29 2d 3e 66 6f 72 6d 61 74 42 6c 6f 63 6b 28 24 65 72 72 6f 72 2d 3e 67 65 74 4d tter')->formatBlock($error->getM
f6be0 65 73 73 61 67 65 28 29 2c 20 27 65 72 72 6f 72 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d 65 essage(),.'error');.}.else.{.$me
f6c00 73 73 61 67 65 20 3d 20 27 3c 65 72 72 6f 72 3e 27 2e 24 65 72 72 6f 72 2d 3e 67 65 74 4d 65 73 ssage.=.'<error>'.$error->getMes
f6c20 73 61 67 65 28 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 sage().'</error>';.}..$output->w
f6c40 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 riteln($message);.}..........pri
f6c60 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f 63 6f 6d 70 6c 65 74 65 28 4f 75 74 70 75 vate.function.autocomplete(Outpu
f6c80 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 51 75 65 73 74 69 6f 6e 20 24 71 75 tInterface.$output,.Question.$qu
f6ca0 65 73 74 69 6f 6e 2c 20 24 69 6e 70 75 74 53 74 72 65 61 6d 29 0a 7b 0a 24 61 75 74 6f 63 6f 6d estion,.$inputStream).{.$autocom
f6cc0 70 6c 65 74 65 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 41 75 74 6f 63 6f 6d 70 6c 65 plete.=.$question->getAutocomple
f6ce0 74 65 72 56 61 6c 75 65 73 28 29 3b 0a 24 72 65 74 20 3d 20 27 27 3b 0a 0a 24 69 20 3d 20 30 3b terValues();.$ret.=.'';..$i.=.0;
f6d00 0a 24 6f 66 73 20 3d 20 2d 31 3b 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 61 75 74 6f 63 6f 6d 70 .$ofs.=.-1;.$matches.=.$autocomp
f6d20 6c 65 74 65 3b 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 lete;.$numMatches.=.count($match
f6d40 65 73 29 3b 0a 0a 24 73 74 74 79 4d 6f 64 65 20 3d 20 73 68 65 6c 6c 5f 65 78 65 63 28 27 73 74 es);..$sttyMode.=.shell_exec('st
f6d60 74 79 20 2d 67 27 29 3b 0a 0a 0a 20 73 68 65 6c 6c 5f 65 78 65 63 28 27 73 74 74 79 20 2d 69 63 ty.-g');....shell_exec('stty.-ic
f6d80 61 6e 6f 6e 20 2d 65 63 68 6f 27 29 3b 0a 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 anon.-echo');....$output->getFor
f6da0 6d 61 74 74 65 72 28 29 2d 3e 73 65 74 53 74 79 6c 65 28 27 68 6c 27 2c 20 6e 65 77 20 4f 75 74 matter()->setStyle('hl',.new.Out
f6dc0 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 62 6c 61 63 6b 27 2c 20 27 77 68 69 74 putFormatterStyle('black',.'whit
f6de0 65 27 29 29 3b 0a 0a 0a 20 77 68 69 6c 65 20 28 21 66 65 6f 66 28 24 69 6e 70 75 74 53 74 72 65 e'));....while.(!feof($inputStre
f6e00 61 6d 29 29 20 7b 0a 24 63 20 3d 20 66 72 65 61 64 28 24 69 6e 70 75 74 53 74 72 65 61 6d 2c 20 am)).{.$c.=.fread($inputStream,.
f6e20 31 29 3b 0a 0a 0a 20 69 66 20 28 22 5c 31 37 37 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 69 66 20 28 1);....if.("\177".===.$c).{.if.(
f6e40 30 20 3d 3d 3d 20 24 6e 75 6d 4d 61 74 63 68 65 73 20 26 26 20 30 20 21 3d 3d 20 24 69 29 20 7b 0.===.$numMatches.&&.0.!==.$i).{
f6e60 0a 2d 2d 24 69 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 5c 30 33 33 5b 31 44 .--$i;...$output->write("\033[1D
f6e80 22 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 20 3d 3d 3d 20 30 29 20 7b 0a 24 6f 66 73 20 3d 20 2d 31 ");.}..if.($i.===.0).{.$ofs.=.-1
f6ea0 3b 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 3b 0a 24 6e 75 6d ;.$matches.=.$autocomplete;.$num
f6ec0 4d 61 74 63 68 65 73 20 3d 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 65 73 29 3b 0a 7d 20 65 6c 73 Matches.=.count($matches);.}.els
f6ee0 65 20 7b 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a 7d 0a 0a 0a 20 24 72 65 74 20 3d e.{.$numMatches.=.0;.}....$ret.=
f6f00 20 73 75 62 73 74 72 28 24 72 65 74 2c 20 30 2c 20 24 69 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 .substr($ret,.0,.$i);.}.elseif.(
f6f20 22 5c 30 33 33 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 0a 20 24 63 20 2e 3d 20 66 72 65 61 64 28 24 "\033".===.$c).{...$c..=.fread($
f6f40 69 6e 70 75 74 53 74 72 65 61 6d 2c 20 32 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 63 inputStream,.2);....if.(isset($c
f6f60 5b 32 5d 29 20 26 26 20 28 27 41 27 20 3d 3d 3d 20 24 63 5b 32 5d 20 7c 7c 20 27 42 27 20 3d 3d [2]).&&.('A'.===.$c[2].||.'B'.==
f6f80 3d 20 24 63 5b 32 5d 29 29 20 7b 0a 69 66 20 28 27 41 27 20 3d 3d 3d 20 24 63 5b 32 5d 20 26 26 =.$c[2])).{.if.('A'.===.$c[2].&&
f6fa0 20 2d 31 20 3d 3d 3d 20 24 6f 66 73 29 20 7b 0a 24 6f 66 73 20 3d 20 30 3b 0a 7d 0a 0a 69 66 20 .-1.===.$ofs).{.$ofs.=.0;.}..if.
f6fc0 28 30 20 3d 3d 3d 20 24 6e 75 6d 4d 61 74 63 68 65 73 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a (0.===.$numMatches).{.continue;.
f6fe0 7d 0a 0a 24 6f 66 73 20 2b 3d 20 28 27 41 27 20 3d 3d 3d 20 24 63 5b 32 5d 29 20 3f 20 2d 31 20 }..$ofs.+=.('A'.===.$c[2]).?.-1.
f7000 3a 20 31 3b 0a 24 6f 66 73 20 3d 20 28 24 6e 75 6d 4d 61 74 63 68 65 73 20 2b 20 24 6f 66 73 29 :.1;.$ofs.=.($numMatches.+.$ofs)
f7020 20 25 20 24 6e 75 6d 4d 61 74 63 68 65 73 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 6f 72 64 28 .%.$numMatches;.}.}.elseif.(ord(
f7040 24 63 29 20 3c 20 33 32 29 20 7b 0a 69 66 20 28 22 5c 74 22 20 3d 3d 3d 20 24 63 20 7c 7c 20 22 $c).<.32).{.if.("\t".===.$c.||."
f7060 5c 6e 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 69 66 20 28 24 6e 75 6d 4d 61 74 63 68 65 73 20 3e 20 \n".===.$c).{.if.($numMatches.>.
f7080 30 20 26 26 20 2d 31 20 21 3d 3d 20 24 6f 66 73 29 20 7b 0a 24 72 65 74 20 3d 20 24 6d 61 74 63 0.&&.-1.!==.$ofs).{.$ret.=.$matc
f70a0 68 65 73 5b 24 6f 66 73 5d 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 75 62 73 hes[$ofs];...$output->write(subs
f70c0 74 72 28 24 72 65 74 2c 20 24 69 29 29 3b 0a 24 69 20 3d 20 73 74 72 6c 65 6e 28 24 72 65 74 29 tr($ret,.$i));.$i.=.strlen($ret)
f70e0 3b 0a 7d 0a 0a 69 66 20 28 22 5c 6e 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 24 6f 75 74 70 75 74 2d ;.}..if.("\n".===.$c).{.$output-
f7100 3e 77 72 69 74 65 28 24 63 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 6e 75 6d 4d 61 74 63 68 65 >write($c);.break;.}..$numMatche
f7120 73 20 3d 20 30 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 75 s.=.0;.}..continue;.}.else.{.$ou
f7140 74 70 75 74 2d 3e 77 72 69 74 65 28 24 63 29 3b 0a 24 72 65 74 20 2e 3d 20 24 63 3b 0a 2b 2b 24 tput->write($c);.$ret..=.$c;.++$
f7160 69 3b 0a 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a 24 6f 66 73 20 3d 20 30 3b 0a 0a i;..$numMatches.=.0;.$ofs.=.0;..
f7180 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 20 61 73 20 24 76 61 6c 75 65 foreach.($autocomplete.as.$value
f71a0 29 20 7b 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 76 61 6c 75 65 2c 20 24 ).{...if.(0.===.strpos($value,.$
f71c0 72 65 74 29 20 26 26 20 24 69 20 21 3d 3d 20 73 74 72 6c 65 6e 28 24 76 61 6c 75 65 29 29 20 7b ret).&&.$i.!==.strlen($value)).{
f71e0 0a 24 6d 61 74 63 68 65 73 5b 24 6e 75 6d 4d 61 74 63 68 65 73 2b 2b 5d 20 3d 20 24 76 61 6c 75 .$matches[$numMatches++].=.$valu
f7200 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 5c 30 33 33 e;.}.}.}....$output->write("\033
f7220 5b 4b 22 29 3b 0a 0a 69 66 20 28 24 6e 75 6d 4d 61 74 63 68 65 73 20 3e 20 30 20 26 26 20 2d 31 [K");..if.($numMatches.>.0.&&.-1
f7240 20 21 3d 3d 20 24 6f 66 73 29 20 7b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 5c .!==.$ofs).{...$output->write("\
f7260 30 33 33 37 22 29 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 27 3c 68 6c 3e 27 2e 0337");...$output->write('<hl>'.
f7280 73 75 62 73 74 72 28 24 6d 61 74 63 68 65 73 5b 24 6f 66 73 5d 2c 20 24 69 29 2e 27 3c 2f 68 6c substr($matches[$ofs],.$i).'</hl
f72a0 3e 27 29 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 22 5c 30 33 33 38 22 29 3b 0a >');...$output->write("\0338");.
f72c0 7d 0a 7d 0a 0a 0a 20 73 68 65 6c 6c 5f 65 78 65 63 28 73 70 72 69 6e 74 66 28 27 73 74 74 79 20 }.}....shell_exec(sprintf('stty.
f72e0 25 73 27 2c 20 24 73 74 74 79 4d 6f 64 65 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 74 3b 0a %s',.$sttyMode));..return.$ret;.
f7300 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 }...........private.function.get
f7320 48 69 64 64 65 6e 52 65 73 70 6f 6e 73 65 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 HiddenResponse(OutputInterface.$
f7340 6f 75 74 70 75 74 2c 20 24 69 6e 70 75 74 53 74 72 65 61 6d 29 0a 7b 0a 69 66 20 28 27 5c 5c 27 output,.$inputStream).{.if.('\\'
f7360 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 24 65 78 65 .===.DIRECTORY_SEPARATOR).{.$exe
f7380 20 3d 20 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 52 65 73 6f 75 72 63 65 73 2f 62 69 6e 2f 68 69 .=.__DIR__.'/../Resources/bin/hi
f73a0 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 27 3b 0a 0a 0a 20 69 66 20 28 27 70 68 61 72 3a 27 20 3d ddeninput.exe';....if.('phar:'.=
f73c0 3d 3d 20 73 75 62 73 74 72 28 5f 5f 46 49 4c 45 5f 5f 2c 20 30 2c 20 35 29 29 20 7b 0a 24 74 6d ==.substr(__FILE__,.0,.5)).{.$tm
f73e0 70 45 78 65 20 3d 20 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 28 29 2e 27 2f 68 69 64 64 pExe.=.sys_get_temp_dir().'/hidd
f7400 65 6e 69 6e 70 75 74 2e 65 78 65 27 3b 0a 63 6f 70 79 28 24 65 78 65 2c 20 24 74 6d 70 45 78 65 eninput.exe';.copy($exe,.$tmpExe
f7420 29 3b 0a 24 65 78 65 20 3d 20 24 74 6d 70 45 78 65 3b 0a 7d 0a 0a 24 76 61 6c 75 65 20 3d 20 72 );.$exe.=.$tmpExe;.}..$value.=.r
f7440 74 72 69 6d 28 73 68 65 6c 6c 5f 65 78 65 63 28 24 65 78 65 29 29 3b 0a 24 6f 75 74 70 75 74 2d trim(shell_exec($exe));.$output-
f7460 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 6d 70 45 78 65 >writeln('');..if.(isset($tmpExe
f7480 29 29 20 7b 0a 75 6e 6c 69 6e 6b 28 24 74 6d 70 45 78 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 )).{.unlink($tmpExe);.}..return.
f74a0 24 76 61 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 53 74 74 79 41 76 61 $value;.}..if.($this->hasSttyAva
f74c0 69 6c 61 62 6c 65 28 29 29 20 7b 0a 24 73 74 74 79 4d 6f 64 65 20 3d 20 73 68 65 6c 6c 5f 65 78 ilable()).{.$sttyMode.=.shell_ex
f74e0 65 63 28 27 73 74 74 79 20 2d 67 27 29 3b 0a 0a 73 68 65 6c 6c 5f 65 78 65 63 28 27 73 74 74 79 ec('stty.-g');..shell_exec('stty
f7500 20 2d 65 63 68 6f 27 29 3b 0a 24 76 61 6c 75 65 20 3d 20 66 67 65 74 73 28 24 69 6e 70 75 74 53 .-echo');.$value.=.fgets($inputS
f7520 74 72 65 61 6d 2c 20 34 30 39 36 29 3b 0a 73 68 65 6c 6c 5f 65 78 65 63 28 73 70 72 69 6e 74 66 tream,.4096);.shell_exec(sprintf
f7540 28 27 73 74 74 79 20 25 73 27 2c 20 24 73 74 74 79 4d 6f 64 65 29 29 3b 0a 0a 69 66 20 28 66 61 ('stty.%s',.$sttyMode));..if.(fa
f7560 6c 73 65 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 lse.===.$value).{.throw.new.Runt
f7580 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 41 62 6f 72 74 65 64 27 29 3b 0a 7d 0a 0a 24 76 61 6c imeException('Aborted');.}..$val
f75a0 75 65 20 3d 20 74 72 69 6d 28 24 76 61 6c 75 65 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 ue.=.trim($value);.$output->writ
f75c0 65 6c 6e 28 27 27 29 3b 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 eln('');..return.$value;.}..if.(
f75e0 66 61 6c 73 65 20 21 3d 3d 20 24 73 68 65 6c 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 68 65 false.!==.$shell.=.$this->getShe
f7600 6c 6c 28 29 29 20 7b 0a 24 72 65 61 64 43 6d 64 20 3d 20 24 73 68 65 6c 6c 20 3d 3d 3d 20 27 63 ll()).{.$readCmd.=.$shell.===.'c
f7620 73 68 27 20 3f 20 27 73 65 74 20 6d 79 70 61 73 73 77 6f 72 64 20 3d 20 24 3c 27 20 3a 20 27 72 sh'.?.'set.mypassword.=.$<'.:.'r
f7640 65 61 64 20 2d 72 20 6d 79 70 61 73 73 77 6f 72 64 27 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 ead.-r.mypassword';.$command.=.s
f7660 70 72 69 6e 74 66 28 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 25 73 20 2d 63 20 27 73 74 74 79 printf("/usr/bin/env.%s.-c.'stty
f7680 20 2d 65 63 68 6f 3b 20 25 73 3b 20 73 74 74 79 20 65 63 68 6f 3b 20 65 63 68 6f 20 5c 24 6d 79 .-echo;.%s;.stty.echo;.echo.\$my
f76a0 70 61 73 73 77 6f 72 64 27 22 2c 20 24 73 68 65 6c 6c 2c 20 24 72 65 61 64 43 6d 64 29 3b 0a 24 password'",.$shell,.$readCmd);.$
f76c0 76 61 6c 75 65 20 3d 20 72 74 72 69 6d 28 73 68 65 6c 6c 5f 65 78 65 63 28 24 63 6f 6d 6d 61 6e value.=.rtrim(shell_exec($comman
f76e0 64 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a 0a 72 65 74 75 d));.$output->writeln('');..retu
f7700 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 rn.$value;.}..throw.new.RuntimeE
f7720 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 68 69 64 65 20 74 68 65 20 72 65 73 xception('Unable.to.hide.the.res
f7740 70 6f 6e 73 65 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 ponse.');.}.............private.
f7760 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 41 74 74 65 6d 70 74 73 28 24 69 6e 74 65 72 function.validateAttempts($inter
f7780 76 69 65 77 65 72 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c viewer,.OutputInterface.$output,
f77a0 20 51 75 65 73 74 69 6f 6e 20 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 24 65 72 72 6f 72 20 3d 20 .Question.$question).{.$error.=.
f77c0 6e 75 6c 6c 3b 0a 24 61 74 74 65 6d 70 74 73 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 null;.$attempts.=.$question->get
f77e0 4d 61 78 41 74 74 65 6d 70 74 73 28 29 3b 0a 77 68 69 6c 65 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 MaxAttempts();.while.(null.===.$
f7800 61 74 74 65 6d 70 74 73 20 7c 7c 20 24 61 74 74 65 6d 70 74 73 2d 2d 29 20 7b 0a 69 66 20 28 6e attempts.||.$attempts--).{.if.(n
f7820 75 6c 6c 20 21 3d 3d 20 24 65 72 72 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 45 72 ull.!==.$error).{.$this->writeEr
f7840 72 6f 72 28 24 6f 75 74 70 75 74 2c 20 24 65 72 72 6f 72 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 72 ror($output,.$error);.}..try.{.r
f7860 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 71 75 65 73 74 69 6f 6e 2d 3e eturn.call_user_func($question->
f7880 67 65 74 56 61 6c 69 64 61 74 6f 72 28 29 2c 20 24 69 6e 74 65 72 76 69 65 77 65 72 28 29 29 3b getValidator(),.$interviewer());
f78a0 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 72 72 6f 72 29 20 7b 0a 7d .}.catch.(\Exception.$error).{.}
f78c0 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 .}..throw.$error;.}.......privat
f78e0 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 68 65 6c 6c 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c e.function.getShell().{.if.(null
f7900 20 21 3d 3d 20 73 65 6c 66 3a 3a 24 73 68 65 6c 6c 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 .!==.self::$shell).{.return.self
f7920 3a 3a 24 73 68 65 6c 6c 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 73 68 65 6c 6c 20 3d 20 66 61 6c 73 ::$shell;.}..self::$shell.=.fals
f7940 65 3b 0a 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 27 2f 75 73 72 2f 62 69 6e 2f 65 6e e;..if.(file_exists('/usr/bin/en
f7960 76 27 29 29 20 7b 0a 0a 20 24 74 65 73 74 20 3d 20 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 25 v')).{...$test.=."/usr/bin/env.%
f7980 73 20 2d 63 20 27 65 63 68 6f 20 4f 4b 27 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 22 3b 0a 66 6f s.-c.'echo.OK'.2>./dev/null";.fo
f79a0 72 65 61 63 68 20 28 61 72 72 61 79 28 27 62 61 73 68 27 2c 20 27 7a 73 68 27 2c 20 27 6b 73 68 reach.(array('bash',.'zsh',.'ksh
f79c0 27 2c 20 27 63 73 68 27 29 20 61 73 20 24 73 68 29 20 7b 0a 69 66 20 28 27 4f 4b 27 20 3d 3d 3d ',.'csh').as.$sh).{.if.('OK'.===
f79e0 20 72 74 72 69 6d 28 73 68 65 6c 6c 5f 65 78 65 63 28 73 70 72 69 6e 74 66 28 24 74 65 73 74 2c .rtrim(shell_exec(sprintf($test,
f7a00 20 24 73 68 29 29 29 29 20 7b 0a 73 65 6c 66 3a 3a 24 73 68 65 6c 6c 20 3d 20 24 73 68 3b 0a 62 .$sh)))).{.self::$shell.=.$sh;.b
f7a20 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 68 65 6c 6c reak;.}.}.}..return.self::$shell
f7a40 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 ;.}...........private.function.r
f7a60 65 61 64 46 72 6f 6d 49 6e 70 75 74 28 24 73 74 72 65 61 6d 29 0a 7b 0a 69 66 20 28 53 54 44 49 eadFromInput($stream).{.if.(STDI
f7a80 4e 20 3d 3d 3d 20 24 73 74 72 65 61 6d 20 26 26 20 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 N.===.$stream.&&.function_exists
f7aa0 28 27 72 65 61 64 6c 69 6e 65 27 29 29 20 7b 0a 24 72 65 74 20 3d 20 72 65 61 64 6c 69 6e 65 28 ('readline')).{.$ret.=.readline(
f7ac0 27 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 74 20 3d 20 66 67 65 74 73 28 24 73 74 72 65 '');.}.else.{.$ret.=.fgets($stre
f7ae0 61 6d 2c 20 34 30 39 36 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 74 am,.4096);.}..if.(false.===.$ret
f7b00 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 ).{.throw.new.RuntimeException('
f7b20 41 62 6f 72 74 65 64 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 69 6d 28 24 72 65 74 29 3b Aborted');.}..return.trim($ret);
f7b40 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 74 .}.......private.function.hasStt
f7b60 79 41 76 61 69 6c 61 62 6c 65 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 73 65 6c 66 yAvailable().{.if.(null.!==.self
f7b80 3a 3a 24 73 74 74 79 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 74 74 79 3b 0a 7d ::$stty).{.return.self::$stty;.}
f7ba0 0a 0a 65 78 65 63 28 27 73 74 74 79 20 32 3e 26 31 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 65 78 ..exec('stty.2>&1',.$output,.$ex
f7bc0 69 74 63 6f 64 65 29 3b 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 74 74 79 20 3d 20 24 itcode);..return.self::$stty.=.$
f7be0 65 78 69 74 63 6f 64 65 20 3d 3d 3d 20 30 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a exitcode.===.0;.}.}.<?php.......
f7c00 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c ....namespace.Symfony\Component\
f7c20 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d Console\Helper;..use.Symfony\Com
f7c40 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 4c 6f 67 69 63 45 78 ponent\Console\Exception\LogicEx
f7c60 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 ception;.use.Symfony\Component\C
f7c80 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 onsole\Input\InputInterface;.use
f7ca0 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 .Symfony\Component\Console\Outpu
f7cc0 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 t\OutputInterface;.use.Symfony\C
f7ce0 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 43 68 6f 69 63 65 omponent\Console\Question\Choice
f7d00 51 75 65 73 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c Question;.use.Symfony\Component\
f7d20 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 51 75 65 Console\Question\ConfirmationQue
f7d40 73 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e stion;.use.Symfony\Component\Con
f7d60 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 51 75 65 73 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 sole\Question\Question;.use.Symf
f7d80 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 53 74 79 6c 65 5c 53 79 6d 66 ony\Component\Console\Style\Symf
f7da0 6f 6e 79 53 74 79 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 79 6d 66 6f 6e 79 51 75 65 onyStyle;.......class.SymfonyQue
f7dc0 73 74 69 6f 6e 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 51 75 65 73 74 69 6f 6e 48 65 6c 70 stionHelper.extends.QuestionHelp
f7de0 65 72 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 49 6e 70 75 er.{....public.function.ask(Inpu
f7e00 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 tInterface.$input,.OutputInterfa
f7e20 63 65 20 24 6f 75 74 70 75 74 2c 20 51 75 65 73 74 69 6f 6e 20 24 71 75 65 73 74 69 6f 6e 29 0a ce.$output,.Question.$question).
f7e40 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 56 61 6c {.$validator.=.$question->getVal
f7e60 69 64 61 74 6f 72 28 29 3b 0a 24 71 75 65 73 74 69 6f 6e 2d 3e 73 65 74 56 61 6c 69 64 61 74 6f idator();.$question->setValidato
f7e80 72 28 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 75 73 65 20 28 24 76 61 6c 69 64 61 r(function.($value).use.($valida
f7ea0 74 6f 72 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 61 6c 69 64 61 74 6f 72 29 20 tor).{.if.(null.!==.$validator).
f7ec0 7b 0a 24 76 61 6c 75 65 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 28 24 76 61 6c 75 65 29 3b 0a 7d {.$value.=.$validator($value);.}
f7ee0 0a 0a 0a 20 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 20 26 26 20 21 69 73 ....if.(!is_array($value).&&.!is
f7f00 5f 62 6f 6f 6c 28 24 76 61 6c 75 65 29 20 26 26 20 30 20 3d 3d 3d 20 73 74 72 6c 65 6e 28 24 76 _bool($value).&&.0.===.strlen($v
f7f20 61 6c 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f alue)).{.throw.new.LogicExceptio
f7f40 6e 28 27 41 20 76 61 6c 75 65 20 69 73 20 72 65 71 75 69 72 65 64 2e 27 29 3b 0a 7d 0a 0a 72 65 n('A.value.is.required.');.}..re
f7f60 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a turn.$value;.});..return.parent:
f7f80 3a 61 73 6b 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 29 :ask($input,.$output,.$question)
f7fa0 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 ;.}.....protected.function.write
f7fc0 50 72 6f 6d 70 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 Prompt(OutputInterface.$output,.
f7fe0 51 75 65 73 74 69 6f 6e 20 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 24 74 65 78 74 20 3d 20 24 71 Question.$question).{.$text.=.$q
f8000 75 65 73 74 69 6f 6e 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 29 3b 0a 24 64 65 66 61 75 6c 74 uestion->getQuestion();.$default
f8020 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 0a 73 77 69 .=.$question->getDefault();..swi
f8040 74 63 68 20 28 74 72 75 65 29 20 7b 0a 63 61 73 65 20 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 61 tch.(true).{.case.null.===.$defa
f8060 75 6c 74 3a 0a 24 74 65 78 74 20 3d 20 73 70 72 69 6e 74 66 28 27 20 3c 69 6e 66 6f 3e 25 73 3c ult:.$text.=.sprintf('.<info>%s<
f8080 2f 69 6e 66 6f 3e 3a 27 2c 20 24 74 65 78 74 29 3b 0a 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 /info>:',.$text);..break;..case.
f80a0 24 71 75 65 73 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 66 69 72 6d 61 74 69 6f $question.instanceof.Confirmatio
f80c0 6e 51 75 65 73 74 69 6f 6e 3a 0a 24 74 65 78 74 20 3d 20 73 70 72 69 6e 74 66 28 27 20 3c 69 6e nQuestion:.$text.=.sprintf('.<in
f80e0 66 6f 3e 25 73 20 28 79 65 73 2f 6e 6f 29 3c 2f 69 6e 66 6f 3e 20 5b 3c 63 6f 6d 6d 65 6e 74 3e fo>%s.(yes/no)</info>.[<comment>
f8100 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 27 2c 20 24 74 65 78 74 2c 20 24 64 65 66 61 75 6c 74 %s</comment>]:',.$text,.$default
f8120 20 3f 20 27 79 65 73 27 20 3a 20 27 6e 6f 27 29 3b 0a 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 .?.'yes'.:.'no');..break;..case.
f8140 24 71 75 65 73 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 68 6f 69 63 65 51 75 65 73 74 $question.instanceof.ChoiceQuest
f8160 69 6f 6e 3a 0a 24 63 68 6f 69 63 65 73 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 43 68 ion:.$choices.=.$question->getCh
f8180 6f 69 63 65 73 28 29 3b 0a 24 74 65 78 74 20 3d 20 73 70 72 69 6e 74 66 28 27 20 3c 69 6e 66 6f oices();.$text.=.sprintf('.<info
f81a0 3e 25 73 3c 2f 69 6e 66 6f 3e 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 >%s</info>.[<comment>%s</comment
f81c0 3e 5d 3a 27 2c 20 24 74 65 78 74 2c 20 24 63 68 6f 69 63 65 73 5b 24 64 65 66 61 75 6c 74 5d 29 >]:',.$text,.$choices[$default])
f81e0 3b 0a 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 24 74 65 78 74 20 3d 20 73 70 72 69 ;..break;..default:.$text.=.spri
f8200 6e 74 66 28 27 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 5b 3c 63 6f 6d 6d 65 6e 74 3e ntf('.<info>%s</info>.[<comment>
f8220 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 27 2c 20 24 74 65 78 74 2c 20 24 64 65 66 61 75 6c 74 %s</comment>]:',.$text,.$default
f8240 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 65 78 74 29 3b 0a 0a );.}..$output->writeln($text);..
f8260 69 66 20 28 24 71 75 65 73 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 68 6f 69 63 65 51 if.($question.instanceof.ChoiceQ
f8280 75 65 73 74 69 6f 6e 29 20 7b 0a 24 77 69 64 74 68 20 3d 20 6d 61 78 28 61 72 72 61 79 5f 6d 61 uestion).{.$width.=.max(array_ma
f82a0 70 28 27 73 74 72 6c 65 6e 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 71 75 65 73 74 69 6f 6e p('strlen',.array_keys($question
f82c0 2d 3e 67 65 74 43 68 6f 69 63 65 73 28 29 29 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 71 75 ->getChoices())));..foreach.($qu
f82e0 65 73 74 69 6f 6e 2d 3e 67 65 74 43 68 6f 69 63 65 73 28 29 20 61 73 20 24 6b 65 79 20 3d 3e 20 estion->getChoices().as.$key.=>.
f8300 24 76 61 6c 75 65 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e $value).{.$output->writeln(sprin
f8320 74 66 28 22 20 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 25 2d 24 7b 77 69 64 74 68 7d 73 3c 2f 63 6f 6d tf("..[<comment>%-${width}s</com
f8340 6d 65 6e 74 3e 5d 20 25 73 22 2c 20 24 6b 65 79 2c 20 24 76 61 6c 75 65 29 29 3b 0a 7d 0a 7d 0a ment>].%s",.$key,.$value));.}.}.
f8360 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 27 20 3e 20 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 .$output->write('.>.');.}.....pr
f8380 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 45 72 72 6f 72 28 4f 75 74 70 otected.function.writeError(Outp
f83a0 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 5c 45 78 63 65 70 74 69 6f 6e 20 utInterface.$output,.\Exception.
f83c0 24 65 72 72 6f 72 29 0a 7b 0a 69 66 20 28 24 6f 75 74 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 $error).{.if.($output.instanceof
f83e0 20 53 79 6d 66 6f 6e 79 53 74 79 6c 65 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 6e 65 77 4c 69 6e .SymfonyStyle).{.$output->newLin
f8400 65 28 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 65 72 72 6f 72 28 24 65 72 72 6f 72 2d 3e 67 65 74 4d e();.$output->error($error->getM
f8420 65 73 73 61 67 65 28 29 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 77 essage());..return;.}..parent::w
f8440 72 69 74 65 45 72 72 6f 72 28 24 6f 75 74 70 75 74 2c 20 24 65 72 72 6f 72 29 3b 0a 7d 0a 7d 0a riteError($output,.$error);.}.}.
f8460 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e <?php...........namespace.Symfon
f8480 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 y\Component\Console\Helper;..use
f84a0 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 .Symfony\Component\Console\Outpu
f84c0 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 t\OutputInterface;.use.Symfony\C
f84e0 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c omponent\Console\Exception\Inval
f8500 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c idArgumentException;..........cl
f8520 61 73 73 20 54 61 62 6c 65 0a 7b 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 68 65 61 64 65 72 ass.Table.{......private.$header
f8540 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 6f 77 73 s.=.array();.......private.$rows
f8560 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6c 75 6d .=.array();.......private.$colum
f8580 6e 57 69 64 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 nWidths.=.array();.......private
f85a0 20 24 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 .$numberOfColumns;.....private.$
f85c0 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 74 79 6c 65 3b 0a 0a 0a 0a 0a output;.....private.$style;.....
f85e0 70 72 69 76 61 74 65 20 24 63 6f 6c 75 6d 6e 53 74 79 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b private.$columnStyles.=.array();
f8600 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 73 74 79 6c 65 73 3b 0a 0a 70 75 62 6c 69 ..private.static.$styles;..publi
f8620 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 4f 75 74 70 75 74 49 6e 74 c.function.__construct(OutputInt
f8640 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 erface.$output).{.$this->output.
f8660 3d 20 24 6f 75 74 70 75 74 3b 0a 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 29 20 =.$output;..if.(!self::$styles).
f8680 7b 0a 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 20 3d 20 73 65 6c 66 3a 3a 69 6e 69 74 53 74 79 6c {.self::$styles.=.self::initStyl
f86a0 65 73 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 53 74 79 6c 65 28 27 64 65 66 61 75 6c es();.}..$this->setStyle('defaul
f86c0 74 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 t');.}........public.static.func
f86e0 74 69 6f 6e 20 73 65 74 53 74 79 6c 65 44 65 66 69 6e 69 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 54 tion.setStyleDefinition($name,.T
f8700 61 62 6c 65 53 74 79 6c 65 20 24 73 74 79 6c 65 29 0a 7b 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 ableStyle.$style).{.if.(!self::$
f8720 73 74 79 6c 65 73 29 20 7b 0a 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 20 3d 20 73 65 6c 66 3a 3a styles).{.self::$styles.=.self::
f8740 69 6e 69 74 53 74 79 6c 65 73 28 29 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 5b 24 initStyles();.}..self::$styles[$
f8760 6e 61 6d 65 5d 20 3d 20 24 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 name].=.$style;.}.........public
f8780 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 44 65 66 69 6e 69 74 .static.function.getStyleDefinit
f87a0 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 29 ion($name).{.if.(!self::$styles)
f87c0 20 7b 0a 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 20 3d 20 73 65 6c 66 3a 3a 69 6e 69 74 53 74 79 .{.self::$styles.=.self::initSty
f87e0 6c 65 73 28 29 3b 0a 7d 0a 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 5b 24 6e 61 les();.}..if.(!self::$styles[$na
f8800 6d 65 5d 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 me]).{.throw.new.InvalidArgument
f8820 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 53 74 79 6c 65 20 22 25 73 22 20 69 73 Exception(sprintf('Style."%s".is
f8840 20 6e 6f 74 20 64 65 66 69 6e 65 64 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 .not.defined.',.$name));.}..retu
f8860 72 6e 20 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a rn.self::$styles[$name];.}......
f8880 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 79 6c 65 28 24 6e 61 6d ...public.function.setStyle($nam
f88a0 65 29 0a 7b 0a 69 66 20 28 24 6e 61 6d 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 53 e).{.if.($name.instanceof.TableS
f88c0 74 79 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 20 3d 20 24 6e 61 6d 65 3b 0a 7d 20 tyle).{.$this->style.=.$name;.}.
f88e0 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 5b 24 6e 61 6d elseif.(isset(self::$styles[$nam
f8900 65 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 20 3d 20 73 65 6c 66 3a 3a 24 73 74 79 e])).{.$this->style.=.self::$sty
f8920 6c 65 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 les[$name];.}.else.{.throw.new.I
f8940 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 nvalidArgumentException(sprintf(
f8960 27 53 74 79 6c 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2e 27 2c 20 24 6e 'Style."%s".is.not.defined.',.$n
f8980 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ame));.}..return.$this;.}.......
f89a0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 28 29 0a 7b 0a 72 65 74 public.function.getStyle().{.ret
f89c0 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 urn.$this->style;.}..........pub
f89e0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6c 75 6d 6e 53 74 79 6c 65 28 24 63 6f 6c lic.function.setColumnStyle($col
f8a00 75 6d 6e 49 6e 64 65 78 2c 20 24 6e 61 6d 65 29 0a 7b 0a 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 20 umnIndex,.$name).{.$columnIndex.
f8a20 3d 20 69 6e 74 76 61 6c 28 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 29 3b 0a 0a 69 66 20 28 24 6e 61 =.intval($columnIndex);..if.($na
f8a40 6d 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 53 74 79 6c 65 29 20 7b 0a 24 74 68 69 me.instanceof.TableStyle).{.$thi
f8a60 73 2d 3e 63 6f 6c 75 6d 6e 53 74 79 6c 65 73 5b 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 5d 20 3d 20 s->columnStyles[$columnIndex].=.
f8a80 24 6e 61 6d 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 73 74 $name;.}.elseif.(isset(self::$st
f8aa0 79 6c 65 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 53 74 79 yles[$name])).{.$this->columnSty
f8ac0 6c 65 73 5b 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 5d 20 3d 20 73 65 6c 66 3a 3a 24 73 74 79 6c 65 les[$columnIndex].=.self::$style
f8ae0 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e s[$name];.}.else.{.throw.new.\In
f8b00 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 validArgumentException(sprintf('
f8b20 53 74 79 6c 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2e 27 2c 20 24 6e 61 Style."%s".is.not.defined.',.$na
f8b40 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a me));.}..return.$this;.}........
f8b60 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6c 75 6d 6e 53 74 79 6c ...public.function.getColumnStyl
f8b80 65 28 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 e($columnIndex).{.if.(isset($thi
f8ba0 73 2d 3e 63 6f 6c 75 6d 6e 53 74 79 6c 65 73 5b 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 5d 29 29 20 s->columnStyles[$columnIndex])).
f8bc0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 53 74 79 6c 65 73 5b 24 63 6f {.return.$this->columnStyles[$co
f8be0 6c 75 6d 6e 49 6e 64 65 78 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 lumnIndex];.}..return.$this->get
f8c00 53 74 79 6c 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 Style();.}..public.function.setH
f8c20 65 61 64 65 72 73 28 61 72 72 61 79 20 24 68 65 61 64 65 72 73 29 0a 7b 0a 24 68 65 61 64 65 72 eaders(array.$headers).{.$header
f8c40 73 20 3d 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 68 65 61 64 65 72 73 29 3b 0a 69 66 20 28 s.=.array_values($headers);.if.(
f8c60 21 65 6d 70 74 79 28 24 68 65 61 64 65 72 73 29 20 26 26 20 21 69 73 5f 61 72 72 61 79 28 24 68 !empty($headers).&&.!is_array($h
f8c80 65 61 64 65 72 73 5b 30 5d 29 29 20 7b 0a 24 68 65 61 64 65 72 73 20 3d 20 61 72 72 61 79 28 24 eaders[0])).{.$headers.=.array($
f8ca0 68 65 61 64 65 72 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 68 65 61 64 65 72 73 20 3d 20 24 68 headers);.}..$this->headers.=.$h
f8cc0 65 61 64 65 72 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 eaders;..return.$this;.}..public
f8ce0 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 6f 77 73 28 61 72 72 61 79 20 24 72 6f 77 73 29 0a 7b .function.setRows(array.$rows).{
f8d00 0a 24 74 68 69 73 2d 3e 72 6f 77 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 72 65 74 75 72 6e 20 .$this->rows.=.array();..return.
f8d20 24 74 68 69 73 2d 3e 61 64 64 52 6f 77 73 28 24 72 6f 77 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 $this->addRows($rows);.}..public
f8d40 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 6f 77 73 28 61 72 72 61 79 20 24 72 6f 77 73 29 0a 7b .function.addRows(array.$rows).{
f8d60 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 77 73 20 61 73 20 24 72 6f 77 29 20 7b 0a 24 74 68 69 73 .foreach.($rows.as.$row).{.$this
f8d80 2d 3e 61 64 64 52 6f 77 28 24 72 6f 77 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b ->addRow($row);.}..return.$this;
f8da0 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 6f 77 28 24 72 6f 77 29 .}..public.function.addRow($row)
f8dc0 0a 7b 0a 69 66 20 28 24 72 6f 77 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 53 65 70 61 .{.if.($row.instanceof.TableSepa
f8de0 72 61 74 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 77 73 5b 5d 20 3d 20 24 72 6f 77 3b 0a 0a rator).{.$this->rows[].=.$row;..
f8e00 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 return.$this;.}..if.(!is_array($
f8e20 72 6f 77 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e row)).{.throw.new.InvalidArgumen
f8e40 74 45 78 63 65 70 74 69 6f 6e 28 27 41 20 72 6f 77 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 72 tException('A.row.must.be.an.arr
f8e60 61 79 20 6f 72 20 61 20 54 61 62 6c 65 53 65 70 61 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 2e ay.or.a.TableSeparator.instance.
f8e80 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 6f 77 73 5b 5d 20 3d 20 61 72 72 61 79 5f 76 61 6c ');.}..$this->rows[].=.array_val
f8ea0 75 65 73 28 24 72 6f 77 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 ues($row);..return.$this;.}..pub
f8ec0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 6f 77 28 24 63 6f 6c 75 6d 6e 2c 20 61 72 72 lic.function.setRow($column,.arr
f8ee0 61 79 20 24 72 6f 77 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 6f 77 73 5b 24 63 6f 6c 75 6d 6e 5d 20 ay.$row).{.$this->rows[$column].
f8f00 3d 20 24 72 6f 77 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a =.$row;..return.$this;.}........
f8f20 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 28 29 0a 7b ......public.function.render().{
f8f40 0a 24 74 68 69 73 2d 3e 63 61 6c 63 75 6c 61 74 65 4e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 .$this->calculateNumberOfColumns
f8f60 28 29 3b 0a 24 72 6f 77 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 54 61 62 6c 65 52 6f 77 ();.$rows.=.$this->buildTableRow
f8f80 73 28 24 74 68 69 73 2d 3e 72 6f 77 73 29 3b 0a 24 68 65 61 64 65 72 73 20 3d 20 24 74 68 69 73 s($this->rows);.$headers.=.$this
f8fa0 2d 3e 62 75 69 6c 64 54 61 62 6c 65 52 6f 77 73 28 24 74 68 69 73 2d 3e 68 65 61 64 65 72 73 29 ->buildTableRows($this->headers)
f8fc0 3b 0a 0a 24 74 68 69 73 2d 3e 63 61 6c 63 75 6c 61 74 65 43 6f 6c 75 6d 6e 73 57 69 64 74 68 28 ;..$this->calculateColumnsWidth(
f8fe0 61 72 72 61 79 5f 6d 65 72 67 65 28 24 68 65 61 64 65 72 73 2c 20 24 72 6f 77 73 29 29 3b 0a 0a array_merge($headers,.$rows));..
f9000 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 52 6f 77 53 65 70 61 72 61 74 6f 72 28 29 3b 0a 69 66 20 $this->renderRowSeparator();.if.
f9020 28 21 65 6d 70 74 79 28 24 68 65 61 64 65 72 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 68 (!empty($headers)).{.foreach.($h
f9040 65 61 64 65 72 73 20 61 73 20 24 68 65 61 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 eaders.as.$header).{.$this->rend
f9060 65 72 52 6f 77 28 24 68 65 61 64 65 72 2c 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 erRow($header,.$this->style->get
f9080 43 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 28 29 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 CellHeaderFormat());.$this->rend
f90a0 65 72 52 6f 77 53 65 70 61 72 61 74 6f 72 28 29 3b 0a 7d 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 erRowSeparator();.}.}.foreach.($
f90c0 72 6f 77 73 20 61 73 20 24 72 6f 77 29 20 7b 0a 69 66 20 28 24 72 6f 77 20 69 6e 73 74 61 6e 63 rows.as.$row).{.if.($row.instanc
f90e0 65 6f 66 20 54 61 62 6c 65 53 65 70 61 72 61 74 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e eof.TableSeparator).{.$this->ren
f9100 64 65 72 52 6f 77 53 65 70 61 72 61 74 6f 72 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 derRowSeparator();.}.else.{.$thi
f9120 73 2d 3e 72 65 6e 64 65 72 52 6f 77 28 24 72 6f 77 2c 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d s->renderRow($row,.$this->style-
f9140 3e 67 65 74 43 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 28 29 29 3b 0a 7d 0a 7d 0a 69 66 20 28 21 65 >getCellRowFormat());.}.}.if.(!e
f9160 6d 70 74 79 28 24 72 6f 77 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 52 6f 77 53 mpty($rows)).{.$this->renderRowS
f9180 65 70 61 72 61 74 6f 72 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6c 65 61 6e 75 70 28 29 3b eparator();.}..$this->cleanup();
f91a0 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 .}.......private.function.render
f91c0 52 6f 77 53 65 70 61 72 61 74 6f 72 28 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 63 6f 75 6e RowSeparator().{.if.(0.===.$coun
f91e0 74 20 3d 20 24 74 68 69 73 2d 3e 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 29 20 7b 0a 72 65 t.=.$this->numberOfColumns).{.re
f9200 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 48 turn;.}..if.(!$this->style->getH
f9220 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 29 20 26 26 20 21 24 74 68 69 73 2d orizontalBorderChar().&&.!$this-
f9240 3e 73 74 79 6c 65 2d 3e 67 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 29 29 20 7b 0a 72 65 74 >style->getCrossingChar()).{.ret
f9260 75 72 6e 3b 0a 7d 0a 0a 24 6d 61 72 6b 75 70 20 3d 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e urn;.}..$markup.=.$this->style->
f9280 67 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 29 3b 0a 66 6f 72 20 28 24 63 6f 6c 75 6d 6e 20 getCrossingChar();.for.($column.
f92a0 3d 20 30 3b 20 24 63 6f 6c 75 6d 6e 20 3c 20 24 63 6f 75 6e 74 3b 20 2b 2b 24 63 6f 6c 75 6d 6e =.0;.$column.<.$count;.++$column
f92c0 29 20 7b 0a 24 6d 61 72 6b 75 70 20 2e 3d 20 73 74 72 5f 72 65 70 65 61 74 28 24 74 68 69 73 2d ).{.$markup..=.str_repeat($this-
f92e0 3e 73 74 79 6c 65 2d 3e 67 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 >style->getHorizontalBorderChar(
f9300 29 2c 20 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 57 69 64 74 68 73 5b 24 63 6f 6c 75 6d 6e 5d 29 ),.$this->columnWidths[$column])
f9320 2e 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 29 .$this->style->getCrossingChar()
f9340 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 ;.}..$this->output->writeln(spri
f9360 6e 74 66 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 42 6f 72 64 65 72 46 6f 72 6d 61 ntf($this->style->getBorderForma
f9380 74 28 29 2c 20 24 6d 61 72 6b 75 70 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 t(),.$markup));.}.....private.fu
f93a0 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 43 6f 6c 75 6d 6e 53 65 70 61 72 61 74 6f 72 28 29 0a 7b nction.renderColumnSeparator().{
f93c0 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 24 74 .$this->output->write(sprintf($t
f93e0 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 42 6f 72 64 65 72 46 6f 72 6d 61 74 28 29 2c 20 24 his->style->getBorderFormat(),.$
f9400 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 this->style->getVerticalBorderCh
f9420 61 72 28 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 ar()));.}..........private.funct
f9440 69 6f 6e 20 72 65 6e 64 65 72 52 6f 77 28 61 72 72 61 79 20 24 72 6f 77 2c 20 24 63 65 6c 6c 46 ion.renderRow(array.$row,.$cellF
f9460 6f 72 6d 61 74 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 72 6f 77 29 29 20 7b 0a 72 65 74 75 ormat).{.if.(empty($row)).{.retu
f9480 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 43 6f 6c 75 6d 6e 53 65 70 61 72 61 rn;.}..$this->renderColumnSepara
f94a0 74 6f 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 52 6f 77 43 6f 6c tor();.foreach.($this->getRowCol
f94c0 75 6d 6e 73 28 24 72 6f 77 29 20 61 73 20 24 63 6f 6c 75 6d 6e 29 20 7b 0a 24 74 68 69 73 2d 3e umns($row).as.$column).{.$this->
f94e0 72 65 6e 64 65 72 43 65 6c 6c 28 24 72 6f 77 2c 20 24 63 6f 6c 75 6d 6e 2c 20 24 63 65 6c 6c 46 renderCell($row,.$column,.$cellF
f9500 6f 72 6d 61 74 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 43 6f 6c 75 6d 6e 53 65 70 61 72 ormat);.$this->renderColumnSepar
f9520 61 74 6f 72 28 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e ator();.}.$this->output->writeln
f9540 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e ('');.}.........private.function
f9560 20 72 65 6e 64 65 72 43 65 6c 6c 28 61 72 72 61 79 20 24 72 6f 77 2c 20 24 63 6f 6c 75 6d 6e 2c .renderCell(array.$row,.$column,
f9580 20 24 63 65 6c 6c 46 6f 72 6d 61 74 29 0a 7b 0a 24 63 65 6c 6c 20 3d 20 69 73 73 65 74 28 24 72 .$cellFormat).{.$cell.=.isset($r
f95a0 6f 77 5b 24 63 6f 6c 75 6d 6e 5d 29 20 3f 20 24 72 6f 77 5b 24 63 6f 6c 75 6d 6e 5d 20 3a 20 27 ow[$column]).?.$row[$column].:.'
f95c0 27 3b 0a 24 77 69 64 74 68 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 57 69 64 74 68 73 5b ';.$width.=.$this->columnWidths[
f95e0 24 63 6f 6c 75 6d 6e 5d 3b 0a 69 66 20 28 24 63 65 6c 6c 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 $column];.if.($cell.instanceof.T
f9600 61 62 6c 65 43 65 6c 6c 20 26 26 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 ableCell.&&.$cell->getColspan().
f9620 3e 20 31 29 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 72 61 6e 67 65 28 24 63 6f 6c 75 6d 6e 20 >.1).{...foreach.(range($column.
f9640 2b 20 31 2c 20 24 63 6f 6c 75 6d 6e 20 2b 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e +.1,.$column.+.$cell->getColspan
f9660 28 29 20 2d 20 31 29 20 61 73 20 24 6e 65 78 74 43 6f 6c 75 6d 6e 29 20 7b 0a 24 77 69 64 74 68 ().-.1).as.$nextColumn).{.$width
f9680 20 2b 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6c 75 6d 6e 53 65 70 61 72 61 74 6f 72 57 69 64 .+=.$this->getColumnSeparatorWid
f96a0 74 68 28 29 20 2b 20 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 57 69 64 74 68 73 5b 24 6e 65 78 74 th().+.$this->columnWidths[$next
f96c0 43 6f 6c 75 6d 6e 5d 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 65 Column];.}.}....if.(false.!==.$e
f96e0 6e 63 6f 64 69 6e 67 20 3d 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 63 65 ncoding.=.mb_detect_encoding($ce
f9700 6c 6c 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 29 20 7b 0a 24 77 69 64 74 68 20 2b 3d 20 73 74 72 ll,.null,.true)).{.$width.+=.str
f9720 6c 65 6e 28 24 63 65 6c 6c 29 20 2d 20 6d 62 5f 73 74 72 77 69 64 74 68 28 24 63 65 6c 6c 2c 20 len($cell).-.mb_strwidth($cell,.
f9740 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 24 73 74 79 6c 65 20 3d 20 24 74 68 69 73 2d 3e 67 $encoding);.}..$style.=.$this->g
f9760 65 74 43 6f 6c 75 6d 6e 53 74 79 6c 65 28 24 63 6f 6c 75 6d 6e 29 3b 0a 0a 69 66 20 28 24 63 65 etColumnStyle($column);..if.($ce
f9780 6c 6c 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 53 65 70 61 72 61 74 6f 72 29 20 7b 0a ll.instanceof.TableSeparator).{.
f97a0 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 24 73 74 $this->output->write(sprintf($st
f97c0 79 6c 65 2d 3e 67 65 74 42 6f 72 64 65 72 46 6f 72 6d 61 74 28 29 2c 20 73 74 72 5f 72 65 70 65 yle->getBorderFormat(),.str_repe
f97e0 61 74 28 24 73 74 79 6c 65 2d 3e 67 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 at($style->getHorizontalBorderCh
f9800 61 72 28 29 2c 20 24 77 69 64 74 68 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 77 69 64 74 68 ar(),.$width)));.}.else.{.$width
f9820 20 2b 3d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 28 24 63 65 6c 6c 29 20 2d 20 48 65 6c 70 .+=.Helper::strlen($cell).-.Help
f9840 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 6f 75 74 44 65 63 6f 72 61 74 69 6f 6e 28 24 74 68 69 er::strlenWithoutDecoration($thi
f9860 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 63 65 6c 6c s->output->getFormatter(),.$cell
f9880 29 3b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 73 70 72 69 6e 74 66 28 24 73 74 79 6c 65 2d 3e 67 65 );.$content.=.sprintf($style->ge
f98a0 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 29 2c 20 24 63 65 6c 6c 29 3b tCellRowContentFormat(),.$cell);
f98c0 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 24 63 .$this->output->write(sprintf($c
f98e0 65 6c 6c 46 6f 72 6d 61 74 2c 20 73 74 72 5f 70 61 64 28 24 63 6f 6e 74 65 6e 74 2c 20 24 77 69 ellFormat,.str_pad($content,.$wi
f9900 64 74 68 2c 20 24 73 74 79 6c 65 2d 3e 67 65 74 50 61 64 64 69 6e 67 43 68 61 72 28 29 2c 20 24 dth,.$style->getPaddingChar(),.$
f9920 73 74 79 6c 65 2d 3e 67 65 74 50 61 64 54 79 70 65 28 29 29 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a style->getPadType())));.}.}.....
f9940 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 63 75 6c 61 74 65 4e 75 6d 62 65 72 private.function.calculateNumber
f9960 4f 66 43 6f 6c 75 6d 6e 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 OfColumns().{.if.(null.!==.$this
f9980 2d 3e 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a ->numberOfColumns).{.return;.}..
f99a0 24 63 6f 6c 75 6d 6e 73 20 3d 20 61 72 72 61 79 28 30 29 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 $columns.=.array(0);.foreach.(ar
f99c0 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 68 65 61 64 65 72 73 2c 20 24 74 68 69 73 2d ray_merge($this->headers,.$this-
f99e0 3e 72 6f 77 73 29 20 61 73 20 24 72 6f 77 29 20 7b 0a 69 66 20 28 24 72 6f 77 20 69 6e 73 74 61 >rows).as.$row).{.if.($row.insta
f9a00 6e 63 65 6f 66 20 54 61 62 6c 65 53 65 70 61 72 61 74 6f 72 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 nceof.TableSeparator).{.continue
f9a20 3b 0a 7d 0a 0a 24 63 6f 6c 75 6d 6e 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 75 6d 62 ;.}..$columns[].=.$this->getNumb
f9a40 65 72 4f 66 43 6f 6c 75 6d 6e 73 28 24 72 6f 77 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6e 75 6d erOfColumns($row);.}..$this->num
f9a60 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 20 3d 20 6d 61 78 28 24 63 6f 6c 75 6d 6e 73 29 3b 0a 7d 0a berOfColumns.=.max($columns);.}.
f9a80 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 54 61 62 6c 65 52 6f 77 73 .private.function.buildTableRows
f9aa0 28 24 72 6f 77 73 29 0a 7b 0a 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 20 3d 20 61 72 72 61 79 28 ($rows).{.$unmergedRows.=.array(
f9ac0 29 3b 0a 66 6f 72 20 28 24 72 6f 77 4b 65 79 20 3d 20 30 3b 20 24 72 6f 77 4b 65 79 20 3c 20 63 );.for.($rowKey.=.0;.$rowKey.<.c
f9ae0 6f 75 6e 74 28 24 72 6f 77 73 29 3b 20 2b 2b 24 72 6f 77 4b 65 79 29 20 7b 0a 24 72 6f 77 73 20 ount($rows);.++$rowKey).{.$rows.
f9b00 3d 20 24 74 68 69 73 2d 3e 66 69 6c 6c 4e 65 78 74 52 6f 77 73 28 24 72 6f 77 73 2c 20 24 72 6f =.$this->fillNextRows($rows,.$ro
f9b20 77 4b 65 79 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 72 6f 77 73 5b 24 72 6f 77 4b 65 79 wKey);....foreach.($rows[$rowKey
f9b40 5d 20 61 73 20 24 63 6f 6c 75 6d 6e 20 3d 3e 20 24 63 65 6c 6c 29 20 7b 0a 69 66 20 28 21 73 74 ].as.$column.=>.$cell).{.if.(!st
f9b60 72 73 74 72 28 24 63 65 6c 6c 2c 20 22 5c 6e 22 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d rstr($cell,."\n")).{.continue;.}
f9b80 0a 24 6c 69 6e 65 73 20 3d 20 65 78 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 63 65 6c 6c 29 3b 0a .$lines.=.explode("\n",.$cell);.
f9ba0 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 24 6c 69 6e 65 4b 65 79 20 3d 3e 20 24 foreach.($lines.as.$lineKey.=>.$
f9bc0 6c 69 6e 65 29 20 7b 0a 69 66 20 28 24 63 65 6c 6c 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 line).{.if.($cell.instanceof.Tab
f9be0 6c 65 43 65 6c 6c 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 6e 65 77 20 54 61 62 6c 65 43 65 6c 6c 28 leCell).{.$line.=.new.TableCell(
f9c00 24 6c 69 6e 65 2c 20 61 72 72 61 79 28 27 63 6f 6c 73 70 61 6e 27 20 3d 3e 20 24 63 65 6c 6c 2d $line,.array('colspan'.=>.$cell-
f9c20 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 29 29 3b 0a 7d 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6c 69 >getColspan()));.}.if.(0.===.$li
f9c40 6e 65 4b 65 79 29 20 7b 0a 24 72 6f 77 73 5b 24 72 6f 77 4b 65 79 5d 5b 24 63 6f 6c 75 6d 6e 5d neKey).{.$rows[$rowKey][$column]
f9c60 20 3d 20 24 6c 69 6e 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 .=.$line;.}.else.{.$unmergedRows
f9c80 5b 24 72 6f 77 4b 65 79 5d 5b 24 6c 69 6e 65 4b 65 79 5d 5b 24 63 6f 6c 75 6d 6e 5d 20 3d 20 24 [$rowKey][$lineKey][$column].=.$
f9ca0 6c 69 6e 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 24 74 61 62 6c 65 52 6f 77 73 20 3d 20 61 72 72 61 line;.}.}.}.}..$tableRows.=.arra
f9cc0 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 77 73 20 61 73 20 24 72 6f 77 4b 65 79 20 3d y();.foreach.($rows.as.$rowKey.=
f9ce0 3e 20 24 72 6f 77 29 20 7b 0a 24 74 61 62 6c 65 52 6f 77 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e >.$row).{.$tableRows[].=.$this->
f9d00 66 69 6c 6c 43 65 6c 6c 73 28 24 72 6f 77 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 75 6e 6d 65 fillCells($row);.if.(isset($unme
f9d20 72 67 65 64 52 6f 77 73 5b 24 72 6f 77 4b 65 79 5d 29 29 20 7b 0a 24 74 61 62 6c 65 52 6f 77 73 rgedRows[$rowKey])).{.$tableRows
f9d40 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 61 62 6c 65 52 6f 77 73 2c 20 24 75 6e 6d 65 .=.array_merge($tableRows,.$unme
f9d60 72 67 65 64 52 6f 77 73 5b 24 72 6f 77 4b 65 79 5d 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 rgedRows[$rowKey]);.}.}..return.
f9d80 24 74 61 62 6c 65 52 6f 77 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 $tableRows;.}..........private.f
f9da0 75 6e 63 74 69 6f 6e 20 66 69 6c 6c 4e 65 78 74 52 6f 77 73 28 24 72 6f 77 73 2c 20 24 6c 69 6e unction.fillNextRows($rows,.$lin
f9dc0 65 29 0a 7b 0a 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f e).{.$unmergedRows.=.array();.fo
f9de0 72 65 61 63 68 20 28 24 72 6f 77 73 5b 24 6c 69 6e 65 5d 20 61 73 20 24 63 6f 6c 75 6d 6e 20 3d reach.($rows[$line].as.$column.=
f9e00 3e 20 24 63 65 6c 6c 29 20 7b 0a 69 66 20 28 24 63 65 6c 6c 20 69 6e 73 74 61 6e 63 65 6f 66 20 >.$cell).{.if.($cell.instanceof.
f9e20 54 61 62 6c 65 43 65 6c 6c 20 26 26 20 24 63 65 6c 6c 2d 3e 67 65 74 52 6f 77 73 70 61 6e 28 29 TableCell.&&.$cell->getRowspan()
f9e40 20 3e 20 31 29 20 7b 0a 24 6e 62 4c 69 6e 65 73 20 3d 20 24 63 65 6c 6c 2d 3e 67 65 74 52 6f 77 .>.1).{.$nbLines.=.$cell->getRow
f9e60 73 70 61 6e 28 29 20 2d 20 31 3b 0a 24 6c 69 6e 65 73 20 3d 20 61 72 72 61 79 28 24 63 65 6c 6c span().-.1;.$lines.=.array($cell
f9e80 29 3b 0a 69 66 20 28 73 74 72 73 74 72 28 24 63 65 6c 6c 2c 20 22 5c 6e 22 29 29 20 7b 0a 24 6c );.if.(strstr($cell,."\n")).{.$l
f9ea0 69 6e 65 73 20 3d 20 65 78 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 63 65 6c 6c 29 3b 0a 24 6e 62 ines.=.explode("\n",.$cell);.$nb
f9ec0 4c 69 6e 65 73 20 3d 20 63 6f 75 6e 74 28 24 6c 69 6e 65 73 29 20 3e 20 24 6e 62 4c 69 6e 65 73 Lines.=.count($lines).>.$nbLines
f9ee0 20 3f 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 63 65 6c 6c 2c 20 22 5c 6e 22 29 20 3a 20 24 .?.substr_count($cell,."\n").:.$
f9f00 6e 62 4c 69 6e 65 73 3b 0a 0a 24 72 6f 77 73 5b 24 6c 69 6e 65 5d 5b 24 63 6f 6c 75 6d 6e 5d 20 nbLines;..$rows[$line][$column].
f9f20 3d 20 6e 65 77 20 54 61 62 6c 65 43 65 6c 6c 28 24 6c 69 6e 65 73 5b 30 5d 2c 20 61 72 72 61 79 =.new.TableCell($lines[0],.array
f9f40 28 27 63 6f 6c 73 70 61 6e 27 20 3d 3e 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 ('colspan'.=>.$cell->getColspan(
f9f60 29 29 29 3b 0a 75 6e 73 65 74 28 24 6c 69 6e 65 73 5b 30 5d 29 3b 0a 7d 0a 0a 0a 20 24 75 6e 6d )));.unset($lines[0]);.}....$unm
f9f80 65 72 67 65 64 52 6f 77 73 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 5f 72 65 63 75 72 73 ergedRows.=.array_replace_recurs
f9fa0 69 76 65 28 61 72 72 61 79 5f 66 69 6c 6c 28 24 6c 69 6e 65 20 2b 20 31 2c 20 24 6e 62 4c 69 6e ive(array_fill($line.+.1,.$nbLin
f9fc0 65 73 2c 20 27 27 29 2c 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 29 3b 0a 66 6f 72 65 61 63 68 es,.''),.$unmergedRows);.foreach
f9fe0 20 28 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 20 61 73 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b .($unmergedRows.as.$unmergedRowK
fa000 65 79 20 3d 3e 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 69 ey.=>.$unmergedRow).{.$value.=.i
fa020 73 73 65 74 28 24 6c 69 6e 65 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 20 2d 20 24 6c sset($lines[$unmergedRowKey.-.$l
fa040 69 6e 65 5d 29 20 3f 20 24 6c 69 6e 65 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 20 2d ine]).?.$lines[$unmergedRowKey.-
fa060 20 24 6c 69 6e 65 5d 20 3a 20 27 27 3b 0a 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 5b 24 75 6e 6d .$line].:.'';.$unmergedRows[$unm
fa080 65 72 67 65 64 52 6f 77 4b 65 79 5d 5b 24 63 6f 6c 75 6d 6e 5d 20 3d 20 6e 65 77 20 54 61 62 6c ergedRowKey][$column].=.new.Tabl
fa0a0 65 43 65 6c 6c 28 24 76 61 6c 75 65 2c 20 61 72 72 61 79 28 27 63 6f 6c 73 70 61 6e 27 20 3d 3e eCell($value,.array('colspan'.=>
fa0c0 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 66 .$cell->getColspan()));.}.}.}..f
fa0e0 6f 72 65 61 63 68 20 28 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 20 61 73 20 24 75 6e 6d 65 72 67 oreach.($unmergedRows.as.$unmerg
fa100 65 64 52 6f 77 4b 65 79 20 3d 3e 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 29 20 7b 0a 0a 20 69 66 edRowKey.=>.$unmergedRow).{...if
fa120 20 28 69 73 73 65 74 28 24 72 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 5d 29 20 .(isset($rows[$unmergedRowKey]).
fa140 26 26 20 69 73 5f 61 72 72 61 79 28 24 72 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 &&.is_array($rows[$unmergedRowKe
fa160 79 5d 29 20 26 26 20 28 24 74 68 69 73 2d 3e 67 65 74 4e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e y]).&&.($this->getNumberOfColumn
fa180 73 28 24 72 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 5d 29 20 2b 20 24 74 68 69 s($rows[$unmergedRowKey]).+.$thi
fa1a0 73 2d 3e 67 65 74 4e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 28 24 75 6e 6d 65 72 67 65 64 52 s->getNumberOfColumns($unmergedR
fa1c0 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 5d 29 20 3c 3d 20 24 74 68 69 73 2d 3e ows[$unmergedRowKey]).<=.$this->
fa1e0 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 75 6e numberOfColumns)).{.foreach.($un
fa200 6d 65 72 67 65 64 52 6f 77 20 61 73 20 24 63 65 6c 6c 4b 65 79 20 3d 3e 20 24 63 65 6c 6c 29 20 mergedRow.as.$cellKey.=>.$cell).
fa220 7b 0a 0a 20 61 72 72 61 79 5f 73 70 6c 69 63 65 28 24 72 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 {...array_splice($rows[$unmerged
fa240 52 6f 77 4b 65 79 5d 2c 20 24 63 65 6c 6c 4b 65 79 2c 20 30 2c 20 61 72 72 61 79 28 24 63 65 6c RowKey],.$cellKey,.0,.array($cel
fa260 6c 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 6f 77 20 3d 20 24 74 68 69 73 2d 3e 63 6f l));.}.}.else.{.$row.=.$this->co
fa280 70 79 52 6f 77 28 24 72 6f 77 73 2c 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 20 2d 20 31 pyRow($rows,.$unmergedRowKey.-.1
fa2a0 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 75 6e 6d 65 72 67 65 64 52 6f 77 20 61 73 20 24 63 6f 6c );.foreach.($unmergedRow.as.$col
fa2c0 75 6d 6e 20 3d 3e 20 24 63 65 6c 6c 29 20 7b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 65 6c 6c umn.=>.$cell).{.if.(!empty($cell
fa2e0 29 29 20 7b 0a 24 72 6f 77 5b 24 63 6f 6c 75 6d 6e 5d 20 3d 20 24 75 6e 6d 65 72 67 65 64 52 6f )).{.$row[$column].=.$unmergedRo
fa300 77 5b 24 63 6f 6c 75 6d 6e 5d 3b 0a 7d 0a 7d 0a 61 72 72 61 79 5f 73 70 6c 69 63 65 28 24 72 6f w[$column];.}.}.array_splice($ro
fa320 77 73 2c 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 2c 20 30 2c 20 61 72 72 61 79 28 24 72 ws,.$unmergedRowKey,.0,.array($r
fa340 6f 77 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 6f 77 73 3b 0a 7d 0a 0a 0a 0a 0a 0a ow));.}.}..return.$rows;.}......
fa360 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 6c 43 65 6c 6c 73 28 24 72 ...private.function.fillCells($r
fa380 6f 77 29 0a 7b 0a 24 6e 65 77 52 6f 77 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 ow).{.$newRow.=.array();.foreach
fa3a0 20 28 24 72 6f 77 20 61 73 20 24 63 6f 6c 75 6d 6e 20 3d 3e 20 24 63 65 6c 6c 29 20 7b 0a 24 6e .($row.as.$column.=>.$cell).{.$n
fa3c0 65 77 52 6f 77 5b 5d 20 3d 20 24 63 65 6c 6c 3b 0a 69 66 20 28 24 63 65 6c 6c 20 69 6e 73 74 61 ewRow[].=.$cell;.if.($cell.insta
fa3e0 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c 6c 20 26 26 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c nceof.TableCell.&&.$cell->getCol
fa400 73 70 61 6e 28 29 20 3e 20 31 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 72 61 6e 67 65 28 24 63 6f span().>.1).{.foreach.(range($co
fa420 6c 75 6d 6e 20 2b 20 31 2c 20 24 63 6f 6c 75 6d 6e 20 2b 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f lumn.+.1,.$column.+.$cell->getCo
fa440 6c 73 70 61 6e 28 29 20 2d 20 31 29 20 61 73 20 24 70 6f 73 69 74 69 6f 6e 29 20 7b 0a 0a 20 24 lspan().-.1).as.$position).{...$
fa460 6e 65 77 52 6f 77 5b 5d 20 3d 20 27 27 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6e 65 newRow[].=.'';.}.}.}..return.$ne
fa480 77 52 6f 77 20 3f 3a 20 24 72 6f 77 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 wRow.?:.$row;.}........private.f
fa4a0 75 6e 63 74 69 6f 6e 20 63 6f 70 79 52 6f 77 28 24 72 6f 77 73 2c 20 24 6c 69 6e 65 29 0a 7b 0a unction.copyRow($rows,.$line).{.
fa4c0 24 72 6f 77 20 3d 20 24 72 6f 77 73 5b 24 6c 69 6e 65 5d 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 $row.=.$rows[$line];.foreach.($r
fa4e0 6f 77 20 61 73 20 24 63 65 6c 6c 4b 65 79 20 3d 3e 20 24 63 65 6c 6c 56 61 6c 75 65 29 20 7b 0a ow.as.$cellKey.=>.$cellValue).{.
fa500 24 72 6f 77 5b 24 63 65 6c 6c 4b 65 79 5d 20 3d 20 27 27 3b 0a 69 66 20 28 24 63 65 6c 6c 56 61 $row[$cellKey].=.'';.if.($cellVa
fa520 6c 75 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c 6c 29 20 7b 0a 24 72 6f 77 lue.instanceof.TableCell).{.$row
fa540 5b 24 63 65 6c 6c 4b 65 79 5d 20 3d 20 6e 65 77 20 54 61 62 6c 65 43 65 6c 6c 28 27 27 2c 20 61 [$cellKey].=.new.TableCell('',.a
fa560 72 72 61 79 28 27 63 6f 6c 73 70 61 6e 27 20 3d 3e 20 24 63 65 6c 6c 56 61 6c 75 65 2d 3e 67 65 rray('colspan'.=>.$cellValue->ge
fa580 74 43 6f 6c 73 70 61 6e 28 29 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 6f 77 3b 0a tColspan()));.}.}..return.$row;.
fa5a0 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 75 }.........private.function.getNu
fa5c0 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 28 61 72 72 61 79 20 24 72 6f 77 29 0a 7b 0a 24 63 6f 6c mberOfColumns(array.$row).{.$col
fa5e0 75 6d 6e 73 20 3d 20 63 6f 75 6e 74 28 24 72 6f 77 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f umns.=.count($row);.foreach.($ro
fa600 77 20 61 73 20 24 63 6f 6c 75 6d 6e 29 20 7b 0a 24 63 6f 6c 75 6d 6e 73 20 2b 3d 20 24 63 6f 6c w.as.$column).{.$columns.+=.$col
fa620 75 6d 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c 6c 20 3f 20 28 24 63 6f 6c umn.instanceof.TableCell.?.($col
fa640 75 6d 6e 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 2d 20 31 29 20 3a 20 30 3b 0a 7d 0a 0a 72 umn->getColspan().-.1).:.0;.}..r
fa660 65 74 75 72 6e 20 24 63 6f 6c 75 6d 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 eturn.$columns;.}.........privat
fa680 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 77 43 6f 6c 75 6d 6e 73 28 24 72 6f 77 29 0a 7b e.function.getRowColumns($row).{
fa6a0 0a 24 63 6f 6c 75 6d 6e 73 20 3d 20 72 61 6e 67 65 28 30 2c 20 24 74 68 69 73 2d 3e 6e 75 6d 62 .$columns.=.range(0,.$this->numb
fa6c0 65 72 4f 66 43 6f 6c 75 6d 6e 73 20 2d 20 31 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 77 20 erOfColumns.-.1);.foreach.($row.
fa6e0 61 73 20 24 63 65 6c 6c 4b 65 79 20 3d 3e 20 24 63 65 6c 6c 29 20 7b 0a 69 66 20 28 24 63 65 6c as.$cellKey.=>.$cell).{.if.($cel
fa700 6c 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c 6c 20 26 26 20 24 63 65 6c 6c 2d l.instanceof.TableCell.&&.$cell-
fa720 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 3e 20 31 29 20 7b 0a 0a 20 24 63 6f 6c 75 6d 6e 73 20 >getColspan().>.1).{...$columns.
fa740 3d 20 61 72 72 61 79 5f 64 69 66 66 28 24 63 6f 6c 75 6d 6e 73 2c 20 72 61 6e 67 65 28 24 63 65 =.array_diff($columns,.range($ce
fa760 6c 6c 4b 65 79 20 2b 20 31 2c 20 24 63 65 6c 6c 4b 65 79 20 2b 20 24 63 65 6c 6c 2d 3e 67 65 74 llKey.+.1,.$cellKey.+.$cell->get
fa780 43 6f 6c 73 70 61 6e 28 29 20 2d 20 31 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f Colspan().-.1));.}.}..return.$co
fa7a0 6c 75 6d 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 lumns;.}.......private.function.
fa7c0 63 61 6c 63 75 6c 61 74 65 43 6f 6c 75 6d 6e 73 57 69 64 74 68 28 24 72 6f 77 73 29 0a 7b 0a 66 calculateColumnsWidth($rows).{.f
fa7e0 6f 72 20 28 24 63 6f 6c 75 6d 6e 20 3d 20 30 3b 20 24 63 6f 6c 75 6d 6e 20 3c 20 24 74 68 69 73 or.($column.=.0;.$column.<.$this
fa800 2d 3e 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 3b 20 2b 2b 24 63 6f 6c 75 6d 6e 29 20 7b 0a ->numberOfColumns;.++$column).{.
fa820 24 6c 65 6e 67 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f $lengths.=.array();.foreach.($ro
fa840 77 73 20 61 73 20 24 72 6f 77 29 20 7b 0a 69 66 20 28 24 72 6f 77 20 69 6e 73 74 61 6e 63 65 6f ws.as.$row).{.if.($row.instanceo
fa860 66 20 54 61 62 6c 65 53 65 70 61 72 61 74 6f 72 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a f.TableSeparator).{.continue;.}.
fa880 0a 24 6c 65 6e 67 74 68 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 65 6c 6c 57 69 64 74 .$lengths[].=.$this->getCellWidt
fa8a0 68 28 24 72 6f 77 2c 20 24 63 6f 6c 75 6d 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6c 75 h($row,.$column);.}..$this->colu
fa8c0 6d 6e 57 69 64 74 68 73 5b 24 63 6f 6c 75 6d 6e 5d 20 3d 20 6d 61 78 28 24 6c 65 6e 67 74 68 73 mnWidths[$column].=.max($lengths
fa8e0 29 20 2b 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 43 65 6c 6c ).+.strlen($this->style->getCell
fa900 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 29 29 20 2d 20 32 3b 0a 7d 0a 7d 0a 0a 0a 0a RowContentFormat()).-.2;.}.}....
fa920 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6c 75 6d 6e 53 65 70 ...private.function.getColumnSep
fa940 61 72 61 74 6f 72 57 69 64 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 74 72 6c 65 6e 28 73 70 aratorWidth().{.return.strlen(sp
fa960 72 69 6e 74 66 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 42 6f 72 64 65 72 46 6f 72 rintf($this->style->getBorderFor
fa980 6d 61 74 28 29 2c 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 56 65 72 74 69 63 61 6c mat(),.$this->style->getVertical
fa9a0 42 6f 72 64 65 72 43 68 61 72 28 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 BorderChar()));.}..........priva
fa9c0 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 65 6c 6c 57 69 64 74 68 28 61 72 72 61 79 20 24 te.function.getCellWidth(array.$
fa9e0 72 6f 77 2c 20 24 63 6f 6c 75 6d 6e 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 72 6f 77 5b 24 row,.$column).{.if.(isset($row[$
faa00 63 6f 6c 75 6d 6e 5d 29 29 20 7b 0a 24 63 65 6c 6c 20 3d 20 24 72 6f 77 5b 24 63 6f 6c 75 6d 6e column])).{.$cell.=.$row[$column
faa20 5d 3b 0a 24 63 65 6c 6c 57 69 64 74 68 20 3d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 ];.$cellWidth.=.Helper::strlenWi
faa40 74 68 6f 75 74 44 65 63 6f 72 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 thoutDecoration($this->output->g
faa60 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 63 65 6c 6c 29 3b 0a 69 66 20 28 24 63 65 6c 6c etFormatter(),.$cell);.if.($cell
faa80 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c 6c 20 26 26 20 24 63 65 6c 6c 2d 3e .instanceof.TableCell.&&.$cell->
faaa0 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 3e 20 31 29 20 7b 0a 0a 20 24 63 65 6c 6c 57 69 64 74 68 getColspan().>.1).{...$cellWidth
faac0 20 3d 20 24 63 65 6c 6c 57 69 64 74 68 20 2f 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 .=.$cellWidth./.$cell->getColspa
faae0 6e 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 65 6c 6c 57 69 64 74 68 3b 0a 7d 0a 0a 72 65 n();.}..return.$cellWidth;.}..re
fab00 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 turn.0;.}.....private.function.c
fab20 6c 65 61 6e 75 70 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 57 69 64 74 68 73 20 3d leanup().{.$this->columnWidths.=
fab40 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 .array();.$this->numberOfColumns
fab60 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 .=.null;.}..private.static.funct
fab80 69 6f 6e 20 69 6e 69 74 53 74 79 6c 65 73 28 29 0a 7b 0a 24 62 6f 72 64 65 72 6c 65 73 73 20 3d ion.initStyles().{.$borderless.=
faba0 20 6e 65 77 20 54 61 62 6c 65 53 74 79 6c 65 28 29 3b 0a 24 62 6f 72 64 65 72 6c 65 73 73 0a 2d .new.TableStyle();.$borderless.-
fabc0 3e 73 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 27 3d 27 29 0a 2d 3e >setHorizontalBorderChar('=').->
fabe0 73 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 28 27 20 27 29 0a 2d 3e 73 65 74 setVerticalBorderChar('.').->set
fac00 43 72 6f 73 73 69 6e 67 43 68 61 72 28 27 20 27 29 0a 3b 0a 0a 24 63 6f 6d 70 61 63 74 20 3d 20 CrossingChar('.').;..$compact.=.
fac20 6e 65 77 20 54 61 62 6c 65 53 74 79 6c 65 28 29 3b 0a 24 63 6f 6d 70 61 63 74 0a 2d 3e 73 65 74 new.TableStyle();.$compact.->set
fac40 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 27 27 29 0a 2d 3e 73 65 74 56 65 HorizontalBorderChar('').->setVe
fac60 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 28 27 20 27 29 0a 2d 3e 73 65 74 43 72 6f 73 73 rticalBorderChar('.').->setCross
fac80 69 6e 67 43 68 61 72 28 27 27 29 0a 2d 3e 73 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 ingChar('').->setCellRowContentF
faca0 6f 72 6d 61 74 28 27 25 73 27 29 0a 3b 0a 0a 24 73 74 79 6c 65 47 75 69 64 65 20 3d 20 6e 65 77 ormat('%s').;..$styleGuide.=.new
facc0 20 54 61 62 6c 65 53 74 79 6c 65 28 29 3b 0a 24 73 74 79 6c 65 47 75 69 64 65 0a 2d 3e 73 65 74 .TableStyle();.$styleGuide.->set
face0 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 27 2d 27 29 0a 2d 3e 73 65 74 56 HorizontalBorderChar('-').->setV
fad00 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 28 27 20 27 29 0a 2d 3e 73 65 74 43 72 6f 73 erticalBorderChar('.').->setCros
fad20 73 69 6e 67 43 68 61 72 28 27 20 27 29 0a 2d 3e 73 65 74 43 65 6c 6c 48 65 61 64 65 72 46 6f 72 singChar('.').->setCellHeaderFor
fad40 6d 61 74 28 27 25 73 27 29 0a 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 64 65 66 61 mat('%s').;..return.array(.'defa
fad60 75 6c 74 27 20 3d 3e 20 6e 65 77 20 54 61 62 6c 65 53 74 79 6c 65 28 29 2c 0a 27 62 6f 72 64 65 ult'.=>.new.TableStyle(),.'borde
fad80 72 6c 65 73 73 27 20 3d 3e 20 24 62 6f 72 64 65 72 6c 65 73 73 2c 0a 27 63 6f 6d 70 61 63 74 27 rless'.=>.$borderless,.'compact'
fada0 20 3d 3e 20 24 63 6f 6d 70 61 63 74 2c 0a 27 73 79 6d 66 6f 6e 79 2d 73 74 79 6c 65 2d 67 75 69 .=>.$compact,.'symfony-style-gui
fadc0 64 65 27 20 3d 3e 20 24 73 74 79 6c 65 47 75 69 64 65 2c 0a 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 de'.=>.$styleGuide,.);.}.}.<?php
fade0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d ...........namespace.Symfony\Com
fae00 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 ponent\Console\Helper;..use.Symf
fae20 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c ony\Component\Console\Exception\
fae40 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c InvalidArgumentException;.....cl
fae60 61 73 73 20 54 61 62 6c 65 43 65 6c 6c 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 61 6c 75 ass.TableCell.{....private.$valu
fae80 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 e;.....private.$options.=.array(
faea0 0a 27 72 6f 77 73 70 61 6e 27 20 3d 3e 20 31 2c 0a 27 63 6f 6c 73 70 61 6e 27 20 3d 3e 20 31 2c .'rowspan'.=>.1,.'colspan'.=>.1,
faec0 0a 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 .);......public.function.__const
faee0 72 75 63 74 28 24 76 61 6c 75 65 20 3d 20 27 27 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 ruct($value.=.'',.array.$options
faf00 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 75 65 20 3d 20 24 76 61 .=.array()).{.$this->value.=.$va
faf20 6c 75 65 3b 0a 0a 0a 20 69 66 20 28 24 64 69 66 66 20 3d 20 61 72 72 61 79 5f 64 69 66 66 28 61 lue;....if.($diff.=.array_diff(a
faf40 72 72 61 79 5f 6b 65 79 73 28 24 6f 70 74 69 6f 6e 73 29 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 rray_keys($options),.array_keys(
faf60 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e $this->options))).{.throw.new.In
faf80 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 validArgumentException(sprintf('
fafa0 54 68 65 20 54 61 62 6c 65 43 65 6c 6c 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 74 The.TableCell.does.not.support.t
fafc0 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 70 74 69 6f 6e 73 3a 20 5c 27 25 73 5c 27 2e 27 2c 20 he.following.options:.\'%s\'.',.
fafe0 69 6d 70 6c 6f 64 65 28 27 5c 27 2c 20 5c 27 27 2c 20 24 64 69 66 66 29 29 29 3b 0a 7d 0a 0a 24 implode('\',.\'',.$diff)));.}..$
fb000 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 this->options.=.array_merge($thi
fb020 73 2d 3e 6f 70 74 69 6f 6e 73 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 s->options,.$options);.}.......p
fb040 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 ublic.function.__toString().{.re
fb060 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 turn.$this->value;.}.......publi
fb080 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6c 73 70 61 6e 28 29 0a 7b 0a 72 65 74 75 72 6e c.function.getColspan().{.return
fb0a0 20 28 69 6e 74 29 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 27 63 6f 6c 73 70 61 6e 27 5d .(int).$this->options['colspan']
fb0c0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 77 ;.}.......public.function.getRow
fb0e0 73 70 61 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 69 6e 74 29 20 24 74 68 69 73 2d 3e 6f 70 74 span().{.return.(int).$this->opt
fb100 69 6f 6e 73 5b 27 72 6f 77 73 70 61 6e 27 5d 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a ions['rowspan'];.}.}.<?php......
fb120 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 .....namespace.Symfony\Component
fb140 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f \Console\Helper;..use.Symfony\Co
fb160 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 mponent\Console\Output\OutputInt
fb180 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f erface;.use.Symfony\Component\Co
fb1a0 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4e 75 6c 6c 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d nsole\Output\NullOutput;.use.Sym
fb1c0 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e fony\Component\Console\Exception
fb1e0 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a \InvalidArgumentException;......
fb200 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 62 6c 65 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 .....class.TableHelper.extends.H
fb220 65 6c 70 65 72 0a 7b 0a 63 6f 6e 73 74 20 4c 41 59 4f 55 54 5f 44 45 46 41 55 4c 54 20 3d 20 30 elper.{.const.LAYOUT_DEFAULT.=.0
fb240 3b 0a 63 6f 6e 73 74 20 4c 41 59 4f 55 54 5f 42 4f 52 44 45 52 4c 45 53 53 20 3d 20 31 3b 0a 63 ;.const.LAYOUT_BORDERLESS.=.1;.c
fb260 6f 6e 73 74 20 4c 41 59 4f 55 54 5f 43 4f 4d 50 41 43 54 20 3d 20 32 3b 0a 0a 0a 0a 0a 70 72 69 onst.LAYOUT_COMPACT.=.2;.....pri
fb280 76 61 74 65 20 24 74 61 62 6c 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f vate.$table;..public.function.__
fb2a0 63 6f 6e 73 74 72 75 63 74 28 24 74 72 69 67 67 65 72 44 65 70 72 65 63 61 74 69 6f 6e 45 72 72 construct($triggerDeprecationErr
fb2c0 6f 72 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 24 74 72 69 67 67 65 72 44 65 70 72 65 63 61 or.=.true).{.if.($triggerDepreca
fb2e0 74 69 6f 6e 45 72 72 6f 72 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 tionError).{.@trigger_error('The
fb300 20 27 2e 5f 5f 43 4c 41 53 53 5f 5f 2e 27 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 .'.__CLASS__.'.class.is.deprecat
fb320 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 35 20 61 6e 64 20 77 69 6c 6c 20 62 65 ed.since.version.2.5.and.will.be
fb340 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 74 68 65 20 53 79 6d 66 6f 6e 79 .removed.in.3.0..Use.the.Symfony
fb360 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 54 61 62 6c 65 20 \Component\Console\Helper\Table.
fb380 63 6c 61 73 73 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 class.instead.',.E_USER_DEPRECAT
fb3a0 45 44 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 20 3d 20 6e 65 77 20 54 61 62 6c 65 ED);.}..$this->table.=.new.Table
fb3c0 28 6e 65 77 20 4e 75 6c 6c 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a (new.NullOutput());.}...........
fb3e0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 61 79 6f 75 74 28 24 6c 61 79 6f 75 public.function.setLayout($layou
fb400 74 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6c 61 79 6f 75 74 29 20 7b 0a 63 61 73 65 20 73 65 6c t).{.switch.($layout).{.case.sel
fb420 66 3a 3a 4c 41 59 4f 55 54 5f 42 4f 52 44 45 52 4c 45 53 53 3a 0a 24 74 68 69 73 2d 3e 74 61 62 f::LAYOUT_BORDERLESS:.$this->tab
fb440 6c 65 2d 3e 73 65 74 53 74 79 6c 65 28 27 62 6f 72 64 65 72 6c 65 73 73 27 29 3b 0a 62 72 65 61 le->setStyle('borderless');.brea
fb460 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4c 41 59 4f 55 54 5f 43 4f 4d 50 41 43 54 3a 0a 24 k;..case.self::LAYOUT_COMPACT:.$
fb480 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 73 65 74 53 74 79 6c 65 28 27 63 6f 6d 70 61 63 74 27 29 this->table->setStyle('compact')
fb4a0 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4c 41 59 4f 55 54 5f 44 45 46 41 ;.break;..case.self::LAYOUT_DEFA
fb4c0 55 4c 54 3a 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 73 65 74 53 74 79 6c 65 28 27 64 65 66 ULT:.$this->table->setStyle('def
fb4e0 61 75 6c 74 27 29 3b 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e ault');.break;..default:.throw.n
fb500 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 ew.InvalidArgumentException(spri
fb520 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 74 61 62 6c 65 20 6c 61 79 6f 75 74 20 22 25 73 22 2e 27 ntf('Invalid.table.layout."%s".'
fb540 2c 20 24 6c 61 79 6f 75 74 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a ,.$layout));.}..return.$this;.}.
fb560 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 61 64 65 72 73 28 61 72 72 61 .public.function.setHeaders(arra
fb580 79 20 24 68 65 61 64 65 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 73 65 74 48 y.$headers).{.$this->table->setH
fb5a0 65 61 64 65 72 73 28 24 68 65 61 64 65 72 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b eaders($headers);..return.$this;
fb5c0 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 6f 77 73 28 61 72 72 61 .}..public.function.setRows(arra
fb5e0 79 20 24 72 6f 77 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 73 65 74 52 6f 77 73 y.$rows).{.$this->table->setRows
fb600 28 24 72 6f 77 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 ($rows);..return.$this;.}..publi
fb620 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 6f 77 73 28 61 72 72 61 79 20 24 72 6f 77 73 29 0a c.function.addRows(array.$rows).
fb640 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 61 64 64 52 6f 77 73 28 24 72 6f 77 73 29 3b 0a {.$this->table->addRows($rows);.
fb660 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .return.$this;.}..public.functio
fb680 6e 20 61 64 64 52 6f 77 28 61 72 72 61 79 20 24 72 6f 77 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 n.addRow(array.$row).{.$this->ta
fb6a0 62 6c 65 2d 3e 61 64 64 52 6f 77 28 24 72 6f 77 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ble->addRow($row);..return.$this
fb6c0 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 6f 77 28 24 63 6f 6c ;.}..public.function.setRow($col
fb6e0 75 6d 6e 2c 20 61 72 72 61 79 20 24 72 6f 77 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d umn,.array.$row).{.$this->table-
fb700 3e 73 65 74 52 6f 77 28 24 63 6f 6c 75 6d 6e 2c 20 24 72 6f 77 29 3b 0a 0a 72 65 74 75 72 6e 20 >setRow($column,.$row);..return.
fb720 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e $this;.}.........public.function
fb740 20 73 65 74 50 61 64 64 69 6e 67 43 68 61 72 28 24 70 61 64 64 69 6e 67 43 68 61 72 29 0a 7b 0a .setPaddingChar($paddingChar).{.
fb760 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 50 61 64 $this->table->getStyle()->setPad
fb780 64 69 6e 67 43 68 61 72 28 24 70 61 64 64 69 6e 67 43 68 61 72 29 3b 0a 0a 72 65 74 75 72 6e 20 dingChar($paddingChar);..return.
fb7a0 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e $this;.}.........public.function
fb7c0 20 73 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 24 68 6f 72 69 7a 6f .setHorizontalBorderChar($horizo
fb7e0 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e ntalBorderChar).{.$this->table->
fb800 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 getStyle()->setHorizontalBorderC
fb820 68 61 72 28 24 68 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 29 3b 0a 0a 72 65 74 har($horizontalBorderChar);..ret
fb840 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 urn.$this;.}.........public.func
fb860 74 69 6f 6e 20 73 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 28 24 76 65 72 74 tion.setVerticalBorderChar($vert
fb880 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e icalBorderChar).{.$this->table->
fb8a0 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 getStyle()->setVerticalBorderCha
fb8c0 72 28 24 76 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 29 3b 0a 0a 72 65 74 75 72 6e 20 r($verticalBorderChar);..return.
fb8e0 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e $this;.}.........public.function
fb900 20 73 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 24 63 72 6f 73 73 69 6e 67 43 68 61 72 29 0a .setCrossingChar($crossingChar).
fb920 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 43 {.$this->table->getStyle()->setC
fb940 72 6f 73 73 69 6e 67 43 68 61 72 28 24 63 72 6f 73 73 69 6e 67 43 68 61 72 29 3b 0a 0a 72 65 74 rossingChar($crossingChar);..ret
fb960 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 urn.$this;.}.........public.func
fb980 74 69 6f 6e 20 73 65 74 43 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 28 24 63 65 6c 6c 48 65 tion.setCellHeaderFormat($cellHe
fb9a0 61 64 65 72 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 67 65 74 53 aderFormat).{.$this->table->getS
fb9c0 74 79 6c 65 28 29 2d 3e 73 65 74 43 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 28 24 63 65 6c tyle()->setCellHeaderFormat($cel
fb9e0 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d lHeaderFormat);..return.$this;.}
fba00 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 65 6c 6c .........public.function.setCell
fba20 52 6f 77 46 6f 72 6d 61 74 28 24 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 RowFormat($cellRowFormat).{.$thi
fba40 73 2d 3e 74 61 62 6c 65 2d 3e 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 43 65 6c 6c 48 65 61 s->table->getStyle()->setCellHea
fba60 64 65 72 46 6f 72 6d 61 74 28 24 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 29 3b 0a 0a 72 65 74 75 derFormat($cellRowFormat);..retu
fba80 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 rn.$this;.}.........public.funct
fbaa0 69 6f 6e 20 73 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 24 63 65 6c ion.setCellRowContentFormat($cel
fbac0 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c lRowContentFormat).{.$this->tabl
fbae0 65 2d 3e 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 e->getStyle()->setCellRowContent
fbb00 46 6f 72 6d 61 74 28 24 63 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 29 3b 0a 0a Format($cellRowContentFormat);..
fbb20 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 return.$this;.}.........public.f
fbb40 75 6e 63 74 69 6f 6e 20 73 65 74 42 6f 72 64 65 72 46 6f 72 6d 61 74 28 24 62 6f 72 64 65 72 46 unction.setBorderFormat($borderF
fbb60 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 67 65 74 53 74 79 6c 65 28 ormat).{.$this->table->getStyle(
fbb80 29 2d 3e 73 65 74 42 6f 72 64 65 72 46 6f 72 6d 61 74 28 24 62 6f 72 64 65 72 46 6f 72 6d 61 74 )->setBorderFormat($borderFormat
fbba0 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c );..return.$this;.}.........publ
fbbc0 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 61 64 54 79 70 65 28 24 70 61 64 54 79 70 65 29 ic.function.setPadType($padType)
fbbe0 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 .{.$this->table->getStyle()->set
fbc00 50 61 64 54 79 70 65 28 24 70 61 64 54 79 70 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 PadType($padType);..return.$this
fbc20 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ;.}................public.functi
fbc40 6f 6e 20 72 65 6e 64 65 72 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 on.render(OutputInterface.$outpu
fbc60 74 29 0a 7b 0a 24 70 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 69 6f 6e 50 72 6f 70 65 72 74 t).{.$p.=.new.\ReflectionPropert
fbc80 79 28 24 74 68 69 73 2d 3e 74 61 62 6c 65 2c 20 27 6f 75 74 70 75 74 27 29 3b 0a 24 70 2d 3e 73 y($this->table,.'output');.$p->s
fbca0 65 74 41 63 63 65 73 73 69 62 6c 65 28 74 72 75 65 29 3b 0a 24 70 2d 3e 73 65 74 56 61 6c 75 65 etAccessible(true);.$p->setValue
fbcc0 28 24 74 68 69 73 2d 3e 74 61 62 6c 65 2c 20 24 6f 75 74 70 75 74 29 3b 0a 0a 24 74 68 69 73 2d ($this->table,.$output);..$this-
fbce0 3e 74 61 62 6c 65 2d 3e 72 65 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 >table->render();.}.....public.f
fbd00 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 74 61 62 6c unction.getName().{.return.'tabl
fbd20 65 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 e';.}.}.<?php...........namespac
fbd40 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 e.Symfony\Component\Console\Help
fbd60 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 62 6c 65 53 65 70 61 72 61 74 6f 72 20 65 er;.......class.TableSeparator.e
fbd80 78 74 65 6e 64 73 20 54 61 62 6c 65 43 65 6c 6c 0a 7b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 xtends.TableCell.{.....public.fu
fbda0 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 6f 70 74 69 6f 6e nction.__construct(array.$option
fbdc0 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 s.=.array()).{.parent::__constru
fbde0 63 74 28 27 27 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a ct('',.$options);.}.}.<?php.....
fbe00 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e ......namespace.Symfony\Componen
fbe20 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 t\Console\Helper;..use.Symfony\C
fbe40 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c omponent\Console\Exception\Inval
fbe60 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 idArgumentException;.use.Symfony
fbe80 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 4c 6f 67 \Component\Console\Exception\Log
fbea0 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 62 6c 65 53 icException;........class.TableS
fbec0 74 79 6c 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 61 64 64 69 6e 67 43 68 61 72 20 3d 20 27 20 tyle.{.private.$paddingChar.=.'.
fbee0 27 3b 0a 70 72 69 76 61 74 65 20 24 68 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 ';.private.$horizontalBorderChar
fbf00 20 3d 20 27 2d 27 3b 0a 70 72 69 76 61 74 65 20 24 76 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 .=.'-';.private.$verticalBorderC
fbf20 68 61 72 20 3d 20 27 7c 27 3b 0a 70 72 69 76 61 74 65 20 24 63 72 6f 73 73 69 6e 67 43 68 61 72 har.=.'|';.private.$crossingChar
fbf40 20 3d 20 27 2b 27 3b 0a 70 72 69 76 61 74 65 20 24 63 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 .=.'+';.private.$cellHeaderForma
fbf60 74 20 3d 20 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 3b 0a 70 72 69 76 61 74 65 20 24 t.=.'<info>%s</info>';.private.$
fbf80 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 20 3d 20 27 25 73 27 3b 0a 70 72 69 76 61 74 65 20 24 63 cellRowFormat.=.'%s';.private.$c
fbfa0 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 20 3d 20 27 20 25 73 20 27 3b 0a 70 72 ellRowContentFormat.=.'.%s.';.pr
fbfc0 69 76 61 74 65 20 24 62 6f 72 64 65 72 46 6f 72 6d 61 74 20 3d 20 27 25 73 27 3b 0a 70 72 69 76 ivate.$borderFormat.=.'%s';.priv
fbfe0 61 74 65 20 24 70 61 64 54 79 70 65 20 3d 20 53 54 52 5f 50 41 44 5f 52 49 47 48 54 3b 0a 0a 0a ate.$padType.=.STR_PAD_RIGHT;...
fc000 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 61 64 64 69 6e 67 ......public.function.setPadding
fc020 43 68 61 72 28 24 70 61 64 64 69 6e 67 43 68 61 72 29 0a 7b 0a 69 66 20 28 21 24 70 61 64 64 69 Char($paddingChar).{.if.(!$paddi
fc040 6e 67 43 68 61 72 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 ngChar).{.throw.new.LogicExcepti
fc060 6f 6e 28 27 54 68 65 20 70 61 64 64 69 6e 67 20 63 68 61 72 20 6d 75 73 74 20 6e 6f 74 20 62 65 on('The.padding.char.must.not.be
fc080 20 65 6d 70 74 79 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 64 64 69 6e 67 43 68 61 72 20 .empty');.}..$this->paddingChar.
fc0a0 3d 20 24 70 61 64 64 69 6e 67 43 68 61 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d =.$paddingChar;..return.$this;.}
fc0c0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 64 64 69 6e .......public.function.getPaddin
fc0e0 67 43 68 61 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 64 64 69 6e 67 43 gChar().{.return.$this->paddingC
fc100 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 har;.}.........public.function.s
fc120 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 24 68 6f 72 69 7a 6f 6e 74 etHorizontalBorderChar($horizont
fc140 61 6c 42 6f 72 64 65 72 43 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 6f 72 69 7a 6f 6e 74 61 alBorderChar).{.$this->horizonta
fc160 6c 42 6f 72 64 65 72 43 68 61 72 20 3d 20 24 68 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 lBorderChar.=.$horizontalBorderC
fc180 68 61 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c har;..return.$this;.}.......publ
fc1a0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 ic.function.getHorizontalBorderC
fc1c0 68 61 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 6f 72 69 7a 6f 6e 74 61 6c har().{.return.$this->horizontal
fc1e0 42 6f 72 64 65 72 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e BorderChar;.}.........public.fun
fc200 63 74 69 6f 6e 20 73 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 28 24 76 65 72 ction.setVerticalBorderChar($ver
fc220 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 65 72 74 69 63 ticalBorderChar).{.$this->vertic
fc240 61 6c 42 6f 72 64 65 72 43 68 61 72 20 3d 20 24 76 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 alBorderChar.=.$verticalBorderCh
fc260 61 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ar;..return.$this;.}.......publi
fc280 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 c.function.getVerticalBorderChar
fc2a0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 65 72 74 69 63 61 6c 42 6f 72 64 65 ().{.return.$this->verticalBorde
fc2c0 72 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e rChar;.}.........public.function
fc2e0 20 73 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 24 63 72 6f 73 73 69 6e 67 43 68 61 72 29 0a .setCrossingChar($crossingChar).
fc300 7b 0a 24 74 68 69 73 2d 3e 63 72 6f 73 73 69 6e 67 43 68 61 72 20 3d 20 24 63 72 6f 73 73 69 6e {.$this->crossingChar.=.$crossin
fc320 67 43 68 61 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 gChar;..return.$this;.}.......pu
fc340 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 29 0a blic.function.getCrossingChar().
fc360 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 72 6f 73 73 69 6e 67 43 68 61 72 3b 0a 7d 0a {.return.$this->crossingChar;.}.
fc380 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 65 6c 6c 48 ........public.function.setCellH
fc3a0 65 61 64 65 72 46 6f 72 6d 61 74 28 24 63 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 29 0a 7b eaderFormat($cellHeaderFormat).{
fc3c0 0a 24 74 68 69 73 2d 3e 63 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 20 3d 20 24 63 65 6c 6c .$this->cellHeaderFormat.=.$cell
fc3e0 48 65 61 64 65 72 46 6f 72 6d 61 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a HeaderFormat;..return.$this;.}..
fc400 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 65 6c 6c 48 65 61 64 .....public.function.getCellHead
fc420 65 72 46 6f 72 6d 61 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 65 6c 6c 48 erFormat().{.return.$this->cellH
fc440 65 61 64 65 72 46 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 eaderFormat;.}.........public.fu
fc460 6e 63 74 69 6f 6e 20 73 65 74 43 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 28 24 63 65 6c 6c 52 6f 77 nction.setCellRowFormat($cellRow
fc480 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 20 3d Format).{.$this->cellRowFormat.=
fc4a0 20 24 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a .$cellRowFormat;..return.$this;.
fc4c0 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 65 6c 6c 52 }.......public.function.getCellR
fc4e0 6f 77 46 6f 72 6d 61 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 65 6c 6c 52 owFormat().{.return.$this->cellR
fc500 6f 77 46 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 owFormat;.}.........public.funct
fc520 69 6f 6e 20 73 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 24 63 65 6c ion.setCellRowContentFormat($cel
fc540 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 65 6c 6c lRowContentFormat).{.$this->cell
fc560 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 20 3d 20 24 63 65 6c 6c 52 6f 77 43 6f 6e 74 65 RowContentFormat.=.$cellRowConte
fc580 6e 74 46 6f 72 6d 61 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a ntFormat;..return.$this;.}......
fc5a0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 .public.function.getCellRowConte
fc5c0 6e 74 46 6f 72 6d 61 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 65 6c 6c 52 ntFormat().{.return.$this->cellR
fc5e0 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 owContentFormat;.}.........publi
fc600 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 42 6f 72 64 65 72 46 6f 72 6d 61 74 28 24 62 6f 72 64 c.function.setBorderFormat($bord
fc620 65 72 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 6f 72 64 65 72 46 6f 72 6d 61 74 20 erFormat).{.$this->borderFormat.
fc640 3d 20 24 62 6f 72 64 65 72 46 6f 72 6d 61 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a =.$borderFormat;..return.$this;.
fc660 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 6f 72 64 65 }.......public.function.getBorde
fc680 72 46 6f 72 6d 61 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 6f 72 64 65 72 rFormat().{.return.$this->border
fc6a0 46 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f Format;.}.........public.functio
fc6c0 6e 20 73 65 74 50 61 64 54 79 70 65 28 24 70 61 64 54 79 70 65 29 0a 7b 0a 69 66 20 28 21 69 6e n.setPadType($padType).{.if.(!in
fc6e0 5f 61 72 72 61 79 28 24 70 61 64 54 79 70 65 2c 20 61 72 72 61 79 28 53 54 52 5f 50 41 44 5f 4c _array($padType,.array(STR_PAD_L
fc700 45 46 54 2c 20 53 54 52 5f 50 41 44 5f 52 49 47 48 54 2c 20 53 54 52 5f 50 41 44 5f 42 4f 54 48 EFT,.STR_PAD_RIGHT,.STR_PAD_BOTH
fc720 29 2c 20 74 72 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 ),.true)).{.throw.new.InvalidArg
fc740 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 70 61 64 64 69 6e 67 20 umentException('Invalid.padding.
fc760 74 79 70 65 2e 20 45 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 28 53 54 52 5f 50 41 44 5f 4c type..Expected.one.of.(STR_PAD_L
fc780 45 46 54 2c 20 53 54 52 5f 50 41 44 5f 52 49 47 48 54 2c 20 53 54 52 5f 50 41 44 5f 42 4f 54 48 EFT,.STR_PAD_RIGHT,.STR_PAD_BOTH
fc7a0 29 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 64 54 79 70 65 20 3d 20 24 70 61 64 54 79 ).');.}..$this->padType.=.$padTy
fc7c0 70 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 pe;..return.$this;.}.......publi
fc7e0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 64 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e c.function.getPadType().{.return
fc800 20 24 74 68 69 73 2d 3e 70 61 64 54 79 70 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a .$this->padType;.}.}.<?php......
fc820 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 .....namespace.Symfony\Component
fc840 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d \Console\Input;..use.Symfony\Com
fc860 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 52 75 6e 74 69 6d 65 ponent\Console\Exception\Runtime
fc880 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a Exception;......................
fc8a0 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 67 76 49 6e 70 75 74 20 65 78 74 65 6e 64 73 20 49 6e 70 .....class.ArgvInput.extends.Inp
fc8c0 75 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 6f 6b 65 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 70 ut.{.private.$tokens;.private.$p
fc8e0 61 72 73 65 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f arsed;........public.function.__
fc900 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 61 72 67 76 20 3d 20 6e 75 6c 6c 2c 20 49 6e construct(array.$argv.=.null,.In
fc920 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c putDefinition.$definition.=.null
fc940 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 61 72 67 76 29 20 7b 0a 24 61 72 67 76 20 ).{.if.(null.===.$argv).{.$argv.
fc960 3d 20 24 5f 53 45 52 56 45 52 5b 27 61 72 67 76 27 5d 3b 0a 7d 0a 0a 0a 20 61 72 72 61 79 5f 73 =.$_SERVER['argv'];.}....array_s
fc980 68 69 66 74 28 24 61 72 67 76 29 3b 0a 0a 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 20 3d 20 24 61 hift($argv);..$this->tokens.=.$a
fc9a0 72 67 76 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 64 65 66 69 6e rgv;..parent::__construct($defin
fc9c0 69 74 69 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 ition);.}..protected.function.se
fc9e0 74 54 6f 6b 65 6e 73 28 61 72 72 61 79 20 24 74 6f 6b 65 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e tTokens(array.$tokens).{.$this->
fca00 74 6f 6b 65 6e 73 20 3d 20 24 74 6f 6b 65 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 tokens.=.$tokens;.}.....protecte
fca20 64 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 28 29 0a 7b 0a 24 70 61 72 73 65 4f 70 74 69 6f d.function.parse().{.$parseOptio
fca40 6e 73 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 64 20 3d 20 24 74 68 69 73 ns.=.true;.$this->parsed.=.$this
fca60 2d 3e 74 6f 6b 65 6e 73 3b 0a 77 68 69 6c 65 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 6f 6b 65 6e ->tokens;.while.(null.!==.$token
fca80 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 68 69 73 2d 3e 70 61 72 73 65 64 29 29 20 7b .=.array_shift($this->parsed)).{
fcaa0 0a 69 66 20 28 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 26 26 20 27 27 20 3d 3d 20 24 74 6f 6b .if.($parseOptions.&&.''.==.$tok
fcac0 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 41 72 67 75 6d 65 6e 74 28 24 74 6f 6b 65 en).{.$this->parseArgument($toke
fcae0 6e 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 26 26 20 27 n);.}.elseif.($parseOptions.&&.'
fcb00 2d 2d 27 20 3d 3d 20 24 74 6f 6b 65 6e 29 20 7b 0a 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 3d --'.==.$token).{.$parseOptions.=
fcb20 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 .false;.}.elseif.($parseOptions.
fcb40 26 26 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 6f 6b 65 6e 2c 20 27 2d 2d 27 29 29 20 7b &&.0.===.strpos($token,.'--')).{
fcb60 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 74 6f 6b 65 6e 29 3b .$this->parseLongOption($token);
fcb80 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 26 26 20 27 2d 27 20 .}.elseif.($parseOptions.&&.'-'.
fcba0 3d 3d 3d 20 24 74 6f 6b 65 6e 5b 30 5d 20 26 26 20 27 2d 27 20 21 3d 3d 20 24 74 6f 6b 65 6e 29 ===.$token[0].&&.'-'.!==.$token)
fcbc0 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 74 6f 6b 65 .{.$this->parseShortOption($toke
fcbe0 6e 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 41 72 67 75 6d 65 6e n);.}.else.{.$this->parseArgumen
fcc00 74 28 24 74 6f 6b 65 6e 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 t($token);.}.}.}.......private.f
fcc20 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 74 6f 6b 65 6e 29 unction.parseShortOption($token)
fcc40 0a 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 74 6f 6b 65 6e 2c 20 31 29 3b 0a 0a 69 .{.$name.=.substr($token,.1);..i
fcc60 66 20 28 73 74 72 6c 65 6e 28 24 6e 61 6d 65 29 20 3e 20 31 29 20 7b 0a 69 66 20 28 24 74 68 69 f.(strlen($name).>.1).{.if.($thi
fcc80 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 s->definition->hasShortcut($name
fcca0 5b 30 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 [0]).&&.$this->definition->getOp
fccc0 74 69 6f 6e 46 6f 72 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 5b 30 5d 29 2d 3e 61 63 63 65 70 tionForShortcut($name[0])->accep
fcce0 74 56 61 6c 75 65 28 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 61 64 64 53 68 6f 72 74 4f 70 74 tValue()).{...$this->addShortOpt
fcd00 69 6f 6e 28 24 6e 61 6d 65 5b 30 5d 2c 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 31 29 29 3b ion($name[0],.substr($name,.1));
fcd20 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 53 68 6f 72 74 4f 70 74 69 6f .}.else.{.$this->parseShortOptio
fcd40 6e 53 65 74 28 24 6e 61 6d 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 nSet($name);.}.}.else.{.$this->a
fcd60 64 64 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 7d 0a ddShortOption($name,.null);.}.}.
fcd80 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 53 68 ........private.function.parseSh
fcda0 6f 72 74 4f 70 74 69 6f 6e 53 65 74 28 24 6e 61 6d 65 29 0a 7b 0a 24 6c 65 6e 20 3d 20 73 74 72 ortOptionSet($name).{.$len.=.str
fcdc0 6c 65 6e 28 24 6e 61 6d 65 29 3b 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 24 6c len($name);.for.($i.=.0;.$i.<.$l
fcde0 65 6e 3b 20 2b 2b 24 69 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 en;.++$i).{.if.(!$this->definiti
fce00 6f 6e 2d 3e 68 61 73 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 5b 24 69 5d 29 29 20 7b 0a 74 68 on->hasShortcut($name[$i])).{.th
fce20 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 row.new.RuntimeException(sprintf
fce40 28 27 54 68 65 20 22 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 ('The."-%s".option.does.not.exis
fce60 74 2e 27 2c 20 24 6e 61 6d 65 5b 24 69 5d 29 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 20 3d 20 24 t.',.$name[$i]));.}..$option.=.$
fce80 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 46 6f 72 53 68 this->definition->getOptionForSh
fcea0 6f 72 74 63 75 74 28 24 6e 61 6d 65 5b 24 69 5d 29 3b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e ortcut($name[$i]);.if.($option->
fcec0 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f acceptValue()).{.$this->addLongO
fcee0 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 69 20 3d 3d 3d ption($option->getName(),.$i.===
fcf00 20 24 6c 65 6e 20 2d 20 31 20 3f 20 6e 75 6c 6c 20 3a 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c .$len.-.1.?.null.:.substr($name,
fcf20 20 24 69 20 2b 20 31 29 29 3b 0a 0a 62 72 65 61 6b 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 .$i.+.1));..break;.}.else.{.$thi
fcf40 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d s->addLongOption($option->getNam
fcf60 65 28 29 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 e(),.null);.}.}.}.......private.
fcf80 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 74 6f 6b 65 6e 29 function.parseLongOption($token)
fcfa0 0a 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 74 6f 6b 65 6e 2c 20 32 29 3b 0a 0a 69 .{.$name.=.substr($token,.2);..i
fcfc0 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 6e 61 6d 65 f.(false.!==.$pos.=.strpos($name
fcfe0 2c 20 27 3d 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 73 ,.'=')).{.$this->addLongOption(s
fd000 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 30 2c 20 24 70 6f 73 29 2c 20 73 75 62 73 74 72 28 24 6e ubstr($name,.0,.$pos),.substr($n
fd020 61 6d 65 2c 20 24 70 6f 73 20 2b 20 31 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d ame,.$pos.+.1));.}.else.{.$this-
fd040 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 7d >addLongOption($name,.null);.}.}
fd060 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 41 .........private.function.parseA
fd080 72 67 75 6d 65 6e 74 28 24 74 6f 6b 65 6e 29 0a 7b 0a 24 63 20 3d 20 63 6f 75 6e 74 28 24 74 68 rgument($token).{.$c.=.count($th
fd0a0 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 3b 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 65 is->arguments);....if.($this->de
fd0c0 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 63 29 29 20 7b 0a 24 61 72 finition->hasArgument($c)).{.$ar
fd0e0 67 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 g.=.$this->definition->getArgume
fd100 6e 74 28 24 63 29 3b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 61 72 67 2d 3e 67 nt($c);.$this->arguments[$arg->g
fd120 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 61 72 67 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 61 72 etName()].=.$arg->isArray().?.ar
fd140 72 61 79 28 24 74 6f 6b 65 6e 29 20 3a 20 24 74 6f 6b 65 6e 3b 0a 0a 0a 20 7d 20 65 6c 73 65 69 ray($token).:.$token;....}.elsei
fd160 66 20 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e f.($this->definition->hasArgumen
fd180 74 28 24 63 20 2d 20 31 29 20 26 26 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e t($c.-.1).&&.$this->definition->
fd1a0 67 65 74 41 72 67 75 6d 65 6e 74 28 24 63 20 2d 20 31 29 2d 3e 69 73 41 72 72 61 79 28 29 29 20 getArgument($c.-.1)->isArray()).
fd1c0 7b 0a 24 61 72 67 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 {.$arg.=.$this->definition->getA
fd1e0 72 67 75 6d 65 6e 74 28 24 63 20 2d 20 31 29 3b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 rgument($c.-.1);.$this->argument
fd200 73 5b 24 61 72 67 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 5d 20 3d 20 24 74 6f 6b 65 6e 3b 0a 0a s[$arg->getName()][].=.$token;..
fd220 0a 20 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 ..}.else.{.throw.new.RuntimeExce
fd240 70 74 69 6f 6e 28 27 54 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 2e 27 29 3b 0a 7d 0a ption('Too.many.arguments.');.}.
fd260 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 53 }..........private.function.addS
fd280 68 6f 72 74 4f 70 74 69 6f 6e 28 24 73 68 6f 72 74 63 75 74 2c 20 24 76 61 6c 75 65 29 0a 7b 0a hortOption($shortcut,.$value).{.
fd2a0 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 53 68 6f 72 74 if.(!$this->definition->hasShort
fd2c0 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 cut($shortcut)).{.throw.new.Runt
fd2e0 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 25 73 22 20 imeException(sprintf('The."-%s".
fd300 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 73 68 6f 72 74 63 option.does.not.exist.',.$shortc
fd320 75 74 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 74 ut));.}..$this->addLongOption($t
fd340 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 46 6f 72 53 68 6f his->definition->getOptionForSho
fd360 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 76 61 rtcut($shortcut)->getName(),.$va
fd380 6c 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f lue);.}..........private.functio
fd3a0 6e 20 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b n.addLongOption($name,.$value).{
fd3c0 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 4f 70 74 69 .if.(!$this->definition->hasOpti
fd3e0 6f 6e 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 on($name)).{.throw.new.RuntimeEx
fd400 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 ception(sprintf('The."--%s".opti
fd420 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a on.does.not.exist.',.$name));.}.
fd440 0a 24 6f 70 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 .$option.=.$this->definition->ge
fd460 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 76 tOption($name);....if.(!isset($v
fd480 61 6c 75 65 5b 30 5d 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 69 66 alue[0])).{.$value.=.null;.}..if
fd4a0 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 61 6c 75 65 20 26 26 20 21 24 6f 70 74 69 6f 6e 2d 3e 61 .(null.!==.$value.&&.!$option->a
fd4c0 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d cceptValue()).{.throw.new.Runtim
fd4e0 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f eException(sprintf('The."--%s".o
fd500 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 63 63 65 70 74 20 61 20 76 61 6c 75 65 2e 27 2c ption.does.not.accept.a.value.',
fd520 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 .$name));.}..if.(null.===.$value
fd540 20 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 20 26 26 20 63 6f .&&.$option->acceptValue().&&.co
fd560 75 6e 74 28 24 74 68 69 73 2d 3e 70 61 72 73 65 64 29 29 20 7b 0a 0a 20 0a 20 24 6e 65 78 74 20 unt($this->parsed)).{.....$next.
fd580 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 68 69 73 2d 3e 70 61 72 73 65 64 29 3b 0a 69 66 =.array_shift($this->parsed);.if
fd5a0 20 28 69 73 73 65 74 28 24 6e 65 78 74 5b 30 5d 29 20 26 26 20 27 2d 27 20 21 3d 3d 20 24 6e 65 .(isset($next[0]).&&.'-'.!==.$ne
fd5c0 78 74 5b 30 5d 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 24 6e 65 78 74 3b 0a 7d 20 65 6c 73 65 69 xt[0]).{.$value.=.$next;.}.elsei
fd5e0 66 20 28 65 6d 70 74 79 28 24 6e 65 78 74 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 27 27 3b 0a f.(empty($next)).{.$value.=.'';.
fd600 7d 20 65 6c 73 65 20 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 74 68 69 73 2d 3e 70 61 }.else.{.array_unshift($this->pa
fd620 72 73 65 64 2c 20 24 6e 65 78 74 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 rsed,.$next);.}.}..if.(null.===.
fd640 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 $value).{.if.($option->isValueRe
fd660 71 75 69 72 65 64 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 quired()).{.throw.new.RuntimeExc
fd680 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 6f eption(sprintf('The."--%s".optio
fd6a0 6e 20 72 65 71 75 69 72 65 73 20 61 20 76 61 6c 75 65 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d n.requires.a.value.',.$name));.}
fd6c0 0a 0a 69 66 20 28 21 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a 24 76 61 ..if.(!$option->isArray()).{.$va
fd6e0 6c 75 65 20 3d 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 lue.=.$option->isValueOptional()
fd700 20 3f 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3a 20 74 72 75 65 3b .?.$option->getDefault().:.true;
fd720 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a .}.}..if.($option->isArray()).{.
fd740 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 5b 5d 20 3d 20 24 76 61 6c 75 65 $this->options[$name][].=.$value
fd760 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d ;.}.else.{.$this->options[$name]
fd780 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .=.$value;.}.}.......public.func
fd7a0 74 69 6f 6e 20 67 65 74 46 69 72 73 74 41 72 67 75 6d 65 6e 74 28 29 0a 7b 0a 66 6f 72 65 61 63 tion.getFirstArgument().{.foreac
fd7c0 68 20 28 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 20 61 73 20 24 74 6f 6b 65 6e 29 20 7b 0a 69 66 h.($this->tokens.as.$token).{.if
fd7e0 20 28 24 74 6f 6b 65 6e 20 26 26 20 27 2d 27 20 3d 3d 3d 20 24 74 6f 6b 65 6e 5b 30 5d 29 20 7b .($token.&&.'-'.===.$token[0]).{
fd800 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e 3b 0a 7d 0a 7d .continue;.}..return.$token;.}.}
fd820 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 ............public.function.hasP
fd840 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 29 0a 7b 0a 24 76 61 6c 75 65 arameterOption($values).{.$value
fd860 73 20 3d 20 28 61 72 72 61 79 29 20 24 76 61 6c 75 65 73 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 s.=.(array).$values;..foreach.($
fd880 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 20 61 73 20 24 74 6f 6b 65 6e 29 20 7b 0a 66 6f 72 65 61 63 this->tokens.as.$token).{.foreac
fd8a0 68 20 28 24 76 61 6c 75 65 73 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 74 6f 6b h.($values.as.$value).{.if.($tok
fd8c0 65 6e 20 3d 3d 3d 20 24 76 61 6c 75 65 20 7c 7c 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 en.===.$value.||.0.===.strpos($t
fd8e0 6f 6b 65 6e 2c 20 24 76 61 6c 75 65 2e 27 3d 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 oken,.$value.'=')).{.return.true
fd900 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ;.}.}.}..return.false;.}........
fd920 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 72 61 6d 65 74 65 .....public.function.getParamete
fd940 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 66 61 6c 73 rOption($values,.$default.=.fals
fd960 65 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 76 61 6c 75 65 73 3b 0a e).{.$values.=.(array).$values;.
fd980 24 74 6f 6b 65 6e 73 20 3d 20 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 3b 0a 0a 77 68 69 6c 65 20 $tokens.=.$this->tokens;..while.
fd9a0 28 30 20 3c 20 63 6f 75 6e 74 28 24 74 6f 6b 65 6e 73 29 29 20 7b 0a 24 74 6f 6b 65 6e 20 3d 20 (0.<.count($tokens)).{.$token.=.
fd9c0 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 6f 6b 65 6e 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 array_shift($tokens);..foreach.(
fd9e0 24 76 61 6c 75 65 73 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 74 6f 6b 65 6e 20 $values.as.$value).{.if.($token.
fda00 3d 3d 3d 20 24 76 61 6c 75 65 20 7c 7c 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 6f 6b 65 ===.$value.||.0.===.strpos($toke
fda20 6e 2c 20 24 76 61 6c 75 65 2e 27 3d 27 29 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 n,.$value.'=')).{.if.(false.!==.
fda40 24 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 74 6f 6b 65 6e 2c 20 27 3d 27 29 29 20 7b 0a 72 65 $pos.=.strpos($token,.'=')).{.re
fda60 74 75 72 6e 20 73 75 62 73 74 72 28 24 74 6f 6b 65 6e 2c 20 24 70 6f 73 20 2b 20 31 29 3b 0a 7d turn.substr($token,.$pos.+.1);.}
fda80 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 6f 6b 65 6e 73 29 3b 0a 7d ..return.array_shift($tokens);.}
fdaa0 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 .}.}..return.$default;.}.......p
fdac0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 24 73 ublic.function.__toString().{.$s
fdae0 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 24 74 6f 6b 65 6e 73 20 3d 20 61 72 72 61 79 5f 6d 61 70 elf.=.$this;.$tokens.=.array_map
fdb00 28 66 75 6e 63 74 69 6f 6e 20 28 24 74 6f 6b 65 6e 29 20 75 73 65 20 28 24 73 65 6c 66 29 20 7b (function.($token).use.($self).{
fdb20 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 2d 5b 5e 3d 5d 2b 3d 29 28 2e 2b 29 .if.(preg_match('{^(-[^=]+=)(.+)
fdb40 7d 27 2c 20 24 74 6f 6b 65 6e 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d }',.$token,.$match)).{.return.$m
fdb60 61 74 63 68 5b 31 5d 2e 24 73 65 6c 66 2d 3e 65 73 63 61 70 65 54 6f 6b 65 6e 28 24 6d 61 74 63 atch[1].$self->escapeToken($matc
fdb80 68 5b 32 5d 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 6f 6b 65 6e 20 26 26 20 24 74 6f 6b 65 6e 5b 30 h[2]);.}..if.($token.&&.$token[0
fdba0 5d 20 21 3d 3d 20 27 2d 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 73 65 6c 66 2d 3e 65 73 63 61 70 ].!==.'-').{.return.$self->escap
fdbc0 65 54 6f 6b 65 6e 28 24 74 6f 6b 65 6e 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e eToken($token);.}..return.$token
fdbe0 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 29 3b 0a 0a 72 65 74 75 72 6e 20 69 6d 70 ;.},.$this->tokens);..return.imp
fdc00 6c 6f 64 65 28 27 20 27 2c 20 24 74 6f 6b 65 6e 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a lode('.',.$tokens);.}.}.<?php...
fdc20 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e ........namespace.Symfony\Compon
fdc40 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c ent\Console\Input;..use.Symfony\
fdc60 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 Component\Console\Exception\Inva
fdc80 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e lidArgumentException;.use.Symfon
fdca0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e y\Component\Console\Exception\In
fdcc0 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a validOptionException;...........
fdce0 63 6c 61 73 73 20 41 72 72 61 79 49 6e 70 75 74 20 65 78 74 65 6e 64 73 20 49 6e 70 75 74 0a 7b class.ArrayInput.extends.Input.{
fdd00 0a 70 72 69 76 61 74 65 20 24 70 61 72 61 6d 65 74 65 72 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 .private.$parameters;........pub
fdd20 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 lic.function.__construct(array.$
fdd40 70 61 72 61 6d 65 74 65 72 73 2c 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 parameters,.InputDefinition.$def
fdd60 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 72 61 6d 65 74 inition.=.null).{.$this->paramet
fdd80 65 72 73 20 3d 20 24 70 61 72 61 6d 65 74 65 72 73 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f ers.=.$parameters;..parent::__co
fdda0 6e 73 74 72 75 63 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 nstruct($definition);.}.......pu
fddc0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 72 73 74 41 72 67 75 6d 65 6e 74 28 29 blic.function.getFirstArgument()
fdde0 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 65 74 65 72 73 20 61 73 .{.foreach.($this->parameters.as
fde00 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 6b 65 79 20 26 26 20 27 .$key.=>.$value).{.if.($key.&&.'
fde20 2d 27 20 3d 3d 3d 20 24 6b 65 79 5b 30 5d 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 72 -'.===.$key[0]).{.continue;.}..r
fde40 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 eturn.$value;.}.}............pub
fde60 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 lic.function.hasParameterOption(
fde80 24 76 61 6c 75 65 73 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 76 61 $values).{.$values.=.(array).$va
fdea0 6c 75 65 73 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 65 74 65 72 lues;..foreach.($this->parameter
fdec0 73 20 61 73 20 24 6b 20 3d 3e 20 24 76 29 20 7b 0a 69 66 20 28 21 69 73 5f 69 6e 74 28 24 6b 29 s.as.$k.=>.$v).{.if.(!is_int($k)
fdee0 29 20 7b 0a 24 76 20 3d 20 24 6b 3b 0a 7d 0a 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 76 2c ).{.$v.=.$k;.}..if.(in_array($v,
fdf00 20 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 .$values)).{.return.true;.}.}..r
fdf20 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 eturn.false;.}.............publi
fdf40 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 c.function.getParameterOption($v
fdf60 61 6c 75 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 76 61 6c 75 alues,.$default.=.false).{.$valu
fdf80 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 76 61 6c 75 65 73 3b 0a 0a 66 6f 72 65 61 63 68 20 28 es.=.(array).$values;..foreach.(
fdfa0 24 74 68 69 73 2d 3e 70 61 72 61 6d 65 74 65 72 73 20 61 73 20 24 6b 20 3d 3e 20 24 76 29 20 7b $this->parameters.as.$k.=>.$v).{
fdfc0 0a 69 66 20 28 69 73 5f 69 6e 74 28 24 6b 29 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 .if.(is_int($k)).{.if.(in_array(
fdfe0 24 76 2c 20 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d $v,.$values)).{.return.true;.}.}
fe000 20 65 6c 73 65 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6b 2c 20 24 76 61 6c 75 65 73 29 29 20 .elseif.(in_array($k,.$values)).
fe020 7b 0a 72 65 74 75 72 6e 20 24 76 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c {.return.$v;.}.}..return.$defaul
fe040 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 t;.}.......public.function.__toS
fe060 74 72 69 6e 67 28 29 0a 7b 0a 24 70 61 72 61 6d 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 tring().{.$params.=.array();.for
fe080 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 65 74 65 72 73 20 61 73 20 24 70 61 72 61 each.($this->parameters.as.$para
fe0a0 6d 20 3d 3e 20 24 76 61 6c 29 20 7b 0a 69 66 20 28 24 70 61 72 61 6d 20 26 26 20 27 2d 27 20 3d m.=>.$val).{.if.($param.&&.'-'.=
fe0c0 3d 3d 20 24 70 61 72 61 6d 5b 30 5d 29 20 7b 0a 24 70 61 72 61 6d 73 5b 5d 20 3d 20 24 70 61 72 ==.$param[0]).{.$params[].=.$par
fe0e0 61 6d 2e 28 27 27 20 21 3d 20 24 76 61 6c 20 3f 20 27 3d 27 2e 24 74 68 69 73 2d 3e 65 73 63 61 am.(''.!=.$val.?.'='.$this->esca
fe100 70 65 54 6f 6b 65 6e 28 24 76 61 6c 29 20 3a 20 27 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 peToken($val).:.'');.}.else.{.$p
fe120 61 72 61 6d 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 65 73 63 61 70 65 54 6f 6b 65 6e 28 24 76 61 arams[].=.$this->escapeToken($va
fe140 6c 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 24 70 61 l);.}.}..return.implode('.',.$pa
fe160 72 61 6d 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 rams);.}.....protected.function.
fe180 70 61 72 73 65 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 65 parse().{.foreach.($this->parame
fe1a0 74 65 72 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 30 20 ters.as.$key.=>.$value).{.if.(0.
fe1c0 3d 3d 3d 20 73 74 72 70 6f 73 28 24 6b 65 79 2c 20 27 2d 2d 27 29 29 20 7b 0a 24 74 68 69 73 2d ===.strpos($key,.'--')).{.$this-
fe1e0 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 73 75 62 73 74 72 28 24 6b 65 79 2c 20 32 29 2c 20 >addLongOption(substr($key,.2),.
fe200 24 76 61 6c 75 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 2d 27 20 3d 3d 3d 20 24 6b 65 79 5b $value);.}.elseif.('-'.===.$key[
fe220 30 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 53 68 6f 72 74 4f 70 74 69 6f 6e 28 73 75 62 73 0]).{.$this->addShortOption(subs
fe240 74 72 28 24 6b 65 79 2c 20 31 29 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 tr($key,.1),.$value);.}.else.{.$
fe260 74 68 69 73 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 28 24 6b 65 79 2c 20 24 76 61 6c 75 65 29 3b this->addArgument($key,.$value);
fe280 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e .}.}.}..........private.function
fe2a0 20 61 64 64 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 73 68 6f 72 74 63 75 74 2c 20 24 76 61 6c 75 .addShortOption($shortcut,.$valu
fe2c0 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 e).{.if.(!$this->definition->has
fe2e0 53 68 6f 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 Shortcut($shortcut)).{.throw.new
fe300 20 49 6e 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 .InvalidOptionException(sprintf(
fe320 27 54 68 65 20 22 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 'The."-%s".option.does.not.exist
fe340 2e 27 2c 20 24 73 68 6f 72 74 63 75 74 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f .',.$shortcut));.}..$this->addLo
fe360 6e 67 4f 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f ngOption($this->definition->getO
fe380 70 74 69 6f 6e 46 6f 72 53 68 6f 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 2d 3e 67 65 74 ptionForShortcut($shortcut)->get
fe3a0 4e 61 6d 65 28 29 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 Name(),.$value);.}...........pri
fe3c0 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6e 61 6d vate.function.addLongOption($nam
fe3e0 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 e,.$value).{.if.(!$this->definit
fe400 69 6f 6e 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e ion->hasOption($name)).{.throw.n
fe420 65 77 20 49 6e 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 ew.InvalidOptionException(sprint
fe440 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 f('The."--%s".option.does.not.ex
fe460 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 20 3d 20 24 74 68 ist.',.$name));.}..$option.=.$th
fe480 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 is->definition->getOption($name)
fe4a0 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 6f ;..if.(null.===.$value).{.if.($o
fe4c0 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 29 20 7b 0a 74 68 72 6f ption->isValueRequired()).{.thro
fe4e0 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 73 70 72 w.new.InvalidOptionException(spr
fe500 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 6f 6e 20 72 65 71 75 69 72 65 73 intf('The."--%s".option.requires
fe520 20 61 20 76 61 6c 75 65 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 76 61 6c 75 65 20 3d .a.value.',.$name));.}..$value.=
fe540 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 20 3f 20 24 6f .$option->isValueOptional().?.$o
fe560 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3a 20 74 72 75 65 3b 0a 7d 0a 0a 24 ption->getDefault().:.true;.}..$
fe580 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d this->options[$name].=.$value;.}
fe5a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 ..........private.function.addAr
fe5c0 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 gument($name,.$value).{.if.(!$th
fe5e0 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d is->definition->hasArgument($nam
fe600 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 e)).{.throw.new.InvalidArgumentE
fe620 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 61 72 67 75 6d xception(sprintf('The."%s".argum
fe640 65 6e 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d ent.does.not.exist.',.$name));.}
fe660 0a 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c ..$this->arguments[$name].=.$val
fe680 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 ue;.}.}.<?php...........namespac
fe6a0 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 e.Symfony\Component\Console\Inpu
fe6c0 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c t;..use.Symfony\Component\Consol
fe6e0 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 e\Exception\InvalidArgumentExcep
fe700 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 tion;.use.Symfony\Component\Cons
fe720 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 3b 0a ole\Exception\RuntimeException;.
fe740 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 49 6e 70 75 74 ............abstract.class.Input
fe760 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a .implements.InputInterface.{....
fe780 70 72 6f 74 65 63 74 65 64 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 protected.$definition;.protected
fe7a0 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 .$options.=.array();.protected.$
fe7c0 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 arguments.=.array();.protected.$
fe7e0 69 6e 74 65 72 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 interactive.=.true;.......public
fe800 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 6e 70 75 74 44 65 66 69 6e .function.__construct(InputDefin
fe820 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 ition.$definition.=.null).{.if.(
fe840 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 64 null.===.$definition).{.$this->d
fe860 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 65 77 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 efinition.=.new.InputDefinition(
fe880 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 62 69 6e 64 28 24 64 65 66 69 6e 69 74 );.}.else.{.$this->bind($definit
fe8a0 69 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a ion);.$this->validate();.}.}....
fe8c0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 62 69 6e 64 28 49 6e 70 75 74 44 65 66 ...public.function.bind(InputDef
fe8e0 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 inition.$definition).{.$this->ar
fe900 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e guments.=.array();.$this->option
fe920 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d s.=.array();.$this->definition.=
fe940 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 28 29 3b 0a 7d .$definition;..$this->parse();.}
fe960 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e .....abstract.protected.function
fe980 20 70 61 72 73 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 .parse();.......public.function.
fe9a0 76 61 6c 69 64 61 74 65 28 29 0a 7b 0a 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 validate().{.$definition.=.$this
fe9c0 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 24 67 69 76 65 6e 41 72 67 75 6d 65 6e 74 73 20 3d 20 ->definition;.$givenArguments.=.
fe9e0 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 3b 0a 0a 24 6d 69 73 73 69 6e 67 41 72 67 75 6d $this->arguments;..$missingArgum
fea00 65 6e 74 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 61 72 72 61 79 5f 6b 65 79 73 28 24 ents.=.array_filter(array_keys($
fea20 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 29 2c 20 66 75 6e definition->getArguments()),.fun
fea40 63 74 69 6f 6e 20 28 24 61 72 67 75 6d 65 6e 74 29 20 75 73 65 20 28 24 64 65 66 69 6e 69 74 69 ction.($argument).use.($definiti
fea60 6f 6e 2c 20 24 67 69 76 65 6e 41 72 67 75 6d 65 6e 74 73 29 20 7b 0a 72 65 74 75 72 6e 20 21 61 on,.$givenArguments).{.return.!a
fea80 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 61 72 67 75 6d 65 6e 74 2c 20 24 67 69 76 65 rray_key_exists($argument,.$give
feaa0 6e 41 72 67 75 6d 65 6e 74 73 29 20 26 26 20 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 nArguments).&&.$definition->getA
feac0 72 67 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 rgument($argument)->isRequired()
feae0 3b 0a 7d 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 6d 69 73 73 69 6e 67 41 72 67 75 6d 65 6e ;.});..if.(count($missingArgumen
feb00 74 73 29 20 3e 20 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 ts).>.0).{.throw.new.RuntimeExce
feb20 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4e 6f 74 20 65 6e 6f 75 67 68 20 61 72 67 75 6d 65 ption(sprintf('Not.enough.argume
feb40 6e 74 73 20 28 6d 69 73 73 69 6e 67 3a 20 22 25 73 22 29 2e 27 2c 20 69 6d 70 6c 6f 64 65 28 27 nts.(missing:."%s").',.implode('
feb60 2c 20 27 2c 20 24 6d 69 73 73 69 6e 67 41 72 67 75 6d 65 6e 74 73 29 29 29 3b 0a 7d 0a 7d 0a 0a ,.',.$missingArguments)));.}.}..
feb80 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 74 65 72 61 63 74 69 .....public.function.isInteracti
feba0 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 74 65 72 61 63 74 69 76 65 ve().{.return.$this->interactive
febc0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 74 ;.}.......public.function.setInt
febe0 65 72 61 63 74 69 76 65 28 24 69 6e 74 65 72 61 63 74 69 76 65 29 0a 7b 0a 24 74 68 69 73 2d 3e eractive($interactive).{.$this->
fec00 69 6e 74 65 72 61 63 74 69 76 65 20 3d 20 28 62 6f 6f 6c 29 20 24 69 6e 74 65 72 61 63 74 69 76 interactive.=.(bool).$interactiv
fec20 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 e;.}.......public.function.getAr
fec40 67 75 6d 65 6e 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 guments().{.return.array_merge($
fec60 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 44 65 66 this->definition->getArgumentDef
fec80 61 75 6c 74 73 28 29 2c 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a aults(),.$this->arguments);.}...
feca0 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d ........public.function.getArgum
fecc0 65 6e 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 ent($name).{.if.(!$this->definit
fece0 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 ion->hasArgument($name)).{.throw
fed00 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 .new.InvalidArgumentException(sp
fed20 72 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 61 72 67 75 6d 65 6e 74 20 64 6f 65 73 20 6e 6f rintf('The."%s".argument.does.no
fed40 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 t.exist.',.$name));.}..return.is
fed60 73 65 74 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 29 20 3f 20 24 set($this->arguments[$name]).?.$
fed80 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 20 3a 20 24 74 68 69 73 2d 3e this->arguments[$name].:.$this->
feda0 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 2d 3e definition->getArgument($name)->
fedc0 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 getDefault();.}..........public.
fede0 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 24 76 61 6c function.setArgument($name,.$val
fee00 75 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 ue).{.if.(!$this->definition->ha
fee20 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e sArgument($name)).{.throw.new.In
fee40 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 validArgumentException(sprintf('
fee60 54 68 65 20 22 25 73 22 20 61 72 67 75 6d 65 6e 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 The."%s".argument.does.not.exist
fee80 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 .',.$name));.}..$this->arguments
feea0 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c [$name].=.$value;.}.........publ
feec0 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 0a 7b ic.function.hasArgument($name).{
feee0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 .return.$this->definition->hasAr
fef00 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 gument($name);.}.......public.fu
fef20 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 nction.getOptions().{.return.arr
fef40 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f ay_merge($this->definition->getO
fef60 70 74 69 6f 6e 44 65 66 61 75 6c 74 73 28 29 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 ptionDefaults(),.$this->options)
fef80 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 ;.}...........public.function.ge
fefa0 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 tOption($name).{.if.(!$this->def
fefc0 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 inition->hasOption($name)).{.thr
fefe0 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 ow.new.InvalidArgumentException(
ff000 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f sprintf('The."%s".option.does.no
ff020 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 t.exist.',.$name));.}..return.is
ff040 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 29 20 3f 20 24 74 68 set($this->options[$name]).?.$th
ff060 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3a 20 24 74 68 69 73 2d 3e 64 65 66 69 is->options[$name].:.$this->defi
ff080 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 2d 3e 67 65 74 44 65 66 nition->getOption($name)->getDef
ff0a0 61 75 6c 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ault();.}..........public.functi
ff0c0 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 69 66 on.setOption($name,.$value).{.if
ff0e0 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 .(!$this->definition->hasOption(
ff100 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d $name)).{.throw.new.InvalidArgum
ff120 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 6f entException(sprintf('The."%s".o
ff140 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b ption.does.not.exist.',.$name));
ff160 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c .}..$this->options[$name].=.$val
ff180 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 ue;.}.........public.function.ha
ff1a0 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 sOption($name).{.return.$this->d
ff1c0 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a efinition->hasOption($name);.}..
ff1e0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 73 63 61 70 65 54 6f 6b .......public.function.escapeTok
ff200 65 6e 28 24 74 6f 6b 65 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 en($token).{.return.preg_match('
ff220 7b 5e 5b 5c 77 2d 5d 2b 24 7d 27 2c 20 24 74 6f 6b 65 6e 29 20 3f 20 24 74 6f 6b 65 6e 20 3a 20 {^[\w-]+$}',.$token).?.$token.:.
ff240 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 6f 6b 65 6e 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 escapeshellarg($token);.}.}.<?ph
ff260 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f p...........namespace.Symfony\Co
ff280 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 mponent\Console\Input;..use.Symf
ff2a0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c ony\Component\Console\Exception\
ff2c0 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 InvalidArgumentException;.use.Sy
ff2e0 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f mfony\Component\Console\Exceptio
ff300 6e 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e n\LogicException;.......class.In
ff320 70 75 74 41 72 67 75 6d 65 6e 74 0a 7b 0a 63 6f 6e 73 74 20 52 45 51 55 49 52 45 44 20 3d 20 31 putArgument.{.const.REQUIRED.=.1
ff340 3b 0a 63 6f 6e 73 74 20 4f 50 54 49 4f 4e 41 4c 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 49 53 5f 41 ;.const.OPTIONAL.=.2;.const.IS_A
ff360 52 52 41 59 20 3d 20 34 3b 0a 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 61 74 RRAY.=.4;..private.$name;.privat
ff380 65 20 24 6d 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 24 64 65 66 61 75 6c 74 3b 0a 70 72 69 76 61 e.$mode;.private.$default;.priva
ff3a0 74 65 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c te.$description;............publ
ff3c0 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 ic.function.__construct($name,.$
ff3e0 6d 6f 64 65 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 27 27 2c 20 mode.=.null,.$description.=.'',.
ff400 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 $default.=.null).{.if.(null.===.
ff420 24 6d 6f 64 65 29 20 7b 0a 24 6d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 4f 50 54 49 4f 4e 41 4c 3b $mode).{.$mode.=.self::OPTIONAL;
ff440 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 69 6e 74 28 24 6d 6f 64 65 29 20 7c 7c 20 24 6d 6f .}.elseif.(!is_int($mode).||.$mo
ff460 64 65 20 3e 20 37 20 7c 7c 20 24 6d 6f 64 65 20 3c 20 31 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 de.>.7.||.$mode.<.1).{.throw.new
ff480 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 .InvalidArgumentException(sprint
ff4a0 66 28 27 41 72 67 75 6d 65 6e 74 20 6d 6f 64 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 76 61 6c f('Argument.mode."%s".is.not.val
ff4c0 69 64 2e 27 2c 20 24 6d 6f 64 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 id.',.$mode));.}..$this->name.=.
ff4e0 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d 6f 64 65 3b 0a 24 74 68 69 $name;.$this->mode.=.$mode;.$thi
ff500 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a s->description.=.$description;..
ff520 24 74 68 69 73 2d 3e 73 65 74 44 65 66 61 75 6c 74 28 24 64 65 66 61 75 6c 74 29 3b 0a 7d 0a 0a $this->setDefault($default);.}..
ff540 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b .....public.function.getName().{
ff560 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 .return.$this->name;.}.......pub
ff580 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 65 71 75 69 72 65 64 28 29 0a 7b 0a 72 65 74 75 lic.function.isRequired().{.retu
ff5a0 72 6e 20 73 65 6c 66 3a 3a 52 45 51 55 49 52 45 44 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 52 45 51 rn.self::REQUIRED.===.(self::REQ
ff5c0 55 49 52 45 44 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 UIRED.&.$this->mode);.}.......pu
ff5e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 72 72 61 79 28 29 0a 7b 0a 72 65 74 75 72 6e blic.function.isArray().{.return
ff600 20 73 65 6c 66 3a 3a 49 53 5f 41 52 52 41 59 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 49 53 5f 41 52 .self::IS_ARRAY.===.(self::IS_AR
ff620 52 41 59 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 RAY.&.$this->mode);.}.........pu
ff640 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 66 61 75 6c 74 28 24 64 65 66 61 75 6c blic.function.setDefault($defaul
ff660 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 52 45 51 55 49 52 45 44 20 3d t.=.null).{.if.(self::REQUIRED.=
ff680 3d 3d 20 24 74 68 69 73 2d 3e 6d 6f 64 65 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 66 61 ==.$this->mode.&&.null.!==.$defa
ff6a0 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 ult).{.throw.new.LogicException(
ff6c0 27 43 61 6e 6e 6f 74 20 73 65 74 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 65 78 63 65 'Cannot.set.a.default.value.exce
ff6e0 70 74 20 66 6f 72 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 20 6d pt.for.InputArgument::OPTIONAL.m
ff700 6f 64 65 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 28 29 29 ode.');.}..if.($this->isArray())
ff720 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 24 64 65 66 .{.if.(null.===.$default).{.$def
ff740 61 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 61 72 ault.=.array();.}.elseif.(!is_ar
ff760 72 61 79 28 24 64 65 66 61 75 6c 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 ray($default)).{.throw.new.Logic
ff780 45 78 63 65 70 74 69 6f 6e 28 27 41 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 66 6f 72 20 61 Exception('A.default.value.for.a
ff7a0 6e 20 61 72 72 61 79 20 61 72 67 75 6d 65 6e 74 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 72 61 n.array.argument.must.be.an.arra
ff7c0 79 2e 27 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 20 3d 20 24 64 65 66 y.');.}.}..$this->default.=.$def
ff7e0 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 ault;.}.......public.function.ge
ff800 74 44 65 66 61 75 6c 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 61 75 tDefault().{.return.$this->defau
ff820 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 lt;.}.......public.function.getD
ff840 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 73 escription().{.return.$this->des
ff860 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 cription;.}.}.<?php...........na
ff880 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c mespace.Symfony\Component\Consol
ff8a0 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 6e 70 75 74 41 e\Input;........interface.InputA
ff8c0 77 61 72 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 wareInterface.{......public.func
ff8e0 74 69 6f 6e 20 73 65 74 49 6e 70 75 74 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e tion.setInput(InputInterface.$in
ff900 70 75 74 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 put);.}.<?php...........namespac
ff920 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 e.Symfony\Component\Console\Inpu
ff940 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c t;..use.Symfony\Component\Consol
ff960 65 5c 44 65 73 63 72 69 70 74 6f 72 5c 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 e\Descriptor\TextDescriptor;.use
ff980 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 .Symfony\Component\Console\Descr
ff9a0 69 70 74 6f 72 5c 58 6d 6c 44 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 iptor\XmlDescriptor;.use.Symfony
ff9c0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 42 75 66 66 65 72 \Component\Console\Output\Buffer
ff9e0 65 64 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c edOutput;.use.Symfony\Component\
ffa00 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e Console\Exception\InvalidArgumen
ffa20 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e tException;.use.Symfony\Componen
ffa40 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 t\Console\Exception\LogicExcepti
ffa60 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 70 75 74 44 65 66 69 on;..............class.InputDefi
ffa80 6e 69 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 72 67 75 6d 65 6e 74 73 3b 0a 70 72 69 nition.{.private.$arguments;.pri
ffaa0 76 61 74 65 20 24 72 65 71 75 69 72 65 64 43 6f 75 6e 74 3b 0a 70 72 69 76 61 74 65 20 24 68 61 vate.$requiredCount;.private.$ha
ffac0 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 sAnArrayArgument.=.false;.privat
ffae0 65 20 24 68 61 73 4f 70 74 69 6f 6e 61 6c 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 e.$hasOptional;.private.$options
ffb00 3b 0a 70 72 69 76 61 74 65 20 24 73 68 6f 72 74 63 75 74 73 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ;.private.$shortcuts;.......publ
ffb20 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 64 ic.function.__construct(array.$d
ffb40 65 66 69 6e 69 74 69 6f 6e 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 efinition.=.array()).{.$this->se
ffb60 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a tDefinition($definition);.}.....
ffb80 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 ..public.function.setDefinition(
ffba0 61 72 72 61 79 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 0a 7b 0a 24 61 72 67 75 6d 65 6e 74 73 20 array.$definition).{.$arguments.
ffbc0 3d 20 61 72 72 61 79 28 29 3b 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 =.array();.$options.=.array();.f
ffbe0 6f 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 20 61 73 20 24 69 74 65 6d 29 20 7b 0a oreach.($definition.as.$item).{.
ffc00 69 66 20 28 24 69 74 65 6d 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 4f 70 74 69 6f 6e if.($item.instanceof.InputOption
ffc20 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 5d 20 3d 20 24 69 74 65 6d 3b 0a 7d 20 65 6c 73 65 20 7b ).{.$options[].=.$item;.}.else.{
ffc40 0a 24 61 72 67 75 6d 65 6e 74 73 5b 5d 20 3d 20 24 69 74 65 6d 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 .$arguments[].=.$item;.}.}..$thi
ffc60 73 2d 3e 73 65 74 41 72 67 75 6d 65 6e 74 73 28 24 61 72 67 75 6d 65 6e 74 73 29 3b 0a 24 74 68 s->setArguments($arguments);.$th
ffc80 69 73 2d 3e 73 65 74 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a is->setOptions($options);.}.....
ffca0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 72 67 75 6d 65 6e 74 73 28 24 ..public.function.setArguments($
ffcc0 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 arguments.=.array()).{.$this->ar
ffce0 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 guments.=.array();.$this->requir
ffd00 65 64 43 6f 75 6e 74 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 61 6c 20 edCount.=.0;.$this->hasOptional.
ffd20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 =.false;.$this->hasAnArrayArgume
ffd40 6e 74 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 73 28 nt.=.false;.$this->addArguments(
ffd60 24 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 $arguments);.}.......public.func
ffd80 74 69 6f 6e 20 61 64 64 41 72 67 75 6d 65 6e 74 73 28 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 tion.addArguments($arguments.=.a
ffda0 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 61 72 67 75 6d 65 6e 74 rray()).{.if.(null.!==.$argument
ffdc0 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 72 67 75 6d 65 6e 74 73 20 61 73 20 24 61 72 67 s).{.foreach.($arguments.as.$arg
ffde0 75 6d 65 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 28 24 61 72 67 ument).{.$this->addArgument($arg
ffe00 75 6d 65 6e 74 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ument);.}.}.}.........public.fun
ffe20 63 74 69 6f 6e 20 61 64 64 41 72 67 75 6d 65 6e 74 28 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 20 ction.addArgument(InputArgument.
ffe40 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 72 $argument).{.if.(isset($this->ar
ffe60 67 75 6d 65 6e 74 73 5b 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 guments[$argument->getName()])).
ffe80 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e {.throw.new.LogicException(sprin
ffea0 74 66 28 27 41 6e 20 61 72 67 75 6d 65 6e 74 20 77 69 74 68 20 6e 61 6d 65 20 22 25 73 22 20 61 tf('An.argument.with.name."%s".a
ffec0 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e lready.exists.',.$argument->getN
ffee0 61 6d 65 28 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 41 6e 41 72 72 61 ame()));.}..if.($this->hasAnArra
fff00 79 41 72 67 75 6d 65 6e 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 yArgument).{.throw.new.LogicExce
fff20 70 74 69 6f 6e 28 27 43 61 6e 6e 6f 74 20 61 64 64 20 61 6e 20 61 72 67 75 6d 65 6e 74 20 61 66 ption('Cannot.add.an.argument.af
fff40 74 65 72 20 61 6e 20 61 72 72 61 79 20 61 72 67 75 6d 65 6e 74 2e 27 29 3b 0a 7d 0a 0a 69 66 20 ter.an.array.argument.');.}..if.
fff60 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 20 26 26 20 24 74 68 69 ($argument->isRequired().&&.$thi
fff80 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 61 6c 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 s->hasOptional).{.throw.new.Logi
fffa0 63 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6e 6e 6f 74 20 61 64 64 20 61 20 72 65 71 75 69 72 65 cException('Cannot.add.a.require
fffc0 64 20 61 72 67 75 6d 65 6e 74 20 61 66 74 65 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 6f 6e 65 d.argument.after.an.optional.one
fffe0 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 .');.}..if.($argument->isArray()
100000 29 20 7b 0a 24 74 68 69 73 2d 3e 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 20 3d 20 ).{.$this->hasAnArrayArgument.=.
100020 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 true;.}..if.($argument->isRequir
100040 65 64 28 29 29 20 7b 0a 2b 2b 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 64 43 6f 75 6e 74 3b 0a ed()).{.++$this->requiredCount;.
100060 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 61 6c 20 3d 20 74 72 }.else.{.$this->hasOptional.=.tr
100080 75 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 61 72 67 75 6d 65 6e ue;.}..$this->arguments[$argumen
1000a0 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 61 72 67 75 6d 65 6e 74 3b 0a 7d 0a 0a 0a 0a t->getName()].=.$argument;.}....
1000c0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 .......public.function.getArgume
1000e0 6e 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 41 72 67 75 6d nt($name).{.if.(!$this->hasArgum
100100 65 6e 74 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 ent($name)).{.throw.new.InvalidA
100120 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 25 rgumentException(sprintf('The."%
100140 73 22 20 61 72 67 75 6d 65 6e 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e s".argument.does.not.exist.',.$n
100160 61 6d 65 29 29 3b 0a 7d 0a 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 69 73 5f 69 6e 74 28 24 6e ame));.}..$arguments.=.is_int($n
100180 61 6d 65 29 20 3f 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 74 68 69 73 2d 3e 61 72 67 75 6d ame).?.array_values($this->argum
1001a0 65 6e 74 73 29 20 3a 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 3b 0a 0a 72 65 74 75 72 ents).:.$this->arguments;..retur
1001c0 6e 20 24 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 n.$arguments[$name];.}.........p
1001e0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 ublic.function.hasArgument($name
100200 29 0a 7b 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 69 73 5f 69 6e 74 28 24 6e 61 6d 65 29 20 3f ).{.$arguments.=.is_int($name).?
100220 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 20 .array_values($this->arguments).
100240 3a 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 :.$this->arguments;..return.isse
100260 74 28 24 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 t($arguments[$name]);.}.......pu
100280 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 0a 7b 0a 72 blic.function.getArguments().{.r
1002a0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a eturn.$this->arguments;.}.......
1002c0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 43 6f 75 6e 74 public.function.getArgumentCount
1002e0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 6e 41 72 72 61 79 41 72 67 ().{.return.$this->hasAnArrayArg
100300 75 6d 65 6e 74 20 3f 20 50 48 50 5f 49 4e 54 5f 4d 41 58 20 3a 20 63 6f 75 6e 74 28 24 74 68 69 ument.?.PHP_INT_MAX.:.count($thi
100320 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 s->arguments);.}.......public.fu
100340 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 52 65 71 75 69 72 65 64 43 6f 75 6e 74 28 nction.getArgumentRequiredCount(
100360 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 64 43 6f 75 6e 74 3b ).{.return.$this->requiredCount;
100380 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 .}.......public.function.getArgu
1003a0 6d 65 6e 74 44 65 66 61 75 6c 74 73 28 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 61 72 72 61 79 mentDefaults().{.$values.=.array
1003c0 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 61 73 ();.foreach.($this->arguments.as
1003e0 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 76 61 6c 75 65 73 5b 24 61 72 67 75 6d 65 6e 74 2d .$argument).{.$values[$argument-
100400 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 >getName()].=.$argument->getDefa
100420 75 6c 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 73 3b 0a 7d 0a 0a 0a 0a 0a ult();.}..return.$values;.}.....
100440 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 24 6f 70 ..public.function.setOptions($op
100460 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e tions.=.array()).{.$this->option
100480 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 20 3d 20 s.=.array();.$this->shortcuts.=.
1004a0 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 array();.$this->addOptions($opti
1004c0 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 ons);.}.......public.function.ad
1004e0 64 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 66 dOptions($options.=.array()).{.f
100500 6f 72 65 61 63 68 20 28 24 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 oreach.($options.as.$option).{.$
100520 74 68 69 73 2d 3e 61 64 64 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 0a this->addOption($option);.}.}...
100540 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4f 70 74 69 6f 6e 28 ......public.function.addOption(
100560 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 InputOption.$option).{.if.(isset
100580 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 ($this->options[$option->getName
1005a0 28 29 5d 29 20 26 26 20 21 24 6f 70 74 69 6f 6e 2d 3e 65 71 75 61 6c 73 28 24 74 68 69 73 2d 3e ()]).&&.!$option->equals($this->
1005c0 6f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 7b 0a options[$option->getName()])).{.
1005e0 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 throw.new.LogicException(sprintf
100600 28 27 41 6e 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 64 20 22 25 73 22 20 61 6c 72 65 61 64 79 20 65 ('An.option.named."%s".already.e
100620 78 69 73 74 73 2e 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 7d xists.',.$option->getName()));.}
100640 0a 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 7b 0a ..if.($option->getShortcut()).{.
100660 66 6f 72 65 61 63 68 20 28 65 78 70 6c 6f 64 65 28 27 7c 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 foreach.(explode('|',.$option->g
100680 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 61 73 20 24 73 68 6f 72 74 63 75 74 29 20 7b 0a 69 66 etShortcut()).as.$shortcut).{.if
1006a0 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 73 68 6f 72 74 63 .(isset($this->shortcuts[$shortc
1006c0 75 74 5d 29 20 26 26 20 21 24 6f 70 74 69 6f 6e 2d 3e 65 71 75 61 6c 73 28 24 74 68 69 73 2d 3e ut]).&&.!$option->equals($this->
1006e0 6f 70 74 69 6f 6e 73 5b 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 73 68 6f 72 74 63 options[$this->shortcuts[$shortc
100700 75 74 5d 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f ut]])).{.throw.new.LogicExceptio
100720 6e 28 73 70 72 69 6e 74 66 28 27 41 6e 20 6f 70 74 69 6f 6e 20 77 69 74 68 20 73 68 6f 72 74 63 n(sprintf('An.option.with.shortc
100740 75 74 20 22 25 73 22 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 27 2c 20 24 73 68 6f 72 74 ut."%s".already.exists.',.$short
100760 63 75 74 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6f 70 cut));.}.}.}..$this->options[$op
100780 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 6f 70 74 69 6f 6e 3b 0a 69 66 20 28 tion->getName()].=.$option;.if.(
1007a0 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 7b 0a 66 6f 72 65 61 63 $option->getShortcut()).{.foreac
1007c0 68 20 28 65 78 70 6c 6f 64 65 28 27 7c 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 h.(explode('|',.$option->getShor
1007e0 74 63 75 74 28 29 29 20 61 73 20 24 73 68 6f 72 74 63 75 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 tcut()).as.$shortcut).{.$this->s
100800 68 6f 72 74 63 75 74 73 5b 24 73 68 6f 72 74 63 75 74 5d 20 3d 20 24 6f 70 74 69 6f 6e 2d 3e 67 hortcuts[$shortcut].=.$option->g
100820 65 74 4e 61 6d 65 28 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 etName();.}.}.}...........public
100840 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 .function.getOption($name).{.if.
100860 28 21 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 (!$this->hasOption($name)).{.thr
100880 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 ow.new.InvalidArgumentException(
1008a0 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 sprintf('The."--%s".option.does.
1008c0 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 not.exist.',.$name));.}..return.
1008e0 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a $this->options[$name];.}........
100900 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 .public.function.hasOption($name
100920 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b ).{.return.isset($this->options[
100940 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e $name]);.}.......public.function
100960 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 .getOptions().{.return.$this->op
100980 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e tions;.}.........public.function
1009a0 20 68 61 73 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 .hasShortcut($name).{.return.iss
1009c0 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a et($this->shortcuts[$name]);.}..
1009e0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e .......public.function.getOption
100a00 46 6f 72 53 68 6f 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 0a 7b 0a 72 65 74 75 72 6e 20 ForShortcut($shortcut).{.return.
100a20 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 $this->getOption($this->shortcut
100a40 54 6f 4e 61 6d 65 28 24 73 68 6f 72 74 63 75 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ToName($shortcut));.}.......publ
100a60 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 44 65 66 61 75 6c 74 73 28 29 0a ic.function.getOptionDefaults().
100a80 7b 0a 24 76 61 6c 75 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 {.$values.=.array();.foreach.($t
100aa0 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 76 61 6c 75 his->options.as.$option).{.$valu
100ac0 65 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 6f 70 74 69 6f 6e es[$option->getName()].=.$option
100ae0 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 ->getDefault();.}..return.$value
100b00 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 s;.}...........private.function.
100b20 73 68 6f 72 74 63 75 74 54 6f 4e 61 6d 65 28 24 73 68 6f 72 74 63 75 74 29 0a 7b 0a 69 66 20 28 shortcutToName($shortcut).{.if.(
100b40 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 73 68 6f 72 74 63 75 !isset($this->shortcuts[$shortcu
100b60 74 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 t])).{.throw.new.InvalidArgument
100b80 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 25 73 22 20 6f 70 74 Exception(sprintf('The."-%s".opt
100ba0 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 73 68 6f 72 74 63 75 74 29 ion.does.not.exist.',.$shortcut)
100bc0 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 73 );.}..return.$this->shortcuts[$s
100be0 68 6f 72 74 63 75 74 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 hortcut];.}.........public.funct
100c00 69 6f 6e 20 67 65 74 53 79 6e 6f 70 73 69 73 28 24 73 68 6f 72 74 20 3d 20 66 61 6c 73 65 29 0a ion.getSynopsis($short.=.false).
100c20 7b 0a 24 65 6c 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 24 73 68 6f {.$elements.=.array();..if.($sho
100c40 72 74 20 26 26 20 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 29 20 7b 0a 24 65 6c rt.&&.$this->getOptions()).{.$el
100c60 65 6d 65 6e 74 73 5b 5d 20 3d 20 27 5b 6f 70 74 69 6f 6e 73 5d 27 3b 0a 7d 20 65 6c 73 65 69 66 ements[].=.'[options]';.}.elseif
100c80 20 28 21 24 73 68 6f 72 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 .(!$short).{.foreach.($this->get
100ca0 4f 70 74 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 76 61 6c 75 65 20 3d Options().as.$option).{.$value.=
100cc0 20 27 27 3b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 .'';.if.($option->acceptValue())
100ce0 20 7b 0a 24 76 61 6c 75 65 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 20 25 73 25 73 25 73 27 2c 0a .{.$value.=.sprintf(.'.%s%s%s',.
100d00 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 20 3f 20 27 5b 27 $option->isValueOptional().?.'['
100d20 20 3a 20 27 27 2c 0a 73 74 72 74 6f 75 70 70 65 72 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 .:.'',.strtoupper($option->getNa
100d40 6d 65 28 29 29 2c 0a 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 me()),.$option->isValueOptional(
100d60 29 20 3f 20 27 5d 27 20 3a 20 27 27 0a 29 3b 0a 7d 0a 0a 24 73 68 6f 72 74 63 75 74 20 3d 20 24 ).?.']'.:.''.);.}..$shortcut.=.$
100d80 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3f 20 73 70 72 69 6e 74 66 28 option->getShortcut().?.sprintf(
100da0 27 2d 25 73 7c 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 '-%s|',.$option->getShortcut()).
100dc0 3a 20 27 27 3b 0a 24 65 6c 65 6d 65 6e 74 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 5b 25 73 :.'';.$elements[].=.sprintf('[%s
100de0 2d 2d 25 73 25 73 5d 27 2c 20 24 73 68 6f 72 74 63 75 74 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 --%s%s]',.$shortcut,.$option->ge
100e00 74 4e 61 6d 65 28 29 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 tName(),.$value);.}.}..if.(count
100e20 28 24 65 6c 65 6d 65 6e 74 73 29 20 26 26 20 24 74 68 69 73 2d 3e 67 65 74 41 72 67 75 6d 65 6e ($elements).&&.$this->getArgumen
100e40 74 73 28 29 29 20 7b 0a 24 65 6c 65 6d 65 6e 74 73 5b 5d 20 3d 20 27 5b 2d 2d 5d 27 3b 0a 7d 0a ts()).{.$elements[].=.'[--]';.}.
100e60 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 .foreach.($this->getArguments().
100e80 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 65 6c 65 6d 65 6e 74 20 3d 20 27 3c 27 2e 24 as.$argument).{.$element.=.'<'.$
100ea0 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 3e 27 3b 0a 69 66 20 28 21 24 61 argument->getName().'>';.if.(!$a
100ec0 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 29 20 7b 0a 24 65 6c 65 6d 65 6e rgument->isRequired()).{.$elemen
100ee0 74 20 3d 20 27 5b 27 2e 24 65 6c 65 6d 65 6e 74 2e 27 5d 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 t.=.'['.$element.']';.}.elseif.(
100f00 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a 24 65 6c 65 6d 65 6e 74 $argument->isArray()).{.$element
100f20 20 3d 20 24 65 6c 65 6d 65 6e 74 2e 27 20 28 27 2e 24 65 6c 65 6d 65 6e 74 2e 27 29 27 3b 0a 7d .=.$element.'.('.$element.')';.}
100f40 0a 0a 69 66 20 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a 24 65 ..if.($argument->isArray()).{.$e
100f60 6c 65 6d 65 6e 74 20 2e 3d 20 27 2e 2e 2e 27 3b 0a 7d 0a 0a 24 65 6c 65 6d 65 6e 74 73 5b 5d 20 lement..=.'...';.}..$elements[].
100f80 3d 20 24 65 6c 65 6d 65 6e 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 20 =.$element;.}..return.implode('.
100fa0 27 2c 20 24 65 6c 65 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ',.$elements);.}.........public.
100fc0 66 75 6e 63 74 69 6f 6e 20 61 73 54 65 78 74 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 function.asText().{.@trigger_err
100fe0 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 or('The.'.__METHOD__.'.method.is
101000 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 33 20 61 6e .deprecated.since.version.2.3.an
101020 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 d.will.be.removed.in.3.0.',.E_US
101040 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 20 3d 20 6e ER_DEPRECATED);..$descriptor.=.n
101060 65 77 20 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 28 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6e ew.TextDescriptor();.$output.=.n
101080 65 77 20 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 28 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 ew.BufferedOutput(BufferedOutput
1010a0 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 74 72 75 65 29 3b 0a 24 64 65 73 63 ::VERBOSITY_NORMAL,.true);.$desc
1010c0 72 69 70 74 6f 72 2d 3e 64 65 73 63 72 69 62 65 28 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2c riptor->describe($output,.$this,
1010e0 20 61 72 72 61 79 28 27 72 61 77 5f 6f 75 74 70 75 74 27 20 3d 3e 20 74 72 75 65 29 29 3b 0a 0a .array('raw_output'.=>.true));..
101100 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 2d 3e 66 65 74 63 68 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a return.$output->fetch();.}......
101120 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 58 6d 6c 28 24 61 73 44 6f .....public.function.asXml($asDo
101140 6d 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 m.=.false).{.@trigger_error('The
101160 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 .'.__METHOD__.'.method.is.deprec
101180 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 33 20 61 6e 64 20 77 69 6c 6c 20 ated.since.version.2.3.and.will.
1011a0 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 be.removed.in.3.0.',.E_USER_DEPR
1011c0 45 43 41 54 45 44 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 20 3d 20 6e 65 77 20 58 6d 6c 44 ECATED);..$descriptor.=.new.XmlD
1011e0 65 73 63 72 69 70 74 6f 72 28 29 3b 0a 0a 69 66 20 28 24 61 73 44 6f 6d 29 20 7b 0a 72 65 74 75 escriptor();..if.($asDom).{.retu
101200 72 6e 20 24 64 65 73 63 72 69 70 74 6f 72 2d 3e 67 65 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 rn.$descriptor->getInputDefiniti
101220 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 74 68 69 73 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 20 3d 20 onDocument($this);.}..$output.=.
101240 6e 65 77 20 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 28 29 3b 0a 24 64 65 73 63 72 69 70 74 6f new.BufferedOutput();.$descripto
101260 72 2d 3e 64 65 73 63 72 69 62 65 28 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 29 3b 0a 0a 72 65 r->describe($output,.$this);..re
101280 74 75 72 6e 20 24 6f 75 74 70 75 74 2d 3e 66 65 74 63 68 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 turn.$output->fetch();.}.}.<?php
1012a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d ...........namespace.Symfony\Com
1012c0 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 ponent\Console\Input;.......inte
1012e0 72 66 61 63 65 20 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c rface.InputInterface.{......publ
101300 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 72 73 74 41 72 67 75 6d 65 6e 74 28 29 3b 0a ic.function.getFirstArgument();.
101320 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 ...........public.function.hasPa
101340 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a rameterOption($values);.........
101360 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 72 61 6d 65 74 65 72 ....public.function.getParameter
101380 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 66 61 6c 73 65 Option($values,.$default.=.false
1013a0 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 62 69 6e 64 28 49 6e );.......public.function.bind(In
1013c0 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 0a 0a 0a 0a putDefinition.$definition);.....
1013e0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 28 29 3b 0a ....public.function.validate();.
101400 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e ......public.function.getArgumen
101420 74 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 ts();.........public.function.ge
101440 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 tArgument($name);..........publi
101460 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 24 76 c.function.setArgument($name,.$v
101480 61 6c 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 alue);.........public.function.h
1014a0 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 asArgument($name);.......public.
1014c0 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 function.getOptions();.........p
1014e0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 3b ublic.function.getOption($name);
101500 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 ..........public.function.setOpt
101520 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ion($name,.$value);.........publ
101540 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 0a 0a ic.function.hasOption($name);...
101560 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 74 65 72 61 63 74 69 76 ....public.function.isInteractiv
101580 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e e();.......public.function.setIn
1015a0 74 65 72 61 63 74 69 76 65 28 24 69 6e 74 65 72 61 63 74 69 76 65 29 3b 0a 7d 0a 3c 3f 70 68 70 teractive($interactive);.}.<?php
1015c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d ...........namespace.Symfony\Com
1015e0 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f ponent\Console\Input;..use.Symfo
101600 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 ny\Component\Console\Exception\I
101620 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d nvalidArgumentException;.use.Sym
101640 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e fony\Component\Console\Exception
101660 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 70 \LogicException;.......class.Inp
101680 75 74 4f 70 74 69 6f 6e 0a 7b 0a 63 6f 6e 73 74 20 56 41 4c 55 45 5f 4e 4f 4e 45 20 3d 20 31 3b utOption.{.const.VALUE_NONE.=.1;
1016a0 0a 63 6f 6e 73 74 20 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 3d 20 32 3b 0a 63 6f 6e 73 74 .const.VALUE_REQUIRED.=.2;.const
1016c0 20 56 41 4c 55 45 5f 4f 50 54 49 4f 4e 41 4c 20 3d 20 34 3b 0a 63 6f 6e 73 74 20 56 41 4c 55 45 .VALUE_OPTIONAL.=.4;.const.VALUE
1016e0 5f 49 53 5f 41 52 52 41 59 20 3d 20 38 3b 0a 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 _IS_ARRAY.=.8;..private.$name;.p
101700 72 69 76 61 74 65 20 24 73 68 6f 72 74 63 75 74 3b 0a 70 72 69 76 61 74 65 20 24 6d 6f 64 65 3b rivate.$shortcut;.private.$mode;
101720 0a 70 72 69 76 61 74 65 20 24 64 65 66 61 75 6c 74 3b 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 .private.$default;.private.$desc
101740 72 69 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ription;.............public.func
101760 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 73 68 6f 72 74 63 75 tion.__construct($name,.$shortcu
101780 74 20 3d 20 6e 75 6c 6c 2c 20 24 6d 6f 64 65 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 73 63 72 69 70 t.=.null,.$mode.=.null,.$descrip
1017a0 74 69 6f 6e 20 3d 20 27 27 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 tion.=.'',.$default.=.null).{.if
1017c0 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 6e 61 6d 65 2c 20 27 2d 2d 27 29 29 20 7b 0a 24 .(0.===.strpos($name,.'--')).{.$
1017e0 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 32 29 3b 0a 7d 0a 0a 69 66 20 28 name.=.substr($name,.2);.}..if.(
101800 65 6d 70 74 79 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 empty($name)).{.throw.new.Invali
101820 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 41 6e 20 6f 70 74 69 6f 6e 20 6e 61 dArgumentException('An.option.na
101840 6d 65 20 63 61 6e 6e 6f 74 20 62 65 20 65 6d 70 74 79 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 65 6d me.cannot.be.empty.');.}..if.(em
101860 70 74 79 28 24 73 68 6f 72 74 63 75 74 29 29 20 7b 0a 24 73 68 6f 72 74 63 75 74 20 3d 20 6e 75 pty($shortcut)).{.$shortcut.=.nu
101880 6c 6c 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 73 68 6f 72 74 63 75 74 29 20 7b ll;.}..if.(null.!==.$shortcut).{
1018a0 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 73 68 6f 72 74 63 75 74 29 29 20 7b 0a 24 73 68 6f .if.(is_array($shortcut)).{.$sho
1018c0 72 74 63 75 74 20 3d 20 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 73 68 6f 72 74 63 75 74 29 3b rtcut.=.implode('|',.$shortcut);
1018e0 0a 7d 0a 24 73 68 6f 72 74 63 75 74 73 20 3d 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 28 5c 7c .}.$shortcuts.=.preg_split('{(\|
101900 29 2d 3f 7d 27 2c 20 6c 74 72 69 6d 28 24 73 68 6f 72 74 63 75 74 2c 20 27 2d 27 29 29 3b 0a 24 )-?}',.ltrim($shortcut,.'-'));.$
101920 73 68 6f 72 74 63 75 74 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 73 68 6f 72 74 63 shortcuts.=.array_filter($shortc
101940 75 74 73 29 3b 0a 24 73 68 6f 72 74 63 75 74 20 3d 20 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 uts);.$shortcut.=.implode('|',.$
101960 73 68 6f 72 74 63 75 74 73 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 73 68 6f 72 74 63 75 74 shortcuts);..if.(empty($shortcut
101980 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 )).{.throw.new.InvalidArgumentEx
1019a0 63 65 70 74 69 6f 6e 28 27 41 6e 20 6f 70 74 69 6f 6e 20 73 68 6f 72 74 63 75 74 20 63 61 6e 6e ception('An.option.shortcut.cann
1019c0 6f 74 20 62 65 20 65 6d 70 74 79 2e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d ot.be.empty.');.}.}..if.(null.==
1019e0 3d 20 24 6d 6f 64 65 29 20 7b 0a 24 6d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 4e =.$mode).{.$mode.=.self::VALUE_N
101a00 4f 4e 45 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 69 6e 74 28 24 6d 6f 64 65 29 20 7c 7c ONE;.}.elseif.(!is_int($mode).||
101a20 20 24 6d 6f 64 65 20 3e 20 31 35 20 7c 7c 20 24 6d 6f 64 65 20 3c 20 31 29 20 7b 0a 74 68 72 6f .$mode.>.15.||.$mode.<.1).{.thro
101a40 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 w.new.InvalidArgumentException(s
101a60 70 72 69 6e 74 66 28 27 4f 70 74 69 6f 6e 20 6d 6f 64 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 printf('Option.mode."%s".is.not.
101a80 76 61 6c 69 64 2e 27 2c 20 24 6d 6f 64 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 valid.',.$mode));.}..$this->name
101aa0 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 20 3d 20 24 73 68 6f .=.$name;.$this->shortcut.=.$sho
101ac0 72 74 63 75 74 3b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d 6f 64 65 3b 0a 24 74 68 69 rtcut;.$this->mode.=.$mode;.$thi
101ae0 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a s->description.=.$description;..
101b00 69 66 20 28 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 28 29 20 26 26 20 21 24 74 68 69 73 2d 3e if.($this->isArray().&&.!$this->
101b20 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c acceptValue()).{.throw.new.Inval
101b40 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 49 6d 70 6f 73 73 69 62 6c 65 20 idArgumentException('Impossible.
101b60 74 6f 20 68 61 76 65 20 61 6e 20 6f 70 74 69 6f 6e 20 6d 6f 64 65 20 56 41 4c 55 45 5f 49 53 5f to.have.an.option.mode.VALUE_IS_
101b80 41 52 52 41 59 20 69 66 20 74 68 65 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 63 63 ARRAY.if.the.option.does.not.acc
101ba0 65 70 74 20 61 20 76 61 6c 75 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 44 65 66 ept.a.value.');.}..$this->setDef
101bc0 61 75 6c 74 28 24 64 65 66 61 75 6c 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ault($default);.}.......public.f
101be0 75 6e 63 74 69 6f 6e 20 67 65 74 53 68 6f 72 74 63 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 unction.getShortcut().{.return.$
101c00 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 this->shortcut;.}.......public.f
101c20 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 unction.getName().{.return.$this
101c40 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ->name;.}.......public.function.
101c60 61 63 63 65 70 74 56 61 6c 75 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 acceptValue().{.return.$this->is
101c80 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 7c 7c 20 24 74 68 69 73 2d 3e 69 73 56 61 6c 75 ValueRequired().||.$this->isValu
101ca0 65 4f 70 74 69 6f 6e 61 6c 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 eOptional();.}.......public.func
101cc0 74 69 6f 6e 20 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 tion.isValueRequired().{.return.
101ce0 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a self::VALUE_REQUIRED.===.(self::
101d00 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d VALUE_REQUIRED.&.$this->mode);.}
101d20 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 75 65 4f 70 .......public.function.isValueOp
101d40 74 69 6f 6e 61 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 4f 50 tional().{.return.self::VALUE_OP
101d60 54 49 4f 4e 41 4c 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 4f 50 54 49 4f 4e 41 4c TIONAL.===.(self::VALUE_OPTIONAL
101d80 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 .&.$this->mode);.}.......public.
101da0 66 75 6e 63 74 69 6f 6e 20 69 73 41 72 72 61 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 function.isArray().{.return.self
101dc0 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 56 41 4c 55 ::VALUE_IS_ARRAY.===.(self::VALU
101de0 45 5f 49 53 5f 41 52 52 41 59 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a E_IS_ARRAY.&.$this->mode);.}....
101e00 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 66 61 75 6c 74 28 .....public.function.setDefault(
101e20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 56 41 4c $default.=.null).{.if.(self::VAL
101e40 55 45 5f 4e 4f 4e 45 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 20 26 20 UE_NONE.===.(self::VALUE_NONE.&.
101e60 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 66 61 75 6c $this->mode).&&.null.!==.$defaul
101e80 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 43 t).{.throw.new.LogicException('C
101ea0 61 6e 6e 6f 74 20 73 65 74 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 77 68 65 6e 20 75 annot.set.a.default.value.when.u
101ec0 73 69 6e 67 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 20 6d 6f 64 sing.InputOption::VALUE_NONE.mod
101ee0 65 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b e.');.}..if.($this->isArray()).{
101f00 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 24 64 65 66 61 75 .if.(null.===.$default).{.$defau
101f20 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 61 72 72 61 lt.=.array();.}.elseif.(!is_arra
101f40 79 28 24 64 65 66 61 75 6c 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 y($default)).{.throw.new.LogicEx
101f60 63 65 70 74 69 6f 6e 28 27 41 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 20 ception('A.default.value.for.an.
101f80 61 72 72 61 79 20 6f 70 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 72 61 79 2e 27 29 array.option.must.be.an.array.')
101fa0 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 61 ;.}.}..$this->default.=.$this->a
101fc0 63 63 65 70 74 56 61 6c 75 65 28 29 20 3f 20 24 64 65 66 61 75 6c 74 20 3a 20 66 61 6c 73 65 3b cceptValue().?.$default.:.false;
101fe0 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 .}.......public.function.getDefa
102000 75 6c 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 3b 0a 7d ult().{.return.$this->default;.}
102020 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 .......public.function.getDescri
102040 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 ption().{.return.$this->descript
102060 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 ion;.}.........public.function.e
102080 71 75 61 6c 73 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 29 0a 7b 0a 72 65 74 quals(InputOption.$option).{.ret
1020a0 75 72 6e 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d 20 24 74 68 69 73 urn.$option->getName().===.$this
1020c0 2d 3e 67 65 74 4e 61 6d 65 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 ->getName().&&.$option->getShort
1020e0 63 75 74 28 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 0a 26 cut().===.$this->getShortcut().&
102100 26 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3d 3d 3d 20 24 74 68 69 &.$option->getDefault().===.$thi
102120 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 s->getDefault().&&.$option->isAr
102140 72 61 79 28 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 28 29 0a 26 26 20 24 6f ray().===.$this->isArray().&&.$o
102160 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 3d 3d 3d 20 24 74 68 ption->isValueRequired().===.$th
102180 69 73 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e is->isValueRequired().&&.$option
1021a0 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 ->isValueOptional().===.$this->i
1021c0 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 0a 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a sValueOptional().;.}.}.<?php....
1021e0 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 .......namespace.Symfony\Compone
102200 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 nt\Console\Input;..use.Symfony\C
102220 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c omponent\Console\Exception\Inval
102240 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 idArgumentException;...........c
102260 6c 61 73 73 20 53 74 72 69 6e 67 49 6e 70 75 74 20 65 78 74 65 6e 64 73 20 41 72 67 76 49 6e 70 lass.StringInput.extends.ArgvInp
102280 75 74 0a 7b 0a 63 6f 6e 73 74 20 52 45 47 45 58 5f 53 54 52 49 4e 47 20 3d 20 27 28 5b 5e 5c 73 ut.{.const.REGEX_STRING.=.'([^\s
1022a0 5d 2b 3f 29 28 3f 3a 5c 73 7c 28 3f 3c 21 5c 5c 5c 5c 29 22 7c 28 3f 3c 21 5c 5c 5c 5c 29 5c 27 ]+?)(?:\s|(?<!\\\\)"|(?<!\\\\)\'
1022c0 7c 24 29 27 3b 0a 63 6f 6e 73 74 20 52 45 47 45 58 5f 51 55 4f 54 45 44 5f 53 54 52 49 4e 47 20 |$)';.const.REGEX_QUOTED_STRING.
1022e0 3d 20 27 28 3f 3a 22 28 5b 5e 22 5c 5c 5c 5c 5d 2a 28 3f 3a 5c 5c 5c 5c 2e 5b 5e 22 5c 5c 5c 5c =.'(?:"([^"\\\\]*(?:\\\\.[^"\\\\
102300 5d 2a 29 2a 29 22 7c 5c 27 28 5b 5e 5c 27 5c 5c 5c 5c 5d 2a 28 3f 3a 5c 5c 5c 5c 2e 5b 5e 5c 27 ]*)*)"|\'([^\'\\\\]*(?:\\\\.[^\'
102320 5c 5c 5c 5c 5d 2a 29 2a 29 5c 27 29 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 \\\\]*)*)\')';..........public.f
102340 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6e 70 75 74 2c 20 49 6e 70 75 unction.__construct($input,.Inpu
102360 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a tDefinition.$definition.=.null).
102380 7b 0a 69 66 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 {.if.($definition).{.@trigger_er
1023a0 72 6f 72 28 27 54 68 65 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 20 6f 66 ror('The.$definition.argument.of
1023c0 20 74 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 .the.'.__METHOD__.'.method.is.de
1023e0 70 72 65 63 61 74 65 64 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 precated.and.will.be.removed.in.
102400 33 2e 30 2e 20 53 65 74 20 74 68 69 73 20 70 61 72 61 6d 65 74 65 72 20 77 69 74 68 20 74 68 65 3.0..Set.this.parameter.with.the
102420 20 62 69 6e 64 28 29 20 6d 65 74 68 6f 64 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 .bind().method.instead.',.E_USER
102440 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 _DEPRECATED);.}..parent::__const
102460 72 75 63 74 28 61 72 72 61 79 28 29 2c 20 6e 75 6c 6c 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 ruct(array(),.null);..$this->set
102480 54 6f 6b 65 6e 73 28 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 69 7a 65 28 24 69 6e 70 75 74 29 29 3b Tokens($this->tokenize($input));
1024a0 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 24 74 ..if.(null.!==.$definition).{.$t
1024c0 68 69 73 2d 3e 62 69 6e 64 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a his->bind($definition);.}.}.....
1024e0 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 74 6f 6b 65 6e 69 7a 65 28 ......private.function.tokenize(
102500 24 69 6e 70 75 74 29 0a 7b 0a 24 74 6f 6b 65 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6c 65 $input).{.$tokens.=.array();.$le
102520 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 69 6e 70 75 74 29 3b 0a 24 63 75 72 73 6f 72 20 3d ngth.=.strlen($input);.$cursor.=
102540 20 30 3b 0a 77 68 69 6c 65 20 28 24 63 75 72 73 6f 72 20 3c 20 24 6c 65 6e 67 74 68 29 20 7b 0a .0;.while.($cursor.<.$length).{.
102560 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5c 73 2b 2f 41 27 2c 20 24 69 6e 70 75 74 2c if.(preg_match('/\s+/A',.$input,
102580 20 24 6d 61 74 63 68 2c 20 6e 75 6c 6c 2c 20 24 63 75 72 73 6f 72 29 29 20 7b 0a 7d 20 65 6c 73 .$match,.null,.$cursor)).{.}.els
1025a0 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 28 5b 5e 3d 22 5c 27 5c 73 5d 2b 3f 29 28 eif.(preg_match('/([^="\'\s]+?)(
1025c0 3d 3f 29 28 27 2e 73 65 6c 66 3a 3a 52 45 47 45 58 5f 51 55 4f 54 45 44 5f 53 54 52 49 4e 47 2e =?)('.self::REGEX_QUOTED_STRING.
1025e0 27 2b 29 2f 41 27 2c 20 24 69 6e 70 75 74 2c 20 24 6d 61 74 63 68 2c 20 6e 75 6c 6c 2c 20 24 63 '+)/A',.$input,.$match,.null,.$c
102600 75 72 73 6f 72 29 29 20 7b 0a 24 74 6f 6b 65 6e 73 5b 5d 20 3d 20 24 6d 61 74 63 68 5b 31 5d 2e ursor)).{.$tokens[].=.$match[1].
102620 24 6d 61 74 63 68 5b 32 5d 2e 73 74 72 69 70 63 73 6c 61 73 68 65 73 28 73 74 72 5f 72 65 70 6c $match[2].stripcslashes(str_repl
102640 61 63 65 28 61 72 72 61 79 28 27 22 5c 27 27 2c 20 27 5c 27 22 27 2c 20 27 5c 27 5c 27 27 2c 20 ace(array('"\'',.'\'"',.'\'\'',.
102660 27 22 22 27 29 2c 20 27 27 2c 20 73 75 62 73 74 72 28 24 6d 61 74 63 68 5b 33 5d 2c 20 31 2c 20 '""'),.'',.substr($match[3],.1,.
102680 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 33 5d 29 20 2d 20 32 29 29 29 3b 0a 7d 20 65 6c 73 65 strlen($match[3]).-.2)));.}.else
1026a0 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 27 2e 73 65 6c 66 3a 3a 52 45 47 45 58 5f 51 if.(preg_match('/'.self::REGEX_Q
1026c0 55 4f 54 45 44 5f 53 54 52 49 4e 47 2e 27 2f 41 27 2c 20 24 69 6e 70 75 74 2c 20 24 6d 61 74 63 UOTED_STRING.'/A',.$input,.$matc
1026e0 68 2c 20 6e 75 6c 6c 2c 20 24 63 75 72 73 6f 72 29 29 20 7b 0a 24 74 6f 6b 65 6e 73 5b 5d 20 3d h,.null,.$cursor)).{.$tokens[].=
102700 20 73 74 72 69 70 63 73 6c 61 73 68 65 73 28 73 75 62 73 74 72 28 24 6d 61 74 63 68 5b 30 5d 2c .stripcslashes(substr($match[0],
102720 20 31 2c 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 20 2d 20 32 29 29 3b 0a 7d 20 65 .1,.strlen($match[0]).-.2));.}.e
102740 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 27 2e 73 65 6c 66 3a 3a 52 45 47 45 lseif.(preg_match('/'.self::REGE
102760 58 5f 53 54 52 49 4e 47 2e 27 2f 41 27 2c 20 24 69 6e 70 75 74 2c 20 24 6d 61 74 63 68 2c 20 6e X_STRING.'/A',.$input,.$match,.n
102780 75 6c 6c 2c 20 24 63 75 72 73 6f 72 29 29 20 7b 0a 24 74 6f 6b 65 6e 73 5b 5d 20 3d 20 73 74 72 ull,.$cursor)).{.$tokens[].=.str
1027a0 69 70 63 73 6c 61 73 68 65 73 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a ipcslashes($match[1]);.}.else.{.
1027c0 0a 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 ..throw.new.InvalidArgumentExcep
1027e0 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 61 62 6c 65 20 74 6f 20 70 61 72 73 65 20 69 6e tion(sprintf('Unable.to.parse.in
102800 70 75 74 20 6e 65 61 72 20 22 2e 2e 2e 20 25 73 20 2e 2e 2e 22 27 2c 20 73 75 62 73 74 72 28 24 put.near."....%s...."',.substr($
102820 69 6e 70 75 74 2c 20 24 63 75 72 73 6f 72 2c 20 31 30 29 29 29 3b 0a 7d 0a 0a 24 63 75 72 73 6f input,.$cursor,.10)));.}..$curso
102840 72 20 2b 3d 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 r.+=.strlen($match[0]);.}..retur
102860 6e 20 24 74 6f 6b 65 6e 73 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 30 n.$tokens;.}.}.Copyright.(c).200
102880 34 2d 32 30 31 36 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 0a 0a 50 65 72 6d 69 73 73 4-2016.Fabien.Potencier..Permiss
1028a0 69 6f 6e 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 ion.is.hereby.granted,.free.of.c
1028c0 68 61 72 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 harge,.to.any.person.obtaining.a
1028e0 20 63 6f 70 79 0a 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 .copy.of.this.software.and.assoc
102900 69 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 iated.documentation.files.(the."
102920 53 6f 66 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 68 65 20 53 6f 66 74 77 Software"),.to.deal.in.the.Softw
102940 61 72 65 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 are.without.restriction,.includi
102960 6e 67 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 ng.without.limitation.the.rights
102980 0a 74 6f 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 .to.use,.copy,.modify,.merge,.pu
1029a0 62 6c 69 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 blish,.distribute,.sublicense,.a
1029c0 6e 64 2f 6f 72 20 73 65 6c 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 nd/or.sell.copies.of.the.Softwar
1029e0 65 2c 20 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d e,.and.to.permit.persons.to.whom
102a00 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 0a 74 6f 20 64 6f .the.Software.is.furnished.to.do
102a20 20 73 6f 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f .so,.subject.to.the.following.co
102a40 6e 64 69 74 69 6f 6e 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e nditions:..The.above.copyright.n
102a60 6f 74 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 otice.and.this.permission.notice
102a80 20 73 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 .shall.be.included.in.all.copies
102aa0 20 6f 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 .or.substantial.portions.of.the.
102ac0 53 6f 66 74 77 61 72 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 Software...THE.SOFTWARE.IS.PROVI
102ae0 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 DED."AS.IS",.WITHOUT.WARRANTY.OF
102b00 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 .ANY.KIND,.EXPRESS.OR.IMPLIED,.I
102b20 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 NCLUDING.BUT.NOT.LIMITED.TO.THE.
102b40 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 WARRANTIES.OF.MERCHANTABILITY,.F
102b60 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 ITNESS.FOR.A.PARTICULAR.PURPOSE.
102b80 41 4e 44 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 AND.NONINFRINGEMENT..IN.NO.EVENT
102ba0 20 53 48 41 4c 4c 20 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 .SHALL.THE.AUTHORS.OR.COPYRIGHT.
102bc0 48 4f 4c 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c HOLDERS.BE.LIABLE.FOR.ANY.CLAIM,
102be0 20 44 41 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 .DAMAGES.OR.OTHER.LIABILITY,.WHE
102c00 54 48 45 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 THER.IN.AN.ACTION.OF.CONTRACT,.T
102c20 4f 52 54 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a ORT.OR.OTHERWISE,.ARISING.FROM,.
102c40 4f 55 54 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 OUT.OF.OR.IN.CONNECTION.WITH.THE
102c60 20 53 4f 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 .SOFTWARE.OR.THE.USE.OR.OTHER.DE
102c80 41 4c 49 4e 47 53 20 49 4e 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 0a 0a 0a ALINGS.IN.THE.SOFTWARE..<?php...
102ca0 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e ........namespace.Symfony\Compon
102cc0 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4c 6f 67 67 65 72 3b 0a 0a 75 73 65 20 50 73 72 5c 4c 6f 67 ent\Console\Logger;..use.Psr\Log
102ce0 5c 41 62 73 74 72 61 63 74 4c 6f 67 67 65 72 3b 0a 75 73 65 20 50 73 72 5c 4c 6f 67 5c 49 6e 76 \AbstractLogger;.use.Psr\Log\Inv
102d00 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 50 73 72 5c 4c alidArgumentException;.use.Psr\L
102d20 6f 67 5c 4c 6f 67 4c 65 76 65 6c 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 og\LogLevel;.use.Symfony\Compone
102d40 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 nt\Console\Output\OutputInterfac
102d60 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 e;.use.Symfony\Component\Console
102d80 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a \Output\ConsoleOutputInterface;.
102da0 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 4c 6f 67 67 65 72 20 65 78 74 65 ........class.ConsoleLogger.exte
102dc0 6e 64 73 20 41 62 73 74 72 61 63 74 4c 6f 67 67 65 72 0a 7b 0a 63 6f 6e 73 74 20 49 4e 46 4f 20 nds.AbstractLogger.{.const.INFO.
102de0 3d 20 27 69 6e 66 6f 27 3b 0a 63 6f 6e 73 74 20 45 52 52 4f 52 20 3d 20 27 65 72 72 6f 72 27 3b =.'info';.const.ERROR.=.'error';
102e00 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 70 72 69 76 61 74 65 .....private.$output;....private
102e20 20 24 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 20 3d 20 61 72 72 61 79 28 0a 4c 6f 67 .$verbosityLevelMap.=.array(.Log
102e40 4c 65 76 65 6c 3a 3a 45 4d 45 52 47 45 4e 43 59 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 Level::EMERGENCY.=>.OutputInterf
102e60 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 0a 4c 6f 67 4c 65 76 65 6c 3a ace::VERBOSITY_NORMAL,.LogLevel:
102e80 3a 41 4c 45 52 54 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f :ALERT.=>.OutputInterface::VERBO
102ea0 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 43 52 49 54 49 43 41 4c 20 SITY_NORMAL,.LogLevel::CRITICAL.
102ec0 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f =>.OutputInterface::VERBOSITY_NO
102ee0 52 4d 41 4c 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 45 52 52 4f 52 20 3d 3e 20 4f 75 74 70 75 74 49 RMAL,.LogLevel::ERROR.=>.OutputI
102f00 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 0a 4c 6f 67 4c nterface::VERBOSITY_NORMAL,.LogL
102f20 65 76 65 6c 3a 3a 57 41 52 4e 49 4e 47 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 evel::WARNING.=>.OutputInterface
102f40 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 4e 4f ::VERBOSITY_NORMAL,.LogLevel::NO
102f60 54 49 43 45 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 TICE.=>.OutputInterface::VERBOSI
102f80 54 59 5f 56 45 52 42 4f 53 45 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 49 4e 46 4f 20 3d 3e 20 4f 75 TY_VERBOSE,.LogLevel::INFO.=>.Ou
102fa0 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 tputInterface::VERBOSITY_VERY_VE
102fc0 52 42 4f 53 45 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 44 45 42 55 47 20 3d 3e 20 4f 75 74 70 75 74 RBOSE,.LogLevel::DEBUG.=>.Output
102fe0 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 2c 0a 29 3b 0a 0a Interface::VERBOSITY_DEBUG,.);..
103000 0a 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 70 20 3d 20 61 72 72 61 ..private.$formatLevelMap.=.arra
103020 79 28 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 45 4d 45 52 47 45 4e 43 59 20 3d 3e 20 73 65 6c 66 3a 3a y(.LogLevel::EMERGENCY.=>.self::
103040 45 52 52 4f 52 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 41 4c 45 52 54 20 3d 3e 20 73 65 6c 66 3a 3a ERROR,.LogLevel::ALERT.=>.self::
103060 45 52 52 4f 52 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 43 52 49 54 49 43 41 4c 20 3d 3e 20 73 65 6c ERROR,.LogLevel::CRITICAL.=>.sel
103080 66 3a 3a 45 52 52 4f 52 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 45 52 52 4f 52 20 3d 3e 20 73 65 6c f::ERROR,.LogLevel::ERROR.=>.sel
1030a0 66 3a 3a 45 52 52 4f 52 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 57 41 52 4e 49 4e 47 20 3d 3e 20 73 f::ERROR,.LogLevel::WARNING.=>.s
1030c0 65 6c 66 3a 3a 49 4e 46 4f 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 4e 4f 54 49 43 45 20 3d 3e 20 73 elf::INFO,.LogLevel::NOTICE.=>.s
1030e0 65 6c 66 3a 3a 49 4e 46 4f 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 49 4e 46 4f 20 3d 3e 20 73 65 6c elf::INFO,.LogLevel::INFO.=>.sel
103100 66 3a 3a 49 4e 46 4f 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 44 45 42 55 47 20 3d 3e 20 73 65 6c 66 f::INFO,.LogLevel::DEBUG.=>.self
103120 3a 3a 49 4e 46 4f 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ::INFO,.);.......public.function
103140 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 .__construct(OutputInterface.$ou
103160 74 70 75 74 2c 20 61 72 72 61 79 20 24 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 20 3d tput,.array.$verbosityLevelMap.=
103180 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 70 20 .array(),.array.$formatLevelMap.
1031a0 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 =.array()).{.$this->output.=.$ou
1031c0 74 70 75 74 3b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 20 3d tput;.$this->verbosityLevelMap.=
1031e0 20 24 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 20 2b 20 24 74 68 69 73 2d 3e 76 65 72 .$verbosityLevelMap.+.$this->ver
103200 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 3b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 65 76 bosityLevelMap;.$this->formatLev
103220 65 6c 4d 61 70 20 3d 20 24 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 70 20 2b 20 24 74 68 69 73 2d elMap.=.$formatLevelMap.+.$this-
103240 3e 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 >formatLevelMap;.}.....public.fu
103260 6e 63 74 69 6f 6e 20 6c 6f 67 28 24 6c 65 76 65 6c 2c 20 24 6d 65 73 73 61 67 65 2c 20 61 72 72 nction.log($level,.$message,.arr
103280 61 79 20 24 63 6f 6e 74 65 78 74 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 21 69 73 ay.$context.=.array()).{.if.(!is
1032a0 73 65 74 28 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 5b 24 6c 65 set($this->verbosityLevelMap[$le
1032c0 76 65 6c 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 vel])).{.throw.new.InvalidArgume
1032e0 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 6c 6f 67 20 6c 65 76 ntException(sprintf('The.log.lev
103300 65 6c 20 22 25 73 22 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6c 65 76 65 6c el."%s".does.not.exist.',.$level
103320 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 65 76 65 6c 4d ));.}....if.($this->formatLevelM
103340 61 70 5b 24 6c 65 76 65 6c 5d 20 3d 3d 3d 20 73 65 6c 66 3a 3a 45 52 52 4f 52 20 26 26 20 24 74 ap[$level].===.self::ERROR.&&.$t
103360 68 69 73 2d 3e 6f 75 74 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 6f 6c 65 4f 75 his->output.instanceof.ConsoleOu
103380 74 70 75 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 tputInterface).{.$output.=.$this
1033a0 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 7d 20 65 6c ->output->getErrorOutput();.}.el
1033c0 73 65 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 7d 0a se.{.$output.=.$this->output;.}.
1033e0 0a 69 66 20 28 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 20 3e 3d 20 .if.($output->getVerbosity().>=.
103400 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 5b 24 6c 65 76 65 6c 5d $this->verbosityLevelMap[$level]
103420 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 3c 25 ).{.$output->writeln(sprintf('<%
103440 31 24 73 3e 5b 25 32 24 73 5d 20 25 33 24 73 3c 2f 25 31 24 73 3e 27 2c 20 24 74 68 69 73 2d 3e 1$s>[%2$s].%3$s</%1$s>',.$this->
103460 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 70 5b 24 6c 65 76 65 6c 5d 2c 20 24 6c 65 76 65 6c 2c 20 formatLevelMap[$level],.$level,.
103480 24 74 68 69 73 2d 3e 69 6e 74 65 72 70 6f 6c 61 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 63 6f $this->interpolate($message,.$co
1034a0 6e 74 65 78 74 29 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 ntext)));.}.}............private
1034c0 20 66 75 6e 63 74 69 6f 6e 20 69 6e 74 65 72 70 6f 6c 61 74 65 28 24 6d 65 73 73 61 67 65 2c 20 .function.interpolate($message,.
1034e0 61 72 72 61 79 20 24 63 6f 6e 74 65 78 74 29 0a 7b 0a 0a 20 24 72 65 70 6c 61 63 65 20 3d 20 61 array.$context).{...$replace.=.a
103500 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 74 65 78 74 20 61 73 20 24 6b 65 rray();.foreach.($context.as.$ke
103520 79 20 3d 3e 20 24 76 61 6c 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 29 y.=>.$val).{.if.(!is_array($val)
103540 20 26 26 20 28 21 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 29 20 7c 7c 20 6d 65 74 68 6f 64 5f .&&.(!is_object($val).||.method_
103560 65 78 69 73 74 73 28 24 76 61 6c 2c 20 27 5f 5f 74 6f 53 74 72 69 6e 67 27 29 29 29 20 7b 0a 24 exists($val,.'__toString'))).{.$
103580 72 65 70 6c 61 63 65 5b 73 70 72 69 6e 74 66 28 27 7b 25 73 7d 27 2c 20 24 6b 65 79 29 5d 20 3d replace[sprintf('{%s}',.$key)].=
1035a0 20 24 76 61 6c 3b 0a 7d 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 73 74 72 74 72 28 24 6d 65 73 73 .$val;.}.}....return.strtr($mess
1035c0 61 67 65 2c 20 24 72 65 70 6c 61 63 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a age,.$replace);.}.}.<?php.......
1035e0 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c ....namespace.Symfony\Component\
103600 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 42 75 66 66 65 72 Console\Output;.....class.Buffer
103620 65 64 4f 75 74 70 75 74 20 65 78 74 65 6e 64 73 20 4f 75 74 70 75 74 0a 7b 0a 0a 0a 0a 70 72 69 edOutput.extends.Output.{....pri
103640 76 61 74 65 20 24 62 75 66 66 65 72 20 3d 20 27 27 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 vate.$buffer.=.'';.......public.
103660 66 75 6e 63 74 69 6f 6e 20 66 65 74 63 68 28 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 24 74 function.fetch().{.$content.=.$t
103680 68 69 73 2d 3e 62 75 66 66 65 72 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 20 3d 20 27 27 3b his->buffer;.$this->buffer.=.'';
1036a0 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 74 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 ..return.$content;.}.....protect
1036c0 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e ed.function.doWrite($message,.$n
1036e0 65 77 6c 69 6e 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 20 2e 3d 20 24 6d 65 73 73 ewline).{.$this->buffer..=.$mess
103700 61 67 65 3b 0a 0a 69 66 20 28 24 6e 65 77 6c 69 6e 65 29 20 7b 0a 24 74 68 69 73 2d 3e 62 75 66 age;..if.($newline).{.$this->buf
103720 66 65 72 20 2e 3d 20 22 5c 6e 22 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a fer..=."\n";.}.}.}.<?php........
103740 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 ...namespace.Symfony\Component\C
103760 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 onsole\Output;..use.Symfony\Comp
103780 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f onent\Console\Formatter\OutputFo
1037a0 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a rmatterInterface;...............
1037c0 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 20 65 78 74 65 6e 64 73 20 53 74 72 65 class.ConsoleOutput.extends.Stre
1037e0 61 6d 4f 75 74 70 75 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 amOutput.implements.ConsoleOutpu
103800 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 74 64 65 72 72 3b tInterface.{....private.$stderr;
103820 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 .........public.function.__const
103840 72 75 63 74 28 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 ruct($verbosity.=.self::VERBOSIT
103860 59 5f 4e 4f 52 4d 41 4c 2c 20 24 64 65 63 6f 72 61 74 65 64 20 3d 20 6e 75 6c 6c 2c 20 4f 75 74 Y_NORMAL,.$decorated.=.null,.Out
103880 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 putFormatterInterface.$formatter
1038a0 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 .=.null).{.parent::__construct($
1038c0 74 68 69 73 2d 3e 6f 70 65 6e 4f 75 74 70 75 74 53 74 72 65 61 6d 28 29 2c 20 24 76 65 72 62 6f this->openOutputStream(),.$verbo
1038e0 73 69 74 79 2c 20 24 64 65 63 6f 72 61 74 65 64 2c 20 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 0a sity,.$decorated,.$formatter);..
103900 24 61 63 74 75 61 6c 44 65 63 6f 72 61 74 65 64 20 3d 20 24 74 68 69 73 2d 3e 69 73 44 65 63 6f $actualDecorated.=.$this->isDeco
103920 72 61 74 65 64 28 29 3b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 20 3d 20 6e 65 77 20 53 74 72 rated();.$this->stderr.=.new.Str
103940 65 61 6d 4f 75 74 70 75 74 28 24 74 68 69 73 2d 3e 6f 70 65 6e 45 72 72 6f 72 53 74 72 65 61 6d eamOutput($this->openErrorStream
103960 28 29 2c 20 24 76 65 72 62 6f 73 69 74 79 2c 20 24 64 65 63 6f 72 61 74 65 64 2c 20 24 74 68 69 (),.$verbosity,.$decorated,.$thi
103980 73 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d s->getFormatter());..if.(null.==
1039a0 3d 20 24 64 65 63 6f 72 61 74 65 64 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 44 65 63 6f 72 61 =.$decorated).{.$this->setDecora
1039c0 74 65 64 28 24 61 63 74 75 61 6c 44 65 63 6f 72 61 74 65 64 20 26 26 20 24 74 68 69 73 2d 3e 73 ted($actualDecorated.&&.$this->s
1039e0 74 64 65 72 72 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 tderr->isDecorated());.}.}.....p
103a00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 ublic.function.setDecorated($dec
103a20 6f 72 61 74 65 64 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 orated).{.parent::setDecorated($
103a40 64 65 63 6f 72 61 74 65 64 29 3b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 2d 3e 73 65 74 44 65 decorated);.$this->stderr->setDe
103a60 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 corated($decorated);.}.....publi
103a80 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 6d 61 74 74 65 72 28 4f 75 74 70 75 74 46 6f c.function.setFormatter(OutputFo
103aa0 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 29 0a 7b 0a 70 rmatterInterface.$formatter).{.p
103ac0 61 72 65 6e 74 3a 3a 73 65 74 46 6f 72 6d 61 74 74 65 72 28 24 66 6f 72 6d 61 74 74 65 72 29 3b arent::setFormatter($formatter);
103ae0 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 2d 3e 73 65 74 46 6f 72 6d 61 74 74 65 72 28 24 66 6f .$this->stderr->setFormatter($fo
103b00 72 6d 61 74 74 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 rmatter);.}.....public.function.
103b20 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 73 setVerbosity($level).{.parent::s
103b40 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 3b 0a 24 74 68 69 73 2d 3e 73 74 64 65 etVerbosity($level);.$this->stde
103b60 72 72 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 3b 0a 7d 0a 0a 0a 0a 0a rr->setVerbosity($level);.}.....
103b80 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 public.function.getErrorOutput()
103ba0 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 64 65 72 72 3b 0a 7d 0a 0a 0a 0a 0a 70 .{.return.$this->stderr;.}.....p
103bc0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 4f 75 ublic.function.setErrorOutput(Ou
103be0 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 65 72 72 6f 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 tputInterface.$error).{.$this->s
103c00 74 64 65 72 72 20 3d 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 tderr.=.$error;.}........protect
103c20 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 64 6f 75 74 53 75 70 70 6f 72 74 28 29 0a 7b ed.function.hasStdoutSupport().{
103c40 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 .return.false.===.$this->isRunni
103c60 6e 67 4f 53 34 30 30 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 ngOS400();.}........protected.fu
103c80 6e 63 74 69 6f 6e 20 68 61 73 53 74 64 65 72 72 53 75 70 70 6f 72 74 28 29 0a 7b 0a 72 65 74 75 nction.hasStderrSupport().{.retu
103ca0 72 6e 20 66 61 6c 73 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 4f 53 34 rn.false.===.$this->isRunningOS4
103cc0 30 30 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 00();.}........private.function.
103ce0 69 73 52 75 6e 6e 69 6e 67 4f 53 34 30 30 28 29 0a 7b 0a 24 63 68 65 63 6b 73 20 3d 20 61 72 72 isRunningOS400().{.$checks.=.arr
103d00 61 79 28 0a 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 68 70 5f 75 6e 61 6d 65 27 29 ay(.function_exists('php_uname')
103d20 20 3f 20 70 68 70 5f 75 6e 61 6d 65 28 27 73 27 29 20 3a 20 27 27 2c 0a 67 65 74 65 6e 76 28 27 .?.php_uname('s').:.'',.getenv('
103d40 4f 53 54 59 50 45 27 29 2c 0a 50 48 50 5f 4f 53 2c 0a 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c OSTYPE'),.PHP_OS,.);..return.fal
103d60 73 65 20 21 3d 3d 20 73 74 72 69 70 6f 73 28 69 6d 70 6c 6f 64 65 28 27 3b 27 2c 20 24 63 68 65 se.!==.stripos(implode(';',.$che
103d80 63 6b 73 29 2c 20 27 4f 53 34 30 30 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 cks),.'OS400');.}.....private.fu
103da0 6e 63 74 69 6f 6e 20 6f 70 65 6e 4f 75 74 70 75 74 53 74 72 65 61 6d 28 29 0a 7b 0a 24 6f 75 74 nction.openOutputStream().{.$out
103dc0 70 75 74 53 74 72 65 61 6d 20 3d 20 24 74 68 69 73 2d 3e 68 61 73 53 74 64 6f 75 74 53 75 70 70 putStream.=.$this->hasStdoutSupp
103de0 6f 72 74 28 29 20 3f 20 27 70 68 70 3a 2f 2f 73 74 64 6f 75 74 27 20 3a 20 27 70 68 70 3a 2f 2f ort().?.'php://stdout'.:.'php://
103e00 6f 75 74 70 75 74 27 3b 0a 0a 72 65 74 75 72 6e 20 40 66 6f 70 65 6e 28 24 6f 75 74 70 75 74 53 output';..return.@fopen($outputS
103e20 74 72 65 61 6d 2c 20 27 77 27 29 20 3f 3a 20 66 6f 70 65 6e 28 27 70 68 70 3a 2f 2f 6f 75 74 70 tream,.'w').?:.fopen('php://outp
103e40 75 74 27 2c 20 27 77 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f ut',.'w');.}.....private.functio
103e60 6e 20 6f 70 65 6e 45 72 72 6f 72 53 74 72 65 61 6d 28 29 0a 7b 0a 24 65 72 72 6f 72 53 74 72 65 n.openErrorStream().{.$errorStre
103e80 61 6d 20 3d 20 24 74 68 69 73 2d 3e 68 61 73 53 74 64 65 72 72 53 75 70 70 6f 72 74 28 29 20 3f am.=.$this->hasStderrSupport().?
103ea0 20 27 70 68 70 3a 2f 2f 73 74 64 65 72 72 27 20 3a 20 27 70 68 70 3a 2f 2f 6f 75 74 70 75 74 27 .'php://stderr'.:.'php://output'
103ec0 3b 0a 0a 72 65 74 75 72 6e 20 66 6f 70 65 6e 28 24 65 72 72 6f 72 53 74 72 65 61 6d 2c 20 27 77 ;..return.fopen($errorStream,.'w
103ee0 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 ');.}.}.<?php...........namespac
103f00 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 e.Symfony\Component\Console\Outp
103f20 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 ut;........interface.ConsoleOutp
103f40 75 74 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 4f 75 74 70 75 74 49 6e 74 65 72 66 utInterface.extends.OutputInterf
103f60 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 ace.{......public.function.getEr
103f80 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 rorOutput();.......public.functi
103fa0 6f 6e 20 73 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 on.setErrorOutput(OutputInterfac
103fc0 65 20 24 65 72 72 6f 72 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d e.$error);.}.<?php...........nam
103fe0 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 espace.Symfony\Component\Console
104000 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c \Output;..use.Symfony\Component\
104020 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 Console\Formatter\OutputFormatte
104040 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 r;.use.Symfony\Component\Console
104060 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 \Formatter\OutputFormatterInterf
104080 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 75 6c 6c 4f 75 74 70 75 74 20 69 ace;..........class.NullOutput.i
1040a0 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 mplements.OutputInterface.{....p
1040c0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 6d 61 74 74 65 72 28 4f 75 74 70 ublic.function.setFormatter(Outp
1040e0 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 29 utFormatterInterface.$formatter)
104100 0a 7b 0a 0a 20 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 6f .{...}.....public.function.getFo
104120 72 6d 61 74 74 65 72 28 29 0a 7b 0a 0a 20 72 65 74 75 72 6e 20 6e 65 77 20 4f 75 74 70 75 74 46 rmatter().{...return.new.OutputF
104140 6f 72 6d 61 74 74 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ormatter();.}.....public.functio
104160 6e 20 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 0a 7b 0a 0a 20 7d n.setDecorated($decorated).{...}
104180 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 .....public.function.isDecorated
1041a0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ().{.return.false;.}.....public.
1041c0 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 0a 7b 0a function.setVerbosity($level).{.
1041e0 0a 20 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 62 6f ..}.....public.function.getVerbo
104200 73 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f sity().{.return.self::VERBOSITY_
104220 51 55 49 45 54 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 51 75 69 65 QUIET;.}..public.function.isQuie
104240 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e t().{.return.true;.}..public.fun
104260 63 74 69 6f 6e 20 69 73 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 ction.isVerbose().{.return.false
104280 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 65 72 79 56 65 72 62 6f ;.}..public.function.isVeryVerbo
1042a0 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 se().{.return.false;.}..public.f
1042c0 75 6e 63 74 69 6f 6e 20 69 73 44 65 62 75 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 unction.isDebug().{.return.false
1042e0 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 6c 6e 28 ;.}.....public.function.writeln(
104300 24 6d 65 73 73 61 67 65 73 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 73 65 6c 66 3a 3a 4f 55 54 50 $messages,.$options.=.self::OUTP
104320 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 0a 20 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 UT_NORMAL).{...}.....public.func
104340 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d tion.write($messages,.$newline.=
104360 20 66 61 6c 73 65 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f .false,.$options.=.self::OUTPUT_
104380 4e 4f 52 4d 41 4c 29 0a 7b 0a 0a 20 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a NORMAL).{...}.}.<?php...........
1043a0 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 namespace.Symfony\Component\Cons
1043c0 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 ole\Output;..use.Symfony\Compone
1043e0 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 nt\Console\Formatter\OutputForma
104400 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f tterInterface;.use.Symfony\Compo
104420 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 nent\Console\Formatter\OutputFor
104440 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 matter;...............abstract.c
104460 6c 61 73 73 20 4f 75 74 70 75 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 70 75 74 49 6e 74 lass.Output.implements.OutputInt
104480 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 76 65 72 62 6f 73 69 74 79 3b 0a 70 72 69 erface.{.private.$verbosity;.pri
1044a0 76 61 74 65 20 24 66 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 vate.$formatter;.........public.
1044c0 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 76 65 72 62 6f 73 69 74 79 20 function.__construct($verbosity.
1044e0 3d 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 24 64 65 63 6f 72 =.self::VERBOSITY_NORMAL,.$decor
104500 61 74 65 64 20 3d 20 66 61 6c 73 65 2c 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 ated.=.false,.OutputFormatterInt
104520 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 erface.$formatter.=.null).{.$thi
104540 73 2d 3e 76 65 72 62 6f 73 69 74 79 20 3d 20 6e 75 6c 6c 20 3d 3d 3d 20 24 76 65 72 62 6f 73 69 s->verbosity.=.null.===.$verbosi
104560 74 79 20 3f 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 20 3a 20 24 76 ty.?.self::VERBOSITY_NORMAL.:.$v
104580 65 72 62 6f 73 69 74 79 3b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 66 6f erbosity;.$this->formatter.=.$fo
1045a0 72 6d 61 74 74 65 72 20 3f 3a 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 28 29 rmatter.?:.new.OutputFormatter()
1045c0 3b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 ;.$this->formatter->setDecorated
1045e0 28 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ($decorated);.}.....public.funct
104600 69 6f 6e 20 73 65 74 46 6f 72 6d 61 74 74 65 72 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 ion.setFormatter(OutputFormatter
104620 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 Interface.$formatter).{.$this->f
104640 6f 72 6d 61 74 74 65 72 20 3d 20 24 66 6f 72 6d 61 74 74 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 ormatter.=.$formatter;.}.....pub
104660 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 0a 7b 0a 72 65 lic.function.getFormatter().{.re
104680 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 turn.$this->formatter;.}.....pub
1046a0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 lic.function.setDecorated($decor
1046c0 61 74 65 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d 3e 73 65 74 44 65 63 ated).{.$this->formatter->setDec
1046e0 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 orated($decorated);.}.....public
104700 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e .function.isDecorated().{.return
104720 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 .$this->formatter->isDecorated()
104740 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 62 6f ;.}.....public.function.setVerbo
104760 73 69 74 79 28 24 6c 65 76 65 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 20 sity($level).{.$this->verbosity.
104780 3d 20 28 69 6e 74 29 20 24 6c 65 76 65 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e =.(int).$level;.}.....public.fun
1047a0 63 74 69 6f 6e 20 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 ction.getVerbosity().{.return.$t
1047c0 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 his->verbosity;.}..public.functi
1047e0 6f 6e 20 69 73 51 75 69 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 56 45 52 42 on.isQuiet().{.return.self::VERB
104800 4f 53 49 54 59 5f 51 55 49 45 54 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 OSITY_QUIET.===.$this->verbosity
104820 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 65 72 62 6f 73 65 28 29 ;.}..public.function.isVerbose()
104840 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 .{.return.self::VERBOSITY_VERBOS
104860 45 20 3c 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 3b 0a 7d 0a 0a 70 75 62 6c 69 63 E.<=.$this->verbosity;.}..public
104880 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 65 72 79 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 75 .function.isVeryVerbose().{.retu
1048a0 72 6e 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 20 rn.self::VERBOSITY_VERY_VERBOSE.
1048c0 3c 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 <=.$this->verbosity;.}..public.f
1048e0 75 6e 63 74 69 6f 6e 20 69 73 44 65 62 75 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a unction.isDebug().{.return.self:
104900 3a 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 20 3c 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f :VERBOSITY_DEBUG.<=.$this->verbo
104920 73 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 sity;.}.....public.function.writ
104940 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 73 65 6c 66 3a 3a eln($messages,.$options.=.self::
104960 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 24 6d OUTPUT_NORMAL).{.$this->write($m
104980 65 73 73 61 67 65 73 2c 20 74 72 75 65 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a essages,.true,.$options);.}.....
1049a0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c public.function.write($messages,
1049c0 20 24 6e 65 77 6c 69 6e 65 20 3d 20 66 61 6c 73 65 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 73 65 .$newline.=.false,.$options.=.se
1049e0 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 24 6d 65 73 73 61 67 65 73 20 3d lf::OUTPUT_NORMAL).{.$messages.=
104a00 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 67 65 73 3b 0a 0a 24 74 79 70 65 73 20 3d 20 73 65 .(array).$messages;..$types.=.se
104a20 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 20 7c 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 lf::OUTPUT_NORMAL.|.self::OUTPUT
104a40 5f 52 41 57 20 7c 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 50 4c 41 49 4e 3b 0a 24 74 79 70 65 _RAW.|.self::OUTPUT_PLAIN;.$type
104a60 20 3d 20 24 74 79 70 65 73 20 26 20 24 6f 70 74 69 6f 6e 73 20 3f 3a 20 73 65 6c 66 3a 3a 4f 55 .=.$types.&.$options.?:.self::OU
104a80 54 50 55 54 5f 4e 4f 52 4d 41 4c 3b 0a 0a 24 76 65 72 62 6f 73 69 74 69 65 73 20 3d 20 73 65 6c TPUT_NORMAL;..$verbosities.=.sel
104aa0 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 20 7c 20 73 65 6c 66 3a 3a 56 45 52 42 4f f::VERBOSITY_QUIET.|.self::VERBO
104ac0 53 49 54 59 5f 4e 4f 52 4d 41 4c 20 7c 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 SITY_NORMAL.|.self::VERBOSITY_VE
104ae0 52 42 4f 53 45 20 7c 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 RBOSE.|.self::VERBOSITY_VERY_VER
104b00 42 4f 53 45 20 7c 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 3b 0a 24 76 BOSE.|.self::VERBOSITY_DEBUG;.$v
104b20 65 72 62 6f 73 69 74 79 20 3d 20 24 76 65 72 62 6f 73 69 74 69 65 73 20 26 20 24 6f 70 74 69 6f erbosity.=.$verbosities.&.$optio
104b40 6e 73 20 3f 3a 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 3b 0a 0a 69 ns.?:.self::VERBOSITY_NORMAL;..i
104b60 66 20 28 24 76 65 72 62 6f 73 69 74 79 20 3e 20 24 74 68 69 73 2d 3e 67 65 74 56 65 72 62 6f 73 f.($verbosity.>.$this->getVerbos
104b80 69 74 79 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 ity()).{.return;.}..foreach.($me
104ba0 73 73 61 67 65 73 20 61 73 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 73 77 69 74 63 68 20 28 24 74 ssages.as.$message).{.switch.($t
104bc0 79 70 65 29 20 7b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 4f 55 54 ype).{.case.OutputInterface::OUT
104be0 50 55 54 5f 4e 4f 52 4d 41 4c 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 66 6f PUT_NORMAL:.$message.=.$this->fo
104c00 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 67 65 29 3b 0a 62 72 65 61 6b rmatter->format($message);.break
104c20 3b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 52 ;.case.OutputInterface::OUTPUT_R
104c40 41 57 3a 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a AW:.break;.case.OutputInterface:
104c60 3a 4f 55 54 50 55 54 5f 50 4c 41 49 4e 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 74 72 69 70 5f :OUTPUT_PLAIN:.$message.=.strip_
104c80 74 61 67 73 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 28 24 6d tags($this->formatter->format($m
104ca0 65 73 73 61 67 65 29 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 6f 57 72 69 essage));.break;.}..$this->doWri
104cc0 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 65 77 6c 69 6e 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a te($message,.$newline);.}.}.....
104ce0 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 ...abstract.protected.function.d
104d00 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 65 77 6c 69 6e 65 29 3b 0a 7d 0a 3c 3f oWrite($message,.$newline);.}.<?
104d20 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c php...........namespace.Symfony\
104d40 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 20 53 Component\Console\Output;..use.S
104d60 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 ymfony\Component\Console\Formatt
104d80 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a er\OutputFormatterInterface;....
104da0 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 63 ...interface.OutputInterface.{.c
104dc0 6f 6e 73 74 20 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 20 3d 20 31 36 3b 0a 63 6f 6e 73 74 onst.VERBOSITY_QUIET.=.16;.const
104de0 20 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 20 3d 20 33 32 3b 0a 63 6f 6e 73 74 20 56 45 .VERBOSITY_NORMAL.=.32;.const.VE
104e00 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 20 3d 20 36 34 3b 0a 63 6f 6e 73 74 20 56 45 52 42 RBOSITY_VERBOSE.=.64;.const.VERB
104e20 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 20 3d 20 31 32 38 3b 0a 63 6f 6e 73 74 20 OSITY_VERY_VERBOSE.=.128;.const.
104e40 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 20 3d 20 32 35 36 3b 0a 0a 63 6f 6e 73 74 20 4f 55 VERBOSITY_DEBUG.=.256;..const.OU
104e60 54 50 55 54 5f 4e 4f 52 4d 41 4c 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 4f 55 54 50 55 54 5f 52 41 TPUT_NORMAL.=.1;.const.OUTPUT_RA
104e80 57 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 4f 55 54 50 55 54 5f 50 4c 41 49 4e 20 3d 20 34 3b 0a 0a W.=.2;.const.OUTPUT_PLAIN.=.4;..
104ea0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 .......public.function.write($me
104ec0 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 66 61 6c 73 65 2c 20 24 6f 70 74 69 6f ssages,.$newline.=.false,.$optio
104ee0 6e 73 20 3d 20 30 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ns.=.0);........public.function.
104f00 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 30 29 writeln($messages,.$options.=.0)
104f20 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 62 6f ;.......public.function.setVerbo
104f40 73 69 74 79 28 24 6c 65 76 65 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 sity($level);.......public.funct
104f60 69 6f 6e 20 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ion.getVerbosity();.......public
104f80 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 .function.setDecorated($decorate
104fa0 64 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f d);.......public.function.isDeco
104fc0 72 61 74 65 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 rated();.......public.function.s
104fe0 65 74 46 6f 72 6d 61 74 74 65 72 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 etFormatter(OutputFormatterInter
105000 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 face.$formatter);.......public.f
105020 75 6e 63 74 69 6f 6e 20 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a unction.getFormatter();.}.<?php.
105040 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 ..........namespace.Symfony\Comp
105060 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f onent\Console\Output;..use.Symfo
105080 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 ny\Component\Console\Exception\I
1050a0 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d nvalidArgumentException;.use.Sym
1050c0 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e fony\Component\Console\Exception
1050e0 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 \RuntimeException;.use.Symfony\C
105100 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 omponent\Console\Formatter\Outpu
105120 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a tFormatterInterface;............
105140 0a 0a 0a 63 6c 61 73 73 20 53 74 72 65 61 6d 4f 75 74 70 75 74 20 65 78 74 65 6e 64 73 20 4f 75 ...class.StreamOutput.extends.Ou
105160 74 70 75 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 73 74 72 65 61 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a tput.{.private.$stream;.........
105180 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 ...public.function.__construct($
1051a0 73 74 72 65 61 6d 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a 56 45 52 42 4f stream,.$verbosity.=.self::VERBO
1051c0 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 24 64 65 63 6f 72 61 74 65 64 20 3d 20 6e 75 6c 6c 2c 20 SITY_NORMAL,.$decorated.=.null,.
1051e0 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 OutputFormatterInterface.$format
105200 74 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 69 73 5f 72 65 73 6f 75 72 63 65 28 24 ter.=.null).{.if.(!is_resource($
105220 73 74 72 65 61 6d 29 20 7c 7c 20 27 73 74 72 65 61 6d 27 20 21 3d 3d 20 67 65 74 5f 72 65 73 6f stream).||.'stream'.!==.get_reso
105240 75 72 63 65 5f 74 79 70 65 28 24 73 74 72 65 61 6d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 urce_type($stream)).{.throw.new.
105260 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 53 74 InvalidArgumentException('The.St
105280 72 65 61 6d 4f 75 74 70 75 74 20 63 6c 61 73 73 20 6e 65 65 64 73 20 61 20 73 74 72 65 61 6d 20 reamOutput.class.needs.a.stream.
1052a0 61 73 20 69 74 73 20 66 69 72 73 74 20 61 72 67 75 6d 65 6e 74 2e 27 29 3b 0a 7d 0a 0a 24 74 68 as.its.first.argument.');.}..$th
1052c0 69 73 2d 3e 73 74 72 65 61 6d 20 3d 20 24 73 74 72 65 61 6d 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 is->stream.=.$stream;..if.(null.
1052e0 3d 3d 3d 20 24 64 65 63 6f 72 61 74 65 64 29 20 7b 0a 24 64 65 63 6f 72 61 74 65 64 20 3d 20 24 ===.$decorated).{.$decorated.=.$
105300 74 68 69 73 2d 3e 68 61 73 43 6f 6c 6f 72 53 75 70 70 6f 72 74 28 29 3b 0a 7d 0a 0a 70 61 72 65 this->hasColorSupport();.}..pare
105320 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 76 65 72 62 6f 73 69 74 79 2c 20 24 64 65 63 nt::__construct($verbosity,.$dec
105340 6f 72 61 74 65 64 2c 20 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 orated,.$formatter);.}.......pub
105360 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 72 65 61 6d 28 29 0a 7b 0a 72 65 74 75 72 lic.function.getStream().{.retur
105380 6e 20 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 n.$this->stream;.}.....protected
1053a0 20 66 75 6e 63 74 69 6f 6e 20 64 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 65 77 .function.doWrite($message,.$new
1053c0 6c 69 6e 65 29 0a 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 40 66 77 72 69 74 65 28 24 74 line).{.if.(false.===.@fwrite($t
1053e0 68 69 73 2d 3e 73 74 72 65 61 6d 2c 20 24 6d 65 73 73 61 67 65 2e 28 24 6e 65 77 6c 69 6e 65 20 his->stream,.$message.($newline.
105400 3f 20 50 48 50 5f 45 4f 4c 20 3a 20 27 27 29 29 29 20 7b 0a 0a 20 74 68 72 6f 77 20 6e 65 77 20 ?.PHP_EOL.:.''))).{...throw.new.
105420 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 77 72 69 74 RuntimeException('Unable.to.writ
105440 65 20 6f 75 74 70 75 74 2e 27 29 3b 0a 7d 0a 0a 66 66 6c 75 73 68 28 24 74 68 69 73 2d 3e 73 74 e.output.');.}..fflush($this->st
105460 72 65 61 6d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 ream);.}............protected.fu
105480 6e 63 74 69 6f 6e 20 68 61 73 43 6f 6c 6f 72 53 75 70 70 6f 72 74 28 29 0a 7b 0a 69 66 20 28 44 nction.hasColorSupport().{.if.(D
1054a0 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 3d 3d 3d 20 27 5c 5c 27 29 20 7b 0a 72 IRECTORY_SEPARATOR.===.'\\').{.r
1054c0 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 67 65 74 65 6e 76 28 27 41 4e 53 49 43 4f 4e 27 eturn.false.!==.getenv('ANSICON'
1054e0 29 20 7c 7c 20 27 4f 4e 27 20 3d 3d 3d 20 67 65 74 65 6e 76 28 27 43 6f 6e 45 6d 75 41 4e 53 49 ).||.'ON'.===.getenv('ConEmuANSI
105500 27 29 20 7c 7c 20 27 78 74 65 72 6d 27 20 3d 3d 3d 20 67 65 74 65 6e 76 28 27 54 45 52 4d 27 29 ').||.'xterm'.===.getenv('TERM')
105520 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 6f 73 ;.}..return.function_exists('pos
105540 69 78 5f 69 73 61 74 74 79 27 29 20 26 26 20 40 70 6f 73 69 78 5f 69 73 61 74 74 79 28 24 74 68 ix_isatty').&&.@posix_isatty($th
105560 69 73 2d 3e 73 74 72 65 61 6d 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a is->stream);.}.}.<?php..........
105580 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e .namespace.Symfony\Component\Con
1055a0 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 sole\Question;..use.Symfony\Comp
1055c0 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 41 onent\Console\Exception\InvalidA
1055e0 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 68 rgumentException;.......class.Ch
105600 6f 69 63 65 51 75 65 73 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 51 75 65 73 74 69 6f 6e 0a 7b 0a oiceQuestion.extends.Question.{.
105620 70 72 69 76 61 74 65 20 24 63 68 6f 69 63 65 73 3b 0a 70 72 69 76 61 74 65 20 24 6d 75 6c 74 69 private.$choices;.private.$multi
105640 73 65 6c 65 63 74 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 6d 70 74 20 select.=.false;.private.$prompt.
105660 3d 20 27 20 3e 20 27 3b 0a 70 72 69 76 61 74 65 20 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d =.'.>.';.private.$errorMessage.=
105680 20 27 56 61 6c 75 65 20 22 25 73 22 20 69 73 20 69 6e 76 61 6c 69 64 27 3b 0a 0a 0a 0a 0a 0a 0a .'Value."%s".is.invalid';.......
1056a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 71 ..public.function.__construct($q
1056c0 75 65 73 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 66 61 75 6c uestion,.array.$choices,.$defaul
1056e0 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 t.=.null).{.parent::__construct(
105700 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 68 $question,.$default);..$this->ch
105720 6f 69 63 65 73 20 3d 20 24 63 68 6f 69 63 65 73 3b 0a 24 74 68 69 73 2d 3e 73 65 74 56 61 6c 69 oices.=.$choices;.$this->setVali
105740 64 61 74 6f 72 28 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 56 61 6c 69 64 61 74 6f 72 dator($this->getDefaultValidator
105760 28 29 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 41 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 ());.$this->setAutocompleterValu
105780 65 73 28 24 63 68 6f 69 63 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e es($choices);.}.......public.fun
1057a0 63 74 69 6f 6e 20 67 65 74 43 68 6f 69 63 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 ction.getChoices().{.return.$thi
1057c0 73 2d 3e 63 68 6f 69 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 s->choices;.}...........public.f
1057e0 75 6e 63 74 69 6f 6e 20 73 65 74 4d 75 6c 74 69 73 65 6c 65 63 74 28 24 6d 75 6c 74 69 73 65 6c unction.setMultiselect($multisel
105800 65 63 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 75 6c 74 69 73 65 6c 65 63 74 20 3d 20 24 6d 75 6c ect).{.$this->multiselect.=.$mul
105820 74 69 73 65 6c 65 63 74 3b 0a 24 74 68 69 73 2d 3e 73 65 74 56 61 6c 69 64 61 74 6f 72 28 24 74 tiselect;.$this->setValidator($t
105840 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 56 61 6c 69 64 61 74 6f 72 28 29 29 3b 0a 0a 72 65 his->getDefaultValidator());..re
105860 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 turn.$this;.}.......public.funct
105880 69 6f 6e 20 67 65 74 50 72 6f 6d 70 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e ion.getPrompt().{.return.$this->
1058a0 70 72 6f 6d 70 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f prompt;.}.........public.functio
1058c0 6e 20 73 65 74 50 72 6f 6d 70 74 28 24 70 72 6f 6d 70 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 n.setPrompt($prompt).{.$this->pr
1058e0 6f 6d 70 74 20 3d 20 24 70 72 6f 6d 70 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d ompt.=.$prompt;..return.$this;.}
105900 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 72 ...........public.function.setEr
105920 72 6f 72 4d 65 73 73 61 67 65 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 rorMessage($errorMessage).{.$thi
105940 73 2d 3e 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d 20 24 65 72 72 6f 72 4d 65 73 73 61 67 65 3b s->errorMessage.=.$errorMessage;
105960 0a 24 74 68 69 73 2d 3e 73 65 74 56 61 6c 69 64 61 74 6f 72 28 24 74 68 69 73 2d 3e 67 65 74 44 .$this->setValidator($this->getD
105980 65 66 61 75 6c 74 56 61 6c 69 64 61 74 6f 72 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 efaultValidator());..return.$thi
1059a0 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 s;.}.......private.function.getD
1059c0 65 66 61 75 6c 74 56 61 6c 69 64 61 74 6f 72 28 29 0a 7b 0a 24 63 68 6f 69 63 65 73 20 3d 20 24 efaultValidator().{.$choices.=.$
1059e0 74 68 69 73 2d 3e 63 68 6f 69 63 65 73 3b 0a 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d 20 24 this->choices;.$errorMessage.=.$
105a00 74 68 69 73 2d 3e 65 72 72 6f 72 4d 65 73 73 61 67 65 3b 0a 24 6d 75 6c 74 69 73 65 6c 65 63 74 this->errorMessage;.$multiselect
105a20 20 3d 20 24 74 68 69 73 2d 3e 6d 75 6c 74 69 73 65 6c 65 63 74 3b 0a 24 69 73 41 73 73 6f 63 20 .=.$this->multiselect;.$isAssoc.
105a40 3d 20 24 74 68 69 73 2d 3e 69 73 41 73 73 6f 63 28 24 63 68 6f 69 63 65 73 29 3b 0a 0a 72 65 74 =.$this->isAssoc($choices);..ret
105a60 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 24 73 65 6c 65 63 74 65 64 29 20 75 73 65 20 28 24 63 urn.function.($selected).use.($c
105a80 68 6f 69 63 65 73 2c 20 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c 20 24 6d 75 6c 74 69 73 65 6c hoices,.$errorMessage,.$multisel
105aa0 65 63 74 2c 20 24 69 73 41 73 73 6f 63 29 20 7b 0a 0a 20 24 73 65 6c 65 63 74 65 64 43 68 6f 69 ect,.$isAssoc).{...$selectedChoi
105ac0 63 65 73 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 20 27 2c 20 27 27 2c 20 24 73 65 6c 65 ces.=.str_replace('.',.'',.$sele
105ae0 63 74 65 64 29 3b 0a 0a 69 66 20 28 24 6d 75 6c 74 69 73 65 6c 65 63 74 29 20 7b 0a 0a 20 69 66 cted);..if.($multiselect).{...if
105b00 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 2d 5d 2b 28 .(!preg_match('/^[a-zA-Z0-9_-]+(
105b20 3f 3a 2c 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 2d 5d 2b 29 2a 24 2f 27 2c 20 24 73 65 6c 65 63 74 65 ?:,[a-zA-Z0-9_-]+)*$/',.$selecte
105b40 64 43 68 6f 69 63 65 73 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 dChoices,.$matches)).{.throw.new
105b60 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 .InvalidArgumentException(sprint
105b80 66 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c 20 24 73 65 6c 65 63 74 65 64 29 29 3b 0a 7d 0a f($errorMessage,.$selected));.}.
105ba0 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 2c 27 2c 20 $selectedChoices.=.explode(',',.
105bc0 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 65 6c $selectedChoices);.}.else.{.$sel
105be0 65 63 74 65 64 43 68 6f 69 63 65 73 20 3d 20 61 72 72 61 79 28 24 73 65 6c 65 63 74 65 64 29 3b ectedChoices.=.array($selected);
105c00 0a 7d 0a 0a 24 6d 75 6c 74 69 73 65 6c 65 63 74 43 68 6f 69 63 65 73 20 3d 20 61 72 72 61 79 28 .}..$multiselectChoices.=.array(
105c20 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 20 61 73 20 );.foreach.($selectedChoices.as.
105c40 24 76 61 6c 75 65 29 20 7b 0a 24 72 65 73 75 6c 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f $value).{.$results.=.array();.fo
105c60 72 65 61 63 68 20 28 24 63 68 6f 69 63 65 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 63 68 6f 69 reach.($choices.as.$key.=>.$choi
105c80 63 65 29 20 7b 0a 69 66 20 28 24 63 68 6f 69 63 65 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a ce).{.if.($choice.===.$value).{.
105ca0 24 72 65 73 75 6c 74 73 5b 5d 20 3d 20 24 6b 65 79 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e $results[].=.$key;.}.}..if.(coun
105cc0 74 28 24 72 65 73 75 6c 74 73 29 20 3e 20 31 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 t($results).>.1).{.throw.new.Inv
105ce0 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 alidArgumentException(sprintf('T
105d00 68 65 20 70 72 6f 76 69 64 65 64 20 61 6e 73 77 65 72 20 69 73 20 61 6d 62 69 67 75 6f 75 73 2e he.provided.answer.is.ambiguous.
105d20 20 56 61 6c 75 65 20 73 68 6f 75 6c 64 20 62 65 20 6f 6e 65 20 6f 66 20 25 73 2e 27 2c 20 69 6d .Value.should.be.one.of.%s.',.im
105d40 70 6c 6f 64 65 28 27 20 6f 72 20 27 2c 20 24 72 65 73 75 6c 74 73 29 29 29 3b 0a 7d 0a 0a 24 72 plode('.or.',.$results)));.}..$r
105d60 65 73 75 6c 74 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 76 61 6c 75 65 2c 20 24 63 68 esult.=.array_search($value,.$ch
105d80 6f 69 63 65 73 29 3b 0a 0a 69 66 20 28 21 24 69 73 41 73 73 6f 63 29 20 7b 0a 69 66 20 28 66 61 oices);..if.(!$isAssoc).{.if.(fa
105da0 6c 73 65 20 21 3d 3d 20 24 72 65 73 75 6c 74 29 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 24 63 68 lse.!==.$result).{.$result.=.$ch
105dc0 6f 69 63 65 73 5b 24 72 65 73 75 6c 74 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 oices[$result];.}.elseif.(isset(
105de0 24 63 68 6f 69 63 65 73 5b 24 76 61 6c 75 65 5d 29 29 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 24 $choices[$value])).{.$result.=.$
105e00 63 68 6f 69 63 65 73 5b 24 76 61 6c 75 65 5d 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 66 61 6c choices[$value];.}.}.elseif.(fal
105e20 73 65 20 3d 3d 3d 20 24 72 65 73 75 6c 74 20 26 26 20 69 73 73 65 74 28 24 63 68 6f 69 63 65 73 se.===.$result.&&.isset($choices
105e40 5b 24 76 61 6c 75 65 5d 29 29 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 24 76 61 6c 75 65 3b 0a 7d [$value])).{.$result.=.$value;.}
105e60 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 73 75 6c 74 29 20 7b 0a 74 68 72 6f 77 ..if.(false.===.$result).{.throw
105e80 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 .new.InvalidArgumentException(sp
105ea0 72 69 6e 74 66 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c 20 24 76 61 6c 75 65 29 29 3b 0a 7d rintf($errorMessage,.$value));.}
105ec0 0a 0a 24 6d 75 6c 74 69 73 65 6c 65 63 74 43 68 6f 69 63 65 73 5b 5d 20 3d 20 28 73 74 72 69 6e ..$multiselectChoices[].=.(strin
105ee0 67 29 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 69 66 20 28 24 6d 75 6c 74 69 73 65 6c 65 63 74 29 g).$result;.}..if.($multiselect)
105f00 20 7b 0a 72 65 74 75 72 6e 20 24 6d 75 6c 74 69 73 65 6c 65 63 74 43 68 6f 69 63 65 73 3b 0a 7d .{.return.$multiselectChoices;.}
105f20 0a 0a 72 65 74 75 72 6e 20 63 75 72 72 65 6e 74 28 24 6d 75 6c 74 69 73 65 6c 65 63 74 43 68 6f ..return.current($multiselectCho
105f40 69 63 65 73 29 3b 0a 7d 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 ices);.};.}.}.<?php...........na
105f60 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c mespace.Symfony\Component\Consol
105f80 65 5c 51 75 65 73 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 66 69 72 6d 61 e\Question;.......class.Confirma
105fa0 74 69 6f 6e 51 75 65 73 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 51 75 65 73 74 69 6f 6e 0a 7b 0a tionQuestion.extends.Question.{.
105fc0 70 72 69 76 61 74 65 20 24 74 72 75 65 41 6e 73 77 65 72 52 65 67 65 78 3b 0a 0a 0a 0a 0a 0a 0a private.$trueAnswerRegex;.......
105fe0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 71 ..public.function.__construct($q
106000 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 2c 20 24 74 72 75 65 41 uestion,.$default.=.true,.$trueA
106020 6e 73 77 65 72 52 65 67 65 78 20 3d 20 27 2f 5e 79 2f 69 27 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a nswerRegex.=.'/^y/i').{.parent::
106040 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 71 75 65 73 74 69 6f 6e 2c 20 28 62 6f 6f 6c 29 20 24 64 __construct($question,.(bool).$d
106060 65 66 61 75 6c 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 74 72 75 65 41 6e 73 77 65 72 52 65 67 65 78 efault);..$this->trueAnswerRegex
106080 20 3d 20 24 74 72 75 65 41 6e 73 77 65 72 52 65 67 65 78 3b 0a 24 74 68 69 73 2d 3e 73 65 74 4e .=.$trueAnswerRegex;.$this->setN
1060a0 6f 72 6d 61 6c 69 7a 65 72 28 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 4e 6f 72 6d 61 ormalizer($this->getDefaultNorma
1060c0 6c 69 7a 65 72 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 lizer());.}.......private.functi
1060e0 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 4e 6f 72 6d 61 6c 69 7a 65 72 28 29 0a 7b 0a 24 64 65 66 on.getDefaultNormalizer().{.$def
106100 61 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 24 72 65 67 ault.=.$this->getDefault();.$reg
106120 65 78 20 3d 20 24 74 68 69 73 2d 3e 74 72 75 65 41 6e 73 77 65 72 52 65 67 65 78 3b 0a 0a 72 65 ex.=.$this->trueAnswerRegex;..re
106140 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 6e 73 77 65 72 29 20 75 73 65 20 28 24 64 65 turn.function.($answer).use.($de
106160 66 61 75 6c 74 2c 20 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 69 73 5f 62 6f 6f 6c 28 24 61 6e fault,.$regex).{.if.(is_bool($an
106180 73 77 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 65 72 3b 0a 7d 0a 0a 24 61 6e 73 swer)).{.return.$answer;.}..$ans
1061a0 77 65 72 49 73 54 72 75 65 20 3d 20 28 62 6f 6f 6c 29 20 70 72 65 67 5f 6d 61 74 63 68 28 24 72 werIsTrue.=.(bool).preg_match($r
1061c0 65 67 65 78 2c 20 24 61 6e 73 77 65 72 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 64 egex,.$answer);.if.(false.===.$d
1061e0 65 66 61 75 6c 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 65 72 20 26 26 20 24 61 6e 73 efault).{.return.$answer.&&.$ans
106200 77 65 72 49 73 54 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 21 24 61 6e 73 77 65 72 20 7c 7c werIsTrue;.}..return.!$answer.||
106220 20 24 61 6e 73 77 65 72 49 73 54 72 75 65 3b 0a 7d 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a .$answerIsTrue;.};.}.}.<?php....
106240 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 .......namespace.Symfony\Compone
106260 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e nt\Console\Question;..use.Symfon
106280 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e y\Component\Console\Exception\In
1062a0 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 validArgumentException;.use.Symf
1062c0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c ony\Component\Console\Exception\
1062e0 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 51 75 65 73 LogicException;.......class.Ques
106300 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 71 75 65 73 74 69 6f 6e 3b 0a 70 72 69 76 61 74 tion.{.private.$question;.privat
106320 65 20 24 61 74 74 65 6d 70 74 73 3b 0a 70 72 69 76 61 74 65 20 24 68 69 64 64 65 6e 20 3d 20 66 e.$attempts;.private.$hidden.=.f
106340 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 68 69 64 64 65 6e 46 61 6c 6c 62 61 63 6b 20 3d 20 alse;.private.$hiddenFallback.=.
106360 74 72 75 65 3b 0a 70 72 69 76 61 74 65 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 true;.private.$autocompleterValu
106380 65 73 3b 0a 70 72 69 76 61 74 65 20 24 76 61 6c 69 64 61 74 6f 72 3b 0a 70 72 69 76 61 74 65 20 es;.private.$validator;.private.
1063a0 24 64 65 66 61 75 6c 74 3b 0a 70 72 69 76 61 74 65 20 24 6e 6f 72 6d 61 6c 69 7a 65 72 3b 0a 0a $default;.private.$normalizer;..
1063c0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ......public.function.__construc
1063e0 74 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a t($question,.$default.=.null).{.
106400 24 74 68 69 73 2d 3e 71 75 65 73 74 69 6f 6e 20 3d 20 24 71 75 65 73 74 69 6f 6e 3b 0a 24 74 68 $this->question.=.$question;.$th
106420 69 73 2d 3e 64 65 66 61 75 6c 74 20 3d 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a is->default.=.$default;.}.......
106440 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 51 75 65 73 74 69 6f 6e 28 29 0a 7b 0a public.function.getQuestion().{.
106460 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 71 75 65 73 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a return.$this->question;.}.......
106480 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 28 29 0a 7b 0a 72 public.function.getDefault().{.r
1064a0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 eturn.$this->default;.}.......pu
1064c0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 48 69 64 64 65 6e 28 29 0a 7b 0a 72 65 74 75 72 blic.function.isHidden().{.retur
1064e0 6e 20 24 74 68 69 73 2d 3e 68 69 64 64 65 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 n.$this->hidden;.}...........pub
106500 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 69 64 64 65 6e 28 24 68 69 64 64 65 6e 29 0a lic.function.setHidden($hidden).
106520 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 {.if.($this->autocompleterValues
106540 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 41 20 ).{.throw.new.LogicException('A.
106560 68 69 64 64 65 6e 20 71 75 65 73 74 69 6f 6e 20 63 61 6e 6e 6f 74 20 75 73 65 20 74 68 65 20 61 hidden.question.cannot.use.the.a
106580 75 74 6f 63 6f 6d 70 6c 65 74 65 72 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 68 69 64 64 65 utocompleter.');.}..$this->hidde
1065a0 6e 20 3d 20 28 62 6f 6f 6c 29 20 24 68 69 64 64 65 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 n.=.(bool).$hidden;..return.$thi
1065c0 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 48 69 64 s;.}.......public.function.isHid
1065e0 64 65 6e 46 61 6c 6c 62 61 63 6b 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 69 denFallback().{.return.$this->hi
106600 64 64 65 6e 46 61 6c 6c 62 61 63 6b 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ddenFallback;.}.........public.f
106620 75 6e 63 74 69 6f 6e 20 73 65 74 48 69 64 64 65 6e 46 61 6c 6c 62 61 63 6b 28 24 66 61 6c 6c 62 unction.setHiddenFallback($fallb
106640 61 63 6b 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 69 64 64 65 6e 46 61 6c 6c 62 61 63 6b 20 3d 20 28 ack).{.$this->hiddenFallback.=.(
106660 62 6f 6f 6c 29 20 24 66 61 6c 6c 62 61 63 6b 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a bool).$fallback;..return.$this;.
106680 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 63 }.......public.function.getAutoc
1066a0 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ompleterValues().{.return.$this-
1066c0 3e 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a >autocompleterValues;.}.........
1066e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 6f 63 6f 6d 70 6c 65 ...public.function.setAutocomple
106700 74 65 72 56 61 6c 75 65 73 28 24 76 61 6c 75 65 73 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 terValues($values).{.if.(is_arra
106720 79 28 24 76 61 6c 75 65 73 29 20 26 26 20 24 74 68 69 73 2d 3e 69 73 41 73 73 6f 63 28 24 76 61 y($values).&&.$this->isAssoc($va
106740 6c 75 65 73 29 29 20 7b 0a 24 76 61 6c 75 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 61 lues)).{.$values.=.array_merge(a
106760 72 72 61 79 5f 6b 65 79 73 28 24 76 61 6c 75 65 73 29 2c 20 61 72 72 61 79 5f 76 61 6c 75 65 73 rray_keys($values),.array_values
106780 28 24 76 61 6c 75 65 73 29 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 61 6c ($values));.}..if.(null.!==.$val
1067a0 75 65 73 20 26 26 20 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 73 29 29 20 7b 0a 69 66 20 ues.&&.!is_array($values)).{.if.
1067c0 28 21 24 76 61 6c 75 65 73 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 54 72 61 76 65 72 73 61 62 6c (!$values.instanceof.\Traversabl
1067e0 65 20 7c 7c 20 24 76 61 6c 75 65 73 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 43 6f 75 6e 74 61 62 e.||.$values.instanceof.\Countab
106800 6c 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 le).{.throw.new.InvalidArgumentE
106820 78 63 65 70 74 69 6f 6e 28 27 41 75 74 6f 63 6f 6d 70 6c 65 74 65 72 20 76 61 6c 75 65 73 20 63 xception('Autocompleter.values.c
106840 61 6e 20 62 65 20 65 69 74 68 65 72 20 61 6e 20 61 72 72 61 79 2c 20 60 6e 75 6c 6c 60 20 6f 72 an.be.either.an.array,.`null`.or
106860 20 61 6e 20 6f 62 6a 65 63 74 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 62 6f 74 68 20 60 43 6f .an.object.implementing.both.`Co
106880 75 6e 74 61 62 6c 65 60 20 61 6e 64 20 60 54 72 61 76 65 72 73 61 62 6c 65 60 20 69 6e 74 65 72 untable`.and.`Traversable`.inter
1068a0 66 61 63 65 73 2e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 69 64 64 65 6e faces.');.}.}..if.($this->hidden
1068c0 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 41 20 ).{.throw.new.LogicException('A.
1068e0 68 69 64 64 65 6e 20 71 75 65 73 74 69 6f 6e 20 63 61 6e 6e 6f 74 20 75 73 65 20 74 68 65 20 61 hidden.question.cannot.use.the.a
106900 75 74 6f 63 6f 6d 70 6c 65 74 65 72 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 75 74 6f 63 utocompleter.');.}..$this->autoc
106920 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 20 3d 20 24 76 61 6c 75 65 73 3b 0a 0a 72 65 74 75 72 ompleterValues.=.$values;..retur
106940 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 n.$this;.}.........public.functi
106960 6f 6e 20 73 65 74 56 61 6c 69 64 61 74 6f 72 28 24 76 61 6c 69 64 61 74 6f 72 29 0a 7b 0a 24 74 on.setValidator($validator).{.$t
106980 68 69 73 2d 3e 76 61 6c 69 64 61 74 6f 72 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 3b 0a 0a 72 65 his->validator.=.$validator;..re
1069a0 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 turn.$this;.}.......public.funct
1069c0 69 6f 6e 20 67 65 74 56 61 6c 69 64 61 74 6f 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 ion.getValidator().{.return.$thi
1069e0 73 2d 3e 76 61 6c 69 64 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c s->validator;.}.............publ
106a00 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4d 61 78 41 74 74 65 6d 70 74 73 28 24 61 74 74 65 ic.function.setMaxAttempts($atte
106a20 6d 70 74 73 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 61 74 74 65 6d 70 74 73 20 26 mpts).{.if.(null.!==.$attempts.&
106a40 26 20 24 61 74 74 65 6d 70 74 73 20 3c 20 31 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 &.$attempts.<.1).{.throw.new.Inv
106a60 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 4d 61 78 69 6d 75 6d 20 6e alidArgumentException('Maximum.n
106a80 75 6d 62 65 72 20 6f 66 20 61 74 74 65 6d 70 74 73 20 6d 75 73 74 20 62 65 20 61 20 70 6f 73 69 umber.of.attempts.must.be.a.posi
106aa0 74 69 76 65 20 76 61 6c 75 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 74 74 65 6d 70 74 tive.value.');.}..$this->attempt
106ac0 73 20 3d 20 24 61 74 74 65 6d 70 74 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a s.=.$attempts;..return.$this;.}.
106ae0 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 61 78 41 74 ........public.function.getMaxAt
106b00 74 65 6d 70 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 74 74 65 6d 70 74 tempts().{.return.$this->attempt
106b20 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 s;.}...........public.function.s
106b40 65 74 4e 6f 72 6d 61 6c 69 7a 65 72 28 24 6e 6f 72 6d 61 6c 69 7a 65 72 29 0a 7b 0a 24 74 68 69 etNormalizer($normalizer).{.$thi
106b60 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 72 20 3d 20 24 6e 6f 72 6d 61 6c 69 7a 65 72 3b 0a 0a 72 65 s->normalizer.=.$normalizer;..re
106b80 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e turn.$this;.}.........public.fun
106ba0 63 74 69 6f 6e 20 67 65 74 4e 6f 72 6d 61 6c 69 7a 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 ction.getNormalizer().{.return.$
106bc0 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 72 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 this->normalizer;.}..protected.f
106be0 75 6e 63 74 69 6f 6e 20 69 73 41 73 73 6f 63 28 24 61 72 72 61 79 29 0a 7b 0a 72 65 74 75 72 6e unction.isAssoc($array).{.return
106c00 20 28 62 6f 6f 6c 29 20 63 6f 75 6e 74 28 61 72 72 61 79 5f 66 69 6c 74 65 72 28 61 72 72 61 79 .(bool).count(array_filter(array
106c20 5f 6b 65 79 73 28 24 61 72 72 61 79 29 2c 20 27 69 73 5f 73 74 72 69 6e 67 27 29 29 3b 0a 7d 0a _keys($array),.'is_string'));.}.
106c40 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 }.<?php...........namespace.Symf
106c60 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 3b 0a 0a 75 73 65 20 53 79 6d 66 ony\Component\Console;..use.Symf
106c80 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c ony\Component\Console\Exception\
106ca0 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f RuntimeException;.use.Symfony\Co
106cc0 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 53 74 72 69 6e 67 49 6e 70 75 mponent\Console\Input\StringInpu
106ce0 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 t;.use.Symfony\Component\Console
106d00 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f \Output\ConsoleOutput;.use.Symfo
106d20 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 42 75 69 6c ny\Component\Process\ProcessBuil
106d40 64 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 der;.use.Symfony\Component\Proce
106d60 73 73 5c 50 68 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a ss\PhpExecutableFinder;.........
106d80 0a 0a 0a 0a 63 6c 61 73 73 20 53 68 65 6c 6c 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 70 70 6c 69 ....class.Shell.{.private.$appli
106da0 63 61 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 68 69 73 74 6f 72 79 3b 0a 70 72 69 76 61 74 cation;.private.$history;.privat
106dc0 65 20 24 6f 75 74 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 68 61 73 52 65 61 64 6c 69 6e 65 3b e.$output;.private.$hasReadline;
106de0 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 20 3d 20 66 61 6c .private.$processIsolation.=.fal
106e00 73 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 se;..........public.function.__c
106e20 6f 6e 73 74 72 75 63 74 28 41 70 70 6c 69 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 69 6f onstruct(Application.$applicatio
106e40 6e 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 43 4c 41 n).{.@trigger_error('The.'.__CLA
106e60 53 53 5f 5f 2e 27 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 SS__.'.class.is.deprecated.since
106e80 20 53 79 6d 66 6f 6e 79 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 .Symfony.2.8.and.will.be.removed
106ea0 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a .in.3.0.',.E_USER_DEPRECATED);..
106ec0 24 74 68 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 6e 65 20 3d 20 66 75 6e 63 74 69 6f 6e 5f 65 78 $this->hasReadline.=.function_ex
106ee0 69 73 74 73 28 27 72 65 61 64 6c 69 6e 65 27 29 3b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 ists('readline');.$this->applica
106f00 74 69 6f 6e 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 68 69 73 74 tion.=.$application;.$this->hist
106f20 6f 72 79 20 3d 20 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 29 2e 27 2f 2e 68 69 73 74 6f 72 79 5f ory.=.getenv('HOME').'/.history_
106f40 27 2e 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 24 74 68 69 73 '.$application->getName();.$this
106f60 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 28 29 3b 0a ->output.=.new.ConsoleOutput();.
106f80 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 29 0a 7b 0a 24 74 }.....public.function.run().{.$t
106fa0 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 73 65 74 41 75 74 6f 45 78 69 74 28 66 61 his->application->setAutoExit(fa
106fc0 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 73 65 74 43 61 74 lse);.$this->application->setCat
106fe0 63 68 45 78 63 65 70 74 69 6f 6e 73 28 74 72 75 65 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e chExceptions(true);..if.($this->
107000 68 61 73 52 65 61 64 6c 69 6e 65 29 20 7b 0a 72 65 61 64 6c 69 6e 65 5f 72 65 61 64 5f 68 69 73 hasReadline).{.readline_read_his
107020 74 6f 72 79 28 24 74 68 69 73 2d 3e 68 69 73 74 6f 72 79 29 3b 0a 72 65 61 64 6c 69 6e 65 5f 63 tory($this->history);.readline_c
107040 6f 6d 70 6c 65 74 69 6f 6e 5f 66 75 6e 63 74 69 6f 6e 28 61 72 72 61 79 28 24 74 68 69 73 2c 20 ompletion_function(array($this,.
107060 27 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 27 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 'autocompleter'));.}..$this->out
107080 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 68 69 73 2d 3e 67 65 74 48 65 61 64 65 72 28 29 29 put->writeln($this->getHeader())
1070a0 3b 0a 24 70 68 70 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 ;.$php.=.null;.if.($this->proces
1070c0 73 49 73 6f 6c 61 74 69 6f 6e 29 20 7b 0a 24 66 69 6e 64 65 72 20 3d 20 6e 65 77 20 50 68 70 45 sIsolation).{.$finder.=.new.PhpE
1070e0 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 28 29 3b 0a 24 70 68 70 20 3d 20 24 66 69 6e 64 65 xecutableFinder();.$php.=.$finde
107100 72 2d 3e 66 69 6e 64 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c r->find();.$this->output->writel
107120 6e 28 3c 3c 3c 27 45 4f 46 27 0a 3c 69 6e 66 6f 3e 52 75 6e 6e 69 6e 67 20 77 69 74 68 20 70 72 n(<<<'EOF'.<info>Running.with.pr
107140 6f 63 65 73 73 20 69 73 6f 6c 61 74 69 6f 6e 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 63 6f 6e 73 ocess.isolation,.you.should.cons
107160 69 64 65 72 20 74 68 69 73 3a 3c 2f 69 6e 66 6f 3e 0a 20 20 2a 20 65 61 63 68 20 63 6f 6d 6d 61 ider.this:</info>...*.each.comma
107180 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 20 61 73 20 73 65 70 61 72 61 74 65 20 70 72 6f 63 65 nd.is.executed.as.separate.proce
1071a0 73 73 2c 0a 20 20 2a 20 63 6f 6d 6d 61 6e 64 73 20 64 6f 6e 27 74 20 73 75 70 70 6f 72 74 20 69 ss,...*.commands.don't.support.i
1071c0 6e 74 65 72 61 63 74 69 76 69 74 79 2c 20 61 6c 6c 20 70 61 72 61 6d 73 20 6d 75 73 74 20 62 65 nteractivity,.all.params.must.be
1071e0 20 70 61 73 73 65 64 20 65 78 70 6c 69 63 69 74 6c 79 2c 0a 20 20 2a 20 63 6f 6d 6d 61 6e 64 73 .passed.explicitly,...*.commands
107200 20 6f 75 74 70 75 74 20 69 73 20 6e 6f 74 20 63 6f 6c 6f 72 69 7a 65 64 2e 0a 0a 45 4f 46 0a 29 .output.is.not.colorized...EOF.)
107220 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 ;.}..while.(true).{.$command.=.$
107240 74 68 69 73 2d 3e 72 65 61 64 6c 69 6e 65 28 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d this->readline();..if.(false.===
107260 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 .$command).{.$this->output->writ
107280 65 6c 6e 28 22 5c 6e 22 29 3b 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d eln("\n");..break;.}..if.($this-
1072a0 3e 68 61 73 52 65 61 64 6c 69 6e 65 29 20 7b 0a 72 65 61 64 6c 69 6e 65 5f 61 64 64 5f 68 69 73 >hasReadline).{.readline_add_his
1072c0 74 6f 72 79 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 72 65 61 64 6c 69 6e 65 5f 77 72 69 74 65 5f 68 tory($command);.readline_write_h
1072e0 69 73 74 6f 72 79 28 24 74 68 69 73 2d 3e 68 69 73 74 6f 72 79 29 3b 0a 7d 0a 0a 69 66 20 28 24 istory($this->history);.}..if.($
107300 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 29 20 7b 0a 24 70 62 20 3d 20 this->processIsolation).{.$pb.=.
107320 6e 65 77 20 50 72 6f 63 65 73 73 42 75 69 6c 64 65 72 28 29 3b 0a 0a 24 70 72 6f 63 65 73 73 20 new.ProcessBuilder();..$process.
107340 3d 20 24 70 62 0a 2d 3e 61 64 64 28 24 70 68 70 29 0a 2d 3e 61 64 64 28 24 5f 53 45 52 56 45 52 =.$pb.->add($php).->add($_SERVER
107360 5b 27 61 72 67 76 27 5d 5b 30 5d 29 0a 2d 3e 61 64 64 28 24 63 6f 6d 6d 61 6e 64 29 0a 2d 3e 69 ['argv'][0]).->add($command).->i
107380 6e 68 65 72 69 74 45 6e 76 69 72 6f 6e 6d 65 6e 74 56 61 72 69 61 62 6c 65 73 28 74 72 75 65 29 nheritEnvironmentVariables(true)
1073a0 0a 2d 3e 67 65 74 50 72 6f 63 65 73 73 28 29 0a 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 .->getProcess().;..$output.=.$th
1073c0 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 24 70 72 6f 63 65 73 73 2d 3e 72 75 6e 28 66 75 6e 63 74 69 is->output;.$process->run(functi
1073e0 6f 6e 20 28 24 74 79 70 65 2c 20 24 64 61 74 61 29 20 75 73 65 20 28 24 6f 75 74 70 75 74 29 20 on.($type,.$data).use.($output).
107400 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 64 61 74 61 29 3b 0a 7d 29 3b 0a 0a {.$output->writeln($data);.});..
107420 24 72 65 74 20 3d 20 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 78 69 74 43 6f 64 65 28 29 3b 0a $ret.=.$process->getExitCode();.
107440 7d 20 65 6c 73 65 20 7b 0a 24 72 65 74 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 }.else.{.$ret.=.$this->applicati
107460 6f 6e 2d 3e 72 75 6e 28 6e 65 77 20 53 74 72 69 6e 67 49 6e 70 75 74 28 24 63 6f 6d 6d 61 6e 64 on->run(new.StringInput($command
107480 29 2c 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 21 3d 3d 20 ),.$this->output);.}..if.(0.!==.
1074a0 24 72 65 74 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 $ret).{.$this->output->writeln(s
1074c0 70 72 69 6e 74 66 28 27 3c 65 72 72 6f 72 3e 54 68 65 20 63 6f 6d 6d 61 6e 64 20 74 65 72 6d 69 printf('<error>The.command.termi
1074e0 6e 61 74 65 64 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 20 73 74 61 74 75 73 20 28 25 73 29 3c nated.with.an.error.status.(%s)<
107500 2f 65 72 72 6f 72 3e 27 2c 20 24 72 65 74 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 /error>',.$ret));.}.}.}.......pr
107520 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 61 64 65 72 28 29 0a 7b 0a 72 otected.function.getHeader().{.r
107540 65 74 75 72 6e 20 3c 3c 3c 45 4f 46 0a 0a 57 65 6c 63 6f 6d 65 20 74 6f 20 74 68 65 20 3c 69 6e eturn.<<<EOF..Welcome.to.the.<in
107560 66 6f 3e 7b 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 fo>{$this->application->getName(
107580 29 7d 3c 2f 69 6e 66 6f 3e 20 73 68 65 6c 6c 20 28 3c 63 6f 6d 6d 65 6e 74 3e 7b 24 74 68 69 73 )}</info>.shell.(<comment>{$this
1075a0 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 7d 3c 2f 63 6f ->application->getVersion()}</co
1075c0 6d 6d 65 6e 74 3e 29 2e 0a 0a 41 74 20 74 68 65 20 70 72 6f 6d 70 74 2c 20 74 79 70 65 20 3c 63 mment>)...At.the.prompt,.type.<c
1075e0 6f 6d 6d 65 6e 74 3e 68 65 6c 70 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 66 6f 72 20 73 6f 6d 65 20 68 omment>help</comment>.for.some.h
107600 65 6c 70 2c 0a 6f 72 20 3c 63 6f 6d 6d 65 6e 74 3e 6c 69 73 74 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 elp,.or.<comment>list</comment>.
107620 74 6f 20 67 65 74 20 61 20 6c 69 73 74 20 6f 66 20 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 6d 61 to.get.a.list.of.available.comma
107640 6e 64 73 2e 0a 0a 54 6f 20 65 78 69 74 20 74 68 65 20 73 68 65 6c 6c 2c 20 74 79 70 65 20 3c 63 nds...To.exit.the.shell,.type.<c
107660 6f 6d 6d 65 6e 74 3e 5e 44 3c 2f 63 6f 6d 6d 65 6e 74 3e 2e 0a 0a 45 4f 46 3b 0a 7d 0a 0a 0a 0a omment>^D</comment>...EOF;.}....
107680 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 6d 70 74 28 ...protected.function.getPrompt(
1076a0 29 0a 7b 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 46 ).{...return.$this->output->getF
1076c0 6f 72 6d 61 74 74 65 72 28 29 2d 3e 66 6f 72 6d 61 74 28 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 ormatter()->format($this->applic
1076e0 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 3e 20 27 29 3b 0a 7d 0a 0a 70 72 6f 74 ation->getName().'.>.');.}..prot
107700 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 74 70 75 74 28 29 0a 7b 0a 72 65 74 ected.function.getOutput().{.ret
107720 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 urn.$this->output;.}..protected.
107740 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 function.getApplication().{.retu
107760 72 6e 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a rn.$this->application;.}........
107780 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 28 .private.function.autocompleter(
1077a0 24 74 65 78 74 29 0a 7b 0a 24 69 6e 66 6f 20 3d 20 72 65 61 64 6c 69 6e 65 5f 69 6e 66 6f 28 29 $text).{.$info.=.readline_info()
1077c0 3b 0a 24 74 65 78 74 20 3d 20 73 75 62 73 74 72 28 24 69 6e 66 6f 5b 27 6c 69 6e 65 5f 62 75 66 ;.$text.=.substr($info['line_buf
1077e0 66 65 72 27 5d 2c 20 30 2c 20 24 69 6e 66 6f 5b 27 65 6e 64 27 5d 29 3b 0a 0a 69 66 20 28 24 69 fer'],.0,.$info['end']);..if.($i
107800 6e 66 6f 5b 27 70 6f 69 6e 74 27 5d 20 21 3d 3d 20 24 69 6e 66 6f 5b 27 65 6e 64 27 5d 29 20 7b nfo['point'].!==.$info['end']).{
107820 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d .return.true;.}....if.(false.===
107840 20 73 74 72 70 6f 73 28 24 74 65 78 74 2c 20 27 20 27 29 20 7c 7c 20 21 24 74 65 78 74 29 20 7b .strpos($text,.'.').||.!$text).{
107860 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 .return.array_keys($this->applic
107880 61 74 69 6f 6e 2d 3e 61 6c 6c 28 29 29 3b 0a 7d 0a 0a 0a 20 74 72 79 20 7b 0a 24 63 6f 6d 6d 61 ation->all());.}....try.{.$comma
1078a0 6e 64 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 66 69 6e 64 28 73 75 nd.=.$this->application->find(su
1078c0 62 73 74 72 28 24 74 65 78 74 2c 20 30 2c 20 73 74 72 70 6f 73 28 24 74 65 78 74 2c 20 27 20 27 bstr($text,.0,.strpos($text,.'.'
1078e0 29 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 72 )));.}.catch.(\Exception.$e).{.r
107900 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 6c 69 73 74 20 3d 20 61 72 72 61 79 28 27 2d 2d eturn.true;.}..$list.=.array('--
107920 68 65 6c 70 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 help');.foreach.($command->getDe
107940 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 finition()->getOptions().as.$opt
107960 69 6f 6e 29 20 7b 0a 24 6c 69 73 74 5b 5d 20 3d 20 27 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 ion).{.$list[].=.'--'.$option->g
107980 65 74 4e 61 6d 65 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 69 73 74 3b 0a 7d 0a 0a 0a 0a etName();.}..return.$list;.}....
1079a0 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 6c 69 6e 65 28 29 0a 7b ...private.function.readline().{
1079c0 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 6e 65 29 20 7b 0a 24 6c 69 6e 65 .if.($this->hasReadline).{.$line
1079e0 20 3d 20 72 65 61 64 6c 69 6e 65 28 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 6d 70 74 28 29 29 3b .=.readline($this->getPrompt());
107a00 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 .}.else.{.$this->output->write($
107a20 74 68 69 73 2d 3e 67 65 74 50 72 6f 6d 70 74 28 29 29 3b 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 this->getPrompt());.$line.=.fget
107a40 73 28 53 54 44 49 4e 2c 20 31 30 32 34 29 3b 0a 24 6c 69 6e 65 20 3d 20 28 66 61 6c 73 65 20 3d s(STDIN,.1024);.$line.=.(false.=
107a60 3d 3d 20 24 6c 69 6e 65 20 7c 7c 20 27 27 20 3d 3d 3d 20 24 6c 69 6e 65 29 20 3f 20 66 61 6c 73 ==.$line.||.''.===.$line).?.fals
107a80 65 20 3a 20 72 74 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 69 6e e.:.rtrim($line);.}..return.$lin
107aa0 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 63 65 73 73 e;.}..public.function.getProcess
107ac0 49 73 6f 6c 61 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 Isolation().{.return.$this->proc
107ae0 65 73 73 49 73 6f 6c 61 74 69 6f 6e 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e essIsolation;.}..public.function
107b00 20 73 65 74 50 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 28 24 70 72 6f 63 65 73 73 49 73 6f .setProcessIsolation($processIso
107b20 6c 61 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f lation).{.$this->processIsolatio
107b40 6e 20 3d 20 28 62 6f 6f 6c 29 20 24 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 3b 0a 0a 69 n.=.(bool).$processIsolation;..i
107b60 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 20 26 26 20 21 63 f.($this->processIsolation.&&.!c
107b80 6c 61 73 73 5f 65 78 69 73 74 73 28 27 53 79 6d 66 6f 6e 79 5c 5c 43 6f 6d 70 6f 6e 65 6e 74 5c lass_exists('Symfony\\Component\
107ba0 5c 50 72 6f 63 65 73 73 5c 5c 50 72 6f 63 65 73 73 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 \Process\\Process')).{.throw.new
107bc0 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 69 73 6f .RuntimeException('Unable.to.iso
107be0 6c 61 74 65 20 70 72 6f 63 65 73 73 65 73 20 61 73 20 74 68 65 20 53 79 6d 66 6f 6e 79 20 50 72 late.processes.as.the.Symfony.Pr
107c00 6f 63 65 73 73 20 43 6f 6d 70 6f 6e 65 6e 74 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 ocess.Component.is.not.installed
107c20 2e 27 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 .');.}.}.}.<?php...........names
107c40 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 53 pace.Symfony\Component\Console\S
107c60 74 79 6c 65 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e tyle;..use.Symfony\Component\Con
107c80 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e sole\Formatter\OutputFormatterIn
107ca0 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 terface;.use.Symfony\Component\C
107cc0 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 50 72 6f 67 72 65 73 73 42 61 72 3b 0a 75 73 65 20 53 onsole\Helper\ProgressBar;.use.S
107ce0 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c ymfony\Component\Console\Output\
107d00 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 OutputInterface;.......abstract.
107d20 63 6c 61 73 73 20 4f 75 74 70 75 74 53 74 79 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 class.OutputStyle.implements.Out
107d40 70 75 74 49 6e 74 65 72 66 61 63 65 2c 20 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 putInterface,.StyleInterface.{.p
107d60 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 rivate.$output;.....public.funct
107d80 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 ion.__construct(OutputInterface.
107da0 24 6f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 $output).{.$this->output.=.$outp
107dc0 75 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 65 77 4c 69 6e ut;.}.....public.function.newLin
107de0 65 28 24 63 6f 75 6e 74 20 3d 20 31 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 e($count.=.1).{.$this->output->w
107e00 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 50 48 50 5f 45 4f 4c 2c 20 24 63 6f 75 6e 74 29 rite(str_repeat(PHP_EOL,.$count)
107e20 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 );.}.......public.function.creat
107e40 65 50 72 6f 67 72 65 73 73 42 61 72 28 24 6d 61 78 20 3d 20 30 29 0a 7b 0a 72 65 74 75 72 6e 20 eProgressBar($max.=.0).{.return.
107e60 6e 65 77 20 50 72 6f 67 72 65 73 73 42 61 72 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2c 20 24 new.ProgressBar($this->output,.$
107e80 6d 61 78 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 max);.}.....public.function.writ
107ea0 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 66 61 6c 73 65 2c 20 24 e($messages,.$newline.=.false,.$
107ec0 74 79 70 65 20 3d 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 24 74 type.=.self::OUTPUT_NORMAL).{.$t
107ee0 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e his->output->write($messages,.$n
107f00 65 77 6c 69 6e 65 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ewline,.$type);.}.....public.fun
107f20 63 74 69 6f 6e 20 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 24 74 79 70 65 20 3d ction.writeln($messages,.$type.=
107f40 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f .self::OUTPUT_NORMAL).{.$this->o
107f60 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 24 74 79 70 65 29 utput->writeln($messages,.$type)
107f80 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 62 6f ;.}.....public.function.setVerbo
107fa0 73 69 74 79 28 24 6c 65 76 65 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 sity($level).{.$this->output->se
107fc0 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 tVerbosity($level);.}.....public
107fe0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 .function.getVerbosity().{.retur
108000 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 3b n.$this->output->getVerbosity();
108020 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f 72 61 .}.....public.function.setDecora
108040 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d ted($decorated).{.$this->output-
108060 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 7d 0a 0a 0a 0a >setDecorated($decorated);.}....
108080 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 0a 7b .public.function.isDecorated().{
1080a0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 69 73 44 65 63 6f 72 61 74 .return.$this->output->isDecorat
1080c0 65 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 ed();.}.....public.function.setF
1080e0 6f 72 6d 61 74 74 65 72 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 ormatter(OutputFormatterInterfac
108100 65 20 24 66 6f 72 6d 61 74 74 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 e.$formatter).{.$this->output->s
108120 65 74 46 6f 72 6d 61 74 74 65 72 28 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 etFormatter($formatter);.}.....p
108140 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 0a 7b 0a ublic.function.getFormatter().{.
108160 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 return.$this->output->getFormatt
108180 65 72 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 er();.}.}.<?php...........namesp
1081a0 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 53 74 ace.Symfony\Component\Console\St
1081c0 79 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 53 74 79 6c 65 49 6e 74 65 72 66 yle;.......interface.StyleInterf
1081e0 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 69 74 6c 65 ace.{......public.function.title
108200 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ($message);.......public.functio
108220 6e 20 73 65 63 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 n.section($message);.......publi
108240 63 20 66 75 6e 63 74 69 6f 6e 20 6c 69 73 74 69 6e 67 28 61 72 72 61 79 20 24 65 6c 65 6d 65 6e c.function.listing(array.$elemen
108260 74 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 65 78 74 28 ts);.......public.function.text(
108280 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e $message);.......public.function
1082a0 20 73 75 63 63 65 73 73 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 .success($message);.......public
1082c0 20 66 75 6e 63 74 69 6f 6e 20 65 72 72 6f 72 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a .function.error($message);......
1082e0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 61 72 6e 69 6e 67 28 24 6d 65 73 73 61 67 .public.function.warning($messag
108300 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 65 28 24 e);.......public.function.note($
108320 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 message);.......public.function.
108340 63 61 75 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 caution($message);........public
108360 20 66 75 6e 63 74 69 6f 6e 20 74 61 62 6c 65 28 61 72 72 61 79 20 24 68 65 61 64 65 72 73 2c 20 .function.table(array.$headers,.
108380 61 72 72 61 79 20 24 72 6f 77 73 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 array.$rows);...........public.f
1083a0 75 6e 63 74 69 6f 6e 20 61 73 6b 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 unction.ask($question,.$default.
1083c0 3d 20 6e 75 6c 6c 2c 20 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a =.null,.$validator.=.null);.....
1083e0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 48 69 64 64 65 6e 28 24 .....public.function.askHidden($
108400 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a question,.$validator.=.null);...
108420 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 72 6d 28 24 .......public.function.confirm($
108440 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 3b 0a 0a 0a 0a 0a question,.$default.=.true);.....
108460 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 6f 69 63 65 28 24 71 75 ......public.function.choice($qu
108480 65 73 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 66 61 75 6c 74 estion,.array.$choices,.$default
1084a0 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 .=.null);.......public.function.
1084c0 6e 65 77 4c 69 6e 65 28 24 63 6f 75 6e 74 20 3d 20 31 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 newLine($count.=.1);.......publi
1084e0 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 67 72 65 73 73 53 74 61 72 74 28 24 6d 61 78 20 3d 20 c.function.progressStart($max.=.
108500 30 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 67 72 65 0);.......public.function.progre
108520 73 73 41 64 76 61 6e 63 65 28 24 73 74 65 70 20 3d 20 31 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ssAdvance($step.=.1);.....public
108540 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 67 72 65 73 73 46 69 6e 69 73 68 28 29 3b 0a 7d 0a 3c 3f .function.progressFinish();.}.<?
108560 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c php...........namespace.Symfony\
108580 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 53 74 79 6c 65 3b 0a 0a 75 73 65 20 53 79 Component\Console\Style;..use.Sy
1085a0 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 mfony\Component\Console\Applicat
1085c0 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f ion;.use.Symfony\Component\Conso
1085e0 6c 65 5c 45 78 63 65 70 74 69 6f 6e 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 3b 0a 75 le\Exception\RuntimeException;.u
108600 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 se.Symfony\Component\Console\For
108620 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 3b 0a 75 73 65 20 53 79 6d 66 matter\OutputFormatter;.use.Symf
108640 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 48 65 6c ony\Component\Console\Helper\Hel
108660 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f per;.use.Symfony\Component\Conso
108680 6c 65 5c 48 65 6c 70 65 72 5c 50 72 6f 67 72 65 73 73 42 61 72 3b 0a 75 73 65 20 53 79 6d 66 6f le\Helper\ProgressBar;.use.Symfo
1086a0 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 53 79 6d 66 ny\Component\Console\Helper\Symf
1086c0 6f 6e 79 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 onyQuestionHelper;.use.Symfony\C
1086e0 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 54 61 62 6c 65 3b 0a 75 omponent\Console\Helper\Table;.u
108700 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 se.Symfony\Component\Console\Inp
108720 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 ut\InputInterface;.use.Symfony\C
108740 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 42 75 66 66 65 72 65 64 omponent\Console\Output\Buffered
108760 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f Output;.use.Symfony\Component\Co
108780 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 nsole\Output\OutputInterface;.us
1087a0 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 e.Symfony\Component\Console\Ques
1087c0 74 69 6f 6e 5c 43 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 tion\ChoiceQuestion;.use.Symfony
1087e0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 43 6f 6e 66 \Component\Console\Question\Conf
108800 69 72 6d 61 74 69 6f 6e 51 75 65 73 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f irmationQuestion;.use.Symfony\Co
108820 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 51 75 65 73 74 69 6f mponent\Console\Question\Questio
108840 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 79 6d 66 6f 6e 79 53 74 79 6c 65 20 65 78 74 65 n;.......class.SymfonyStyle.exte
108860 6e 64 73 20 4f 75 74 70 75 74 53 74 79 6c 65 0a 7b 0a 63 6f 6e 73 74 20 4d 41 58 5f 4c 49 4e 45 nds.OutputStyle.{.const.MAX_LINE
108880 5f 4c 45 4e 47 54 48 20 3d 20 31 32 30 3b 0a 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 3b 0a _LENGTH.=.120;..private.$input;.
1088a0 70 72 69 76 61 74 65 20 24 71 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 3b 0a 70 72 69 76 61 74 65 private.$questionHelper;.private
1088c0 20 24 70 72 6f 67 72 65 73 73 42 61 72 3b 0a 70 72 69 76 61 74 65 20 24 6c 69 6e 65 4c 65 6e 67 .$progressBar;.private.$lineLeng
1088e0 74 68 3b 0a 70 72 69 76 61 74 65 20 24 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 3b 0a 0a 0a 0a th;.private.$bufferedOutput;....
108900 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 6e ..public.function.__construct(In
108920 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 putInterface.$input,.OutputInter
108940 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 24 face.$output).{.$this->input.=.$
108960 69 6e 70 75 74 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 20 3d 20 6e input;.$this->bufferedOutput.=.n
108980 65 77 20 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 28 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 ew.BufferedOutput($output->getVe
1089a0 72 62 6f 73 69 74 79 28 29 2c 20 66 61 6c 73 65 2c 20 63 6c 6f 6e 65 20 24 6f 75 74 70 75 74 2d rbosity(),.false,.clone.$output-
1089c0 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 29 3b 0a 0a 20 24 74 68 69 73 2d 3e 6c 69 6e 65 4c >getFormatter());...$this->lineL
1089e0 65 6e 67 74 68 20 3d 20 6d 69 6e 28 24 74 68 69 73 2d 3e 67 65 74 54 65 72 6d 69 6e 61 6c 57 69 ength.=.min($this->getTerminalWi
108a00 64 74 68 28 29 20 2d 20 28 69 6e 74 29 20 28 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 dth().-.(int).(DIRECTORY_SEPARAT
108a20 4f 52 20 3d 3d 3d 20 27 5c 5c 27 29 2c 20 73 65 6c 66 3a 3a 4d 41 58 5f 4c 49 4e 45 5f 4c 45 4e OR.===.'\\'),.self::MAX_LINE_LEN
108a40 47 54 48 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6f 75 74 70 GTH);..parent::__construct($outp
108a60 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ut);.}...........public.function
108a80 20 62 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 73 2c 20 24 74 79 70 65 20 3d 20 6e 75 6c 6c 2c 20 .block($messages,.$type.=.null,.
108aa0 24 73 74 79 6c 65 20 3d 20 6e 75 6c 6c 2c 20 24 70 72 65 66 69 78 20 3d 20 27 20 27 2c 20 24 70 $style.=.null,.$prefix.=.'.',.$p
108ac0 61 64 64 69 6e 67 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 50 72 65 adding.=.false).{.$this->autoPre
108ae0 70 65 6e 64 42 6c 6f 63 6b 28 29 3b 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 69 73 5f 61 72 72 61 pendBlock();.$messages.=.is_arra
108b00 79 28 24 6d 65 73 73 61 67 65 73 29 20 3f 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 6d 65 73 y($messages).?.array_values($mes
108b20 73 61 67 65 73 29 20 3a 20 61 72 72 61 79 28 24 6d 65 73 73 61 67 65 73 29 3b 0a 24 6c 69 6e 65 sages).:.array($messages);.$line
108b40 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 79 s.=.array();....if.(null.!==.$ty
108b60 70 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 30 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 5b 25 pe).{.$messages[0].=.sprintf('[%
108b80 73 5d 20 25 73 27 2c 20 24 74 79 70 65 2c 20 24 6d 65 73 73 61 67 65 73 5b 30 5d 29 3b 0a 7d 0a s].%s',.$type,.$messages[0]);.}.
108ba0 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 24 6b 65 79 20 3d 3e ...foreach.($messages.as.$key.=>
108bc0 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 4f 75 74 70 75 74 46 6f .$message).{.$message.=.OutputFo
108be0 72 6d 61 74 74 65 72 3a 3a 65 73 63 61 70 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 24 6c 69 6e 65 rmatter::escape($message);.$line
108c00 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6c 69 6e 65 73 2c 20 65 78 70 6c 6f 64 65 28 s.=.array_merge($lines,.explode(
108c20 50 48 50 5f 45 4f 4c 2c 20 77 6f 72 64 77 72 61 70 28 24 6d 65 73 73 61 67 65 2c 20 24 74 68 69 PHP_EOL,.wordwrap($message,.$thi
108c40 73 2d 3e 6c 69 6e 65 4c 65 6e 67 74 68 20 2d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 28 24 s->lineLength.-.Helper::strlen($
108c60 70 72 65 66 69 78 29 2c 20 50 48 50 5f 45 4f 4c 2c 20 74 72 75 65 29 29 29 3b 0a 0a 69 66 20 28 prefix),.PHP_EOL,.true)));..if.(
108c80 63 6f 75 6e 74 28 24 6d 65 73 73 61 67 65 73 29 20 3e 20 31 20 26 26 20 24 6b 65 79 20 3c 20 63 count($messages).>.1.&&.$key.<.c
108ca0 6f 75 6e 74 28 24 6d 65 73 73 61 67 65 73 29 20 2d 20 31 29 20 7b 0a 24 6c 69 6e 65 73 5b 5d 20 ount($messages).-.1).{.$lines[].
108cc0 3d 20 27 27 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 70 61 64 64 69 6e 67 20 26 26 20 24 74 68 69 73 =.'';.}.}..if.($padding.&&.$this
108ce0 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 29 20 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 ->isDecorated()).{.array_unshift
108d00 28 24 6c 69 6e 65 73 2c 20 27 27 29 3b 0a 24 6c 69 6e 65 73 5b 5d 20 3d 20 27 27 3b 0a 7d 0a 0a ($lines,.'');.$lines[].=.'';.}..
108d20 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 26 24 6c 69 6e 65 29 20 7b 0a 24 6c 69 foreach.($lines.as.&$line).{.$li
108d40 6e 65 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 25 73 27 2c 20 24 70 72 65 66 69 78 2c 20 24 6c ne.=.sprintf('%s%s',.$prefix,.$l
108d60 69 6e 65 29 3b 0a 24 6c 69 6e 65 20 2e 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 ine);.$line..=.str_repeat('.',.$
108d80 74 68 69 73 2d 3e 6c 69 6e 65 4c 65 6e 67 74 68 20 2d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 this->lineLength.-.Helper::strle
108da0 6e 57 69 74 68 6f 75 74 44 65 63 6f 72 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 46 6f 72 nWithoutDecoration($this->getFor
108dc0 6d 61 74 74 65 72 28 29 2c 20 24 6c 69 6e 65 29 29 3b 0a 0a 69 66 20 28 24 73 74 79 6c 65 29 20 matter(),.$line));..if.($style).
108de0 7b 0a 24 6c 69 6e 65 20 3d 20 73 70 72 69 6e 74 66 28 27 3c 25 73 3e 25 73 3c 2f 3e 27 2c 20 24 {.$line.=.sprintf('<%s>%s</>',.$
108e00 73 74 79 6c 65 2c 20 24 6c 69 6e 65 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 style,.$line);.}.}..$this->write
108e20 6c 6e 28 24 6c 69 6e 65 73 29 3b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 29 3b 0a 7d 0a ln($lines);.$this->newLine();.}.
108e40 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 69 74 6c 65 28 24 6d 65 73 73 61 ....public.function.title($messa
108e60 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 50 72 65 70 65 6e 64 42 6c 6f 63 6b 28 29 3b ge).{.$this->autoPrependBlock();
108e80 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 6c 6e 28 61 72 72 61 79 28 0a 73 70 72 69 6e 74 66 28 27 .$this->writeln(array(.sprintf('
108ea0 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 3e 27 2c 20 24 6d 65 73 73 61 67 65 29 2c 0a 73 70 72 69 <comment>%s</>',.$message),.spri
108ec0 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 3e 27 2c 20 73 74 72 5f 72 65 70 65 61 74 ntf('<comment>%s</>',.str_repeat
108ee0 28 27 3d 27 2c 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 6f 75 74 44 65 63 6f 72 ('=',.Helper::strlenWithoutDecor
108f00 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 6d 65 ation($this->getFormatter(),.$me
108f20 73 73 61 67 65 29 29 29 2c 0a 29 29 3b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 29 3b 0a ssage))),.));.$this->newLine();.
108f40 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 63 74 69 6f 6e 28 24 6d }.....public.function.section($m
108f60 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 50 72 65 70 65 6e 64 42 6c 6f 63 essage).{.$this->autoPrependBloc
108f80 6b 28 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 6c 6e 28 61 72 72 61 79 28 0a 73 70 72 69 6e k();.$this->writeln(array(.sprin
108fa0 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 3e 27 2c 20 24 6d 65 73 73 61 67 65 29 2c 0a tf('<comment>%s</>',.$message),.
108fc0 73 70 72 69 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 3e 27 2c 20 73 74 72 5f 72 65 sprintf('<comment>%s</>',.str_re
108fe0 70 65 61 74 28 27 2d 27 2c 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 6f 75 74 44 peat('-',.Helper::strlenWithoutD
109000 65 63 6f 72 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c ecoration($this->getFormatter(),
109020 20 24 6d 65 73 73 61 67 65 29 29 29 2c 0a 29 29 3b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 .$message))),.));.$this->newLine
109040 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 69 73 74 69 6e ();.}.....public.function.listin
109060 67 28 61 72 72 61 79 20 24 65 6c 65 6d 65 6e 74 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f g(array.$elements).{.$this->auto
109080 50 72 65 70 65 6e 64 54 65 78 74 28 29 3b 0a 24 65 6c 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 PrependText();.$elements.=.array
1090a0 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 65 6c 65 6d 65 6e 74 29 20 7b 0a 72 65 74 75 72 _map(function.($element).{.retur
1090c0 6e 20 73 70 72 69 6e 74 66 28 27 20 2a 20 25 73 27 2c 20 24 65 6c 65 6d 65 6e 74 29 3b 0a 7d 2c n.sprintf('.*.%s',.$element);.},
1090e0 20 24 65 6c 65 6d 65 6e 74 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 6c 6e 28 24 65 6c .$elements);..$this->writeln($el
109100 65 6d 65 6e 74 73 29 3b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 29 3b 0a 7d 0a 0a 0a 0a ements);.$this->newLine();.}....
109120 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 65 78 74 28 24 6d 65 73 73 61 67 65 29 0a .public.function.text($message).
109140 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 50 72 65 70 65 6e 64 54 65 78 74 28 29 3b 0a 0a 24 6d 65 {.$this->autoPrependText();..$me
109160 73 73 61 67 65 73 20 3d 20 69 73 5f 61 72 72 61 79 28 24 6d 65 73 73 61 67 65 29 20 3f 20 61 72 ssages.=.is_array($message).?.ar
109180 72 61 79 5f 76 61 6c 75 65 73 28 24 6d 65 73 73 61 67 65 29 20 3a 20 61 72 72 61 79 28 24 6d 65 ray_values($message).:.array($me
1091a0 73 73 61 67 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 24 6d ssage);.foreach.($messages.as.$m
1091c0 65 73 73 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 essage).{.$this->writeln(sprintf
1091e0 28 27 20 25 73 27 2c 20 24 6d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c ('.%s',.$message));.}.}.....publ
109200 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 6d 65 6e 74 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a ic.function.comment($message).{.
109220 24 74 68 69 73 2d 3e 61 75 74 6f 50 72 65 70 65 6e 64 54 65 78 74 28 29 3b 0a 0a 24 6d 65 73 73 $this->autoPrependText();..$mess
109240 61 67 65 73 20 3d 20 69 73 5f 61 72 72 61 79 28 24 6d 65 73 73 61 67 65 29 20 3f 20 61 72 72 61 ages.=.is_array($message).?.arra
109260 79 5f 76 61 6c 75 65 73 28 24 6d 65 73 73 61 67 65 29 20 3a 20 61 72 72 61 79 28 24 6d 65 73 73 y_values($message).:.array($mess
109280 61 67 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 24 6d 65 73 age);.foreach.($messages.as.$mes
1092a0 73 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 sage).{.$this->writeln(sprintf('
1092c0 20 2f 2f 20 25 73 27 2c 20 24 6d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 .//.%s',.$message));.}.}.....pub
1092e0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 63 63 65 73 73 28 24 6d 65 73 73 61 67 65 29 0a 7b lic.function.success($message).{
109300 0a 24 74 68 69 73 2d 3e 62 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 2c 20 27 4f 4b 27 2c 20 27 66 .$this->block($message,.'OK',.'f
109320 67 3d 62 6c 61 63 6b 3b 62 67 3d 67 72 65 65 6e 27 2c 20 27 20 27 2c 20 74 72 75 65 29 3b 0a 7d g=black;bg=green',.'.',.true);.}
109340 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 72 72 6f 72 28 24 6d 65 73 73 .....public.function.error($mess
109360 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 2c 20 27 45 age).{.$this->block($message,.'E
109380 52 52 4f 52 27 2c 20 27 66 67 3d 77 68 69 74 65 3b 62 67 3d 72 65 64 27 2c 20 27 20 27 2c 20 74 RROR',.'fg=white;bg=red',.'.',.t
1093a0 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 61 72 6e rue);.}.....public.function.warn
1093c0 69 6e 67 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 6c 6f 63 6b 28 24 6d 65 ing($message).{.$this->block($me
1093e0 73 73 61 67 65 2c 20 27 57 41 52 4e 49 4e 47 27 2c 20 27 66 67 3d 77 68 69 74 65 3b 62 67 3d 72 ssage,.'WARNING',.'fg=white;bg=r
109400 65 64 27 2c 20 27 20 27 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ed',.'.',.true);.}.....public.fu
109420 6e 63 74 69 6f 6e 20 6e 6f 74 65 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 nction.note($message).{.$this->b
109440 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 2c 20 27 4e 4f 54 45 27 2c 20 27 66 67 3d 79 65 6c 6c 6f lock($message,.'NOTE',.'fg=yello
109460 77 27 2c 20 27 20 21 20 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f w',.'.!.');.}.....public.functio
109480 6e 20 63 61 75 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 6c 6f n.caution($message).{.$this->blo
1094a0 63 6b 28 24 6d 65 73 73 61 67 65 2c 20 27 43 41 55 54 49 4f 4e 27 2c 20 27 66 67 3d 77 68 69 74 ck($message,.'CAUTION',.'fg=whit
1094c0 65 3b 62 67 3d 72 65 64 27 2c 20 27 20 21 20 27 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 e;bg=red',.'.!.',.true);.}.....p
1094e0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 61 62 6c 65 28 61 72 72 61 79 20 24 68 65 61 64 ublic.function.table(array.$head
109500 65 72 73 2c 20 61 72 72 61 79 20 24 72 6f 77 73 29 0a 7b 0a 24 68 65 61 64 65 72 73 20 3d 20 61 ers,.array.$rows).{.$headers.=.a
109520 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 7b 20 72 65 74 rray_map(function.($value).{.ret
109540 75 72 6e 20 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e 25 73 3c 2f 3e 27 2c 20 24 76 61 6c 75 urn.sprintf('<info>%s</>',.$valu
109560 65 29 3b 20 7d 2c 20 24 68 65 61 64 65 72 73 29 3b 0a 0a 24 74 61 62 6c 65 20 3d 20 6e 65 77 20 e);.},.$headers);..$table.=.new.
109580 54 61 62 6c 65 28 24 74 68 69 73 29 3b 0a 24 74 61 62 6c 65 2d 3e 73 65 74 48 65 61 64 65 72 73 Table($this);.$table->setHeaders
1095a0 28 24 68 65 61 64 65 72 73 29 3b 0a 24 74 61 62 6c 65 2d 3e 73 65 74 52 6f 77 73 28 24 72 6f 77 ($headers);.$table->setRows($row
1095c0 73 29 3b 0a 24 74 61 62 6c 65 2d 3e 73 65 74 53 74 79 6c 65 28 27 73 79 6d 66 6f 6e 79 2d 73 74 s);.$table->setStyle('symfony-st
1095e0 79 6c 65 2d 67 75 69 64 65 27 29 3b 0a 0a 24 74 61 62 6c 65 2d 3e 72 65 6e 64 65 72 28 29 3b 0a yle-guide');..$table->render();.
109600 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 $this->newLine();.}.....public.f
109620 75 6e 63 74 69 6f 6e 20 61 73 6b 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 unction.ask($question,.$default.
109640 3d 20 6e 75 6c 6c 2c 20 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 71 75 =.null,.$validator.=.null).{.$qu
109660 65 73 74 69 6f 6e 20 3d 20 6e 65 77 20 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c estion.=.new.Question($question,
109680 20 24 64 65 66 61 75 6c 74 29 3b 0a 24 71 75 65 73 74 69 6f 6e 2d 3e 73 65 74 56 61 6c 69 64 61 .$default);.$question->setValida
1096a0 74 6f 72 28 24 76 61 6c 69 64 61 74 6f 72 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e tor($validator);..return.$this->
1096c0 61 73 6b 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 askQuestion($question);.}.....pu
1096e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 48 69 64 64 65 6e 28 24 71 75 65 73 74 69 6f blic.function.askHidden($questio
109700 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 71 75 65 73 74 69 6f n,.$validator.=.null).{.$questio
109720 6e 20 3d 20 6e 65 77 20 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 29 3b 0a 0a 24 71 n.=.new.Question($question);..$q
109740 75 65 73 74 69 6f 6e 2d 3e 73 65 74 48 69 64 64 65 6e 28 74 72 75 65 29 3b 0a 24 71 75 65 73 74 uestion->setHidden(true);.$quest
109760 69 6f 6e 2d 3e 73 65 74 56 61 6c 69 64 61 74 6f 72 28 24 76 61 6c 69 64 61 74 6f 72 29 3b 0a 0a ion->setValidator($validator);..
109780 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 73 6b 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 return.$this->askQuestion($quest
1097a0 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 ion);.}.....public.function.conf
1097c0 69 72 6d 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 0a irm($question,.$default.=.true).
1097e0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 73 6b 51 75 65 73 74 69 6f 6e 28 6e 65 77 20 {.return.$this->askQuestion(new.
109800 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 ConfirmationQuestion($question,.
109820 24 64 65 66 61 75 6c 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f $default));.}.....public.functio
109840 6e 20 63 68 6f 69 63 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 63 68 6f 69 63 n.choice($question,.array.$choic
109860 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 es,.$default.=.null).{.if.(null.
109880 21 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 24 76 61 6c 75 65 73 20 3d 20 61 72 72 61 79 5f !==.$default).{.$values.=.array_
1098a0 66 6c 69 70 28 24 63 68 6f 69 63 65 73 29 3b 0a 24 64 65 66 61 75 6c 74 20 3d 20 24 76 61 6c 75 flip($choices);.$default.=.$valu
1098c0 65 73 5b 24 64 65 66 61 75 6c 74 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 es[$default];.}..return.$this->a
1098e0 73 6b 51 75 65 73 74 69 6f 6e 28 6e 65 77 20 43 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 28 24 71 skQuestion(new.ChoiceQuestion($q
109900 75 65 73 74 69 6f 6e 2c 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 66 61 75 6c 74 29 29 3b 0a 7d uestion,.$choices,.$default));.}
109920 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 67 72 65 73 73 53 74 61 .....public.function.progressSta
109940 72 74 28 24 6d 61 78 20 3d 20 30 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 42 61 rt($max.=.0).{.$this->progressBa
109960 72 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 50 72 6f 67 72 65 73 73 42 61 72 28 24 6d 61 r.=.$this->createProgressBar($ma
109980 78 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 42 61 72 2d 3e 73 74 61 72 74 28 29 3b x);.$this->progressBar->start();
1099a0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 67 72 65 73 73 41 .}.....public.function.progressA
1099c0 64 76 61 6e 63 65 28 24 73 74 65 70 20 3d 20 31 29 0a 7b 0a 24 74 68 69 73 2d 3e 67 65 74 50 72 dvance($step.=.1).{.$this->getPr
1099e0 6f 67 72 65 73 73 42 61 72 28 29 2d 3e 61 64 76 61 6e 63 65 28 24 73 74 65 70 29 3b 0a 7d 0a 0a ogressBar()->advance($step);.}..
109a00 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 67 72 65 73 73 46 69 6e 69 73 ...public.function.progressFinis
109a20 68 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 42 61 72 28 29 2d 3e 66 h().{.$this->getProgressBar()->f
109a40 69 6e 69 73 68 28 29 3b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 32 29 3b 0a 24 74 68 69 inish();.$this->newLine(2);.$thi
109a60 73 2d 3e 70 72 6f 67 72 65 73 73 42 61 72 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 s->progressBar.=.null;.}.....pub
109a80 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 50 72 6f 67 72 65 73 73 42 61 72 28 24 lic.function.createProgressBar($
109aa0 6d 61 78 20 3d 20 30 29 0a 7b 0a 24 70 72 6f 67 72 65 73 73 42 61 72 20 3d 20 70 61 72 65 6e 74 max.=.0).{.$progressBar.=.parent
109ac0 3a 3a 63 72 65 61 74 65 50 72 6f 67 72 65 73 73 42 61 72 28 24 6d 61 78 29 3b 0a 0a 69 66 20 28 ::createProgressBar($max);..if.(
109ae0 27 5c 5c 27 20 21 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a '\\'.!==.DIRECTORY_SEPARATOR).{.
109b00 24 70 72 6f 67 72 65 73 73 42 61 72 2d 3e 73 65 74 45 6d 70 74 79 42 61 72 43 68 61 72 61 63 74 $progressBar->setEmptyBarCharact
109b20 65 72 28 27 e2 96 91 27 29 3b 20 0a 20 24 70 72 6f 67 72 65 73 73 42 61 72 2d 3e 73 65 74 50 72 er('...');...$progressBar->setPr
109b40 6f 67 72 65 73 73 43 68 61 72 61 63 74 65 72 28 27 27 29 3b 0a 24 70 72 6f 67 72 65 73 73 42 61 ogressCharacter('');.$progressBa
109b60 72 2d 3e 73 65 74 42 61 72 43 68 61 72 61 63 74 65 72 28 27 e2 96 93 27 29 3b 20 0a 20 7d 0a 0a r->setBarCharacter('...');...}..
109b80 72 65 74 75 72 6e 20 24 70 72 6f 67 72 65 73 73 42 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 return.$progressBar;.}.......pub
109ba0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 51 75 65 73 74 69 6f 6e 28 51 75 65 73 74 69 6f lic.function.askQuestion(Questio
109bc0 6e 20 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d n.$question).{.if.($this->input-
109be0 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 50 >isInteractive()).{.$this->autoP
109c00 72 65 70 65 6e 64 42 6c 6f 63 6b 28 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 71 75 rependBlock();.}..if.(!$this->qu
109c20 65 73 74 69 6f 6e 48 65 6c 70 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 71 75 65 73 74 69 6f 6e 48 estionHelper).{.$this->questionH
109c40 65 6c 70 65 72 20 3d 20 6e 65 77 20 53 79 6d 66 6f 6e 79 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 elper.=.new.SymfonyQuestionHelpe
109c60 72 28 29 3b 0a 7d 0a 0a 24 61 6e 73 77 65 72 20 3d 20 24 74 68 69 73 2d 3e 71 75 65 73 74 69 6f r();.}..$answer.=.$this->questio
109c80 6e 48 65 6c 70 65 72 2d 3e 61 73 6b 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 74 68 69 73 nHelper->ask($this->input,.$this
109ca0 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d ,.$question);..if.($this->input-
109cc0 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 >isInteractive()).{.$this->newLi
109ce0 6e 65 28 29 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 2d 3e 77 72 69 ne();.$this->bufferedOutput->wri
109d00 74 65 28 22 5c 6e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 65 72 3b 0a 7d 0a 0a te("\n");.}..return.$answer;.}..
109d20 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 ...public.function.writeln($mess
109d40 61 67 65 73 2c 20 24 74 79 70 65 20 3d 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 ages,.$type.=.self::OUTPUT_NORMA
109d60 4c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 L).{.parent::writeln($messages,.
109d80 24 74 79 70 65 29 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 2d 3e 77 $type);.$this->bufferedOutput->w
109da0 72 69 74 65 6c 6e 28 24 74 68 69 73 2d 3e 72 65 64 75 63 65 42 75 66 66 65 72 28 24 6d 65 73 73 riteln($this->reduceBuffer($mess
109dc0 61 67 65 73 29 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ages),.$type);.}.....public.func
109de0 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d tion.write($messages,.$newline.=
109e00 20 66 61 6c 73 65 2c 20 24 74 79 70 65 20 3d 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 .false,.$type.=.self::OUTPUT_NOR
109e20 4d 41 4c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 MAL).{.parent::write($messages,.
109e40 24 6e 65 77 6c 69 6e 65 2c 20 24 74 79 70 65 29 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 $newline,.$type);.$this->buffere
109e60 64 4f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 74 68 69 73 2d 3e 72 65 64 75 63 65 42 75 66 66 dOutput->write($this->reduceBuff
109e80 65 72 28 24 6d 65 73 73 61 67 65 73 29 2c 20 24 6e 65 77 6c 69 6e 65 2c 20 24 74 79 70 65 29 3b er($messages),.$newline,.$type);
109ea0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 65 77 4c 69 6e 65 28 24 .}.....public.function.newLine($
109ec0 63 6f 75 6e 74 20 3d 20 31 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 6e 65 77 4c 69 6e 65 28 24 63 6f count.=.1).{.parent::newLine($co
109ee0 75 6e 74 29 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 2d 3e 77 72 69 unt);.$this->bufferedOutput->wri
109f00 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 22 5c 6e 22 2c 20 24 63 6f 75 6e 74 29 29 3b 0a 7d 0a te(str_repeat("\n",.$count));.}.
109f20 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 67 72 65 73 73 ....private.function.getProgress
109f40 42 61 72 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 42 61 72 29 Bar().{.if.(!$this->progressBar)
109f60 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 .{.throw.new.RuntimeException('T
109f80 68 65 20 50 72 6f 67 72 65 73 73 42 61 72 20 69 73 20 6e 6f 74 20 73 74 61 72 74 65 64 2e 27 29 he.ProgressBar.is.not.started.')
109fa0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 42 61 72 3b 0a ;.}..return.$this->progressBar;.
109fc0 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 65 72 6d 69 6e 61 6c 57 }..private.function.getTerminalW
109fe0 69 64 74 68 28 29 0a 7b 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 6e 65 77 20 41 70 70 6c idth().{.$application.=.new.Appl
10a000 69 63 61 74 69 6f 6e 28 29 3b 0a 24 64 69 6d 65 6e 73 69 6f 6e 73 20 3d 20 24 61 70 70 6c 69 63 ication();.$dimensions.=.$applic
10a020 61 74 69 6f 6e 2d 3e 67 65 74 54 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 28 29 3b 0a ation->getTerminalDimensions();.
10a040 0a 72 65 74 75 72 6e 20 24 64 69 6d 65 6e 73 69 6f 6e 73 5b 30 5d 20 3f 3a 20 73 65 6c 66 3a 3a .return.$dimensions[0].?:.self::
10a060 4d 41 58 5f 4c 49 4e 45 5f 4c 45 4e 47 54 48 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 MAX_LINE_LENGTH;.}..private.func
10a080 74 69 6f 6e 20 61 75 74 6f 50 72 65 70 65 6e 64 42 6c 6f 63 6b 28 29 0a 7b 0a 24 63 68 61 72 73 tion.autoPrependBlock().{.$chars
10a0a0 20 3d 20 73 75 62 73 74 72 28 73 74 72 5f 72 65 70 6c 61 63 65 28 50 48 50 5f 45 4f 4c 2c 20 22 .=.substr(str_replace(PHP_EOL,."
10a0c0 5c 6e 22 2c 20 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 2d 3e 66 65 74 63 \n",.$this->bufferedOutput->fetc
10a0e0 68 28 29 29 2c 20 2d 32 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 68 61 72 73 5b 30 5d h()),.-2);..if.(!isset($chars[0]
10a100 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 29 3b 20 0a 20 )).{.return.$this->newLine();...
10a120 7d 0a 0a 20 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 32 20 2d 20 73 75 62 73 74 72 5f 63 6f }...$this->newLine(2.-.substr_co
10a140 75 6e 74 28 24 63 68 61 72 73 2c 20 22 5c 6e 22 29 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 unt($chars,."\n"));.}..private.f
10a160 75 6e 63 74 69 6f 6e 20 61 75 74 6f 50 72 65 70 65 6e 64 54 65 78 74 28 29 0a 7b 0a 24 66 65 74 unction.autoPrependText().{.$fet
10a180 63 68 65 64 20 3d 20 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 2d 3e 66 65 ched.=.$this->bufferedOutput->fe
10a1a0 74 63 68 28 29 3b 0a 0a 20 69 66 20 28 22 5c 6e 22 20 21 3d 3d 20 73 75 62 73 74 72 28 24 66 65 tch();...if.("\n".!==.substr($fe
10a1c0 74 63 68 65 64 2c 20 2d 31 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 29 3b 0a tched,.-1)).{.$this->newLine();.
10a1e0 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 64 75 63 65 42 75 66 66 }.}..private.function.reduceBuff
10a200 65 72 28 24 6d 65 73 73 61 67 65 73 29 0a 7b 0a 0a 20 0a 20 72 65 74 75 72 6e 20 61 72 72 61 79 er($messages).{.....return.array
10a220 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 7b 0a 72 65 74 75 72 6e 20 _map(function.($value).{.return.
10a240 73 75 62 73 74 72 28 24 76 61 6c 75 65 2c 20 2d 34 29 3b 0a 7d 2c 20 61 72 72 61 79 5f 6d 65 72 substr($value,.-4);.},.array_mer
10a260 67 65 28 61 72 72 61 79 28 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 2d 3e ge(array($this->bufferedOutput->
10a280 66 65 74 63 68 28 29 29 2c 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 67 65 73 29 29 3b 0a 7d fetch()),.(array).$messages));.}
10a2a0 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d .}.<?php...........namespace.Sym
10a2c0 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 54 65 73 74 65 72 3b 0a 0a fony\Component\Console\Tester;..
10a2e0 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 41 70 use.Symfony\Component\Console\Ap
10a300 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 plication;.use.Symfony\Component
10a320 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 41 72 72 61 79 49 6e 70 75 74 3b 0a 75 73 65 20 53 \Console\Input\ArrayInput;.use.S
10a340 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 ymfony\Component\Console\Input\I
10a360 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f nputInterface;.use.Symfony\Compo
10a380 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 nent\Console\Output\OutputInterf
10a3a0 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f ace;.use.Symfony\Component\Conso
10a3c0 6c 65 5c 4f 75 74 70 75 74 5c 53 74 72 65 61 6d 4f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a le\Output\StreamOutput;.........
10a3e0 0a 0a 0a 63 6c 61 73 73 20 41 70 70 6c 69 63 61 74 69 6f 6e 54 65 73 74 65 72 0a 7b 0a 70 72 69 ...class.ApplicationTester.{.pri
10a400 76 61 74 65 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 vate.$application;.private.$inpu
10a420 74 3b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 t;.private.$output;.private.$sta
10a440 74 75 73 43 6f 64 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f tusCode;.......public.function._
10a460 5f 63 6f 6e 73 74 72 75 63 74 28 41 70 70 6c 69 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 _construct(Application.$applicat
10a480 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 61 70 70 ion).{.$this->application.=.$app
10a4a0 6c 69 63 61 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 lication;.}................publi
10a4c0 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 61 72 72 61 79 20 24 69 6e 70 75 74 2c 20 24 6f 70 c.function.run(array.$input,.$op
10a4e0 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 tions.=.array()).{.$this->input.
10a500 3d 20 6e 65 77 20 41 72 72 61 79 49 6e 70 75 74 28 24 69 6e 70 75 74 29 3b 0a 69 66 20 28 69 73 =.new.ArrayInput($input);.if.(is
10a520 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 69 6e 74 65 72 61 63 74 69 76 65 27 5d 29 29 20 7b 0a set($options['interactive'])).{.
10a540 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d 3e 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 24 6f 70 $this->input->setInteractive($op
10a560 74 69 6f 6e 73 5b 27 69 6e 74 65 72 61 63 74 69 76 65 27 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d tions['interactive']);.}..$this-
10a580 3e 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 53 74 72 65 61 6d 4f 75 74 70 75 74 28 66 6f 70 65 6e >output.=.new.StreamOutput(fopen
10a5a0 28 27 70 68 70 3a 2f 2f 6d 65 6d 6f 72 79 27 2c 20 27 77 27 2c 20 66 61 6c 73 65 29 29 3b 0a 69 ('php://memory',.'w',.false));.i
10a5c0 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 64 65 63 6f 72 61 74 65 64 27 5d 29 29 f.(isset($options['decorated']))
10a5e0 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 .{.$this->output->setDecorated($
10a600 6f 70 74 69 6f 6e 73 5b 27 64 65 63 6f 72 61 74 65 64 27 5d 29 3b 0a 7d 0a 69 66 20 28 69 73 73 options['decorated']);.}.if.(iss
10a620 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 76 65 72 62 6f 73 69 74 79 27 5d 29 29 20 7b 0a 24 74 68 et($options['verbosity'])).{.$th
10a640 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6f 70 74 69 6f 6e is->output->setVerbosity($option
10a660 73 5b 27 76 65 72 62 6f 73 69 74 79 27 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 s['verbosity']);.}..return.$this
10a680 2d 3e 73 74 61 74 75 73 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f ->statusCode.=.$this->applicatio
10a6a0 6e 2d 3e 72 75 6e 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 74 68 69 73 2d 3e 6f 75 74 70 n->run($this->input,.$this->outp
10a6c0 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 ut);.}.........public.function.g
10a6e0 65 74 44 69 73 70 6c 61 79 28 24 6e 6f 72 6d 61 6c 69 7a 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a etDisplay($normalize.=.false).{.
10a700 72 65 77 69 6e 64 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 rewind($this->output->getStream(
10a720 29 29 3b 0a 0a 24 64 69 73 70 6c 61 79 20 3d 20 73 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 ));..$display.=.stream_get_conte
10a740 6e 74 73 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 29 3b nts($this->output->getStream());
10a760 0a 0a 69 66 20 28 24 6e 6f 72 6d 61 6c 69 7a 65 29 20 7b 0a 24 64 69 73 70 6c 61 79 20 3d 20 73 ..if.($normalize).{.$display.=.s
10a780 74 72 5f 72 65 70 6c 61 63 65 28 50 48 50 5f 45 4f 4c 2c 20 22 5c 6e 22 2c 20 24 64 69 73 70 6c tr_replace(PHP_EOL,."\n",.$displ
10a7a0 61 79 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 69 73 70 6c 61 79 3b 0a 7d 0a 0a 0a 0a 0a 0a ay);.}..return.$display;.}......
10a7c0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 28 29 0a 7b 0a 72 65 .public.function.getInput().{.re
10a7e0 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 turn.$this->input;.}.......publi
10a800 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 74 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 c.function.getOutput().{.return.
10a820 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 $this->output;.}.......public.fu
10a840 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 74 75 73 43 6f 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 nction.getStatusCode().{.return.
10a860 24 74 68 69 73 2d 3e 73 74 61 74 75 73 43 6f 64 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a $this->statusCode;.}.}.<?php....
10a880 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 .......namespace.Symfony\Compone
10a8a0 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 54 65 73 74 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c nt\Console\Tester;..use.Symfony\
10a8c0 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e Component\Console\Command\Comman
10a8e0 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 d;.use.Symfony\Component\Console
10a900 5c 49 6e 70 75 74 5c 41 72 72 61 79 49 6e 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 \Input\ArrayInput;.use.Symfony\C
10a920 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 53 74 72 65 61 6d 4f 75 omponent\Console\Output\StreamOu
10a940 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 tput;.use.Symfony\Component\Cons
10a960 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 ole\Input\InputInterface;.use.Sy
10a980 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f mfony\Component\Console\Output\O
10a9a0 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 6d utputInterface;.......class.Comm
10a9c0 61 6e 64 54 65 73 74 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 3b 0a 70 72 andTester.{.private.$command;.pr
10a9e0 69 76 61 74 65 20 24 69 6e 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 70 ivate.$input;.private.$output;.p
10aa00 72 69 76 61 74 65 20 24 73 74 61 74 75 73 43 6f 64 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 rivate.$statusCode;.......public
10aa20 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 43 6f 6d 6d 61 6e 64 20 24 63 .function.__construct(Command.$c
10aa40 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d ommand).{.$this->command.=.$comm
10aa60 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e and;.}................public.fun
10aa80 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 61 72 72 61 79 20 24 69 6e 70 75 74 2c 20 61 72 72 61 ction.execute(array.$input,.arra
10aaa0 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 0a 20 0a 20 69 66 20 28 y.$options.=.array()).{.....if.(
10aac0 21 69 73 73 65 74 28 24 69 6e 70 75 74 5b 27 63 6f 6d 6d 61 6e 64 27 5d 29 0a 26 26 20 28 6e 75 !isset($input['command']).&&.(nu
10aae0 6c 6c 20 21 3d 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d ll.!==.$application.=.$this->com
10ab00 6d 61 6e 64 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 29 0a 26 26 20 24 61 70 70 6c mand->getApplication()).&&.$appl
10ab20 69 63 61 74 69 6f 6e 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 68 61 73 41 72 67 ication->getDefinition()->hasArg
10ab40 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 29 0a 29 20 7b 0a 24 69 6e 70 75 74 20 3d 20 61 72 ument('command').).{.$input.=.ar
10ab60 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 27 63 6f 6d 6d 61 6e 64 27 20 3d 3e 20 24 74 68 ray_merge(array('command'.=>.$th
10ab80 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 2c 20 24 69 6e 70 75 74 29 is->command->getName()),.$input)
10aba0 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 72 61 79 49 6e 70 ;.}..$this->input.=.new.ArrayInp
10abc0 75 74 28 24 69 6e 70 75 74 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 ut($input);.if.(isset($options['
10abe0 69 6e 74 65 72 61 63 74 69 76 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d 3e interactive'])).{.$this->input->
10ac00 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 24 6f 70 74 69 6f 6e 73 5b 27 69 6e 74 65 72 61 63 setInteractive($options['interac
10ac20 74 69 76 65 27 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 tive']);.}..$this->output.=.new.
10ac40 53 74 72 65 61 6d 4f 75 74 70 75 74 28 66 6f 70 65 6e 28 27 70 68 70 3a 2f 2f 6d 65 6d 6f 72 79 StreamOutput(fopen('php://memory
10ac60 27 2c 20 27 77 27 2c 20 66 61 6c 73 65 29 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 ',.'w',.false));.if.(isset($opti
10ac80 6f 6e 73 5b 27 64 65 63 6f 72 61 74 65 64 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 ons['decorated'])).{.$this->outp
10aca0 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 6f 70 74 69 6f 6e 73 5b 27 64 65 63 6f 72 ut->setDecorated($options['decor
10acc0 61 74 65 64 27 5d 29 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 76 ated']);.}.if.(isset($options['v
10ace0 65 72 62 6f 73 69 74 79 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 erbosity'])).{.$this->output->se
10ad00 74 56 65 72 62 6f 73 69 74 79 28 24 6f 70 74 69 6f 6e 73 5b 27 76 65 72 62 6f 73 69 74 79 27 5d tVerbosity($options['verbosity']
10ad20 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 43 6f 64 65 20 3d );.}..return.$this->statusCode.=
10ad40 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2d 3e 72 75 6e 28 24 74 68 69 73 2d 3e 69 6e 70 75 .$this->command->run($this->inpu
10ad60 74 2c 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 t,.$this->output);.}.........pub
10ad80 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 70 6c 61 79 28 24 6e 6f 72 6d 61 6c 69 lic.function.getDisplay($normali
10ada0 7a 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 72 65 77 69 6e 64 28 24 74 68 69 73 2d 3e 6f 75 74 70 ze.=.false).{.rewind($this->outp
10adc0 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 29 3b 0a 0a 24 64 69 73 70 6c 61 79 20 3d 20 73 74 ut->getStream());..$display.=.st
10ade0 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d ream_get_contents($this->output-
10ae00 3e 67 65 74 53 74 72 65 61 6d 28 29 29 3b 0a 0a 69 66 20 28 24 6e 6f 72 6d 61 6c 69 7a 65 29 20 >getStream());..if.($normalize).
10ae20 7b 0a 24 64 69 73 70 6c 61 79 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 50 48 50 5f 45 4f 4c {.$display.=.str_replace(PHP_EOL
10ae40 2c 20 22 5c 6e 22 2c 20 24 64 69 73 70 6c 61 79 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 69 ,."\n",.$display);.}..return.$di
10ae60 73 70 6c 61 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 splay;.}.......public.function.g
10ae80 65 74 49 6e 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 3b etInput().{.return.$this->input;
10aea0 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 74 70 .}.......public.function.getOutp
10aec0 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 7d 0a 0a ut().{.return.$this->output;.}..
10aee0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 74 75 73 43 6f .....public.function.getStatusCo
10af00 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 43 6f 64 65 3b de().{.return.$this->statusCode;
10af20 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 .}.}.<?php...........namespace.S
10af40 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6c 65 73 79 73 74 65 6d 5c 45 78 63 65 ymfony\Component\Filesystem\Exce
10af60 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 45 78 63 65 70 74 69 6f 6e ption;.......interface.Exception
10af80 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 Interface.{.}.<?php...........na
10afa0 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6c 65 73 79 mespace.Symfony\Component\Filesy
10afc0 73 74 65 6d 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c stem\Exception;........class.Fil
10afe0 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 49 4f 45 78 63 eNotFoundException.extends.IOExc
10b000 65 70 74 69 6f 6e 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 eption.{.public.function.__const
10b020 72 75 63 74 28 24 6d 65 73 73 61 67 65 20 3d 20 6e 75 6c 6c 2c 20 24 63 6f 64 65 20 3d 20 30 2c ruct($message.=.null,.$code.=.0,
10b040 20 5c 45 78 63 65 70 74 69 6f 6e 20 24 70 72 65 76 69 6f 75 73 20 3d 20 6e 75 6c 6c 2c 20 24 70 .\Exception.$previous.=.null,.$p
10b060 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6d 65 73 73 ath.=.null).{.if.(null.===.$mess
10b080 61 67 65 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 70 61 74 68 29 20 7b 0a 24 6d 65 age).{.if.(null.===.$path).{.$me
10b0a0 73 73 61 67 65 20 3d 20 27 46 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 ssage.=.'File.could.not.be.found
10b0c0 2e 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 .';.}.else.{.$message.=.sprintf(
10b0e0 27 46 69 6c 65 20 22 25 73 22 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 2e 27 2c 'File."%s".could.not.be.found.',
10b100 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 .$path);.}.}..parent::__construc
10b120 74 28 24 6d 65 73 73 61 67 65 2c 20 24 63 6f 64 65 2c 20 24 70 72 65 76 69 6f 75 73 2c 20 24 70 t($message,.$code,.$previous,.$p
10b140 61 74 68 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 ath);.}.}.<?php...........namesp
10b160 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6c 65 73 79 73 74 65 6d ace.Symfony\Component\Filesystem
10b180 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 4f 45 78 63 65 \Exception;.........class.IOExce
10b1a0 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 ption.extends.\RuntimeException.
10b1c0 69 6d 70 6c 65 6d 65 6e 74 73 20 49 4f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a implements.IOExceptionInterface.
10b1e0 7b 0a 70 72 69 76 61 74 65 20 24 70 61 74 68 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f {.private.$path;..public.functio
10b200 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 2c 20 24 63 6f 64 65 20 3d 20 n.__construct($message,.$code.=.
10b220 30 2c 20 5c 45 78 63 65 70 74 69 6f 6e 20 24 70 72 65 76 69 6f 75 73 20 3d 20 6e 75 6c 6c 2c 20 0,.\Exception.$previous.=.null,.
10b240 24 70 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 68 20 3d 20 24 70 $path.=.null).{.$this->path.=.$p
10b260 61 74 68 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 ath;..parent::__construct($messa
10b280 67 65 2c 20 24 63 6f 64 65 2c 20 24 70 72 65 76 69 6f 75 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 ge,.$code,.$previous);.}.....pub
10b2a0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 lic.function.getPath().{.return.
10b2c0 24 74 68 69 73 2d 3e 70 61 74 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a $this->path;.}.}.<?php..........
10b2e0 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6c .namespace.Symfony\Component\Fil
10b300 65 73 79 73 74 65 6d 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 esystem\Exception;.......interfa
10b320 63 65 20 49 4f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 ce.IOExceptionInterface.extends.
10b340 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ExceptionInterface.{......public
10b360 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 74 68 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a .function.getPath();.}.<?php....
10b380 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 .......namespace.Symfony\Compone
10b3a0 6e 74 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 nt\Filesystem;..use.Symfony\Comp
10b3c0 6f 6e 65 6e 74 5c 46 69 6c 65 73 79 73 74 65 6d 5c 45 78 63 65 70 74 69 6f 6e 5c 49 4f 45 78 63 onent\Filesystem\Exception\IOExc
10b3e0 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 eption;.use.Symfony\Component\Fi
10b400 6c 65 73 79 73 74 65 6d 5c 45 78 63 65 70 74 69 6f 6e 5c 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 45 lesystem\Exception\FileNotFoundE
10b420 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 73 79 73 74 65 6d xception;.......class.Filesystem
10b440 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e .{...............public.function
10b460 20 63 6f 70 79 28 24 6f 72 69 67 69 6e 46 69 6c 65 2c 20 24 74 61 72 67 65 74 46 69 6c 65 2c 20 .copy($originFile,.$targetFile,.
10b480 24 6f 76 65 72 72 69 64 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 73 74 72 65 61 6d 5f $override.=.false).{.if.(stream_
10b4a0 69 73 5f 6c 6f 63 61 6c 28 24 6f 72 69 67 69 6e 46 69 6c 65 29 20 26 26 20 21 69 73 5f 66 69 6c is_local($originFile).&&.!is_fil
10b4c0 65 28 24 6f 72 69 67 69 6e 46 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 46 69 6c 65 e($originFile)).{.throw.new.File
10b4e0 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 NotFoundException(sprintf('Faile
10b500 64 20 74 6f 20 63 6f 70 79 20 22 25 73 22 20 62 65 63 61 75 73 65 20 66 69 6c 65 20 64 6f 65 73 d.to.copy."%s".because.file.does
10b520 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6f 72 69 67 69 6e 46 69 6c 65 29 2c 20 30 2c 20 6e .not.exist.',.$originFile),.0,.n
10b540 75 6c 6c 2c 20 24 6f 72 69 67 69 6e 46 69 6c 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6d 6b 64 ull,.$originFile);.}..$this->mkd
10b560 69 72 28 64 69 72 6e 61 6d 65 28 24 74 61 72 67 65 74 46 69 6c 65 29 29 3b 0a 0a 24 64 6f 43 6f ir(dirname($targetFile));..$doCo
10b580 70 79 20 3d 20 74 72 75 65 3b 0a 69 66 20 28 21 24 6f 76 65 72 72 69 64 65 20 26 26 20 6e 75 6c py.=.true;.if.(!$override.&&.nul
10b5a0 6c 20 3d 3d 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 6f 72 69 67 69 6e 46 69 6c 65 2c 20 50 48 50 l.===.parse_url($originFile,.PHP
10b5c0 5f 55 52 4c 5f 48 4f 53 54 29 20 26 26 20 69 73 5f 66 69 6c 65 28 24 74 61 72 67 65 74 46 69 6c _URL_HOST).&&.is_file($targetFil
10b5e0 65 29 29 20 7b 0a 24 64 6f 43 6f 70 79 20 3d 20 66 69 6c 65 6d 74 69 6d 65 28 24 6f 72 69 67 69 e)).{.$doCopy.=.filemtime($origi
10b600 6e 46 69 6c 65 29 20 3e 20 66 69 6c 65 6d 74 69 6d 65 28 24 74 61 72 67 65 74 46 69 6c 65 29 3b nFile).>.filemtime($targetFile);
10b620 0a 7d 0a 0a 69 66 20 28 24 64 6f 43 6f 70 79 29 20 7b 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d .}..if.($doCopy).{...if.(false.=
10b640 3d 3d 20 24 73 6f 75 72 63 65 20 3d 20 40 66 6f 70 65 6e 28 24 6f 72 69 67 69 6e 46 69 6c 65 2c ==.$source.=.@fopen($originFile,
10b660 20 27 72 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 .'r')).{.throw.new.IOException(s
10b680 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6f 70 79 20 22 25 73 22 20 74 6f 20 22 printf('Failed.to.copy."%s".to."
10b6a0 25 73 22 20 62 65 63 61 75 73 65 20 73 6f 75 72 63 65 20 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f %s".because.source.file.could.no
10b6c0 74 20 62 65 20 6f 70 65 6e 65 64 20 66 6f 72 20 72 65 61 64 69 6e 67 2e 27 2c 20 24 6f 72 69 67 t.be.opened.for.reading.',.$orig
10b6e0 69 6e 46 69 6c 65 2c 20 24 74 61 72 67 65 74 46 69 6c 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 inFile,.$targetFile),.0,.null,.$
10b700 6f 72 69 67 69 6e 46 69 6c 65 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 originFile);.}....if.(false.===.
10b720 24 74 61 72 67 65 74 20 3d 20 40 66 6f 70 65 6e 28 24 74 61 72 67 65 74 46 69 6c 65 2c 20 27 77 $target.=.@fopen($targetFile,.'w
10b740 27 2c 20 6e 75 6c 6c 2c 20 73 74 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f 63 72 65 61 74 65 28 61 ',.null,.stream_context_create(a
10b760 72 72 61 79 28 27 66 74 70 27 20 3d 3e 20 61 72 72 61 79 28 27 6f 76 65 72 77 72 69 74 65 27 20 rray('ftp'.=>.array('overwrite'.
10b780 3d 3e 20 74 72 75 65 29 29 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 =>.true))))).{.throw.new.IOExcep
10b7a0 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6f 70 79 20 22 25 73 tion(sprintf('Failed.to.copy."%s
10b7c0 22 20 74 6f 20 22 25 73 22 20 62 65 63 61 75 73 65 20 74 61 72 67 65 74 20 66 69 6c 65 20 63 6f ".to."%s".because.target.file.co
10b7e0 75 6c 64 20 6e 6f 74 20 62 65 20 6f 70 65 6e 65 64 20 66 6f 72 20 77 72 69 74 69 6e 67 2e 27 2c uld.not.be.opened.for.writing.',
10b800 20 24 6f 72 69 67 69 6e 46 69 6c 65 2c 20 24 74 61 72 67 65 74 46 69 6c 65 29 2c 20 30 2c 20 6e .$originFile,.$targetFile),.0,.n
10b820 75 6c 6c 2c 20 24 6f 72 69 67 69 6e 46 69 6c 65 29 3b 0a 7d 0a 0a 24 62 79 74 65 73 43 6f 70 69 ull,.$originFile);.}..$bytesCopi
10b840 65 64 20 3d 20 73 74 72 65 61 6d 5f 63 6f 70 79 5f 74 6f 5f 73 74 72 65 61 6d 28 24 73 6f 75 72 ed.=.stream_copy_to_stream($sour
10b860 63 65 2c 20 24 74 61 72 67 65 74 29 3b 0a 66 63 6c 6f 73 65 28 24 73 6f 75 72 63 65 29 3b 0a 66 ce,.$target);.fclose($source);.f
10b880 63 6c 6f 73 65 28 24 74 61 72 67 65 74 29 3b 0a 75 6e 73 65 74 28 24 73 6f 75 72 63 65 2c 20 24 close($target);.unset($source,.$
10b8a0 74 61 72 67 65 74 29 3b 0a 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 74 61 72 67 65 74 46 69 target);..if.(!is_file($targetFi
10b8c0 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 le)).{.throw.new.IOException(spr
10b8e0 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6f 70 79 20 22 25 73 22 20 74 6f 20 22 25 73 intf('Failed.to.copy."%s".to."%s
10b900 22 2e 27 2c 20 24 6f 72 69 67 69 6e 46 69 6c 65 2c 20 24 74 61 72 67 65 74 46 69 6c 65 29 2c 20 ".',.$originFile,.$targetFile),.
10b920 30 2c 20 6e 75 6c 6c 2c 20 24 6f 72 69 67 69 6e 46 69 6c 65 29 3b 0a 7d 0a 0a 0a 20 40 63 68 6d 0,.null,.$originFile);.}....@chm
10b940 6f 64 28 24 74 61 72 67 65 74 46 69 6c 65 2c 20 66 69 6c 65 70 65 72 6d 73 28 24 74 61 72 67 65 od($targetFile,.fileperms($targe
10b960 74 46 69 6c 65 29 20 7c 20 28 66 69 6c 65 70 65 72 6d 73 28 24 6f 72 69 67 69 6e 46 69 6c 65 29 tFile).|.(fileperms($originFile)
10b980 20 26 20 30 31 31 31 29 29 3b 0a 0a 69 66 20 28 73 74 72 65 61 6d 5f 69 73 5f 6c 6f 63 61 6c 28 .&.0111));..if.(stream_is_local(
10b9a0 24 6f 72 69 67 69 6e 46 69 6c 65 29 20 26 26 20 24 62 79 74 65 73 43 6f 70 69 65 64 20 21 3d 3d $originFile).&&.$bytesCopied.!==
10b9c0 20 28 24 62 79 74 65 73 4f 72 69 67 69 6e 20 3d 20 66 69 6c 65 73 69 7a 65 28 24 6f 72 69 67 69 .($bytesOrigin.=.filesize($origi
10b9e0 6e 46 69 6c 65 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e nFile))).{.throw.new.IOException
10ba00 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6f 70 79 20 74 68 65 20 77 68 6f (sprintf('Failed.to.copy.the.who
10ba20 6c 65 20 63 6f 6e 74 65 6e 74 20 6f 66 20 22 25 73 22 20 74 6f 20 22 25 73 22 20 28 25 67 20 6f le.content.of."%s".to."%s".(%g.o
10ba40 66 20 25 67 20 62 79 74 65 73 20 63 6f 70 69 65 64 29 2e 27 2c 20 24 6f 72 69 67 69 6e 46 69 6c f.%g.bytes.copied).',.$originFil
10ba60 65 2c 20 24 74 61 72 67 65 74 46 69 6c 65 2c 20 24 62 79 74 65 73 43 6f 70 69 65 64 2c 20 24 62 e,.$targetFile,.$bytesCopied,.$b
10ba80 79 74 65 73 4f 72 69 67 69 6e 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 6f 72 69 67 69 6e 46 69 6c ytesOrigin),.0,.null,.$originFil
10baa0 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 e);.}.}.}..........public.functi
10bac0 6f 6e 20 6d 6b 64 69 72 28 24 64 69 72 73 2c 20 24 6d 6f 64 65 20 3d 20 30 37 37 37 29 0a 7b 0a on.mkdir($dirs,.$mode.=.0777).{.
10bae0 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 6f 49 74 65 72 61 74 6f 72 28 24 64 69 72 73 foreach.($this->toIterator($dirs
10bb00 29 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b ).as.$dir).{.if.(is_dir($dir)).{
10bb20 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 40 6d 6b 64 69 .continue;.}..if.(true.!==.@mkdi
10bb40 72 28 24 64 69 72 2c 20 24 6d 6f 64 65 2c 20 74 72 75 65 29 29 20 7b 0a 24 65 72 72 6f 72 20 3d r($dir,.$mode,.true)).{.$error.=
10bb60 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 74 28 29 3b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 .error_get_last();.if.(!is_dir($
10bb80 64 69 72 29 29 20 7b 0a 0a 20 69 66 20 28 24 65 72 72 6f 72 29 20 7b 0a 74 68 72 6f 77 20 6e 65 dir)).{...if.($error).{.throw.ne
10bba0 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f w.IOException(sprintf('Failed.to
10bbc0 20 63 72 65 61 74 65 20 22 25 73 22 3a 20 25 73 2e 27 2c 20 24 64 69 72 2c 20 24 65 72 72 6f 72 .create."%s":.%s.',.$dir,.$error
10bbe0 5b 27 6d 65 73 73 61 67 65 27 5d 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 64 69 72 29 3b 0a 7d 0a ['message']),.0,.null,.$dir);.}.
10bc00 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 throw.new.IOException(sprintf('F
10bc20 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 22 25 73 22 27 2c 20 24 64 69 72 29 2c 20 30 2c ailed.to.create."%s"',.$dir),.0,
10bc40 20 6e 75 6c 6c 2c 20 24 64 69 72 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 .null,.$dir);.}.}.}.}.........pu
10bc60 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 69 73 74 73 28 24 66 69 6c 65 73 29 0a 7b 0a 66 blic.function.exists($files).{.f
10bc80 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 6f 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 73 oreach.($this->toIterator($files
10bca0 29 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 ).as.$file).{.if.(!file_exists($
10bcc0 66 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 file)).{.return.false;.}.}..retu
10bce0 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 rn.true;.}...........public.func
10bd00 74 69 6f 6e 20 74 6f 75 63 68 28 24 66 69 6c 65 73 2c 20 24 74 69 6d 65 20 3d 20 6e 75 6c 6c 2c tion.touch($files,.$time.=.null,
10bd20 20 24 61 74 69 6d 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 .$atime.=.null).{.foreach.($this
10bd40 2d 3e 74 6f 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 73 29 20 61 73 20 24 66 69 6c 65 29 20 7b ->toIterator($files).as.$file).{
10bd60 0a 24 74 6f 75 63 68 20 3d 20 24 74 69 6d 65 20 3f 20 40 74 6f 75 63 68 28 24 66 69 6c 65 2c 20 .$touch.=.$time.?.@touch($file,.
10bd80 24 74 69 6d 65 2c 20 24 61 74 69 6d 65 29 20 3a 20 40 74 6f 75 63 68 28 24 66 69 6c 65 29 3b 0a $time,.$atime).:.@touch($file);.
10bda0 69 66 20 28 74 72 75 65 20 21 3d 3d 20 24 74 6f 75 63 68 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 if.(true.!==.$touch).{.throw.new
10bdc0 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 .IOException(sprintf('Failed.to.
10bde0 74 6f 75 63 68 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 touch."%s".',.$file),.0,.null,.$
10be00 66 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 file);.}.}.}.........public.func
10be20 74 69 6f 6e 20 72 65 6d 6f 76 65 28 24 66 69 6c 65 73 29 0a 7b 0a 24 66 69 6c 65 73 20 3d 20 69 tion.remove($files).{.$files.=.i
10be40 74 65 72 61 74 6f 72 5f 74 6f 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 74 6f 49 74 65 72 61 74 terator_to_array($this->toIterat
10be60 6f 72 28 24 66 69 6c 65 73 29 29 3b 0a 24 66 69 6c 65 73 20 3d 20 61 72 72 61 79 5f 72 65 76 65 or($files));.$files.=.array_reve
10be80 72 73 65 28 24 66 69 6c 65 73 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6c 65 73 20 61 73 20 rse($files);.foreach.($files.as.
10bea0 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 $file).{.if.(!file_exists($file)
10bec0 20 26 26 20 21 69 73 5f 6c 69 6e 6b 28 24 66 69 6c 65 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b .&&.!is_link($file)).{.continue;
10bee0 0a 7d 0a 0a 69 66 20 28 69 73 5f 64 69 72 28 24 66 69 6c 65 29 20 26 26 20 21 69 73 5f 6c 69 6e .}..if.(is_dir($file).&&.!is_lin
10bf00 6b 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 28 6e 65 77 20 5c 46 k($file)).{.$this->remove(new.\F
10bf20 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 29 29 3b 0a 0a 69 66 20 28 ilesystemIterator($file));..if.(
10bf40 74 72 75 65 20 21 3d 3d 20 40 72 6d 64 69 72 28 24 66 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 true.!==.@rmdir($file)).{.throw.
10bf60 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 new.IOException(sprintf('Failed.
10bf80 74 6f 20 72 65 6d 6f 76 65 20 64 69 72 65 63 74 6f 72 79 20 22 25 73 22 2e 27 2c 20 24 66 69 6c to.remove.directory."%s".',.$fil
10bfa0 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a e),.0,.null,.$file);.}.}.else.{.
10bfc0 0a 20 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 ..if.('\\'.===.DIRECTORY_SEPARAT
10bfe0 4f 52 20 26 26 20 69 73 5f 64 69 72 28 24 66 69 6c 65 29 29 20 7b 0a 69 66 20 28 74 72 75 65 20 OR.&&.is_dir($file)).{.if.(true.
10c000 21 3d 3d 20 40 72 6d 64 69 72 28 24 66 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 !==.@rmdir($file)).{.throw.new.I
10c020 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 72 65 OException(sprintf('Failed.to.re
10c040 6d 6f 76 65 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 2c 20 6e 75 6c move.file."%s".',.$file),.0,.nul
10c060 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 74 72 75 65 20 21 l,.$file);.}.}.else.{.if.(true.!
10c080 3d 3d 20 40 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 ==.@unlink($file)).{.throw.new.I
10c0a0 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 72 65 OException(sprintf('Failed.to.re
10c0c0 6d 6f 76 65 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 2c 20 6e 75 6c move.file."%s".',.$file),.0,.nul
10c0e0 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a l,.$file);.}.}.}.}.}............
10c100 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 6d 6f 64 28 24 66 69 6c 65 73 2c 20 24 6d public.function.chmod($files,.$m
10c120 6f 64 65 2c 20 24 75 6d 61 73 6b 20 3d 20 30 30 30 30 2c 20 24 72 65 63 75 72 73 69 76 65 20 3d ode,.$umask.=.0000,.$recursive.=
10c140 20 66 61 6c 73 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 6f 49 74 65 72 .false).{.foreach.($this->toIter
10c160 61 74 6f 72 28 24 66 69 6c 65 73 29 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 74 72 75 ator($files).as.$file).{.if.(tru
10c180 65 20 21 3d 3d 20 40 63 68 6d 6f 64 28 24 66 69 6c 65 2c 20 24 6d 6f 64 65 20 26 20 7e 24 75 6d e.!==.@chmod($file,.$mode.&.~$um
10c1a0 61 73 6b 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 ask)).{.throw.new.IOException(sp
10c1c0 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 68 6d 6f 64 20 66 69 6c 65 20 22 25 73 22 rintf('Failed.to.chmod.file."%s"
10c1e0 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 69 .',.$file),.0,.null,.$file);.}.i
10c200 66 20 28 24 72 65 63 75 72 73 69 76 65 20 26 26 20 69 73 5f 64 69 72 28 24 66 69 6c 65 29 20 26 f.($recursive.&&.is_dir($file).&
10c220 26 20 21 69 73 5f 6c 69 6e 6b 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 6d 6f &.!is_link($file)).{.$this->chmo
10c240 64 28 6e 65 77 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 29 d(new.\FilesystemIterator($file)
10c260 2c 20 24 6d 6f 64 65 2c 20 24 75 6d 61 73 6b 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a ,.$mode,.$umask,.true);.}.}.}...
10c280 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 6f 77 6e 28 24 66 ........public.function.chown($f
10c2a0 69 6c 65 73 2c 20 24 75 73 65 72 2c 20 24 72 65 63 75 72 73 69 76 65 20 3d 20 66 61 6c 73 65 29 iles,.$user,.$recursive.=.false)
10c2c0 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 6f 49 74 65 72 61 74 6f 72 28 24 66 .{.foreach.($this->toIterator($f
10c2e0 69 6c 65 73 29 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 24 72 65 63 75 72 73 69 76 65 iles).as.$file).{.if.($recursive
10c300 20 26 26 20 69 73 5f 64 69 72 28 24 66 69 6c 65 29 20 26 26 20 21 69 73 5f 6c 69 6e 6b 28 24 66 .&&.is_dir($file).&&.!is_link($f
10c320 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 6f 77 6e 28 6e 65 77 20 5c 46 69 6c 65 73 79 ile)).{.$this->chown(new.\Filesy
10c340 73 74 65 6d 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 29 2c 20 24 75 73 65 72 2c 20 74 72 75 65 stemIterator($file),.$user,.true
10c360 29 3b 0a 7d 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 66 69 6c 65 29 20 26 26 20 66 75 6e 63 74 );.}.if.(is_link($file).&&.funct
10c380 69 6f 6e 5f 65 78 69 73 74 73 28 27 6c 63 68 6f 77 6e 27 29 29 20 7b 0a 69 66 20 28 74 72 75 65 ion_exists('lchown')).{.if.(true
10c3a0 20 21 3d 3d 20 40 6c 63 68 6f 77 6e 28 24 66 69 6c 65 2c 20 24 75 73 65 72 29 29 20 7b 0a 74 68 .!==.@lchown($file,.$user)).{.th
10c3c0 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 row.new.IOException(sprintf('Fai
10c3e0 6c 65 64 20 74 6f 20 63 68 6f 77 6e 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 29 led.to.chown.file."%s".',.$file)
10c400 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 ,.0,.null,.$file);.}.}.else.{.if
10c420 20 28 74 72 75 65 20 21 3d 3d 20 40 63 68 6f 77 6e 28 24 66 69 6c 65 2c 20 24 75 73 65 72 29 29 .(true.!==.@chown($file,.$user))
10c440 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 .{.throw.new.IOException(sprintf
10c460 28 27 46 61 69 6c 65 64 20 74 6f 20 63 68 6f 77 6e 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 ('Failed.to.chown.file."%s".',.$
10c480 66 69 6c 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a file),.0,.null,.$file);.}.}.}.}.
10c4a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 67 72 70 28 ..........public.function.chgrp(
10c4c0 24 66 69 6c 65 73 2c 20 24 67 72 6f 75 70 2c 20 24 72 65 63 75 72 73 69 76 65 20 3d 20 66 61 6c $files,.$group,.$recursive.=.fal
10c4e0 73 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 6f 49 74 65 72 61 74 6f 72 se).{.foreach.($this->toIterator
10c500 28 24 66 69 6c 65 73 29 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 24 72 65 63 75 72 73 ($files).as.$file).{.if.($recurs
10c520 69 76 65 20 26 26 20 69 73 5f 64 69 72 28 24 66 69 6c 65 29 20 26 26 20 21 69 73 5f 6c 69 6e 6b ive.&&.is_dir($file).&&.!is_link
10c540 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 67 72 70 28 6e 65 77 20 5c 46 69 6c ($file)).{.$this->chgrp(new.\Fil
10c560 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 29 2c 20 24 67 72 6f 75 70 2c 20 esystemIterator($file),.$group,.
10c580 74 72 75 65 29 3b 0a 7d 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 66 69 6c 65 29 20 26 26 20 66 true);.}.if.(is_link($file).&&.f
10c5a0 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 6c 63 68 67 72 70 27 29 29 20 7b 0a 69 66 20 28 unction_exists('lchgrp')).{.if.(
10c5c0 74 72 75 65 20 21 3d 3d 20 40 6c 63 68 67 72 70 28 24 66 69 6c 65 2c 20 24 67 72 6f 75 70 29 20 true.!==.@lchgrp($file,.$group).
10c5e0 7c 7c 20 28 64 65 66 69 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 20 26 26 20 21 ||.(defined('HHVM_VERSION').&&.!
10c600 70 6f 73 69 78 5f 67 65 74 67 72 6e 61 6d 28 24 67 72 6f 75 70 29 29 29 20 7b 0a 74 68 72 6f 77 posix_getgrnam($group))).{.throw
10c620 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 .new.IOException(sprintf('Failed
10c640 20 74 6f 20 63 68 67 72 70 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 .to.chgrp.file."%s".',.$file),.0
10c660 2c 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 74 ,.null,.$file);.}.}.else.{.if.(t
10c680 72 75 65 20 21 3d 3d 20 40 63 68 67 72 70 28 24 66 69 6c 65 2c 20 24 67 72 6f 75 70 29 29 20 7b rue.!==.@chgrp($file,.$group)).{
10c6a0 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 .throw.new.IOException(sprintf('
10c6c0 46 61 69 6c 65 64 20 74 6f 20 63 68 67 72 70 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 66 69 Failed.to.chgrp.file."%s".',.$fi
10c6e0 6c 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a le),.0,.null,.$file);.}.}.}.}...
10c700 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 61 6d 65 28 .........public.function.rename(
10c720 24 6f 72 69 67 69 6e 2c 20 24 74 61 72 67 65 74 2c 20 24 6f 76 65 72 77 72 69 74 65 20 3d 20 66 $origin,.$target,.$overwrite.=.f
10c740 61 6c 73 65 29 0a 7b 0a 0a 20 69 66 20 28 21 24 6f 76 65 72 77 72 69 74 65 20 26 26 20 69 73 5f alse).{...if.(!$overwrite.&&.is_
10c760 72 65 61 64 61 62 6c 65 28 24 74 61 72 67 65 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 readable($target)).{.throw.new.I
10c780 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 61 6e 6e 6f 74 20 72 65 6e 61 6d OException(sprintf('Cannot.renam
10c7a0 65 20 62 65 63 61 75 73 65 20 74 68 65 20 74 61 72 67 65 74 20 22 25 73 22 20 61 6c 72 65 61 64 e.because.the.target."%s".alread
10c7c0 79 20 65 78 69 73 74 73 2e 27 2c 20 24 74 61 72 67 65 74 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 y.exists.',.$target),.0,.null,.$
10c7e0 74 61 72 67 65 74 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 40 72 65 6e 61 6d 65 target);.}..if.(true.!==.@rename
10c800 28 24 6f 72 69 67 69 6e 2c 20 24 74 61 72 67 65 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 ($origin,.$target)).{.throw.new.
10c820 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 61 6e 6e 6f 74 20 72 65 6e 61 IOException(sprintf('Cannot.rena
10c840 6d 65 20 22 25 73 22 20 74 6f 20 22 25 73 22 2e 27 2c 20 24 6f 72 69 67 69 6e 2c 20 24 74 61 72 me."%s".to."%s".',.$origin,.$tar
10c860 67 65 74 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 0a 0a 0a get),.0,.null,.$target);.}.}....
10c880 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 79 6d 6c 69 6e 6b 28 24 .......public.function.symlink($
10c8a0 6f 72 69 67 69 6e 44 69 72 2c 20 24 74 61 72 67 65 74 44 69 72 2c 20 24 63 6f 70 79 4f 6e 57 69 originDir,.$targetDir,.$copyOnWi
10c8c0 6e 64 6f 77 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 ndows.=.false).{.if.('\\'.===.DI
10c8e0 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 26 26 20 24 63 6f 70 79 4f 6e 57 69 6e 64 RECTORY_SEPARATOR.&&.$copyOnWind
10c900 6f 77 73 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 69 72 72 6f 72 28 24 6f 72 69 67 69 6e 44 69 72 2c ows).{.$this->mirror($originDir,
10c920 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d .$targetDir);..return;.}..$this-
10c940 3e 6d 6b 64 69 72 28 64 69 72 6e 61 6d 65 28 24 74 61 72 67 65 74 44 69 72 29 29 3b 0a 0a 24 6f >mkdir(dirname($targetDir));..$o
10c960 6b 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 74 61 72 67 65 74 44 69 k.=.false;.if.(is_link($targetDi
10c980 72 29 29 20 7b 0a 69 66 20 28 72 65 61 64 6c 69 6e 6b 28 24 74 61 72 67 65 74 44 69 72 29 20 21 r)).{.if.(readlink($targetDir).!
10c9a0 3d 20 24 6f 72 69 67 69 6e 44 69 72 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 28 24 74 =.$originDir).{.$this->remove($t
10c9c0 61 72 67 65 74 44 69 72 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 6b 20 3d 20 74 72 75 65 3b 0a argetDir);.}.else.{.$ok.=.true;.
10c9e0 7d 0a 7d 0a 0a 69 66 20 28 21 24 6f 6b 20 26 26 20 74 72 75 65 20 21 3d 3d 20 40 73 79 6d 6c 69 }.}..if.(!$ok.&&.true.!==.@symli
10ca00 6e 6b 28 24 6f 72 69 67 69 6e 44 69 72 2c 20 24 74 61 72 67 65 74 44 69 72 29 29 20 7b 0a 24 72 nk($originDir,.$targetDir)).{.$r
10ca20 65 70 6f 72 74 20 3d 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 74 28 29 3b 0a 69 66 20 28 69 73 eport.=.error_get_last();.if.(is
10ca40 5f 61 72 72 61 79 28 24 72 65 70 6f 72 74 29 29 20 7b 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 _array($report)).{.if.('\\'.===.
10ca60 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 26 26 20 66 61 6c 73 65 20 21 3d 3d DIRECTORY_SEPARATOR.&&.false.!==
10ca80 20 73 74 72 70 6f 73 28 24 72 65 70 6f 72 74 5b 27 6d 65 73 73 61 67 65 27 5d 2c 20 27 65 72 72 .strpos($report['message'],.'err
10caa0 6f 72 20 63 6f 64 65 28 31 33 31 34 29 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 or.code(1314)')).{.throw.new.IOE
10cac0 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 63 72 65 61 74 65 20 73 79 6d 6c 69 xception('Unable.to.create.symli
10cae0 6e 6b 20 64 75 65 20 74 6f 20 65 72 72 6f 72 20 63 6f 64 65 20 31 33 31 34 3a 20 5c 27 41 20 72 nk.due.to.error.code.1314:.\'A.r
10cb00 65 71 75 69 72 65 64 20 70 72 69 76 69 6c 65 67 65 20 69 73 20 6e 6f 74 20 68 65 6c 64 20 62 79 equired.privilege.is.not.held.by
10cb20 20 74 68 65 20 63 6c 69 65 6e 74 5c 27 2e 20 44 6f 20 79 6f 75 20 68 61 76 65 20 74 68 65 20 72 .the.client\'..Do.you.have.the.r
10cb40 65 71 75 69 72 65 64 20 41 64 6d 69 6e 69 73 74 72 61 74 6f 72 2d 72 69 67 68 74 73 3f 27 2c 20 equired.Administrator-rights?',.
10cb60 30 2c 20 6e 75 6c 6c 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 7d 0a 74 68 72 6f 77 20 0,.null,.$targetDir);.}.}.throw.
10cb80 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 new.IOException(sprintf('Failed.
10cba0 74 6f 20 63 72 65 61 74 65 20 73 79 6d 62 6f 6c 69 63 20 6c 69 6e 6b 20 66 72 6f 6d 20 22 25 73 to.create.symbolic.link.from."%s
10cbc0 22 20 74 6f 20 22 25 73 22 2e 27 2c 20 24 6f 72 69 67 69 6e 44 69 72 2c 20 24 74 61 72 67 65 74 ".to."%s".',.$originDir,.$target
10cbe0 44 69 72 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 7d 0a Dir),.0,.null,.$targetDir);.}.}.
10cc00 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 6b 65 50 61 74 .........public.function.makePat
10cc20 68 52 65 6c 61 74 69 76 65 28 24 65 6e 64 50 61 74 68 2c 20 24 73 74 61 72 74 50 61 74 68 29 0a hRelative($endPath,.$startPath).
10cc40 7b 0a 0a 20 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 {...if.('\\'.===.DIRECTORY_SEPAR
10cc60 41 54 4f 52 29 20 7b 0a 24 65 6e 64 50 61 74 68 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 ATOR).{.$endPath.=.str_replace('
10cc80 5c 5c 27 2c 20 27 2f 27 2c 20 24 65 6e 64 50 61 74 68 29 3b 0a 24 73 74 61 72 74 50 61 74 68 20 \\',.'/',.$endPath);.$startPath.
10cca0 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 27 2c 20 27 2f 27 2c 20 24 73 74 61 72 74 50 =.str_replace('\\',.'/',.$startP
10ccc0 61 74 68 29 3b 0a 7d 0a 0a 0a 20 24 73 74 61 72 74 50 61 74 68 41 72 72 20 3d 20 65 78 70 6c 6f ath);.}....$startPathArr.=.explo
10cce0 64 65 28 27 2f 27 2c 20 74 72 69 6d 28 24 73 74 61 72 74 50 61 74 68 2c 20 27 2f 27 29 29 3b 0a de('/',.trim($startPath,.'/'));.
10cd00 24 65 6e 64 50 61 74 68 41 72 72 20 3d 20 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 74 72 69 6d 28 $endPathArr.=.explode('/',.trim(
10cd20 24 65 6e 64 50 61 74 68 2c 20 27 2f 27 29 29 3b 0a 0a 0a 20 24 69 6e 64 65 78 20 3d 20 30 3b 0a $endPath,.'/'));....$index.=.0;.
10cd40 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 73 74 61 72 74 50 61 74 68 41 72 72 5b 24 69 6e 64 65 while.(isset($startPathArr[$inde
10cd60 78 5d 29 20 26 26 20 69 73 73 65 74 28 24 65 6e 64 50 61 74 68 41 72 72 5b 24 69 6e 64 65 78 5d x]).&&.isset($endPathArr[$index]
10cd80 29 20 26 26 20 24 73 74 61 72 74 50 61 74 68 41 72 72 5b 24 69 6e 64 65 78 5d 20 3d 3d 3d 20 24 ).&&.$startPathArr[$index].===.$
10cda0 65 6e 64 50 61 74 68 41 72 72 5b 24 69 6e 64 65 78 5d 29 20 7b 0a 2b 2b 24 69 6e 64 65 78 3b 0a endPathArr[$index]).{.++$index;.
10cdc0 7d 0a 0a 0a 20 24 64 65 70 74 68 20 3d 20 63 6f 75 6e 74 28 24 73 74 61 72 74 50 61 74 68 41 72 }....$depth.=.count($startPathAr
10cde0 72 29 20 2d 20 24 69 6e 64 65 78 3b 0a 0a 0a 20 69 66 20 28 27 2f 27 20 3d 3d 3d 20 24 73 74 61 r).-.$index;....if.('/'.===.$sta
10ce00 72 74 50 61 74 68 5b 30 5d 20 26 26 20 30 20 3d 3d 3d 20 24 69 6e 64 65 78 20 26 26 20 31 20 3d rtPath[0].&&.0.===.$index.&&.1.=
10ce20 3d 3d 20 24 64 65 70 74 68 29 20 7b 0a 24 74 72 61 76 65 72 73 65 72 20 3d 20 27 27 3b 0a 7d 20 ==.$depth).{.$traverser.=.'';.}.
10ce40 65 6c 73 65 20 7b 0a 0a 20 24 74 72 61 76 65 72 73 65 72 20 3d 20 73 74 72 5f 72 65 70 65 61 74 else.{...$traverser.=.str_repeat
10ce60 28 27 2e 2e 2f 27 2c 20 24 64 65 70 74 68 29 3b 0a 7d 0a 0a 24 65 6e 64 50 61 74 68 52 65 6d 61 ('../',.$depth);.}..$endPathRema
10ce80 69 6e 64 65 72 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2f 27 2c 20 61 72 72 61 79 5f 73 6c 69 63 65 inder.=.implode('/',.array_slice
10cea0 28 24 65 6e 64 50 61 74 68 41 72 72 2c 20 24 69 6e 64 65 78 29 29 3b 0a 0a 0a 20 24 72 65 6c 61 ($endPathArr,.$index));....$rela
10cec0 74 69 76 65 50 61 74 68 20 3d 20 24 74 72 61 76 65 72 73 65 72 2e 28 27 27 20 21 3d 3d 20 24 65 tivePath.=.$traverser.(''.!==.$e
10cee0 6e 64 50 61 74 68 52 65 6d 61 69 6e 64 65 72 20 3f 20 24 65 6e 64 50 61 74 68 52 65 6d 61 69 6e ndPathRemainder.?.$endPathRemain
10cf00 64 65 72 2e 27 2f 27 20 3a 20 27 27 29 3b 0a 0a 72 65 74 75 72 6e 20 27 27 20 3d 3d 3d 20 24 72 der.'/'.:.'');..return.''.===.$r
10cf20 65 6c 61 74 69 76 65 50 61 74 68 20 3f 20 27 2e 2f 27 20 3a 20 24 72 65 6c 61 74 69 76 65 50 61 elativePath.?.'./'.:.$relativePa
10cf40 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 th;.}................public.func
10cf60 74 69 6f 6e 20 6d 69 72 72 6f 72 28 24 6f 72 69 67 69 6e 44 69 72 2c 20 24 74 61 72 67 65 74 44 tion.mirror($originDir,.$targetD
10cf80 69 72 2c 20 5c 54 72 61 76 65 72 73 61 62 6c 65 20 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 75 6c ir,.\Traversable.$iterator.=.nul
10cfa0 6c 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 61 72 67 65 74 l,.$options.=.array()).{.$target
10cfc0 44 69 72 20 3d 20 72 74 72 69 6d 28 24 74 61 72 67 65 74 44 69 72 2c 20 27 2f 5c 5c 27 29 3b 0a Dir.=.rtrim($targetDir,.'/\\');.
10cfe0 24 6f 72 69 67 69 6e 44 69 72 20 3d 20 72 74 72 69 6d 28 24 6f 72 69 67 69 6e 44 69 72 2c 20 27 $originDir.=.rtrim($originDir,.'
10d000 2f 5c 5c 27 29 3b 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 65 78 69 73 74 73 28 24 74 61 72 /\\');....if.($this->exists($tar
10d020 67 65 74 44 69 72 29 20 26 26 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 64 65 6c 65 74 getDir).&&.isset($options['delet
10d040 65 27 5d 29 20 26 26 20 24 6f 70 74 69 6f 6e 73 5b 27 64 65 6c 65 74 65 27 5d 29 20 7b 0a 24 64 e']).&&.$options['delete']).{.$d
10d060 65 6c 65 74 65 49 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 72 61 74 6f 72 3b 0a 69 66 20 28 6e eleteIterator.=.$iterator;.if.(n
10d080 75 6c 6c 20 3d 3d 3d 20 24 64 65 6c 65 74 65 49 74 65 72 61 74 6f 72 29 20 7b 0a 24 66 6c 61 67 ull.===.$deleteIterator).{.$flag
10d0a0 73 20 3d 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f s.=.\FilesystemIterator::SKIP_DO
10d0c0 54 53 3b 0a 24 64 65 6c 65 74 65 49 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 5c 52 65 63 75 72 TS;.$deleteIterator.=.new.\Recur
10d0e0 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 6e 65 77 20 5c 52 65 63 75 72 73 siveIteratorIterator(new.\Recurs
10d100 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 28 24 74 61 72 67 65 74 44 69 72 2c iveDirectoryIterator($targetDir,
10d120 20 24 66 6c 61 67 73 29 2c 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 .$flags),.\RecursiveIteratorIter
10d140 61 74 6f 72 3a 3a 43 48 49 4c 44 5f 46 49 52 53 54 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 ator::CHILD_FIRST);.}.foreach.($
10d160 64 65 6c 65 74 65 49 74 65 72 61 74 6f 72 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 6f 72 69 67 deleteIterator.as.$file).{.$orig
10d180 69 6e 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 24 74 61 72 67 65 74 44 69 72 2c 20 24 6f 72 in.=.str_replace($targetDir,.$or
10d1a0 69 67 69 6e 44 69 72 2c 20 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 29 3b 0a iginDir,.$file->getPathname());.
10d1c0 69 66 20 28 21 24 74 68 69 73 2d 3e 65 78 69 73 74 73 28 24 6f 72 69 67 69 6e 29 29 20 7b 0a 24 if.(!$this->exists($origin)).{.$
10d1e0 74 68 69 73 2d 3e 72 65 6d 6f 76 65 28 24 66 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 63 6f 70 this->remove($file);.}.}.}..$cop
10d200 79 4f 6e 57 69 6e 64 6f 77 73 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f yOnWindows.=.false;.if.(isset($o
10d220 70 74 69 6f 6e 73 5b 27 63 6f 70 79 5f 6f 6e 5f 77 69 6e 64 6f 77 73 27 5d 29 29 20 7b 0a 24 63 ptions['copy_on_windows'])).{.$c
10d240 6f 70 79 4f 6e 57 69 6e 64 6f 77 73 20 3d 20 24 6f 70 74 69 6f 6e 73 5b 27 63 6f 70 79 5f 6f 6e opyOnWindows.=.$options['copy_on
10d260 5f 77 69 6e 64 6f 77 73 27 5d 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 69 74 65 _windows'];.}..if.(null.===.$ite
10d280 72 61 74 6f 72 29 20 7b 0a 24 66 6c 61 67 73 20 3d 20 24 63 6f 70 79 4f 6e 57 69 6e 64 6f 77 73 rator).{.$flags.=.$copyOnWindows
10d2a0 20 3f 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f 54 .?.\FilesystemIterator::SKIP_DOT
10d2c0 53 20 7c 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a 46 4f 4c 4c 4f 57 5f S.|.\FilesystemIterator::FOLLOW_
10d2e0 53 59 4d 4c 49 4e 4b 53 20 3a 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a SYMLINKS.:.\FilesystemIterator::
10d300 53 4b 49 50 5f 44 4f 54 53 3b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 5c 52 65 63 75 SKIP_DOTS;.$iterator.=.new.\Recu
10d320 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 6e 65 77 20 5c 52 65 63 75 72 rsiveIteratorIterator(new.\Recur
10d340 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 28 24 6f 72 69 67 69 6e 44 69 72 siveDirectoryIterator($originDir
10d360 2c 20 24 66 6c 61 67 73 29 2c 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 ,.$flags),.\RecursiveIteratorIte
10d380 72 61 74 6f 72 3a 3a 53 45 4c 46 5f 46 49 52 53 54 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 rator::SELF_FIRST);.}..if.($this
10d3a0 2d 3e 65 78 69 73 74 73 28 24 6f 72 69 67 69 6e 44 69 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6d ->exists($originDir)).{.$this->m
10d3c0 6b 64 69 72 28 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 69 kdir($targetDir);.}..foreach.($i
10d3e0 74 65 72 61 74 6f 72 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 74 61 72 67 65 74 20 3d 20 73 74 terator.as.$file).{.$target.=.st
10d400 72 5f 72 65 70 6c 61 63 65 28 24 6f 72 69 67 69 6e 44 69 72 2c 20 24 74 61 72 67 65 74 44 69 72 r_replace($originDir,.$targetDir
10d420 2c 20 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 29 3b 0a 0a 69 66 20 28 24 63 ,.$file->getPathname());..if.($c
10d440 6f 70 79 4f 6e 57 69 6e 64 6f 77 73 29 20 7b 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 66 69 6c opyOnWindows).{.if.(is_link($fil
10d460 65 29 20 7c 7c 20 69 73 5f 66 69 6c 65 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 e).||.is_file($file)).{.$this->c
10d480 6f 70 79 28 24 66 69 6c 65 2c 20 24 74 61 72 67 65 74 2c 20 69 73 73 65 74 28 24 6f 70 74 69 6f opy($file,.$target,.isset($optio
10d4a0 6e 73 5b 27 6f 76 65 72 72 69 64 65 27 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 6f 76 65 72 ns['override']).?.$options['over
10d4c0 72 69 64 65 27 5d 20 3a 20 66 61 6c 73 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 64 69 ride'].:.false);.}.elseif.(is_di
10d4e0 72 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 6b 64 69 72 28 24 74 61 72 67 65 74 r($file)).{.$this->mkdir($target
10d500 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f );.}.else.{.throw.new.IOExceptio
10d520 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 61 62 6c 65 20 74 6f 20 67 75 65 73 73 20 22 25 73 22 20 n(sprintf('Unable.to.guess."%s".
10d540 66 69 6c 65 20 74 79 70 65 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 66 file.type.',.$file),.0,.null,.$f
10d560 69 6c 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 66 69 ile);.}.}.else.{.if.(is_link($fi
10d580 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 79 6d 6c 69 6e 6b 28 24 66 69 6c 65 2d 3e 67 65 74 le)).{.$this->symlink($file->get
10d5a0 4c 69 6e 6b 54 61 72 67 65 74 28 29 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d 20 65 6c 73 65 69 66 LinkTarget(),.$target);.}.elseif
10d5c0 20 28 69 73 5f 64 69 72 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 6b 64 69 72 28 .(is_dir($file)).{.$this->mkdir(
10d5e0 24 74 61 72 67 65 74 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 66 69 6c 65 28 24 66 69 6c $target);.}.elseif.(is_file($fil
10d600 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 70 79 28 24 66 69 6c 65 2c 20 24 74 61 72 67 65 74 e)).{.$this->copy($file,.$target
10d620 2c 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 6f 76 65 72 72 69 64 65 27 5d 29 20 3f 20 ,.isset($options['override']).?.
10d640 24 6f 70 74 69 6f 6e 73 5b 27 6f 76 65 72 72 69 64 65 27 5d 20 3a 20 66 61 6c 73 65 29 3b 0a 7d $options['override'].:.false);.}
10d660 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 .else.{.throw.new.IOException(sp
10d680 72 69 6e 74 66 28 27 55 6e 61 62 6c 65 20 74 6f 20 67 75 65 73 73 20 22 25 73 22 20 66 69 6c 65 rintf('Unable.to.guess."%s".file
10d6a0 20 74 79 70 65 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 29 .type.',.$file),.0,.null,.$file)
10d6c0 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ;.}.}.}.}.........public.functio
10d6e0 6e 20 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 66 69 6c 65 29 0a 7b 0a 72 65 74 75 72 6e n.isAbsolutePath($file).{.return
10d700 20 73 74 72 73 70 6e 28 24 66 69 6c 65 2c 20 27 2f 5c 5c 27 2c 20 30 2c 20 31 29 0a 7c 7c 20 28 .strspn($file,.'/\\',.0,.1).||.(
10d720 73 74 72 6c 65 6e 28 24 66 69 6c 65 29 20 3e 20 33 20 26 26 20 63 74 79 70 65 5f 61 6c 70 68 61 strlen($file).>.3.&&.ctype_alpha
10d740 28 24 66 69 6c 65 5b 30 5d 29 0a 26 26 20 73 75 62 73 74 72 28 24 66 69 6c 65 2c 20 31 2c 20 31 ($file[0]).&&.substr($file,.1,.1
10d760 29 20 3d 3d 3d 20 27 3a 27 0a 26 26 20 73 74 72 73 70 6e 28 24 66 69 6c 65 2c 20 27 2f 5c 5c 27 ).===.':'.&&.strspn($file,.'/\\'
10d780 2c 20 32 2c 20 31 29 0a 29 0a 7c 7c 20 6e 75 6c 6c 20 21 3d 3d 20 70 61 72 73 65 5f 75 72 6c 28 ,.2,.1).).||.null.!==.parse_url(
10d7a0 24 66 69 6c 65 2c 20 50 48 50 5f 55 52 4c 5f 53 43 48 45 4d 45 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 0a $file,.PHP_URL_SCHEME).;.}......
10d7c0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 65 6d 70 6e 61 6d 28 24 64 69 .....public.function.tempnam($di
10d7e0 72 2c 20 24 70 72 65 66 69 78 29 0a 7b 0a 6c 69 73 74 28 24 73 63 68 65 6d 65 2c 20 24 68 69 65 r,.$prefix).{.list($scheme,.$hie
10d800 72 61 72 63 68 79 29 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 41 6e 64 48 69 65 rarchy).=.$this->getSchemeAndHie
10d820 72 61 72 63 68 79 28 24 64 69 72 29 3b 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 73 rarchy($dir);....if.(null.===.$s
10d840 63 68 65 6d 65 20 7c 7c 20 27 66 69 6c 65 27 20 3d 3d 3d 20 24 73 63 68 65 6d 65 29 20 7b 0a 24 cheme.||.'file'.===.$scheme).{.$
10d860 74 6d 70 46 69 6c 65 20 3d 20 74 65 6d 70 6e 61 6d 28 24 68 69 65 72 61 72 63 68 79 2c 20 24 70 tmpFile.=.tempnam($hierarchy,.$p
10d880 72 65 66 69 78 29 3b 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 74 6d 70 46 69 6c refix);....if.(false.!==.$tmpFil
10d8a0 65 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 73 63 68 65 6d 65 29 20 7b 0a 72 65 74 e).{.if.(null.!==.$scheme).{.ret
10d8c0 75 72 6e 20 24 73 63 68 65 6d 65 2e 27 3a 2f 2f 27 2e 24 74 6d 70 46 69 6c 65 3b 0a 7d 0a 0a 72 urn.$scheme.'://'.$tmpFile;.}..r
10d8e0 65 74 75 72 6e 20 24 74 6d 70 46 69 6c 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 eturn.$tmpFile;.}..throw.new.IOE
10d900 78 63 65 70 74 69 6f 6e 28 27 41 20 74 65 6d 70 6f 72 61 72 79 20 66 69 6c 65 20 63 6f 75 6c 64 xception('A.temporary.file.could
10d920 20 6e 6f 74 20 62 65 20 63 72 65 61 74 65 64 2e 27 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 20 28 24 69 .not.be.created.');.}....for.($i
10d940 20 3d 20 30 3b 20 24 69 20 3c 20 31 30 3b 20 2b 2b 24 69 29 20 7b 0a 0a 20 24 74 6d 70 46 69 6c .=.0;.$i.<.10;.++$i).{...$tmpFil
10d960 65 20 3d 20 24 64 69 72 2e 27 2f 27 2e 24 70 72 65 66 69 78 2e 75 6e 69 71 69 64 28 6d 74 5f 72 e.=.$dir.'/'.$prefix.uniqid(mt_r
10d980 61 6e 64 28 29 2c 20 74 72 75 65 29 3b 0a 0a 0a 20 0a 20 24 68 61 6e 64 6c 65 20 3d 20 40 66 6f and(),.true);......$handle.=.@fo
10d9a0 70 65 6e 28 24 74 6d 70 46 69 6c 65 2c 20 27 78 2b 27 29 3b 0a 0a 0a 20 69 66 20 28 66 61 6c 73 pen($tmpFile,.'x+');....if.(fals
10d9c0 65 20 3d 3d 3d 20 24 68 61 6e 64 6c 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 e.===.$handle).{.continue;.}....
10d9e0 40 66 63 6c 6f 73 65 28 24 68 61 6e 64 6c 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 6d 70 46 69 @fclose($handle);..return.$tmpFi
10da00 6c 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 27 41 20 le;.}..throw.new.IOException('A.
10da20 74 65 6d 70 6f 72 61 72 79 20 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 72 65 61 temporary.file.could.not.be.crea
10da40 74 65 64 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ted.');.}............public.func
10da60 74 69 6f 6e 20 64 75 6d 70 46 69 6c 65 28 24 66 69 6c 65 6e 61 6d 65 2c 20 24 63 6f 6e 74 65 6e tion.dumpFile($filename,.$conten
10da80 74 2c 20 24 6d 6f 64 65 20 3d 20 30 36 36 36 29 0a 7b 0a 24 64 69 72 20 3d 20 64 69 72 6e 61 6d t,.$mode.=.0666).{.$dir.=.dirnam
10daa0 65 28 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 29 e($filename);..if.(!is_dir($dir)
10dac0 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 6b 64 69 72 28 24 64 69 72 29 3b 0a 7d 20 65 6c 73 65 69 66 ).{.$this->mkdir($dir);.}.elseif
10dae0 20 28 21 69 73 5f 77 72 69 74 61 62 6c 65 28 24 64 69 72 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 .(!is_writable($dir)).{.throw.ne
10db00 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 61 62 6c 65 20 74 6f w.IOException(sprintf('Unable.to
10db20 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 22 25 73 22 20 64 69 72 65 63 74 6f 72 79 2e 27 2c 20 .write.to.the."%s".directory.',.
10db40 24 64 69 72 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 64 69 72 29 3b 0a 7d 0a 0a 24 74 6d 70 46 69 $dir),.0,.null,.$dir);.}..$tmpFi
10db60 6c 65 20 3d 20 24 74 68 69 73 2d 3e 74 65 6d 70 6e 61 6d 28 24 64 69 72 2c 20 62 61 73 65 6e 61 le.=.$this->tempnam($dir,.basena
10db80 6d 65 28 24 66 69 6c 65 6e 61 6d 65 29 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 40 me($filename));..if.(false.===.@
10dba0 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 6d 70 46 69 6c 65 2c 20 24 63 6f 6e file_put_contents($tmpFile,.$con
10dbc0 74 65 6e 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 73 tent)).{.throw.new.IOException(s
10dbe0 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 77 72 69 74 65 20 66 69 6c 65 20 22 25 73 printf('Failed.to.write.file."%s
10dc00 22 2e 27 2c 20 24 66 69 6c 65 6e 61 6d 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 6e ".',.$filename),.0,.null,.$filen
10dc20 61 6d 65 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 69 ame);.}..if.(null.!==.$mode).{.i
10dc40 66 20 28 66 75 6e 63 5f 6e 75 6d 5f 61 72 67 73 28 29 20 3e 20 32 29 20 7b 0a 40 74 72 69 67 67 f.(func_num_args().>.2).{.@trigg
10dc60 65 72 5f 65 72 72 6f 72 28 27 53 75 70 70 6f 72 74 20 66 6f 72 20 6d 6f 64 69 66 79 69 6e 67 20 er_error('Support.for.modifying.
10dc80 66 69 6c 65 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 file.permissions.is.deprecated.s
10dca0 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 33 2e 31 32 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 ince.version.2.3.12.and.will.be.
10dcc0 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 removed.in.3.0.',.E_USER_DEPRECA
10dce0 54 45 44 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 68 6d 6f 64 28 24 74 6d 70 46 69 6c 65 2c 20 TED);.}..$this->chmod($tmpFile,.
10dd00 24 6d 6f 64 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 72 65 6e 61 6d 65 28 24 74 6d 70 46 69 6c 65 $mode);.}.$this->rename($tmpFile
10dd20 2c 20 24 66 69 6c 65 6e 61 6d 65 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 ,.$filename,.true);.}.......priv
10dd40 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 74 6f 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 73 29 0a ate.function.toIterator($files).
10dd60 7b 0a 69 66 20 28 21 24 66 69 6c 65 73 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 54 72 61 76 65 72 {.if.(!$files.instanceof.\Traver
10dd80 73 61 62 6c 65 29 20 7b 0a 24 66 69 6c 65 73 20 3d 20 6e 65 77 20 5c 41 72 72 61 79 4f 62 6a 65 sable).{.$files.=.new.\ArrayObje
10dda0 63 74 28 69 73 5f 61 72 72 61 79 28 24 66 69 6c 65 73 29 20 3f 20 24 66 69 6c 65 73 20 3a 20 61 ct(is_array($files).?.$files.:.a
10ddc0 72 72 61 79 28 24 66 69 6c 65 73 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 73 3b rray($files));.}..return.$files;
10dde0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 .}.........private.function.getS
10de00 63 68 65 6d 65 41 6e 64 48 69 65 72 61 72 63 68 79 28 24 66 69 6c 65 6e 61 6d 65 29 0a 7b 0a 24 chemeAndHierarchy($filename).{.$
10de20 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 2f 2f 27 2c 20 24 66 69 6c components.=.explode('://',.$fil
10de40 65 6e 61 6d 65 2c 20 32 29 3b 0a 0a 72 65 74 75 72 6e 20 32 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 ename,.2);..return.2.===.count($
10de60 63 6f 6d 70 6f 6e 65 6e 74 73 29 20 3f 20 61 72 72 61 79 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b components).?.array($components[
10de80 30 5d 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 31 5d 29 20 3a 20 61 72 72 61 79 28 6e 75 6c 6c 0],.$components[1]).:.array(null
10dea0 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 30 5d 29 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 ,.$components[0]);.}.}.Copyright
10dec0 20 28 63 29 20 32 30 30 34 2d 32 30 31 36 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 0a .(c).2004-2016.Fabien.Potencier.
10dee0 0a 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 .Permission.is.hereby.granted,.f
10df00 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 ree.of.charge,.to.any.person.obt
10df20 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 aining.a.copy.of.this.software.a
10df40 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 nd.associated.documentation.file
10df60 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 s.(the."Software"),.to.deal.in.t
10df80 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c he.Software.without.restriction,
10dfa0 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 .including.without.limitation.th
10dfc0 65 20 72 69 67 68 74 73 0a 74 6f 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d e.rights.to.use,.copy,.modify,.m
10dfe0 65 72 67 65 2c 20 70 75 62 6c 69 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 erge,.publish,.distribute,.subli
10e000 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 20 73 65 6c 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 cense,.and/or.sell.copies.of.the
10e020 20 53 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 .Software,.and.to.permit.persons
10e040 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 .to.whom.the.Software.is.furnish
10e060 65 64 0a 74 6f 20 64 6f 20 73 6f 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c ed.to.do.so,.subject.to.the.foll
10e080 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 owing.conditions:..The.above.cop
10e0a0 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f yright.notice.and.this.permissio
10e0c0 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c n.notice.shall.be.included.in.al
10e0e0 6c 0a 63 6f 70 69 65 73 20 6f 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 l.copies.or.substantial.portions
10e100 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 .of.the.Software...THE.SOFTWARE.
10e120 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 IS.PROVIDED."AS.IS",.WITHOUT.WAR
10e140 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d RANTY.OF.ANY.KIND,.EXPRESS.OR.IM
10e160 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 PLIED,.INCLUDING.BUT.NOT.LIMITED
10e180 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 .TO.THE.WARRANTIES.OF.MERCHANTAB
10e1a0 49 4c 49 54 59 2c 0a 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 ILITY,.FITNESS.FOR.A.PARTICULAR.
10e1c0 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 PURPOSE.AND.NONINFRINGEMENT..IN.
10e1e0 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f NO.EVENT.SHALL.THE.AUTHORS.OR.CO
10e200 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e PYRIGHT.HOLDERS.BE.LIABLE.FOR.AN
10e220 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c Y.CLAIM,.DAMAGES.OR.OTHER.LIABIL
10e240 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e ITY,.WHETHER.IN.AN.ACTION.OF.CON
10e260 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e TRACT,.TORT.OR.OTHERWISE,.ARISIN
10e280 47 20 46 52 4f 4d 2c 0a 4f 55 54 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 G.FROM,.OUT.OF.OR.IN.CONNECTION.
10e2a0 57 49 54 48 20 54 48 45 20 53 4f 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 WITH.THE.SOFTWARE.OR.THE.USE.OR.
10e2c0 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 53 20 49 4e 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a OTHER.DEALINGS.IN.THE.SOFTWARE..
10e2e0 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e <?php...........namespace.Symfon
10e300 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 75 73 65 20 53 79 6d y\Component\Filesystem;..use.Sym
10e320 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6c 65 73 79 73 74 65 6d 5c 45 78 63 65 70 74 fony\Component\Filesystem\Except
10e340 69 6f 6e 5c 49 4f 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 ion\IOException;...............c
10e360 6c 61 73 73 20 4c 6f 63 6b 48 61 6e 64 6c 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 lass.LockHandler.{.private.$file
10e380 3b 0a 70 72 69 76 61 74 65 20 24 68 61 6e 64 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ;.private.$handle;........public
10e3a0 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 6c 6f .function.__construct($name,.$lo
10e3c0 63 6b 50 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6c 6f 63 6b 50 61 74 68 20 3d 20 24 6c 6f ckPath.=.null).{.$lockPath.=.$lo
10e3e0 63 6b 50 61 74 68 20 3f 3a 20 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 28 29 3b 0a 0a 69 ckPath.?:.sys_get_temp_dir();..i
10e400 66 20 28 21 69 73 5f 64 69 72 28 24 6c 6f 63 6b 50 61 74 68 29 29 20 7b 0a 24 66 73 20 3d 20 6e f.(!is_dir($lockPath)).{.$fs.=.n
10e420 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 66 73 2d 3e 6d 6b 64 69 72 28 24 6c 6f 63 ew.Filesystem();.$fs->mkdir($loc
10e440 6b 50 61 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 77 72 69 74 61 62 6c 65 28 24 6c 6f 63 kPath);.}..if.(!is_writable($loc
10e460 6b 50 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 kPath)).{.throw.new.IOException(
10e480 73 70 72 69 6e 74 66 28 27 54 68 65 20 64 69 72 65 63 74 6f 72 79 20 22 25 73 22 20 69 73 20 6e sprintf('The.directory."%s".is.n
10e4a0 6f 74 20 77 72 69 74 61 62 6c 65 2e 27 2c 20 24 6c 6f 63 6b 50 61 74 68 29 2c 20 30 2c 20 6e 75 ot.writable.',.$lockPath),.0,.nu
10e4c0 6c 6c 2c 20 24 6c 6f 63 6b 50 61 74 68 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 20 3d ll,.$lockPath);.}..$this->file.=
10e4e0 20 73 70 72 69 6e 74 66 28 27 25 73 2f 73 66 2e 25 73 2e 25 73 2e 6c 6f 63 6b 27 2c 20 24 6c 6f .sprintf('%s/sf.%s.%s.lock',.$lo
10e500 63 6b 50 61 74 68 2c 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 5b 5e 61 2d 7a 30 2d 39 5c ckPath,.preg_replace('/[^a-z0-9\
10e520 2e 5f 2d 5d 2b 2f 69 27 2c 20 27 2d 27 2c 20 24 6e 61 6d 65 29 2c 20 68 61 73 68 28 27 73 68 61 ._-]+/i',.'-',.$name),.hash('sha
10e540 32 35 36 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 256',.$name));.}...........publi
10e560 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 63 6b 28 24 62 6c 6f 63 6b 69 6e 67 20 3d 20 66 61 6c 73 c.function.lock($blocking.=.fals
10e580 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 29 20 7b 0a 72 65 74 75 72 6e e).{.if.($this->handle).{.return
10e5a0 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 73 65 74 5f 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 66 75 .true;.}....set_error_handler(fu
10e5c0 6e 63 74 69 6f 6e 28 29 20 7b 7d 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 6e 64 6c nction().{});..if.(!$this->handl
10e5e0 65 20 3d 20 66 6f 70 65 6e 28 24 74 68 69 73 2d 3e 66 69 6c 65 2c 20 27 72 27 29 29 20 7b 0a 69 e.=.fopen($this->file,.'r')).{.i
10e600 66 20 28 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 20 3d 20 66 6f 70 65 6e 28 24 74 68 69 73 2d 3e f.($this->handle.=.fopen($this->
10e620 66 69 6c 65 2c 20 27 78 27 29 29 20 7b 0a 63 68 6d 6f 64 28 24 74 68 69 73 2d 3e 66 69 6c 65 2c file,.'x')).{.chmod($this->file,
10e640 20 30 34 34 34 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 .0444);.}.elseif.(!$this->handle
10e660 20 3d 20 66 6f 70 65 6e 28 24 74 68 69 73 2d 3e 66 69 6c 65 2c 20 27 72 27 29 29 20 7b 0a 75 73 .=.fopen($this->file,.'r')).{.us
10e680 6c 65 65 70 28 31 30 30 29 3b 20 0a 20 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 20 3d 20 66 6f 70 leep(100);...$this->handle.=.fop
10e6a0 65 6e 28 24 74 68 69 73 2d 3e 66 69 6c 65 2c 20 27 72 27 29 3b 0a 7d 0a 7d 0a 72 65 73 74 6f 72 en($this->file,.'r');.}.}.restor
10e6c0 65 5f 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e e_error_handler();..if.(!$this->
10e6e0 68 61 6e 64 6c 65 29 20 7b 0a 24 65 72 72 6f 72 20 3d 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 handle).{.$error.=.error_get_las
10e700 74 28 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 6f t();.throw.new.IOException($erro
10e720 72 5b 27 6d 65 73 73 61 67 65 27 5d 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 74 68 69 73 2d 3e 66 69 r['message'],.0,.null,.$this->fi
10e740 6c 65 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 21 66 6c 6f 63 6b 28 24 74 68 69 73 2d 3e 68 61 le);.}......if.(!flock($this->ha
10e760 6e 64 6c 65 2c 20 4c 4f 43 4b 5f 45 58 20 7c 20 28 24 62 6c 6f 63 6b 69 6e 67 20 3f 20 30 20 3a ndle,.LOCK_EX.|.($blocking.?.0.:
10e780 20 4c 4f 43 4b 5f 4e 42 29 29 29 20 7b 0a 66 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 68 61 6e 64 .LOCK_NB))).{.fclose($this->hand
10e7a0 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 le);.$this->handle.=.null;..retu
10e7c0 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a rn.false;.}..return.true;.}.....
10e7e0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6c 65 61 73 65 28 29 0a 7b 0a 69 66 20 28 public.function.release().{.if.(
10e800 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 29 20 7b 0a 66 6c 6f 63 6b 28 24 74 68 69 73 2d 3e 68 61 $this->handle).{.flock($this->ha
10e820 6e 64 6c 65 2c 20 4c 4f 43 4b 5f 55 4e 20 7c 20 4c 4f 43 4b 5f 4e 42 29 3b 0a 66 63 6c 6f 73 65 ndle,.LOCK_UN.|.LOCK_NB);.fclose
10e840 28 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 20 3d ($this->handle);.$this->handle.=
10e860 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d .null;.}.}.}.<?php...........nam
10e880 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c espace.Symfony\Component\Finder\
10e8a0 41 64 61 70 74 65 72 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e Adapter;..@trigger_error('The.'.
10e8c0 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 41 62 73 74 72 61 63 74 41 64 61 70 74 65 72 20 __NAMESPACE__.'\AbstractAdapter.
10e8e0 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f class.is.deprecated.since.versio
10e900 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 n.2.8.and.will.be.removed.in.3.0
10e920 2e 20 55 73 65 20 64 69 72 65 63 74 6c 79 20 74 68 65 20 46 69 6e 64 65 72 20 63 6c 61 73 73 20 ..Use.directly.the.Finder.class.
10e940 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a instead.',.E_USER_DEPRECATED);..
10e960 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 41 62 73 74 72 61 63 74 41 64 .......abstract.class.AbstractAd
10e980 61 70 74 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 apter.implements.AdapterInterfac
10e9a0 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 20 3d 20 66 61 6c e.{.protected.$followLinks.=.fal
10e9c0 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 6f 64 65 20 3d 20 30 3b 0a 70 72 6f 74 65 63 74 se;.protected.$mode.=.0;.protect
10e9e0 65 64 20 24 6d 69 6e 44 65 70 74 68 20 3d 20 30 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 61 78 ed.$minDepth.=.0;.protected.$max
10ea00 44 65 70 74 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 Depth.=.PHP_INT_MAX;.protected.$
10ea20 65 78 63 6c 75 64 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 61 exclude.=.array();.protected.$na
10ea40 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 6f 74 4e 61 6d mes.=.array();.protected.$notNam
10ea60 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 74 61 69 6e es.=.array();.protected.$contain
10ea80 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 6f 74 43 6f 6e 74 61 s.=.array();.protected.$notConta
10eaa0 69 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 69 7a 65 73 20 ins.=.array();.protected.$sizes.
10eac0 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 61 74 65 73 20 3d 20 61 72 =.array();.protected.$dates.=.ar
10eae0 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c 74 65 72 73 20 3d 20 61 72 72 61 ray();.protected.$filters.=.arra
10eb00 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 72 74 20 3d 20 66 61 6c 73 65 3b 0a 70 72 y();.protected.$sort.=.false;.pr
10eb20 6f 74 65 63 74 65 64 20 24 70 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 otected.$paths.=.array();.protec
10eb40 74 65 64 20 24 6e 6f 74 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 ted.$notPaths.=.array();.protect
10eb60 65 64 20 24 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 20 3d 20 66 61 6c 73 65 ed.$ignoreUnreadableDirs.=.false
10eb80 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 61 72 65 53 75 70 70 6f 72 74 65 64 20 ;..private.static.$areSupported.
10eba0 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 =.array();.....public.function.i
10ebc0 73 53 75 70 70 6f 72 74 65 64 28 29 0a 7b 0a 24 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 sSupported().{.$name.=.$this->ge
10ebe0 74 4e 61 6d 65 28 29 3b 0a 0a 69 66 20 28 21 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 tName();..if.(!array_key_exists(
10ec00 24 6e 61 6d 65 2c 20 73 65 6c 66 3a 3a 24 61 72 65 53 75 70 70 6f 72 74 65 64 29 29 20 7b 0a 73 $name,.self::$areSupported)).{.s
10ec20 65 6c 66 3a 3a 24 61 72 65 53 75 70 70 6f 72 74 65 64 5b 24 6e 61 6d 65 5d 20 3d 20 24 74 68 69 elf::$areSupported[$name].=.$thi
10ec40 73 2d 3e 63 61 6e 42 65 55 73 65 64 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a s->canBeUsed();.}..return.self::
10ec60 24 61 72 65 53 75 70 70 6f 72 74 65 64 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c $areSupported[$name];.}.....publ
10ec80 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 6c 6c 6f 77 4c 69 6e 6b 73 28 24 66 6f 6c 6c ic.function.setFollowLinks($foll
10eca0 6f 77 4c 69 6e 6b 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 20 3d 20 owLinks).{.$this->followLinks.=.
10ecc0 24 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a $followLinks;..return.$this;.}..
10ece0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4d 6f 64 65 28 24 6d 6f 64 65 ...public.function.setMode($mode
10ed00 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d 6f 64 65 3b 0a 0a 72 65 74 75 72 6e ).{.$this->mode.=.$mode;..return
10ed20 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 .$this;.}.....public.function.se
10ed40 74 44 65 70 74 68 73 28 61 72 72 61 79 20 24 64 65 70 74 68 73 29 0a 7b 0a 24 74 68 69 73 2d 3e tDepths(array.$depths).{.$this->
10ed60 6d 69 6e 44 65 70 74 68 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 3d 20 minDepth.=.0;.$this->maxDepth.=.
10ed80 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 74 68 73 20 61 PHP_INT_MAX;..foreach.($depths.a
10eda0 73 20 24 63 6f 6d 70 61 72 61 74 6f 72 29 20 7b 0a 73 77 69 74 63 68 20 28 24 63 6f 6d 70 61 72 s.$comparator).{.switch.($compar
10edc0 61 74 6f 72 2d 3e 67 65 74 4f 70 65 72 61 74 6f 72 28 29 29 20 7b 0a 63 61 73 65 20 27 3e 27 3a ator->getOperator()).{.case.'>':
10ede0 0a 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e .$this->minDepth.=.$comparator->
10ee00 67 65 74 54 61 72 67 65 74 28 29 20 2b 20 31 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3e 3d getTarget().+.1;.break;.case.'>=
10ee20 27 3a 0a 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 ':.$this->minDepth.=.$comparator
10ee40 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3c 27 3a 0a ->getTarget();.break;.case.'<':.
10ee60 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 $this->maxDepth.=.$comparator->g
10ee80 65 74 54 61 72 67 65 74 28 29 20 2d 20 31 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3c 3d 27 etTarget().-.1;.break;.case.'<='
10eea0 3a 0a 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d :.$this->maxDepth.=.$comparator-
10eec0 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 74 >getTarget();.break;.default:.$t
10eee0 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3d 20 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 his->minDepth.=.$this->maxDepth.
10ef00 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a 7d 0a 7d 0a =.$comparator->getTarget();.}.}.
10ef20 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .return.$this;.}.....public.func
10ef40 74 69 6f 6e 20 73 65 74 45 78 63 6c 75 64 65 28 61 72 72 61 79 20 24 65 78 63 6c 75 64 65 29 0a tion.setExclude(array.$exclude).
10ef60 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 20 3d 20 24 65 78 63 6c 75 64 65 3b 0a 0a 72 65 {.$this->exclude.=.$exclude;..re
10ef80 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f turn.$this;.}.....public.functio
10efa0 6e 20 73 65 74 4e 61 6d 65 73 28 61 72 72 61 79 20 24 6e 61 6d 65 73 29 0a 7b 0a 24 74 68 69 73 n.setNames(array.$names).{.$this
10efc0 2d 3e 6e 61 6d 65 73 20 3d 20 24 6e 61 6d 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b ->names.=.$names;..return.$this;
10efe0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e 6f 74 4e 61 6d .}.....public.function.setNotNam
10f000 65 73 28 61 72 72 61 79 20 24 6e 6f 74 4e 61 6d 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 es(array.$notNames).{.$this->not
10f020 4e 61 6d 65 73 20 3d 20 24 6e 6f 74 4e 61 6d 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 Names.=.$notNames;..return.$this
10f040 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6e 74 61 ;.}.....public.function.setConta
10f060 69 6e 73 28 61 72 72 61 79 20 24 63 6f 6e 74 61 69 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f ins(array.$contains).{.$this->co
10f080 6e 74 61 69 6e 73 20 3d 20 24 63 6f 6e 74 61 69 6e 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 ntains.=.$contains;..return.$thi
10f0a0 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e 6f 74 43 s;.}.....public.function.setNotC
10f0c0 6f 6e 74 61 69 6e 73 28 61 72 72 61 79 20 24 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 0a 7b 0a 24 74 ontains(array.$notContains).{.$t
10f0e0 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 20 3d 20 24 6e 6f 74 43 6f 6e 74 61 69 6e 73 3b his->notContains.=.$notContains;
10f100 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ..return.$this;.}.....public.fun
10f120 63 74 69 6f 6e 20 73 65 74 53 69 7a 65 73 28 61 72 72 61 79 20 24 73 69 7a 65 73 29 0a 7b 0a 24 ction.setSizes(array.$sizes).{.$
10f140 74 68 69 73 2d 3e 73 69 7a 65 73 20 3d 20 24 73 69 7a 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 this->sizes.=.$sizes;..return.$t
10f160 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 61 his;.}.....public.function.setDa
10f180 74 65 73 28 61 72 72 61 79 20 24 64 61 74 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 61 74 65 73 tes(array.$dates).{.$this->dates
10f1a0 20 3d 20 24 64 61 74 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a .=.$dates;..return.$this;.}.....
10f1c0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 69 6c 74 65 72 73 28 61 72 72 61 79 public.function.setFilters(array
10f1e0 20 24 66 69 6c 74 65 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 20 3d 20 24 66 .$filters).{.$this->filters.=.$f
10f200 69 6c 74 65 72 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 ilters;..return.$this;.}.....pub
10f220 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 6f 72 74 28 24 73 6f 72 74 29 0a 7b 0a 24 74 lic.function.setSort($sort).{.$t
10f240 68 69 73 2d 3e 73 6f 72 74 20 3d 20 24 73 6f 72 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 his->sort.=.$sort;..return.$this
10f260 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 61 74 68 28 ;.}.....public.function.setPath(
10f280 61 72 72 61 79 20 24 70 61 74 68 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 68 73 20 3d 20 24 array.$paths).{.$this->paths.=.$
10f2a0 70 61 74 68 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c paths;..return.$this;.}.....publ
10f2c0 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e 6f 74 50 61 74 68 28 61 72 72 61 79 20 24 6e 6f ic.function.setNotPath(array.$no
10f2e0 74 50 61 74 68 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 20 3d 20 24 6e 6f 74 tPaths).{.$this->notPaths.=.$not
10f300 50 61 74 68 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c Paths;..return.$this;.}.....publ
10f320 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 ic.function.ignoreUnreadableDirs
10f340 28 24 69 67 6e 6f 72 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 ($ignore.=.true).{.$this->ignore
10f360 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 20 3d 20 28 62 6f 6f 6c 29 20 24 69 67 6e 6f 72 65 3b UnreadableDirs.=.(bool).$ignore;
10f380 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 ..return.$this;.}.............ab
10f3a0 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 42 65 55 stract.protected.function.canBeU
10f3c0 73 65 64 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 sed();.}.<?php...........namespa
10f3e0 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 ce.Symfony\Component\Finder\Adap
10f400 74 65 72 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 ter;..@trigger_error('The.'.__NA
10f420 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 41 62 73 74 72 61 63 74 46 69 6e 64 41 64 61 70 74 65 72 20 MESPACE__.'\AbstractFindAdapter.
10f440 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f class.is.deprecated.since.versio
10f460 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 n.2.8.and.will.be.removed.in.3.0
10f480 2e 20 55 73 65 20 64 69 72 65 63 74 6c 79 20 74 68 65 20 46 69 6e 64 65 72 20 63 6c 61 73 73 20 ..Use.directly.the.Finder.class.
10f4a0 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a instead.',.E_USER_DEPRECATED);..
10f4c0 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 63 use.Symfony\Component\Finder\Exc
10f4e0 65 70 74 69 6f 6e 5c 41 63 63 65 73 73 44 65 6e 69 65 64 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 eption\AccessDeniedException;.us
10f500 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 e.Symfony\Component\Finder\Itera
10f520 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 tor;.use.Symfony\Component\Finde
10f540 72 5c 53 68 65 6c 6c 5c 53 68 65 6c 6c 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f r\Shell\Shell;.use.Symfony\Compo
10f560 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 70 72 65 73 73 69 6f 6e 5c 45 78 70 72 65 73 73 69 6f nent\Finder\Expression\Expressio
10f580 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c n;.use.Symfony\Component\Finder\
10f5a0 53 68 65 6c 6c 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f Shell\Command;.use.Symfony\Compo
10f5c0 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 43 6f 6d 70 61 72 61 74 6f 72 5c 4e 75 6d 62 65 72 43 6f 6d nent\Finder\Comparator\NumberCom
10f5e0 70 61 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 parator;.use.Symfony\Component\F
10f600 69 6e 64 65 72 5c 43 6f 6d 70 61 72 61 74 6f 72 5c 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 3b inder\Comparator\DateComparator;
10f620 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 41 62 73 74 72 61 63 74 .........abstract.class.Abstract
10f640 46 69 6e 64 41 64 61 70 74 65 72 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 41 64 61 70 FindAdapter.extends.AbstractAdap
10f660 74 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 68 65 6c 6c 3b 0a 0a 0a 0a 0a 70 ter.{....protected.$shell;.....p
10f680 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 24 ublic.function.__construct().{.$
10f6a0 74 68 69 73 2d 3e 73 68 65 6c 6c 20 3d 20 6e 65 77 20 53 68 65 6c 6c 28 29 3b 0a 7d 0a 0a 0a 0a this->shell.=.new.Shell();.}....
10f6c0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f .public.function.searchInDirecto
10f6e0 72 79 28 24 64 69 72 29 0a 7b 0a 0a 20 24 64 69 72 20 3d 20 72 65 61 6c 70 61 74 68 28 24 64 69 ry($dir).{...$dir.=.realpath($di
10f700 72 29 3b 0a 0a 0a 20 69 66 20 28 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 54 79 70 65 46 69 6c 74 r);....if.(Iterator\FileTypeFilt
10f720 65 72 49 74 65 72 61 74 6f 72 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 3d 3d 3d erIterator::ONLY_DIRECTORIES.===
10f740 20 24 74 68 69 73 2d 3e 6d 6f 64 65 20 26 26 20 28 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 .$this->mode.&&.($this->contains
10f760 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 29 20 7b 0a 72 65 74 75 72 .||.$this->notContains)).{.retur
10f780 6e 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 50 61 74 68 73 49 74 65 72 61 74 6f 72 n.new.Iterator\FilePathsIterator
10f7a0 28 61 72 72 61 79 28 29 2c 20 24 64 69 72 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 43 (array(),.$dir);.}..$command.=.C
10f7c0 6f 6d 6d 61 6e 64 3a 3a 63 72 65 61 74 65 28 29 3b 0a 24 66 69 6e 64 20 3d 20 24 74 68 69 73 2d ommand::create();.$find.=.$this-
10f7e0 3e 62 75 69 6c 64 46 69 6e 64 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 64 69 72 >buildFindCommand($command,.$dir
10f800 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 29 20 7b 0a 24 66 );..if.($this->followLinks).{.$f
10f820 69 6e 64 2d 3e 61 64 64 28 27 2d 66 6f 6c 6c 6f 77 27 29 3b 0a 7d 0a 0a 24 66 69 6e 64 2d 3e 61 ind->add('-follow');.}..$find->a
10f840 64 64 28 27 2d 6d 69 6e 64 65 70 74 68 27 29 2d 3e 61 64 64 28 24 74 68 69 73 2d 3e 6d 69 6e 44 dd('-mindepth')->add($this->minD
10f860 65 70 74 68 20 2b 20 31 29 3b 0a 0a 69 66 20 28 50 48 50 5f 49 4e 54 5f 4d 41 58 20 21 3d 3d 20 epth.+.1);..if.(PHP_INT_MAX.!==.
10f880 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 29 20 7b 0a 24 66 69 6e 64 2d 3e 61 64 64 28 27 2d $this->maxDepth).{.$find->add('-
10f8a0 6d 61 78 64 65 70 74 68 27 29 2d 3e 61 64 64 28 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 maxdepth')->add($this->maxDepth.
10f8c0 2b 20 31 29 3b 0a 7d 0a 0a 69 66 20 28 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 54 79 70 65 46 69 +.1);.}..if.(Iterator\FileTypeFi
10f8e0 6c 74 65 72 49 74 65 72 61 74 6f 72 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 3d lterIterator::ONLY_DIRECTORIES.=
10f900 3d 3d 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b 0a 24 66 69 6e 64 2d 3e 61 64 64 28 27 2d 74 ==.$this->mode).{.$find->add('-t
10f920 79 70 65 20 64 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 ype.d');.}.elseif.(Iterator\File
10f940 54 79 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3a 3a 4f 4e 4c 59 5f 46 49 4c 45 53 20 3d TypeFilterIterator::ONLY_FILES.=
10f960 3d 3d 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b 0a 24 66 69 6e 64 2d 3e 61 64 64 28 27 2d 74 ==.$this->mode).{.$find->add('-t
10f980 79 70 65 20 66 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 4e 61 6d 65 73 46 69 6c ype.f');.}..$this->buildNamesFil
10f9a0 74 65 72 69 6e 67 28 24 66 69 6e 64 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 73 29 3b 0a 24 74 68 tering($find,.$this->names);.$th
10f9c0 69 73 2d 3e 62 75 69 6c 64 4e 61 6d 65 73 46 69 6c 74 65 72 69 6e 67 28 24 66 69 6e 64 2c 20 24 is->buildNamesFiltering($find,.$
10f9e0 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 2c 20 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 62 75 this->notNames,.true);.$this->bu
10fa00 69 6c 64 50 61 74 68 73 46 69 6c 74 65 72 69 6e 67 28 24 66 69 6e 64 2c 20 24 64 69 72 2c 20 24 ildPathsFiltering($find,.$dir,.$
10fa20 74 68 69 73 2d 3e 70 61 74 68 73 29 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 50 61 74 68 73 46 this->paths);.$this->buildPathsF
10fa40 69 6c 74 65 72 69 6e 67 28 24 66 69 6e 64 2c 20 24 64 69 72 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 iltering($find,.$dir,.$this->not
10fa60 50 61 74 68 73 2c 20 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 53 69 7a 65 73 46 Paths,.true);.$this->buildSizesF
10fa80 69 6c 74 65 72 69 6e 67 28 24 66 69 6e 64 2c 20 24 74 68 69 73 2d 3e 73 69 7a 65 73 29 3b 0a 24 iltering($find,.$this->sizes);.$
10faa0 74 68 69 73 2d 3e 62 75 69 6c 64 44 61 74 65 73 46 69 6c 74 65 72 69 6e 67 28 24 66 69 6e 64 2c this->buildDatesFiltering($find,
10fac0 20 24 74 68 69 73 2d 3e 64 61 74 65 73 29 3b 0a 0a 24 75 73 65 47 72 65 70 20 3d 20 24 74 68 69 .$this->dates);..$useGrep.=.$thi
10fae0 73 2d 3e 73 68 65 6c 6c 2d 3e 74 65 73 74 43 6f 6d 6d 61 6e 64 28 27 67 72 65 70 27 29 20 26 26 s->shell->testCommand('grep').&&
10fb00 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 74 65 73 74 43 6f 6d 6d 61 6e 64 28 27 78 61 72 67 .$this->shell->testCommand('xarg
10fb20 73 27 29 3b 0a 24 75 73 65 53 6f 72 74 20 3d 20 69 73 5f 69 6e 74 28 24 74 68 69 73 2d 3e 73 6f s');.$useSort.=.is_int($this->so
10fb40 72 74 29 20 26 26 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 74 65 73 74 43 6f 6d 6d 61 6e 64 rt).&&.$this->shell->testCommand
10fb60 28 27 73 6f 72 74 27 29 20 26 26 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 74 65 73 74 43 6f ('sort').&&.$this->shell->testCo
10fb80 6d 6d 61 6e 64 28 27 63 75 74 27 29 3b 0a 0a 69 66 20 28 24 75 73 65 47 72 65 70 20 26 26 20 28 mmand('cut');..if.($useGrep.&&.(
10fba0 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e $this->contains.||.$this->notCon
10fbc0 74 61 69 6e 73 29 29 20 7b 0a 24 67 72 65 70 20 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 69 6e 73 28 tains)).{.$grep.=.$command->ins(
10fbe0 27 67 72 65 70 27 29 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 6e 74 65 6e 74 46 69 6c 74 'grep');.$this->buildContentFilt
10fc00 65 72 69 6e 67 28 24 67 72 65 70 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 29 3b 0a 24 ering($grep,.$this->contains);.$
10fc20 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 6e 74 65 6e 74 46 69 6c 74 65 72 69 6e 67 28 24 67 72 65 this->buildContentFiltering($gre
10fc40 70 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 2c 20 74 72 75 65 29 3b 0a 7d 0a p,.$this->notContains,.true);.}.
10fc60 0a 69 66 20 28 24 75 73 65 53 6f 72 74 29 20 7b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 53 6f 72 .if.($useSort).{.$this->buildSor
10fc80 74 69 6e 67 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 74 68 69 73 2d 3e 73 6f 72 74 29 3b 0a 7d 0a 0a ting($command,.$this->sort);.}..
10fca0 24 63 6f 6d 6d 61 6e 64 2d 3e 73 65 74 45 72 72 6f 72 48 61 6e 64 6c 65 72 28 0a 24 74 68 69 73 $command->setErrorHandler(.$this
10fcc0 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 0a 0a 20 3f 20 66 75 6e 63 74 ->ignoreUnreadableDirs...?.funct
10fce0 69 6f 6e 20 28 24 73 74 64 65 72 72 29 20 7b 20 72 65 74 75 72 6e 3b 20 7d 0a 3a 20 66 75 6e 63 ion.($stderr).{.return;.}.:.func
10fd00 74 69 6f 6e 20 28 24 73 74 64 65 72 72 29 20 7b 20 74 68 72 6f 77 20 6e 65 77 20 41 63 63 65 73 tion.($stderr).{.throw.new.Acces
10fd20 73 44 65 6e 69 65 64 45 78 63 65 70 74 69 6f 6e 28 24 73 74 64 65 72 72 29 3b 20 7d 0a 29 3b 0a sDeniedException($stderr);.}.);.
10fd40 0a 24 70 61 74 68 73 20 3d 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 74 65 73 74 43 6f 6d 6d .$paths.=.$this->shell->testComm
10fd60 61 6e 64 28 27 75 6e 69 71 27 29 20 3f 20 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 7c 20 75 and('uniq').?.$command->add('|.u
10fd80 6e 69 71 27 29 2d 3e 65 78 65 63 75 74 65 28 29 20 3a 20 61 72 72 61 79 5f 75 6e 69 71 75 65 28 niq')->execute().:.array_unique(
10fda0 24 63 6f 6d 6d 61 6e 64 2d 3e 65 78 65 63 75 74 65 28 29 29 3b 0a 24 69 74 65 72 61 74 6f 72 20 $command->execute());.$iterator.
10fdc0 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 50 61 74 68 73 49 74 65 72 61 74 6f 72 =.new.Iterator\FilePathsIterator
10fde0 28 24 70 61 74 68 73 2c 20 24 64 69 72 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 78 63 6c ($paths,.$dir);..if.($this->excl
10fe00 75 64 65 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c ude).{.$iterator.=.new.Iterator\
10fe20 45 78 63 6c 75 64 65 44 69 72 65 63 74 6f 72 79 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 ExcludeDirectoryFilterIterator($
10fe40 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 29 3b 0a 7d 0a 0a 69 66 iterator,.$this->exclude);.}..if
10fe60 20 28 21 24 75 73 65 47 72 65 70 20 26 26 20 28 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 20 .(!$useGrep.&&.($this->contains.
10fe80 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 29 20 7b 0a 24 69 74 65 72 61 ||.$this->notContains)).{.$itera
10fea0 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 63 6f 6e 74 65 6e 74 46 69 tor.=.new.Iterator\FilecontentFi
10fec0 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 63 lterIterator($iterator,.$this->c
10fee0 6f 6e 74 61 69 6e 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 3b 0a 7d 0a ontains,.$this->notContains);.}.
10ff00 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 .if.($this->filters).{.$iterator
10ff20 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 43 75 73 74 6f 6d 46 69 6c 74 65 72 49 74 65 72 .=.new.Iterator\CustomFilterIter
10ff40 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 3b ator($iterator,.$this->filters);
10ff60 0a 7d 0a 0a 69 66 20 28 21 24 75 73 65 53 6f 72 74 20 26 26 20 24 74 68 69 73 2d 3e 73 6f 72 74 .}..if.(!$useSort.&&.$this->sort
10ff80 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 20 3d 20 6e 65 77 20 49 74 65 ).{.$iteratorAggregate.=.new.Ite
10ffa0 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 rator\SortableIterator($iterator
10ffc0 2c 20 24 74 68 69 73 2d 3e 73 6f 72 74 29 3b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 ,.$this->sort);.$iterator.=.$ite
10ffe0 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 3b 0a 7d ratorAggregate->getIterator();.}
110000 0a 0a 72 65 74 75 72 6e 20 24 69 74 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 ..return.$iterator;.}.....protec
110020 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 42 65 55 73 65 64 28 29 0a 7b 0a 72 65 74 75 72 ted.function.canBeUsed().{.retur
110040 6e 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 74 65 73 74 43 6f 6d 6d 61 6e 64 28 27 66 69 6e n.$this->shell->testCommand('fin
110060 64 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e d');.}........protected.function
110080 20 62 75 69 6c 64 46 69 6e 64 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 .buildFindCommand(Command.$comma
1100a0 6e 64 2c 20 24 64 69 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 0a 2d 3e 69 6e nd,.$dir).{.return.$command.->in
1100c0 73 28 27 66 69 6e 64 27 29 0a 2d 3e 61 64 64 28 27 66 69 6e 64 20 27 29 0a 2d 3e 61 72 67 28 24 s('find').->add('find.').->arg($
1100e0 64 69 72 29 0a 2d 3e 61 64 64 28 27 2d 6e 6f 6c 65 61 66 27 29 3b 20 0a 20 7d 0a 0a 0a 0a 0a 0a dir).->add('-noleaf');...}......
110100 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 4e 61 6d 65 73 46 69 6c 74 .private.function.buildNamesFilt
110120 65 72 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 20 24 6e ering(Command.$command,.array.$n
110140 61 6d 65 73 2c 20 24 6e 6f 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 ames,.$not.=.false).{.if.(0.===.
110160 63 6f 75 6e 74 28 24 6e 61 6d 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d count($names)).{.return;.}..$com
110180 6d 61 6e 64 2d 3e 61 64 64 28 24 6e 6f 74 20 3f 20 27 2d 6e 6f 74 27 20 3a 20 6e 75 6c 6c 29 2d mand->add($not.?.'-not'.:.null)-
1101a0 3e 63 6d 64 28 27 28 27 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 20 61 73 20 24 >cmd('(');..foreach.($names.as.$
1101c0 69 20 3d 3e 20 24 6e 61 6d 65 29 20 7b 0a 24 65 78 70 72 20 3d 20 45 78 70 72 65 73 73 69 6f 6e i.=>.$name).{.$expr.=.Expression
1101e0 3a 3a 63 72 65 61 74 65 28 24 6e 61 6d 65 29 3b 0a 0a 0a 20 69 66 20 28 24 65 78 70 72 2d 3e 69 ::create($name);....if.($expr->i
110200 73 47 6c 6f 62 28 29 20 26 26 20 24 65 78 70 72 2d 3e 67 65 74 47 6c 6f 62 28 29 2d 3e 69 73 45 sGlob().&&.$expr->getGlob()->isE
110220 78 70 61 6e 64 61 62 6c 65 28 29 29 20 7b 0a 24 65 78 70 72 20 3d 20 45 78 70 72 65 73 73 69 6f xpandable()).{.$expr.=.Expressio
110240 6e 3a 3a 63 72 65 61 74 65 28 24 65 78 70 72 2d 3e 67 65 74 47 6c 6f 62 28 29 2d 3e 74 6f 52 65 n::create($expr->getGlob()->toRe
110260 67 65 78 28 66 61 6c 73 65 29 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 69 66 20 28 24 65 78 70 72 2d gex(false));.}........if.($expr-
110280 3e 69 73 52 65 67 65 78 28 29 29 20 7b 0a 24 72 65 67 65 78 20 3d 20 24 65 78 70 72 2d 3e 67 65 >isRegex()).{.$regex.=.$expr->ge
1102a0 74 52 65 67 65 78 28 29 3b 0a 24 72 65 67 65 78 2d 3e 70 72 65 70 65 6e 64 28 24 72 65 67 65 78 tRegex();.$regex->prepend($regex
1102c0 2d 3e 68 61 73 53 74 61 72 74 46 6c 61 67 28 29 20 3f 20 27 2f 27 20 3a 20 27 2f 5b 5e 2f 5d 2a ->hasStartFlag().?.'/'.:.'/[^/]*
1102e0 27 29 0a 2d 3e 73 65 74 53 74 61 72 74 46 6c 61 67 28 66 61 6c 73 65 29 0a 2d 3e 73 65 74 53 74 ').->setStartFlag(false).->setSt
110300 61 72 74 4a 6f 6b 65 72 28 74 72 75 65 29 0a 2d 3e 72 65 70 6c 61 63 65 4a 6f 6b 65 72 73 28 27 artJoker(true).->replaceJokers('
110320 5b 5e 2f 5d 27 29 3b 0a 69 66 20 28 21 24 72 65 67 65 78 2d 3e 68 61 73 45 6e 64 46 6c 61 67 28 [^/]');.if.(!$regex->hasEndFlag(
110340 29 20 7c 7c 20 24 72 65 67 65 78 2d 3e 68 61 73 45 6e 64 4a 6f 6b 65 72 28 29 29 20 7b 0a 24 72 ).||.$regex->hasEndJoker()).{.$r
110360 65 67 65 78 2d 3e 73 65 74 45 6e 64 4a 6f 6b 65 72 28 66 61 6c 73 65 29 2d 3e 61 70 70 65 6e 64 egex->setEndJoker(false)->append
110380 28 27 5b 5e 2f 5d 2a 27 29 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 0a 2d 3e 61 64 64 28 24 ('[^/]*');.}.}..$command.->add($
1103a0 69 20 3e 20 30 20 3f 20 27 2d 6f 72 27 20 3a 20 6e 75 6c 6c 29 0a 2d 3e 61 64 64 28 24 65 78 70 i.>.0.?.'-or'.:.null).->add($exp
1103c0 72 2d 3e 69 73 52 65 67 65 78 28 29 0a 3f 20 28 24 65 78 70 72 2d 3e 69 73 43 61 73 65 53 65 6e r->isRegex().?.($expr->isCaseSen
1103e0 73 69 74 69 76 65 28 29 20 3f 20 27 2d 72 65 67 65 78 27 20 3a 20 27 2d 69 72 65 67 65 78 27 29 sitive().?.'-regex'.:.'-iregex')
110400 0a 3a 20 28 24 65 78 70 72 2d 3e 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 20 3f 20 27 .:.($expr->isCaseSensitive().?.'
110420 2d 6e 61 6d 65 27 20 3a 20 27 2d 69 6e 61 6d 65 27 29 0a 29 0a 2d 3e 61 72 67 28 24 65 78 70 72 -name'.:.'-iname').).->arg($expr
110440 2d 3e 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 2d ->renderPattern());.}..$command-
110460 3e 63 6d 64 28 27 29 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 >cmd(')');.}........private.func
110480 74 69 6f 6e 20 62 75 69 6c 64 50 61 74 68 73 46 69 6c 74 65 72 69 6e 67 28 43 6f 6d 6d 61 6e 64 tion.buildPathsFiltering(Command
1104a0 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 64 69 72 2c 20 61 72 72 61 79 20 24 70 61 74 68 73 2c 20 24 .$command,.$dir,.array.$paths,.$
1104c0 6e 6f 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 not.=.false).{.if.(0.===.count($
1104e0 70 61 74 68 73 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 paths)).{.return;.}..$command->a
110500 64 64 28 24 6e 6f 74 20 3f 20 27 2d 6e 6f 74 27 20 3a 20 6e 75 6c 6c 29 2d 3e 63 6d 64 28 27 28 dd($not.?.'-not'.:.null)->cmd('(
110520 27 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 74 68 73 20 61 73 20 24 69 20 3d 3e 20 24 70 ');..foreach.($paths.as.$i.=>.$p
110540 61 74 68 29 20 7b 0a 24 65 78 70 72 20 3d 20 45 78 70 72 65 73 73 69 6f 6e 3a 3a 63 72 65 61 74 ath).{.$expr.=.Expression::creat
110560 65 28 24 70 61 74 68 29 3b 0a 0a 0a 20 69 66 20 28 24 65 78 70 72 2d 3e 69 73 47 6c 6f 62 28 29 e($path);....if.($expr->isGlob()
110580 20 26 26 20 24 65 78 70 72 2d 3e 67 65 74 47 6c 6f 62 28 29 2d 3e 69 73 45 78 70 61 6e 64 61 62 .&&.$expr->getGlob()->isExpandab
1105a0 6c 65 28 29 29 20 7b 0a 24 65 78 70 72 20 3d 20 45 78 70 72 65 73 73 69 6f 6e 3a 3a 63 72 65 61 le()).{.$expr.=.Expression::crea
1105c0 74 65 28 24 65 78 70 72 2d 3e 67 65 74 47 6c 6f 62 28 29 2d 3e 74 6f 52 65 67 65 78 28 66 61 6c te($expr->getGlob()->toRegex(fal
1105e0 73 65 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 65 78 70 72 2d 3e 69 73 52 65 67 65 78 28 29 29 se));.}....if.($expr->isRegex())
110600 20 7b 0a 24 72 65 67 65 78 20 3d 20 24 65 78 70 72 2d 3e 67 65 74 52 65 67 65 78 28 29 3b 0a 24 .{.$regex.=.$expr->getRegex();.$
110620 72 65 67 65 78 2d 3e 70 72 65 70 65 6e 64 28 24 72 65 67 65 78 2d 3e 68 61 73 53 74 61 72 74 46 regex->prepend($regex->hasStartF
110640 6c 61 67 28 29 20 3f 20 70 72 65 67 5f 71 75 6f 74 65 28 24 64 69 72 29 2e 44 49 52 45 43 54 4f lag().?.preg_quote($dir).DIRECTO
110660 52 59 5f 53 45 50 41 52 41 54 4f 52 20 3a 20 27 2e 2a 27 29 2d 3e 73 65 74 45 6e 64 4a 6f 6b 65 RY_SEPARATOR.:.'.*')->setEndJoke
110680 72 28 21 24 72 65 67 65 78 2d 3e 68 61 73 45 6e 64 46 6c 61 67 28 29 29 3b 0a 7d 20 65 6c 73 65 r(!$regex->hasEndFlag());.}.else
1106a0 20 7b 0a 24 65 78 70 72 2d 3e 70 72 65 70 65 6e 64 28 27 2a 27 29 2d 3e 61 70 70 65 6e 64 28 27 .{.$expr->prepend('*')->append('
1106c0 2a 27 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 0a 2d 3e 61 64 64 28 24 69 20 3e 20 30 20 3f 20 *');.}..$command.->add($i.>.0.?.
1106e0 27 2d 6f 72 27 20 3a 20 6e 75 6c 6c 29 0a 2d 3e 61 64 64 28 24 65 78 70 72 2d 3e 69 73 52 65 67 '-or'.:.null).->add($expr->isReg
110700 65 78 28 29 0a 3f 20 28 24 65 78 70 72 2d 3e 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 ex().?.($expr->isCaseSensitive()
110720 20 3f 20 27 2d 72 65 67 65 78 27 20 3a 20 27 2d 69 72 65 67 65 78 27 29 0a 3a 20 28 24 65 78 70 .?.'-regex'.:.'-iregex').:.($exp
110740 72 2d 3e 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 20 3f 20 27 2d 70 61 74 68 27 20 3a r->isCaseSensitive().?.'-path'.:
110760 20 27 2d 69 70 61 74 68 27 29 0a 29 0a 2d 3e 61 72 67 28 24 65 78 70 72 2d 3e 72 65 6e 64 65 72 .'-ipath').).->arg($expr->render
110780 50 61 74 74 65 72 6e 28 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 63 6d 64 28 27 29 27 Pattern());.}..$command->cmd(')'
1107a0 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 );.}......private.function.build
1107c0 53 69 7a 65 73 46 69 6c 74 65 72 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c SizesFiltering(Command.$command,
1107e0 20 61 72 72 61 79 20 24 73 69 7a 65 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 73 69 7a 65 73 .array.$sizes).{.foreach.($sizes
110800 20 61 73 20 24 69 20 3d 3e 20 24 73 69 7a 65 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 .as.$i.=>.$size).{.$command->add
110820 28 24 69 20 3e 20 30 20 3f 20 27 2d 61 6e 64 27 20 3a 20 6e 75 6c 6c 29 3b 0a 0a 73 77 69 74 63 ($i.>.0.?.'-and'.:.null);..switc
110840 68 20 28 24 73 69 7a 65 2d 3e 67 65 74 4f 70 65 72 61 74 6f 72 28 29 29 20 7b 0a 63 61 73 65 20 h.($size->getOperator()).{.case.
110860 27 3c 3d 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 73 69 7a 65 20 2d 27 2e 28 24 '<=':.$command->add('-size.-'.($
110880 73 69 7a 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 2b 20 31 29 2e 27 63 27 29 3b 0a 62 72 65 size->getTarget().+.1).'c');.bre
1108a0 61 6b 3b 0a 63 61 73 65 20 27 3e 3d 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 73 ak;.case.'>=':.$command->add('-s
1108c0 69 7a 65 20 2b 27 2e 28 24 73 69 7a 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 2d 20 31 29 2e ize.+'.($size->getTarget().-.1).
1108e0 27 63 27 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3e 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 'c');.break;.case.'>':.$command-
110900 3e 61 64 64 28 27 2d 73 69 7a 65 20 2b 27 2e 24 73 69 7a 65 2d 3e 67 65 74 54 61 72 67 65 74 28 >add('-size.+'.$size->getTarget(
110920 29 2e 27 63 27 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 21 3d 27 3a 0a 24 63 6f 6d 6d 61 ).'c');.break;.case.'!=':.$comma
110940 6e 64 2d 3e 61 64 64 28 27 2d 73 69 7a 65 20 2d 27 2e 24 73 69 7a 65 2d 3e 67 65 74 54 61 72 67 nd->add('-size.-'.$size->getTarg
110960 65 74 28 29 2e 27 63 27 29 3b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 73 69 7a 65 20 et().'c');.$command->add('-size.
110980 2b 27 2e 24 73 69 7a 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2e 27 63 27 29 3b 0a 62 72 65 61 +'.$size->getTarget().'c');.brea
1109a0 6b 3b 0a 63 61 73 65 20 27 3c 27 3a 0a 64 65 66 61 75 6c 74 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e k;.case.'<':.default:.$command->
1109c0 61 64 64 28 27 2d 73 69 7a 65 20 2d 27 2e 24 73 69 7a 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 add('-size.-'.$size->getTarget()
1109e0 2e 27 63 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 .'c');.}.}.}......private.functi
110a00 6f 6e 20 62 75 69 6c 64 44 61 74 65 73 46 69 6c 74 65 72 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 on.buildDatesFiltering(Command.$
110a20 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 20 24 64 61 74 65 73 29 0a 7b 0a 66 6f 72 65 61 63 68 command,.array.$dates).{.foreach
110a40 20 28 24 64 61 74 65 73 20 61 73 20 24 69 20 3d 3e 20 24 64 61 74 65 29 20 7b 0a 24 63 6f 6d 6d .($dates.as.$i.=>.$date).{.$comm
110a60 61 6e 64 2d 3e 61 64 64 28 24 69 20 3e 20 30 20 3f 20 27 2d 61 6e 64 27 20 3a 20 6e 75 6c 6c 29 and->add($i.>.0.?.'-and'.:.null)
110a80 3b 0a 0a 24 6d 69 6e 73 20 3d 20 28 69 6e 74 29 20 72 6f 75 6e 64 28 28 74 69 6d 65 28 29 20 2d ;..$mins.=.(int).round((time().-
110aa0 20 24 64 61 74 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 29 20 2f 20 36 30 29 3b 0a 0a 69 66 20 .$date->getTarget())./.60);..if.
110ac0 28 30 20 3e 20 24 6d 69 6e 73 29 20 7b 0a 0a 20 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 20 (0.>.$mins).{...$command->add('.
110ae0 2d 6d 6d 69 6e 20 2d 30 27 29 3b 0a 0a 20 72 65 74 75 72 6e 3b 0a 7d 0a 0a 73 77 69 74 63 68 20 -mmin.-0');...return;.}..switch.
110b00 28 24 64 61 74 65 2d 3e 67 65 74 4f 70 65 72 61 74 6f 72 28 29 29 20 7b 0a 63 61 73 65 20 27 3c ($date->getOperator()).{.case.'<
110b20 3d 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 6d 6d 69 6e 20 2b 27 2e 28 24 6d 69 =':.$command->add('-mmin.+'.($mi
110b40 6e 73 20 2d 20 31 29 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3e 3d 27 3a 0a 24 63 6f 6d ns.-.1));.break;.case.'>=':.$com
110b60 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 6d 6d 69 6e 20 2d 27 2e 28 24 6d 69 6e 73 20 2b 20 31 29 29 mand->add('-mmin.-'.($mins.+.1))
110b80 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3e 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 ;.break;.case.'>':.$command->add
110ba0 28 27 2d 6d 6d 69 6e 20 2d 27 2e 24 6d 69 6e 73 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 ('-mmin.-'.$mins);.break;.case.'
110bc0 21 3d 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 6d 6d 69 6e 20 2b 27 2e 24 6d 69 !=':.$command->add('-mmin.+'.$mi
110be0 6e 73 2e 27 20 2d 6f 72 20 2d 6d 6d 69 6e 20 2d 27 2e 24 6d 69 6e 73 29 3b 0a 62 72 65 61 6b 3b ns.'.-or.-mmin.-'.$mins);.break;
110c00 0a 63 61 73 65 20 27 3c 27 3a 0a 64 65 66 61 75 6c 74 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 .case.'<':.default:.$command->ad
110c20 64 28 27 2d 6d 6d 69 6e 20 2b 27 2e 24 6d 69 6e 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a d('-mmin.+'.$mins);.}.}.}.......
110c40 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 53 6f 72 74 69 6e 67 28 43 .private.function.buildSorting(C
110c60 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 73 6f 72 74 29 0a 7b 0a 24 74 68 69 73 2d ommand.$command,.$sort).{.$this-
110c80 3e 62 75 69 6c 64 46 6f 72 6d 61 74 53 6f 72 74 69 6e 67 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 73 >buildFormatSorting($command,.$s
110ca0 6f 72 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 ort);.}......abstract.protected.
110cc0 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 46 6f 72 6d 61 74 53 6f 72 74 69 6e 67 28 43 6f 6d 6d function.buildFormatSorting(Comm
110ce0 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 73 6f 72 74 29 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 and.$command,.$sort);.......abst
110d00 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 6f 6e ract.protected.function.buildCon
110d20 74 65 6e 74 46 69 6c 74 65 72 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 tentFiltering(Command.$command,.
110d40 61 72 72 61 79 20 24 63 6f 6e 74 61 69 6e 73 2c 20 24 6e 6f 74 20 3d 20 66 61 6c 73 65 29 3b 0a array.$contains,.$not.=.false);.
110d60 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 }.<?php...........namespace.Symf
110d80 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 3b 0a 0a 0a ony\Component\Finder\Adapter;...
110da0 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 0a 7b ....interface.AdapterInterface.{
110dc0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 6c 6c 6f 77 4c ......public.function.setFollowL
110de0 69 6e 6b 73 28 24 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 inks($followLinks);.......public
110e00 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4d 6f 64 65 28 24 6d 6f 64 65 29 3b 0a 0a 0a 0a 0a 0a 0a .function.setMode($mode);.......
110e20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 78 63 6c 75 64 65 28 61 72 72 61 79 public.function.setExclude(array
110e40 20 24 65 78 63 6c 75 64 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .$exclude);.......public.functio
110e60 6e 20 73 65 74 44 65 70 74 68 73 28 61 72 72 61 79 20 24 64 65 70 74 68 73 29 3b 0a 0a 0a 0a 0a n.setDepths(array.$depths);.....
110e80 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e 61 6d 65 73 28 61 72 72 61 79 ..public.function.setNames(array
110ea0 20 24 6e 61 6d 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 .$names);.......public.function.
110ec0 73 65 74 4e 6f 74 4e 61 6d 65 73 28 61 72 72 61 79 20 24 6e 6f 74 4e 61 6d 65 73 29 3b 0a 0a 0a setNotNames(array.$notNames);...
110ee0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6e 74 61 69 6e 73 28 ....public.function.setContains(
110f00 61 72 72 61 79 20 24 63 6f 6e 74 61 69 6e 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 array.$contains);.......public.f
110f20 75 6e 63 74 69 6f 6e 20 73 65 74 4e 6f 74 43 6f 6e 74 61 69 6e 73 28 61 72 72 61 79 20 24 6e 6f unction.setNotContains(array.$no
110f40 74 43 6f 6e 74 61 69 6e 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f tContains);.......public.functio
110f60 6e 20 73 65 74 53 69 7a 65 73 28 61 72 72 61 79 20 24 73 69 7a 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a n.setSizes(array.$sizes);.......
110f80 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 61 74 65 73 28 61 72 72 61 79 20 24 public.function.setDates(array.$
110fa0 64 61 74 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 dates);.......public.function.se
110fc0 74 46 69 6c 74 65 72 73 28 61 72 72 61 79 20 24 66 69 6c 74 65 72 73 29 3b 0a 0a 0a 0a 0a 0a 0a tFilters(array.$filters);.......
110fe0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 6f 72 74 28 24 73 6f 72 74 29 3b 0a public.function.setSort($sort);.
111000 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 61 74 68 28 61 72 ......public.function.setPath(ar
111020 72 61 79 20 24 70 61 74 68 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ray.$paths);.......public.functi
111040 6f 6e 20 73 65 74 4e 6f 74 50 61 74 68 28 61 72 72 61 79 20 24 6e 6f 74 50 61 74 68 73 29 3b 0a on.setNotPath(array.$notPaths);.
111060 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 67 6e 6f 72 65 55 6e 72 65 ......public.function.ignoreUnre
111080 61 64 61 62 6c 65 44 69 72 73 28 24 69 67 6e 6f 72 65 20 3d 20 74 72 75 65 29 3b 0a 0a 0a 0a 0a adableDirs($ignore.=.true);.....
1110a0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 ..public.function.searchInDirect
1110c0 6f 72 79 28 24 64 69 72 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ory($dir);.......public.function
1110e0 20 69 73 53 75 70 70 6f 72 74 65 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .isSupported();.......public.fun
111100 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a ction.getName();.}.<?php........
111120 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 ...namespace.Symfony\Component\F
111140 69 6e 64 65 72 5c 41 64 61 70 74 65 72 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 inder\Adapter;..@trigger_error('
111160 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 42 73 64 46 69 6e 64 41 64 61 The.'.__NAMESPACE__.'\BsdFindAda
111180 70 74 65 72 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 pter.class.is.deprecated.since.v
1111a0 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 ersion.2.8.and.will.be.removed.i
1111c0 6e 20 33 2e 30 2e 20 55 73 65 20 64 69 72 65 63 74 6c 79 20 74 68 65 20 46 69 6e 64 65 72 20 63 n.3.0..Use.directly.the.Finder.c
1111e0 6c 61 73 73 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 lass.instead.',.E_USER_DEPRECATE
111200 44 29 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 D);..use.Symfony\Component\Finde
111220 72 5c 53 68 65 6c 6c 5c 53 68 65 6c 6c 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f r\Shell\Shell;.use.Symfony\Compo
111240 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 53 68 65 6c 6c 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 nent\Finder\Shell\Command;.use.S
111260 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 ymfony\Component\Finder\Iterator
111280 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 \SortableIterator;.use.Symfony\C
1112a0 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 70 72 65 73 73 69 6f 6e 5c 45 78 70 72 65 omponent\Finder\Expression\Expre
1112c0 73 73 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 42 73 64 46 69 6e 64 41 64 61 70 ssion;.........class.BsdFindAdap
1112e0 74 65 72 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 46 69 6e 64 41 64 61 70 74 65 72 0a ter.extends.AbstractFindAdapter.
111300 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b {....public.function.getName().{
111320 0a 72 65 74 75 72 6e 20 27 62 73 64 5f 66 69 6e 64 27 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 .return.'bsd_find';.}.....protec
111340 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 42 65 55 73 65 64 28 29 0a 7b 0a 72 65 74 75 72 ted.function.canBeUsed().{.retur
111360 6e 20 69 6e 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 67 65 74 54 79 70 65 n.in_array($this->shell->getType
111380 28 29 2c 20 61 72 72 61 79 28 53 68 65 6c 6c 3a 3a 54 59 50 45 5f 42 53 44 2c 20 53 68 65 6c 6c (),.array(Shell::TYPE_BSD,.Shell
1113a0 3a 3a 54 59 50 45 5f 44 41 52 57 49 4e 29 29 20 26 26 20 70 61 72 65 6e 74 3a 3a 63 61 6e 42 65 ::TYPE_DARWIN)).&&.parent::canBe
1113c0 55 73 65 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e Used();.}.....protected.function
1113e0 20 62 75 69 6c 64 46 6f 72 6d 61 74 53 6f 72 74 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d .buildFormatSorting(Command.$com
111400 6d 61 6e 64 2c 20 24 73 6f 72 74 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 73 6f 72 74 29 20 7b 0a mand,.$sort).{.switch.($sort).{.
111420 63 61 73 65 20 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 4e case.SortableIterator::SORT_BY_N
111440 41 4d 45 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 69 6e 73 28 27 73 6f 72 74 27 29 2d 3e 61 64 64 28 AME:.$command->ins('sort')->add(
111460 27 7c 20 73 6f 72 74 27 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 63 61 73 65 20 53 6f 72 74 61 62 6c '|.sort');..return;.case.Sortabl
111480 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 54 59 50 45 3a 0a 24 66 6f 72 6d 61 74 eIterator::SORT_BY_TYPE:.$format
1114a0 20 3d 20 27 25 48 54 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 53 6f 72 74 61 62 6c 65 49 74 .=.'%HT';.break;.case.SortableIt
1114c0 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 3a 0a 24 erator::SORT_BY_ACCESSED_TIME:.$
1114e0 66 6f 72 6d 61 74 20 3d 20 27 25 61 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 53 6f 72 74 61 format.=.'%a';.break;.case.Sorta
111500 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d bleIterator::SORT_BY_CHANGED_TIM
111520 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 63 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 53 E:.$format.=.'%c';.break;.case.S
111540 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 4d 4f 44 49 46 49 45 ortableIterator::SORT_BY_MODIFIE
111560 44 5f 54 49 4d 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 6d 27 3b 0a 62 72 65 61 6b 3b 0a 64 D_TIME:.$format.=.'%m';.break;.d
111580 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 efault:.throw.new.\InvalidArgume
1115a0 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 6b 6e 6f 77 6e 20 73 6f 72 ntException(sprintf('Unknown.sor
1115c0 74 20 6f 70 74 69 6f 6e 73 3a 20 25 73 2e 27 2c 20 24 73 6f 72 74 29 29 3b 0a 7d 0a 0a 24 63 6f t.options:.%s.',.$sort));.}..$co
1115e0 6d 6d 61 6e 64 0a 2d 3e 61 64 64 28 27 2d 70 72 69 6e 74 30 20 7c 20 78 61 72 67 73 20 2d 30 20 mmand.->add('-print0.|.xargs.-0.
111600 73 74 61 74 20 2d 66 27 29 0a 2d 3e 61 72 67 28 24 66 6f 72 6d 61 74 2e 27 25 74 25 4e 27 29 0a stat.-f').->arg($format.'%t%N').
111620 2d 3e 61 64 64 28 27 7c 20 73 6f 72 74 20 7c 20 63 75 74 20 2d 66 20 32 27 29 3b 0a 7d 0a 0a 0a ->add('|.sort.|.cut.-f.2');.}...
111640 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 46 69 6e 64 43 6f ..protected.function.buildFindCo
111660 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 64 69 72 29 0a 7b 0a mmand(Command.$command,.$dir).{.
111680 70 61 72 65 6e 74 3a 3a 62 75 69 6c 64 46 69 6e 64 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e parent::buildFindCommand($comman
1116a0 64 2c 20 24 64 69 72 29 2d 3e 61 64 64 41 74 49 6e 64 65 78 28 27 2d 45 27 2c 20 31 29 3b 0a 0a d,.$dir)->addAtIndex('-E',.1);..
1116c0 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 return.$command;.}.....protected
1116e0 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 6f 6e 74 65 6e 74 46 69 6c 74 65 72 69 6e 67 28 .function.buildContentFiltering(
111700 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 20 24 63 6f 6e 74 61 69 6e Command.$command,.array.$contain
111720 73 2c 20 24 6e 6f 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e s,.$not.=.false).{.foreach.($con
111740 74 61 69 6e 73 20 61 73 20 24 63 6f 6e 74 61 69 6e 29 20 7b 0a 24 65 78 70 72 20 3d 20 45 78 70 tains.as.$contain).{.$expr.=.Exp
111760 72 65 73 73 69 6f 6e 3a 3a 63 72 65 61 74 65 28 24 63 6f 6e 74 61 69 6e 29 3b 0a 0a 0a 20 24 63 ression::create($contain);....$c
111780 6f 6d 6d 61 6e 64 0a 2d 3e 61 64 64 28 27 7c 20 67 72 65 70 20 2d 76 20 5c 27 5e 24 5c 27 27 29 ommand.->add('|.grep.-v.\'^$\'')
1117a0 0a 2d 3e 61 64 64 28 27 7c 20 78 61 72 67 73 20 2d 49 7b 7d 20 67 72 65 70 20 2d 49 27 29 0a 2d .->add('|.xargs.-I{}.grep.-I').-
1117c0 3e 61 64 64 28 24 65 78 70 72 2d 3e 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 20 3f 20 >add($expr->isCaseSensitive().?.
1117e0 6e 75 6c 6c 20 3a 20 27 2d 69 27 29 0a 2d 3e 61 64 64 28 24 6e 6f 74 20 3f 20 27 2d 4c 27 20 3a null.:.'-i').->add($not.?.'-L'.:
111800 20 27 2d 6c 27 29 0a 2d 3e 61 64 64 28 27 2d 45 65 27 29 2d 3e 61 72 67 28 24 65 78 70 72 2d 3e .'-l').->add('-Ee')->arg($expr->
111820 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 29 0a 2d 3e 61 64 64 28 27 7b 7d 27 29 0a 3b 0a 7d renderPattern()).->add('{}').;.}
111840 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 .}.}.<?php...........namespace.S
111860 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 3b ymfony\Component\Finder\Adapter;
111880 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 ..@trigger_error('The.'.__NAMESP
1118a0 41 43 45 5f 5f 2e 27 5c 47 6e 75 46 69 6e 64 41 64 61 70 74 65 72 20 63 6c 61 73 73 20 69 73 20 ACE__.'\GnuFindAdapter.class.is.
1118c0 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 deprecated.since.version.2.8.and
1118e0 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 64 69 72 .will.be.removed.in.3.0..Use.dir
111900 65 63 74 6c 79 20 74 68 65 20 46 69 6e 64 65 72 20 63 6c 61 73 73 20 69 6e 73 74 65 61 64 2e 27 ectly.the.Finder.class.instead.'
111920 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 75 73 65 20 53 79 6d 66 6f ,.E_USER_DEPRECATED);..use.Symfo
111940 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 53 68 65 6c 6c 5c 53 68 65 6c 6c 3b ny\Component\Finder\Shell\Shell;
111960 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 53 68 .use.Symfony\Component\Finder\Sh
111980 65 6c 6c 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 ell\Command;.use.Symfony\Compone
1119a0 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 nt\Finder\Iterator\SortableItera
1119c0 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 tor;.use.Symfony\Component\Finde
1119e0 72 5c 45 78 70 72 65 73 73 69 6f 6e 5c 45 78 70 72 65 73 73 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a r\Expression\Expression;........
111a00 0a 63 6c 61 73 73 20 47 6e 75 46 69 6e 64 41 64 61 70 74 65 72 20 65 78 74 65 6e 64 73 20 41 62 .class.GnuFindAdapter.extends.Ab
111a20 73 74 72 61 63 74 46 69 6e 64 41 64 61 70 74 65 72 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 stractFindAdapter.{....public.fu
111a40 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 67 6e 75 5f 66 nction.getName().{.return.'gnu_f
111a60 69 6e 64 27 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 62 ind';.}.....protected.function.b
111a80 75 69 6c 64 46 6f 72 6d 61 74 53 6f 72 74 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 uildFormatSorting(Command.$comma
111aa0 6e 64 2c 20 24 73 6f 72 74 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 73 6f 72 74 29 20 7b 0a 63 61 nd,.$sort).{.switch.($sort).{.ca
111ac0 73 65 20 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 4e 41 4d se.SortableIterator::SORT_BY_NAM
111ae0 45 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 69 6e 73 28 27 73 6f 72 74 27 29 2d 3e 61 64 64 28 27 7c E:.$command->ins('sort')->add('|
111b00 20 73 6f 72 74 27 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 63 61 73 65 20 53 6f 72 74 61 62 6c 65 49 .sort');..return;.case.SortableI
111b20 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 54 59 50 45 3a 0a 24 66 6f 72 6d 61 74 20 3d terator::SORT_BY_TYPE:.$format.=
111b40 20 27 25 79 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 53 6f 72 74 61 62 6c 65 49 74 65 72 61 .'%y';.break;.case.SortableItera
111b60 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 3a 0a 24 66 6f 72 tor::SORT_BY_ACCESSED_TIME:.$for
111b80 6d 61 74 20 3d 20 27 25 41 40 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 53 6f 72 74 61 62 6c mat.=.'%A@';.break;.case.Sortabl
111ba0 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d 45 3a eIterator::SORT_BY_CHANGED_TIME:
111bc0 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 43 40 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 53 6f .$format.=.'%C@';.break;.case.So
111be0 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 4d 4f 44 49 46 49 45 44 rtableIterator::SORT_BY_MODIFIED
111c00 5f 54 49 4d 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 54 40 27 3b 0a 62 72 65 61 6b 3b 0a 64 _TIME:.$format.=.'%T@';.break;.d
111c20 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 efault:.throw.new.\InvalidArgume
111c40 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 6b 6e 6f 77 6e 20 73 6f 72 ntException(sprintf('Unknown.sor
111c60 74 20 6f 70 74 69 6f 6e 73 3a 20 25 73 2e 27 2c 20 24 73 6f 72 74 29 29 3b 0a 7d 0a 0a 24 63 6f t.options:.%s.',.$sort));.}..$co
111c80 6d 6d 61 6e 64 0a 2d 3e 67 65 74 28 27 66 69 6e 64 27 29 0a 2d 3e 61 64 64 28 27 2d 70 72 69 6e mmand.->get('find').->add('-prin
111ca0 74 66 27 29 0a 2d 3e 61 72 67 28 24 66 6f 72 6d 61 74 2e 27 20 25 68 2f 25 66 5c 5c 6e 27 29 0a tf').->arg($format.'.%h/%f\\n').
111cc0 2d 3e 61 64 64 28 27 7c 20 73 6f 72 74 20 7c 20 63 75 74 27 29 0a 2d 3e 61 72 67 28 27 2d 64 20 ->add('|.sort.|.cut').->arg('-d.
111ce0 27 29 0a 2d 3e 61 72 67 28 27 2d 66 32 2d 27 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 ').->arg('-f2-').;.}.....protect
111d00 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 42 65 55 73 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e ed.function.canBeUsed().{.return
111d20 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 67 65 74 54 79 70 65 28 29 20 3d 3d 3d 20 53 68 65 .$this->shell->getType().===.She
111d40 6c 6c 3a 3a 54 59 50 45 5f 55 4e 49 58 20 26 26 20 70 61 72 65 6e 74 3a 3a 63 61 6e 42 65 55 73 ll::TYPE_UNIX.&&.parent::canBeUs
111d60 65 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 62 ed();.}.....protected.function.b
111d80 75 69 6c 64 46 69 6e 64 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 uildFindCommand(Command.$command
111da0 2c 20 24 64 69 72 29 0a 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 62 75 69 6c 64 46 69 ,.$dir).{.return.parent::buildFi
111dc0 6e 64 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 64 69 72 29 2d 3e 61 64 64 28 27 ndCommand($command,.$dir)->add('
111de0 2d 72 65 67 65 78 74 79 70 65 20 70 6f 73 69 78 2d 65 78 74 65 6e 64 65 64 27 29 3b 0a 7d 0a 0a -regextype.posix-extended');.}..
111e00 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 6f 6e 74 65 ...protected.function.buildConte
111e20 6e 74 46 69 6c 74 65 72 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 61 72 ntFiltering(Command.$command,.ar
111e40 72 61 79 20 24 63 6f 6e 74 61 69 6e 73 2c 20 24 6e 6f 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 66 ray.$contains,.$not.=.false).{.f
111e60 6f 72 65 61 63 68 20 28 24 63 6f 6e 74 61 69 6e 73 20 61 73 20 24 63 6f 6e 74 61 69 6e 29 20 7b oreach.($contains.as.$contain).{
111e80 0a 24 65 78 70 72 20 3d 20 45 78 70 72 65 73 73 69 6f 6e 3a 3a 63 72 65 61 74 65 28 24 63 6f 6e .$expr.=.Expression::create($con
111ea0 74 61 69 6e 29 3b 0a 0a 0a 20 24 63 6f 6d 6d 61 6e 64 0a 2d 3e 61 64 64 28 27 7c 20 78 61 72 67 tain);....$command.->add('|.xarg
111ec0 73 20 2d 49 7b 7d 20 2d 72 20 67 72 65 70 20 2d 49 27 29 0a 2d 3e 61 64 64 28 24 65 78 70 72 2d s.-I{}.-r.grep.-I').->add($expr-
111ee0 3e 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 20 3f 20 6e 75 6c 6c 20 3a 20 27 2d 69 27 >isCaseSensitive().?.null.:.'-i'
111f00 29 0a 2d 3e 61 64 64 28 24 6e 6f 74 20 3f 20 27 2d 4c 27 20 3a 20 27 2d 6c 27 29 0a 2d 3e 61 64 ).->add($not.?.'-L'.:.'-l').->ad
111f20 64 28 27 2d 45 65 27 29 2d 3e 61 72 67 28 24 65 78 70 72 2d 3e 72 65 6e 64 65 72 50 61 74 74 65 d('-Ee')->arg($expr->renderPatte
111f40 72 6e 28 29 29 0a 2d 3e 61 64 64 28 27 7b 7d 27 29 0a 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a rn()).->add('{}').;.}.}.}.<?php.
111f60 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 ..........namespace.Symfony\Comp
111f80 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 3b 0a 0a 40 74 72 69 67 67 65 72 5f onent\Finder\Adapter;..@trigger_
111fa0 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 50 68 70 error('The.'.__NAMESPACE__.'\Php
111fc0 41 64 61 70 74 65 72 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 Adapter.class.is.deprecated.sinc
111fe0 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 e.version.2.8.and.will.be.remove
112000 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 64 69 72 65 63 74 6c 79 20 74 68 65 20 46 69 6e 64 65 d.in.3.0..Use.directly.the.Finde
112020 72 20 63 6c 61 73 73 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 r.class.instead.',.E_USER_DEPREC
112040 41 54 45 44 29 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 ATED);..use.Symfony\Component\Fi
112060 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 68 70 nder\Iterator;.........class.Php
112080 41 64 61 70 74 65 72 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 41 64 61 70 74 65 72 0a Adapter.extends.AbstractAdapter.
1120a0 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 49 6e 44 69 72 {....public.function.searchInDir
1120c0 65 63 74 6f 72 79 28 24 64 69 72 29 0a 7b 0a 24 66 6c 61 67 73 20 3d 20 5c 52 65 63 75 72 73 69 ectory($dir).{.$flags.=.\Recursi
1120e0 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f 54 53 3b 0a veDirectoryIterator::SKIP_DOTS;.
112100 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 29 20 7b 0a 24 66 6c 61 67 .if.($this->followLinks).{.$flag
112120 73 20 7c 3d 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 s.|=.\RecursiveDirectoryIterator
112140 3a 3a 46 4f 4c 4c 4f 57 5f 53 59 4d 4c 49 4e 4b 53 3b 0a 7d 0a 0a 24 69 74 65 72 61 74 6f 72 20 ::FOLLOW_SYMLINKS;.}..$iterator.
112160 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 =.new.Iterator\RecursiveDirector
112180 79 49 74 65 72 61 74 6f 72 28 24 64 69 72 2c 20 24 66 6c 61 67 73 2c 20 24 74 68 69 73 2d 3e 69 yIterator($dir,.$flags,.$this->i
1121a0 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 gnoreUnreadableDirs);..if.($this
1121c0 2d 3e 65 78 63 6c 75 64 65 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 ->exclude).{.$iterator.=.new.Ite
1121e0 72 61 74 6f 72 5c 45 78 63 6c 75 64 65 44 69 72 65 63 74 6f 72 79 46 69 6c 74 65 72 49 74 65 72 rator\ExcludeDirectoryFilterIter
112200 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 29 3b ator($iterator,.$this->exclude);
112220 0a 7d 0a 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 49 74 .}..$iterator.=.new.\RecursiveIt
112240 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 5c 52 65 63 75 72 eratorIterator($iterator,.\Recur
112260 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 3a 3a 53 45 4c 46 5f 46 49 52 53 54 siveIteratorIterator::SELF_FIRST
112280 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3e 20 30 20 7c 7c 20 24 );..if.($this->minDepth.>.0.||.$
1122a0 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 3c 20 50 48 50 5f 49 4e 54 5f 4d 41 58 29 20 7b 0a this->maxDepth.<.PHP_INT_MAX).{.
1122c0 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 44 65 70 74 68 52 61 $iterator.=.new.Iterator\DepthRa
1122e0 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 ngeFilterIterator($iterator,.$th
112300 69 73 2d 3e 6d 69 6e 44 65 70 74 68 2c 20 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 29 3b 0a is->minDepth,.$this->maxDepth);.
112320 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 }..if.($this->mode).{.$iterator.
112340 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 =.new.Iterator\FileTypeFilterIte
112360 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d rator($iterator,.$this->mode);.}
112380 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6e 61 6d 65 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 ..if.($this->names.||.$this->not
1123a0 4e 61 6d 65 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f Names).{.$iterator.=.new.Iterato
1123c0 72 5c 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 r\FilenameFilterIterator($iterat
1123e0 6f 72 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 or,.$this->names,.$this->notName
112400 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 20 7c 7c 20 24 74 s);.}..if.($this->contains.||.$t
112420 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 his->notContains).{.$iterator.=.
112440 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 63 6f 6e 74 65 6e 74 46 69 6c 74 65 72 49 74 new.Iterator\FilecontentFilterIt
112460 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e erator($iterator,.$this->contain
112480 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 s,.$this->notContains);.}..if.($
1124a0 74 68 69 73 2d 3e 73 69 7a 65 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 this->sizes).{.$iterator.=.new.I
1124c0 74 65 72 61 74 6f 72 5c 53 69 7a 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 terator\SizeRangeFilterIterator(
1124e0 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 73 69 7a 65 73 29 3b 0a 7d 0a 0a 69 66 20 $iterator,.$this->sizes);.}..if.
112500 28 24 74 68 69 73 2d 3e 64 61 74 65 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 ($this->dates).{.$iterator.=.new
112520 20 49 74 65 72 61 74 6f 72 5c 44 61 74 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f .Iterator\DateRangeFilterIterato
112540 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 64 61 74 65 73 29 3b 0a 7d 0a 0a 69 r($iterator,.$this->dates);.}..i
112560 66 20 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d f.($this->filters).{.$iterator.=
112580 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 43 75 73 74 6f 6d 46 69 6c 74 65 72 49 74 65 72 61 74 .new.Iterator\CustomFilterIterat
1125a0 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 3b 0a 7d or($iterator,.$this->filters);.}
1125c0 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 61 74 68 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 ..if.($this->paths.||.$this->not
1125e0 50 61 74 68 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f Paths).{.$iterator.=.new.Iterato
112600 72 5c 50 61 74 68 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 r\PathFilterIterator($iterator,.
112620 24 74 68 69 73 2d 3e 70 61 74 68 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 29 3b 0a $this->paths,.$this->notPaths);.
112640 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 41 }..if.($this->sort).{.$iteratorA
112660 67 67 72 65 67 61 74 65 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 ggregate.=.new.Iterator\Sortable
112680 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 73 6f 72 74 29 Iterator($iterator,.$this->sort)
1126a0 3b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 ;.$iterator.=.$iteratorAggregate
1126c0 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 74 65 72 ->getIterator();.}..return.$iter
1126e0 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e ator;.}.....public.function.getN
112700 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 70 68 70 27 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 ame().{.return.'php';.}.....prot
112720 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 42 65 55 73 65 64 28 29 0a 7b 0a 72 65 74 ected.function.canBeUsed().{.ret
112740 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 urn.true;.}.}.<?php...........na
112760 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 mespace.Symfony\Component\Finder
112780 5c 43 6f 6d 70 61 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 61 72 61 \Comparator;.......class.Compara
1127a0 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 61 72 67 65 74 3b 0a 70 72 69 76 61 74 65 20 24 tor.{.private.$target;.private.$
1127c0 6f 70 65 72 61 74 6f 72 20 3d 20 27 3d 3d 27 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 operator.=.'==';.......public.fu
1127e0 6e 63 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 nction.getTarget().{.return.$thi
112800 73 2d 3e 74 61 72 67 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 s->target;.}.......public.functi
112820 6f 6e 20 73 65 74 54 61 72 67 65 74 28 24 74 61 72 67 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 on.setTarget($target).{.$this->t
112840 61 72 67 65 74 20 3d 20 24 74 61 72 67 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 arget.=.$target;.}.......public.
112860 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 65 72 61 74 6f 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 function.getOperator().{.return.
112880 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 $this->operator;.}.........publi
1128a0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 65 72 61 74 6f 72 28 24 6f 70 65 72 61 74 6f 72 c.function.setOperator($operator
1128c0 29 0a 7b 0a 69 66 20 28 21 24 6f 70 65 72 61 74 6f 72 29 20 7b 0a 24 6f 70 65 72 61 74 6f 72 20 ).{.if.(!$operator).{.$operator.
1128e0 3d 20 27 3d 3d 27 3b 0a 7d 0a 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 6f 70 65 72 61 74 =.'==';.}..if.(!in_array($operat
112900 6f 72 2c 20 61 72 72 61 79 28 27 3e 27 2c 20 27 3c 27 2c 20 27 3e 3d 27 2c 20 27 3c 3d 27 2c 20 or,.array('>',.'<',.'>=',.'<=',.
112920 27 3d 3d 27 2c 20 27 21 3d 27 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c '==',.'!='))).{.throw.new.\Inval
112940 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 49 6e 76 idArgumentException(sprintf('Inv
112960 61 6c 69 64 20 6f 70 65 72 61 74 6f 72 20 22 25 73 22 2e 27 2c 20 24 6f 70 65 72 61 74 6f 72 29 alid.operator."%s".',.$operator)
112980 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 20 3d 20 24 6f 70 65 72 61 74 6f );.}..$this->operator.=.$operato
1129a0 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 65 73 r;.}.........public.function.tes
1129c0 74 28 24 74 65 73 74 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 t($test).{.switch.($this->operat
1129e0 6f 72 29 20 7b 0a 63 61 73 65 20 27 3e 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3e 20 24 or).{.case.'>':.return.$test.>.$
112a00 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 20 27 3e 3d 27 3a 0a 72 65 74 75 72 6e 20 this->target;.case.'>=':.return.
112a20 24 74 65 73 74 20 3e 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 20 27 3c 27 $test.>=.$this->target;.case.'<'
112a40 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3c 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a :.return.$test.<.$this->target;.
112a60 63 61 73 65 20 27 3c 3d 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3c 3d 20 24 74 68 69 73 case.'<=':.return.$test.<=.$this
112a80 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 20 27 21 3d 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 ->target;.case.'!=':.return.$tes
112aa0 74 20 21 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 t.!=.$this->target;.}..return.$t
112ac0 65 73 74 20 3d 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a est.==.$this->target;.}.}.<?php.
112ae0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 ..........namespace.Symfony\Comp
112b00 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 43 6f 6d 70 61 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 onent\Finder\Comparator;.......c
112b20 6c 61 73 73 20 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 43 6f 6d 70 lass.DateComparator.extends.Comp
112b40 61 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 arator.{........public.function.
112b60 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 65 73 74 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d __construct($test).{.if.(!preg_m
112b80 61 74 63 68 28 27 23 5e 5c 73 2a 28 3d 3d 7c 21 3d 7c 5b 3c 3e 5d 3d 3f 7c 61 66 74 65 72 7c 73 atch('#^\s*(==|!=|[<>]=?|after|s
112ba0 69 6e 63 65 7c 62 65 66 6f 72 65 7c 75 6e 74 69 6c 29 3f 5c 73 2a 28 2e 2b 3f 29 5c 73 2a 24 23 ince|before|until)?\s*(.+?)\s*$#
112bc0 69 27 2c 20 24 74 65 73 74 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 i',.$test,.$matches)).{.throw.ne
112be0 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 w.\InvalidArgumentException(spri
112c00 6e 74 66 28 27 44 6f 6e 5c 27 74 20 75 6e 64 65 72 73 74 61 6e 64 20 22 25 73 22 20 61 73 20 61 ntf('Don\'t.understand."%s".as.a
112c20 20 64 61 74 65 20 74 65 73 74 2e 27 2c 20 24 74 65 73 74 29 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a .date.test.',.$test));.}..try.{.
112c40 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 24 6d 61 74 63 68 65 73 5b 32 $date.=.new.\DateTime($matches[2
112c60 5d 29 3b 0a 24 74 61 72 67 65 74 20 3d 20 24 64 61 74 65 2d 3e 66 6f 72 6d 61 74 28 27 55 27 29 ]);.$target.=.$date->format('U')
112c80 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f ;.}.catch.(\Exception.$e).{.thro
112ca0 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 w.new.\InvalidArgumentException(
112cc0 73 70 72 69 6e 74 66 28 27 22 25 73 22 20 69 73 20 6e 6f 74 20 61 20 76 61 6c 69 64 20 64 61 74 sprintf('"%s".is.not.a.valid.dat
112ce0 65 2e 27 2c 20 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 3b 0a 7d 0a 0a 24 6f 70 65 72 61 74 6f 72 e.',.$matches[2]));.}..$operator
112d00 20 3d 20 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 .=.isset($matches[1]).?.$matches
112d20 5b 31 5d 20 3a 20 27 3d 3d 27 3b 0a 69 66 20 28 27 73 69 6e 63 65 27 20 3d 3d 3d 20 24 6f 70 65 [1].:.'==';.if.('since'.===.$ope
112d40 72 61 74 6f 72 20 7c 7c 20 27 61 66 74 65 72 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 29 20 rator.||.'after'.===.$operator).
112d60 7b 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 27 3e 27 3b 0a 7d 0a 0a 69 66 20 28 27 75 6e 74 69 6c {.$operator.=.'>';.}..if.('until
112d80 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 20 7c 7c 20 27 62 65 66 6f 72 65 27 20 3d 3d 3d 20 '.===.$operator.||.'before'.===.
112da0 24 6f 70 65 72 61 74 6f 72 29 20 7b 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 27 3c 27 3b 0a 7d 0a $operator).{.$operator.=.'<';.}.
112dc0 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 65 72 61 74 6f 72 28 24 6f 70 65 72 61 74 6f 72 29 3b 0a .$this->setOperator($operator);.
112de0 24 74 68 69 73 2d 3e 73 65 74 54 61 72 67 65 74 28 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 3c $this->setTarget($target);.}.}.<
112e00 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 ?php...........namespace.Symfony
112e20 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 43 6f 6d 70 61 72 61 74 6f 72 3b 0a 0a 0a \Component\Finder\Comparator;...
112e40 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 75 6d 62 65 72 ....................class.Number
112e60 43 6f 6d 70 61 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 43 6f 6d 70 61 72 61 74 6f 72 0a 7b 0a Comparator.extends.Comparator.{.
112e80 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 .......public.function.__constru
112ea0 63 74 28 24 74 65 73 74 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 5c ct($test).{.if.(!preg_match('#^\
112ec0 73 2a 28 3d 3d 7c 21 3d 7c 5b 3c 3e 5d 3d 3f 29 3f 5c 73 2a 28 5b 30 2d 39 5c 2e 5d 2b 29 5c 73 s*(==|!=|[<>]=?)?\s*([0-9\.]+)\s
112ee0 2a 28 5b 6b 6d 67 5d 69 3f 29 3f 5c 73 2a 24 23 69 27 2c 20 24 74 65 73 74 2c 20 24 6d 61 74 63 *([kmg]i?)?\s*$#i',.$test,.$matc
112f00 68 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 hes)).{.throw.new.\InvalidArgume
112f20 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 44 6f 6e 5c 27 74 20 75 6e 64 65 ntException(sprintf('Don\'t.unde
112f40 72 73 74 61 6e 64 20 22 25 73 22 20 61 73 20 61 20 6e 75 6d 62 65 72 20 74 65 73 74 2e 27 2c 20 rstand."%s".as.a.number.test.',.
112f60 24 74 65 73 74 29 29 3b 0a 7d 0a 0a 24 74 61 72 67 65 74 20 3d 20 24 6d 61 74 63 68 65 73 5b 32 $test));.}..$target.=.$matches[2
112f80 5d 3b 0a 69 66 20 28 21 69 73 5f 6e 75 6d 65 72 69 63 28 24 74 61 72 67 65 74 29 29 20 7b 0a 74 ];.if.(!is_numeric($target)).{.t
112fa0 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 hrow.new.\InvalidArgumentExcepti
112fc0 6f 6e 28 73 70 72 69 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 6e 75 6d 62 65 72 20 22 25 73 22 2e on(sprintf('Invalid.number."%s".
112fe0 27 2c 20 24 74 61 72 67 65 74 29 29 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 ',.$target));.}.if.(isset($match
113000 65 73 5b 33 5d 29 29 20 7b 0a 0a 20 73 77 69 74 63 68 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 es[3])).{...switch.(strtolower($
113020 6d 61 74 63 68 65 73 5b 33 5d 29 29 20 7b 0a 63 61 73 65 20 27 6b 27 3a 0a 24 74 61 72 67 65 74 matches[3])).{.case.'k':.$target
113040 20 2a 3d 20 31 30 30 30 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 6b 69 27 3a 0a 24 74 61 72 .*=.1000;.break;.case.'ki':.$tar
113060 67 65 74 20 2a 3d 20 31 30 32 34 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 6d 27 3a 0a 24 74 get.*=.1024;.break;.case.'m':.$t
113080 61 72 67 65 74 20 2a 3d 20 31 30 30 30 30 30 30 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 6d arget.*=.1000000;.break;.case.'m
1130a0 69 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 32 34 20 2a 20 31 30 32 34 3b 0a 62 72 65 61 i':.$target.*=.1024.*.1024;.brea
1130c0 6b 3b 0a 63 61 73 65 20 27 67 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 30 30 30 30 30 30 k;.case.'g':.$target.*=.10000000
1130e0 30 30 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 67 69 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 00;.break;.case.'gi':.$target.*=
113100 20 31 30 32 34 20 2a 20 31 30 32 34 20 2a 20 31 30 32 34 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a .1024.*.1024.*.1024;.break;.}.}.
113120 0a 24 74 68 69 73 2d 3e 73 65 74 54 61 72 67 65 74 28 24 74 61 72 67 65 74 29 3b 0a 24 74 68 69 .$this->setTarget($target);.$thi
113140 73 2d 3e 73 65 74 4f 70 65 72 61 74 6f 72 28 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 31 5d s->setOperator(isset($matches[1]
113160 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 3a 20 27 3d 3d 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 ).?.$matches[1].:.'==');.}.}.<?p
113180 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 hp...........namespace.Symfony\C
1131a0 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 omponent\Finder\Exception;.....c
1131c0 6c 61 73 73 20 41 63 63 65 73 73 44 65 6e 69 65 64 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e lass.AccessDeniedException.exten
1131e0 64 73 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d ds.\UnexpectedValueException.{.}
113200 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f .<?php...........namespace.Symfo
113220 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a ny\Component\Finder\Exception;..
113240 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 @trigger_error('The.'.__NAMESPAC
113260 45 5f 5f 2e 27 5c 41 64 61 70 74 65 72 46 61 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 20 63 6c E__.'\AdapterFailureException.cl
113280 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 ass.is.deprecated.since.version.
1132a0 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2.8.and.will.be.removed.in.3.0.'
1132c0 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 75 73 65 20 53 79 6d 66 6f ,.E_USER_DEPRECATED);..use.Symfo
1132e0 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 5c 41 64 61 70 ny\Component\Finder\Adapter\Adap
113300 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 64 61 70 terInterface;.........class.Adap
113320 74 65 72 46 61 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e terFailureException.extends.\Run
113340 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 45 78 63 65 70 74 69 timeException.implements.Excepti
113360 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 61 64 61 70 74 65 onInterface.{....private.$adapte
113380 72 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 r;.......public.function.__const
1133a0 72 75 63 74 28 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 61 64 61 70 74 65 72 2c 20 ruct(AdapterInterface.$adapter,.
1133c0 24 6d 65 73 73 61 67 65 20 3d 20 6e 75 6c 6c 2c 20 5c 45 78 63 65 70 74 69 6f 6e 20 24 70 72 65 $message.=.null,.\Exception.$pre
1133e0 76 69 6f 75 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 20 3d vious.=.null).{.$this->adapter.=
113400 20 24 61 64 61 70 74 65 72 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 .$adapter;.parent::__construct($
113420 6d 65 73 73 61 67 65 20 3f 3a 20 27 53 65 61 72 63 68 20 66 61 69 6c 65 64 20 77 69 74 68 20 22 message.?:.'Search.failed.with."
113440 27 2e 24 61 64 61 70 74 65 72 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 22 20 61 64 61 70 74 65 72 '.$adapter->getName().'".adapter
113460 2e 27 2c 20 24 70 72 65 76 69 6f 75 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .',.$previous);.}.....public.fun
113480 63 74 69 6f 6e 20 67 65 74 41 64 61 70 74 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 ction.getAdapter().{.return.$thi
1134a0 73 2d 3e 61 64 61 70 74 65 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a s->adapter;.}.}.<?php...........
1134c0 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 namespace.Symfony\Component\Find
1134e0 65 72 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 45 78 63 65 er\Exception;.....interface.Exce
113500 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ptionInterface.{....public.funct
113520 69 6f 6e 20 67 65 74 41 64 61 70 74 65 72 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a ion.getAdapter();.}.<?php.......
113540 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c ....namespace.Symfony\Component\
113560 46 69 6e 64 65 72 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f Finder\Exception;..@trigger_erro
113580 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 4f 70 65 72 61 74 69 r('The.'.__NAMESPACE__.'\Operati
1135a0 6f 6e 4e 6f 74 50 65 72 6d 69 74 65 64 45 78 63 65 70 74 69 6f 6e 20 63 6c 61 73 73 20 69 73 20 onNotPermitedException.class.is.
1135c0 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 deprecated.since.version.2.8.and
1135e0 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 .will.be.removed.in.3.0.',.E_USE
113600 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4f 70 65 72 61 R_DEPRECATED);.......class.Opera
113620 74 69 6f 6e 4e 6f 74 50 65 72 6d 69 74 65 64 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 tionNotPermitedException.extends
113640 20 41 64 61 70 74 65 72 46 61 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d 0a 3c 3f 70 .AdapterFailureException.{.}.<?p
113660 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 hp...........namespace.Symfony\C
113680 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 40 74 72 69 omponent\Finder\Exception;..@tri
1136a0 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e gger_error('The.'.__NAMESPACE__.
1136c0 27 5c 53 68 65 6c 6c 43 6f 6d 6d 61 6e 64 46 61 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 20 63 '\ShellCommandFailureException.c
1136e0 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e lass.is.deprecated.since.version
113700 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e .2.8.and.will.be.removed.in.3.0.
113720 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 75 73 65 20 53 79 6d 66 ',.E_USER_DEPRECATED);..use.Symf
113740 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 5c 41 64 61 ony\Component\Finder\Adapter\Ada
113760 70 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f pterInterface;.use.Symfony\Compo
113780 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 53 68 65 6c 6c 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a nent\Finder\Shell\Command;......
1137a0 0a 63 6c 61 73 73 20 53 68 65 6c 6c 43 6f 6d 6d 61 6e 64 46 61 69 6c 75 72 65 45 78 63 65 70 74 .class.ShellCommandFailureExcept
1137c0 69 6f 6e 20 65 78 74 65 6e 64 73 20 41 64 61 70 74 65 72 46 61 69 6c 75 72 65 45 78 63 65 70 74 ion.extends.AdapterFailureExcept
1137e0 69 6f 6e 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a ion.{....private.$command;......
113800 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 41 64 61 .public.function.__construct(Ada
113820 70 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 61 64 61 70 74 65 72 2c 20 43 6f 6d 6d 61 6e 64 20 pterInterface.$adapter,.Command.
113840 24 63 6f 6d 6d 61 6e 64 2c 20 5c 45 78 63 65 70 74 69 6f 6e 20 24 70 72 65 76 69 6f 75 73 20 3d $command,.\Exception.$previous.=
113860 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d 61 .null).{.$this->command.=.$comma
113880 6e 64 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 61 64 61 70 74 65 72 nd;.parent::__construct($adapter
1138a0 2c 20 27 53 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 20 66 61 69 6c 65 64 3a 20 22 27 2e 24 63 6f 6d ,.'Shell.command.failed:."'.$com
1138c0 6d 61 6e 64 2d 3e 6a 6f 69 6e 28 29 2e 27 22 2e 27 2c 20 24 70 72 65 76 69 6f 75 73 29 3b 0a 7d mand->join().'".',.$previous);.}
1138e0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 28 .....public.function.getCommand(
113900 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 7d 0a 3c ).{.return.$this->command;.}.}.<
113920 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 ?php...........namespace.Symfony
113940 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 70 72 65 73 73 69 6f 6e 3b 0a 0a 40 \Component\Finder\Expression;..@
113960 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 trigger_error('The.'.__NAMESPACE
113980 5f 5f 2e 27 5c 45 78 70 72 65 73 73 69 6f 6e 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 __.'\Expression.class.is.depreca
1139a0 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 ted.since.version.2.8.and.will.b
1139c0 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 e.removed.in.3.0.',.E_USER_DEPRE
1139e0 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 78 70 72 65 73 73 69 6f 6e 20 69 6d 70 CATED);.....class.Expression.imp
113a00 6c 65 6d 65 6e 74 73 20 56 61 6c 75 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 63 6f 6e 73 74 20 54 lements.ValueInterface.{.const.T
113a20 59 50 45 5f 52 45 47 45 58 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 47 4c 4f 42 20 3d YPE_REGEX.=.1;.const.TYPE_GLOB.=
113a40 20 32 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 61 6c 75 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 .2;.....private.$value;.......pu
113a60 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 24 65 78 70 blic.static.function.create($exp
113a80 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 65 6c 66 28 24 65 78 70 72 29 3b 0a 7d 0a 0a r).{.return.new.self($expr);.}..
113aa0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 ...public.function.__construct($
113ac0 65 78 70 72 29 0a 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 75 65 20 3d 20 52 65 67 expr).{.try.{.$this->value.=.Reg
113ae0 65 78 3a 3a 63 72 65 61 74 65 28 24 65 78 70 72 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 49 6e 76 ex::create($expr);.}.catch.(\Inv
113b00 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 alidArgumentException.$e).{.$thi
113b20 73 2d 3e 76 61 6c 75 65 20 3d 20 6e 65 77 20 47 6c 6f 62 28 24 65 78 70 72 29 3b 0a 7d 0a 7d 0a s->value.=.new.Glob($expr);.}.}.
113b40 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 ....public.function.__toString()
113b60 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a 0a .{.return.$this->render();.}....
113b80 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 28 29 0a 7b 0a 72 65 74 75 .public.function.render().{.retu
113ba0 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 72 65 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a 0a rn.$this->value->render();.}....
113bc0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 .public.function.renderPattern()
113be0 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 72 65 6e 64 65 72 50 61 .{.return.$this->value->renderPa
113c00 74 74 65 72 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 ttern();.}.....public.function.i
113c20 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d sCaseSensitive().{.return.$this-
113c40 3e 76 61 6c 75 65 2d 3e 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 3b 0a 7d 0a 0a 0a 0a >value->isCaseSensitive();.}....
113c60 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 .public.function.getType().{.ret
113c80 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 67 65 74 54 79 70 65 28 29 3b 0a 7d 0a 0a urn.$this->value->getType();.}..
113ca0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 65 70 65 6e 64 28 24 65 78 70 72 ...public.function.prepend($expr
113cc0 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 70 72 65 70 65 6e 64 28 24 65 78 70 72 29 ).{.$this->value->prepend($expr)
113ce0 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ;..return.$this;.}.....public.fu
113d00 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 28 24 65 78 70 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 61 nction.append($expr).{.$this->va
113d20 6c 75 65 2d 3e 61 70 70 65 6e 64 28 24 65 78 70 72 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 lue->append($expr);..return.$thi
113d40 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 65 67 65 78 s;.}.....public.function.isRegex
113d60 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 52 45 47 45 58 20 3d 3d 3d ().{.return.self::TYPE_REGEX.===
113d80 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 67 65 74 54 79 70 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a .$this->value->getType();.}.....
113da0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 47 6c 6f 62 28 29 0a 7b 0a 72 65 74 75 72 public.function.isGlob().{.retur
113dc0 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 47 4c 4f 42 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 76 61 6c n.self::TYPE_GLOB.===.$this->val
113de0 75 65 2d 3e 67 65 74 54 79 70 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ue->getType();.}.......public.fu
113e00 6e 63 74 69 6f 6e 20 67 65 74 47 6c 6f 62 28 29 0a 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 54 59 50 nction.getGlob().{.if.(self::TYP
113e20 45 5f 47 4c 4f 42 20 21 3d 3d 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 67 65 74 54 79 70 65 E_GLOB.!==.$this->value->getType
113e40 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 ()).{.throw.new.\LogicException(
113e60 27 52 65 67 65 78 20 63 61 6e 5c 27 74 20 62 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 74 6f 20 'Regex.can\'t.be.transformed.to.
113e80 67 6c 6f 62 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 3b glob.');.}..return.$this->value;
113ea0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 67 65 78 28 .}.....public.function.getRegex(
113ec0 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 52 45 47 45 58 20 3d 3d 3d 20 ).{.return.self::TYPE_REGEX.===.
113ee0 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 67 65 74 54 79 70 65 28 29 20 3f 20 24 74 68 69 73 2d $this->value->getType().?.$this-
113f00 3e 76 61 6c 75 65 20 3a 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 74 6f 52 65 67 65 78 28 29 >value.:.$this->value->toRegex()
113f20 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 ;.}.}.<?php...........namespace.
113f40 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 70 72 65 73 73 Symfony\Component\Finder\Express
113f60 69 6f 6e 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 ion;..@trigger_error('The.'.__NA
113f80 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 47 6c 6f 62 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 MESPACE__.'\Glob.class.is.deprec
113fa0 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 ated.since.version.2.8.and.will.
113fc0 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 be.removed.in.3.0.',.E_USER_DEPR
113fe0 45 43 41 54 45 44 29 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c ECATED);..use.Symfony\Component\
114000 46 69 6e 64 65 72 5c 47 6c 6f 62 20 61 73 20 46 69 6e 64 65 72 47 6c 6f 62 3b 0a 0a 0a 0a 0a 63 Finder\Glob.as.FinderGlob;.....c
114020 6c 61 73 73 20 47 6c 6f 62 20 69 6d 70 6c 65 6d 65 6e 74 73 20 56 61 6c 75 65 49 6e 74 65 72 66 lass.Glob.implements.ValueInterf
114040 61 63 65 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 61 74 74 65 72 6e 3b 0a 0a 0a 0a 0a 70 ace.{....private.$pattern;.....p
114060 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 74 74 ublic.function.__construct($patt
114080 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 20 3d 20 24 70 61 74 74 65 72 6e ern).{.$this->pattern.=.$pattern
1140a0 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 28 29 ;.}.....public.function.render()
1140c0 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 3b 0a 7d 0a 0a 0a 0a 0a .{.return.$this->pattern;.}.....
1140e0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 0a public.function.renderPattern().
114100 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 {.return.$this->pattern;.}.....p
114120 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 ublic.function.getType().{.retur
114140 6e 20 45 78 70 72 65 73 73 69 6f 6e 3a 3a 54 59 50 45 5f 47 4c 4f 42 3b 0a 7d 0a 0a 0a 0a 0a 70 n.Expression::TYPE_GLOB;.}.....p
114160 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 ublic.function.isCaseSensitive()
114180 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .{.return.true;.}.....public.fun
1141a0 63 74 69 6f 6e 20 70 72 65 70 65 6e 64 28 24 65 78 70 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 ction.prepend($expr).{.$this->pa
1141c0 74 74 65 72 6e 20 3d 20 24 65 78 70 72 2e 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 3b 0a 0a 72 ttern.=.$expr.$this->pattern;..r
1141e0 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 eturn.$this;.}.....public.functi
114200 6f 6e 20 61 70 70 65 6e 64 28 24 65 78 70 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 on.append($expr).{.$this->patter
114220 6e 20 2e 3d 20 24 65 78 70 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a n..=.$expr;..return.$this;.}....
114240 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 45 78 70 61 6e 64 61 62 6c 65 28 ...public.function.isExpandable(
114260 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 74 68 69 ).{.return.false.!==.strpos($thi
114280 73 2d 3e 70 61 74 74 65 72 6e 2c 20 27 7b 27 29 0a 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 s->pattern,.'{').&&.false.!==.st
1142a0 72 70 6f 73 28 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 2c 20 27 7d 27 29 3b 0a 7d 0a 0a 0a 0a rpos($this->pattern,.'}');.}....
1142c0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 6f 52 65 67 65 78 28 24 73 74 72 ....public.function.toRegex($str
1142e0 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 20 3d 20 74 72 75 65 2c 20 24 73 74 72 69 63 74 57 69 6c ictLeadingDot.=.true,.$strictWil
114300 64 63 61 72 64 53 6c 61 73 68 20 3d 20 74 72 75 65 29 0a 7b 0a 24 72 65 67 65 78 20 3d 20 46 69 dcardSlash.=.true).{.$regex.=.Fi
114320 6e 64 65 72 47 6c 6f 62 3a 3a 74 6f 52 65 67 65 78 28 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e nderGlob::toRegex($this->pattern
114340 2c 20 24 73 74 72 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 2c 20 24 73 74 72 69 63 74 57 69 6c 64 ,.$strictLeadingDot,.$strictWild
114360 63 61 72 64 53 6c 61 73 68 2c 20 27 27 29 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 65 67 65 cardSlash,.'');..return.new.Rege
114380 78 28 24 72 65 67 65 78 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e x($regex);.}.}.<?php...........n
1143a0 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 amespace.Symfony\Component\Finde
1143c0 72 5c 45 78 70 72 65 73 73 69 6f 6e 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 r\Expression;..@trigger_error('T
1143e0 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 52 65 67 65 78 20 63 6c 61 73 73 he.'.__NAMESPACE__.'\Regex.class
114400 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 .is.deprecated.since.version.2.8
114420 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 .and.will.be.removed.in.3.0.',.E
114440 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 67 _USER_DEPRECATED);.....class.Reg
114460 65 78 20 69 6d 70 6c 65 6d 65 6e 74 73 20 56 61 6c 75 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 63 ex.implements.ValueInterface.{.c
114480 6f 6e 73 74 20 53 54 41 52 54 5f 46 4c 41 47 20 3d 20 27 5e 27 3b 0a 63 6f 6e 73 74 20 45 4e 44 onst.START_FLAG.=.'^';.const.END
1144a0 5f 46 4c 41 47 20 3d 20 27 24 27 3b 0a 63 6f 6e 73 74 20 42 4f 55 4e 44 41 52 59 20 3d 20 27 7e _FLAG.=.'$';.const.BOUNDARY.=.'~
1144c0 27 3b 0a 63 6f 6e 73 74 20 4a 4f 4b 45 52 20 3d 20 27 2e 2a 27 3b 0a 63 6f 6e 73 74 20 45 53 43 ';.const.JOKER.=.'.*';.const.ESC
1144e0 41 50 49 4e 47 20 3d 20 27 5c 5c 27 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 61 74 74 65 APING.=.'\\';.....private.$patte
114500 72 6e 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 3b 0a 0a 0a 0a 0a 70 72 rn;.....private.$options;.....pr
114520 69 76 61 74 65 20 24 73 74 61 72 74 46 6c 61 67 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 65 ivate.$startFlag;.....private.$e
114540 6e 64 46 6c 61 67 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 74 61 72 74 4a 6f 6b 65 72 3b ndFlag;.....private.$startJoker;
114560 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 65 6e 64 4a 6f 6b 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a .....private.$endJoker;.........
114580 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 24 65 public.static.function.create($e
1145a0 78 70 72 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 2e 7b 33 2c 7d 3f xpr).{.if.(preg_match('/^(.{3,}?
1145c0 29 28 5b 69 6d 73 78 75 41 44 55 5d 2a 29 24 2f 27 2c 20 24 65 78 70 72 2c 20 24 6d 29 29 20 7b )([imsxuADU]*)$/',.$expr,.$m)).{
1145e0 0a 24 73 74 61 72 74 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 30 2c 20 31 29 3b 0a 24 .$start.=.substr($m[1],.0,.1);.$
114600 65 6e 64 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 2d 31 29 3b 0a 0a 69 66 20 28 0a 28 end.=.substr($m[1],.-1);..if.(.(
114620 24 73 74 61 72 74 20 3d 3d 3d 20 24 65 6e 64 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 $start.===.$end.&&.!preg_match('
114640 2f 5b 2a 3f 5b 3a 61 6c 6e 75 6d 3a 5d 20 5c 5c 5c 5c 5d 2f 27 2c 20 24 73 74 61 72 74 29 29 0a /[*?[:alnum:].\\\\]/',.$start)).
114660 7c 7c 20 28 24 73 74 61 72 74 20 3d 3d 3d 20 27 7b 27 20 26 26 20 24 65 6e 64 20 3d 3d 3d 20 27 ||.($start.===.'{'.&&.$end.===.'
114680 7d 27 29 0a 7c 7c 20 28 24 73 74 61 72 74 20 3d 3d 3d 20 27 28 27 20 26 26 20 24 65 6e 64 20 3d }').||.($start.===.'('.&&.$end.=
1146a0 3d 3d 20 27 29 27 29 0a 29 20 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 65 6c 66 28 73 75 62 73 ==.')').).{.return.new.self(subs
1146c0 74 72 28 24 6d 5b 31 5d 2c 20 31 2c 20 2d 31 29 2c 20 24 6d 5b 32 5d 2c 20 24 65 6e 64 29 3b 0a tr($m[1],.1,.-1),.$m[2],.$end);.
1146e0 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 }.}..throw.new.\InvalidArgumentE
114700 78 63 65 70 74 69 6f 6e 28 27 47 69 76 65 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 6e 6f xception('Given.expression.is.no
114720 74 20 61 20 72 65 67 65 78 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e t.a.regex.');.}.......public.fun
114740 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 74 74 65 72 6e 2c 20 24 6f 70 74 ction.__construct($pattern,.$opt
114760 69 6f 6e 73 20 3d 20 27 27 2c 20 24 64 65 6c 69 6d 69 74 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a ions.=.'',.$delimiter.=.null).{.
114780 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 6c 69 6d 69 74 65 72 29 20 7b 0a 0a 20 24 70 61 if.(null.!==.$delimiter).{...$pa
1147a0 74 74 65 72 6e 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 27 2e 24 64 65 6c 69 6d 69 ttern.=.str_replace('\\'.$delimi
1147c0 74 65 72 2c 20 24 64 65 6c 69 6d 69 74 65 72 2c 20 24 70 61 74 74 65 72 6e 29 3b 0a 7d 0a 0a 24 ter,.$delimiter,.$pattern);.}..$
1147e0 74 68 69 73 2d 3e 70 61 72 73 65 50 61 74 74 65 72 6e 28 24 70 61 74 74 65 72 6e 29 3b 0a 24 74 this->parsePattern($pattern);.$t
114800 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 24 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 70 his->options.=.$options;.}.....p
114820 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 ublic.function.__toString().{.re
114840 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c turn.$this->render();.}.....publ
114860 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 ic.function.render().{.return.se
114880 6c 66 3a 3a 42 4f 55 4e 44 41 52 59 0a 2e 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 50 61 74 74 65 lf::BOUNDARY..$this->renderPatte
1148a0 72 6e 28 29 0a 2e 73 65 6c 66 3a 3a 42 4f 55 4e 44 41 52 59 0a 2e 24 74 68 69 73 2d 3e 6f 70 74 rn()..self::BOUNDARY..$this->opt
1148c0 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 ions;.}.....public.function.rend
1148e0 65 72 50 61 74 74 65 72 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 24 74 68 69 73 2d 3e 73 74 61 erPattern().{.return.($this->sta
114900 72 74 46 6c 61 67 20 3f 20 73 65 6c 66 3a 3a 53 54 41 52 54 5f 46 4c 41 47 20 3a 20 27 27 29 0a rtFlag.?.self::START_FLAG.:.'').
114920 2e 28 24 74 68 69 73 2d 3e 73 74 61 72 74 4a 6f 6b 65 72 20 3f 20 73 65 6c 66 3a 3a 4a 4f 4b 45 .($this->startJoker.?.self::JOKE
114940 52 20 3a 20 27 27 29 0a 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 73 65 6c 66 3a 3a 42 4f 55 4e 44 R.:.'')..str_replace(self::BOUND
114960 41 52 59 2c 20 27 5c 5c 27 2e 73 65 6c 66 3a 3a 42 4f 55 4e 44 41 52 59 2c 20 24 74 68 69 73 2d ARY,.'\\'.self::BOUNDARY,.$this-
114980 3e 70 61 74 74 65 72 6e 29 0a 2e 28 24 74 68 69 73 2d 3e 65 6e 64 4a 6f 6b 65 72 20 3f 20 73 65 >pattern)..($this->endJoker.?.se
1149a0 6c 66 3a 3a 4a 4f 4b 45 52 20 3a 20 27 27 29 0a 2e 28 24 74 68 69 73 2d 3e 65 6e 64 46 6c 61 67 lf::JOKER.:.'')..($this->endFlag
1149c0 20 3f 20 73 65 6c 66 3a 3a 45 4e 44 5f 46 4c 41 47 20 3a 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 .?.self::END_FLAG.:.'');.}.....p
1149e0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 ublic.function.isCaseSensitive()
114a00 0a 7b 0a 72 65 74 75 72 6e 20 21 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 27 69 27 29 .{.return.!$this->hasOption('i')
114a20 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 ;.}.....public.function.getType(
114a40 29 0a 7b 0a 72 65 74 75 72 6e 20 45 78 70 72 65 73 73 69 6f 6e 3a 3a 54 59 50 45 5f 52 45 47 45 ).{.return.Expression::TYPE_REGE
114a60 58 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 65 70 65 6e 64 X;.}.....public.function.prepend
114a80 28 24 65 78 70 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 20 3d 20 24 65 78 70 72 ($expr).{.$this->pattern.=.$expr
114aa0 2e 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a .$this->pattern;..return.$this;.
114ac0 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 28 24 65 78 }.....public.function.append($ex
114ae0 70 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 20 2e 3d 20 24 65 78 70 72 3b 0a 0a pr).{.$this->pattern..=.$expr;..
114b00 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e return.$this;.}.......public.fun
114b20 63 74 69 6f 6e 20 68 61 73 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 ction.hasOption($option).{.retur
114b40 6e 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e n.false.!==.strpos($this->option
114b60 73 2c 20 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 s,.$option);.}.......public.func
114b80 74 69 6f 6e 20 61 64 64 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 24 tion.addOption($option).{.if.(!$
114ba0 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 29 20 7b 0a 24 74 68 69 this->hasOption($option)).{.$thi
114bc0 73 2d 3e 6f 70 74 69 6f 6e 73 20 2e 3d 20 24 6f 70 74 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e s->options..=.$option;.}..return
114be0 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 .$this;.}.......public.function.
114c00 72 65 6d 6f 76 65 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f removeOption($option).{.$this->o
114c20 70 74 69 6f 6e 73 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 24 6f 70 74 69 6f 6e 2c 20 27 27 ptions.=.str_replace($option,.''
114c40 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ,.$this->options);..return.$this
114c60 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 61 ;.}.......public.function.setSta
114c80 72 74 46 6c 61 67 28 24 73 74 61 72 74 46 6c 61 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 rtFlag($startFlag).{.$this->star
114ca0 74 46 6c 61 67 20 3d 20 24 73 74 61 72 74 46 6c 61 67 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 tFlag.=.$startFlag;..return.$thi
114cc0 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 61 72 s;.}.....public.function.hasStar
114ce0 74 46 6c 61 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 72 74 46 6c 61 tFlag().{.return.$this->startFla
114d00 67 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 6e g;.}.......public.function.setEn
114d20 64 46 6c 61 67 28 24 65 6e 64 46 6c 61 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e 64 46 6c 61 67 dFlag($endFlag).{.$this->endFlag
114d40 20 3d 20 28 62 6f 6f 6c 29 20 24 65 6e 64 46 6c 61 67 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 .=.(bool).$endFlag;..return.$thi
114d60 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 45 6e 64 46 s;.}.....public.function.hasEndF
114d80 6c 61 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6e 64 46 6c 61 67 3b 0a 7d lag().{.return.$this->endFlag;.}
114da0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 61 72 74 4a .......public.function.setStartJ
114dc0 6f 6b 65 72 28 24 73 74 61 72 74 4a 6f 6b 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 oker($startJoker).{.$this->start
114de0 4a 6f 6b 65 72 20 3d 20 24 73 74 61 72 74 4a 6f 6b 65 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 Joker.=.$startJoker;..return.$th
114e00 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 61 is;.}.....public.function.hasSta
114e20 72 74 4a 6f 6b 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 72 74 4a rtJoker().{.return.$this->startJ
114e40 6f 6b 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 oker;.}.......public.function.se
114e60 74 45 6e 64 4a 6f 6b 65 72 28 24 65 6e 64 4a 6f 6b 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e tEndJoker($endJoker).{.$this->en
114e80 64 4a 6f 6b 65 72 20 3d 20 28 62 6f 6f 6c 29 20 24 65 6e 64 4a 6f 6b 65 72 3b 0a 0a 72 65 74 75 dJoker.=.(bool).$endJoker;..retu
114ea0 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 rn.$this;.}.....public.function.
114ec0 68 61 73 45 6e 64 4a 6f 6b 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6e hasEndJoker().{.return.$this->en
114ee0 64 4a 6f 6b 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 dJoker;.}.......public.function.
114f00 72 65 70 6c 61 63 65 4a 6f 6b 65 72 73 28 24 72 65 70 6c 61 63 65 6d 65 6e 74 29 0a 7b 0a 24 72 replaceJokers($replacement).{.$r
114f20 65 70 6c 61 63 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 73 75 62 6a 65 63 74 29 20 75 73 65 eplace.=.function.($subject).use
114f40 20 28 24 72 65 70 6c 61 63 65 6d 65 6e 74 29 20 7b 0a 24 73 75 62 6a 65 63 74 20 3d 20 24 73 75 .($replacement).{.$subject.=.$su
114f60 62 6a 65 63 74 5b 30 5d 3b 0a 24 72 65 70 6c 61 63 65 20 3d 20 30 20 3d 3d 3d 20 73 75 62 73 74 bject[0];.$replace.=.0.===.subst
114f80 72 5f 63 6f 75 6e 74 28 24 73 75 62 6a 65 63 74 2c 20 27 5c 5c 27 29 20 25 20 32 3b 0a 0a 72 65 r_count($subject,.'\\').%.2;..re
114fa0 74 75 72 6e 20 24 72 65 70 6c 61 63 65 20 3f 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 2e 27 2c turn.$replace.?.str_replace('.',
114fc0 20 24 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 24 73 75 62 6a 65 63 74 29 20 3a 20 24 73 75 62 6a .$replacement,.$subject).:.$subj
114fe0 65 63 74 3b 0a 7d 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 20 3d 20 70 72 65 67 5f 72 ect;.};..$this->pattern.=.preg_r
115000 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 7e 5b 5c 5c 5c 5c 5d 2a 5c 5c 2e 7e 27 2c 20 eplace_callback('~[\\\\]*\\.~',.
115020 24 72 65 70 6c 61 63 65 2c 20 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 29 3b 0a 0a 72 65 74 75 $replace,.$this->pattern);..retu
115040 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e rn.$this;.}.....private.function
115060 20 70 61 72 73 65 50 61 74 74 65 72 6e 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 69 66 20 28 24 74 .parsePattern($pattern).{.if.($t
115080 68 69 73 2d 3e 73 74 61 72 74 46 6c 61 67 20 3d 20 73 65 6c 66 3a 3a 53 54 41 52 54 5f 46 4c 41 his->startFlag.=.self::START_FLA
1150a0 47 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 6e 2c 20 30 2c 20 31 29 29 20 7b 0a G.===.substr($pattern,.0,.1)).{.
1150c0 24 70 61 74 74 65 72 6e 20 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 6e 2c 20 31 29 3b 0a $pattern.=.substr($pattern,.1);.
1150e0 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 74 61 72 74 4a 6f 6b 65 72 20 3d 20 73 65 6c 66 3a }..if.($this->startJoker.=.self:
115100 3a 4a 4f 4b 45 52 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 6e 2c 20 30 2c 20 32 :JOKER.===.substr($pattern,.0,.2
115120 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 6e 2c )).{.$pattern.=.substr($pattern,
115140 20 32 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 64 46 6c 61 67 20 3d 20 28 73 65 .2);.}..if.($this->endFlag.=.(se
115160 6c 66 3a 3a 45 4e 44 5f 46 4c 41 47 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 6e lf::END_FLAG.===.substr($pattern
115180 2c 20 2d 31 29 20 26 26 20 73 65 6c 66 3a 3a 45 53 43 41 50 49 4e 47 20 21 3d 3d 20 73 75 62 73 ,.-1).&&.self::ESCAPING.!==.subs
1151a0 74 72 28 24 70 61 74 74 65 72 6e 2c 20 2d 32 2c 20 2d 31 29 29 29 20 7b 0a 24 70 61 74 74 65 72 tr($pattern,.-2,.-1))).{.$patter
1151c0 6e 20 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 6e 2c 20 30 2c 20 2d 31 29 3b 0a 7d 0a 0a n.=.substr($pattern,.0,.-1);.}..
1151e0 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 64 4a 6f 6b 65 72 20 3d 20 28 73 65 6c 66 3a 3a 4a 4f 4b if.($this->endJoker.=.(self::JOK
115200 45 52 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 6e 2c 20 2d 32 29 20 26 26 20 73 ER.===.substr($pattern,.-2).&&.s
115220 65 6c 66 3a 3a 45 53 43 41 50 49 4e 47 20 21 3d 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 elf::ESCAPING.!==.substr($patter
115240 6e 2c 20 2d 33 2c 20 2d 32 29 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 73 75 62 73 74 72 n,.-3,.-2))).{.$pattern.=.substr
115260 28 24 70 61 74 74 65 72 6e 2c 20 30 2c 20 2d 32 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 74 ($pattern,.0,.-2);.}..$this->pat
115280 74 65 72 6e 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a tern.=.$pattern;.}.}.<?php......
1152a0 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 .....namespace.Symfony\Component
1152c0 5c 46 69 6e 64 65 72 5c 45 78 70 72 65 73 73 69 6f 6e 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 \Finder\Expression;..@trigger_er
1152e0 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 56 61 6c 75 65 ror('The.'.__NAMESPACE__.'\Value
115300 49 6e 74 65 72 66 61 63 65 20 69 6e 74 65 72 66 61 63 65 20 69 73 20 64 65 70 72 65 63 61 74 65 Interface.interface.is.deprecate
115320 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 d.since.version.2.8.and.will.be.
115340 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 removed.in.3.0.',.E_USER_DEPRECA
115360 54 45 44 29 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 56 61 6c 75 65 49 6e 74 65 72 66 61 TED);.....interface.ValueInterfa
115380 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 ce.{......public.function.render
1153a0 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 ();.......public.function.render
1153c0 50 61 74 74 65 72 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e Pattern();.......public.function
1153e0 20 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 .isCaseSensitive();.......public
115400 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 .function.getType();.......publi
115420 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 65 70 65 6e 64 28 24 65 78 70 72 29 3b 0a 0a 0a 0a 0a 0a c.function.prepend($expr);......
115440 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 28 24 65 78 70 72 29 3b 0a .public.function.append($expr);.
115460 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 }.<?php...........namespace.Symf
115480 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f ony\Component\Finder;..use.Symfo
1154a0 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 5c 41 64 61 70 ny\Component\Finder\Adapter\Adap
1154c0 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e terInterface;.use.Symfony\Compon
1154e0 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 5c 47 6e 75 46 69 6e 64 41 64 61 70 74 65 ent\Finder\Adapter\GnuFindAdapte
115500 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c r;.use.Symfony\Component\Finder\
115520 41 64 61 70 74 65 72 5c 42 73 64 46 69 6e 64 41 64 61 70 74 65 72 3b 0a 75 73 65 20 53 79 6d 66 Adapter\BsdFindAdapter;.use.Symf
115540 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 5c 50 68 70 ony\Component\Finder\Adapter\Php
115560 41 64 61 70 74 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 Adapter;.use.Symfony\Component\F
115580 69 6e 64 65 72 5c 43 6f 6d 70 61 72 61 74 6f 72 5c 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 3b inder\Comparator\DateComparator;
1155a0 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 43 6f .use.Symfony\Component\Finder\Co
1155c0 6d 70 61 72 61 74 6f 72 5c 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 3b 0a 75 73 65 20 53 mparator\NumberComparator;.use.S
1155e0 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 63 65 70 74 69 6f ymfony\Component\Finder\Exceptio
115600 6e 5c 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e n\ExceptionInterface;.use.Symfon
115620 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 43 75 73 74 y\Component\Finder\Iterator\Cust
115640 6f 6d 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f omFilterIterator;.use.Symfony\Co
115660 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 44 61 74 65 52 61 6e 67 mponent\Finder\Iterator\DateRang
115680 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d eFilterIterator;.use.Symfony\Com
1156a0 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 44 65 70 74 68 52 61 6e 67 ponent\Finder\Iterator\DepthRang
1156c0 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d eFilterIterator;.use.Symfony\Com
1156e0 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 45 78 63 6c 75 64 65 44 69 ponent\Finder\Iterator\ExcludeDi
115700 72 65 63 74 6f 72 79 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f rectoryFilterIterator;.use.Symfo
115720 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 46 69 6c ny\Component\Finder\Iterator\Fil
115740 65 63 6f 6e 74 65 6e 74 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 econtentFilterIterator;.use.Symf
115760 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 46 69 ony\Component\Finder\Iterator\Fi
115780 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e lenameFilterIterator;.use.Symfon
1157a0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 53 69 7a 65 y\Component\Finder\Iterator\Size
1157c0 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 RangeFilterIterator;.use.Symfony
1157e0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 \Component\Finder\Iterator\Sorta
115800 62 6c 65 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 bleIterator;...............class
115820 20 46 69 6e 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f 72 41 67 67 72 .Finder.implements.\IteratorAggr
115840 65 67 61 74 65 2c 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a 63 6f 6e 73 74 20 49 47 4e 4f 52 45 egate,.\Countable.{.const.IGNORE
115860 5f 56 43 53 5f 46 49 4c 45 53 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 49 47 4e 4f 52 45 5f 44 4f 54 _VCS_FILES.=.1;.const.IGNORE_DOT
115880 5f 46 49 4c 45 53 20 3d 20 32 3b 0a 0a 70 72 69 76 61 74 65 20 24 6d 6f 64 65 20 3d 20 30 3b 0a _FILES.=.2;..private.$mode.=.0;.
1158a0 70 72 69 76 61 74 65 20 24 6e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 private.$names.=.array();.privat
1158c0 65 20 24 6e 6f 74 4e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 e.$notNames.=.array();.private.$
1158e0 65 78 63 6c 75 64 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 74 exclude.=.array();.private.$filt
115900 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 64 65 70 74 68 73 20 3d ers.=.array();.private.$depths.=
115920 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 73 69 7a 65 73 20 3d 20 61 72 72 61 79 .array();.private.$sizes.=.array
115940 28 29 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 20 3d 20 66 61 6c 73 65 ();.private.$followLinks.=.false
115960 3b 0a 70 72 69 76 61 74 65 20 24 73 6f 72 74 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 ;.private.$sort.=.false;.private
115980 20 24 69 67 6e 6f 72 65 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 24 64 69 72 73 20 3d 20 61 72 .$ignore.=.0;.private.$dirs.=.ar
1159a0 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 64 61 74 65 73 20 3d 20 61 72 72 61 79 28 29 3b ray();.private.$dates.=.array();
1159c0 0a 70 72 69 76 61 74 65 20 24 69 74 65 72 61 74 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 .private.$iterators.=.array();.p
1159e0 72 69 76 61 74 65 20 24 63 6f 6e 74 61 69 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 rivate.$contains.=.array();.priv
115a00 61 74 65 20 24 6e 6f 74 43 6f 6e 74 61 69 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 ate.$notContains.=.array();.priv
115a20 61 74 65 20 24 61 64 61 70 74 65 72 73 20 3d 20 6e 75 6c 6c 3b 0a 70 72 69 76 61 74 65 20 24 70 ate.$adapters.=.null;.private.$p
115a40 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 6e 6f 74 50 61 74 68 aths.=.array();.private.$notPath
115a60 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 69 67 6e 6f 72 65 55 6e 72 65 s.=.array();.private.$ignoreUnre
115a80 61 64 61 62 6c 65 44 69 72 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 adableDirs.=.false;..private.sta
115aa0 74 69 63 20 24 76 63 73 50 61 74 74 65 72 6e 73 20 3d 20 61 72 72 61 79 28 27 2e 73 76 6e 27 2c tic.$vcsPatterns.=.array('.svn',
115ac0 20 27 5f 73 76 6e 27 2c 20 27 43 56 53 27 2c 20 27 5f 64 61 72 63 73 27 2c 20 27 2e 61 72 63 68 .'_svn',.'CVS',.'_darcs',.'.arch
115ae0 2d 70 61 72 61 6d 73 27 2c 20 27 2e 6d 6f 6e 6f 74 6f 6e 65 27 2c 20 27 2e 62 7a 72 27 2c 20 27 -params',.'.monotone',.'.bzr',.'
115b00 2e 67 69 74 27 2c 20 27 2e 68 67 27 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 .git',.'.hg');.....public.functi
115b20 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 on.__construct().{.$this->ignore
115b40 20 3d 20 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 20 7c 20 73 74 .=.static::IGNORE_VCS_FILES.|.st
115b60 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a atic::IGNORE_DOT_FILES;.}.......
115b80 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 29 0a public.static.function.create().
115ba0 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 74 61 74 69 63 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a {.return.new.static();.}........
115bc0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 64 61 70 74 65 72 28 41 ....public.function.addAdapter(A
115be0 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 61 64 61 70 74 65 72 2c 20 24 70 72 69 6f 72 dapterInterface.$adapter,.$prior
115c00 69 74 79 20 3d 20 30 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 ity.=.0).{.@trigger_error('The.'
115c20 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 61 74 .__METHOD__.'.method.is.deprecat
115c40 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 ed.since.version.2.8.and.will.be
115c60 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 .removed.in.3.0.',.E_USER_DEPREC
115c80 41 54 45 44 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 44 65 66 61 75 6c 74 41 64 61 70 74 65 ATED);..$this->initDefaultAdapte
115ca0 72 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 5b 24 61 64 61 70 74 65 72 2d rs();..$this->adapters[$adapter-
115cc0 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 61 72 72 61 79 28 0a 27 61 64 61 70 74 65 72 27 20 3d >getName()].=.array(.'adapter'.=
115ce0 3e 20 24 61 64 61 70 74 65 72 2c 0a 27 70 72 69 6f 72 69 74 79 27 20 3d 3e 20 24 70 72 69 6f 72 >.$adapter,.'priority'.=>.$prior
115d00 69 74 79 2c 0a 27 73 65 6c 65 63 74 65 64 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 29 3b 0a 0a 72 65 ity,.'selected'.=>.false,.);..re
115d20 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 6f 72 74 41 64 61 70 74 65 72 73 28 29 3b 0a 7d 0a 0a 0a turn.$this->sortAdapters();.}...
115d40 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 73 65 42 65 73 74 41 64 61 ......public.function.useBestAda
115d60 70 74 65 72 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f pter().{.@trigger_error('The.'._
115d80 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 _METHOD__.'.method.is.deprecated
115da0 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 .since.version.2.8.and.will.be.r
115dc0 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 emoved.in.3.0.',.E_USER_DEPRECAT
115de0 45 44 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 44 65 66 61 75 6c 74 41 64 61 70 74 65 72 73 ED);..$this->initDefaultAdapters
115e00 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 41 64 61 70 74 65 72 53 65 6c 65 63 74 69 6f ();..$this->resetAdapterSelectio
115e20 6e 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 6f 72 74 41 64 61 70 74 65 72 73 n();..return.$this->sortAdapters
115e40 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ();.}.............public.functio
115e60 6e 20 73 65 74 41 64 61 70 74 65 72 28 24 6e 61 6d 65 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 n.setAdapter($name).{.@trigger_e
115e80 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 rror('The.'.__METHOD__.'.method.
115ea0 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 is.deprecated.since.version.2.8.
115ec0 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f and.will.be.removed.in.3.0.',.E_
115ee0 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 44 65 USER_DEPRECATED);..$this->initDe
115f00 66 61 75 6c 74 41 64 61 70 74 65 72 73 28 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 faultAdapters();..if.(!isset($th
115f20 69 73 2d 3e 61 64 61 70 74 65 72 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 is->adapters[$name])).{.throw.ne
115f40 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 w.\InvalidArgumentException(spri
115f60 6e 74 66 28 27 41 64 61 70 74 65 72 20 22 25 73 22 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 ntf('Adapter."%s".does.not.exist
115f80 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 41 64 61 70 .',.$name));.}..$this->resetAdap
115fa0 74 65 72 53 65 6c 65 63 74 69 6f 6e 28 29 3b 0a 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 5b terSelection();.$this->adapters[
115fc0 24 6e 61 6d 65 5d 5b 27 73 65 6c 65 63 74 65 64 27 5d 20 3d 20 74 72 75 65 3b 0a 0a 72 65 74 75 $name]['selected'].=.true;..retu
115fe0 72 6e 20 24 74 68 69 73 2d 3e 73 6f 72 74 41 64 61 70 74 65 72 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a rn.$this->sortAdapters();.}.....
116000 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 41 64 61 70 74 65 ....public.function.removeAdapte
116020 72 73 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d rs().{.@trigger_error('The.'.__M
116040 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 ETHOD__.'.method.is.deprecated.s
116060 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d ince.version.2.8.and.will.be.rem
116080 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 oved.in.3.0.',.E_USER_DEPRECATED
1160a0 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a );..$this->adapters.=.array();..
1160c0 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 return.$this;.}.........public.f
1160e0 75 6e 63 74 69 6f 6e 20 67 65 74 41 64 61 70 74 65 72 73 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 unction.getAdapters().{.@trigger
116100 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f _error('The.'.__METHOD__.'.metho
116120 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e d.is.deprecated.since.version.2.
116140 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 8.and.will.be.removed.in.3.0.',.
116160 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 E_USER_DEPRECATED);..$this->init
116180 44 65 66 61 75 6c 74 41 64 61 70 74 65 72 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 DefaultAdapters();..return.array
1161a0 5f 76 61 6c 75 65 73 28 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 61 72 72 61 _values(array_map(function.(arra
1161c0 79 20 24 61 64 61 70 74 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 64 61 70 74 65 72 5b 27 61 y.$adapter).{.return.$adapter['a
1161e0 64 61 70 74 65 72 27 5d 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 29 29 3b 0a dapter'];.},.$this->adapters));.
116200 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 }.......public.function.director
116220 69 65 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 49 74 65 72 61 74 6f 72 5c 46 ies().{.$this->mode.=.Iterator\F
116240 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3a 3a 4f 4e 4c 59 5f 44 49 52 45 ileTypeFilterIterator::ONLY_DIRE
116260 43 54 4f 52 49 45 53 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a CTORIES;..return.$this;.}.......
116280 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 65 73 28 29 0a 7b 0a 24 74 68 69 73 2d public.function.files().{.$this-
1162a0 3e 6d 6f 64 65 20 3d 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 >mode.=.Iterator\FileTypeFilterI
1162c0 74 65 72 61 74 6f 72 3a 3a 4f 4e 4c 59 5f 46 49 4c 45 53 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 terator::ONLY_FILES;..return.$th
1162e0 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e is;.}.................public.fun
116300 63 74 69 6f 6e 20 64 65 70 74 68 28 24 6c 65 76 65 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 70 ction.depth($level).{.$this->dep
116320 74 68 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 70 61 72 61 74 6f 72 5c 4e 75 6d 62 65 72 43 6f 6d ths[].=.new.Comparator\NumberCom
116340 70 61 72 61 74 6f 72 28 24 6c 65 76 65 6c 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a parator($level);..return.$this;.
116360 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 }....................public.func
116380 74 69 6f 6e 20 64 61 74 65 28 24 64 61 74 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 61 74 65 73 5b tion.date($date).{.$this->dates[
1163a0 5d 20 3d 20 6e 65 77 20 43 6f 6d 70 61 72 61 74 6f 72 5c 44 61 74 65 43 6f 6d 70 61 72 61 74 6f ].=.new.Comparator\DateComparato
1163c0 72 28 24 64 61 74 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a r($date);..return.$this;.}......
1163e0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 28 ...........public.function.name(
116400 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 73 5b 5d 20 3d 20 24 70 61 $pattern).{.$this->names[].=.$pa
116420 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a ttern;..return.$this;.}.........
116440 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 4e 61 6d 65 28 24 70 61 74 74 65 ..public.function.notName($patte
116460 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 5b 5d 20 3d 20 24 70 61 74 74 65 rn).{.$this->notNames[].=.$patte
116480 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a rn;..return.$this;.}............
1164a0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 74 61 69 6e 73 28 24 70 61 ....public.function.contains($pa
1164c0 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 5b 5d 20 3d 20 24 70 61 ttern).{.$this->contains[].=.$pa
1164e0 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a ttern;..return.$this;.}.........
116500 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 43 6f 6e 74 61 69 .......public.function.notContai
116520 6e 73 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e ns($pattern).{.$this->notContain
116540 73 5b 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d s[].=.$pattern;..return.$this;.}
116560 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ..................public.functio
116580 6e 20 70 61 74 68 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 68 73 5b n.path($pattern).{.$this->paths[
1165a0 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a ].=.$pattern;..return.$this;.}..
1165c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ................public.function.
1165e0 6e 6f 74 50 61 74 68 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 50 61 notPath($pattern).{.$this->notPa
116600 74 68 73 5b 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b ths[].=.$pattern;..return.$this;
116620 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .}................public.functio
116640 6e 20 73 69 7a 65 28 24 73 69 7a 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 69 7a 65 73 5b 5d 20 3d n.size($size).{.$this->sizes[].=
116660 20 6e 65 77 20 43 6f 6d 70 61 72 61 74 6f 72 5c 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 .new.Comparator\NumberComparator
116680 28 24 73 69 7a 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ($size);..return.$this;.}.......
1166a0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 63 6c 75 64 65 28 24 64 69 72 ....public.function.exclude($dir
1166c0 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 s).{.$this->exclude.=.array_merg
1166e0 65 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 2c 20 28 61 72 72 61 79 29 20 24 64 69 72 73 29 e($this->exclude,.(array).$dirs)
116700 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ;..return.$this;.}...........pub
116720 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 28 24 69 67 6e lic.function.ignoreDotFiles($ign
116740 6f 72 65 44 6f 74 46 69 6c 65 73 29 0a 7b 0a 69 66 20 28 24 69 67 6e 6f 72 65 44 6f 74 46 69 6c oreDotFiles).{.if.($ignoreDotFil
116760 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 7c 3d 20 73 74 61 74 69 63 3a 3a 49 es).{.$this->ignore.|=.static::I
116780 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d GNORE_DOT_FILES;.}.else.{.$this-
1167a0 3e 69 67 6e 6f 72 65 20 26 3d 20 7e 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 >ignore.&=.~static::IGNORE_DOT_F
1167c0 49 4c 45 53 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ILES;.}..return.$this;.}........
1167e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 67 6e 6f 72 65 56 43 53 28 24 69 67 ...public.function.ignoreVCS($ig
116800 6e 6f 72 65 56 43 53 29 0a 7b 0a 69 66 20 28 24 69 67 6e 6f 72 65 56 43 53 29 20 7b 0a 24 74 68 noreVCS).{.if.($ignoreVCS).{.$th
116820 69 73 2d 3e 69 67 6e 6f 72 65 20 7c 3d 20 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 56 43 53 is->ignore.|=.static::IGNORE_VCS
116840 5f 46 49 4c 45 53 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 26 _FILES;.}.else.{.$this->ignore.&
116860 3d 20 7e 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 3b 0a 7d 0a 0a =.~static::IGNORE_VCS_FILES;.}..
116880 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 return.$this;.}.........public.s
1168a0 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 56 43 53 50 61 74 74 65 72 6e 28 24 70 61 tatic.function.addVCSPattern($pa
1168c0 74 74 65 72 6e 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 70 61 74 74 65 ttern).{.foreach.((array).$patte
1168e0 72 6e 20 61 73 20 24 70 29 20 7b 0a 73 65 6c 66 3a 3a 24 76 63 73 50 61 74 74 65 72 6e 73 5b 5d rn.as.$p).{.self::$vcsPatterns[]
116900 20 3d 20 24 70 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 76 63 73 50 61 74 74 65 72 6e 73 20 3d 20 61 .=.$p;.}..self::$vcsPatterns.=.a
116920 72 72 61 79 5f 75 6e 69 71 75 65 28 73 65 6c 66 3a 3a 24 76 63 73 50 61 74 74 65 72 6e 73 29 3b rray_unique(self::$vcsPatterns);
116940 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e .}...............public.function
116960 20 73 6f 72 74 28 5c 43 6c 6f 73 75 72 65 20 24 63 6c 6f 73 75 72 65 29 0a 7b 0a 24 74 68 69 73 .sort(\Closure.$closure).{.$this
116980 2d 3e 73 6f 72 74 20 3d 20 24 63 6c 6f 73 75 72 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ->sort.=.$closure;..return.$this
1169a0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f ;.}...........public.function.so
1169c0 72 74 42 79 4e 61 6d 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 rtByName().{.$this->sort.=.Itera
1169e0 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 4e 41 tor\SortableIterator::SORT_BY_NA
116a00 4d 45 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ME;..return.$this;.}...........p
116a20 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 54 79 70 65 28 29 0a 7b 0a 24 74 ublic.function.sortByType().{.$t
116a40 68 69 73 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 his->sort.=.Iterator\SortableIte
116a60 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 54 59 50 45 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 rator::SORT_BY_TYPE;..return.$th
116a80 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f is;.}.............public.functio
116aa0 6e 20 73 6f 72 74 42 79 41 63 63 65 73 73 65 64 54 69 6d 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e n.sortByAccessedTime().{.$this->
116ac0 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 sort.=.Iterator\SortableIterator
116ae0 3a 3a 53 4f 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 3b 0a 0a 72 65 74 75 72 6e ::SORT_BY_ACCESSED_TIME;..return
116b00 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .$this;.}...............public.f
116b20 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 43 68 61 6e 67 65 64 54 69 6d 65 28 29 0a 7b 0a 24 74 unction.sortByChangedTime().{.$t
116b40 68 69 73 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 his->sort.=.Iterator\SortableIte
116b60 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d 45 3b 0a 0a 72 65 rator::SORT_BY_CHANGED_TIME;..re
116b80 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 turn.$this;.}.............public
116ba0 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 4d 6f 64 69 66 69 65 64 54 69 6d 65 28 29 0a 7b .function.sortByModifiedTime().{
116bc0 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 .$this->sort.=.Iterator\Sortable
116be0 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 4d 4f 44 49 46 49 45 44 5f 54 49 4d 45 3b Iterator::SORT_BY_MODIFIED_TIME;
116c00 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ..return.$this;.}..............p
116c20 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 74 65 72 28 5c 43 6c 6f 73 75 72 65 20 24 ublic.function.filter(\Closure.$
116c40 63 6c 6f 73 75 72 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 5b 5d 20 3d 20 24 63 closure).{.$this->filters[].=.$c
116c60 6c 6f 73 75 72 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 losure;..return.$this;.}.......p
116c80 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 28 29 0a 7b 0a 24 ublic.function.followLinks().{.$
116ca0 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 20 3d 20 74 72 75 65 3b 0a 0a 72 65 74 75 72 this->followLinks.=.true;..retur
116cc0 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 n.$this;.}...........public.func
116ce0 74 69 6f 6e 20 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 28 24 69 67 6e 6f 72 tion.ignoreUnreadableDirs($ignor
116d00 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 e.=.true).{.$this->ignoreUnreada
116d20 62 6c 65 44 69 72 73 20 3d 20 28 62 6f 6f 6c 29 20 24 69 67 6e 6f 72 65 3b 0a 0a 72 65 74 75 72 bleDirs.=.(bool).$ignore;..retur
116d40 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 n.$this;.}...........public.func
116d60 74 69 6f 6e 20 69 6e 28 24 64 69 72 73 29 0a 7b 0a 24 72 65 73 6f 6c 76 65 64 44 69 72 73 20 3d tion.in($dirs).{.$resolvedDirs.=
116d80 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 64 69 72 .array();..foreach.((array).$dir
116da0 73 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b s.as.$dir).{.if.(is_dir($dir)).{
116dc0 0a 24 72 65 73 6f 6c 76 65 64 44 69 72 73 5b 5d 20 3d 20 24 64 69 72 3b 0a 7d 20 65 6c 73 65 69 .$resolvedDirs[].=.$dir;.}.elsei
116de0 66 20 28 24 67 6c 6f 62 20 3d 20 67 6c 6f 62 28 24 64 69 72 2c 20 28 64 65 66 69 6e 65 64 28 27 f.($glob.=.glob($dir,.(defined('
116e00 47 4c 4f 42 5f 42 52 41 43 45 27 29 20 3f 20 47 4c 4f 42 5f 42 52 41 43 45 20 3a 20 30 29 20 7c GLOB_BRACE').?.GLOB_BRACE.:.0).|
116e20 20 47 4c 4f 42 5f 4f 4e 4c 59 44 49 52 29 29 20 7b 0a 24 72 65 73 6f 6c 76 65 64 44 69 72 73 20 .GLOB_ONLYDIR)).{.$resolvedDirs.
116e40 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 6f 6c 76 65 64 44 69 72 73 2c 20 24 67 6c =.array_merge($resolvedDirs,.$gl
116e60 6f 62 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 ob);.}.else.{.throw.new.\Invalid
116e80 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 ArgumentException(sprintf('The."
116ea0 25 73 22 20 64 69 72 65 63 74 6f 72 79 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 %s".directory.does.not.exist.',.
116ec0 24 64 69 72 29 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 69 72 73 20 3d 20 61 72 72 61 79 $dir));.}.}..$this->dirs.=.array
116ee0 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 64 69 72 73 2c 20 24 72 65 73 6f 6c 76 65 64 44 69 72 _merge($this->dirs,.$resolvedDir
116f00 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 s);..return.$this;.}...........p
116f20 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 74 65 72 61 74 6f 72 28 29 0a 7b 0a 69 ublic.function.getIterator().{.i
116f40 66 20 28 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 69 72 73 29 20 26 26 20 30 f.(0.===.count($this->dirs).&&.0
116f60 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 73 29 29 20 7b 0a .===.count($this->iterators)).{.
116f80 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d throw.new.\LogicException('You.m
116fa0 75 73 74 20 63 61 6c 6c 20 6f 6e 65 20 6f 66 20 69 6e 28 29 20 6f 72 20 61 70 70 65 6e 64 28 29 ust.call.one.of.in().or.append()
116fc0 20 6d 65 74 68 6f 64 73 20 62 65 66 6f 72 65 20 69 74 65 72 61 74 69 6e 67 20 6f 76 65 72 20 61 .methods.before.iterating.over.a
116fe0 20 46 69 6e 64 65 72 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 .Finder.');.}..if.(1.===.count($
117000 74 68 69 73 2d 3e 64 69 72 73 29 20 26 26 20 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 this->dirs).&&.0.===.count($this
117020 2d 3e 69 74 65 72 61 74 6f 72 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 65 ->iterators)).{.return.$this->se
117040 61 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 64 69 72 73 5b 30 5d 29 3b archInDirectory($this->dirs[0]);
117060 0a 7d 0a 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 5c 41 70 70 65 6e 64 49 74 65 72 61 .}..$iterator.=.new.\AppendItera
117080 74 6f 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 69 72 73 20 61 73 20 24 tor();.foreach.($this->dirs.as.$
1170a0 64 69 72 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 2d 3e 61 70 70 65 6e 64 28 24 74 68 69 73 2d 3e dir).{.$iterator->append($this->
1170c0 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 29 3b 0a 7d 0a 0a 66 6f 72 searchInDirectory($dir));.}..for
1170e0 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 73 20 61 73 20 24 69 74 29 20 7b each.($this->iterators.as.$it).{
117100 0a 24 69 74 65 72 61 74 6f 72 2d 3e 61 70 70 65 6e 64 28 24 69 74 29 3b 0a 7d 0a 0a 72 65 74 75 .$iterator->append($it);.}..retu
117120 72 6e 20 24 69 74 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c rn.$iterator;.}.............publ
117140 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 28 24 69 74 65 72 61 74 6f 72 29 0a 7b 0a ic.function.append($iterator).{.
117160 69 66 20 28 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 49 74 65 72 61 74 if.($iterator.instanceof.\Iterat
117180 6f 72 41 67 67 72 65 67 61 74 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 73 5b orAggregate).{.$this->iterators[
1171a0 5d 20 3d 20 24 69 74 65 72 61 74 6f 72 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 3b 0a 7d 20 ].=.$iterator->getIterator();.}.
1171c0 65 6c 73 65 69 66 20 28 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 49 74 elseif.($iterator.instanceof.\It
1171e0 65 72 61 74 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 73 5b 5d 20 3d 20 24 erator).{.$this->iterators[].=.$
117200 69 74 65 72 61 74 6f 72 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 74 65 72 61 74 6f 72 20 69 6e iterator;.}.elseif.($iterator.in
117220 73 74 61 6e 63 65 6f 66 20 5c 54 72 61 76 65 72 73 61 62 6c 65 20 7c 7c 20 69 73 5f 61 72 72 61 stanceof.\Traversable.||.is_arra
117240 79 28 24 69 74 65 72 61 74 6f 72 29 29 20 7b 0a 24 69 74 20 3d 20 6e 65 77 20 5c 41 72 72 61 79 y($iterator)).{.$it.=.new.\Array
117260 49 74 65 72 61 74 6f 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 69 74 65 72 61 74 6f 72 20 61 Iterator();.foreach.($iterator.a
117280 73 20 24 66 69 6c 65 29 20 7b 0a 24 69 74 2d 3e 61 70 70 65 6e 64 28 24 66 69 6c 65 20 69 6e 73 s.$file).{.$it->append($file.ins
1172a0 74 61 6e 63 65 6f 66 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 20 3f 20 24 66 69 6c 65 20 3a 20 6e tanceof.\SplFileInfo.?.$file.:.n
1172c0 65 77 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 28 24 66 69 6c 65 29 29 3b 0a 7d 0a 24 74 68 69 73 ew.\SplFileInfo($file));.}.$this
1172e0 2d 3e 69 74 65 72 61 74 6f 72 73 5b 5d 20 3d 20 24 69 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 ->iterators[].=.$it;.}.else.{.th
117300 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f row.new.\InvalidArgumentExceptio
117320 6e 28 27 46 69 6e 64 65 72 3a 3a 61 70 70 65 6e 64 28 29 20 6d 65 74 68 6f 64 20 77 72 6f 6e 67 n('Finder::append().method.wrong
117340 20 61 72 67 75 6d 65 6e 74 20 74 79 70 65 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 .argument.type.');.}..return.$th
117360 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 75 6e is;.}.......public.function.coun
117380 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 74 65 72 61 74 6f 72 5f 63 6f 75 6e 74 28 24 74 68 69 t().{.return.iterator_count($thi
1173a0 73 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 s->getIterator());.}.....private
1173c0 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 41 64 61 70 74 65 72 73 28 29 0a 7b 0a 75 61 73 6f 72 .function.sortAdapters().{.uasor
1173e0 74 28 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 61 72 72 t($this->adapters,.function.(arr
117400 61 79 20 24 61 2c 20 61 72 72 61 79 20 24 62 29 20 7b 0a 69 66 20 28 24 61 5b 27 73 65 6c 65 63 ay.$a,.array.$b).{.if.($a['selec
117420 74 65 64 27 5d 20 7c 7c 20 24 62 5b 27 73 65 6c 65 63 74 65 64 27 5d 29 20 7b 0a 72 65 74 75 72 ted'].||.$b['selected']).{.retur
117440 6e 20 24 61 5b 27 73 65 6c 65 63 74 65 64 27 5d 20 3f 20 2d 31 20 3a 20 31 3b 0a 7d 0a 0a 72 65 n.$a['selected'].?.-1.:.1;.}..re
117460 74 75 72 6e 20 24 61 5b 27 70 72 69 6f 72 69 74 79 27 5d 20 3e 20 24 62 5b 27 70 72 69 6f 72 69 turn.$a['priority'].>.$b['priori
117480 74 79 27 5d 20 3f 20 2d 31 20 3a 20 31 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ty'].?.-1.:.1;.});..return.$this
1174a0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 ;.}.......private.function.searc
1174c0 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 0a 7b 0a 69 66 20 28 73 74 61 74 69 63 3a hInDirectory($dir).{.if.(static:
1174e0 3a 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 20 3d 3d 3d 20 28 73 74 61 74 69 63 3a 3a 49 :IGNORE_VCS_FILES.===.(static::I
117500 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 20 26 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 29 GNORE_VCS_FILES.&.$this->ignore)
117520 29 20 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 ).{.$this->exclude.=.array_merge
117540 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 2c 20 73 65 6c 66 3a 3a 24 76 63 73 50 61 74 74 65 ($this->exclude,.self::$vcsPatte
117560 72 6e 73 29 3b 0a 7d 0a 0a 69 66 20 28 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f rns);.}..if.(static::IGNORE_DOT_
117580 46 49 4c 45 53 20 3d 3d 3d 20 28 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 FILES.===.(static::IGNORE_DOT_FI
1175a0 4c 45 53 20 26 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e LES.&.$this->ignore)).{.$this->n
1175c0 6f 74 50 61 74 68 73 5b 5d 20 3d 20 27 23 28 5e 7c 2f 29 5c 2e 2e 2b 28 2f 7c 24 29 23 27 3b 0a otPaths[].=.'#(^|/)\..+(/|$)#';.
1175e0 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 29 20 7b 0a 66 6f 72 65 61 63 }..if.($this->adapters).{.foreac
117600 68 20 28 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 20 61 73 20 24 61 64 61 70 74 65 72 29 20 h.($this->adapters.as.$adapter).
117620 7b 0a 69 66 20 28 24 61 64 61 70 74 65 72 5b 27 61 64 61 70 74 65 72 27 5d 2d 3e 69 73 53 75 70 {.if.($adapter['adapter']->isSup
117640 70 6f 72 74 65 64 28 29 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 0a 2d ported()).{.try.{.return.$this.-
117660 3e 62 75 69 6c 64 41 64 61 70 74 65 72 28 24 61 64 61 70 74 65 72 5b 27 61 64 61 70 74 65 72 27 >buildAdapter($adapter['adapter'
117680 5d 29 0a 2d 3e 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 3b 0a 7d 20 ]).->searchInDirectory($dir);.}.
1176a0 63 61 74 63 68 20 28 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 24 65 29 20 7b 0a catch.(ExceptionInterface.$e).{.
1176c0 7d 0a 7d 0a 7d 0a 7d 0a 0a 24 6d 69 6e 44 65 70 74 68 20 3d 20 30 3b 0a 24 6d 61 78 44 65 70 74 }.}.}.}..$minDepth.=.0;.$maxDept
1176e0 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 h.=.PHP_INT_MAX;..foreach.($this
117700 2d 3e 64 65 70 74 68 73 20 61 73 20 24 63 6f 6d 70 61 72 61 74 6f 72 29 20 7b 0a 73 77 69 74 63 ->depths.as.$comparator).{.switc
117720 68 20 28 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 4f 70 65 72 61 74 6f 72 28 29 29 20 7b h.($comparator->getOperator()).{
117740 0a 63 61 73 65 20 27 3e 27 3a 0a 24 6d 69 6e 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 .case.'>':.$minDepth.=.$comparat
117760 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 2b 20 31 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 or->getTarget().+.1;.break;.case
117780 20 27 3e 3d 27 3a 0a 24 6d 69 6e 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e .'>=':.$minDepth.=.$comparator->
1177a0 67 65 74 54 61 72 67 65 74 28 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3c 27 3a 0a 24 6d getTarget();.break;.case.'<':.$m
1177c0 61 78 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 axDepth.=.$comparator->getTarget
1177e0 28 29 20 2d 20 31 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3c 3d 27 3a 0a 24 6d 61 78 44 65 ().-.1;.break;.case.'<=':.$maxDe
117800 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a pth.=.$comparator->getTarget();.
117820 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 6d 69 6e 44 65 70 74 68 20 3d 20 24 6d 61 78 break;.default:.$minDepth.=.$max
117840 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 28 29 Depth.=.$comparator->getTarget()
117860 3b 0a 7d 0a 7d 0a 0a 24 66 6c 61 67 73 20 3d 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 ;.}.}..$flags.=.\RecursiveDirect
117880 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f 54 53 3b 0a 0a 69 66 20 28 24 74 68 oryIterator::SKIP_DOTS;..if.($th
1178a0 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 29 20 7b 0a 24 66 6c 61 67 73 20 7c 3d 20 5c 52 65 is->followLinks).{.$flags.|=.\Re
1178c0 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 46 4f 4c 4c 4f 57 cursiveDirectoryIterator::FOLLOW
1178e0 5f 53 59 4d 4c 49 4e 4b 53 3b 0a 7d 0a 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 _SYMLINKS;.}..$iterator.=.new.It
117900 65 72 61 74 6f 72 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f erator\RecursiveDirectoryIterato
117920 72 28 24 64 69 72 2c 20 24 66 6c 61 67 73 2c 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 55 6e 72 r($dir,.$flags,.$this->ignoreUnr
117940 65 61 64 61 62 6c 65 44 69 72 73 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 eadableDirs);..if.($this->exclud
117960 65 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 45 78 e).{.$iterator.=.new.Iterator\Ex
117980 63 6c 75 64 65 44 69 72 65 63 74 6f 72 79 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 cludeDirectoryFilterIterator($it
1179a0 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 29 3b 0a 7d 0a 0a 24 69 74 65 erator,.$this->exclude);.}..$ite
1179c0 72 61 74 6f 72 20 3d 20 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 rator.=.new.\RecursiveIteratorIt
1179e0 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 erator($iterator,.\RecursiveIter
117a00 61 74 6f 72 49 74 65 72 61 74 6f 72 3a 3a 53 45 4c 46 5f 46 49 52 53 54 29 3b 0a 0a 69 66 20 28 atorIterator::SELF_FIRST);..if.(
117a20 24 6d 69 6e 44 65 70 74 68 20 3e 20 30 20 7c 7c 20 24 6d 61 78 44 65 70 74 68 20 3c 20 50 48 50 $minDepth.>.0.||.$maxDepth.<.PHP
117a40 5f 49 4e 54 5f 4d 41 58 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 _INT_MAX).{.$iterator.=.new.Iter
117a60 61 74 6f 72 5c 44 65 70 74 68 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 ator\DepthRangeFilterIterator($i
117a80 74 65 72 61 74 6f 72 2c 20 24 6d 69 6e 44 65 70 74 68 2c 20 24 6d 61 78 44 65 70 74 68 29 3b 0a terator,.$minDepth,.$maxDepth);.
117aa0 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 }..if.($this->mode).{.$iterator.
117ac0 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 =.new.Iterator\FileTypeFilterIte
117ae0 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d rator($iterator,.$this->mode);.}
117b00 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6e 61 6d 65 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 ..if.($this->names.||.$this->not
117b20 4e 61 6d 65 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f Names).{.$iterator.=.new.Iterato
117b40 72 5c 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 r\FilenameFilterIterator($iterat
117b60 6f 72 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 or,.$this->names,.$this->notName
117b80 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 20 7c 7c 20 24 74 s);.}..if.($this->contains.||.$t
117ba0 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 his->notContains).{.$iterator.=.
117bc0 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 63 6f 6e 74 65 6e 74 46 69 6c 74 65 72 49 74 new.Iterator\FilecontentFilterIt
117be0 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e erator($iterator,.$this->contain
117c00 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 s,.$this->notContains);.}..if.($
117c20 74 68 69 73 2d 3e 73 69 7a 65 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 this->sizes).{.$iterator.=.new.I
117c40 74 65 72 61 74 6f 72 5c 53 69 7a 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 terator\SizeRangeFilterIterator(
117c60 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 73 69 7a 65 73 29 3b 0a 7d 0a 0a 69 66 20 $iterator,.$this->sizes);.}..if.
117c80 28 24 74 68 69 73 2d 3e 64 61 74 65 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 ($this->dates).{.$iterator.=.new
117ca0 20 49 74 65 72 61 74 6f 72 5c 44 61 74 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f .Iterator\DateRangeFilterIterato
117cc0 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 64 61 74 65 73 29 3b 0a 7d 0a 0a 69 r($iterator,.$this->dates);.}..i
117ce0 66 20 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d f.($this->filters).{.$iterator.=
117d00 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 43 75 73 74 6f 6d 46 69 6c 74 65 72 49 74 65 72 61 74 .new.Iterator\CustomFilterIterat
117d20 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 3b 0a 7d or($iterator,.$this->filters);.}
117d40 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 61 74 68 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 ..if.($this->paths.||.$this->not
117d60 50 61 74 68 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f Paths).{.$iterator.=.new.Iterato
117d80 72 5c 50 61 74 68 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 r\PathFilterIterator($iterator,.
117da0 24 74 68 69 73 2d 3e 70 61 74 68 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 29 3b 0a $this->paths,.$this->notPaths);.
117dc0 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 41 }..if.($this->sort).{.$iteratorA
117de0 67 67 72 65 67 61 74 65 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 ggregate.=.new.Iterator\Sortable
117e00 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 73 6f 72 74 29 Iterator($iterator,.$this->sort)
117e20 3b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 ;.$iterator.=.$iteratorAggregate
117e40 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 74 65 72 ->getIterator();.}..return.$iter
117e60 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 ator;.}.......private.function.b
117e80 75 69 6c 64 41 64 61 70 74 65 72 28 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 61 64 uildAdapter(AdapterInterface.$ad
117ea0 61 70 74 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 61 64 61 70 74 65 72 0a 2d 3e 73 65 74 46 6f apter).{.return.$adapter.->setFo
117ec0 6c 6c 6f 77 4c 69 6e 6b 73 28 24 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 29 0a 2d 3e llowLinks($this->followLinks).->
117ee0 73 65 74 44 65 70 74 68 73 28 24 74 68 69 73 2d 3e 64 65 70 74 68 73 29 0a 2d 3e 73 65 74 4d 6f setDepths($this->depths).->setMo
117f00 64 65 28 24 74 68 69 73 2d 3e 6d 6f 64 65 29 0a 2d 3e 73 65 74 45 78 63 6c 75 64 65 28 24 74 68 de($this->mode).->setExclude($th
117f20 69 73 2d 3e 65 78 63 6c 75 64 65 29 0a 2d 3e 73 65 74 4e 61 6d 65 73 28 24 74 68 69 73 2d 3e 6e is->exclude).->setNames($this->n
117f40 61 6d 65 73 29 0a 2d 3e 73 65 74 4e 6f 74 4e 61 6d 65 73 28 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 ames).->setNotNames($this->notNa
117f60 6d 65 73 29 0a 2d 3e 73 65 74 43 6f 6e 74 61 69 6e 73 28 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 mes).->setContains($this->contai
117f80 6e 73 29 0a 2d 3e 73 65 74 4e 6f 74 43 6f 6e 74 61 69 6e 73 28 24 74 68 69 73 2d 3e 6e 6f 74 43 ns).->setNotContains($this->notC
117fa0 6f 6e 74 61 69 6e 73 29 0a 2d 3e 73 65 74 53 69 7a 65 73 28 24 74 68 69 73 2d 3e 73 69 7a 65 73 ontains).->setSizes($this->sizes
117fc0 29 0a 2d 3e 73 65 74 44 61 74 65 73 28 24 74 68 69 73 2d 3e 64 61 74 65 73 29 0a 2d 3e 73 65 74 ).->setDates($this->dates).->set
117fe0 46 69 6c 74 65 72 73 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 0a 2d 3e 73 65 74 53 6f 72 Filters($this->filters).->setSor
118000 74 28 24 74 68 69 73 2d 3e 73 6f 72 74 29 0a 2d 3e 73 65 74 50 61 74 68 28 24 74 68 69 73 2d 3e t($this->sort).->setPath($this->
118020 70 61 74 68 73 29 0a 2d 3e 73 65 74 4e 6f 74 50 61 74 68 28 24 74 68 69 73 2d 3e 6e 6f 74 50 61 paths).->setNotPath($this->notPa
118040 74 68 73 29 0a 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 28 24 74 68 69 ths).->ignoreUnreadableDirs($thi
118060 73 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 29 3b 0a 7d 0a 0a 0a 0a 0a s->ignoreUnreadableDirs);.}.....
118080 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 41 64 61 70 74 65 72 53 65 6c private.function.resetAdapterSel
1180a0 65 63 74 69 6f 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 20 3d 20 61 72 72 ection().{.$this->adapters.=.arr
1180c0 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 61 72 72 61 79 20 24 70 72 6f 70 65 72 74 69 ay_map(function.(array.$properti
1180e0 65 73 29 20 7b 0a 24 70 72 6f 70 65 72 74 69 65 73 5b 27 73 65 6c 65 63 74 65 64 27 5d 20 3d 20 es).{.$properties['selected'].=.
118100 66 61 6c 73 65 3b 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 70 65 72 74 69 65 73 3b 0a 7d 2c 20 24 false;..return.$properties;.},.$
118120 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 this->adapters);.}..private.func
118140 74 69 6f 6e 20 69 6e 69 74 44 65 66 61 75 6c 74 41 64 61 70 74 65 72 73 28 29 0a 7b 0a 69 66 20 tion.initDefaultAdapters().{.if.
118160 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 29 20 7b 0a 24 74 68 (null.===.$this->adapters).{.$th
118180 69 73 2d 3e 61 64 61 70 74 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 0a 2d 3e is->adapters.=.array();.$this.->
1181a0 61 64 64 41 64 61 70 74 65 72 28 6e 65 77 20 47 6e 75 46 69 6e 64 41 64 61 70 74 65 72 28 29 29 addAdapter(new.GnuFindAdapter())
1181c0 0a 2d 3e 61 64 64 41 64 61 70 74 65 72 28 6e 65 77 20 42 73 64 46 69 6e 64 41 64 61 70 74 65 72 .->addAdapter(new.BsdFindAdapter
1181e0 28 29 29 0a 2d 3e 61 64 64 41 64 61 70 74 65 72 28 6e 65 77 20 50 68 70 41 64 61 70 74 65 72 28 ()).->addAdapter(new.PhpAdapter(
118200 29 2c 20 2d 35 30 29 0a 2d 3e 73 65 74 41 64 61 70 74 65 72 28 27 70 68 70 27 29 0a 3b 0a 7d 0a ),.-50).->setAdapter('php').;.}.
118220 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 }.}.<?php...........namespace.Sy
118240 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a mfony\Component\Finder;.........
118260 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 6c 6f 62 0a 7b 0a 0a 0a 0a 0a ...............class.Glob.{.....
118280 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 6f 52 ......public.static.function.toR
1182a0 65 67 65 78 28 24 67 6c 6f 62 2c 20 24 73 74 72 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 20 3d 20 egex($glob,.$strictLeadingDot.=.
1182c0 74 72 75 65 2c 20 24 73 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c 61 73 68 20 3d 20 74 72 75 true,.$strictWildcardSlash.=.tru
1182e0 65 2c 20 24 64 65 6c 69 6d 69 74 65 72 20 3d 20 27 23 27 29 0a 7b 0a 24 66 69 72 73 74 42 79 74 e,.$delimiter.=.'#').{.$firstByt
118300 65 20 3d 20 74 72 75 65 3b 0a 24 65 73 63 61 70 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 24 69 6e e.=.true;.$escaping.=.false;.$in
118320 43 75 72 6c 69 65 73 20 3d 20 30 3b 0a 24 72 65 67 65 78 20 3d 20 27 27 3b 0a 24 73 69 7a 65 47 Curlies.=.0;.$regex.=.'';.$sizeG
118340 6c 6f 62 20 3d 20 73 74 72 6c 65 6e 28 24 67 6c 6f 62 29 3b 0a 66 6f 72 20 28 24 69 20 3d 20 30 lob.=.strlen($glob);.for.($i.=.0
118360 3b 20 24 69 20 3c 20 24 73 69 7a 65 47 6c 6f 62 3b 20 2b 2b 24 69 29 20 7b 0a 24 63 61 72 20 3d ;.$i.<.$sizeGlob;.++$i).{.$car.=
118380 20 24 67 6c 6f 62 5b 24 69 5d 3b 0a 69 66 20 28 24 66 69 72 73 74 42 79 74 65 29 20 7b 0a 69 66 .$glob[$i];.if.($firstByte).{.if
1183a0 20 28 24 73 74 72 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 20 26 26 20 27 2e 27 20 21 3d 3d 20 24 .($strictLeadingDot.&&.'.'.!==.$
1183c0 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 27 28 3f 3d 5b 5e 5c 2e 5d 29 27 3b 0a 7d 0a car).{.$regex..=.'(?=[^\.])';.}.
1183e0 0a 24 66 69 72 73 74 42 79 74 65 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 27 2f 27 20 .$firstByte.=.false;.}..if.('/'.
118400 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 24 66 69 72 73 74 42 79 74 65 20 3d 20 74 72 75 65 3b 0a 7d ===.$car).{.$firstByte.=.true;.}
118420 0a 0a 69 66 20 28 27 2e 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 28 27 20 3d 3d 3d 20 24 63 ..if.('.'.===.$car.||.'('.===.$c
118440 61 72 20 7c 7c 20 27 29 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 7c 27 20 3d 3d 3d 20 24 63 ar.||.')'.===.$car.||.'|'.===.$c
118460 61 72 20 7c 7c 20 27 2b 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 5e 27 20 3d 3d 3d 20 24 63 ar.||.'+'.===.$car.||.'^'.===.$c
118480 61 72 20 7c 7c 20 27 24 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 ar.||.'$'.===.$car).{.$regex..=.
1184a0 22 5c 5c 24 63 61 72 22 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 2a 27 20 3d 3d 3d 20 24 63 61 72 "\\$car";.}.elseif.('*'.===.$car
1184c0 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f 20 27 5c 5c 2a 27 20 ).{.$regex..=.$escaping.?.'\\*'.
1184e0 3a 20 28 24 73 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c 61 73 68 20 3f 20 27 5b 5e 2f 5d 2a :.($strictWildcardSlash.?.'[^/]*
118500 27 20 3a 20 27 2e 2a 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 3f 27 20 3d 3d 3d 20 24 63 61 '.:.'.*');.}.elseif.('?'.===.$ca
118520 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f 20 27 5c 5c 3f 27 r).{.$regex..=.$escaping.?.'\\?'
118540 20 3a 20 28 24 73 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c 61 73 68 20 3f 20 27 5b 5e 2f 5d .:.($strictWildcardSlash.?.'[^/]
118560 27 20 3a 20 27 2e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 7b 27 20 3d 3d 3d 20 24 63 61 72 '.:.'.');.}.elseif.('{'.===.$car
118580 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f 20 27 5c 5c 7b 27 20 ).{.$regex..=.$escaping.?.'\\{'.
1185a0 3a 20 27 28 27 3b 0a 69 66 20 28 21 24 65 73 63 61 70 69 6e 67 29 20 7b 0a 2b 2b 24 69 6e 43 75 :.'(';.if.(!$escaping).{.++$inCu
1185c0 72 6c 69 65 73 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 27 7d 27 20 3d 3d 3d 20 24 63 61 72 20 rlies;.}.}.elseif.('}'.===.$car.
1185e0 26 26 20 24 69 6e 43 75 72 6c 69 65 73 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 &&.$inCurlies).{.$regex..=.$esca
118600 70 69 6e 67 20 3f 20 27 7d 27 20 3a 20 27 29 27 3b 0a 69 66 20 28 21 24 65 73 63 61 70 69 6e 67 ping.?.'}'.:.')';.if.(!$escaping
118620 29 20 7b 0a 2d 2d 24 69 6e 43 75 72 6c 69 65 73 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 27 2c ).{.--$inCurlies;.}.}.elseif.(',
118640 27 20 3d 3d 3d 20 24 63 61 72 20 26 26 20 24 69 6e 43 75 72 6c 69 65 73 29 20 7b 0a 24 72 65 67 '.===.$car.&&.$inCurlies).{.$reg
118660 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f 20 27 2c 27 20 3a 20 27 7c 27 3b 0a 7d 20 65 ex..=.$escaping.?.','.:.'|';.}.e
118680 6c 73 65 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 69 66 20 28 24 65 73 63 lseif.('\\'.===.$car).{.if.($esc
1186a0 61 70 69 6e 67 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 27 5c 5c 5c 5c 27 3b 0a 24 65 73 63 61 aping).{.$regex..=.'\\\\';.$esca
1186c0 70 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 73 63 61 70 69 6e 67 ping.=.false;.}.else.{.$escaping
1186e0 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 .=.true;.}..continue;.}.else.{.$
118700 72 65 67 65 78 20 2e 3d 20 24 63 61 72 3b 0a 7d 0a 24 65 73 63 61 70 69 6e 67 20 3d 20 66 61 6c regex..=.$car;.}.$escaping.=.fal
118720 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 6c 69 6d 69 74 65 72 2e 27 5e 27 2e 24 72 65 se;.}..return.$delimiter.'^'.$re
118740 67 65 78 2e 27 24 27 2e 24 64 65 6c 69 6d 69 74 65 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a gex.'$'.$delimiter;.}.}.<?php...
118760 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e ........namespace.Symfony\Compon
118780 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c ent\Finder\Iterator;..........cl
1187a0 61 73 73 20 43 75 73 74 6f 6d 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 ass.CustomFilterIterator.extends
1187c0 20 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 74 65 .FilterIterator.{.private.$filte
1187e0 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 rs.=.array();..........public.fu
118800 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 nction.__construct(\Iterator.$it
118820 65 72 61 74 6f 72 2c 20 61 72 72 61 79 20 24 66 69 6c 74 65 72 73 29 0a 7b 0a 66 6f 72 65 61 63 erator,.array.$filters).{.foreac
118840 68 20 28 24 66 69 6c 74 65 72 73 20 61 73 20 24 66 69 6c 74 65 72 29 20 7b 0a 69 66 20 28 21 69 h.($filters.as.$filter).{.if.(!i
118860 73 5f 63 61 6c 6c 61 62 6c 65 28 24 66 69 6c 74 65 72 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 s_callable($filter)).{.throw.new
118880 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 .\InvalidArgumentException('Inva
1188a0 6c 69 64 20 50 48 50 20 63 61 6c 6c 62 61 63 6b 2e 27 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e lid.PHP.callback.');.}.}.$this->
1188c0 66 69 6c 74 65 72 73 20 3d 20 24 66 69 6c 74 65 72 73 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 filters.=.$filters;..parent::__c
1188e0 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 onstruct($iterator);.}.......pub
118900 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 24 66 69 6c 65 69 6e 66 lic.function.accept().{.$fileinf
118920 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 o.=.$this->current();..foreach.(
118940 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 20 61 73 20 24 66 69 6c 74 65 72 29 20 7b 0a 69 66 20 $this->filters.as.$filter).{.if.
118960 28 66 61 6c 73 65 20 3d 3d 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 66 69 6c 74 65 (false.===.call_user_func($filte
118980 72 2c 20 24 66 69 6c 65 69 6e 66 6f 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d r,.$fileinfo)).{.return.false;.}
1189a0 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a .}..return.true;.}.}.<?php......
1189c0 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 .....namespace.Symfony\Component
1189e0 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 \Finder\Iterator;..use.Symfony\C
118a00 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 43 6f 6d 70 61 72 61 74 6f 72 5c 44 61 74 65 43 omponent\Finder\Comparator\DateC
118a20 6f 6d 70 61 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 61 74 65 52 61 6e 67 65 omparator;.......class.DateRange
118a40 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 46 69 6c 74 65 72 49 74 65 FilterIterator.extends.FilterIte
118a60 72 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 20 3d 20 61 rator.{.private.$comparators.=.a
118a80 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f rray();........public.function._
118aa0 5f 63 6f 6e 73 74 72 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 _construct(\Iterator.$iterator,.
118ac0 61 72 72 61 79 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d array.$comparators).{.$this->com
118ae0 70 61 72 61 74 6f 72 73 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 3b 0a 0a 70 61 72 65 6e 74 parators.=.$comparators;..parent
118b00 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a ::__construct($iterator);.}.....
118b20 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 24 66 69 ..public.function.accept().{.$fi
118b40 6c 65 69 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 0a 69 66 20 28 leinfo.=.$this->current();..if.(
118b60 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 52 65 61 6c 50 !file_exists($fileinfo->getRealP
118b80 61 74 68 28 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 66 69 6c 65 ath())).{.return.false;.}..$file
118ba0 64 61 74 65 20 3d 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 4d 54 69 6d 65 28 29 3b 0a 66 6f date.=.$fileinfo->getMTime();.fo
118bc0 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 70 61 72 61 74 6f 72 73 20 61 73 20 24 63 6f reach.($this->comparators.as.$co
118be0 6d 70 61 72 65 29 20 7b 0a 69 66 20 28 21 24 63 6f 6d 70 61 72 65 2d 3e 74 65 73 74 28 24 66 69 mpare).{.if.(!$compare->test($fi
118c00 6c 65 64 61 74 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 ledate)).{.return.false;.}.}..re
118c20 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e turn.true;.}.}.<?php...........n
118c40 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 amespace.Symfony\Component\Finde
118c60 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 70 74 68 52 61 6e r\Iterator;.......class.DepthRan
118c80 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 46 69 6c 74 65 72 49 geFilterIterator.extends.FilterI
118ca0 74 65 72 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6d 69 6e 44 65 70 74 68 20 3d 20 30 3b terator.{.private.$minDepth.=.0;
118cc0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 .........public.function.__const
118ce0 72 75 63 74 28 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 20 ruct(\RecursiveIteratorIterator.
118d00 24 69 74 65 72 61 74 6f 72 2c 20 24 6d 69 6e 44 65 70 74 68 20 3d 20 30 2c 20 24 6d 61 78 44 65 $iterator,.$minDepth.=.0,.$maxDe
118d20 70 74 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 69 6e 44 pth.=.PHP_INT_MAX).{.$this->minD
118d40 65 70 74 68 20 3d 20 24 6d 69 6e 44 65 70 74 68 3b 0a 24 69 74 65 72 61 74 6f 72 2d 3e 73 65 74 epth.=.$minDepth;.$iterator->set
118d60 4d 61 78 44 65 70 74 68 28 50 48 50 5f 49 4e 54 5f 4d 41 58 20 3d 3d 3d 20 24 6d 61 78 44 65 70 MaxDepth(PHP_INT_MAX.===.$maxDep
118d80 74 68 20 3f 20 2d 31 20 3a 20 24 6d 61 78 44 65 70 74 68 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f th.?.-1.:.$maxDepth);..parent::_
118da0 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 _construct($iterator);.}.......p
118dc0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 72 65 74 75 72 6e ublic.function.accept().{.return
118de0 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 6e 65 72 49 74 65 72 61 74 6f 72 28 29 2d 3e 67 65 74 44 .$this->getInnerIterator()->getD
118e00 65 70 74 68 28 29 20 3e 3d 20 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 3b 0a 7d 0a 7d 0a 3c epth().>=.$this->minDepth;.}.}.<
118e20 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 ?php...........namespace.Symfony
118e40 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a \Component\Finder\Iterator;.....
118e60 0a 0a 63 6c 61 73 73 20 45 78 63 6c 75 64 65 44 69 72 65 63 74 6f 72 79 46 69 6c 74 65 72 49 74 ..class.ExcludeDirectoryFilterIt
118e80 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 69 6d erator.extends.FilterIterator.im
118ea0 70 6c 65 6d 65 6e 74 73 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 plements.\RecursiveIterator.{.pr
118ec0 69 76 61 74 65 20 24 69 74 65 72 61 74 6f 72 3b 0a 70 72 69 76 61 74 65 20 24 69 73 52 65 63 75 ivate.$iterator;.private.$isRecu
118ee0 72 73 69 76 65 3b 0a 70 72 69 76 61 74 65 20 24 65 78 63 6c 75 64 65 64 44 69 72 73 20 3d 20 61 rsive;.private.$excludedDirs.=.a
118f00 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e rray();.private.$excludedPattern
118f20 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 ;........public.function.__const
118f40 72 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 61 72 72 61 79 20 ruct(\Iterator.$iterator,.array.
118f60 24 64 69 72 65 63 74 6f 72 69 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 20 $directories).{.$this->iterator.
118f80 3d 20 24 69 74 65 72 61 74 6f 72 3b 0a 24 74 68 69 73 2d 3e 69 73 52 65 63 75 72 73 69 76 65 20 =.$iterator;.$this->isRecursive.
118fa0 3d 20 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 52 65 63 75 72 73 69 76 =.$iterator.instanceof.\Recursiv
118fc0 65 49 74 65 72 61 74 6f 72 3b 0a 24 70 61 74 74 65 72 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a eIterator;.$patterns.=.array();.
118fe0 66 6f 72 65 61 63 68 20 28 24 64 69 72 65 63 74 6f 72 69 65 73 20 61 73 20 24 64 69 72 65 63 74 foreach.($directories.as.$direct
119000 6f 72 79 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 52 65 63 75 72 73 69 76 65 20 7c ory).{.if.(!$this->isRecursive.|
119020 7c 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 64 69 72 65 63 74 6f 72 79 2c 20 27 |.false.!==.strpos($directory,.'
119040 2f 27 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 73 5b 5d 20 3d 20 70 72 65 67 5f 71 75 6f 74 65 28 /')).{.$patterns[].=.preg_quote(
119060 24 64 69 72 65 63 74 6f 72 79 2c 20 27 23 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 $directory,.'#');.}.else.{.$this
119080 2d 3e 65 78 63 6c 75 64 65 64 44 69 72 73 5b 24 64 69 72 65 63 74 6f 72 79 5d 20 3d 20 74 72 75 ->excludedDirs[$directory].=.tru
1190a0 65 3b 0a 7d 0a 7d 0a 69 66 20 28 24 70 61 74 74 65 72 6e 73 29 20 7b 0a 24 74 68 69 73 2d 3e 65 e;.}.}.if.($patterns).{.$this->e
1190c0 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e 20 3d 20 27 23 28 3f 3a 5e 7c 2f 29 28 3f 3a 27 2e 69 xcludedPattern.=.'#(?:^|/)(?:'.i
1190e0 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 70 61 74 74 65 72 6e 73 29 2e 27 29 28 3f 3a 2f 7c 24 29 mplode('|',.$patterns).')(?:/|$)
119100 23 27 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 #';.}..parent::__construct($iter
119120 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 ator);.}.......public.function.a
119140 63 63 65 70 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 65 63 75 72 73 69 76 65 ccept().{.if.($this->isRecursive
119160 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 64 44 69 72 73 5b 24 74 .&&.isset($this->excludedDirs[$t
119180 68 69 73 2d 3e 67 65 74 46 69 6c 65 6e 61 6d 65 28 29 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 69 his->getFilename()]).&&.$this->i
1191a0 73 44 69 72 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 24 sDir()).{.return.false;.}..if.($
1191c0 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e 29 20 7b 0a 24 70 61 74 68 20 3d this->excludedPattern).{.$path.=
1191e0 20 24 74 68 69 73 2d 3e 69 73 44 69 72 28 29 20 3f 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 .$this->isDir().?.$this->current
119200 28 29 2d 3e 67 65 74 52 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 28 29 20 3a 20 24 74 68 69 ()->getRelativePathname().:.$thi
119220 73 2d 3e 63 75 72 72 65 6e 74 28 29 2d 3e 67 65 74 52 65 6c 61 74 69 76 65 50 61 74 68 28 29 3b s->current()->getRelativePath();
119240 0a 24 70 61 74 68 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 27 2c 20 27 2f 27 2c 20 .$path.=.str_replace('\\',.'/',.
119260 24 70 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 21 70 72 65 67 5f 6d 61 74 63 68 28 24 74 68 69 $path);..return.!preg_match($thi
119280 73 2d 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 72 s->excludedPattern,.$path);.}..r
1192a0 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 eturn.true;.}..public.function.h
1192c0 61 73 43 68 69 6c 64 72 65 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 52 asChildren().{.return.$this->isR
1192e0 65 63 75 72 73 69 76 65 20 26 26 20 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 2d 3e 68 61 73 ecursive.&&.$this->iterator->has
119300 43 68 69 6c 64 72 65 6e 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 Children();.}..public.function.g
119320 65 74 43 68 69 6c 64 72 65 6e 28 29 0a 7b 0a 24 63 68 69 6c 64 72 65 6e 20 3d 20 6e 65 77 20 73 etChildren().{.$children.=.new.s
119340 65 6c 66 28 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 2d 3e 67 65 74 43 68 69 6c 64 72 65 6e elf($this->iterator->getChildren
119360 28 29 2c 20 61 72 72 61 79 28 29 29 3b 0a 24 63 68 69 6c 64 72 65 6e 2d 3e 65 78 63 6c 75 64 65 (),.array());.$children->exclude
119380 64 44 69 72 73 20 3d 20 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 64 44 69 72 73 3b 0a 24 63 68 dDirs.=.$this->excludedDirs;.$ch
1193a0 69 6c 64 72 65 6e 2d 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e 20 3d 20 24 74 68 69 73 2d ildren->excludedPattern.=.$this-
1193c0 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 63 68 69 6c 64 >excludedPattern;..return.$child
1193e0 72 65 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 ren;.}.}.<?php...........namespa
119400 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 ce.Symfony\Component\Finder\Iter
119420 61 74 6f 72 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e ator;..@trigger_error('The.'.__N
119440 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 46 69 6c 65 50 61 74 68 73 49 74 65 72 61 74 6f 72 20 63 AMESPACE__.'\FilePathsIterator.c
119460 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e lass.is.deprecated.since.version
119480 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e .2.8.and.will.be.removed.in.3.0.
1194a0 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 75 73 65 20 53 79 6d 66 ',.E_USER_DEPRECATED);..use.Symf
1194c0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 53 70 6c 46 69 6c 65 49 6e 66 6f ony\Component\Finder\SplFileInfo
1194e0 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 50 61 74 68 73 49 74 65 72 61 74 6f ;.........class.FilePathsIterato
119500 72 20 65 78 74 65 6e 64 73 20 5c 41 72 72 61 79 49 74 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 r.extends.\ArrayIterator.{....pr
119520 69 76 61 74 65 20 24 62 61 73 65 44 69 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 62 61 73 ivate.$baseDir;.....private.$bas
119540 65 44 69 72 4c 65 6e 67 74 68 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 75 62 50 61 74 68 eDirLength;.....private.$subPath
119560 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 75 62 50 61 74 68 6e 61 6d 65 3b 0a 0a 0a 0a 0a ;.....private.$subPathname;.....
119580 70 72 69 76 61 74 65 20 24 63 75 72 72 65 6e 74 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 private.$current;......public.fu
1195a0 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 70 61 74 68 73 2c nction.__construct(array.$paths,
1195c0 20 24 62 61 73 65 44 69 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 61 73 65 44 69 72 20 3d 20 24 62 .$baseDir).{.$this->baseDir.=.$b
1195e0 61 73 65 44 69 72 3b 0a 24 74 68 69 73 2d 3e 62 61 73 65 44 69 72 4c 65 6e 67 74 68 20 3d 20 73 aseDir;.$this->baseDirLength.=.s
119600 74 72 6c 65 6e 28 24 62 61 73 65 44 69 72 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 trlen($baseDir);..parent::__cons
119620 74 72 75 63 74 28 24 70 61 74 68 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 truct($paths);.}........public.f
119640 75 6e 63 74 69 6f 6e 20 5f 5f 63 61 6c 6c 28 24 6e 61 6d 65 2c 20 61 72 72 61 79 20 24 61 72 67 unction.__call($name,.array.$arg
119660 75 6d 65 6e 74 73 29 0a 7b 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f uments).{.return.call_user_func_
119680 61 72 72 61 79 28 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 2c 20 24 6e array(array($this->current(),.$n
1196a0 61 6d 65 29 2c 20 24 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ame),.$arguments);.}.......publi
1196c0 63 20 66 75 6e 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 c.function.current().{.return.$t
1196e0 68 69 73 2d 3e 63 75 72 72 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 his->current;.}.....public.funct
119700 69 6f 6e 20 6b 65 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e ion.key().{.return.$this->curren
119720 74 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 t->getPathname();.}..public.func
119740 74 69 6f 6e 20 6e 65 78 74 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 6e 65 78 74 28 29 3b 0a 24 74 tion.next().{.parent::next();.$t
119760 68 69 73 2d 3e 62 75 69 6c 64 50 72 6f 70 65 72 74 69 65 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 his->buildProperties();.}..publi
119780 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 72 65 c.function.rewind().{.parent::re
1197a0 77 69 6e 64 28 29 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 50 72 6f 70 65 72 74 69 65 73 28 29 wind();.$this->buildProperties()
1197c0 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 62 50 61 ;.}.....public.function.getSubPa
1197e0 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 3b 0a 7d 0a th().{.return.$this->subPath;.}.
119800 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 62 50 61 74 68 6e 61 ....public.function.getSubPathna
119820 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 6e 61 6d 65 me().{.return.$this->subPathname
119840 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 50 72 6f 70 65 ;.}..private.function.buildPrope
119860 72 74 69 65 73 28 29 0a 7b 0a 24 61 62 73 6f 6c 75 74 65 50 61 74 68 20 3d 20 70 61 72 65 6e 74 rties().{.$absolutePath.=.parent
119880 3a 3a 63 75 72 72 65 6e 74 28 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 62 61 73 65 44 69 72 ::current();..if.($this->baseDir
1198a0 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 61 62 73 6f 6c 75 74 65 50 61 74 68 2c 20 30 2c 20 24 74 .===.substr($absolutePath,.0,.$t
1198c0 68 69 73 2d 3e 62 61 73 65 44 69 72 4c 65 6e 67 74 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 75 his->baseDirLength)).{.$this->su
1198e0 62 50 61 74 68 6e 61 6d 65 20 3d 20 6c 74 72 69 6d 28 73 75 62 73 74 72 28 24 61 62 73 6f 6c 75 bPathname.=.ltrim(substr($absolu
119900 74 65 50 61 74 68 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 44 69 72 4c 65 6e 67 74 68 29 2c 20 27 tePath,.$this->baseDirLength),.'
119920 2f 5c 5c 27 29 3b 0a 24 64 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 24 74 68 69 73 2d 3e 73 75 62 /\\');.$dir.=.dirname($this->sub
119940 50 61 74 68 6e 61 6d 65 29 3b 0a 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 20 3d 20 27 2e 27 20 Pathname);.$this->subPath.=.'.'.
119960 3d 3d 3d 20 24 64 69 72 20 3f 20 27 27 20 3a 20 24 64 69 72 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 ===.$dir.?.''.:.$dir;.}.else.{.$
119980 74 68 69 73 2d 3e 73 75 62 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 6e 61 this->subPath.=.$this->subPathna
1199a0 6d 65 20 3d 20 27 27 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 20 3d 20 6e 65 77 me.=.'';.}..$this->current.=.new
1199c0 20 53 70 6c 46 69 6c 65 49 6e 66 6f 28 70 61 72 65 6e 74 3a 3a 63 75 72 72 65 6e 74 28 29 2c 20 .SplFileInfo(parent::current(),.
1199e0 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 2c 20 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 6e 61 $this->subPath,.$this->subPathna
119a00 6d 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 me);.}.}.<?php...........namespa
119a20 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 ce.Symfony\Component\Finder\Iter
119a40 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 ator;.......class.FileTypeFilter
119a60 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a Iterator.extends.FilterIterator.
119a80 7b 0a 63 6f 6e 73 74 20 4f 4e 4c 59 5f 46 49 4c 45 53 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 4f 4e {.const.ONLY_FILES.=.1;.const.ON
119aa0 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 3d 20 32 3b 0a 0a 70 72 69 76 61 74 65 20 24 6d 6f LY_DIRECTORIES.=.2;..private.$mo
119ac0 64 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e de;........public.function.__con
119ae0 73 74 72 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 24 6d 6f 64 struct(\Iterator.$iterator,.$mod
119b00 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d 6f 64 65 3b 0a 0a 70 61 72 65 6e e).{.$this->mode.=.$mode;..paren
119b20 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a t::__construct($iterator);.}....
119b40 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 24 66 ...public.function.accept().{.$f
119b60 69 6c 65 69 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 69 66 20 28 ileinfo.=.$this->current();.if.(
119b80 73 65 6c 66 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 3d 3d 3d 20 28 73 65 6c 66 self::ONLY_DIRECTORIES.===.(self
119ba0 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 ::ONLY_DIRECTORIES.&.$this->mode
119bc0 29 20 26 26 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 72 65 74 75 ).&&.$fileinfo->isFile()).{.retu
119be0 72 6e 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 4f 4e 4c 59 5f 46 rn.false;.}.elseif.(self::ONLY_F
119c00 49 4c 45 53 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 4f 4e 4c 59 5f 46 49 4c 45 53 20 26 20 24 74 68 ILES.===.(self::ONLY_FILES.&.$th
119c20 69 73 2d 3e 6d 6f 64 65 29 20 26 26 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 69 73 44 69 72 28 29 29 is->mode).&&.$fileinfo->isDir())
119c40 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b .{.return.false;.}..return.true;
119c60 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 .}.}.<?php...........namespace.S
119c80 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 ymfony\Component\Finder\Iterator
119ca0 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 63 6f 6e 74 65 6e 74 46 69 6c 74 65 72 ;........class.FilecontentFilter
119cc0 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 4d 75 6c 74 69 70 6c 65 50 63 72 65 46 69 6c Iterator.extends.MultiplePcreFil
119ce0 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 terIterator.{......public.functi
119d00 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 on.accept().{.if.(!$this->matchR
119d20 65 67 65 78 70 73 20 26 26 20 21 24 74 68 69 73 2d 3e 6e 6f 4d 61 74 63 68 52 65 67 65 78 70 73 egexps.&&.!$this->noMatchRegexps
119d40 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 66 69 6c 65 69 6e 66 6f 20 3d 20 ).{.return.true;.}..$fileinfo.=.
119d60 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 0a 69 66 20 28 24 66 69 6c 65 69 6e 66 6f $this->current();..if.($fileinfo
119d80 2d 3e 69 73 44 69 72 28 29 20 7c 7c 20 21 24 66 69 6c 65 69 6e 66 6f 2d 3e 69 73 52 65 61 64 61 ->isDir().||.!$fileinfo->isReada
119da0 62 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 63 6f 6e 74 65 ble()).{.return.false;.}..$conte
119dc0 6e 74 20 3d 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 29 3b 0a 69 nt.=.$fileinfo->getContents();.i
119de0 66 20 28 21 24 63 6f 6e 74 65 6e 74 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a f.(!$content).{.return.false;.}.
119e00 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 41 63 63 65 70 74 65 64 28 24 63 6f 6e 74 65 .return.$this->isAccepted($conte
119e20 6e 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f nt);.}.........protected.functio
119e40 6e 20 74 6f 52 65 67 65 78 28 24 73 74 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e n.toRegex($str).{.return.$this->
119e60 69 73 52 65 67 65 78 28 24 73 74 72 29 20 3f 20 24 73 74 72 20 3a 20 27 2f 27 2e 70 72 65 67 5f isRegex($str).?.$str.:.'/'.preg_
119e80 71 75 6f 74 65 28 24 73 74 72 2c 20 27 2f 27 29 2e 27 2f 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a quote($str,.'/').'/';.}.}.<?php.
119ea0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 ..........namespace.Symfony\Comp
119ec0 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 onent\Finder\Iterator;..use.Symf
119ee0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 47 6c 6f 62 3b 0a 0a 0a 0a 0a 0a ony\Component\Finder\Glob;......
119f00 0a 63 6c 61 73 73 20 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 .class.FilenameFilterIterator.ex
119f20 74 65 6e 64 73 20 4d 75 6c 74 69 70 6c 65 50 63 72 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 tends.MultiplePcreFilterIterator
119f40 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 .{......public.function.accept()
119f60 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 41 63 63 65 70 74 65 64 28 24 74 68 69 .{.return.$this->isAccepted($thi
119f80 73 2d 3e 63 75 72 72 65 6e 74 28 29 2d 3e 67 65 74 46 69 6c 65 6e 61 6d 65 28 29 29 3b 0a 7d 0a s->current()->getFilename());.}.
119fa0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 6f ...........protected.function.to
119fc0 52 65 67 65 78 28 24 73 74 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 52 65 Regex($str).{.return.$this->isRe
119fe0 67 65 78 28 24 73 74 72 29 20 3f 20 24 73 74 72 20 3a 20 47 6c 6f 62 3a 3a 74 6f 52 65 67 65 78 gex($str).?.$str.:.Glob::toRegex
11a000 28 24 73 74 72 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 ($str);.}.}.<?php...........name
11a020 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 space.Symfony\Component\Finder\I
11a040 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 terator;.........abstract.class.
11a060 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 72 49 74 FilterIterator.extends.\FilterIt
11a080 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 erator.{.......public.function.r
11a0a0 65 77 69 6e 64 28 29 0a 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 24 74 68 69 73 3b 0a 77 68 69 ewind().{.$iterator.=.$this;.whi
11a0c0 6c 65 20 28 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 4f 75 74 65 72 49 le.($iterator.instanceof.\OuterI
11a0e0 74 65 72 61 74 6f 72 29 20 7b 0a 24 69 6e 6e 65 72 49 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 terator).{.$innerIterator.=.$ite
11a100 72 61 74 6f 72 2d 3e 67 65 74 49 6e 6e 65 72 49 74 65 72 61 74 6f 72 28 29 3b 0a 0a 69 66 20 28 rator->getInnerIterator();..if.(
11a120 24 69 6e 6e 65 72 49 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 65 63 75 72 73 $innerIterator.instanceof.Recurs
11a140 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 29 20 7b 0a 69 66 20 28 24 69 6e 6e iveDirectoryIterator).{.if.($inn
11a160 65 72 49 74 65 72 61 74 6f 72 2d 3e 69 73 52 65 77 69 6e 64 61 62 6c 65 28 29 29 20 7b 0a 24 69 erIterator->isRewindable()).{.$i
11a180 6e 6e 65 72 49 74 65 72 61 74 6f 72 2d 3e 6e 65 78 74 28 29 3b 0a 24 69 6e 6e 65 72 49 74 65 72 nnerIterator->next();.$innerIter
11a1a0 61 74 6f 72 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 74 65 ator->rewind();.}.}.elseif.($ite
11a1c0 72 61 74 6f 72 2d 3e 67 65 74 49 6e 6e 65 72 49 74 65 72 61 74 6f 72 28 29 20 69 6e 73 74 61 6e rator->getInnerIterator().instan
11a1e0 63 65 6f 66 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 29 20 7b 0a 24 69 74 65 ceof.\FilesystemIterator).{.$ite
11a200 72 61 74 6f 72 2d 3e 67 65 74 49 6e 6e 65 72 49 74 65 72 61 74 6f 72 28 29 2d 3e 6e 65 78 74 28 rator->getInnerIterator()->next(
11a220 29 3b 0a 24 69 74 65 72 61 74 6f 72 2d 3e 67 65 74 49 6e 6e 65 72 49 74 65 72 61 74 6f 72 28 29 );.$iterator->getInnerIterator()
11a240 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 72 61 ->rewind();.}.$iterator.=.$itera
11a260 74 6f 72 2d 3e 67 65 74 49 6e 6e 65 72 49 74 65 72 61 74 6f 72 28 29 3b 0a 7d 0a 0a 70 61 72 65 tor->getInnerIterator();.}..pare
11a280 6e 74 3a 3a 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a nt::rewind();.}.}.<?php.........
11a2a0 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 ..namespace.Symfony\Component\Fi
11a2c0 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c nder\Iterator;.......abstract.cl
11a2e0 61 73 73 20 4d 75 6c 74 69 70 6c 65 50 63 72 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 ass.MultiplePcreFilterIterator.e
11a300 78 74 65 6e 64 73 20 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 6f 74 65 63 74 65 xtends.FilterIterator.{.protecte
11a320 64 20 24 6d 61 74 63 68 52 65 67 65 78 70 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 d.$matchRegexps.=.array();.prote
11a340 63 74 65 64 20 24 6e 6f 4d 61 74 63 68 52 65 67 65 78 70 73 20 3d 20 61 72 72 61 79 28 29 3b 0a cted.$noMatchRegexps.=.array();.
11a360 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 ........public.function.__constr
11a380 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 61 72 72 61 79 20 24 uct(\Iterator.$iterator,.array.$
11a3a0 6d 61 74 63 68 50 61 74 74 65 72 6e 73 2c 20 61 72 72 61 79 20 24 6e 6f 4d 61 74 63 68 50 61 74 matchPatterns,.array.$noMatchPat
11a3c0 74 65 72 6e 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 68 50 61 74 74 65 72 6e 73 terns).{.foreach.($matchPatterns
11a3e0 20 61 73 20 24 70 61 74 74 65 72 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 65 .as.$pattern).{.$this->matchRege
11a400 78 70 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 74 6f 52 65 67 65 78 28 24 70 61 74 74 65 72 6e 29 xps[].=.$this->toRegex($pattern)
11a420 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 6f 4d 61 74 63 68 50 61 74 74 65 72 6e 73 20 61 ;.}..foreach.($noMatchPatterns.a
11a440 73 20 24 70 61 74 74 65 72 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f 4d 61 74 63 68 52 65 67 65 s.$pattern).{.$this->noMatchRege
11a460 78 70 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 74 6f 52 65 67 65 78 28 24 70 61 74 74 65 72 6e 29 xps[].=.$this->toRegex($pattern)
11a480 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 61 74 ;.}..parent::__construct($iterat
11a4a0 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e or);.}.............protected.fun
11a4c0 63 74 69 6f 6e 20 69 73 41 63 63 65 70 74 65 64 28 24 73 74 72 69 6e 67 29 0a 7b 0a 0a 20 66 6f ction.isAccepted($string).{...fo
11a4e0 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6e 6f 4d 61 74 63 68 52 65 67 65 78 70 73 20 61 73 20 reach.($this->noMatchRegexps.as.
11a500 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 67 65 78 2c $regex).{.if.(preg_match($regex,
11a520 20 24 73 74 72 69 6e 67 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a .$string)).{.return.false;.}.}..
11a540 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 29 20 7b 0a 66 6f 72 ..if.($this->matchRegexps).{.for
11a560 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 20 61 73 20 24 72 65 each.($this->matchRegexps.as.$re
11a580 67 65 78 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 67 65 78 2c 20 24 73 gex).{.if.(preg_match($regex,.$s
11a5a0 74 72 69 6e 67 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 tring)).{.return.true;.}.}..retu
11a5c0 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a rn.false;.}....return.true;.}...
11a5e0 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 65 67 65 78 ......protected.function.isRegex
11a600 28 24 73 74 72 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 2e 7b 33 2c ($str).{.if.(preg_match('/^(.{3,
11a620 7d 3f 29 5b 69 6d 73 78 75 41 44 55 5d 2a 24 2f 27 2c 20 24 73 74 72 2c 20 24 6d 29 29 20 7b 0a }?)[imsxuADU]*$/',.$str,.$m)).{.
11a640 24 73 74 61 72 74 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 30 2c 20 31 29 3b 0a 24 65 $start.=.substr($m[1],.0,.1);.$e
11a660 6e 64 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 2d 31 29 3b 0a 0a 69 66 20 28 24 73 74 nd.=.substr($m[1],.-1);..if.($st
11a680 61 72 74 20 3d 3d 3d 20 24 65 6e 64 29 20 7b 0a 72 65 74 75 72 6e 20 21 70 72 65 67 5f 6d 61 74 art.===.$end).{.return.!preg_mat
11a6a0 63 68 28 27 2f 5b 2a 3f 5b 3a 61 6c 6e 75 6d 3a 5d 20 5c 5c 5c 5c 5d 2f 27 2c 20 24 73 74 61 72 ch('/[*?[:alnum:].\\\\]/',.$star
11a6c0 74 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 61 72 72 61 79 28 27 7b 27 2c t);.}..foreach.(array(array('{',
11a6e0 20 27 7d 27 29 2c 20 61 72 72 61 79 28 27 28 27 2c 20 27 29 27 29 2c 20 61 72 72 61 79 28 27 5b .'}'),.array('(',.')'),.array('[
11a700 27 2c 20 27 5d 27 29 2c 20 61 72 72 61 79 28 27 3c 27 2c 20 27 3e 27 29 29 20 61 73 20 24 64 65 ',.']'),.array('<',.'>')).as.$de
11a720 6c 69 6d 69 74 65 72 73 29 20 7b 0a 69 66 20 28 24 73 74 61 72 74 20 3d 3d 3d 20 24 64 65 6c 69 limiters).{.if.($start.===.$deli
11a740 6d 69 74 65 72 73 5b 30 5d 20 26 26 20 24 65 6e 64 20 3d 3d 3d 20 24 64 65 6c 69 6d 69 74 65 72 miters[0].&&.$end.===.$delimiter
11a760 73 5b 31 5d 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 s[1]).{.return.true;.}.}.}..retu
11a780 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f rn.false;.}.........abstract.pro
11a7a0 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 6f 52 65 67 65 78 28 24 73 74 72 29 3b 0a 7d tected.function.toRegex($str);.}
11a7c0 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f .<?php...........namespace.Symfo
11a7e0 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a ny\Component\Finder\Iterator;...
11a800 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 74 68 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 .....class.PathFilterIterator.ex
11a820 74 65 6e 64 73 20 4d 75 6c 74 69 70 6c 65 50 63 72 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 tends.MultiplePcreFilterIterator
11a840 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 .{......public.function.accept()
11a860 0a 7b 0a 24 66 69 6c 65 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 2d .{.$filename.=.$this->current()-
11a880 3e 67 65 74 52 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 28 29 3b 0a 0a 69 66 20 28 27 5c 5c >getRelativePathname();..if.('\\
11a8a0 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 24 66 69 '.===.DIRECTORY_SEPARATOR).{.$fi
11a8c0 6c 65 6e 61 6d 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 27 2c 20 27 2f 27 2c 20 lename.=.str_replace('\\',.'/',.
11a8e0 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 41 $filename);.}..return.$this->isA
11a900 63 63 65 70 74 65 64 28 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ccepted($filename);.}...........
11a920 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 6f 52 65 67 65 78 28 .....protected.function.toRegex(
11a940 24 73 74 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 52 65 67 65 78 28 24 73 $str).{.return.$this->isRegex($s
11a960 74 72 29 20 3f 20 24 73 74 72 20 3a 20 27 2f 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 73 74 72 tr).?.$str.:.'/'.preg_quote($str
11a980 2c 20 27 2f 27 29 2e 27 2f 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ,.'/').'/';.}.}.<?php...........
11a9a0 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 namespace.Symfony\Component\Find
11a9c0 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e er\Iterator;..use.Symfony\Compon
11a9e0 65 6e 74 5c 46 69 6e 64 65 72 5c 45 78 63 65 70 74 69 6f 6e 5c 41 63 63 65 73 73 44 65 6e 69 65 ent\Finder\Exception\AccessDenie
11aa00 64 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e dException;.use.Symfony\Componen
11aa20 74 5c 46 69 6e 64 65 72 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 t\Finder\SplFileInfo;.......clas
11aa40 73 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 20 65 78 74 s.RecursiveDirectoryIterator.ext
11aa60 65 6e 64 73 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 ends.\RecursiveDirectoryIterator
11aa80 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 .{....private.$ignoreUnreadableD
11aaa0 69 72 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 65 77 69 6e 64 61 62 6c 65 3b 0a 0a 0a irs;.....private.$rewindable;...
11aac0 20 70 72 69 76 61 74 65 20 24 72 6f 6f 74 50 61 74 68 3b 0a 70 72 69 76 61 74 65 20 24 73 75 62 .private.$rootPath;.private.$sub
11aae0 50 61 74 68 3b 0a 70 72 69 76 61 74 65 20 24 64 69 72 65 63 74 6f 72 79 53 65 70 61 72 61 74 6f Path;.private.$directorySeparato
11ab00 72 20 3d 20 27 2f 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 r.=.'/';...........public.functi
11ab20 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 74 68 2c 20 24 66 6c 61 67 73 2c 20 24 69 on.__construct($path,.$flags,.$i
11ab40 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 gnoreUnreadableDirs.=.false).{.i
11ab60 66 20 28 24 66 6c 61 67 73 20 26 20 28 73 65 6c 66 3a 3a 43 55 52 52 45 4e 54 5f 41 53 5f 50 41 f.($flags.&.(self::CURRENT_AS_PA
11ab80 54 48 4e 41 4d 45 20 7c 20 73 65 6c 66 3a 3a 43 55 52 52 45 4e 54 5f 41 53 5f 53 45 4c 46 29 29 THNAME.|.self::CURRENT_AS_SELF))
11aba0 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 .{.throw.new.\RuntimeException('
11abc0 54 68 69 73 20 69 74 65 72 61 74 6f 72 20 6f 6e 6c 79 20 73 75 70 70 6f 72 74 20 72 65 74 75 72 This.iterator.only.support.retur
11abe0 6e 69 6e 67 20 63 75 72 72 65 6e 74 20 61 73 20 66 69 6c 65 69 6e 66 6f 2e 27 29 3b 0a 7d 0a 0a ning.current.as.fileinfo.');.}..
11ac00 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 74 68 2c 20 24 66 6c 61 67 parent::__construct($path,.$flag
11ac20 73 29 3b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 20 s);.$this->ignoreUnreadableDirs.
11ac40 3d 20 24 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 3b 0a 24 74 68 69 73 2d 3e =.$ignoreUnreadableDirs;.$this->
11ac60 72 6f 6f 74 50 61 74 68 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 74 68 3b 0a 69 66 20 28 27 rootPath.=.(string).$path;.if.('
11ac80 2f 27 20 21 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 26 26 20 21 28 /'.!==.DIRECTORY_SEPARATOR.&&.!(
11aca0 24 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 55 4e 49 58 5f 50 41 54 48 53 29 29 20 7b 0a 24 74 $flags.&.self::UNIX_PATHS)).{.$t
11acc0 68 69 73 2d 3e 64 69 72 65 63 74 6f 72 79 53 65 70 61 72 61 74 6f 72 20 3d 20 44 49 52 45 43 54 his->directorySeparator.=.DIRECT
11ace0 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ORY_SEPARATOR;.}.}.......public.
11ad00 66 75 6e 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 28 29 0a 7b 0a 0a 0a 69 66 20 28 6e 75 6c 6c 20 function.current().{...if.(null.
11ad20 3d 3d 3d 20 24 73 75 62 50 61 74 68 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 73 75 62 50 61 74 ===.$subPathname.=.$this->subPat
11ad40 68 29 20 7b 0a 24 73 75 62 50 61 74 68 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 73 75 62 50 61 h).{.$subPathname.=.$this->subPa
11ad60 74 68 20 3d 20 28 73 74 72 69 6e 67 29 20 24 74 68 69 73 2d 3e 67 65 74 53 75 62 50 61 74 68 28 th.=.(string).$this->getSubPath(
11ad80 29 3b 0a 7d 0a 69 66 20 28 27 27 20 21 3d 3d 20 24 73 75 62 50 61 74 68 6e 61 6d 65 29 20 7b 0a );.}.if.(''.!==.$subPathname).{.
11ada0 24 73 75 62 50 61 74 68 6e 61 6d 65 20 2e 3d 20 24 74 68 69 73 2d 3e 64 69 72 65 63 74 6f 72 79 $subPathname..=.$this->directory
11adc0 53 65 70 61 72 61 74 6f 72 3b 0a 7d 0a 24 73 75 62 50 61 74 68 6e 61 6d 65 20 2e 3d 20 24 74 68 Separator;.}.$subPathname..=.$th
11ade0 69 73 2d 3e 67 65 74 46 69 6c 65 6e 61 6d 65 28 29 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 53 is->getFilename();..return.new.S
11ae00 70 6c 46 69 6c 65 49 6e 66 6f 28 24 74 68 69 73 2d 3e 72 6f 6f 74 50 61 74 68 2e 24 74 68 69 73 plFileInfo($this->rootPath.$this
11ae20 2d 3e 64 69 72 65 63 74 6f 72 79 53 65 70 61 72 61 74 6f 72 2e 24 73 75 62 50 61 74 68 6e 61 6d ->directorySeparator.$subPathnam
11ae40 65 2c 20 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 2c 20 24 73 75 62 50 61 74 68 6e 61 6d 65 29 e,.$this->subPath,.$subPathname)
11ae60 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 68 69 ;.}.......public.function.getChi
11ae80 6c 64 72 65 6e 28 29 0a 7b 0a 74 72 79 20 7b 0a 24 63 68 69 6c 64 72 65 6e 20 3d 20 70 61 72 65 ldren().{.try.{.$children.=.pare
11aea0 6e 74 3a 3a 67 65 74 43 68 69 6c 64 72 65 6e 28 29 3b 0a 0a 69 66 20 28 24 63 68 69 6c 64 72 65 nt::getChildren();..if.($childre
11aec0 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 73 65 6c 66 29 20 7b 0a 0a 20 24 63 68 69 6c 64 72 65 6e n.instanceof.self).{...$children
11aee0 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 20 3d 20 24 74 68 69 73 2d 3e ->ignoreUnreadableDirs.=.$this->
11af00 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 3b 0a 0a 0a 20 24 63 68 69 6c 64 72 ignoreUnreadableDirs;....$childr
11af20 65 6e 2d 3e 72 65 77 69 6e 64 61 62 6c 65 20 3d 20 26 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 61 en->rewindable.=.&$this->rewinda
11af40 62 6c 65 3b 0a 24 63 68 69 6c 64 72 65 6e 2d 3e 72 6f 6f 74 50 61 74 68 20 3d 20 24 74 68 69 73 ble;.$children->rootPath.=.$this
11af60 2d 3e 72 6f 6f 74 50 61 74 68 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 68 69 6c 64 72 65 6e 3b ->rootPath;.}..return.$children;
11af80 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 .}.catch.(\UnexpectedValueExcept
11afa0 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 ion.$e).{.if.($this->ignoreUnrea
11afc0 64 61 62 6c 65 44 69 72 73 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 6e 65 77 20 5c 52 65 63 75 72 dableDirs).{...return.new.\Recur
11afe0 73 69 76 65 41 72 72 61 79 49 74 65 72 61 74 6f 72 28 61 72 72 61 79 28 29 29 3b 0a 7d 20 65 6c siveArrayIterator(array());.}.el
11b000 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 41 63 63 65 73 73 44 65 6e 69 65 64 45 78 63 65 70 se.{.throw.new.AccessDeniedExcep
11b020 74 69 6f 6e 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 24 65 2d 3e 67 65 74 43 6f tion($e->getMessage(),.$e->getCo
11b040 64 65 28 29 2c 20 24 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 de(),.$e);.}.}.}.....public.func
11b060 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 74 tion.rewind().{.if.(false.===.$t
11b080 68 69 73 2d 3e 69 73 52 65 77 69 6e 64 61 62 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d his->isRewindable()).{.return;.}
11b0a0 0a 0a 0a 20 70 61 72 65 6e 74 3a 3a 6e 65 78 74 28 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 72 65 77 ....parent::next();..parent::rew
11b0c0 69 6e 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 ind();.}.......public.function.i
11b0e0 73 52 65 77 69 6e 64 61 62 6c 65 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 sRewindable().{.if.(null.!==.$th
11b100 69 73 2d 3e 72 65 77 69 6e 64 61 62 6c 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e is->rewindable).{.return.$this->
11b120 72 65 77 69 6e 64 61 62 6c 65 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 73 74 rewindable;.}..if.(false.!==.$st
11b140 72 65 61 6d 20 3d 20 40 6f 70 65 6e 64 69 72 28 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 28 29 ream.=.@opendir($this->getPath()
11b160 29 29 20 7b 0a 24 69 6e 66 6f 73 20 3d 20 73 74 72 65 61 6d 5f 67 65 74 5f 6d 65 74 61 5f 64 61 )).{.$infos.=.stream_get_meta_da
11b180 74 61 28 24 73 74 72 65 61 6d 29 3b 0a 63 6c 6f 73 65 64 69 72 28 24 73 74 72 65 61 6d 29 3b 0a ta($stream);.closedir($stream);.
11b1a0 0a 69 66 20 28 24 69 6e 66 6f 73 5b 27 73 65 65 6b 61 62 6c 65 27 5d 29 20 7b 0a 72 65 74 75 72 .if.($infos['seekable']).{.retur
11b1c0 6e 20 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 61 62 6c 65 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a n.$this->rewindable.=.true;.}.}.
11b1e0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 61 62 6c 65 20 3d 20 66 61 6c 73 .return.$this->rewindable.=.fals
11b200 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 e;.}.}.<?php...........namespace
11b220 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 .Symfony\Component\Finder\Iterat
11b240 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 or;..use.Symfony\Component\Finde
11b260 72 5c 43 6f 6d 70 61 72 61 74 6f 72 5c 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 3b 0a 0a r\Comparator\NumberComparator;..
11b280 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 69 7a 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 .....class.SizeRangeFilterIterat
11b2a0 6f 72 20 65 78 74 65 6e 64 73 20 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 69 76 or.extends.FilterIterator.{.priv
11b2c0 61 74 65 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a ate.$comparators.=.array();.....
11b2e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 5c ...public.function.__construct(\
11b300 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 61 72 72 61 79 20 24 63 6f 6d 70 61 Iterator.$iterator,.array.$compa
11b320 72 61 74 6f 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 61 72 61 74 6f 72 73 20 3d 20 24 rators).{.$this->comparators.=.$
11b340 63 6f 6d 70 61 72 61 74 6f 72 73 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 comparators;..parent::__construc
11b360 74 28 24 69 74 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e t($iterator);.}.......public.fun
11b380 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 24 66 69 6c 65 69 6e 66 6f 20 3d 20 24 74 68 ction.accept().{.$fileinfo.=.$th
11b3a0 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 69 66 20 28 21 24 66 69 6c 65 69 6e 66 6f 2d 3e 69 is->current();.if.(!$fileinfo->i
11b3c0 73 46 69 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 66 69 6c 65 sFile()).{.return.true;.}..$file
11b3e0 73 69 7a 65 20 3d 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 53 69 7a 65 28 29 3b 0a 66 6f 72 size.=.$fileinfo->getSize();.for
11b400 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 70 61 72 61 74 6f 72 73 20 61 73 20 24 63 6f 6d each.($this->comparators.as.$com
11b420 70 61 72 65 29 20 7b 0a 69 66 20 28 21 24 63 6f 6d 70 61 72 65 2d 3e 74 65 73 74 28 24 66 69 6c pare).{.if.(!$compare->test($fil
11b440 65 73 69 7a 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 esize)).{.return.false;.}.}..ret
11b460 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 urn.true;.}.}.<?php...........na
11b480 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 mespace.Symfony\Component\Finder
11b4a0 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 6f 72 74 61 62 6c 65 49 \Iterator;.......class.SortableI
11b4c0 74 65 72 61 74 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f 72 41 67 67 72 terator.implements.\IteratorAggr
11b4e0 65 67 61 74 65 0a 7b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 5f 4e 41 4d 45 20 3d 20 31 3b 0a egate.{.const.SORT_BY_NAME.=.1;.
11b500 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 5f 54 59 50 45 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 53 4f const.SORT_BY_TYPE.=.2;.const.SO
11b520 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 20 3d 20 33 3b 0a 63 6f 6e 73 74 20 53 RT_BY_ACCESSED_TIME.=.3;.const.S
11b540 4f 52 54 5f 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d 45 20 3d 20 34 3b 0a 63 6f 6e 73 74 20 53 ORT_BY_CHANGED_TIME.=.4;.const.S
11b560 4f 52 54 5f 42 59 5f 4d 4f 44 49 46 49 45 44 5f 54 49 4d 45 20 3d 20 35 3b 0a 0a 70 72 69 76 61 ORT_BY_MODIFIED_TIME.=.5;..priva
11b580 74 65 20 24 69 74 65 72 61 74 6f 72 3b 0a 70 72 69 76 61 74 65 20 24 73 6f 72 74 3b 0a 0a 0a 0a te.$iterator;.private.$sort;....
11b5a0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ......public.function.__construc
11b5c0 74 28 5c 54 72 61 76 65 72 73 61 62 6c 65 20 24 69 74 65 72 61 74 6f 72 2c 20 24 73 6f 72 74 29 t(\Traversable.$iterator,.$sort)
11b5e0 0a 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 72 61 74 6f 72 3b 0a .{.$this->iterator.=.$iterator;.
11b600 0a 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 5f 4e 41 4d 45 20 3d 3d 3d 20 24 73 6f 72 .if.(self::SORT_BY_NAME.===.$sor
11b620 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c t).{.$this->sort.=.function.($a,
11b640 20 24 62 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 63 6d 70 28 24 61 2d 3e 67 65 74 52 65 61 6c .$b).{.return.strcmp($a->getReal
11b660 70 61 74 68 28 29 2c 20 24 62 2d 3e 67 65 74 52 65 61 6c 70 61 74 68 28 29 29 3b 0a 7d 3b 0a 7d path(),.$b->getRealpath());.};.}
11b680 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 5f 54 59 50 45 20 3d 3d 3d 20 .elseif.(self::SORT_BY_TYPE.===.
11b6a0 24 73 6f 72 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 $sort).{.$this->sort.=.function.
11b6c0 28 24 61 2c 20 24 62 29 20 7b 0a 69 66 20 28 24 61 2d 3e 69 73 44 69 72 28 29 20 26 26 20 24 62 ($a,.$b).{.if.($a->isDir().&&.$b
11b6e0 2d 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 0a 7d 20 65 6c 73 65 69 ->isFile()).{.return.-1;.}.elsei
11b700 66 20 28 24 61 2d 3e 69 73 46 69 6c 65 28 29 20 26 26 20 24 62 2d 3e 69 73 44 69 72 28 29 29 20 f.($a->isFile().&&.$b->isDir()).
11b720 7b 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 72 63 6d 70 28 24 61 2d {.return.1;.}..return.strcmp($a-
11b740 3e 67 65 74 52 65 61 6c 70 61 74 68 28 29 2c 20 24 62 2d 3e 67 65 74 52 65 61 6c 70 61 74 68 28 >getRealpath(),.$b->getRealpath(
11b760 29 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 5f 41 ));.};.}.elseif.(self::SORT_BY_A
11b780 43 43 45 53 53 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 74 29 20 7b 0a 24 74 68 69 73 2d CCESSED_TIME.===.$sort).{.$this-
11b7a0 3e 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 72 65 74 75 >sort.=.function.($a,.$b).{.retu
11b7c0 72 6e 20 24 61 2d 3e 67 65 74 41 54 69 6d 65 28 29 20 2d 20 24 62 2d 3e 67 65 74 41 54 69 6d 65 rn.$a->getATime().-.$b->getATime
11b7e0 28 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 5f 43 ();.};.}.elseif.(self::SORT_BY_C
11b800 48 41 4e 47 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 74 29 20 7b 0a 24 74 68 69 73 2d 3e HANGED_TIME.===.$sort).{.$this->
11b820 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 72 65 74 75 72 sort.=.function.($a,.$b).{.retur
11b840 6e 20 24 61 2d 3e 67 65 74 43 54 69 6d 65 28 29 20 2d 20 24 62 2d 3e 67 65 74 43 54 69 6d 65 28 n.$a->getCTime().-.$b->getCTime(
11b860 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 5f 4d 4f );.};.}.elseif.(self::SORT_BY_MO
11b880 44 49 46 49 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 74 29 20 7b 0a 24 74 68 69 73 2d 3e DIFIED_TIME.===.$sort).{.$this->
11b8a0 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 72 65 74 75 72 sort.=.function.($a,.$b).{.retur
11b8c0 6e 20 24 61 2d 3e 67 65 74 4d 54 69 6d 65 28 29 20 2d 20 24 62 2d 3e 67 65 74 4d 54 69 6d 65 28 n.$a->getMTime().-.$b->getMTime(
11b8e0 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 63 61 6c 6c 61 62 6c 65 28 24 73 6f 72 );.};.}.elseif.(is_callable($sor
11b900 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 24 73 6f 72 74 3b 0a 7d 20 65 6c 73 t)).{.$this->sort.=.$sort;.}.els
11b920 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 e.{.throw.new.\InvalidArgumentEx
11b940 63 65 70 74 69 6f 6e 28 27 54 68 65 20 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 20 74 61 ception('The.SortableIterator.ta
11b960 6b 65 73 20 61 20 50 48 50 20 63 61 6c 6c 61 62 6c 65 20 6f 72 20 61 20 76 61 6c 69 64 20 62 75 kes.a.PHP.callable.or.a.valid.bu
11b980 69 6c 74 2d 69 6e 20 73 6f 72 74 20 61 6c 67 6f 72 69 74 68 6d 20 61 73 20 61 6e 20 61 72 67 75 ilt-in.sort.algorithm.as.an.argu
11b9a0 6d 65 6e 74 2e 27 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 ment.');.}.}..public.function.ge
11b9c0 74 49 74 65 72 61 74 6f 72 28 29 0a 7b 0a 24 61 72 72 61 79 20 3d 20 69 74 65 72 61 74 6f 72 5f tIterator().{.$array.=.iterator_
11b9e0 74 6f 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 2c 20 74 72 75 65 29 3b to_array($this->iterator,.true);
11ba00 0a 75 61 73 6f 72 74 28 24 61 72 72 61 79 2c 20 24 74 68 69 73 2d 3e 73 6f 72 74 29 3b 0a 0a 72 .uasort($array,.$this->sort);..r
11ba20 65 74 75 72 6e 20 6e 65 77 20 5c 41 72 72 61 79 49 74 65 72 61 74 6f 72 28 24 61 72 72 61 79 29 eturn.new.\ArrayIterator($array)
11ba40 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 30 34 2d 32 30 31 36 20 46 61 ;.}.}.Copyright.(c).2004-2016.Fa
11ba60 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 0a 0a 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 bien.Potencier..Permission.is.he
11ba80 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f reby.granted,.free.of.charge,.to
11baa0 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 6f 66 20 .any.person.obtaining.a.copy.of.
11bac0 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 6f 63 this.software.and.associated.doc
11bae0 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 65 22 umentation.files.(the."Software"
11bb00 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 68 6f ),.to.deal.in.the.Software.witho
11bb20 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 6f 75 ut.restriction,.including.withou
11bb40 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 74 6f 20 75 73 65 2c 20 t.limitation.the.rights.to.use,.
11bb60 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 2c 20 64 69 copy,.modify,.merge,.publish,.di
11bb80 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 20 73 65 6c stribute,.sublicense,.and/or.sel
11bba0 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 74 6f l.copies.of.the.Software,.and.to
11bbc0 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 53 6f 66 74 .permit.persons.to.whom.the.Soft
11bbe0 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 0a 74 6f 20 64 6f 20 73 6f 2c 20 73 75 62 6a ware.is.furnished.to.do.so,.subj
11bc00 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 3a ect.to.the.following.conditions:
11bc20 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 ..The.above.copyright.notice.and
11bc40 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c 6c 20 62 65 .this.permission.notice.shall.be
11bc60 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 20 6f 72 20 73 75 62 73 74 .included.in.all.copies.or.subst
11bc80 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2e antial.portions.of.the.Software.
11bca0 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 20 49 ..THE.SOFTWARE.IS.PROVIDED."AS.I
11bcc0 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 S",.WITHOUT.WARRANTY.OF.ANY.KIND
11bce0 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 ,.EXPRESS.OR.IMPLIED,.INCLUDING.
11bd00 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 BUT.NOT.LIMITED.TO.THE.WARRANTIE
11bd20 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 49 54 4e 45 53 53 20 46 4f S.OF.MERCHANTABILITY,.FITNESS.FO
11bd40 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 4e R.A.PARTICULAR.PURPOSE.AND.NONIN
11bd60 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 FRINGEMENT..IN.NO.EVENT.SHALL.TH
11bd80 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 42 E.AUTHORS.OR.COPYRIGHT.HOLDERS.B
11bda0 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 53 20 E.LIABLE.FOR.ANY.CLAIM,.DAMAGES.
11bdc0 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 41 OR.OTHER.LIABILITY,.WHETHER.IN.A
11bde0 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 20 4f 54 N.ACTION.OF.CONTRACT,.TORT.OR.OT
11be00 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 4f 55 54 20 4f 46 20 4f 52 HERWISE,.ARISING.FROM,.OUT.OF.OR
11be20 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f 46 54 57 41 52 45 .IN.CONNECTION.WITH.THE.SOFTWARE
11be40 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 53 20 49 4e .OR.THE.USE.OR.OTHER.DEALINGS.IN
11be60 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e .THE.SOFTWARE..<?php...........n
11be80 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 amespace.Symfony\Component\Finde
11bea0 72 5c 53 68 65 6c 6c 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e r\Shell;..@trigger_error('The.'.
11bec0 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 43 6f 6d 6d 61 6e 64 20 63 6c 61 73 73 20 69 73 __NAMESPACE__.'\Command.class.is
11bee0 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e .deprecated.since.version.2.8.an
11bf00 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 d.will.be.removed.in.3.0.',.E_US
11bf20 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 6d ER_DEPRECATED);.......class.Comm
11bf40 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 61 72 65 6e 74 3b 0a 0a 0a 0a 0a 70 72 and.{....private.$parent;.....pr
11bf60 69 76 61 74 65 20 24 62 69 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 72 69 76 61 ivate.$bits.=.array();.....priva
11bf80 74 65 20 24 6c 61 62 65 6c 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 te.$labels.=.array();.....privat
11bfa0 65 20 24 65 72 72 6f 72 48 61 6e 64 6c 65 72 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 e.$errorHandler;.......public.fu
11bfc0 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 43 6f 6d 6d 61 6e 64 20 24 70 61 72 65 nction.__construct(Command.$pare
11bfe0 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 72 65 6e 74 20 3d 20 24 70 61 nt.=.null).{.$this->parent.=.$pa
11c000 72 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f rent;.}.......public.function.__
11c020 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6a 6f 69 6e 28 toString().{.return.$this->join(
11c040 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 );.}.........public.static.funct
11c060 69 6f 6e 20 63 72 65 61 74 65 28 43 6f 6d 6d 61 6e 64 20 24 70 61 72 65 6e 74 20 3d 20 6e 75 6c ion.create(Command.$parent.=.nul
11c080 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 65 6c 66 28 24 70 61 72 65 6e 74 29 3b 0a 7d l).{.return.new.self($parent);.}
11c0a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 .........public.static.function.
11c0c0 65 73 63 61 70 65 28 24 69 6e 70 75 74 29 0a 7b 0a 72 65 74 75 72 6e 20 65 73 63 61 70 65 73 68 escape($input).{.return.escapesh
11c0e0 65 6c 6c 63 6d 64 28 24 69 6e 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ellcmd($input);.}.........public
11c100 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 71 75 6f 74 65 28 24 69 6e 70 75 74 29 0a 7b .static.function.quote($input).{
11c120 0a 72 65 74 75 72 6e 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 69 6e 70 75 74 29 3b 0a .return.escapeshellarg($input);.
11c140 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 24 62 }.........public.function.add($b
11c160 69 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 74 73 5b 5d 20 3d 20 24 62 69 74 3b 0a 0a 72 65 74 it).{.$this->bits[].=.$bit;..ret
11c180 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 urn.$this;.}.........public.func
11c1a0 74 69 6f 6e 20 74 6f 70 28 24 62 69 74 29 0a 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 tion.top($bit).{.array_unshift($
11c1c0 74 68 69 73 2d 3e 62 69 74 73 2c 20 24 62 69 74 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 this->bits,.$bit);..foreach.($th
11c1e0 69 73 2d 3e 6c 61 62 65 6c 73 20 61 73 20 24 6c 61 62 65 6c 20 3d 3e 20 24 69 6e 64 65 78 29 20 is->labels.as.$label.=>.$index).
11c200 7b 0a 24 74 68 69 73 2d 3e 6c 61 62 65 6c 73 5b 24 6c 61 62 65 6c 5d 20 2b 3d 20 31 3b 0a 7d 0a {.$this->labels[$label].+=.1;.}.
11c220 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 .return.$this;.}.........public.
11c240 66 75 6e 63 74 69 6f 6e 20 61 72 67 28 24 61 72 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 74 73 function.arg($arg).{.$this->bits
11c260 5b 5d 20 3d 20 73 65 6c 66 3a 3a 71 75 6f 74 65 28 24 61 72 67 29 3b 0a 0a 72 65 74 75 72 6e 20 [].=.self::quote($arg);..return.
11c280 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e $this;.}.........public.function
11c2a0 20 63 6d 64 28 24 65 73 63 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 74 73 5b 5d 20 3d 20 73 65 6c .cmd($esc).{.$this->bits[].=.sel
11c2c0 66 3a 3a 65 73 63 61 70 65 28 24 65 73 63 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a f::escape($esc);..return.$this;.
11c2e0 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 28 }...........public.function.ins(
11c300 24 6c 61 62 65 6c 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6c 61 62 65 6c $label).{.if.(isset($this->label
11c320 73 5b 24 6c 61 62 65 6c 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 s[$label])).{.throw.new.\Runtime
11c340 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4c 61 62 65 6c 20 22 25 73 22 20 61 6c Exception(sprintf('Label."%s".al
11c360 72 65 61 64 79 20 65 78 69 73 74 73 2e 27 2c 20 24 6c 61 62 65 6c 29 29 3b 0a 7d 0a 0a 24 74 68 ready.exists.',.$label));.}..$th
11c380 69 73 2d 3e 62 69 74 73 5b 5d 20 3d 20 73 65 6c 66 3a 3a 63 72 65 61 74 65 28 24 74 68 69 73 29 is->bits[].=.self::create($this)
11c3a0 3b 0a 24 74 68 69 73 2d 3e 6c 61 62 65 6c 73 5b 24 6c 61 62 65 6c 5d 20 3d 20 63 6f 75 6e 74 28 ;.$this->labels[$label].=.count(
11c3c0 24 74 68 69 73 2d 3e 62 69 74 73 29 20 2d 20 31 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d $this->bits).-.1;..return.$this-
11c3e0 3e 62 69 74 73 5b 24 74 68 69 73 2d 3e 6c 61 62 65 6c 73 5b 24 6c 61 62 65 6c 5d 5d 3b 0a 7d 0a >bits[$this->labels[$label]];.}.
11c400 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 28 24 6c ..........public.function.get($l
11c420 61 62 65 6c 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6c 61 62 65 6c 73 abel).{.if.(!isset($this->labels
11c440 5b 24 6c 61 62 65 6c 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 [$label])).{.throw.new.\RuntimeE
11c460 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4c 61 62 65 6c 20 22 25 73 22 20 64 6f 65 xception(sprintf('Label."%s".doe
11c480 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6c 61 62 65 6c 29 29 3b 0a 7d 0a 0a 72 65 74 75 s.not.exist.',.$label));.}..retu
11c4a0 72 6e 20 24 74 68 69 73 2d 3e 62 69 74 73 5b 24 74 68 69 73 2d 3e 6c 61 62 65 6c 73 5b 24 6c 61 rn.$this->bits[$this->labels[$la
11c4c0 62 65 6c 5d 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e bel]];.}.........public.function
11c4e0 20 65 6e 64 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 61 72 .end().{.if.(null.===.$this->par
11c500 65 6e 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 ent).{.throw.new.\RuntimeExcepti
11c520 6f 6e 28 27 43 61 6c 6c 69 6e 67 20 65 6e 64 20 6f 6e 20 72 6f 6f 74 20 63 6f 6d 6d 61 6e 64 20 on('Calling.end.on.root.command.
11c540 64 6f 65 73 6e 5c 27 74 20 6d 61 6b 65 20 73 65 6e 73 65 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 doesn\'t.make.sense.');.}..retur
11c560 6e 20 24 74 68 69 73 2d 3e 70 61 72 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 n.$this->parent;.}.......public.
11c580 66 75 6e 63 74 69 6f 6e 20 6c 65 6e 67 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 function.length().{.return.count
11c5a0 28 24 74 68 69 73 2d 3e 62 69 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ($this->bits);.}.......public.fu
11c5c0 6e 63 74 69 6f 6e 20 73 65 74 45 72 72 6f 72 48 61 6e 64 6c 65 72 28 5c 43 6c 6f 73 75 72 65 20 nction.setErrorHandler(\Closure.
11c5e0 24 65 72 72 6f 72 48 61 6e 64 6c 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 48 61 6e $errorHandler).{.$this->errorHan
11c600 64 6c 65 72 20 3d 20 24 65 72 72 6f 72 48 61 6e 64 6c 65 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 dler.=.$errorHandler;..return.$t
11c620 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 his;.}.....public.function.getEr
11c640 72 6f 72 48 61 6e 64 6c 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 72 72 rorHandler().{.return.$this->err
11c660 6f 72 48 61 6e 64 6c 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 orHandler;.}.........public.func
11c680 74 69 6f 6e 20 65 78 65 63 75 74 65 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 65 tion.execute().{.if.(null.===.$e
11c6a0 72 72 6f 72 48 61 6e 64 6c 65 72 20 3d 20 24 74 68 69 73 2d 3e 65 72 72 6f 72 48 61 6e 64 6c 65 rrorHandler.=.$this->errorHandle
11c6c0 72 29 20 7b 0a 65 78 65 63 28 24 74 68 69 73 2d 3e 6a 6f 69 6e 28 29 2c 20 24 6f 75 74 70 75 74 r).{.exec($this->join(),.$output
11c6e0 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 72 6f 63 65 73 73 20 3d 20 70 72 6f 63 5f 6f 70 65 6e );.}.else.{.$process.=.proc_open
11c700 28 24 74 68 69 73 2d 3e 6a 6f 69 6e 28 29 2c 20 61 72 72 61 79 28 30 20 3d 3e 20 61 72 72 61 79 ($this->join(),.array(0.=>.array
11c720 28 27 70 69 70 65 27 2c 20 27 72 27 29 2c 20 31 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 ('pipe',.'r'),.1.=>.array('pipe'
11c740 2c 20 27 77 27 29 2c 20 32 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 29 ,.'w'),.2.=>.array('pipe',.'w'))
11c760 2c 20 24 70 69 70 65 73 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 70 72 65 67 5f 73 70 6c 69 74 28 ,.$pipes);.$output.=.preg_split(
11c780 27 7e 28 5c 72 5c 6e 7c 5c 72 7c 5c 6e 29 7e 27 2c 20 73 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e '~(\r\n|\r|\n)~',.stream_get_con
11c7a0 74 65 6e 74 73 28 24 70 69 70 65 73 5b 31 5d 29 2c 20 2d 31 2c 20 50 52 45 47 5f 53 50 4c 49 54 tents($pipes[1]),.-1,.PREG_SPLIT
11c7c0 5f 4e 4f 5f 45 4d 50 54 59 29 3b 0a 0a 69 66 20 28 24 65 72 72 6f 72 20 3d 20 73 74 72 65 61 6d _NO_EMPTY);..if.($error.=.stream
11c7e0 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 70 69 70 65 73 5b 32 5d 29 29 20 7b 0a 24 65 72 72 _get_contents($pipes[2])).{.$err
11c800 6f 72 48 61 6e 64 6c 65 72 28 24 65 72 72 6f 72 29 3b 0a 7d 0a 0a 70 72 6f 63 5f 63 6c 6f 73 65 orHandler($error);.}..proc_close
11c820 28 24 70 72 6f 63 65 73 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 20 3f 3a ($process);.}..return.$output.?:
11c840 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .array();.}.......public.functio
11c860 6e 20 6a 6f 69 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 61 n.join().{.return.implode('.',.a
11c880 72 72 61 79 5f 66 69 6c 74 65 72 28 0a 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 rray_filter(.array_map(function.
11c8a0 28 24 62 69 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 62 69 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 ($bit).{.return.$bit.instanceof.
11c8c0 43 6f 6d 6d 61 6e 64 20 3f 20 24 62 69 74 2d 3e 6a 6f 69 6e 28 29 20 3a 20 28 24 62 69 74 20 3f Command.?.$bit->join().:.($bit.?
11c8e0 3a 20 6e 75 6c 6c 29 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 62 69 74 73 29 2c 0a 66 75 6e 63 74 69 :.null);.},.$this->bits),.functi
11c900 6f 6e 20 28 24 62 69 74 29 20 7b 20 72 65 74 75 72 6e 20 6e 75 6c 6c 20 21 3d 3d 20 24 62 69 74 on.($bit).{.return.null.!==.$bit
11c920 3b 20 7d 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ;.}.));.}..........public.functi
11c940 6f 6e 20 61 64 64 41 74 49 6e 64 65 78 28 24 62 69 74 2c 20 24 69 6e 64 65 78 29 0a 7b 0a 61 72 on.addAtIndex($bit,.$index).{.ar
11c960 72 61 79 5f 73 70 6c 69 63 65 28 24 74 68 69 73 2d 3e 62 69 74 73 2c 20 24 69 6e 64 65 78 2c 20 ray_splice($this->bits,.$index,.
11c980 30 2c 20 24 62 69 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 73 65 6c 66 20 3f 20 61 72 72 61 79 28 0,.$bit.instanceof.self.?.array(
11c9a0 24 62 69 74 29 20 3a 20 24 62 69 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a $bit).:.$bit);..return.$this;.}.
11c9c0 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 }.<?php...........namespace.Symf
11c9e0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 53 68 65 6c 6c 3b 0a 0a 40 74 72 ony\Component\Finder\Shell;..@tr
11ca00 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f igger_error('The.'.__NAMESPACE__
11ca20 2e 27 5c 53 68 65 6c 6c 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e .'\Shell.class.is.deprecated.sin
11ca40 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 ce.version.2.8.and.will.be.remov
11ca60 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b ed.in.3.0.',.E_USER_DEPRECATED);
11ca80 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 68 65 6c 6c 0a 7b 0a 63 6f 6e 73 74 20 54 59 50 45 5f .......class.Shell.{.const.TYPE_
11caa0 55 4e 49 58 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 44 41 52 57 49 4e 20 3d 20 32 3b UNIX.=.1;.const.TYPE_DARWIN.=.2;
11cac0 0a 63 6f 6e 73 74 20 54 59 50 45 5f 43 59 47 57 49 4e 20 3d 20 33 3b 0a 63 6f 6e 73 74 20 54 59 .const.TYPE_CYGWIN.=.3;.const.TY
11cae0 50 45 5f 57 49 4e 44 4f 57 53 20 3d 20 34 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 42 53 44 20 3d PE_WINDOWS.=.4;.const.TYPE_BSD.=
11cb00 20 35 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 74 79 70 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 .5;.....private.$type;.......pub
11cb20 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 69 66 20 28 6e 75 6c lic.function.getType().{.if.(nul
11cb40 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 29 20 7b 0a 24 74 68 69 73 2d 3e 74 79 70 65 l.===.$this->type).{.$this->type
11cb60 20 3d 20 24 74 68 69 73 2d 3e 67 75 65 73 73 54 79 70 65 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e .=.$this->guessType();.}..return
11cb80 20 24 74 68 69 73 2d 3e 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .$this->type;.}.........public.f
11cba0 75 6e 63 74 69 6f 6e 20 74 65 73 74 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a unction.testCommand($command).{.
11cbc0 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 65 78 65 63 27 29 29 20 7b 0a if.(!function_exists('exec')).{.
11cbe0 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 24 74 65 73 74 43 6f 6d 6d 61 6e 64 20 return.false;.}....$testCommand.
11cc00 3d 20 27 77 68 69 63 68 20 27 3b 0a 69 66 20 28 73 65 6c 66 3a 3a 54 59 50 45 5f 57 49 4e 44 4f =.'which.';.if.(self::TYPE_WINDO
11cc20 57 53 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 29 20 7b 0a 24 74 65 73 74 43 6f 6d 6d 61 WS.===.$this->type).{.$testComma
11cc40 6e 64 20 3d 20 27 77 68 65 72 65 20 27 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 65 73 63 nd.=.'where.';.}..$command.=.esc
11cc60 61 70 65 73 68 65 6c 6c 63 6d 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 0a 65 78 65 63 28 24 74 65 apeshellcmd($command);..exec($te
11cc80 73 74 43 6f 6d 6d 61 6e 64 2e 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 24 63 6f stCommand.$command,.$output,.$co
11cca0 64 65 29 3b 0a 0a 72 65 74 75 72 6e 20 30 20 3d 3d 3d 20 24 63 6f 64 65 20 26 26 20 63 6f 75 6e de);..return.0.===.$code.&&.coun
11ccc0 74 28 24 6f 75 74 70 75 74 29 20 3e 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 t($output).>.0;.}.......private.
11cce0 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 54 79 70 65 28 29 0a 7b 0a 24 6f 73 20 3d 20 73 74 72 function.guessType().{.$os.=.str
11cd00 74 6f 6c 6f 77 65 72 28 50 48 50 5f 4f 53 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 tolower(PHP_OS);..if.(false.!==.
11cd20 73 74 72 70 6f 73 28 24 6f 73 2c 20 27 63 79 67 77 69 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 strpos($os,.'cygwin')).{.return.
11cd40 73 65 6c 66 3a 3a 54 59 50 45 5f 43 59 47 57 49 4e 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 self::TYPE_CYGWIN;.}..if.(false.
11cd60 21 3d 3d 20 73 74 72 70 6f 73 28 24 6f 73 2c 20 27 64 61 72 77 69 6e 27 29 29 20 7b 0a 72 65 74 !==.strpos($os,.'darwin')).{.ret
11cd80 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 44 41 52 57 49 4e 3b 0a 7d 0a 0a 69 66 20 28 66 61 urn.self::TYPE_DARWIN;.}..if.(fa
11cda0 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 6f 73 2c 20 27 62 73 64 27 29 29 20 7b 0a 72 65 lse.!==.strpos($os,.'bsd')).{.re
11cdc0 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 42 53 44 3b 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d turn.self::TYPE_BSD;.}..if.(0.==
11cde0 3d 20 73 74 72 70 6f 73 28 24 6f 73 2c 20 27 77 69 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 =.strpos($os,.'win')).{.return.s
11ce00 65 6c 66 3a 3a 54 59 50 45 5f 57 49 4e 44 4f 57 53 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c elf::TYPE_WINDOWS;.}..return.sel
11ce20 66 3a 3a 54 59 50 45 5f 55 4e 49 58 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a f::TYPE_UNIX;.}.}.<?php.........
11ce40 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 ..namespace.Symfony\Component\Fi
11ce60 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 70 6c 46 69 6c 65 49 6e 66 6f 20 65 78 nder;.......class.SplFileInfo.ex
11ce80 74 65 6e 64 73 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 20 24 72 65 tends.\SplFileInfo.{.private.$re
11cea0 6c 61 74 69 76 65 50 61 74 68 3b 0a 70 72 69 76 61 74 65 20 24 72 65 6c 61 74 69 76 65 50 61 74 lativePath;.private.$relativePat
11cec0 68 6e 61 6d 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f hname;.........public.function._
11cee0 5f 63 6f 6e 73 74 72 75 63 74 28 24 66 69 6c 65 2c 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c _construct($file,.$relativePath,
11cf00 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f .$relativePathname).{.parent::__
11cf20 63 6f 6e 73 74 72 75 63 74 28 24 66 69 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6c 61 74 69 76 construct($file);.$this->relativ
11cf40 65 50 61 74 68 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 24 74 68 69 73 2d 3e 72 65 ePath.=.$relativePath;.$this->re
11cf60 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 lativePathname.=.$relativePathna
11cf80 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 me;.}.......public.function.getR
11cfa0 65 6c 61 74 69 76 65 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 elativePath().{.return.$this->re
11cfc0 6c 61 74 69 76 65 50 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 lativePath;.}.......public.funct
11cfe0 69 6f 6e 20 67 65 74 52 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 ion.getRelativePathname().{.retu
11d000 72 6e 20 24 74 68 69 73 2d 3e 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 3b 0a 7d 0a 0a 0a rn.$this->relativePathname;.}...
11d020 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 ......public.function.getContent
11d040 73 28 29 0a 7b 0a 24 6c 65 76 65 6c 20 3d 20 65 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 30 s().{.$level.=.error_reporting(0
11d060 29 3b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 );.$content.=.file_get_contents(
11d080 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 29 3b 0a 65 72 72 6f 72 5f 72 65 70 $this->getPathname());.error_rep
11d0a0 6f 72 74 69 6e 67 28 24 6c 65 76 65 6c 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 63 orting($level);.if.(false.===.$c
11d0c0 6f 6e 74 65 6e 74 29 20 7b 0a 24 65 72 72 6f 72 20 3d 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 ontent).{.$error.=.error_get_las
11d0e0 74 28 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e t();.throw.new.\RuntimeException
11d100 28 24 65 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ($error['message']);.}..return.$
11d120 63 6f 6e 74 65 6e 74 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 34 2d content;.}.}.Copyright.(c).2014-
11d140 32 30 31 36 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 0a 0a 50 65 72 6d 69 73 73 69 6f 2016.Fabien.Potencier..Permissio
11d160 6e 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 n.is.hereby.granted,.free.of.cha
11d180 72 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 rge,.to.any.person.obtaining.a.c
11d1a0 6f 70 79 0a 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 opy.of.this.software.and.associa
11d1c0 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f ted.documentation.files.(the."So
11d1e0 66 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 ftware"),.to.deal.in.the.Softwar
11d200 65 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 e.without.restriction,.including
11d220 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 74 .without.limitation.the.rights.t
11d240 6f 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c o.use,.copy,.modify,.merge,.publ
11d260 69 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 ish,.distribute,.sublicense,.and
11d280 2f 6f 72 20 73 65 6c 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c /or.sell.copies.of.the.Software,
11d2a0 20 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 .and.to.permit.persons.to.whom.t
11d2c0 68 65 20 53 6f 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 0a 74 6f 20 64 6f 20 73 he.Software.is.furnished.to.do.s
11d2e0 6f 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 o,.subject.to.the.following.cond
11d300 69 74 69 6f 6e 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 itions:..The.above.copyright.not
11d320 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 ice.and.this.permission.notice.s
11d340 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 20 6f hall.be.included.in.all.copies.o
11d360 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f r.substantial.portions.of.the.So
11d380 66 74 77 61 72 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 ftware...THE.SOFTWARE.IS.PROVIDE
11d3a0 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 D."AS.IS",.WITHOUT.WARRANTY.OF.A
11d3c0 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 4e 43 NY.KIND,.EXPRESS.OR.IMPLIED,.INC
11d3e0 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 LUDING.BUT.NOT.LIMITED.TO.THE.WA
11d400 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 49 54 RRANTIES.OF.MERCHANTABILITY,.FIT
11d420 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e NESS.FOR.A.PARTICULAR.PURPOSE.AN
11d440 44 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 D.NONINFRINGEMENT..IN.NO.EVENT.S
11d460 48 41 4c 4c 20 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f HALL.THE.AUTHORS.OR.COPYRIGHT.HO
11d480 4c 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 LDERS.BE.LIABLE.FOR.ANY.CLAIM,.D
11d4a0 41 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 AMAGES.OR.OTHER.LIABILITY,.WHETH
11d4c0 45 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 ER.IN.AN.ACTION.OF.CONTRACT,.TOR
11d4e0 54 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 4f 55 T.OR.OTHERWISE,.ARISING.FROM,.OU
11d500 54 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 T.OF.OR.IN.CONNECTION.WITH.THE.S
11d520 4f 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c OFTWARE.OR.THE.USE.OR.OTHER.DEAL
11d540 49 4e 47 53 20 49 4e 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a INGS.IN.THE.SOFTWARE..<?php.....
11d560 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 50 6f 6c 79 66 69 6c 6c ......namespace.Symfony\Polyfill
11d580 5c 4d 62 73 74 72 69 6e 67 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a \Mbstring;......................
11d5a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 66 69 6e .............................fin
11d5c0 61 6c 20 63 6c 61 73 73 20 4d 62 73 74 72 69 6e 67 0a 7b 0a 63 6f 6e 73 74 20 4d 42 5f 43 41 53 al.class.Mbstring.{.const.MB_CAS
11d5e0 45 5f 46 4f 4c 44 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 0a 70 72 69 76 61 74 65 20 73 E_FOLD.=.PHP_INT_MAX;..private.s
11d600 74 61 74 69 63 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 61 72 72 61 79 28 27 41 53 43 tatic.$encodingList.=.array('ASC
11d620 49 49 27 2c 20 27 55 54 46 2d 38 27 29 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 6c II',.'UTF-8');.private.static.$l
11d640 61 6e 67 75 61 67 65 20 3d 20 27 6e 65 75 74 72 61 6c 27 3b 0a 70 72 69 76 61 74 65 20 73 74 61 anguage.=.'neutral';.private.sta
11d660 74 69 63 20 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e 67 20 3d 20 27 55 54 46 2d 38 27 3b tic.$internalEncoding.=.'UTF-8';
11d680 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 63 61 73 65 46 6f 6c 64 20 3d 20 61 72 72 61 .private.static.$caseFold.=.arra
11d6a0 79 28 0a 61 72 72 61 79 28 27 c2 b5 27 2c 27 c5 bf 27 2c 22 5c 78 43 44 5c 78 38 35 22 2c 27 cf y(.array('..','..',"\xCD\x85",'.
11d6c0 82 27 2c 22 5c 78 43 46 5c 78 39 30 22 2c 22 5c 78 43 46 5c 78 39 31 22 2c 22 5c 78 43 46 5c 78 .',"\xCF\x90","\xCF\x91","\xCF\x
11d6e0 39 35 22 2c 22 5c 78 43 46 5c 78 39 36 22 2c 22 5c 78 43 46 5c 78 42 30 22 2c 22 5c 78 43 46 5c 95","\xCF\x96","\xCF\xB0","\xCF\
11d700 78 42 31 22 2c 22 5c 78 43 46 5c 78 42 35 22 2c 22 5c 78 45 31 5c 78 42 41 5c 78 39 42 22 2c 22 xB1","\xCF\xB5","\xE1\xBA\x9B","
11d720 5c 78 45 31 5c 78 42 45 5c 78 42 45 22 29 2c 0a 61 72 72 61 79 28 27 ce bc 27 2c 27 73 27 2c 27 \xE1\xBE\xBE"),.array('..','s','
11d740 ce b9 27 2c 20 27 cf 83 27 2c 27 ce b2 27 2c 20 27 ce b8 27 2c 20 27 cf 86 27 2c 20 27 cf 80 27 ..',.'..','..',.'..',.'..',.'..'
11d760 2c 20 27 ce ba 27 2c 20 27 cf 81 27 2c 20 27 ce b5 27 2c 20 22 5c 78 45 31 5c 78 42 39 5c 78 41 ,.'..',.'..',.'..',."\xE1\xB9\xA
11d780 31 22 2c 27 ce b9 27 29 2c 0a 29 3b 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 1",'..'),.);..public.static.func
11d7a0 74 69 6f 6e 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 2c 20 24 74 6f tion.mb_convert_encoding($s,.$to
11d7c0 45 6e 63 6f 64 69 6e 67 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a Encoding,.$fromEncoding.=.null).
11d7e0 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 20 7c 7c {.if.(is_array($fromEncoding).||
11d800 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 2c .false.!==.strpos($fromEncoding,
11d820 20 27 2c 27 29 29 20 7b 0a 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 6d .',')).{.$fromEncoding.=.self::m
11d840 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 b_detect_encoding($s,.$fromEncod
11d860 69 6e 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 3d 20 73 ing);.}.else.{.$fromEncoding.=.s
11d880 65 6c 66 3a 3a 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 3b elf::getEncoding($fromEncoding);
11d8a0 0a 7d 0a 0a 24 74 6f 45 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 67 65 74 45 6e 63 6f 64 .}..$toEncoding.=.self::getEncod
11d8c0 69 6e 67 28 24 74 6f 45 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 27 42 41 53 45 36 34 27 20 ing($toEncoding);..if.('BASE64'.
11d8e0 3d 3d 3d 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 24 73 20 3d 20 62 61 73 65 36 34 ===.$fromEncoding).{.$s.=.base64
11d900 5f 64 65 63 6f 64 65 28 24 73 29 3b 0a 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 3d 20 24 74 6f _decode($s);.$fromEncoding.=.$to
11d920 45 6e 63 6f 64 69 6e 67 3b 0a 7d 0a 0a 69 66 20 28 27 42 41 53 45 36 34 27 20 3d 3d 3d 20 24 74 Encoding;.}..if.('BASE64'.===.$t
11d940 6f 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 62 61 73 65 36 34 5f 65 6e 63 6f 64 oEncoding).{.return.base64_encod
11d960 65 28 24 73 29 3b 0a 7d 0a 0a 69 66 20 28 27 48 54 4d 4c 2d 45 4e 54 49 54 49 45 53 27 20 3d 3d e($s);.}..if.('HTML-ENTITIES'.==
11d980 3d 20 24 74 6f 45 6e 63 6f 64 69 6e 67 20 7c 7c 20 27 48 54 4d 4c 27 20 3d 3d 3d 20 24 74 6f 45 =.$toEncoding.||.'HTML'.===.$toE
11d9a0 6e 63 6f 64 69 6e 67 29 20 7b 0a 69 66 20 28 27 48 54 4d 4c 2d 45 4e 54 49 54 49 45 53 27 20 3d ncoding).{.if.('HTML-ENTITIES'.=
11d9c0 3d 3d 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 7c 7c 20 27 48 54 4d 4c 27 20 3d 3d 3d 20 24 ==.$fromEncoding.||.'HTML'.===.$
11d9e0 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 3d 20 fromEncoding).{.$fromEncoding.=.
11da00 27 57 69 6e 64 6f 77 73 2d 31 32 35 32 27 3b 0a 7d 0a 69 66 20 28 27 55 54 46 2d 38 27 20 21 3d 'Windows-1252';.}.if.('UTF-8'.!=
11da20 3d 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 24 73 20 3d 20 69 63 6f 6e 76 28 24 66 =.$fromEncoding).{.$s.=.iconv($f
11da40 72 6f 6d 45 6e 63 6f 64 69 6e 67 2c 20 27 55 54 46 2d 38 27 2c 20 24 73 29 3b 0a 7d 0a 0a 72 65 romEncoding,.'UTF-8',.$s);.}..re
11da60 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 2f 5b 5c 78 turn.preg_replace_callback('/[\x
11da80 38 30 2d 5c 78 46 46 5d 2b 2f 27 2c 20 61 72 72 61 79 28 5f 5f 43 4c 41 53 53 5f 5f 2c 20 27 68 80-\xFF]+/',.array(__CLASS__,.'h
11daa0 74 6d 6c 5f 65 6e 63 6f 64 69 6e 67 5f 63 61 6c 6c 62 61 63 6b 27 29 2c 20 24 73 29 3b 0a 7d 0a tml_encoding_callback'),.$s);.}.
11dac0 0a 69 66 20 28 27 48 54 4d 4c 2d 45 4e 54 49 54 49 45 53 27 20 3d 3d 3d 20 24 66 72 6f 6d 45 6e .if.('HTML-ENTITIES'.===.$fromEn
11dae0 63 6f 64 69 6e 67 29 20 7b 0a 24 73 20 3d 20 68 74 6d 6c 5f 65 6e 74 69 74 79 5f 64 65 63 6f 64 coding).{.$s.=.html_entity_decod
11db00 65 28 24 73 2c 20 45 4e 54 5f 43 4f 4d 50 41 54 2c 20 27 55 54 46 2d 38 27 29 3b 0a 24 66 72 6f e($s,.ENT_COMPAT,.'UTF-8');.$fro
11db20 6d 45 6e 63 6f 64 69 6e 67 20 3d 20 27 55 54 46 2d 38 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 mEncoding.=.'UTF-8';.}..return.i
11db40 63 6f 6e 76 28 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 2c 20 24 74 6f 45 6e 63 6f 64 69 6e 67 2c conv($fromEncoding,.$toEncoding,
11db60 20 24 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 .$s);.}..public.static.function.
11db80 6d 62 5f 63 6f 6e 76 65 72 74 5f 76 61 72 69 61 62 6c 65 73 28 24 74 6f 45 6e 63 6f 64 69 6e 67 mb_convert_variables($toEncoding
11dba0 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 2c 20 26 24 61 20 3d 20 6e 75 6c 6c 2c 20 26 24 62 ,.$fromEncoding,.&$a.=.null,.&$b
11dbc0 20 3d 20 6e 75 6c 6c 2c 20 26 24 63 20 3d 20 6e 75 6c 6c 2c 20 26 24 64 20 3d 20 6e 75 6c 6c 2c .=.null,.&$c.=.null,.&$d.=.null,
11dbe0 20 26 24 65 20 3d 20 6e 75 6c 6c 2c 20 26 24 66 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 72 73 .&$e.=.null,.&$f.=.null).{.$vars
11dc00 20 3d 20 61 72 72 61 79 28 26 24 61 2c 20 26 24 62 2c 20 26 24 63 2c 20 26 24 64 2c 20 26 24 65 .=.array(&$a,.&$b,.&$c,.&$d,.&$e
11dc20 2c 20 26 24 66 29 3b 0a 0a 24 6f 6b 20 3d 20 74 72 75 65 3b 0a 61 72 72 61 79 5f 77 61 6c 6b 5f ,.&$f);..$ok.=.true;.array_walk_
11dc40 72 65 63 75 72 73 69 76 65 28 24 76 61 72 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 76 29 20 recursive($vars,.function.(&$v).
11dc60 75 73 65 20 28 26 24 6f 6b 2c 20 24 74 6f 45 6e 63 6f 64 69 6e 67 2c 20 24 66 72 6f 6d 45 6e 63 use.(&$ok,.$toEncoding,.$fromEnc
11dc80 6f 64 69 6e 67 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 76 20 3d 20 4d 62 73 74 oding).{.if.(false.===.$v.=.Mbst
11dca0 72 69 6e 67 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e 67 28 24 76 2c 20 24 74 ring::mb_convert_encoding($v,.$t
11dcc0 6f 45 6e 63 6f 64 69 6e 67 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 29 20 7b 0a 24 6f 6b oEncoding,.$fromEncoding)).{.$ok
11dce0 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6f 6b 20 3f 20 24 66 .=.false;.}.});..return.$ok.?.$f
11dd00 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 3a 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 romEncoding.:.false;.}..public.s
11dd20 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 64 65 63 6f 64 65 5f 6d 69 6d 65 68 65 61 tatic.function.mb_decode_mimehea
11dd40 64 65 72 28 24 73 29 0a 7b 0a 72 65 74 75 72 6e 20 69 63 6f 6e 76 5f 6d 69 6d 65 5f 64 65 63 6f der($s).{.return.iconv_mime_deco
11dd60 64 65 28 24 73 2c 20 32 2c 20 73 65 6c 66 3a 3a 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e de($s,.2,.self::$internalEncodin
11dd80 67 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 g);.}..public.static.function.mb
11dda0 5f 65 6e 63 6f 64 65 5f 6d 69 6d 65 68 65 61 64 65 72 28 24 73 2c 20 24 63 68 61 72 73 65 74 20 _encode_mimeheader($s,.$charset.
11ddc0 3d 20 6e 75 6c 6c 2c 20 24 74 72 61 6e 73 66 65 72 45 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c =.null,.$transferEncoding.=.null
11dde0 2c 20 24 6c 69 6e 65 66 65 65 64 20 3d 20 6e 75 6c 6c 2c 20 24 69 6e 64 65 6e 74 20 3d 20 6e 75 ,.$linefeed.=.null,.$indent.=.nu
11de00 6c 6c 29 0a 7b 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 6d 62 5f 65 6e 63 6f 64 65 5f 6d ll).{.trigger_error('mb_encode_m
11de20 69 6d 65 68 65 61 64 65 72 28 29 20 69 73 20 62 75 67 67 65 64 2e 20 50 6c 65 61 73 65 20 75 73 imeheader().is.bugged..Please.us
11de40 65 20 69 63 6f 6e 76 5f 6d 69 6d 65 5f 65 6e 63 6f 64 65 28 29 20 69 6e 73 74 65 61 64 27 2c 20 e.iconv_mime_encode().instead',.
11de60 45 5f 55 53 45 52 5f 57 41 52 4e 49 4e 47 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 E_USER_WARNING);.}..public.stati
11de80 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 73 2c 20 24 c.function.mb_convert_case($s,.$
11dea0 6d 6f 64 65 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 27 27 mode,.$encoding.=.null).{.if.(''
11dec0 20 3d 3d 3d 20 24 73 20 2e 3d 20 27 27 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 0a 24 .===.$s..=.'').{.return.'';.}..$
11dee0 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e encoding.=.self::getEncoding($en
11df00 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 27 55 54 46 2d 38 27 20 3d 3d 3d 20 24 65 6e 63 6f 64 coding);..if.('UTF-8'.===.$encod
11df20 69 6e 67 29 20 7b 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 3b 0a 7d 20 65 6c 73 65 20 ing).{.$encoding.=.null;.}.else.
11df40 7b 0a 24 73 20 3d 20 69 63 6f 6e 76 28 24 65 6e 63 6f 64 69 6e 67 2c 20 27 55 54 46 2d 38 27 2c {.$s.=.iconv($encoding,.'UTF-8',
11df60 20 24 73 29 3b 0a 7d 0a 0a 69 66 20 28 4d 42 5f 43 41 53 45 5f 54 49 54 4c 45 20 3d 3d 20 24 6d .$s);.}..if.(MB_CASE_TITLE.==.$m
11df80 6f 64 65 29 20 7b 0a 24 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 ode).{.$s.=.preg_replace_callbac
11dfa0 6b 28 27 2f 5c 62 5c 70 7b 4c 6c 7d 2f 75 27 2c 20 61 72 72 61 79 28 5f 5f 43 4c 41 53 53 5f 5f k('/\b\p{Ll}/u',.array(__CLASS__
11dfc0 2c 20 27 74 69 74 6c 65 5f 63 61 73 65 5f 75 70 70 65 72 27 29 2c 20 24 73 29 3b 0a 24 73 20 3d ,.'title_case_upper'),.$s);.$s.=
11dfe0 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 2f 5c 42 5b 5c 70 7b 4c .preg_replace_callback('/\B[\p{L
11e000 75 7d 5c 70 7b 4c 74 7d 5d 2b 2f 75 27 2c 20 61 72 72 61 79 28 5f 5f 43 4c 41 53 53 5f 5f 2c 20 u}\p{Lt}]+/u',.array(__CLASS__,.
11e020 27 74 69 74 6c 65 5f 63 61 73 65 5f 6c 6f 77 65 72 27 29 2c 20 24 73 29 3b 0a 7d 20 65 6c 73 65 'title_case_lower'),.$s);.}.else
11e040 20 7b 0a 69 66 20 28 4d 42 5f 43 41 53 45 5f 55 50 50 45 52 20 3d 3d 20 24 6d 6f 64 65 29 20 7b .{.if.(MB_CASE_UPPER.==.$mode).{
11e060 0a 73 74 61 74 69 63 20 24 75 70 70 65 72 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 6e 75 6c 6c 20 .static.$upper.=.null;.if.(null.
11e080 3d 3d 3d 20 24 75 70 70 65 72 29 20 7b 0a 24 75 70 70 65 72 20 3d 20 73 65 6c 66 3a 3a 67 65 74 ===.$upper).{.$upper.=.self::get
11e0a0 44 61 74 61 28 27 75 70 70 65 72 43 61 73 65 27 29 3b 0a 7d 0a 24 6d 61 70 20 3d 20 24 75 70 70 Data('upperCase');.}.$map.=.$upp
11e0c0 65 72 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 4d 42 5f 43 41 53 45 5f 46 er;.}.else.{.if.(self::MB_CASE_F
11e0e0 4f 4c 44 20 3d 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 24 73 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 OLD.===.$mode).{.$s.=.str_replac
11e100 65 28 73 65 6c 66 3a 3a 24 63 61 73 65 46 6f 6c 64 5b 30 5d 2c 20 73 65 6c 66 3a 3a 24 63 61 73 e(self::$caseFold[0],.self::$cas
11e120 65 46 6f 6c 64 5b 31 5d 2c 20 24 73 29 3b 0a 7d 0a 0a 73 74 61 74 69 63 20 24 6c 6f 77 65 72 20 eFold[1],.$s);.}..static.$lower.
11e140 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6c 6f 77 65 72 29 20 7b 0a 24 =.null;.if.(null.===.$lower).{.$
11e160 6c 6f 77 65 72 20 3d 20 73 65 6c 66 3a 3a 67 65 74 44 61 74 61 28 27 6c 6f 77 65 72 43 61 73 65 lower.=.self::getData('lowerCase
11e180 27 29 3b 0a 7d 0a 24 6d 61 70 20 3d 20 24 6c 6f 77 65 72 3b 0a 7d 0a 0a 73 74 61 74 69 63 20 24 ');.}.$map.=.$lower;.}..static.$
11e1a0 75 6c 65 6e 4d 61 73 6b 20 3d 20 61 72 72 61 79 28 22 5c 78 43 30 22 20 3d 3e 20 32 2c 20 22 5c ulenMask.=.array("\xC0".=>.2,."\
11e1c0 78 44 30 22 20 3d 3e 20 32 2c 20 22 5c 78 45 30 22 20 3d 3e 20 33 2c 20 22 5c 78 46 30 22 20 3d xD0".=>.2,."\xE0".=>.3,."\xF0".=
11e1e0 3e 20 34 29 3b 0a 0a 24 69 20 3d 20 30 3b 0a 24 6c 65 6e 20 3d 20 73 74 72 6c 65 6e 28 24 73 29 >.4);..$i.=.0;.$len.=.strlen($s)
11e200 3b 0a 0a 77 68 69 6c 65 20 28 24 69 20 3c 20 24 6c 65 6e 29 20 7b 0a 24 75 6c 65 6e 20 3d 20 24 ;..while.($i.<.$len).{.$ulen.=.$
11e220 73 5b 24 69 5d 20 3c 20 22 5c 78 38 30 22 20 3f 20 31 20 3a 20 24 75 6c 65 6e 4d 61 73 6b 5b 24 s[$i].<."\x80".?.1.:.$ulenMask[$
11e240 73 5b 24 69 5d 20 26 20 22 5c 78 46 30 22 5d 3b 0a 24 75 63 68 72 20 3d 20 73 75 62 73 74 72 28 s[$i].&."\xF0"];.$uchr.=.substr(
11e260 24 73 2c 20 24 69 2c 20 24 75 6c 65 6e 29 3b 0a 24 69 20 2b 3d 20 24 75 6c 65 6e 3b 0a 0a 69 66 $s,.$i,.$ulen);.$i.+=.$ulen;..if
11e280 20 28 69 73 73 65 74 28 24 6d 61 70 5b 24 75 63 68 72 5d 29 29 20 7b 0a 24 75 63 68 72 20 3d 20 .(isset($map[$uchr])).{.$uchr.=.
11e2a0 24 6d 61 70 5b 24 75 63 68 72 5d 3b 0a 24 6e 6c 65 6e 20 3d 20 73 74 72 6c 65 6e 28 24 75 63 68 $map[$uchr];.$nlen.=.strlen($uch
11e2c0 72 29 3b 0a 0a 69 66 20 28 24 6e 6c 65 6e 20 3d 3d 20 24 75 6c 65 6e 29 20 7b 0a 24 6e 6c 65 6e r);..if.($nlen.==.$ulen).{.$nlen
11e2e0 20 3d 20 24 69 3b 0a 64 6f 20 7b 0a 24 73 5b 2d 2d 24 6e 6c 65 6e 5d 20 3d 20 24 75 63 68 72 5b .=.$i;.do.{.$s[--$nlen].=.$uchr[
11e300 2d 2d 24 75 6c 65 6e 5d 3b 0a 7d 20 77 68 69 6c 65 20 28 24 75 6c 65 6e 29 3b 0a 7d 20 65 6c 73 --$ulen];.}.while.($ulen);.}.els
11e320 65 20 7b 0a 24 73 20 3d 20 73 75 62 73 74 72 5f 72 65 70 6c 61 63 65 28 24 73 2c 20 24 75 63 68 e.{.$s.=.substr_replace($s,.$uch
11e340 72 2c 20 24 69 20 2d 20 24 75 6c 65 6e 2c 20 24 75 6c 65 6e 29 3b 0a 24 6c 65 6e 20 2b 3d 20 24 r,.$i.-.$ulen,.$ulen);.$len.+=.$
11e360 6e 6c 65 6e 20 2d 20 24 75 6c 65 6e 3b 0a 24 69 20 2b 3d 20 24 6e 6c 65 6e 20 2d 20 24 75 6c 65 nlen.-.$ulen;.$i.+=.$nlen.-.$ule
11e380 6e 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 n;.}.}.}.}..if.(null.===.$encodi
11e3a0 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 63 6f 6e 76 ng).{.return.$s;.}..return.iconv
11e3c0 28 27 55 54 46 2d 38 27 2c 20 24 65 6e 63 6f 64 69 6e 67 2c 20 24 73 29 3b 0a 7d 0a 0a 70 75 62 ('UTF-8',.$encoding,.$s);.}..pub
11e3e0 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 69 6e 74 65 72 6e 61 6c 5f lic.static.function.mb_internal_
11e400 65 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 encoding($encoding.=.null).{.if.
11e420 28 6e 75 6c 6c 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 (null.===.$encoding).{.return.se
11e440 6c 66 3a 3a 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e 67 3b 0a 7d 0a 0a 24 65 6e 63 6f 64 lf::$internalEncoding;.}..$encod
11e460 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e ing.=.self::getEncoding($encodin
11e480 67 29 3b 0a 0a 69 66 20 28 27 55 54 46 2d 38 27 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 20 7c g);..if.('UTF-8'.===.$encoding.|
11e4a0 7c 20 66 61 6c 73 65 20 21 3d 3d 20 40 69 63 6f 6e 76 28 24 65 6e 63 6f 64 69 6e 67 2c 20 24 65 |.false.!==.@iconv($encoding,.$e
11e4c0 6e 63 6f 64 69 6e 67 2c 20 27 20 27 29 29 20 7b 0a 73 65 6c 66 3a 3a 24 69 6e 74 65 72 6e 61 6c ncoding,.'.')).{.self::$internal
11e4e0 45 6e 63 6f 64 69 6e 67 20 3d 20 24 65 6e 63 6f 64 69 6e 67 3b 0a 0a 72 65 74 75 72 6e 20 74 72 Encoding.=.$encoding;..return.tr
11e500 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 ue;.}..return.false;.}..public.s
11e520 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 6c 61 6e 67 75 61 67 65 28 24 6c 61 6e 67 tatic.function.mb_language($lang
11e540 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6c 61 6e 67 29 20 7b .=.null).{.if.(null.===.$lang).{
11e560 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 6c 61 6e 67 75 61 67 65 3b 0a 7d 0a 0a 73 77 69 74 .return.self::$language;.}..swit
11e580 63 68 20 28 24 6c 61 6e 67 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6c 61 6e 67 29 29 20 7b ch.($lang.=.strtolower($lang)).{
11e5a0 0a 63 61 73 65 20 27 75 6e 69 27 3a 0a 63 61 73 65 20 27 6e 65 75 74 72 61 6c 27 3a 0a 73 65 6c .case.'uni':.case.'neutral':.sel
11e5c0 66 3a 3a 24 6c 61 6e 67 75 61 67 65 20 3d 20 24 6c 61 6e 67 3b 0a 0a 72 65 74 75 72 6e 20 74 72 f::$language.=.$lang;..return.tr
11e5e0 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 ue;.}..return.false;.}..public.s
11e600 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 6c 69 73 74 5f 65 6e 63 6f 64 69 6e 67 73 tatic.function.mb_list_encodings
11e620 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 55 54 46 2d 38 27 29 3b 0a 7d 0a 0a 70 ().{.return.array('UTF-8');.}..p
11e640 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 65 6e 63 6f 64 69 6e ublic.static.function.mb_encodin
11e660 67 5f 61 6c 69 61 73 65 73 28 24 65 6e 63 6f 64 69 6e 67 29 0a 7b 0a 73 77 69 74 63 68 20 28 73 g_aliases($encoding).{.switch.(s
11e680 74 72 74 6f 75 70 70 65 72 28 24 65 6e 63 6f 64 69 6e 67 29 29 20 7b 0a 63 61 73 65 20 27 55 54 trtoupper($encoding)).{.case.'UT
11e6a0 46 38 27 3a 0a 63 61 73 65 20 27 55 54 46 2d 38 27 3a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 F8':.case.'UTF-8':.return.array(
11e6c0 27 75 74 66 38 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 'utf8');.}..return.false;.}..pub
11e6e0 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 63 68 65 63 6b 5f 65 6e 63 lic.static.function.mb_check_enc
11e700 6f 64 69 6e 67 28 24 76 61 72 20 3d 20 6e 75 6c 6c 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e oding($var.=.null,.$encoding.=.n
11e720 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 7b ull).{.if.(null.===.$encoding).{
11e740 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 72 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c .if.(null.===.$var).{.return.fal
11e760 73 65 3b 0a 7d 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 24 69 6e 74 65 72 6e 61 se;.}.$encoding.=.self::$interna
11e780 6c 45 6e 63 6f 64 69 6e 67 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 6d 62 5f 64 65 lEncoding;.}..return.self::mb_de
11e7a0 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 76 61 72 2c 20 61 72 72 61 79 28 24 65 6e 63 6f 64 tect_encoding($var,.array($encod
11e7c0 69 6e 67 29 29 20 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 40 69 63 6f 6e 76 28 24 65 6e 63 6f 64 ing)).||.false.!==.@iconv($encod
11e7e0 69 6e 67 2c 20 24 65 6e 63 6f 64 69 6e 67 2c 20 24 76 61 72 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 ing,.$encoding,.$var);.}..public
11e800 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 .static.function.mb_detect_encod
11e820 69 6e 67 28 24 73 74 72 2c 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 6e 75 6c 6c 2c 20 ing($str,.$encodingList.=.null,.
11e840 24 73 74 72 69 63 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 $strict.=.false).{.if.(null.===.
11e860 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 20 7b 0a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d $encodingList).{.$encodingList.=
11e880 20 73 65 6c 66 3a 3a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 .self::$encodingList;.}.else.{.i
11e8a0 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 29 20 7b 0a 24 f.(!is_array($encodingList)).{.$
11e8c0 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 27 74 72 69 6d 27 2c encodingList.=.array_map('trim',
11e8e0 20 65 78 70 6c 6f 64 65 28 27 2c 27 2c 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 29 3b 0a 7d .explode(',',.$encodingList));.}
11e900 0a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 27 73 74 72 74 .$encodingList.=.array_map('strt
11e920 6f 75 70 70 65 72 27 2c 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 3b 0a 7d 0a 0a 66 6f 72 65 oupper',.$encodingList);.}..fore
11e940 61 63 68 20 28 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 61 73 20 24 65 6e 63 29 20 7b 0a 73 77 ach.($encodingList.as.$enc).{.sw
11e960 69 74 63 68 20 28 24 65 6e 63 29 20 7b 0a 63 61 73 65 20 27 41 53 43 49 49 27 3a 0a 69 66 20 28 itch.($enc).{.case.'ASCII':.if.(
11e980 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5b 5c 78 38 30 2d 5c 78 46 46 5d 2f 27 2c 20 24 73 74 !preg_match('/[\x80-\xFF]/',.$st
11e9a0 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 6e 63 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 r)).{.return.$enc;.}.break;..cas
11e9c0 65 20 27 55 54 46 38 27 3a 0a 63 61 73 65 20 27 55 54 46 2d 38 27 3a 0a 69 66 20 28 70 72 65 67 e.'UTF8':.case.'UTF-8':.if.(preg
11e9e0 5f 6d 61 74 63 68 28 27 2f 2f 75 27 2c 20 24 73 74 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 55 _match('//u',.$str)).{.return.'U
11ea00 54 46 2d 38 27 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 69 66 20 28 30 20 TF-8';.}.break;..default:.if.(0.
11ea20 3d 3d 3d 20 73 74 72 6e 63 6d 70 28 24 65 6e 63 2c 20 27 49 53 4f 2d 38 38 35 39 2d 27 2c 20 39 ===.strncmp($enc,.'ISO-8859-',.9
11ea40 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 6e 63 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 )).{.return.$enc;.}.}.}..return.
11ea60 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e false;.}..public.static.function
11ea80 20 6d 62 5f 64 65 74 65 63 74 5f 6f 72 64 65 72 28 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d .mb_detect_order($encodingList.=
11eaa0 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 4c .null).{.if.(null.===.$encodingL
11eac0 69 73 74 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 ist).{.return.self::$encodingLis
11eae0 74 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 65 6e 63 6f 64 69 6e 67 4c 69 73 t;.}..if.(!is_array($encodingLis
11eb00 74 29 29 20 7b 0a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 t)).{.$encodingList.=.array_map(
11eb20 27 74 72 69 6d 27 2c 20 65 78 70 6c 6f 64 65 28 27 2c 27 2c 20 24 65 6e 63 6f 64 69 6e 67 4c 69 'trim',.explode(',',.$encodingLi
11eb40 73 74 29 29 3b 0a 7d 0a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 61 72 72 61 79 5f 6d 61 st));.}.$encodingList.=.array_ma
11eb60 70 28 27 73 74 72 74 6f 75 70 70 65 72 27 2c 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 3b 0a p('strtoupper',.$encodingList);.
11eb80 0a 66 6f 72 65 61 63 68 20 28 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 61 73 20 24 65 6e 63 29 .foreach.($encodingList.as.$enc)
11eba0 20 7b 0a 73 77 69 74 63 68 20 28 24 65 6e 63 29 20 7b 0a 64 65 66 61 75 6c 74 3a 0a 69 66 20 28 .{.switch.($enc).{.default:.if.(
11ebc0 73 74 72 6e 63 6d 70 28 24 65 6e 63 2c 20 27 49 53 4f 2d 38 38 35 39 2d 27 2c 20 39 29 29 20 7b strncmp($enc,.'ISO-8859-',.9)).{
11ebe0 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 63 61 73 65 20 27 41 53 43 49 49 27 3a 0a 63 .return.false;.}.case.'ASCII':.c
11ec00 61 73 65 20 27 55 54 46 38 27 3a 0a 63 61 73 65 20 27 55 54 46 2d 38 27 3a 0a 7d 0a 7d 0a 0a 73 ase.'UTF8':.case.'UTF-8':.}.}..s
11ec20 65 6c 66 3a 3a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 24 65 6e 63 6f 64 69 6e 67 4c 69 elf::$encodingList.=.$encodingLi
11ec40 73 74 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 st;..return.true;.}..public.stat
11ec60 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 65 6e 63 6f 64 ic.function.mb_strlen($s,.$encod
11ec80 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a ing.=.null).{.$encoding.=.self::
11eca0 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 72 65 74 75 72 6e 20 getEncoding($encoding);..return.
11ecc0 69 63 6f 6e 76 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a iconv_strlen($s,.$encoding);.}..
11ece0 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 70 6f 73 public.static.function.mb_strpos
11ed00 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 66 73 65 74 20 3d 20 30 ($haystack,.$needle,.$offset.=.0
11ed20 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 65 6e 63 6f 64 69 6e 67 20 ,.$encoding.=.null).{.$encoding.
11ed40 3d 20 73 65 6c 66 3a 3a 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 29 3b 0a =.self::getEncoding($encoding);.
11ed60 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 6e 65 65 64 6c 65 20 2e 3d 20 27 27 29 20 7b 0a 74 72 69 .if.(''.===.$needle..=.'').{.tri
11ed80 67 67 65 72 5f 65 72 72 6f 72 28 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 3a 20 45 6d 70 74 79 20 64 gger_error(__METHOD__.':.Empty.d
11eda0 65 6c 69 6d 69 74 65 72 27 2c 20 45 5f 55 53 45 52 5f 57 41 52 4e 49 4e 47 29 3b 0a 0a 72 65 74 elimiter',.E_USER_WARNING);..ret
11edc0 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 63 6f 6e 76 5f 73 74 72 70 6f urn.false;.}..return.iconv_strpo
11ede0 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 66 73 65 74 2c 20 24 s($haystack,.$needle,.$offset,.$
11ee00 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 encoding);.}..public.static.func
11ee20 74 69 6f 6e 20 6d 62 5f 73 74 72 72 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 tion.mb_strrpos($haystack,.$need
11ee40 6c 65 2c 20 24 6f 66 66 73 65 74 20 3d 20 30 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c le,.$offset.=.0,.$encoding.=.nul
11ee60 6c 29 0a 7b 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 67 65 74 45 6e 63 6f 64 69 l).{.$encoding.=.self::getEncodi
11ee80 6e 67 28 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 24 6f 66 66 73 65 74 20 21 3d 20 28 ng($encoding);..if.($offset.!=.(
11eea0 69 6e 74 29 20 24 6f 66 66 73 65 74 29 20 7b 0a 24 6f 66 66 73 65 74 20 3d 20 30 3b 0a 7d 20 65 int).$offset).{.$offset.=.0;.}.e
11eec0 6c 73 65 69 66 20 28 24 6f 66 66 73 65 74 20 3d 20 28 69 6e 74 29 20 24 6f 66 66 73 65 74 29 20 lseif.($offset.=.(int).$offset).
11eee0 7b 0a 69 66 20 28 24 6f 66 66 73 65 74 20 3c 20 30 29 20 7b 0a 24 68 61 79 73 74 61 63 6b 20 3d {.if.($offset.<.0).{.$haystack.=
11ef00 20 73 65 6c 66 3a 3a 6d 62 5f 73 75 62 73 74 72 28 24 68 61 79 73 74 61 63 6b 2c 20 30 2c 20 24 .self::mb_substr($haystack,.0,.$
11ef20 6f 66 66 73 65 74 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 6f 66 66 73 65 74 20 3d 20 30 3b offset,.$encoding);.$offset.=.0;
11ef40 0a 7d 20 65 6c 73 65 20 7b 0a 24 68 61 79 73 74 61 63 6b 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 73 .}.else.{.$haystack.=.self::mb_s
11ef60 75 62 73 74 72 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6f 66 66 73 65 74 2c 20 32 31 34 37 34 38 ubstr($haystack,.$offset,.214748
11ef80 33 36 34 37 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 7d 0a 0a 24 70 6f 73 20 3d 20 69 63 3647,.$encoding);.}.}..$pos.=.ic
11efa0 6f 6e 76 5f 73 74 72 72 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 onv_strrpos($haystack,.$needle,.
11efc0 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 24 70 $encoding);..return.false.!==.$p
11efe0 6f 73 20 3f 20 24 6f 66 66 73 65 74 20 2b 20 24 70 6f 73 20 3a 20 66 61 6c 73 65 3b 0a 7d 0a 0a os.?.$offset.+.$pos.:.false;.}..
11f000 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 74 6f 6c public.static.function.mb_strtol
11f020 6f 77 65 72 28 24 73 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 ower($s,.$encoding.=.null).{.ret
11f040 75 72 6e 20 73 65 6c 66 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 73 2c 20 4d 42 urn.self::mb_convert_case($s,.MB
11f060 5f 43 41 53 45 5f 4c 4f 57 45 52 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 70 75 62 6c _CASE_LOWER,.$encoding);.}..publ
11f080 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 74 6f 75 70 70 65 72 ic.static.function.mb_strtoupper
11f0a0 28 24 73 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 ($s,.$encoding.=.null).{.return.
11f0c0 73 65 6c 66 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 73 2c 20 4d 42 5f 43 41 53 self::mb_convert_case($s,.MB_CAS
11f0e0 45 5f 55 50 50 45 52 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 E_UPPER,.$encoding);.}..public.s
11f100 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 75 62 73 74 69 74 75 74 65 5f 63 68 61 tatic.function.mb_substitute_cha
11f120 72 61 63 74 65 72 28 24 63 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 racter($c.=.null).{.if.(0.===.st
11f140 72 63 61 73 65 63 6d 70 28 24 63 2c 20 27 6e 6f 6e 65 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 rcasecmp($c,.'none')).{.return.t
11f160 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 20 21 3d 3d 20 24 63 20 3f 20 66 61 6c rue;.}..return.null.!==.$c.?.fal
11f180 73 65 20 3a 20 27 6e 6f 6e 65 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 se.:.'none';.}..public.static.fu
11f1a0 6e 63 74 69 6f 6e 20 6d 62 5f 73 75 62 73 74 72 28 24 73 2c 20 24 73 74 61 72 74 2c 20 24 6c 65 nction.mb_substr($s,.$start,.$le
11f1c0 6e 67 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b ngth.=.null,.$encoding.=.null).{
11f1e0 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 .$encoding.=.self::getEncoding($
11f200 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 24 73 74 61 72 74 20 3c 20 30 29 20 7b 0a 24 73 encoding);..if.($start.<.0).{.$s
11f220 74 61 72 74 20 3d 20 69 63 6f 6e 76 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 65 6e 63 6f 64 69 6e tart.=.iconv_strlen($s,.$encodin
11f240 67 29 20 2b 20 24 73 74 61 72 74 3b 0a 69 66 20 28 24 73 74 61 72 74 20 3c 20 30 29 20 7b 0a 24 g).+.$start;.if.($start.<.0).{.$
11f260 73 74 61 72 74 20 3d 20 30 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6c 65 start.=.0;.}.}..if.(null.===.$le
11f280 6e 67 74 68 29 20 7b 0a 24 6c 65 6e 67 74 68 20 3d 20 32 31 34 37 34 38 33 36 34 37 3b 0a 7d 20 ngth).{.$length.=.2147483647;.}.
11f2a0 65 6c 73 65 69 66 20 28 24 6c 65 6e 67 74 68 20 3c 20 30 29 20 7b 0a 24 6c 65 6e 67 74 68 20 3d elseif.($length.<.0).{.$length.=
11f2c0 20 69 63 6f 6e 76 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 65 6e 63 6f 64 69 6e 67 29 20 2b 20 24 .iconv_strlen($s,.$encoding).+.$
11f2e0 6c 65 6e 67 74 68 20 2d 20 24 73 74 61 72 74 3b 0a 69 66 20 28 24 6c 65 6e 67 74 68 20 3c 20 30 length.-.$start;.if.($length.<.0
11f300 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 63 6f 6e 76 ).{.return.'';.}.}..return.iconv
11f320 5f 73 75 62 73 74 72 28 24 73 2c 20 24 73 74 61 72 74 2c 20 24 6c 65 6e 67 74 68 2c 20 24 65 6e _substr($s,.$start,.$length,.$en
11f340 63 6f 64 69 6e 67 29 2e 27 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e coding).'';.}..public.static.fun
11f360 63 74 69 6f 6e 20 6d 62 5f 73 74 72 69 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 ction.mb_stripos($haystack,.$nee
11f380 64 6c 65 2c 20 24 6f 66 66 73 65 74 20 3d 20 30 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 dle,.$offset.=.0,.$encoding.=.nu
11f3a0 6c 6c 29 0a 7b 0a 24 68 61 79 73 74 61 63 6b 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 63 6f 6e 76 65 ll).{.$haystack.=.self::mb_conve
11f3c0 72 74 5f 63 61 73 65 28 24 68 61 79 73 74 61 63 6b 2c 20 73 65 6c 66 3a 3a 4d 42 5f 43 41 53 45 rt_case($haystack,.self::MB_CASE
11f3e0 5f 46 4f 4c 44 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 6e 65 65 64 6c 65 20 3d 20 73 65 6c _FOLD,.$encoding);.$needle.=.sel
11f400 66 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 6e 65 65 64 6c 65 2c 20 73 65 6c 66 f::mb_convert_case($needle,.self
11f420 3a 3a 4d 42 5f 43 41 53 45 5f 46 4f 4c 44 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 72 65 74 ::MB_CASE_FOLD,.$encoding);..ret
11f440 75 72 6e 20 73 65 6c 66 3a 3a 6d 62 5f 73 74 72 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 urn.self::mb_strpos($haystack,.$
11f460 6e 65 65 64 6c 65 2c 20 24 6f 66 66 73 65 74 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a needle,.$offset,.$encoding);.}..
11f480 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 69 73 74 public.static.function.mb_strist
11f4a0 72 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 20 3d 20 66 61 r($haystack,.$needle,.$part.=.fa
11f4c0 6c 73 65 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 6f 73 20 3d 20 lse,.$encoding.=.null).{.$pos.=.
11f4e0 73 65 6c 66 3a 3a 6d 62 5f 73 74 72 69 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 self::mb_stripos($haystack,.$nee
11f500 64 6c 65 2c 20 30 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 dle,.0,.$encoding);..return.self
11f520 3a 3a 67 65 74 53 75 62 70 61 72 74 28 24 70 6f 73 2c 20 24 70 61 72 74 2c 20 24 68 61 79 73 74 ::getSubpart($pos,.$part,.$hayst
11f540 61 63 6b 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 ack,.$encoding);.}..public.stati
11f560 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 72 63 68 72 28 24 68 61 79 73 74 61 63 6b 2c c.function.mb_strrchr($haystack,
11f580 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 20 3d 20 66 61 6c 73 65 2c 20 24 65 6e 63 6f 64 69 .$needle,.$part.=.false,.$encodi
11f5a0 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 67 ng.=.null).{.$encoding.=.self::g
11f5c0 65 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 6e 65 65 64 6c 65 20 3d etEncoding($encoding);.$needle.=
11f5e0 20 73 65 6c 66 3a 3a 6d 62 5f 73 75 62 73 74 72 28 24 6e 65 65 64 6c 65 2c 20 30 2c 20 31 2c 20 .self::mb_substr($needle,.0,.1,.
11f600 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 70 6f 73 20 3d 20 69 63 6f 6e 76 5f 73 74 72 72 70 6f 73 $encoding);.$pos.=.iconv_strrpos
11f620 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b ($haystack,.$needle,.$encoding);
11f640 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 67 65 74 53 75 62 70 61 72 74 28 24 70 6f 73 2c 20 ..return.self::getSubpart($pos,.
11f660 24 70 61 72 74 2c 20 24 68 61 79 73 74 61 63 6b 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a $part,.$haystack,.$encoding);.}.
11f680 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 72 69 .public.static.function.mb_strri
11f6a0 63 68 72 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 20 3d 20 chr($haystack,.$needle,.$part.=.
11f6c0 66 61 6c 73 65 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6e 65 65 64 false,.$encoding.=.null).{.$need
11f6e0 6c 65 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 73 75 62 73 74 72 28 24 6e 65 65 64 6c 65 2c 20 30 2c le.=.self::mb_substr($needle,.0,
11f700 20 31 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 70 6f 73 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f .1,.$encoding);.$pos.=.self::mb_
11f720 73 74 72 72 69 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 65 6e strripos($haystack,.$needle,.$en
11f740 63 6f 64 69 6e 67 29 3b 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 67 65 74 53 75 62 70 61 72 coding);..return.self::getSubpar
11f760 74 28 24 70 6f 73 2c 20 24 70 61 72 74 2c 20 24 68 61 79 73 74 61 63 6b 2c 20 24 65 6e 63 6f 64 t($pos,.$part,.$haystack,.$encod
11f780 69 6e 67 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 ing);.}..public.static.function.
11f7a0 6d 62 5f 73 74 72 72 69 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 mb_strripos($haystack,.$needle,.
11f7c0 24 6f 66 66 73 65 74 20 3d 20 30 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b $offset.=.0,.$encoding.=.null).{
11f7e0 0a 24 68 61 79 73 74 61 63 6b 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 .$haystack.=.self::mb_convert_ca
11f800 73 65 28 24 68 61 79 73 74 61 63 6b 2c 20 73 65 6c 66 3a 3a 4d 42 5f 43 41 53 45 5f 46 4f 4c 44 se($haystack,.self::MB_CASE_FOLD
11f820 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 6e 65 65 64 6c 65 20 3d 20 73 65 6c 66 3a 3a 6d 62 ,.$encoding);.$needle.=.self::mb
11f840 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 6e 65 65 64 6c 65 2c 20 73 65 6c 66 3a 3a 4d 42 5f _convert_case($needle,.self::MB_
11f860 43 41 53 45 5f 46 4f 4c 44 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 72 65 74 75 72 6e 20 73 CASE_FOLD,.$encoding);..return.s
11f880 65 6c 66 3a 3a 6d 62 5f 73 74 72 72 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 elf::mb_strrpos($haystack,.$need
11f8a0 6c 65 2c 20 24 6f 66 66 73 65 74 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 70 75 62 6c le,.$offset,.$encoding);.}..publ
11f8c0 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 73 74 72 28 24 68 61 ic.static.function.mb_strstr($ha
11f8e0 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 20 3d 20 66 61 6c 73 65 2c 20 ystack,.$needle,.$part.=.false,.
11f900 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 6f 73 20 3d 20 73 74 72 70 6f $encoding.=.null).{.$pos.=.strpo
11f920 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 29 3b 0a 69 66 20 28 66 61 6c 73 65 s($haystack,.$needle);.if.(false
11f940 20 3d 3d 3d 20 24 70 6f 73 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 69 66 20 .===.$pos).{.return.false;.}.if.
11f960 28 24 70 61 72 74 29 20 7b 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 68 61 79 73 74 61 63 ($part).{.return.substr($haystac
11f980 6b 2c 20 30 2c 20 24 70 6f 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 68 k,.0,.$pos);.}..return.substr($h
11f9a0 61 79 73 74 61 63 6b 2c 20 24 70 6f 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 aystack,.$pos);.}..public.static
11f9c0 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 67 65 74 5f 69 6e 66 6f 28 24 74 79 70 65 20 3d 20 27 61 .function.mb_get_info($type.=.'a
11f9e0 6c 6c 27 29 0a 7b 0a 24 69 6e 66 6f 20 3d 20 61 72 72 61 79 28 0a 27 69 6e 74 65 72 6e 61 6c 5f ll').{.$info.=.array(.'internal_
11fa00 65 6e 63 6f 64 69 6e 67 27 20 3d 3e 20 73 65 6c 66 3a 3a 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f encoding'.=>.self::$internalEnco
11fa20 64 69 6e 67 2c 0a 27 68 74 74 70 5f 6f 75 74 70 75 74 27 20 3d 3e 20 27 70 61 73 73 27 2c 0a 27 ding,.'http_output'.=>.'pass',.'
11fa40 68 74 74 70 5f 6f 75 74 70 75 74 5f 63 6f 6e 76 5f 6d 69 6d 65 74 79 70 65 73 27 20 3d 3e 20 27 http_output_conv_mimetypes'.=>.'
11fa60 5e 28 74 65 78 74 2f 7c 61 70 70 6c 69 63 61 74 69 6f 6e 2f 78 68 74 6d 6c 5c 2b 78 6d 6c 29 27 ^(text/|application/xhtml\+xml)'
11fa80 2c 0a 27 66 75 6e 63 5f 6f 76 65 72 6c 6f 61 64 27 20 3d 3e 20 30 2c 0a 27 66 75 6e 63 5f 6f 76 ,.'func_overload'.=>.0,.'func_ov
11faa0 65 72 6c 6f 61 64 5f 6c 69 73 74 27 20 3d 3e 20 27 6e 6f 20 6f 76 65 72 6c 6f 61 64 27 2c 0a 27 erload_list'.=>.'no.overload',.'
11fac0 6d 61 69 6c 5f 63 68 61 72 73 65 74 27 20 3d 3e 20 27 55 54 46 2d 38 27 2c 0a 27 6d 61 69 6c 5f mail_charset'.=>.'UTF-8',.'mail_
11fae0 68 65 61 64 65 72 5f 65 6e 63 6f 64 69 6e 67 27 20 3d 3e 20 27 42 41 53 45 36 34 27 2c 0a 27 6d header_encoding'.=>.'BASE64',.'m
11fb00 61 69 6c 5f 62 6f 64 79 5f 65 6e 63 6f 64 69 6e 67 27 20 3d 3e 20 27 42 41 53 45 36 34 27 2c 0a ail_body_encoding'.=>.'BASE64',.
11fb20 27 69 6c 6c 65 67 61 6c 5f 63 68 61 72 73 27 20 3d 3e 20 30 2c 0a 27 65 6e 63 6f 64 69 6e 67 5f 'illegal_chars'.=>.0,.'encoding_
11fb40 74 72 61 6e 73 6c 61 74 69 6f 6e 27 20 3d 3e 20 27 4f 66 66 27 2c 0a 27 6c 61 6e 67 75 61 67 65 translation'.=>.'Off',.'language
11fb60 27 20 3d 3e 20 73 65 6c 66 3a 3a 24 6c 61 6e 67 75 61 67 65 2c 0a 27 64 65 74 65 63 74 5f 6f 72 '.=>.self::$language,.'detect_or
11fb80 64 65 72 27 20 3d 3e 20 73 65 6c 66 3a 3a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 2c 0a 27 73 75 der'.=>.self::$encodingList,.'su
11fba0 62 73 74 69 74 75 74 65 5f 63 68 61 72 61 63 74 65 72 27 20 3d 3e 20 27 6e 6f 6e 65 27 2c 0a 27 bstitute_character'.=>.'none',.'
11fbc0 73 74 72 69 63 74 5f 64 65 74 65 63 74 69 6f 6e 27 20 3d 3e 20 27 4f 66 66 27 2c 0a 29 3b 0a 0a strict_detection'.=>.'Off',.);..
11fbe0 69 66 20 28 27 61 6c 6c 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 if.('all'.===.$type).{.return.$i
11fc00 6e 66 6f 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 66 6f 5b 24 74 79 70 65 5d 29 29 20 nfo;.}.if.(isset($info[$type])).
11fc20 7b 0a 72 65 74 75 72 6e 20 24 69 6e 66 6f 5b 24 74 79 70 65 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e {.return.$info[$type];.}..return
11fc40 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f .false;.}..public.static.functio
11fc60 6e 20 6d 62 5f 68 74 74 70 5f 69 6e 70 75 74 28 24 74 79 70 65 20 3d 20 27 27 29 0a 7b 0a 72 65 n.mb_http_input($type.=.'').{.re
11fc80 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e turn.false;.}..public.static.fun
11fca0 63 74 69 6f 6e 20 6d 62 5f 68 74 74 70 5f 6f 75 74 70 75 74 28 24 65 6e 63 6f 64 69 6e 67 20 3d ction.mb_http_output($encoding.=
11fcc0 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 20 21 3d 3d 20 24 65 6e 63 6f 64 69 .null).{.return.null.!==.$encodi
11fce0 6e 67 20 3f 20 27 70 61 73 73 27 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 20 3a 20 27 70 61 73 ng.?.'pass'.===.$encoding.:.'pas
11fd00 73 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 s';.}..public.static.function.mb
11fd20 5f 73 74 72 77 69 64 74 68 28 24 73 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a _strwidth($s,.$encoding.=.null).
11fd40 7b 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 67 65 74 45 6e 63 6f 64 69 6e 67 28 {.$encoding.=.self::getEncoding(
11fd60 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 27 55 54 46 2d 38 27 20 21 3d 3d 20 24 65 6e $encoding);..if.('UTF-8'.!==.$en
11fd80 63 6f 64 69 6e 67 29 20 7b 0a 24 73 20 3d 20 69 63 6f 6e 76 28 24 65 6e 63 6f 64 69 6e 67 2c 20 coding).{.$s.=.iconv($encoding,.
11fda0 27 55 54 46 2d 38 27 2c 20 24 73 29 3b 0a 7d 0a 0a 24 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 'UTF-8',.$s);.}..$s.=.preg_repla
11fdc0 63 65 28 27 2f 5b 5c 78 7b 31 31 30 30 7d 2d 5c 78 7b 31 31 35 46 7d 5c 78 7b 32 33 32 39 7d 5c ce('/[\x{1100}-\x{115F}\x{2329}\
11fde0 78 7b 32 33 32 41 7d 5c 78 7b 32 45 38 30 7d 2d 5c 78 7b 33 30 33 45 7d 5c 78 7b 33 30 34 30 7d x{232A}\x{2E80}-\x{303E}\x{3040}
11fe00 2d 5c 78 7b 41 34 43 46 7d 5c 78 7b 41 43 30 30 7d 2d 5c 78 7b 44 37 41 33 7d 5c 78 7b 46 39 30 -\x{A4CF}\x{AC00}-\x{D7A3}\x{F90
11fe20 30 7d 2d 5c 78 7b 46 41 46 46 7d 5c 78 7b 46 45 31 30 7d 2d 5c 78 7b 46 45 31 39 7d 5c 78 7b 46 0}-\x{FAFF}\x{FE10}-\x{FE19}\x{F
11fe40 45 33 30 7d 2d 5c 78 7b 46 45 36 46 7d 5c 78 7b 46 46 30 30 7d 2d 5c 78 7b 46 46 36 30 7d 5c 78 E30}-\x{FE6F}\x{FF00}-\x{FF60}\x
11fe60 7b 46 46 45 30 7d 2d 5c 78 7b 46 46 45 36 7d 5c 78 7b 32 30 30 30 30 7d 2d 5c 78 7b 32 46 46 46 {FFE0}-\x{FFE6}\x{20000}-\x{2FFF
11fe80 44 7d 5c 78 7b 33 30 30 30 30 7d 2d 5c 78 7b 33 46 46 46 44 7d 5d 2f 75 27 2c 20 27 27 2c 20 24 D}\x{30000}-\x{3FFFD}]/u',.'',.$
11fea0 73 2c 20 2d 31 2c 20 24 77 69 64 65 29 3b 0a 0a 72 65 74 75 72 6e 20 28 24 77 69 64 65 20 3c 3c s,.-1,.$wide);..return.($wide.<<
11fec0 20 31 29 20 2b 20 69 63 6f 6e 76 5f 73 74 72 6c 65 6e 28 24 73 2c 20 27 55 54 46 2d 38 27 29 3b .1).+.iconv_strlen($s,.'UTF-8');
11fee0 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 75 .}..public.static.function.mb_su
11ff00 62 73 74 72 5f 63 6f 75 6e 74 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 bstr_count($haystack,.$needle,.$
11ff20 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 encoding.=.null).{.return.substr
11ff40 5f 63 6f 75 6e 74 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 29 3b 0a 7d 0a 0a 70 _count($haystack,.$needle);.}..p
11ff60 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 6f 75 74 70 75 74 5f ublic.static.function.mb_output_
11ff80 68 61 6e 64 6c 65 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 24 73 74 61 74 75 73 29 0a 7b 0a 72 65 handler($contents,.$status).{.re
11ffa0 74 75 72 6e 20 24 63 6f 6e 74 65 6e 74 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 turn.$contents;.}..private.stati
11ffc0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 62 70 61 72 74 28 24 70 6f 73 2c 20 24 70 61 72 c.function.getSubpart($pos,.$par
11ffe0 74 2c 20 24 68 61 79 73 74 61 63 6b 2c 20 24 65 6e 63 6f 64 69 6e 67 29 0a 7b 0a 69 66 20 28 66 t,.$haystack,.$encoding).{.if.(f
120000 61 6c 73 65 20 3d 3d 3d 20 24 70 6f 73 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d alse.===.$pos).{.return.false;.}
120020 0a 69 66 20 28 24 70 61 72 74 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 6d 62 5f 73 75 .if.($part).{.return.self::mb_su
120040 62 73 74 72 28 24 68 61 79 73 74 61 63 6b 2c 20 30 2c 20 24 70 6f 73 2c 20 24 65 6e 63 6f 64 69 bstr($haystack,.0,.$pos,.$encodi
120060 6e 67 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 6d 62 5f 73 75 62 73 74 72 28 24 ng);.}..return.self::mb_substr($
120080 68 61 79 73 74 61 63 6b 2c 20 24 70 6f 73 2c 20 6e 75 6c 6c 2c 20 24 65 6e 63 6f 64 69 6e 67 29 haystack,.$pos,.null,.$encoding)
1200a0 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 74 6d ;.}..private.static.function.htm
1200c0 6c 5f 65 6e 63 6f 64 69 6e 67 5f 63 61 6c 6c 62 61 63 6b 28 24 6d 29 0a 7b 0a 24 69 20 3d 20 31 l_encoding_callback($m).{.$i.=.1
1200e0 3b 0a 24 65 6e 74 69 74 69 65 73 20 3d 20 27 27 3b 0a 24 6d 20 3d 20 75 6e 70 61 63 6b 28 27 43 ;.$entities.=.'';.$m.=.unpack('C
120100 2a 27 2c 20 68 74 6d 6c 65 6e 74 69 74 69 65 73 28 24 6d 5b 30 5d 2c 20 45 4e 54 5f 43 4f 4d 50 *',.htmlentities($m[0],.ENT_COMP
120120 41 54 2c 20 27 55 54 46 2d 38 27 29 29 3b 0a 0a 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 6d 5b AT,.'UTF-8'));..while.(isset($m[
120140 24 69 5d 29 29 20 7b 0a 69 66 20 28 30 78 38 30 20 3e 20 24 6d 5b 24 69 5d 29 20 7b 0a 24 65 6e $i])).{.if.(0x80.>.$m[$i]).{.$en
120160 74 69 74 69 65 73 20 2e 3d 20 63 68 72 28 24 6d 5b 24 69 2b 2b 5d 29 3b 0a 63 6f 6e 74 69 6e 75 tities..=.chr($m[$i++]);.continu
120180 65 3b 0a 7d 0a 69 66 20 28 30 78 46 30 20 3c 3d 20 24 6d 5b 24 69 5d 29 20 7b 0a 24 63 20 3d 20 e;.}.if.(0xF0.<=.$m[$i]).{.$c.=.
1201a0 28 28 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 46 30 29 20 3c 3c 20 31 38 29 20 2b 20 28 28 24 6d (($m[$i++].-.0xF0).<<.18).+.(($m
1201c0 5b 24 69 2b 2b 5d 20 2d 20 30 78 38 30 29 20 3c 3c 20 31 32 29 20 2b 20 28 28 24 6d 5b 24 69 2b [$i++].-.0x80).<<.12).+.(($m[$i+
1201e0 2b 5d 20 2d 20 30 78 38 30 29 20 3c 3c 20 36 29 20 2b 20 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 +].-.0x80).<<.6).+.$m[$i++].-.0x
120200 38 30 3b 0a 7d 20 65 6c 73 65 69 66 20 28 30 78 45 30 20 3c 3d 20 24 6d 5b 24 69 5d 29 20 7b 0a 80;.}.elseif.(0xE0.<=.$m[$i]).{.
120220 24 63 20 3d 20 28 28 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 45 30 29 20 3c 3c 20 31 32 29 20 2b $c.=.(($m[$i++].-.0xE0).<<.12).+
120240 20 28 28 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 38 30 29 20 3c 3c 20 36 29 20 2b 20 24 6d 5b 24 .(($m[$i++].-.0x80).<<.6).+.$m[$
120260 69 2b 2b 5d 20 2d 20 30 78 38 30 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 20 3d 20 28 28 24 6d 5b i++].-.0x80;.}.else.{.$c.=.(($m[
120280 24 69 2b 2b 5d 20 2d 20 30 78 43 30 29 20 3c 3c 20 36 29 20 2b 20 24 6d 5b 24 69 2b 2b 5d 20 2d $i++].-.0xC0).<<.6).+.$m[$i++].-
1202a0 20 30 78 38 30 3b 0a 7d 0a 0a 24 65 6e 74 69 74 69 65 73 20 2e 3d 20 27 26 23 27 2e 24 63 2e 27 .0x80;.}..$entities..=.'&#'.$c.'
1202c0 3b 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 6e 74 69 74 69 65 73 3b 0a 7d 0a 0a 70 72 69 76 ;';.}..return.$entities;.}..priv
1202e0 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 69 74 6c 65 5f 63 61 73 65 5f 6c ate.static.function.title_case_l
120300 6f 77 65 72 28 24 73 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 6d 62 5f 63 6f 6e 76 65 ower($s).{.return.self::mb_conve
120320 72 74 5f 63 61 73 65 28 24 73 5b 30 5d 2c 20 4d 42 5f 43 41 53 45 5f 4c 4f 57 45 52 2c 20 27 55 rt_case($s[0],.MB_CASE_LOWER,.'U
120340 54 46 2d 38 27 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 TF-8');.}..private.static.functi
120360 6f 6e 20 74 69 74 6c 65 5f 63 61 73 65 5f 75 70 70 65 72 28 24 73 29 0a 7b 0a 72 65 74 75 72 6e on.title_case_upper($s).{.return
120380 20 73 65 6c 66 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 73 5b 30 5d 2c 20 4d 42 .self::mb_convert_case($s[0],.MB
1203a0 5f 43 41 53 45 5f 55 50 50 45 52 2c 20 27 55 54 46 2d 38 27 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 _CASE_UPPER,.'UTF-8');.}..privat
1203c0 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 61 74 61 28 24 66 69 6c 65 29 e.static.function.getData($file)
1203e0 0a 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 20 3d 20 5f 5f 44 49 52 .{.if.(file_exists($file.=.__DIR
120400 5f 5f 2e 27 2f 52 65 73 6f 75 72 63 65 73 2f 75 6e 69 64 61 74 61 2f 27 2e 24 66 69 6c 65 2e 27 __.'/Resources/unidata/'.$file.'
120420 2e 73 65 72 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 75 6e 73 65 72 69 61 6c 69 7a 65 28 66 69 6c .ser')).{.return.unserialize(fil
120440 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 e_get_contents($file));.}..retur
120460 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 n.false;.}..private.static.funct
120480 69 6f 6e 20 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 29 0a 7b 0a 69 66 20 ion.getEncoding($encoding).{.if.
1204a0 28 6e 75 6c 6c 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 (null.===.$encoding).{.return.se
1204c0 6c 66 3a 3a 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e 67 3b 0a 7d 0a 0a 24 65 6e 63 6f 64 lf::$internalEncoding;.}..$encod
1204e0 69 6e 67 20 3d 20 73 74 72 74 6f 75 70 70 65 72 28 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 ing.=.strtoupper($encoding);..if
120500 20 28 27 38 42 49 54 27 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 20 7c 7c 20 27 42 49 4e 41 52 .('8BIT'.===.$encoding.||.'BINAR
120520 59 27 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 27 43 50 38 35 Y'.===.$encoding).{.return.'CP85
120540 30 27 3b 0a 7d 0a 69 66 20 28 27 55 54 46 38 27 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 0';.}.if.('UTF8'.===.$encoding).
120560 7b 0a 72 65 74 75 72 6e 20 27 55 54 46 2d 38 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 6e 63 {.return.'UTF-8';.}..return.$enc
120580 6f 64 69 6e 67 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 75 73 65 20 53 oding;.}.}.<?php...........use.S
1205a0 79 6d 66 6f 6e 79 5c 50 6f 6c 79 66 69 6c 6c 5c 4d 62 73 74 72 69 6e 67 20 61 73 20 70 3b 0a 0a ymfony\Polyfill\Mbstring.as.p;..
1205c0 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 6d 62 5f 73 74 72 6c 65 6e 27 if.(!function_exists('mb_strlen'
1205e0 29 29 20 7b 0a 64 65 66 69 6e 65 28 27 4d 42 5f 43 41 53 45 5f 55 50 50 45 52 27 2c 20 30 29 3b )).{.define('MB_CASE_UPPER',.0);
120600 0a 64 65 66 69 6e 65 28 27 4d 42 5f 43 41 53 45 5f 4c 4f 57 45 52 27 2c 20 31 29 3b 0a 64 65 66 .define('MB_CASE_LOWER',.1);.def
120620 69 6e 65 28 27 4d 42 5f 43 41 53 45 5f 54 49 54 4c 45 27 2c 20 32 29 3b 0a 0a 66 75 6e 63 74 69 ine('MB_CASE_TITLE',.2);..functi
120640 6f 6e 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 2c 20 24 74 6f 2c 20 on.mb_convert_encoding($s,.$to,.
120660 24 66 72 6f 6d 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e $from.=.null).{.return.p\Mbstrin
120680 67 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 2c 20 24 74 6f 2c 20 g::mb_convert_encoding($s,.$to,.
1206a0 24 66 72 6f 6d 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 64 65 63 6f 64 65 5f 6d 69 6d $from);.}.function.mb_decode_mim
1206c0 65 68 65 61 64 65 72 28 24 73 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a eheader($s).{.return.p\Mbstring:
1206e0 3a 6d 62 5f 64 65 63 6f 64 65 5f 6d 69 6d 65 68 65 61 64 65 72 28 24 73 29 3b 20 7d 0a 66 75 6e :mb_decode_mimeheader($s);.}.fun
120700 63 74 69 6f 6e 20 6d 62 5f 65 6e 63 6f 64 65 5f 6d 69 6d 65 68 65 61 64 65 72 28 24 73 2c 20 24 ction.mb_encode_mimeheader($s,.$
120720 63 68 61 72 73 65 74 20 3d 20 6e 75 6c 6c 2c 20 24 74 72 61 6e 73 66 65 72 45 6e 63 20 3d 20 6e charset.=.null,.$transferEnc.=.n
120740 75 6c 6c 2c 20 24 6c 66 20 3d 20 6e 75 6c 6c 2c 20 24 69 6e 64 65 6e 74 20 3d 20 6e 75 6c 6c 29 ull,.$lf.=.null,.$indent.=.null)
120760 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 65 6e 63 6f 64 65 5f .{.return.p\Mbstring::mb_encode_
120780 6d 69 6d 65 68 65 61 64 65 72 28 24 73 2c 20 24 63 68 61 72 73 65 74 2c 20 24 74 72 61 6e 73 66 mimeheader($s,.$charset,.$transf
1207a0 65 72 45 6e 63 2c 20 24 6c 66 2c 20 24 69 6e 64 65 6e 74 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e erEnc,.$lf,.$indent);.}.function
1207c0 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 73 2c 20 24 6d 6f 64 65 2c 20 24 65 6e 63 .mb_convert_case($s,.$mode,.$enc
1207e0 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 .=.null).{.return.p\Mbstring::mb
120800 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 73 2c 20 24 6d 6f 64 65 2c 20 24 65 6e 63 29 3b 20 _convert_case($s,.$mode,.$enc);.
120820 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 69 6e 74 65 72 6e 61 6c 5f 65 6e 63 6f 64 69 6e 67 28 }.function.mb_internal_encoding(
120840 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 $enc.=.null).{.return.p\Mbstring
120860 3a 3a 6d 62 5f 69 6e 74 65 72 6e 61 6c 5f 65 6e 63 6f 64 69 6e 67 28 24 65 6e 63 29 3b 20 7d 0a ::mb_internal_encoding($enc);.}.
120880 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 6c 61 6e 67 75 61 67 65 28 24 6c 61 6e 67 20 3d 20 6e 75 6c function.mb_language($lang.=.nul
1208a0 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 6c 61 6e 67 75 l).{.return.p\Mbstring::mb_langu
1208c0 61 67 65 28 24 6c 61 6e 67 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 6c 69 73 74 5f 65 age($lang);.}.function.mb_list_e
1208e0 6e 63 6f 64 69 6e 67 73 28 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a ncodings().{.return.p\Mbstring::
120900 6d 62 5f 6c 69 73 74 5f 65 6e 63 6f 64 69 6e 67 73 28 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 mb_list_encodings();.}.function.
120920 6d 62 5f 65 6e 63 6f 64 69 6e 67 5f 61 6c 69 61 73 65 73 28 24 65 6e 63 6f 64 69 6e 67 29 20 7b mb_encoding_aliases($encoding).{
120940 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 65 6e 63 6f 64 69 6e 67 5f .return.p\Mbstring::mb_encoding_
120960 61 6c 69 61 73 65 73 28 24 65 6e 63 6f 64 69 6e 67 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d aliases($encoding);.}.function.m
120980 62 5f 63 68 65 63 6b 5f 65 6e 63 6f 64 69 6e 67 28 24 76 61 72 20 3d 20 6e 75 6c 6c 2c 20 24 65 b_check_encoding($var.=.null,.$e
1209a0 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 ncoding.=.null).{.return.p\Mbstr
1209c0 69 6e 67 3a 3a 6d 62 5f 63 68 65 63 6b 5f 65 6e 63 6f 64 69 6e 67 28 24 76 61 72 2c 20 24 65 6e ing::mb_check_encoding($var,.$en
1209e0 63 6f 64 69 6e 67 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e coding);.}.function.mb_detect_en
120a00 63 6f 64 69 6e 67 28 24 73 74 72 2c 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 6e 75 6c coding($str,.$encodingList.=.nul
120a20 6c 2c 20 24 73 74 72 69 63 74 20 3d 20 66 61 6c 73 65 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d l,.$strict.=.false).{.return.p\M
120a40 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 74 72 bstring::mb_detect_encoding($str
120a60 2c 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 2c 20 24 73 74 72 69 63 74 29 3b 20 7d 0a 66 75 6e ,.$encodingList,.$strict);.}.fun
120a80 63 74 69 6f 6e 20 6d 62 5f 64 65 74 65 63 74 5f 6f 72 64 65 72 28 24 65 6e 63 6f 64 69 6e 67 4c ction.mb_detect_order($encodingL
120aa0 69 73 74 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a ist.=.null).{.return.p\Mbstring:
120ac0 3a 6d 62 5f 64 65 74 65 63 74 5f 6f 72 64 65 72 28 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 3b :mb_detect_order($encodingList);
120ae0 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 70 61 72 73 65 5f 73 74 72 28 24 73 2c 20 26 24 72 .}.function.mb_parse_str($s,.&$r
120b00 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 29 20 7b 20 70 61 72 73 65 5f 73 74 72 28 24 73 2c esult.=.array()).{.parse_str($s,
120b20 20 24 72 65 73 75 6c 74 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 6c 65 6e 28 .$result);.}.function.mb_strlen(
120b40 24 73 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 $s,.$enc.=.null).{.return.p\Mbst
120b60 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e ring::mb_strlen($s,.$enc);.}.fun
120b80 63 74 69 6f 6e 20 6d 62 5f 73 74 72 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 ction.mb_strpos($s,.$needle,.$of
120ba0 66 73 65 74 20 3d 20 30 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 fset.=.0,.$enc.=.null).{.return.
120bc0 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c p\Mbstring::mb_strpos($s,.$needl
120be0 65 2c 20 24 6f 66 66 73 65 74 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 e,.$offset,.$enc);.}.function.mb
120c00 5f 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 _strtolower($s,.$enc.=.null).{.r
120c20 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 74 6f 6c 6f 77 65 72 28 eturn.p\Mbstring::mb_strtolower(
120c40 24 73 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 74 6f 75 70 $s,.$enc);.}.function.mb_strtoup
120c60 70 65 72 28 24 73 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c per($s,.$enc.=.null).{.return.p\
120c80 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 74 6f 75 70 70 65 72 28 24 73 2c 20 24 65 6e 63 Mbstring::mb_strtoupper($s,.$enc
120ca0 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 75 62 73 74 69 74 75 74 65 5f 63 68 61 72 );.}.function.mb_substitute_char
120cc0 61 63 74 65 72 28 24 63 68 61 72 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d acter($char.=.null).{.return.p\M
120ce0 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 75 62 73 74 69 74 75 74 65 5f 63 68 61 72 61 63 74 65 72 bstring::mb_substitute_character
120d00 28 24 63 68 61 72 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 75 62 73 74 72 28 24 73 ($char);.}.function.mb_substr($s
120d20 2c 20 24 73 74 61 72 74 2c 20 24 6c 65 6e 67 74 68 20 3d 20 32 31 34 37 34 38 33 36 34 37 2c 20 ,.$start,.$length.=.2147483647,.
120d40 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 $enc.=.null).{.return.p\Mbstring
120d60 3a 3a 6d 62 5f 73 75 62 73 74 72 28 24 73 2c 20 24 73 74 61 72 74 2c 20 24 6c 65 6e 67 74 68 2c ::mb_substr($s,.$start,.$length,
120d80 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 69 70 6f 73 28 24 73 .$enc);.}.function.mb_stripos($s
120da0 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 66 73 65 74 20 3d 20 30 2c 20 24 65 6e 63 20 3d 20 6e ,.$needle,.$offset.=.0,.$enc.=.n
120dc0 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 ull).{.return.p\Mbstring::mb_str
120de0 69 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 66 73 65 74 2c 20 24 65 6e 63 29 ipos($s,.$needle,.$offset,.$enc)
120e00 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 69 73 74 72 28 24 73 2c 20 24 6e 65 65 ;.}.function.mb_stristr($s,.$nee
120e20 64 6c 65 2c 20 24 70 61 72 74 20 3d 20 66 61 6c 73 65 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 dle,.$part.=.false,.$enc.=.null)
120e40 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 69 73 74 72 .{.return.p\Mbstring::mb_stristr
120e60 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 ($s,.$needle,.$part,.$enc);.}.fu
120e80 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 72 63 68 72 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 nction.mb_strrchr($s,.$needle,.$
120ea0 70 61 72 74 20 3d 20 66 61 6c 73 65 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 part.=.false,.$enc.=.null).{.ret
120ec0 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 72 63 68 72 28 24 73 2c 20 24 urn.p\Mbstring::mb_strrchr($s,.$
120ee0 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e needle,.$part,.$enc);.}.function
120f00 20 6d 62 5f 73 74 72 72 69 63 68 72 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 20 .mb_strrichr($s,.$needle,.$part.
120f20 3d 20 66 61 6c 73 65 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 =.false,.$enc.=.null).{.return.p
120f40 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 72 69 63 68 72 28 24 73 2c 20 24 6e 65 65 64 \Mbstring::mb_strrichr($s,.$need
120f60 6c 65 2c 20 24 70 61 72 74 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f le,.$part,.$enc);.}.function.mb_
120f80 73 74 72 72 69 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 66 73 65 74 20 3d 20 strripos($s,.$needle,.$offset.=.
120fa0 30 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 0,.$enc.=.null).{.return.p\Mbstr
120fc0 69 6e 67 3a 3a 6d 62 5f 73 74 72 72 69 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f ing::mb_strripos($s,.$needle,.$o
120fe0 66 66 73 65 74 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 72 ffset,.$enc);.}.function.mb_strr
121000 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 66 73 65 74 20 3d 20 30 2c 20 24 65 pos($s,.$needle,.$offset.=.0,.$e
121020 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a nc.=.null).{.return.p\Mbstring::
121040 6d 62 5f 73 74 72 72 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 66 73 65 74 2c mb_strrpos($s,.$needle,.$offset,
121060 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 73 74 72 28 24 73 2c .$enc);.}.function.mb_strstr($s,
121080 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 20 3d 20 66 61 6c 73 65 2c 20 24 65 6e 63 20 3d 20 .$needle,.$part.=.false,.$enc.=.
1210a0 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 null).{.return.p\Mbstring::mb_st
1210c0 72 73 74 72 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 2c 20 24 65 6e 63 29 3b 20 rstr($s,.$needle,.$part,.$enc);.
1210e0 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 67 65 74 5f 69 6e 66 6f 28 24 74 79 70 65 20 3d 20 27 }.function.mb_get_info($type.=.'
121100 61 6c 6c 27 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 67 65 all').{.return.p\Mbstring::mb_ge
121120 74 5f 69 6e 66 6f 28 24 74 79 70 65 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 68 74 74 t_info($type);.}.function.mb_htt
121140 70 5f 6f 75 74 70 75 74 28 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 p_output($enc.=.null).{.return.p
121160 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 68 74 74 70 5f 6f 75 74 70 75 74 28 24 65 6e 63 29 3b \Mbstring::mb_http_output($enc);
121180 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 77 69 64 74 68 28 24 73 2c 20 24 65 6e 63 .}.function.mb_strwidth($s,.$enc
1211a0 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 .=.null).{.return.p\Mbstring::mb
1211c0 5f 73 74 72 77 69 64 74 68 28 24 73 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 _strwidth($s,.$enc);.}.function.
1211e0 6d 62 5f 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 mb_substr_count($haystack,.$need
121200 6c 65 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 le,.$enc.=.null).{.return.p\Mbst
121220 72 69 6e 67 3a 3a 6d 62 5f 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 68 61 79 73 74 61 63 6b 2c ring::mb_substr_count($haystack,
121240 20 24 6e 65 65 64 6c 65 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 6f .$needle,.$enc);.}.function.mb_o
121260 75 74 70 75 74 5f 68 61 6e 64 6c 65 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 24 73 74 61 74 75 73 utput_handler($contents,.$status
121280 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 6f 75 74 70 75 74 ).{.return.p\Mbstring::mb_output
1212a0 5f 68 61 6e 64 6c 65 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 24 73 74 61 74 75 73 29 3b 20 7d 0a _handler($contents,.$status);.}.
1212c0 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 68 74 74 70 5f 69 6e 70 75 74 28 24 74 79 70 65 20 3d 20 27 function.mb_http_input($type.=.'
1212e0 27 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 68 74 74 70 5f ').{.return.p\Mbstring::mb_http_
121300 69 6e 70 75 74 28 24 74 79 70 65 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 63 6f 6e 76 input($type);.}.function.mb_conv
121320 65 72 74 5f 76 61 72 69 61 62 6c 65 73 28 24 74 6f 45 6e 63 6f 64 69 6e 67 2c 20 24 66 72 6f 6d ert_variables($toEncoding,.$from
121340 45 6e 63 6f 64 69 6e 67 2c 20 26 24 61 20 3d 20 6e 75 6c 6c 2c 20 26 24 62 20 3d 20 6e 75 6c 6c Encoding,.&$a.=.null,.&$b.=.null
121360 2c 20 26 24 63 20 3d 20 6e 75 6c 6c 2c 20 26 24 64 20 3d 20 6e 75 6c 6c 2c 20 26 24 65 20 3d 20 ,.&$c.=.null,.&$d.=.null,.&$e.=.
121380 6e 75 6c 6c 2c 20 26 24 66 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 null,.&$f.=.null).{.return.p\Mbs
1213a0 74 72 69 6e 67 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 76 61 72 69 61 62 6c 65 73 28 24 74 6f 45 tring::mb_convert_variables($toE
1213c0 6e 63 6f 64 69 6e 67 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 2c 20 24 76 30 2c 20 24 61 2c ncoding,.$fromEncoding,.$v0,.$a,
1213e0 20 24 62 2c 20 24 63 2c 20 24 64 2c 20 24 65 2c 20 24 66 29 3b 20 7d 0a 7d 0a 3c 3f 70 68 70 0a .$b,.$c,.$d,.$e,.$f);.}.}.<?php.
121400 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 ..........namespace.Symfony\Comp
121420 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 69 onent\Process\Exception;.......i
121440 6e 74 65 72 66 61 63 65 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a nterface.ExceptionInterface.{.}.
121460 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e <?php...........namespace.Symfon
121480 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a y\Component\Process\Exception;..
1214a0 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 .....class.InvalidArgumentExcept
1214c0 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 ion.extends.\InvalidArgumentExce
1214e0 70 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 ption.implements.ExceptionInterf
121500 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 ace.{.}.<?php...........namespac
121520 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 e.Symfony\Component\Process\Exce
121540 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f ption;.......class.LogicExceptio
121560 6e 20 65 78 74 65 6e 64 73 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 20 69 6d 70 6c 65 6d n.extends.\LogicException.implem
121580 65 6e 74 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 ents.ExceptionInterface.{.}.<?ph
1215a0 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f p...........namespace.Symfony\Co
1215c0 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 75 73 65 20 mponent\Process\Exception;..use.
1215e0 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 Symfony\Component\Process\Proces
121600 73 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 46 61 69 6c 65 64 45 78 63 65 s;.......class.ProcessFailedExce
121620 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b ption.extends.RuntimeException.{
121640 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .private.$process;..public.funct
121660 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 72 6f 63 65 73 73 20 24 70 72 6f 63 65 73 73 ion.__construct(Process.$process
121680 29 0a 7b 0a 69 66 20 28 24 70 72 6f 63 65 73 73 2d 3e 69 73 53 75 63 63 65 73 73 66 75 6c 28 29 ).{.if.($process->isSuccessful()
1216a0 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 ).{.throw.new.InvalidArgumentExc
1216c0 65 70 74 69 6f 6e 28 27 45 78 70 65 63 74 65 64 20 61 20 66 61 69 6c 65 64 20 70 72 6f 63 65 73 eption('Expected.a.failed.proces
1216e0 73 2c 20 62 75 74 20 74 68 65 20 67 69 76 65 6e 20 70 72 6f 63 65 73 73 20 77 61 73 20 73 75 63 s,.but.the.given.process.was.suc
121700 63 65 73 73 66 75 6c 2e 27 29 3b 0a 7d 0a 0a 24 65 72 72 6f 72 20 3d 20 73 70 72 69 6e 74 66 28 cessful.');.}..$error.=.sprintf(
121720 27 54 68 65 20 63 6f 6d 6d 61 6e 64 20 22 25 73 22 20 66 61 69 6c 65 64 2e 27 2e 22 5c 6e 5c 6e 'The.command."%s".failed.'."\n\n
121740 45 78 69 74 20 43 6f 64 65 3a 20 25 73 28 25 73 29 5c 6e 5c 6e 57 6f 72 6b 69 6e 67 20 64 69 72 Exit.Code:.%s(%s)\n\nWorking.dir
121760 65 63 74 6f 72 79 3a 20 25 73 22 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e ectory:.%s",.$process->getComman
121780 64 4c 69 6e 65 28 29 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 78 69 74 43 6f 64 65 28 29 dLine(),.$process->getExitCode()
1217a0 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 78 69 74 43 6f 64 65 54 65 78 74 28 29 2c 0a 24 ,.$process->getExitCodeText(),.$
1217c0 70 72 6f 63 65 73 73 2d 3e 67 65 74 57 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72 79 28 29 0a 29 process->getWorkingDirectory().)
1217e0 3b 0a 0a 69 66 20 28 21 24 70 72 6f 63 65 73 73 2d 3e 69 73 4f 75 74 70 75 74 44 69 73 61 62 6c ;..if.(!$process->isOutputDisabl
121800 65 64 28 29 29 20 7b 0a 24 65 72 72 6f 72 20 2e 3d 20 73 70 72 69 6e 74 66 28 22 5c 6e 5c 6e 4f ed()).{.$error..=.sprintf("\n\nO
121820 75 74 70 75 74 3a 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c 6e 25 73 5c 6e 5c 6e utput:\n================\n%s\n\n
121840 45 72 72 6f 72 20 4f 75 74 70 75 74 3a 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c Error.Output:\n================\
121860 6e 25 73 22 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 4f 75 74 70 75 74 28 29 2c 0a 24 70 72 n%s",.$process->getOutput(),.$pr
121880 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 29 3b 0a 7d 0a 0a 70 61 ocess->getErrorOutput().);.}..pa
1218a0 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 65 72 72 6f 72 29 3b 0a 0a 24 74 68 69 rent::__construct($error);..$thi
1218c0 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 s->process.=.$process;.}..public
1218e0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 63 65 73 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 .function.getProcess().{.return.
121900 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a $this->process;.}.}.<?php.......
121920 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c ....namespace.Symfony\Component\
121940 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c Process\Exception;..use.Symfony\
121960 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a Component\Process\Process;......
121980 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 54 69 6d 65 64 4f 75 74 45 78 63 65 70 74 69 6f 6e 20 .class.ProcessTimedOutException.
1219a0 65 78 74 65 6e 64 73 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 63 6f 6e 73 74 extends.RuntimeException.{.const
1219c0 20 54 59 50 45 5f 47 45 4e 45 52 41 4c 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 49 44 .TYPE_GENERAL.=.1;.const.TYPE_ID
1219e0 4c 45 20 3d 20 32 3b 0a 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 69 76 61 LE.=.2;..private.$process;.priva
121a00 74 65 20 24 74 69 6d 65 6f 75 74 54 79 70 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f te.$timeoutType;..public.functio
121a20 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 72 6f 63 65 73 73 20 24 70 72 6f 63 65 73 73 2c 20 n.__construct(Process.$process,.
121a40 24 74 69 6d 65 6f 75 74 54 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d $timeoutType).{.$this->process.=
121a60 20 24 70 72 6f 63 65 73 73 3b 0a 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 54 79 70 65 20 3d 20 .$process;.$this->timeoutType.=.
121a80 24 74 69 6d 65 6f 75 74 54 79 70 65 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 $timeoutType;..parent::__constru
121aa0 63 74 28 73 70 72 69 6e 74 66 28 0a 27 54 68 65 20 70 72 6f 63 65 73 73 20 22 25 73 22 20 65 78 ct(sprintf(.'The.process."%s".ex
121ac0 63 65 65 64 65 64 20 74 68 65 20 74 69 6d 65 6f 75 74 20 6f 66 20 25 73 20 73 65 63 6f 6e 64 73 ceeded.the.timeout.of.%s.seconds
121ae0 2e 27 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 2c 0a .',.$process->getCommandLine(),.
121b00 24 74 68 69 73 2d 3e 67 65 74 45 78 63 65 65 64 65 64 54 69 6d 65 6f 75 74 28 29 0a 29 29 3b 0a $this->getExceededTimeout().));.
121b20 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 63 65 73 73 28 29 0a }..public.function.getProcess().
121b40 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 3b 0a 7d 0a 0a 70 75 62 6c {.return.$this->process;.}..publ
121b60 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 47 65 6e 65 72 61 6c 54 69 6d 65 6f 75 74 28 29 0a 7b ic.function.isGeneralTimeout().{
121b80 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 54 79 70 65 20 3d 3d 3d 20 73 .return.$this->timeoutType.===.s
121ba0 65 6c 66 3a 3a 54 59 50 45 5f 47 45 4e 45 52 41 4c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e elf::TYPE_GENERAL;.}..public.fun
121bc0 63 74 69 6f 6e 20 69 73 49 64 6c 65 54 69 6d 65 6f 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 ction.isIdleTimeout().{.return.$
121be0 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 54 79 70 65 20 3d 3d 3d 20 73 65 6c 66 3a 3a 54 59 50 45 this->timeoutType.===.self::TYPE
121c00 5f 49 44 4c 45 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 63 _IDLE;.}..public.function.getExc
121c20 65 65 64 65 64 54 69 6d 65 6f 75 74 28 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d 3e eededTimeout().{.switch.($this->
121c40 74 69 6d 65 6f 75 74 54 79 70 65 29 20 7b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 54 59 50 45 5f 47 timeoutType).{.case.self::TYPE_G
121c60 45 4e 45 52 41 4c 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 ENERAL:.return.$this->process->g
121c80 65 74 54 69 6d 65 6f 75 74 28 29 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 54 59 50 45 5f 49 44 etTimeout();..case.self::TYPE_ID
121ca0 4c 45 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 49 64 LE:.return.$this->process->getId
121cc0 6c 65 54 69 6d 65 6f 75 74 28 29 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 leTimeout();..default:.throw.new
121ce0 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 6b 6e 6f 77 .\LogicException(sprintf('Unknow
121d00 6e 20 74 69 6d 65 6f 75 74 20 74 79 70 65 20 22 25 64 22 2e 27 2c 20 24 74 68 69 73 2d 3e 74 69 n.timeout.type."%d".',.$this->ti
121d20 6d 65 6f 75 74 54 79 70 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a meoutType));.}.}.}.<?php........
121d40 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 ...namespace.Symfony\Component\P
121d60 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 rocess\Exception;.......class.Ru
121d80 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 ntimeException.extends.\RuntimeE
121da0 78 63 65 70 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 xception.implements.ExceptionInt
121dc0 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 erface.{.}.<?php...........names
121de0 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 3b 0a pace.Symfony\Component\Process;.
121e00 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 0a 7b 0a .......class.ExecutableFinder.{.
121e20 70 72 69 76 61 74 65 20 24 73 75 66 66 69 78 65 73 20 3d 20 61 72 72 61 79 28 27 2e 65 78 65 27 private.$suffixes.=.array('.exe'
121e40 2c 20 27 2e 62 61 74 27 2c 20 27 2e 63 6d 64 27 2c 20 27 2e 63 6f 6d 27 29 3b 0a 0a 0a 0a 0a 0a ,.'.bat',.'.cmd',.'.com');......
121e60 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 75 66 66 69 78 65 73 28 61 72 72 .public.function.setSuffixes(arr
121e80 61 79 20 24 73 75 66 66 69 78 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 66 66 69 78 65 73 20 ay.$suffixes).{.$this->suffixes.
121ea0 3d 20 24 73 75 66 66 69 78 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 =.$suffixes;.}.......public.func
121ec0 74 69 6f 6e 20 61 64 64 53 75 66 66 69 78 28 24 73 75 66 66 69 78 29 0a 7b 0a 24 74 68 69 73 2d tion.addSuffix($suffix).{.$this-
121ee0 3e 73 75 66 66 69 78 65 73 5b 5d 20 3d 20 24 73 75 66 66 69 78 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a >suffixes[].=.$suffix;.}........
121f00 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 28 24 6e 61 6d 65 2c 20 24 ...public.function.find($name,.$
121f20 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 65 78 74 72 61 44 69 72 73 default.=.null,.array.$extraDirs
121f40 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 69 6e 69 5f 67 65 74 28 27 6f 70 65 6e 5f .=.array()).{.if.(ini_get('open_
121f60 62 61 73 65 64 69 72 27 29 29 20 7b 0a 24 73 65 61 72 63 68 50 61 74 68 20 3d 20 65 78 70 6c 6f basedir')).{.$searchPath.=.explo
121f80 64 65 28 50 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 69 6e 69 5f 67 65 74 28 27 6f 70 65 6e de(PATH_SEPARATOR,.ini_get('open
121fa0 5f 62 61 73 65 64 69 72 27 29 29 3b 0a 24 64 69 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f _basedir'));.$dirs.=.array();.fo
121fc0 72 65 61 63 68 20 28 24 73 65 61 72 63 68 50 61 74 68 20 61 73 20 24 70 61 74 68 29 20 7b 0a 0a reach.($searchPath.as.$path).{..
121fe0 20 69 66 20 28 40 69 73 5f 64 69 72 28 24 70 61 74 68 29 29 20 7b 0a 24 64 69 72 73 5b 5d 20 3d .if.(@is_dir($path)).{.$dirs[].=
122000 20 24 70 61 74 68 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 62 61 73 65 6e 61 6d 65 28 24 70 .$path;.}.else.{.if.(basename($p
122020 61 74 68 29 20 3d 3d 20 24 6e 61 6d 65 20 26 26 20 69 73 5f 65 78 65 63 75 74 61 62 6c 65 28 24 ath).==.$name.&&.is_executable($
122040 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 74 68 3b 0a 7d 0a 7d 0a 7d 0a 7d 20 65 path)).{.return.$path;.}.}.}.}.e
122060 6c 73 65 20 7b 0a 24 64 69 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 65 78 70 6c 6f lse.{.$dirs.=.array_merge(.explo
122080 64 65 28 50 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 67 65 74 65 6e 76 28 27 50 41 54 48 27 de(PATH_SEPARATOR,.getenv('PATH'
1220a0 29 20 3f 3a 20 67 65 74 65 6e 76 28 27 50 61 74 68 27 29 29 2c 0a 24 65 78 74 72 61 44 69 72 73 ).?:.getenv('Path')),.$extraDirs
1220c0 0a 29 3b 0a 7d 0a 0a 24 73 75 66 66 69 78 65 73 20 3d 20 61 72 72 61 79 28 27 27 29 3b 0a 69 66 .);.}..$suffixes.=.array('');.if
1220e0 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 .('\\'.===.DIRECTORY_SEPARATOR).
122100 7b 0a 24 70 61 74 68 45 78 74 20 3d 20 67 65 74 65 6e 76 28 27 50 41 54 48 45 58 54 27 29 3b 0a {.$pathExt.=.getenv('PATHEXT');.
122120 24 73 75 66 66 69 78 65 73 20 3d 20 24 70 61 74 68 45 78 74 20 3f 20 65 78 70 6c 6f 64 65 28 50 $suffixes.=.$pathExt.?.explode(P
122140 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 24 70 61 74 68 45 78 74 29 20 3a 20 24 74 68 69 73 ATH_SEPARATOR,.$pathExt).:.$this
122160 2d 3e 73 75 66 66 69 78 65 73 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 73 75 66 66 69 78 65 73 ->suffixes;.}.foreach.($suffixes
122180 20 61 73 20 24 73 75 66 66 69 78 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 69 72 73 20 61 73 .as.$suffix).{.foreach.($dirs.as
1221a0 20 24 64 69 72 29 20 7b 0a 69 66 20 28 69 73 5f 66 69 6c 65 28 24 66 69 6c 65 20 3d 20 24 64 69 .$dir).{.if.(is_file($file.=.$di
1221c0 72 2e 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 2e 24 6e 61 6d 65 2e 24 73 75 66 r.DIRECTORY_SEPARATOR.$name.$suf
1221e0 66 69 78 29 20 26 26 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 fix).&&.('\\'.===.DIRECTORY_SEPA
122200 52 41 54 4f 52 20 7c 7c 20 69 73 5f 65 78 65 63 75 74 61 62 6c 65 28 24 66 69 6c 65 29 29 29 20 RATOR.||.is_executable($file))).
122220 7b 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 {.return.$file;.}.}.}..return.$d
122240 65 66 61 75 6c 74 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 30 34 2d 32 efault;.}.}.Copyright.(c).2004-2
122260 30 31 36 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 0a 0a 50 65 72 6d 69 73 73 69 6f 6e 016.Fabien.Potencier..Permission
122280 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 .is.hereby.granted,.free.of.char
1222a0 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f ge,.to.any.person.obtaining.a.co
1222c0 70 79 0a 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 py.of.this.software.and.associat
1222e0 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 ed.documentation.files.(the."Sof
122300 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 tware"),.to.deal.in.the.Software
122320 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 .without.restriction,.including.
122340 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 74 6f without.limitation.the.rights.to
122360 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 .use,.copy,.modify,.merge,.publi
122380 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f sh,.distribute,.sublicense,.and/
1223a0 6f 72 20 73 65 6c 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 or.sell.copies.of.the.Software,.
1223c0 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 and.to.permit.persons.to.whom.th
1223e0 65 20 53 6f 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 0a 74 6f 20 64 6f 20 73 6f e.Software.is.furnished.to.do.so
122400 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 ,.subject.to.the.following.condi
122420 74 69 6f 6e 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 tions:..The.above.copyright.noti
122440 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 ce.and.this.permission.notice.sh
122460 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 20 6f 72 all.be.included.in.all.copies.or
122480 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 .substantial.portions.of.the.Sof
1224a0 74 77 61 72 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 tware...THE.SOFTWARE.IS.PROVIDED
1224c0 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e ."AS.IS",.WITHOUT.WARRANTY.OF.AN
1224e0 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c Y.KIND,.EXPRESS.OR.IMPLIED,.INCL
122500 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 UDING.BUT.NOT.LIMITED.TO.THE.WAR
122520 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 49 54 4e RANTIES.OF.MERCHANTABILITY,.FITN
122540 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 ESS.FOR.A.PARTICULAR.PURPOSE.AND
122560 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 .NONINFRINGEMENT..IN.NO.EVENT.SH
122580 41 4c 4c 20 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c ALL.THE.AUTHORS.OR.COPYRIGHT.HOL
1225a0 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 DERS.BE.LIABLE.FOR.ANY.CLAIM,.DA
1225c0 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 MAGES.OR.OTHER.LIABILITY,.WHETHE
1225e0 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 R.IN.AN.ACTION.OF.CONTRACT,.TORT
122600 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 4f 55 54 .OR.OTHERWISE,.ARISING.FROM,.OUT
122620 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f .OF.OR.IN.CONNECTION.WITH.THE.SO
122640 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 FTWARE.OR.THE.USE.OR.OTHER.DEALI
122660 4e 47 53 20 49 4e 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a NGS.IN.THE.SOFTWARE..<?php......
122680 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 .....namespace.Symfony\Component
1226a0 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 68 70 45 78 65 63 75 74 \Process;........class.PhpExecut
1226c0 61 62 6c 65 46 69 6e 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 65 78 65 63 75 74 61 62 6c 65 ableFinder.{.private.$executable
1226e0 46 69 6e 64 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 Finder;..public.function.__const
122700 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 ruct().{.$this->executableFinder
122720 20 3d 20 6e 65 77 20 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a 0a .=.new.ExecutableFinder();.}....
122740 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 28 24 69 6e 63 6c 75 .....public.function.find($inclu
122760 64 65 41 72 67 73 20 3d 20 74 72 75 65 29 0a 7b 0a 24 61 72 67 73 20 3d 20 24 74 68 69 73 2d 3e deArgs.=.true).{.$args.=.$this->
122780 66 69 6e 64 41 72 67 75 6d 65 6e 74 73 28 29 3b 0a 24 61 72 67 73 20 3d 20 24 69 6e 63 6c 75 64 findArguments();.$args.=.$includ
1227a0 65 41 72 67 73 20 26 26 20 24 61 72 67 73 20 3f 20 27 20 27 2e 69 6d 70 6c 6f 64 65 28 27 20 27 eArgs.&&.$args.?.'.'.implode('.'
1227c0 2c 20 24 61 72 67 73 29 20 3a 20 27 27 3b 0a 0a 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 27 48 ,.$args).:.'';....if.(defined('H
1227e0 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 28 67 65 74 65 6e 76 28 HVM_VERSION')).{.return.(getenv(
122800 27 50 48 50 5f 42 49 4e 41 52 59 27 29 20 3f 3a 20 50 48 50 5f 42 49 4e 41 52 59 29 2e 24 61 72 'PHP_BINARY').?:.PHP_BINARY).$ar
122820 67 73 3b 0a 7d 0a 0a 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 42 49 4e 41 52 59 gs;.}....if.(defined('PHP_BINARY
122840 27 29 20 26 26 20 50 48 50 5f 42 49 4e 41 52 59 20 26 26 20 69 6e 5f 61 72 72 61 79 28 50 48 50 ').&&.PHP_BINARY.&&.in_array(PHP
122860 5f 53 41 50 49 2c 20 61 72 72 61 79 28 27 63 6c 69 27 2c 20 27 63 6c 69 2d 73 65 72 76 65 72 27 _SAPI,.array('cli',.'cli-server'
122880 2c 20 27 70 68 70 64 62 67 27 29 29 20 26 26 20 69 73 5f 66 69 6c 65 28 50 48 50 5f 42 49 4e 41 ,.'phpdbg')).&&.is_file(PHP_BINA
1228a0 52 59 29 29 20 7b 0a 72 65 74 75 72 6e 20 50 48 50 5f 42 49 4e 41 52 59 2e 24 61 72 67 73 3b 0a RY)).{.return.PHP_BINARY.$args;.
1228c0 7d 0a 0a 69 66 20 28 24 70 68 70 20 3d 20 67 65 74 65 6e 76 28 27 50 48 50 5f 50 41 54 48 27 29 }..if.($php.=.getenv('PHP_PATH')
1228e0 29 20 7b 0a 69 66 20 28 21 69 73 5f 65 78 65 63 75 74 61 62 6c 65 28 24 70 68 70 29 29 20 7b 0a ).{.if.(!is_executable($php)).{.
122900 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 68 70 3b 0a 7d 0a return.false;.}..return.$php;.}.
122920 0a 69 66 20 28 24 70 68 70 20 3d 20 67 65 74 65 6e 76 28 27 50 48 50 5f 50 45 41 52 5f 50 48 50 .if.($php.=.getenv('PHP_PEAR_PHP
122940 5f 42 49 4e 27 29 29 20 7b 0a 69 66 20 28 69 73 5f 65 78 65 63 75 74 61 62 6c 65 28 24 70 68 70 _BIN')).{.if.(is_executable($php
122960 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 68 70 3b 0a 7d 0a 7d 0a 0a 24 64 69 72 73 20 3d 20 61 )).{.return.$php;.}.}..$dirs.=.a
122980 72 72 61 79 28 50 48 50 5f 42 49 4e 44 49 52 29 3b 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 rray(PHP_BINDIR);.if.('\\'.===.D
1229a0 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 24 64 69 72 73 5b 5d 20 3d 20 IRECTORY_SEPARATOR).{.$dirs[].=.
1229c0 27 43 3a 5c 78 61 6d 70 70 5c 70 68 70 5c 5c 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 'C:\xampp\php\\';.}..return.$thi
1229e0 73 2d 3e 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2d 3e 66 69 6e 64 28 27 70 68 70 27 2c s->executableFinder->find('php',
122a00 20 66 61 6c 73 65 2c 20 24 64 69 72 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .false,.$dirs);.}.......public.f
122a20 75 6e 63 74 69 6f 6e 20 66 69 6e 64 41 72 67 75 6d 65 6e 74 73 28 29 0a 7b 0a 24 61 72 67 75 6d unction.findArguments().{.$argum
122a40 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 48 48 ents.=.array();..if.(defined('HH
122a60 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 24 61 72 67 75 6d 65 6e 74 73 5b 5d 20 3d 20 27 VM_VERSION')).{.$arguments[].=.'
122a80 2d 2d 70 68 70 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 70 68 70 64 62 67 27 20 3d 3d 3d 20 50 --php';.}.elseif.('phpdbg'.===.P
122aa0 48 50 5f 53 41 50 49 29 20 7b 0a 24 61 72 67 75 6d 65 6e 74 73 5b 5d 20 3d 20 27 2d 71 72 72 27 HP_SAPI).{.$arguments[].=.'-qrr'
122ac0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 72 67 75 6d 65 6e 74 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 ;.}..return.$arguments;.}.}.<?ph
122ae0 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f p...........namespace.Symfony\Co
122b00 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f mponent\Process;..use.Symfony\Co
122b20 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 5c 52 75 6e 74 69 6d mponent\Process\Exception\Runtim
122b40 65 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 68 70 50 eException;...........class.PhpP
122b60 72 6f 63 65 73 73 20 65 78 74 65 6e 64 73 20 50 72 6f 63 65 73 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a rocess.extends.Process.{........
122b80 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 ..public.function.__construct($s
122ba0 63 72 69 70 74 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 65 6e 76 20 3d cript,.$cwd.=.null,.array.$env.=
122bc0 20 6e 75 6c 6c 2c 20 24 74 69 6d 65 6f 75 74 20 3d 20 36 30 2c 20 61 72 72 61 79 20 24 6f 70 74 .null,.$timeout.=.60,.array.$opt
122be0 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 65 78 65 63 75 74 61 62 6c 65 46 69 6e ions.=.array()).{.$executableFin
122c00 64 65 72 20 3d 20 6e 65 77 20 50 68 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 28 29 3b der.=.new.PhpExecutableFinder();
122c20 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 70 68 70 20 3d 20 24 65 78 65 63 75 74 61 62 6c .if.(false.===.$php.=.$executabl
122c40 65 46 69 6e 64 65 72 2d 3e 66 69 6e 64 28 29 29 20 7b 0a 24 70 68 70 20 3d 20 6e 75 6c 6c 3b 0a eFinder->find()).{.$php.=.null;.
122c60 7d 0a 69 66 20 28 27 70 68 70 64 62 67 27 20 3d 3d 3d 20 50 48 50 5f 53 41 50 49 29 20 7b 0a 24 }.if.('phpdbg'.===.PHP_SAPI).{.$
122c80 66 69 6c 65 20 3d 20 74 65 6d 70 6e 61 6d 28 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 28 file.=.tempnam(sys_get_temp_dir(
122ca0 29 2c 20 27 64 62 67 27 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 ),.'dbg');.file_put_contents($fi
122cc0 6c 65 2c 20 24 73 63 72 69 70 74 29 3b 0a 72 65 67 69 73 74 65 72 5f 73 68 75 74 64 6f 77 6e 5f le,.$script);.register_shutdown_
122ce0 66 75 6e 63 74 69 6f 6e 28 27 75 6e 6c 69 6e 6b 27 2c 20 24 66 69 6c 65 29 3b 0a 24 70 68 70 20 function('unlink',.$file);.$php.
122d00 2e 3d 20 27 20 27 2e 50 72 6f 63 65 73 73 55 74 69 6c 73 3a 3a 65 73 63 61 70 65 41 72 67 75 6d .=.'.'.ProcessUtils::escapeArgum
122d20 65 6e 74 28 24 66 69 6c 65 29 3b 0a 24 73 63 72 69 70 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 69 66 ent($file);.$script.=.null;.}.if
122d40 20 28 27 5c 5c 27 20 21 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 26 .('\\'.!==.DIRECTORY_SEPARATOR.&
122d60 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 70 68 70 29 20 7b 0a 0a 20 0a 20 0a 20 24 70 68 70 20 3d 20 &.null.!==.$php).{.......$php.=.
122d80 27 65 78 65 63 20 27 2e 24 70 68 70 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 'exec.'.$php;.}..parent::__const
122da0 72 75 63 74 28 24 70 68 70 2c 20 24 63 77 64 2c 20 24 65 6e 76 2c 20 24 73 63 72 69 70 74 2c 20 ruct($php,.$cwd,.$env,.$script,.
122dc0 24 74 69 6d 65 6f 75 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 $timeout,.$options);.}.....publi
122de0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 68 70 42 69 6e 61 72 79 28 24 70 68 70 29 0a 7b 0a c.function.setPhpBinary($php).{.
122e00 24 74 68 69 73 2d 3e 73 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 24 70 68 70 29 3b 0a 7d 0a 0a $this->setCommandLine($php);.}..
122e20 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 61 72 74 28 24 63 61 6c 6c 62 61 ...public.function.start($callba
122e40 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d ck.=.null).{.if.(null.===.$this-
122e60 3e 67 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 >getCommandLine()).{.throw.new.R
122e80 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 66 69 6e 64 20 untimeException('Unable.to.find.
122ea0 74 68 65 20 50 48 50 20 65 78 65 63 75 74 61 62 6c 65 2e 27 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 the.PHP.executable.');.}..parent
122ec0 3a 3a 73 74 61 72 74 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ::start($callback);.}.}.<?php...
122ee0 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e ........namespace.Symfony\Compon
122f00 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 69 70 65 73 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 ent\Process\Pipes;.......abstrac
122f20 74 20 63 6c 61 73 73 20 41 62 73 74 72 61 63 74 50 69 70 65 73 20 69 6d 70 6c 65 6d 65 6e 74 73 t.class.AbstractPipes.implements
122f40 20 50 69 70 65 73 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 70 75 62 6c 69 63 20 24 70 69 70 65 73 .PipesInterface.{..public.$pipes
122f60 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 70 75 74 42 75 .=.array();...protected.$inputBu
122f80 66 66 65 72 20 3d 20 27 27 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 70 75 74 3b 0a 0a 0a ffer.=.'';..protected.$input;...
122fa0 70 72 69 76 61 74 65 20 24 62 6c 6f 63 6b 65 64 20 3d 20 74 72 75 65 3b 0a 0a 0a 0a 0a 70 75 62 private.$blocked.=.true;.....pub
122fc0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 6f 73 65 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 lic.function.close().{.foreach.(
122fe0 24 74 68 69 73 2d 3e 70 69 70 65 73 20 61 73 20 24 70 69 70 65 29 20 7b 0a 66 63 6c 6f 73 65 28 $this->pipes.as.$pipe).{.fclose(
123000 24 70 69 70 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 69 70 65 73 20 3d 20 61 72 72 61 79 28 29 $pipe);.}.$this->pipes.=.array()
123020 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 ;.}.......protected.function.has
123040 53 79 73 74 65 6d 43 61 6c 6c 42 65 65 6e 49 6e 74 65 72 72 75 70 74 65 64 28 29 0a 7b 0a 24 6c SystemCallBeenInterrupted().{.$l
123060 61 73 74 45 72 72 6f 72 20 3d 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 74 28 29 3b 0a 0a 0a 20 astError.=.error_get_last();....
123080 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 61 73 74 45 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 return.isset($lastError['message
1230a0 27 5d 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 69 70 6f 73 28 24 6c 61 73 74 45 72 ']).&&.false.!==.stripos($lastEr
1230c0 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 2c 20 27 69 6e 74 65 72 72 75 70 74 65 64 20 73 79 73 ror['message'],.'interrupted.sys
1230e0 74 65 6d 20 63 61 6c 6c 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 tem.call');.}.....protected.func
123100 74 69 6f 6e 20 75 6e 62 6c 6f 63 6b 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 62 6c 6f tion.unblock().{.if.(!$this->blo
123120 63 6b 65 64 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 cked).{.return;.}..foreach.($thi
123140 73 2d 3e 70 69 70 65 73 20 61 73 20 24 70 69 70 65 29 20 7b 0a 73 74 72 65 61 6d 5f 73 65 74 5f s->pipes.as.$pipe).{.stream_set_
123160 62 6c 6f 63 6b 69 6e 67 28 24 70 69 70 65 2c 20 30 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 blocking($pipe,.0);.}.if.(null.!
123180 3d 3d 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 29 20 7b 0a 73 74 72 65 61 6d 5f 73 65 74 5f 62 6c ==.$this->input).{.stream_set_bl
1231a0 6f 63 6b 69 6e 67 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 30 29 3b 0a 7d 0a 0a 24 74 68 69 ocking($this->input,.0);.}..$thi
1231c0 73 2d 3e 62 6c 6f 63 6b 65 64 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a s->blocked.=.false;.}.}.<?php...
1231e0 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e ........namespace.Symfony\Compon
123200 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 69 70 65 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 ent\Process\Pipes;.........inter
123220 66 61 63 65 20 50 69 70 65 73 49 6e 74 65 72 66 61 63 65 0a 7b 0a 63 6f 6e 73 74 20 43 48 55 4e face.PipesInterface.{.const.CHUN
123240 4b 5f 53 49 5a 45 20 3d 20 31 36 33 38 34 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e K_SIZE.=.16384;.......public.fun
123260 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 6f 72 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 ction.getDescriptors();.......pu
123280 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a blic.function.getFiles();.......
1232a0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 41 6e 64 57 72 69 74 65 28 ...public.function.readAndWrite(
1232c0 24 62 6c 6f 63 6b 69 6e 67 2c 20 24 63 6c 6f 73 65 20 3d 20 66 61 6c 73 65 29 3b 0a 0a 0a 0a 0a $blocking,.$close.=.false);.....
1232e0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 72 65 4f 70 65 6e 28 29 3b 0a 0a 0a 0a ..public.function.areOpen();....
123300 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 6f 73 65 28 29 3b 0a 7d 0a 3c 3f 70 68 .public.function.close();.}.<?ph
123320 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f p...........namespace.Symfony\Co
123340 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 69 70 65 73 3b 0a 0a 75 73 65 20 53 79 6d 66 mponent\Process\Pipes;..use.Symf
123360 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 3b 0a 0a ony\Component\Process\Process;..
123380 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 6e 69 78 50 69 70 65 73 20 65 78 74 65 6e 64 73 20 41 .......class.UnixPipes.extends.A
1233a0 62 73 74 72 61 63 74 50 69 70 65 73 0a 7b 0a 0a 70 72 69 76 61 74 65 20 24 74 74 79 4d 6f 64 65 bstractPipes.{..private.$ttyMode
1233c0 3b 0a 0a 70 72 69 76 61 74 65 20 24 70 74 79 4d 6f 64 65 3b 0a 0a 70 72 69 76 61 74 65 20 24 64 ;..private.$ptyMode;..private.$d
1233e0 69 73 61 62 6c 65 4f 75 74 70 75 74 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f isableOutput;..public.function._
123400 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 74 79 4d 6f 64 65 2c 20 24 70 74 79 4d 6f 64 65 2c 20 24 _construct($ttyMode,.$ptyMode,.$
123420 69 6e 70 75 74 2c 20 24 64 69 73 61 62 6c 65 4f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e input,.$disableOutput).{.$this->
123440 74 74 79 4d 6f 64 65 20 3d 20 28 62 6f 6f 6c 29 20 24 74 74 79 4d 6f 64 65 3b 0a 24 74 68 69 73 ttyMode.=.(bool).$ttyMode;.$this
123460 2d 3e 70 74 79 4d 6f 64 65 20 3d 20 28 62 6f 6f 6c 29 20 24 70 74 79 4d 6f 64 65 3b 0a 24 74 68 ->ptyMode.=.(bool).$ptyMode;.$th
123480 69 73 2d 3e 64 69 73 61 62 6c 65 4f 75 74 70 75 74 20 3d 20 28 62 6f 6f 6c 29 20 24 64 69 73 61 is->disableOutput.=.(bool).$disa
1234a0 62 6c 65 4f 75 74 70 75 74 3b 0a 0a 69 66 20 28 69 73 5f 72 65 73 6f 75 72 63 65 28 24 69 6e 70 bleOutput;..if.(is_resource($inp
1234c0 75 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 7d 20 ut)).{.$this->input.=.$input;.}.
1234e0 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 20 3d 20 28 73 74 72 else.{.$this->inputBuffer.=.(str
123500 69 6e 67 29 20 24 69 6e 70 75 74 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ing).$input;.}.}..public.functio
123520 6e 20 5f 5f 64 65 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6c 6f 73 65 28 29 3b n.__destruct().{.$this->close();
123540 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 .}.....public.function.getDescri
123560 70 74 6f 72 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 4f 75 74 70 ptors().{.if.($this->disableOutp
123580 75 74 29 20 7b 0a 24 6e 75 6c 6c 73 74 72 65 61 6d 20 3d 20 66 6f 70 65 6e 28 27 2f 64 65 76 2f ut).{.$nullstream.=.fopen('/dev/
1235a0 6e 75 6c 6c 27 2c 20 27 63 27 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 61 72 72 61 null',.'c');..return.array(.arra
1235c0 79 28 27 70 69 70 65 27 2c 20 27 72 27 29 2c 0a 24 6e 75 6c 6c 73 74 72 65 61 6d 2c 0a 24 6e 75 y('pipe',.'r'),.$nullstream,.$nu
1235e0 6c 6c 73 74 72 65 61 6d 2c 0a 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 74 74 79 4d 6f llstream,.);.}..if.($this->ttyMo
123600 64 65 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 61 72 72 61 79 28 27 66 69 6c 65 27 de).{.return.array(.array('file'
123620 2c 20 27 2f 64 65 76 2f 74 74 79 27 2c 20 27 72 27 29 2c 0a 61 72 72 61 79 28 27 66 69 6c 65 27 ,.'/dev/tty',.'r'),.array('file'
123640 2c 20 27 2f 64 65 76 2f 74 74 79 27 2c 20 27 77 27 29 2c 0a 61 72 72 61 79 28 27 66 69 6c 65 27 ,.'/dev/tty',.'w'),.array('file'
123660 2c 20 27 2f 64 65 76 2f 74 74 79 27 2c 20 27 77 27 29 2c 0a 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 ,.'/dev/tty',.'w'),.);.}..if.($t
123680 68 69 73 2d 3e 70 74 79 4d 6f 64 65 20 26 26 20 50 72 6f 63 65 73 73 3a 3a 69 73 50 74 79 53 75 his->ptyMode.&&.Process::isPtySu
1236a0 70 70 6f 72 74 65 64 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 61 72 72 61 79 pported()).{.return.array(.array
1236c0 28 27 70 74 79 27 29 2c 0a 61 72 72 61 79 28 27 70 74 79 27 29 2c 0a 61 72 72 61 79 28 27 70 74 ('pty'),.array('pty'),.array('pt
1236e0 79 27 29 2c 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 61 72 72 61 79 28 27 y'),.);.}..return.array(.array('
123700 70 69 70 65 27 2c 20 27 72 27 29 2c 0a 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 2c pipe',.'r'),.array('pipe',.'w'),
123720 20 0a 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 2c 20 0a 20 29 3b 0a 7d 0a 0a 0a ...array('pipe',.'w'),...);.}...
123740 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 73 28 29 0a 7b 0a 72 ..public.function.getFiles().{.r
123760 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 eturn.array();.}.....public.func
123780 74 69 6f 6e 20 72 65 61 64 41 6e 64 57 72 69 74 65 28 24 62 6c 6f 63 6b 69 6e 67 2c 20 24 63 6c tion.readAndWrite($blocking,.$cl
1237a0 6f 73 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 0a 20 0a 20 69 66 20 28 31 20 3d 3d 3d 20 63 6f 75 ose.=.false).{.....if.(1.===.cou
1237c0 6e 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 29 20 26 26 20 61 72 72 61 79 28 30 29 20 3d 3d 3d nt($this->pipes).&&.array(0).===
1237e0 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 70 69 70 65 73 29 29 20 7b 0a 66 63 6c .array_keys($this->pipes)).{.fcl
123800 6f 73 65 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 ose($this->pipes[0]);.unset($thi
123820 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 s->pipes[0]);.}..if.(empty($this
123840 2d 3e 70 69 70 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 24 ->pipes)).{.return.array();.}..$
123860 74 68 69 73 2d 3e 75 6e 62 6c 6f 63 6b 28 29 3b 0a 0a 24 72 65 61 64 20 3d 20 61 72 72 61 79 28 this->unblock();..$read.=.array(
123880 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 29 20 7b );..if.(null.!==.$this->input).{
1238a0 0a 0a 20 0a 20 24 72 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 70 69 70 .....$r.=.array_merge($this->pip
1238c0 65 73 2c 20 61 72 72 61 79 28 27 69 6e 70 75 74 27 20 3d 3e 20 24 74 68 69 73 2d 3e 69 6e 70 75 es,.array('input'.=>.$this->inpu
1238e0 74 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 20 3d 20 24 74 68 69 73 2d 3e 70 69 70 65 73 3b t));.}.else.{.$r.=.$this->pipes;
123900 0a 7d 0a 0a 20 75 6e 73 65 74 28 24 72 5b 30 5d 29 3b 0a 0a 24 77 20 3d 20 69 73 73 65 74 28 24 .}...unset($r[0]);..$w.=.isset($
123920 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 20 3f 20 61 72 72 61 79 28 24 74 68 69 73 2d 3e 70 this->pipes[0]).?.array($this->p
123940 69 70 65 73 5b 30 5d 29 20 3a 20 6e 75 6c 6c 3b 0a 24 65 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 69 ipes[0]).:.null;.$e.=.null;....i
123960 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6e 20 3d 20 40 73 74 72 65 61 6d 5f 73 65 6c 65 63 74 f.(false.===.$n.=.@stream_select
123980 28 24 72 2c 20 24 77 2c 20 24 65 2c 20 30 2c 20 24 62 6c 6f 63 6b 69 6e 67 20 3f 20 50 72 6f 63 ($r,.$w,.$e,.0,.$blocking.?.Proc
1239a0 65 73 73 3a 3a 54 49 4d 45 4f 55 54 5f 50 52 45 43 49 53 49 4f 4e 20 2a 20 31 45 36 20 3a 20 30 ess::TIMEOUT_PRECISION.*.1E6.:.0
1239c0 29 29 20 7b 0a 0a 20 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 53 79 73 74 65 6d 43 61 )).{.....if.(!$this->hasSystemCa
1239e0 6c 6c 42 65 65 6e 49 6e 74 65 72 72 75 70 74 65 64 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 69 llBeenInterrupted()).{.$this->pi
123a00 70 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 61 64 3b 0a pes.=.array();.}..return.$read;.
123a20 7d 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 6e 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 61 }....if.(0.===.$n).{.return.$rea
123a40 64 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 20 61 73 20 24 70 69 70 65 29 20 7b 0a 0a 20 d;.}..foreach.($r.as.$pipe).{...
123a60 0a 20 24 74 79 70 65 20 3d 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 66 6f 75 6e 64 20 3d 20 61 72 ..$type.=.(false.!==.$found.=.ar
123a80 72 61 79 5f 73 65 61 72 63 68 28 24 70 69 70 65 2c 20 24 74 68 69 73 2d 3e 70 69 70 65 73 29 29 ray_search($pipe,.$this->pipes))
123aa0 20 3f 20 24 66 6f 75 6e 64 20 3a 20 27 69 6e 70 75 74 27 3b 0a 24 64 61 74 61 20 3d 20 27 27 3b .?.$found.:.'input';.$data.=.'';
123ac0 0a 77 68 69 6c 65 20 28 27 27 20 21 3d 3d 20 24 64 61 74 61 72 65 61 64 20 3d 20 28 73 74 72 69 .while.(''.!==.$dataread.=.(stri
123ae0 6e 67 29 20 66 72 65 61 64 28 24 70 69 70 65 2c 20 73 65 6c 66 3a 3a 43 48 55 4e 4b 5f 53 49 5a ng).fread($pipe,.self::CHUNK_SIZ
123b00 45 29 29 20 7b 0a 24 64 61 74 61 20 2e 3d 20 24 64 61 74 61 72 65 61 64 3b 0a 7d 0a 0a 69 66 20 E)).{.$data..=.$dataread;.}..if.
123b20 28 27 27 20 21 3d 3d 20 24 64 61 74 61 29 20 7b 0a 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 (''.!==.$data).{.if.($type.===.'
123b40 69 6e 70 75 74 27 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 20 2e 3d 20 input').{.$this->inputBuffer..=.
123b60 24 64 61 74 61 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 61 64 5b 24 74 79 70 65 5d 20 3d 20 24 $data;.}.else.{.$read[$type].=.$
123b80 64 61 74 61 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 64 61 74 61 20 7c data;.}.}..if.(false.===.$data.|
123ba0 7c 20 28 74 72 75 65 20 3d 3d 3d 20 24 63 6c 6f 73 65 20 26 26 20 66 65 6f 66 28 24 70 69 70 65 |.(true.===.$close.&&.feof($pipe
123bc0 29 20 26 26 20 27 27 20 3d 3d 3d 20 24 64 61 74 61 29 29 20 7b 0a 69 66 20 28 24 74 79 70 65 20 ).&&.''.===.$data)).{.if.($type.
123be0 3d 3d 3d 20 27 69 6e 70 75 74 27 29 20 7b 0a 0a 20 0a 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 ===.'input').{.....$this->input.
123c00 3d 20 6e 75 6c 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 70 =.null;.}.else.{.fclose($this->p
123c20 69 70 65 73 5b 24 74 79 70 65 5d 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 ipes[$type]);.unset($this->pipes
123c40 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 77 [$type]);.}.}.}..if.(null.!==.$w
123c60 20 26 26 20 30 20 3c 20 63 6f 75 6e 74 28 24 77 29 29 20 7b 0a 77 68 69 6c 65 20 28 73 74 72 6c .&&.0.<.count($w)).{.while.(strl
123c80 65 6e 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 29 29 20 7b 0a 24 77 72 69 74 74 en($this->inputBuffer)).{.$writt
123ca0 65 6e 20 3d 20 66 77 72 69 74 65 28 24 77 5b 30 5d 2c 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 en.=.fwrite($w[0],.$this->inputB
123cc0 75 66 66 65 72 2c 20 32 20 3c 3c 20 31 38 29 3b 20 0a 20 69 66 20 28 24 77 72 69 74 74 65 6e 20 uffer,.2.<<.18);...if.($written.
123ce0 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 20 3d 20 28 73 74 72 >.0).{.$this->inputBuffer.=.(str
123d00 69 6e 67 29 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 2c 20 ing).substr($this->inputBuffer,.
123d20 24 77 72 69 74 74 65 6e 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d $written);.}.else.{.break;.}.}.}
123d40 0a 0a 0a 20 69 66 20 28 27 27 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 ....if.(''.===.$this->inputBuffe
123d60 72 20 26 26 20 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 26 26 20 69 73 r.&&.null.===.$this->input.&&.is
123d80 73 65 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 29 20 7b 0a 66 63 6c 6f 73 65 28 24 set($this->pipes[0])).{.fclose($
123da0 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 70 69 this->pipes[0]);.unset($this->pi
123dc0 70 65 73 5b 30 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 61 64 3b 0a 7d 0a 0a 0a 0a 0a pes[0]);.}..return.$read;.}.....
123de0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 72 65 4f 70 65 6e 28 29 0a 7b 0a 72 65 74 75 public.function.areOpen().{.retu
123e00 72 6e 20 28 62 6f 6f 6c 29 20 24 74 68 69 73 2d 3e 70 69 70 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a rn.(bool).$this->pipes;.}.......
123e20 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 ...public.static.function.create
123e40 28 50 72 6f 63 65 73 73 20 24 70 72 6f 63 65 73 73 2c 20 24 69 6e 70 75 74 29 0a 7b 0a 72 65 74 (Process.$process,.$input).{.ret
123e60 75 72 6e 20 6e 65 77 20 73 74 61 74 69 63 28 24 70 72 6f 63 65 73 73 2d 3e 69 73 54 74 79 28 29 urn.new.static($process->isTty()
123e80 2c 20 24 70 72 6f 63 65 73 73 2d 3e 69 73 50 74 79 28 29 2c 20 24 69 6e 70 75 74 2c 20 24 70 72 ,.$process->isPty(),.$input,.$pr
123ea0 6f 63 65 73 73 2d 3e 69 73 4f 75 74 70 75 74 44 69 73 61 62 6c 65 64 28 29 29 3b 0a 7d 0a 7d 0a ocess->isOutputDisabled());.}.}.
123ec0 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e <?php...........namespace.Symfon
123ee0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 69 70 65 73 3b 0a 0a 75 73 65 20 y\Component\Process\Pipes;..use.
123f00 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 Symfony\Component\Process\Proces
123f20 73 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 s;.use.Symfony\Component\Process
123f40 5c 45 78 63 65 70 74 69 6f 6e 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a \Exception\RuntimeException;....
123f60 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 57 69 6e 64 6f 77 73 50 69 70 65 73 20 65 78 74 65 6e ........class.WindowsPipes.exten
123f80 64 73 20 41 62 73 74 72 61 63 74 50 69 70 65 73 0a 7b 0a 0a 70 72 69 76 61 74 65 20 24 66 69 6c ds.AbstractPipes.{..private.$fil
123fa0 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 48 61 6e 64 es.=.array();..private.$fileHand
123fc0 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 72 65 61 64 42 79 74 les.=.array();..private.$readByt
123fe0 65 73 20 3d 20 61 72 72 61 79 28 0a 50 72 6f 63 65 73 73 3a 3a 53 54 44 4f 55 54 20 3d 3e 20 30 es.=.array(.Process::STDOUT.=>.0
124000 2c 0a 50 72 6f 63 65 73 73 3a 3a 53 54 44 45 52 52 20 3d 3e 20 30 2c 0a 29 3b 0a 0a 70 72 69 76 ,.Process::STDERR.=>.0,.);..priv
124020 61 74 65 20 24 64 69 73 61 62 6c 65 4f 75 74 70 75 74 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ate.$disableOutput;..public.func
124040 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 64 69 73 61 62 6c 65 4f 75 74 70 75 74 2c tion.__construct($disableOutput,
124060 20 24 69 6e 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 4f 75 74 70 75 74 20 .$input).{.$this->disableOutput.
124080 3d 20 28 62 6f 6f 6c 29 20 24 64 69 73 61 62 6c 65 4f 75 74 70 75 74 3b 0a 0a 69 66 20 28 21 24 =.(bool).$disableOutput;..if.(!$
1240a0 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 4f 75 74 70 75 74 29 20 7b 0a 0a 20 0a 20 0a 20 0a 20 24 this->disableOutput).{.........$
1240c0 74 68 69 73 2d 3e 66 69 6c 65 73 20 3d 20 61 72 72 61 79 28 0a 50 72 6f 63 65 73 73 3a 3a 53 54 this->files.=.array(.Process::ST
1240e0 44 4f 55 54 20 3d 3e 20 74 65 6d 70 6e 61 6d 28 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 DOUT.=>.tempnam(sys_get_temp_dir
124100 28 29 2c 20 27 6f 75 74 5f 73 66 5f 70 72 6f 63 27 29 2c 0a 50 72 6f 63 65 73 73 3a 3a 53 54 44 (),.'out_sf_proc'),.Process::STD
124120 45 52 52 20 3d 3e 20 74 65 6d 70 6e 61 6d 28 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 28 ERR.=>.tempnam(sys_get_temp_dir(
124140 29 2c 20 27 65 72 72 5f 73 66 5f 70 72 6f 63 27 29 2c 0a 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 ),.'err_sf_proc'),.);.foreach.($
124160 74 68 69 73 2d 3e 66 69 6c 65 73 20 61 73 20 24 6f 66 66 73 65 74 20 3d 3e 20 24 66 69 6c 65 29 this->files.as.$offset.=>.$file)
124180 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 66 69 6c 65 20 7c 7c 20 66 61 6c 73 65 20 .{.if.(false.===.$file.||.false.
1241a0 3d 3d 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 5b 24 6f 66 66 73 65 74 5d 20 ===.$this->fileHandles[$offset].
1241c0 3d 20 66 6f 70 65 6e 28 24 66 69 6c 65 2c 20 27 72 62 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 =.fopen($file,.'rb')).{.throw.ne
1241e0 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 41 20 74 65 6d 70 6f 72 61 72 79 20 w.RuntimeException('A.temporary.
124200 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 6f 70 65 6e 65 64 20 74 6f 20 77 72 69 74 file.could.not.be.opened.to.writ
124220 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 75 74 70 75 74 20 74 6f 2c 20 76 65 72 69 66 79 20 e.the.process.output.to,.verify.
124240 74 68 61 74 20 79 6f 75 72 20 54 45 4d 50 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 that.your.TEMP.environment.varia
124260 62 6c 65 20 69 73 20 77 72 69 74 61 62 6c 65 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 ble.is.writable');.}.}.}..if.(is
124280 5f 72 65 73 6f 75 72 63 65 28 24 69 6e 70 75 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 _resource($input)).{.$this->inpu
1242a0 74 20 3d 20 24 69 6e 70 75 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 t.=.$input;.}.else.{.$this->inpu
1242c0 74 42 75 66 66 65 72 20 3d 20 24 69 6e 70 75 74 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 tBuffer.=.$input;.}.}..public.fu
1242e0 6e 63 74 69 6f 6e 20 5f 5f 64 65 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6c 6f nction.__destruct().{.$this->clo
124300 73 65 28 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 46 69 6c 65 73 28 29 3b 0a 7d 0a 0a 0a se();.$this->removeFiles();.}...
124320 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 6f 72 73 ..public.function.getDescriptors
124340 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 4f 75 74 70 75 74 29 20 7b ().{.if.($this->disableOutput).{
124360 0a 24 6e 75 6c 6c 73 74 72 65 61 6d 20 3d 20 66 6f 70 65 6e 28 27 4e 55 4c 27 2c 20 27 63 27 29 .$nullstream.=.fopen('NUL',.'c')
124380 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 ;..return.array(.array('pipe',.'
1243a0 72 27 29 2c 0a 24 6e 75 6c 6c 73 74 72 65 61 6d 2c 0a 24 6e 75 6c 6c 73 74 72 65 61 6d 2c 0a 29 r'),.$nullstream,.$nullstream,.)
1243c0 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 61 72 72 61 79 28 27 ;.}........return.array(.array('
1243e0 70 69 70 65 27 2c 20 27 72 27 29 2c 0a 61 72 72 61 79 28 27 66 69 6c 65 27 2c 20 27 4e 55 4c 27 pipe',.'r'),.array('file',.'NUL'
124400 2c 20 27 77 27 29 2c 0a 61 72 72 61 79 28 27 66 69 6c 65 27 2c 20 27 4e 55 4c 27 2c 20 27 77 27 ,.'w'),.array('file',.'NUL',.'w'
124420 29 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 ),.);.}.....public.function.getF
124440 69 6c 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 3b 0a 7d 0a iles().{.return.$this->files;.}.
124460 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 41 6e 64 57 72 69 74 65 ....public.function.readAndWrite
124480 28 24 62 6c 6f 63 6b 69 6e 67 2c 20 24 63 6c 6f 73 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 ($blocking,.$close.=.false).{.$t
1244a0 68 69 73 2d 3e 77 72 69 74 65 28 24 62 6c 6f 63 6b 69 6e 67 2c 20 24 63 6c 6f 73 65 29 3b 0a 0a his->write($blocking,.$close);..
1244c0 24 72 65 61 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 66 68 20 3d 20 24 74 68 69 73 2d 3e 66 69 $read.=.array();.$fh.=.$this->fi
1244e0 6c 65 48 61 6e 64 6c 65 73 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 68 20 61 73 20 24 74 79 70 65 leHandles;.foreach.($fh.as.$type
124500 20 3d 3e 20 24 66 69 6c 65 48 61 6e 64 6c 65 29 20 7b 0a 69 66 20 28 30 20 21 3d 3d 20 66 73 65 .=>.$fileHandle).{.if.(0.!==.fse
124520 65 6b 28 24 66 69 6c 65 48 61 6e 64 6c 65 2c 20 24 74 68 69 73 2d 3e 72 65 61 64 42 79 74 65 73 ek($fileHandle,.$this->readBytes
124540 5b 24 74 79 70 65 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 64 61 74 61 20 3d 20 [$type])).{.continue;.}.$data.=.
124560 27 27 3b 0a 24 64 61 74 61 72 65 61 64 20 3d 20 6e 75 6c 6c 3b 0a 77 68 69 6c 65 20 28 21 66 65 '';.$dataread.=.null;.while.(!fe
124580 6f 66 28 24 66 69 6c 65 48 61 6e 64 6c 65 29 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d of($fileHandle)).{.if.(false.!==
1245a0 20 24 64 61 74 61 72 65 61 64 20 3d 20 66 72 65 61 64 28 24 66 69 6c 65 48 61 6e 64 6c 65 2c 20 .$dataread.=.fread($fileHandle,.
1245c0 73 65 6c 66 3a 3a 43 48 55 4e 4b 5f 53 49 5a 45 29 29 20 7b 0a 24 64 61 74 61 20 2e 3d 20 24 64 self::CHUNK_SIZE)).{.$data..=.$d
1245e0 61 74 61 72 65 61 64 3b 0a 7d 0a 7d 0a 69 66 20 28 30 20 3c 20 24 6c 65 6e 67 74 68 20 3d 20 73 ataread;.}.}.if.(0.<.$length.=.s
124600 74 72 6c 65 6e 28 24 64 61 74 61 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 61 64 42 79 74 65 73 trlen($data)).{.$this->readBytes
124620 5b 24 74 79 70 65 5d 20 2b 3d 20 24 6c 65 6e 67 74 68 3b 0a 24 72 65 61 64 5b 24 74 79 70 65 5d [$type].+=.$length;.$read[$type]
124640 20 3d 20 24 64 61 74 61 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 64 61 74 61 .=.$data;.}..if.(false.===.$data
124660 72 65 61 64 20 7c 7c 20 28 74 72 75 65 20 3d 3d 3d 20 24 63 6c 6f 73 65 20 26 26 20 66 65 6f 66 read.||.(true.===.$close.&&.feof
124680 28 24 66 69 6c 65 48 61 6e 64 6c 65 29 20 26 26 20 27 27 20 3d 3d 3d 20 24 64 61 74 61 29 29 20 ($fileHandle).&&.''.===.$data)).
1246a0 7b 0a 66 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 5b 24 74 79 70 {.fclose($this->fileHandles[$typ
1246c0 65 5d 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 5b 24 74 e]);.unset($this->fileHandles[$t
1246e0 79 70 65 5d 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 61 64 3b 0a 7d 0a 0a 0a 0a 0a ype]);.}.}..return.$read;.}.....
124700 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 72 65 4f 70 65 6e 28 29 0a 7b 0a 72 65 74 75 public.function.areOpen().{.retu
124720 72 6e 20 28 62 6f 6f 6c 29 20 24 74 68 69 73 2d 3e 70 69 70 65 73 20 26 26 20 28 62 6f 6f 6c 29 rn.(bool).$this->pipes.&&.(bool)
124740 20 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 .$this->fileHandles;.}.....publi
124760 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 6f 73 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 63 6c 6f c.function.close().{.parent::clo
124780 73 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 se();.foreach.($this->fileHandle
1247a0 73 20 61 73 20 24 68 61 6e 64 6c 65 29 20 7b 0a 66 63 6c 6f 73 65 28 24 68 61 6e 64 6c 65 29 3b s.as.$handle).{.fclose($handle);
1247c0 0a 7d 0a 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b .}.$this->fileHandles.=.array();
1247e0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 .}..........public.static.functi
124800 6f 6e 20 63 72 65 61 74 65 28 50 72 6f 63 65 73 73 20 24 70 72 6f 63 65 73 73 2c 20 24 69 6e 70 on.create(Process.$process,.$inp
124820 75 74 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 74 61 74 69 63 28 24 70 72 6f 63 65 73 73 ut).{.return.new.static($process
124840 2d 3e 69 73 4f 75 74 70 75 74 44 69 73 61 62 6c 65 64 28 29 2c 20 24 69 6e 70 75 74 29 3b 0a 7d ->isOutputDisabled(),.$input);.}
124860 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 46 69 6c 65 .....private.function.removeFile
124880 73 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 69 6c 65 73 20 61 73 20 24 s().{.foreach.($this->files.as.$
1248a0 66 69 6c 65 6e 61 6d 65 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c filename).{.if.(file_exists($fil
1248c0 65 6e 61 6d 65 29 29 20 7b 0a 40 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 7d 0a ename)).{.@unlink($filename);.}.
1248e0 7d 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a }.$this->files.=.array();.}.....
124900 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 62 6c 6f 63 6b ...private.function.write($block
124920 69 6e 67 2c 20 24 63 6c 6f 73 65 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 2d 3e ing,.$close).{.if.(empty($this->
124940 70 69 70 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 6e 62 6c pipes)).{.return;.}..$this->unbl
124960 6f 63 6b 28 29 3b 0a 0a 24 72 20 3d 20 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 69 6e 70 ock();..$r.=.null.!==.$this->inp
124980 75 74 20 3f 20 61 72 72 61 79 28 27 69 6e 70 75 74 27 20 3d 3e 20 24 74 68 69 73 2d 3e 69 6e 70 ut.?.array('input'.=>.$this->inp
1249a0 75 74 29 20 3a 20 6e 75 6c 6c 3b 0a 24 77 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 69 ut).:.null;.$w.=.isset($this->pi
1249c0 70 65 73 5b 30 5d 29 20 3f 20 61 72 72 61 79 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 pes[0]).?.array($this->pipes[0])
1249e0 20 3a 20 6e 75 6c 6c 3b 0a 24 65 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 .:.null;.$e.=.null;....if.(false
124a00 20 3d 3d 3d 20 24 6e 20 3d 20 40 73 74 72 65 61 6d 5f 73 65 6c 65 63 74 28 24 72 2c 20 24 77 2c .===.$n.=.@stream_select($r,.$w,
124a20 20 24 65 2c 20 30 2c 20 24 62 6c 6f 63 6b 69 6e 67 20 3f 20 50 72 6f 63 65 73 73 3a 3a 54 49 4d .$e,.0,.$blocking.?.Process::TIM
124a40 45 4f 55 54 5f 50 52 45 43 49 53 49 4f 4e 20 2a 20 31 45 36 20 3a 20 30 29 29 20 7b 0a 0a 20 0a EOUT_PRECISION.*.1E6.:.0)).{....
124a60 20 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 53 79 73 74 65 6d 43 61 6c 6c 42 65 65 6e 49 6e .if.(!$this->hasSystemCallBeenIn
124a80 74 65 72 72 75 70 74 65 64 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 69 70 65 73 20 3d 20 61 72 terrupted()).{.$this->pipes.=.ar
124aa0 72 61 79 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d ray();.}..return;.}....if.(0.===
124ac0 20 24 6e 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 .$n).{.return;.}..if.(null.!==.$
124ae0 77 20 26 26 20 30 20 3c 20 63 6f 75 6e 74 28 24 72 29 29 20 7b 0a 24 64 61 74 61 20 3d 20 27 27 w.&&.0.<.count($r)).{.$data.=.''
124b00 3b 0a 77 68 69 6c 65 20 28 24 64 61 74 61 72 65 61 64 20 3d 20 66 72 65 61 64 28 24 72 5b 27 69 ;.while.($dataread.=.fread($r['i
124b20 6e 70 75 74 27 5d 2c 20 73 65 6c 66 3a 3a 43 48 55 4e 4b 5f 53 49 5a 45 29 29 20 7b 0a 24 64 61 nput'],.self::CHUNK_SIZE)).{.$da
124b40 74 61 20 2e 3d 20 24 64 61 74 61 72 65 61 64 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 ta..=.$dataread;.}..$this->input
124b60 42 75 66 66 65 72 20 2e 3d 20 24 64 61 74 61 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 Buffer..=.$data;..if.(false.===.
124b80 24 64 61 74 61 20 7c 7c 20 28 74 72 75 65 20 3d 3d 3d 20 24 63 6c 6f 73 65 20 26 26 20 66 65 6f $data.||.(true.===.$close.&&.feo
124ba0 66 28 24 72 5b 27 69 6e 70 75 74 27 5d 29 20 26 26 20 27 27 20 3d 3d 3d 20 24 64 61 74 61 29 29 f($r['input']).&&.''.===.$data))
124bc0 20 7b 0a 0a 20 0a 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a .{.....$this->input.=.null;.}.}.
124be0 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 77 20 26 26 20 30 20 3c 20 63 6f 75 6e 74 28 24 77 .if.(null.!==.$w.&&.0.<.count($w
124c00 29 29 20 7b 0a 77 68 69 6c 65 20 28 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 )).{.while.(strlen($this->inputB
124c20 75 66 66 65 72 29 29 20 7b 0a 24 77 72 69 74 74 65 6e 20 3d 20 66 77 72 69 74 65 28 24 77 5b 30 uffer)).{.$written.=.fwrite($w[0
124c40 5d 2c 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 2c 20 32 20 3c 3c 20 31 38 29 3b ],.$this->inputBuffer,.2.<<.18);
124c60 0a 69 66 20 28 24 77 72 69 74 74 65 6e 20 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 .if.($written.>.0).{.$this->inpu
124c80 74 42 75 66 66 65 72 20 3d 20 28 73 74 72 69 6e 67 29 20 73 75 62 73 74 72 28 24 74 68 69 73 2d tBuffer.=.(string).substr($this-
124ca0 3e 69 6e 70 75 74 42 75 66 66 65 72 2c 20 24 77 72 69 74 74 65 6e 29 3b 0a 7d 20 65 6c 73 65 20 >inputBuffer,.$written);.}.else.
124cc0 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 27 27 20 3d 3d 3d 20 24 74 68 {.break;.}.}.}....if.(''.===.$th
124ce0 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 20 26 26 20 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 is->inputBuffer.&&.null.===.$thi
124d00 73 2d 3e 69 6e 70 75 74 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 s->input.&&.isset($this->pipes[0
124d20 5d 29 29 20 7b 0a 66 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 75 ])).{.fclose($this->pipes[0]);.u
124d40 6e 73 65 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 nset($this->pipes[0]);.}.}.}.<?p
124d60 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 hp...........namespace.Symfony\C
124d80 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 omponent\Process;..use.Symfony\C
124da0 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c omponent\Process\Exception\Inval
124dc0 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 idArgumentException;.use.Symfony
124de0 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 5c 4c 6f 67 \Component\Process\Exception\Log
124e00 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 icException;.use.Symfony\Compone
124e20 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 5c 50 72 6f 63 65 73 73 46 61 69 6c nt\Process\Exception\ProcessFail
124e40 65 64 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 edException;.use.Symfony\Compone
124e60 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 5c 50 72 6f 63 65 73 73 54 69 6d 65 nt\Process\Exception\ProcessTime
124e80 64 4f 75 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f dOutException;.use.Symfony\Compo
124ea0 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 5c 52 75 6e 74 69 6d 65 45 78 nent\Process\Exception\RuntimeEx
124ec0 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 ception;.use.Symfony\Component\P
124ee0 72 6f 63 65 73 73 5c 50 69 70 65 73 5c 50 69 70 65 73 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 rocess\Pipes\PipesInterface;.use
124f00 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 69 70 65 73 .Symfony\Component\Process\Pipes
124f20 5c 55 6e 69 78 50 69 70 65 73 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e \UnixPipes;.use.Symfony\Componen
124f40 74 5c 50 72 6f 63 65 73 73 5c 50 69 70 65 73 5c 57 69 6e 64 6f 77 73 50 69 70 65 73 3b 0a 0a 0a t\Process\Pipes\WindowsPipes;...
124f60 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 0a 7b 0a 63 6f 6e 73 74 20 45 52 52 20 ......class.Process.{.const.ERR.
124f80 3d 20 27 65 72 72 27 3b 0a 63 6f 6e 73 74 20 4f 55 54 20 3d 20 27 6f 75 74 27 3b 0a 0a 63 6f 6e =.'err';.const.OUT.=.'out';..con
124fa0 73 74 20 53 54 41 54 55 53 5f 52 45 41 44 59 20 3d 20 27 72 65 61 64 79 27 3b 0a 63 6f 6e 73 74 st.STATUS_READY.=.'ready';.const
124fc0 20 53 54 41 54 55 53 5f 53 54 41 52 54 45 44 20 3d 20 27 73 74 61 72 74 65 64 27 3b 0a 63 6f 6e .STATUS_STARTED.=.'started';.con
124fe0 73 74 20 53 54 41 54 55 53 5f 54 45 52 4d 49 4e 41 54 45 44 20 3d 20 27 74 65 72 6d 69 6e 61 74 st.STATUS_TERMINATED.=.'terminat
125000 65 64 27 3b 0a 0a 63 6f 6e 73 74 20 53 54 44 49 4e 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 53 54 44 ed';..const.STDIN.=.0;.const.STD
125020 4f 55 54 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 53 54 44 45 52 52 20 3d 20 32 3b 0a 0a 0a 20 63 6f OUT.=.1;.const.STDERR.=.2;....co
125040 6e 73 74 20 54 49 4d 45 4f 55 54 5f 50 52 45 43 49 53 49 4f 4e 20 3d 20 30 2e 32 3b 0a 0a 70 72 nst.TIMEOUT_PRECISION.=.0.2;..pr
125060 69 76 61 74 65 20 24 63 61 6c 6c 62 61 63 6b 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e ivate.$callback;.private.$comman
125080 64 6c 69 6e 65 3b 0a 70 72 69 76 61 74 65 20 24 63 77 64 3b 0a 70 72 69 76 61 74 65 20 24 65 6e dline;.private.$cwd;.private.$en
1250a0 76 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 72 v;.private.$input;.private.$star
1250c0 74 74 69 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 6c 61 73 74 4f 75 74 70 75 74 54 69 6d 65 3b 0a ttime;.private.$lastOutputTime;.
1250e0 70 72 69 76 61 74 65 20 24 74 69 6d 65 6f 75 74 3b 0a 70 72 69 76 61 74 65 20 24 69 64 6c 65 54 private.$timeout;.private.$idleT
125100 69 6d 65 6f 75 74 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 3b 0a 70 72 69 76 61 74 imeout;.private.$options;.privat
125120 65 20 24 65 78 69 74 63 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 24 66 61 6c 6c 62 61 63 6b 53 74 e.$exitcode;.private.$fallbackSt
125140 61 74 75 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 atus.=.array();.private.$process
125160 49 6e 66 6f 72 6d 61 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 44 69 73 61 Information;.private.$outputDisa
125180 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 73 74 64 6f 75 74 3b 0a 70 bled.=.false;.private.$stdout;.p
1251a0 72 69 76 61 74 65 20 24 73 74 64 65 72 72 3b 0a 70 72 69 76 61 74 65 20 24 65 6e 68 61 6e 63 65 rivate.$stderr;.private.$enhance
1251c0 57 69 6e 64 6f 77 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 3d 20 74 72 75 65 3b 0a 70 72 69 WindowsCompatibility.=.true;.pri
1251e0 76 61 74 65 20 24 65 6e 68 61 6e 63 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 vate.$enhanceSigchildCompatibili
125200 74 79 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 69 76 61 74 65 20 24 73 ty;.private.$process;.private.$s
125220 74 61 74 75 73 20 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 52 45 41 44 59 3b 0a 70 72 69 76 tatus.=.self::STATUS_READY;.priv
125240 61 74 65 20 24 69 6e 63 72 65 6d 65 6e 74 61 6c 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 30 ate.$incrementalOutputOffset.=.0
125260 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 63 72 65 6d 65 6e 74 61 6c 45 72 72 6f 72 4f 75 74 70 75 ;.private.$incrementalErrorOutpu
125280 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 24 74 74 79 3b 0a 70 72 69 76 61 tOffset.=.0;.private.$tty;.priva
1252a0 74 65 20 24 70 74 79 3b 0a 0a 70 72 69 76 61 74 65 20 24 75 73 65 46 69 6c 65 48 61 6e 64 6c 65 te.$pty;..private.$useFileHandle
1252c0 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 50 69 70 65 s.=.false;..private.$processPipe
1252e0 73 3b 0a 0a 70 72 69 76 61 74 65 20 24 6c 61 74 65 73 74 53 69 67 6e 61 6c 3b 0a 0a 70 72 69 76 s;..private.$latestSignal;..priv
125300 61 74 65 20 73 74 61 74 69 63 20 24 73 69 67 63 68 69 6c 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ate.static.$sigchild;.........pu
125320 62 6c 69 63 20 73 74 61 74 69 63 20 24 65 78 69 74 43 6f 64 65 73 20 3d 20 61 72 72 61 79 28 0a blic.static.$exitCodes.=.array(.
125340 30 20 3d 3e 20 27 4f 4b 27 2c 0a 31 20 3d 3e 20 27 47 65 6e 65 72 61 6c 20 65 72 72 6f 72 27 2c 0.=>.'OK',.1.=>.'General.error',
125360 0a 32 20 3d 3e 20 27 4d 69 73 75 73 65 20 6f 66 20 73 68 65 6c 6c 20 62 75 69 6c 74 69 6e 73 27 .2.=>.'Misuse.of.shell.builtins'
125380 2c 0a 0a 31 32 36 20 3d 3e 20 27 49 6e 76 6f 6b 65 64 20 63 6f 6d 6d 61 6e 64 20 63 61 6e 6e 6f ,..126.=>.'Invoked.command.canno
1253a0 74 20 65 78 65 63 75 74 65 27 2c 0a 31 32 37 20 3d 3e 20 27 43 6f 6d 6d 61 6e 64 20 6e 6f 74 20 t.execute',.127.=>.'Command.not.
1253c0 66 6f 75 6e 64 27 2c 0a 31 32 38 20 3d 3e 20 27 49 6e 76 61 6c 69 64 20 65 78 69 74 20 61 72 67 found',.128.=>.'Invalid.exit.arg
1253e0 75 6d 65 6e 74 27 2c 0a 0a 0a 20 31 32 39 20 3d 3e 20 27 48 61 6e 67 75 70 27 2c 0a 31 33 30 20 ument',....129.=>.'Hangup',.130.
125400 3d 3e 20 27 49 6e 74 65 72 72 75 70 74 27 2c 0a 31 33 31 20 3d 3e 20 27 51 75 69 74 20 61 6e 64 =>.'Interrupt',.131.=>.'Quit.and
125420 20 64 75 6d 70 20 63 6f 72 65 27 2c 0a 31 33 32 20 3d 3e 20 27 49 6c 6c 65 67 61 6c 20 69 6e 73 .dump.core',.132.=>.'Illegal.ins
125440 74 72 75 63 74 69 6f 6e 27 2c 0a 31 33 33 20 3d 3e 20 27 54 72 61 63 65 2f 62 72 65 61 6b 70 6f truction',.133.=>.'Trace/breakpo
125460 69 6e 74 20 74 72 61 70 27 2c 0a 31 33 34 20 3d 3e 20 27 50 72 6f 63 65 73 73 20 61 62 6f 72 74 int.trap',.134.=>.'Process.abort
125480 65 64 27 2c 0a 31 33 35 20 3d 3e 20 27 42 75 73 20 65 72 72 6f 72 3a 20 22 61 63 63 65 73 73 20 ed',.135.=>.'Bus.error:."access.
1254a0 74 6f 20 75 6e 64 65 66 69 6e 65 64 20 70 6f 72 74 69 6f 6e 20 6f 66 20 6d 65 6d 6f 72 79 20 6f to.undefined.portion.of.memory.o
1254c0 62 6a 65 63 74 22 27 2c 0a 31 33 36 20 3d 3e 20 27 46 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 bject"',.136.=>.'Floating.point.
1254e0 65 78 63 65 70 74 69 6f 6e 3a 20 22 65 72 72 6f 6e 65 6f 75 73 20 61 72 69 74 68 6d 65 74 69 63 exception:."erroneous.arithmetic
125500 20 6f 70 65 72 61 74 69 6f 6e 22 27 2c 0a 31 33 37 20 3d 3e 20 27 4b 69 6c 6c 20 28 74 65 72 6d .operation"',.137.=>.'Kill.(term
125520 69 6e 61 74 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 29 27 2c 0a 31 33 38 20 3d 3e 20 27 55 73 65 inate.immediately)',.138.=>.'Use
125540 72 2d 64 65 66 69 6e 65 64 20 31 27 2c 0a 31 33 39 20 3d 3e 20 27 53 65 67 6d 65 6e 74 61 74 69 r-defined.1',.139.=>.'Segmentati
125560 6f 6e 20 76 69 6f 6c 61 74 69 6f 6e 27 2c 0a 31 34 30 20 3d 3e 20 27 55 73 65 72 2d 64 65 66 69 on.violation',.140.=>.'User-defi
125580 6e 65 64 20 32 27 2c 0a 31 34 31 20 3d 3e 20 27 57 72 69 74 65 20 74 6f 20 70 69 70 65 20 77 69 ned.2',.141.=>.'Write.to.pipe.wi
1255a0 74 68 20 6e 6f 20 6f 6e 65 20 72 65 61 64 69 6e 67 27 2c 0a 31 34 32 20 3d 3e 20 27 53 69 67 6e th.no.one.reading',.142.=>.'Sign
1255c0 61 6c 20 72 61 69 73 65 64 20 62 79 20 61 6c 61 72 6d 27 2c 0a 31 34 33 20 3d 3e 20 27 54 65 72 al.raised.by.alarm',.143.=>.'Ter
1255e0 6d 69 6e 61 74 69 6f 6e 20 28 72 65 71 75 65 73 74 20 74 6f 20 74 65 72 6d 69 6e 61 74 65 29 27 mination.(request.to.terminate)'
125600 2c 0a 0a 20 31 34 35 20 3d 3e 20 27 43 68 69 6c 64 20 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e ,...145.=>.'Child.process.termin
125620 61 74 65 64 2c 20 73 74 6f 70 70 65 64 20 28 6f 72 20 63 6f 6e 74 69 6e 75 65 64 2a 29 27 2c 0a ated,.stopped.(or.continued*)',.
125640 31 34 36 20 3d 3e 20 27 43 6f 6e 74 69 6e 75 65 20 69 66 20 73 74 6f 70 70 65 64 27 2c 0a 31 34 146.=>.'Continue.if.stopped',.14
125660 37 20 3d 3e 20 27 53 74 6f 70 20 65 78 65 63 75 74 69 6e 67 20 74 65 6d 70 6f 72 61 72 69 6c 79 7.=>.'Stop.executing.temporarily
125680 27 2c 0a 31 34 38 20 3d 3e 20 27 54 65 72 6d 69 6e 61 6c 20 73 74 6f 70 20 73 69 67 6e 61 6c 27 ',.148.=>.'Terminal.stop.signal'
1256a0 2c 0a 31 34 39 20 3d 3e 20 27 42 61 63 6b 67 72 6f 75 6e 64 20 70 72 6f 63 65 73 73 20 61 74 74 ,.149.=>.'Background.process.att
1256c0 65 6d 70 74 69 6e 67 20 74 6f 20 72 65 61 64 20 66 72 6f 6d 20 74 74 79 20 28 22 69 6e 22 29 27 empting.to.read.from.tty.("in")'
1256e0 2c 0a 31 35 30 20 3d 3e 20 27 42 61 63 6b 67 72 6f 75 6e 64 20 70 72 6f 63 65 73 73 20 61 74 74 ,.150.=>.'Background.process.att
125700 65 6d 70 74 69 6e 67 20 74 6f 20 77 72 69 74 65 20 74 6f 20 74 74 79 20 28 22 6f 75 74 22 29 27 empting.to.write.to.tty.("out")'
125720 2c 0a 31 35 31 20 3d 3e 20 27 55 72 67 65 6e 74 20 64 61 74 61 20 61 76 61 69 6c 61 62 6c 65 20 ,.151.=>.'Urgent.data.available.
125740 6f 6e 20 73 6f 63 6b 65 74 27 2c 0a 31 35 32 20 3d 3e 20 27 43 50 55 20 74 69 6d 65 20 6c 69 6d on.socket',.152.=>.'CPU.time.lim
125760 69 74 20 65 78 63 65 65 64 65 64 27 2c 0a 31 35 33 20 3d 3e 20 27 46 69 6c 65 20 73 69 7a 65 20 it.exceeded',.153.=>.'File.size.
125780 6c 69 6d 69 74 20 65 78 63 65 65 64 65 64 27 2c 0a 31 35 34 20 3d 3e 20 27 53 69 67 6e 61 6c 20 limit.exceeded',.154.=>.'Signal.
1257a0 72 61 69 73 65 64 20 62 79 20 74 69 6d 65 72 20 63 6f 75 6e 74 69 6e 67 20 76 69 72 74 75 61 6c raised.by.timer.counting.virtual
1257c0 20 74 69 6d 65 3a 20 22 76 69 72 74 75 61 6c 20 74 69 6d 65 72 20 65 78 70 69 72 65 64 22 27 2c .time:."virtual.timer.expired"',
1257e0 0a 31 35 35 20 3d 3e 20 27 50 72 6f 66 69 6c 69 6e 67 20 74 69 6d 65 72 20 65 78 70 69 72 65 64 .155.=>.'Profiling.timer.expired
125800 27 2c 0a 0a 20 31 35 37 20 3d 3e 20 27 50 6f 6c 6c 61 62 6c 65 20 65 76 65 6e 74 27 2c 0a 0a 20 ',...157.=>.'Pollable.event',...
125820 31 35 39 20 3d 3e 20 27 42 61 64 20 73 79 73 63 61 6c 6c 27 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 159.=>.'Bad.syscall',.);........
125840 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ......public.function.__construc
125860 74 28 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 t($commandline,.$cwd.=.null,.arr
125880 61 79 20 24 65 6e 76 20 3d 20 6e 75 6c 6c 2c 20 24 69 6e 70 75 74 20 3d 20 6e 75 6c 6c 2c 20 24 ay.$env.=.null,.$input.=.null,.$
1258a0 74 69 6d 65 6f 75 74 20 3d 20 36 30 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 timeout.=.60,.array.$options.=.a
1258c0 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 rray()).{.if.(!function_exists('
1258e0 70 72 6f 63 5f 6f 70 65 6e 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 proc_open')).{.throw.new.Runtime
125900 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 50 72 6f 63 65 73 73 20 63 6c 61 73 73 20 72 65 6c Exception('The.Process.class.rel
125920 69 65 73 20 6f 6e 20 70 72 6f 63 5f 6f 70 65 6e 2c 20 77 68 69 63 68 20 69 73 20 6e 6f 74 20 61 ies.on.proc_open,.which.is.not.a
125940 76 61 69 6c 61 62 6c 65 20 6f 6e 20 79 6f 75 72 20 50 48 50 20 69 6e 73 74 61 6c 6c 61 74 69 6f vailable.on.your.PHP.installatio
125960 6e 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 3d 20 24 63 n.');.}..$this->commandline.=.$c
125980 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 24 74 68 69 73 2d 3e 63 77 64 20 3d 20 24 63 77 64 3b 0a 0a ommandline;.$this->cwd.=.$cwd;..
1259a0 0a 20 0a 20 0a 20 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 77 64 20 ........if.(null.===.$this->cwd.
1259c0 26 26 20 28 64 65 66 69 6e 65 64 28 27 5a 45 4e 44 5f 54 48 52 45 41 44 5f 53 41 46 45 27 29 20 &&.(defined('ZEND_THREAD_SAFE').
1259e0 7c 7c 20 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 ||.'\\'.===.DIRECTORY_SEPARATOR)
125a00 29 20 7b 0a 24 74 68 69 73 2d 3e 63 77 64 20 3d 20 67 65 74 63 77 64 28 29 3b 0a 7d 0a 69 66 20 ).{.$this->cwd.=.getcwd();.}.if.
125a20 28 6e 75 6c 6c 20 21 3d 3d 20 24 65 6e 76 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 45 6e 76 28 (null.!==.$env).{.$this->setEnv(
125a40 24 65 6e 76 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b $env);.}..$this->input.=.$input;
125a60 0a 24 74 68 69 73 2d 3e 73 65 74 54 69 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 3b 0a 24 74 .$this->setTimeout($timeout);.$t
125a80 68 69 73 2d 3e 75 73 65 46 69 6c 65 48 61 6e 64 6c 65 73 20 3d 20 27 5c 5c 27 20 3d 3d 3d 20 44 his->useFileHandles.=.'\\'.===.D
125aa0 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 3b 0a 24 74 68 69 73 2d 3e 70 74 79 20 3d IRECTORY_SEPARATOR;.$this->pty.=
125ac0 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d .false;.$this->enhanceWindowsCom
125ae0 70 61 74 69 62 69 6c 69 74 79 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 patibility.=.true;.$this->enhanc
125b00 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 3d 20 27 5c 5c 27 20 21 3d eSigchildCompatibility.=.'\\'.!=
125b20 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 26 26 20 24 74 68 69 73 2d 3e =.DIRECTORY_SEPARATOR.&&.$this->
125b40 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 isSigchildEnabled();.$this->opti
125b60 6f 6e 73 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 73 75 70 70 72 ons.=.array_replace(array('suppr
125b80 65 73 73 5f 65 72 72 6f 72 73 27 20 3d 3e 20 74 72 75 65 2c 20 27 62 69 6e 61 72 79 5f 70 69 70 ess_errors'.=>.true,.'binary_pip
125ba0 65 73 27 20 3d 3e 20 74 72 75 65 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 70 75 62 6c es'.=>.true),.$options);.}..publ
125bc0 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 64 65 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 ic.function.__destruct().{.$this
125be0 2d 3e 73 74 6f 70 28 30 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f ->stop(0);.}..public.function.__
125c00 63 6c 6f 6e 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 50 72 6f 63 65 73 73 44 61 74 clone().{.$this->resetProcessDat
125c20 61 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 a();.}.....................publi
125c40 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 c.function.run($callback.=.null)
125c60 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 72 65 74 .{.$this->start($callback);..ret
125c80 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 69 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a urn.$this->wait();.}............
125ca0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 75 73 74 52 75 6e 28 24 63 61 6c 6c ...public.function.mustRun($call
125cc0 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 65 6e 68 61 6e back.=.null).{.if.(!$this->enhan
125ce0 63 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 26 26 20 24 74 68 69 73 ceSigchildCompatibility.&&.$this
125d00 2d 3e 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e ->isSigchildEnabled()).{.throw.n
125d20 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 69 73 20 50 48 50 20 68 61 ew.RuntimeException('This.PHP.ha
125d40 73 20 62 65 65 6e 20 63 6f 6d 70 69 6c 65 64 20 77 69 74 68 20 2d 2d 65 6e 61 62 6c 65 2d 73 69 s.been.compiled.with.--enable-si
125d60 67 63 68 69 6c 64 2e 20 59 6f 75 20 6d 75 73 74 20 75 73 65 20 73 65 74 45 6e 68 61 6e 63 65 53 gchild..You.must.use.setEnhanceS
125d80 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 28 29 20 74 6f 20 75 73 65 20 74 68 igchildCompatibility().to.use.th
125da0 69 73 20 6d 65 74 68 6f 64 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 is.method.');.}..if.(0.!==.$this
125dc0 2d 3e 72 75 6e 28 24 63 61 6c 6c 62 61 63 6b 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 50 72 ->run($callback)).{.throw.new.Pr
125de0 6f 63 65 73 73 46 61 69 6c 65 64 45 78 63 65 70 74 69 6f 6e 28 24 74 68 69 73 29 3b 0a 7d 0a 0a ocessFailedException($this);.}..
125e00 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a return.$this;.}.................
125e20 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 61 72 74 28 24 63 61 .......public.function.start($ca
125e40 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 llback.=.null).{.if.($this->isRu
125e60 6e 6e 69 6e 67 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 nning()).{.throw.new.RuntimeExce
125e80 70 74 69 6f 6e 28 27 50 72 6f 63 65 73 73 20 69 73 20 61 6c 72 65 61 64 79 20 72 75 6e 6e 69 6e ption('Process.is.already.runnin
125ea0 67 27 29 3b 0a 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 g');.}.if.($this->outputDisabled
125ec0 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 63 61 6c 6c 62 61 63 6b 29 20 7b 0a 74 68 72 6f 77 20 .&&.null.!==.$callback).{.throw.
125ee0 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 4f 75 74 70 75 74 20 68 61 73 20 62 new.LogicException('Output.has.b
125f00 65 65 6e 20 64 69 73 61 62 6c 65 64 2c 20 65 6e 61 62 6c 65 20 69 74 20 74 6f 20 61 6c 6c 6f 77 een.disabled,.enable.it.to.allow
125f20 20 74 68 65 20 75 73 65 20 6f 66 20 61 20 63 61 6c 6c 62 61 63 6b 2e 27 29 3b 0a 7d 0a 0a 24 74 .the.use.of.a.callback.');.}..$t
125f40 68 69 73 2d 3e 72 65 73 65 74 50 72 6f 63 65 73 73 44 61 74 61 28 29 3b 0a 24 74 68 69 73 2d 3e his->resetProcessData();.$this->
125f60 73 74 61 72 74 74 69 6d 65 20 3d 20 24 74 68 69 73 2d 3e 6c 61 73 74 4f 75 74 70 75 74 54 69 6d starttime.=.$this->lastOutputTim
125f80 65 20 3d 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 63 61 6c 6c e.=.microtime(true);.$this->call
125fa0 62 61 63 6b 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 61 6c 6c 62 61 63 6b 28 24 63 61 6c back.=.$this->buildCallback($cal
125fc0 6c 62 61 63 6b 29 3b 0a 24 64 65 73 63 72 69 70 74 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 lback);.$descriptors.=.$this->ge
125fe0 74 44 65 73 63 72 69 70 74 6f 72 73 28 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 3d 20 tDescriptors();..$commandline.=.
126000 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 0a 69 66 20 28 27 5c 5c 27 20 3d 3d $this->commandline;..if.('\\'.==
126020 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 26 26 20 24 74 68 69 73 2d 3e =.DIRECTORY_SEPARATOR.&&.$this->
126040 65 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 29 20 7b 0a 24 enhanceWindowsCompatibility).{.$
126060 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 3d 20 27 63 6d 64 20 2f 56 3a 4f 4e 20 2f 45 3a 4f 4e 20 2f commandline.=.'cmd./V:ON./E:ON./
126080 44 20 2f 43 20 22 28 27 2e 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 2e 27 29 27 3b 0a 66 6f 72 65 61 D./C."('.$commandline.')';.forea
1260a0 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 69 70 65 73 2d 3e 67 65 74 46 69 6c 65 ch.($this->processPipes->getFile
1260c0 73 28 29 20 61 73 20 24 6f 66 66 73 65 74 20 3d 3e 20 24 66 69 6c 65 6e 61 6d 65 29 20 7b 0a 24 s().as.$offset.=>.$filename).{.$
1260e0 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 2e 3d 20 27 20 27 2e 24 6f 66 66 73 65 74 2e 27 3e 27 2e 50 commandline..=.'.'.$offset.'>'.P
126100 72 6f 63 65 73 73 55 74 69 6c 73 3a 3a 65 73 63 61 70 65 41 72 67 75 6d 65 6e 74 28 24 66 69 6c rocessUtils::escapeArgument($fil
126120 65 6e 61 6d 65 29 3b 0a 7d 0a 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 2e 3d 20 27 22 27 3b 0a 0a ename);.}.$commandline..=.'"';..
126140 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 27 62 79 70 61 73 if.(!isset($this->options['bypas
126160 73 5f 73 68 65 6c 6c 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 27 62 79 s_shell'])).{.$this->options['by
126180 70 61 73 73 5f 73 68 65 6c 6c 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 pass_shell'].=.true;.}.}.elseif.
1261a0 28 21 24 74 68 69 73 2d 3e 75 73 65 46 69 6c 65 48 61 6e 64 6c 65 73 20 26 26 20 24 74 68 69 73 (!$this->useFileHandles.&&.$this
1261c0 2d 3e 65 6e 68 61 6e 63 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 26 ->enhanceSigchildCompatibility.&
1261e0 26 20 24 74 68 69 73 2d 3e 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a &.$this->isSigchildEnabled()).{.
126200 0a 20 24 64 65 73 63 72 69 70 74 6f 72 73 5b 33 5d 20 3d 20 61 72 72 61 79 28 27 70 69 70 65 27 ..$descriptors[3].=.array('pipe'
126220 2c 20 27 77 27 29 3b 0a 0a 0a 20 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 3d 20 27 7b 20 28 27 2e ,.'w');....$commandline.=.'{.('.
126240 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 2e 27 29 20 3c 26 33 20 33 3c 26 2d 20 33 $this->commandline.').<&3.3<&-.3
126260 3e 2f 64 65 76 2f 6e 75 6c 6c 20 26 20 7d 20 33 3c 26 30 3b 27 3b 0a 24 63 6f 6d 6d 61 6e 64 6c >/dev/null.&.}.3<&0;';.$commandl
126280 69 6e 65 20 2e 3d 20 27 70 69 64 3d 24 21 3b 20 65 63 68 6f 20 24 70 69 64 20 3e 26 33 3b 20 77 ine..=.'pid=$!;.echo.$pid.>&3;.w
1262a0 61 69 74 20 24 70 69 64 3b 20 63 6f 64 65 3d 24 3f 3b 20 65 63 68 6f 20 24 63 6f 64 65 20 3e 26 ait.$pid;.code=$?;.echo.$code.>&
1262c0 33 3b 20 65 78 69 74 20 24 63 6f 64 65 27 3b 0a 0a 0a 20 0a 20 24 70 74 73 57 6f 72 6b 61 72 6f 3;.exit.$code';......$ptsWorkaro
1262e0 75 6e 64 20 3d 20 66 6f 70 65 6e 28 5f 5f 46 49 4c 45 5f 5f 2c 20 27 72 27 29 3b 0a 7d 0a 0a 24 und.=.fopen(__FILE__,.'r');.}..$
126300 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 70 72 6f 63 5f 6f 70 65 6e 28 24 63 6f 6d 6d 61 this->process.=.proc_open($comma
126320 6e 64 6c 69 6e 65 2c 20 24 64 65 73 63 72 69 70 74 6f 72 73 2c 20 24 74 68 69 73 2d 3e 70 72 6f ndline,.$descriptors,.$this->pro
126340 63 65 73 73 50 69 70 65 73 2d 3e 70 69 70 65 73 2c 20 24 74 68 69 73 2d 3e 63 77 64 2c 20 24 74 cessPipes->pipes,.$this->cwd,.$t
126360 68 69 73 2d 3e 65 6e 76 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 his->env,.$this->options);..if.(
126380 21 69 73 5f 72 65 73 6f 75 72 63 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 29 20 7b 0a !is_resource($this->process)).{.
1263a0 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 throw.new.RuntimeException('Unab
1263c0 6c 65 20 74 6f 20 6c 61 75 6e 63 68 20 61 20 6e 65 77 20 70 72 6f 63 65 73 73 2e 27 29 3b 0a 7d le.to.launch.a.new.process.');.}
1263e0 0a 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 53 54 .$this->status.=.self::STATUS_ST
126400 41 52 54 45 44 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 65 73 63 72 69 70 74 6f 72 73 5b 33 ARTED;..if.(isset($descriptors[3
126420 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 5b 27 70 69 64 ])).{.$this->fallbackStatus['pid
126440 27 5d 20 3d 20 28 69 6e 74 29 20 66 67 65 74 73 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 '].=.(int).fgets($this->processP
126460 69 70 65 73 2d 3e 70 69 70 65 73 5b 33 5d 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 74 ipes->pipes[3]);.}..if.($this->t
126480 74 79 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 ty).{.return;.}..$this->updateSt
1264a0 61 74 75 73 28 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 54 69 6d 65 6f 75 74 atus(false);.$this->checkTimeout
1264c0 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ();.}.................public.fun
1264e0 63 74 69 6f 6e 20 72 65 73 74 61 72 74 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a ction.restart($callback.=.null).
126500 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 74 68 72 6f {.if.($this->isRunning()).{.thro
126520 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 50 72 6f 63 65 73 73 20 w.new.RuntimeException('Process.
126540 69 73 20 61 6c 72 65 61 64 79 20 72 75 6e 6e 69 6e 67 27 29 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 is.already.running');.}..$proces
126560 73 20 3d 20 63 6c 6f 6e 65 20 24 74 68 69 73 3b 0a 24 70 72 6f 63 65 73 73 2d 3e 73 74 61 72 74 s.=.clone.$this;.$process->start
126580 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 63 65 73 73 3b 0a 7d ($callback);..return.$process;.}
1265a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e .................public.function
1265c0 20 77 61 69 74 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d .wait($callback.=.null).{.$this-
1265e0 3e 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 73 53 74 61 72 74 65 64 28 5f 5f 46 55 4e 43 54 >requireProcessIsStarted(__FUNCT
126600 49 4f 4e 5f 5f 29 3b 0a 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 66 61 6c ION__);..$this->updateStatus(fal
126620 73 65 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 61 6c 6c 62 61 63 6b 29 20 7b 0a 24 se);.if.(null.!==.$callback).{.$
126640 74 68 69 73 2d 3e 63 61 6c 6c 62 61 63 6b 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 61 6c this->callback.=.$this->buildCal
126660 6c 62 61 63 6b 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 0a 64 6f 20 7b 0a 24 74 68 69 73 2d lback($callback);.}..do.{.$this-
126680 3e 63 68 65 63 6b 54 69 6d 65 6f 75 74 28 29 3b 0a 24 72 75 6e 6e 69 6e 67 20 3d 20 27 5c 5c 27 >checkTimeout();.$running.=.'\\'
1266a0 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 3f 20 24 74 68 69 73 .===.DIRECTORY_SEPARATOR.?.$this
1266c0 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 20 3a 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 69 ->isRunning().:.$this->processPi
1266e0 70 65 73 2d 3e 61 72 65 4f 70 65 6e 28 29 3b 0a 24 63 6c 6f 73 65 20 3d 20 27 5c 5c 27 20 21 3d pes->areOpen();.$close.=.'\\'.!=
126700 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 7c 7c 20 21 24 72 75 6e 6e 69 =.DIRECTORY_SEPARATOR.||.!$runni
126720 6e 67 3b 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 69 70 65 73 28 74 72 75 65 2c 20 24 63 6c 6f 73 ng;.$this->readPipes(true,.$clos
126740 65 29 3b 0a 7d 20 77 68 69 6c 65 20 28 24 72 75 6e 6e 69 6e 67 29 3b 0a 0a 77 68 69 6c 65 20 28 e);.}.while.($running);..while.(
126760 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 75 73 6c 65 65 70 28 31 30 30 $this->isRunning()).{.usleep(100
126780 30 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 0);.}..if.($this->processInforma
1267a0 74 69 6f 6e 5b 27 73 69 67 6e 61 6c 65 64 27 5d 20 26 26 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 tion['signaled'].&&.$this->proce
1267c0 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 20 21 3d 3d 20 24 74 68 ssInformation['termsig'].!==.$th
1267e0 69 73 2d 3e 6c 61 74 65 73 74 53 69 67 6e 61 6c 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 is->latestSignal).{.throw.new.Ru
126800 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 70 72 6f 63 ntimeException(sprintf('The.proc
126820 65 73 73 20 68 61 73 20 62 65 65 6e 20 73 69 67 6e 61 6c 65 64 20 77 69 74 68 20 73 69 67 6e 61 ess.has.been.signaled.with.signa
126840 6c 20 22 25 73 22 2e 27 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 l."%s".',.$this->processInformat
126860 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 ion['termsig']));.}..return.$thi
126880 73 2d 3e 65 78 69 74 63 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 s->exitcode;.}.......public.func
1268a0 74 69 6f 6e 20 67 65 74 50 69 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 tion.getPid().{.return.$this->is
1268c0 52 75 6e 6e 69 6e 67 28 29 20 3f 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d Running().?.$this->processInform
1268e0 61 74 69 6f 6e 5b 27 70 69 64 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ation['pid'].:.null;.}..........
126900 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 69 67 6e 61 6c 28 24 73 69 67 6e 61 ...public.function.signal($signa
126920 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f 53 69 67 6e 61 6c 28 24 73 69 67 6e 61 6c 2c 20 74 72 l).{.$this->doSignal($signal,.tr
126940 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ue);..return.$this;.}..........p
126960 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 4f 75 74 70 75 74 28 29 0a 7b ublic.function.disableOutput().{
126980 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 74 68 72 6f 77 .if.($this->isRunning()).{.throw
1269a0 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 44 69 73 61 62 6c 69 6e 67 .new.RuntimeException('Disabling
1269c0 20 6f 75 74 70 75 74 20 77 68 69 6c 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 69 73 20 72 75 6e .output.while.the.process.is.run
1269e0 6e 69 6e 67 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2e 27 29 3b 0a 7d 0a 69 66 20 28 6e ning.is.not.possible.');.}.if.(n
126a00 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 69 64 6c 65 54 69 6d 65 6f 75 74 29 20 7b 0a 74 68 ull.!==.$this->idleTimeout).{.th
126a20 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 4f 75 74 70 75 74 20 63 row.new.LogicException('Output.c
126a40 61 6e 20 6e 6f 74 20 62 65 20 64 69 73 61 62 6c 65 64 20 77 68 69 6c 65 20 61 6e 20 69 64 6c 65 an.not.be.disabled.while.an.idle
126a60 20 74 69 6d 65 6f 75 74 20 69 73 20 73 65 74 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 .timeout.is.set.');.}..$this->ou
126a80 74 70 75 74 44 69 73 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 tputDisabled.=.true;..return.$th
126aa0 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 6e is;.}.........public.function.en
126ac0 61 62 6c 65 4f 75 74 70 75 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e ableOutput().{.if.($this->isRunn
126ae0 69 6e 67 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 ing()).{.throw.new.RuntimeExcept
126b00 69 6f 6e 28 27 45 6e 61 62 6c 69 6e 67 20 6f 75 74 70 75 74 20 77 68 69 6c 65 20 74 68 65 20 70 ion('Enabling.output.while.the.p
126b20 72 6f 63 65 73 73 20 69 73 20 72 75 6e 6e 69 6e 67 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c rocess.is.running.is.not.possibl
126b40 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 20 3d e.');.}..$this->outputDisabled.=
126b60 20 66 61 6c 73 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 .false;..return.$this;.}.......p
126b80 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 4f 75 74 70 75 74 44 69 73 61 62 6c 65 64 28 ublic.function.isOutputDisabled(
126ba0 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 ).{.return.$this->outputDisabled
126bc0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 ;.}..........public.function.get
126be0 4f 75 74 70 75 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 Output().{.if.($this->outputDisa
126c00 62 6c 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e bled).{.throw.new.LogicException
126c20 28 27 4f 75 74 70 75 74 20 68 61 73 20 62 65 65 6e 20 64 69 73 61 62 6c 65 64 2e 27 29 3b 0a 7d ('Output.has.been.disabled.');.}
126c40 0a 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 73 53 74 61 72 74 65 64 ..$this->requireProcessIsStarted
126c60 28 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 69 70 65 (__FUNCTION__);..$this->readPipe
126c80 73 28 66 61 6c 73 65 2c 20 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 s(false,.'\\'.===.DIRECTORY_SEPA
126ca0 52 41 54 4f 52 20 3f 20 21 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 RATOR.?.!$this->processInformati
126cc0 6f 6e 5b 27 72 75 6e 6e 69 6e 67 27 5d 20 3a 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 on['running'].:.true);..return.$
126ce0 74 68 69 73 2d 3e 73 74 64 6f 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c this->stdout;.}.............publ
126d00 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 63 72 65 6d 65 6e 74 61 6c 4f 75 74 70 75 74 ic.function.getIncrementalOutput
126d20 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 73 53 74 61 72 ().{.$this->requireProcessIsStar
126d40 74 65 64 28 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 3b 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 ted(__FUNCTION__);..$data.=.$thi
126d60 73 2d 3e 67 65 74 4f 75 74 70 75 74 28 29 3b 0a 0a 24 6c 61 74 65 73 74 20 3d 20 73 75 62 73 74 s->getOutput();..$latest.=.subst
126d80 72 28 24 64 61 74 61 2c 20 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 6e 74 61 6c 4f 75 74 70 75 r($data,.$this->incrementalOutpu
126da0 74 4f 66 66 73 65 74 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6c 61 74 65 73 74 tOffset);..if.(false.===.$latest
126dc0 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 ).{.return.'';.}..$this->increme
126de0 6e 74 61 6c 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 73 74 72 6c 65 6e 28 24 64 61 74 61 29 ntalOutputOffset.=.strlen($data)
126e00 3b 0a 0a 72 65 74 75 72 6e 20 24 6c 61 74 65 73 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ;..return.$latest;.}.......publi
126e20 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 72 4f 75 74 70 75 74 28 29 0a 7b 0a 24 74 68 69 73 c.function.clearOutput().{.$this
126e40 2d 3e 73 74 64 6f 75 74 20 3d 20 27 27 3b 0a 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 6e 74 61 ->stdout.=.'';.$this->incrementa
126e60 6c 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 lOutputOffset.=.0;..return.$this
126e80 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 ;.}..........public.function.get
126ea0 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 ErrorOutput().{.if.($this->outpu
126ec0 74 44 69 73 61 62 6c 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 tDisabled).{.throw.new.LogicExce
126ee0 70 74 69 6f 6e 28 27 4f 75 74 70 75 74 20 68 61 73 20 62 65 65 6e 20 64 69 73 61 62 6c 65 64 2e ption('Output.has.been.disabled.
126f00 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 73 53 74 ');.}..$this->requireProcessIsSt
126f20 61 72 74 65 64 28 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 61 arted(__FUNCTION__);..$this->rea
126f40 64 50 69 70 65 73 28 66 61 6c 73 65 2c 20 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 dPipes(false,.'\\'.===.DIRECTORY
126f60 5f 53 45 50 41 52 41 54 4f 52 20 3f 20 21 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f _SEPARATOR.?.!$this->processInfo
126f80 72 6d 61 74 69 6f 6e 5b 27 72 75 6e 6e 69 6e 67 27 5d 20 3a 20 74 72 75 65 29 3b 0a 0a 72 65 74 rmation['running'].:.true);..ret
126fa0 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 64 65 72 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a urn.$this->stderr;.}............
126fc0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 63 72 65 6d 65 6e 74 61 6c ..public.function.getIncremental
126fe0 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 50 72 ErrorOutput().{.$this->requirePr
127000 6f 63 65 73 73 49 73 53 74 61 72 74 65 64 28 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 3b 0a 0a 24 ocessIsStarted(__FUNCTION__);..$
127020 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a data.=.$this->getErrorOutput();.
127040 0a 24 6c 61 74 65 73 74 20 3d 20 73 75 62 73 74 72 28 24 64 61 74 61 2c 20 24 74 68 69 73 2d 3e .$latest.=.substr($data,.$this->
127060 69 6e 63 72 65 6d 65 6e 74 61 6c 45 72 72 6f 72 4f 75 74 70 75 74 4f 66 66 73 65 74 29 3b 0a 0a incrementalErrorOutputOffset);..
127080 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6c 61 74 65 73 74 29 20 7b 0a 72 65 74 75 72 6e 20 if.(false.===.$latest).{.return.
1270a0 27 27 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 6e 74 61 6c 45 72 72 6f 72 4f 75 '';.}..$this->incrementalErrorOu
1270c0 74 70 75 74 4f 66 66 73 65 74 20 3d 20 73 74 72 6c 65 6e 28 24 64 61 74 61 29 3b 0a 0a 72 65 74 tputOffset.=.strlen($data);..ret
1270e0 75 72 6e 20 24 6c 61 74 65 73 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 urn.$latest;.}.......public.func
127100 74 69 6f 6e 20 63 6c 65 61 72 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 7b 0a 24 74 68 69 73 2d tion.clearErrorOutput().{.$this-
127120 3e 73 74 64 65 72 72 20 3d 20 27 27 3b 0a 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 6e 74 61 6c >stderr.=.'';.$this->incremental
127140 45 72 72 6f 72 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 72 65 74 75 72 6e 20 24 ErrorOutputOffset.=.0;..return.$
127160 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 this;.}.........public.function.
127180 67 65 74 45 78 69 74 43 6f 64 65 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 65 6e 68 61 getExitCode().{.if.(!$this->enha
1271a0 6e 63 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 26 26 20 24 74 68 69 nceSigchildCompatibility.&&.$thi
1271c0 73 2d 3e 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 74 68 72 6f 77 20 s->isSigchildEnabled()).{.throw.
1271e0 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 69 73 20 50 48 50 20 68 new.RuntimeException('This.PHP.h
127200 61 73 20 62 65 65 6e 20 63 6f 6d 70 69 6c 65 64 20 77 69 74 68 20 2d 2d 65 6e 61 62 6c 65 2d 73 as.been.compiled.with.--enable-s
127220 69 67 63 68 69 6c 64 2e 20 59 6f 75 20 6d 75 73 74 20 75 73 65 20 73 65 74 45 6e 68 61 6e 63 65 igchild..You.must.use.setEnhance
127240 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 28 29 20 74 6f 20 75 73 65 20 74 SigchildCompatibility().to.use.t
127260 68 69 73 20 6d 65 74 68 6f 64 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 his.method.');.}..$this->updateS
127280 74 61 74 75 73 28 66 61 6c 73 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 69 tatus(false);..return.$this->exi
1272a0 74 63 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 tcode;.}.............public.func
1272c0 74 69 6f 6e 20 67 65 74 45 78 69 74 43 6f 64 65 54 65 78 74 28 29 0a 7b 0a 69 66 20 28 6e 75 6c tion.getExitCodeText().{.if.(nul
1272e0 6c 20 3d 3d 3d 20 24 65 78 69 74 63 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 78 69 74 l.===.$exitcode.=.$this->getExit
127300 43 6f 64 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 Code()).{.return;.}..return.isse
127320 74 28 73 65 6c 66 3a 3a 24 65 78 69 74 43 6f 64 65 73 5b 24 65 78 69 74 63 6f 64 65 5d 29 20 3f t(self::$exitCodes[$exitcode]).?
127340 20 73 65 6c 66 3a 3a 24 65 78 69 74 43 6f 64 65 73 5b 24 65 78 69 74 63 6f 64 65 5d 20 3a 20 27 .self::$exitCodes[$exitcode].:.'
127360 55 6e 6b 6e 6f 77 6e 20 65 72 72 6f 72 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 Unknown.error';.}.......public.f
127380 75 6e 63 74 69 6f 6e 20 69 73 53 75 63 63 65 73 73 66 75 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 unction.isSuccessful().{.return.
1273a0 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 78 69 74 43 6f 64 65 28 29 3b 0a 7d 0a 0a 0a 0.===.$this->getExitCode();.}...
1273c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 42 65 65 6e .........public.function.hasBeen
1273e0 53 69 67 6e 61 6c 65 64 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 50 72 6f 63 65 Signaled().{.$this->requireProce
127400 73 73 49 73 54 65 72 6d 69 6e 61 74 65 64 28 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 3b 0a 0a 69 ssIsTerminated(__FUNCTION__);..i
127420 66 20 28 21 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 f.(!$this->enhanceSigchildCompat
127440 69 62 69 6c 69 74 79 20 26 26 20 24 74 68 69 73 2d 3e 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 ibility.&&.$this->isSigchildEnab
127460 6c 65 64 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 led()).{.throw.new.RuntimeExcept
127480 69 6f 6e 28 27 54 68 69 73 20 50 48 50 20 68 61 73 20 62 65 65 6e 20 63 6f 6d 70 69 6c 65 64 20 ion('This.PHP.has.been.compiled.
1274a0 77 69 74 68 20 2d 2d 65 6e 61 62 6c 65 2d 73 69 67 63 68 69 6c 64 2e 20 54 65 72 6d 20 73 69 67 with.--enable-sigchild..Term.sig
1274c0 6e 61 6c 20 63 61 6e 20 6e 6f 74 20 62 65 20 72 65 74 72 69 65 76 65 64 2e 27 29 3b 0a 7d 0a 0a nal.can.not.be.retrieved.');.}..
1274e0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e return.$this->processInformation
127500 5b 27 73 69 67 6e 61 6c 65 64 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ['signaled'];.}............publi
127520 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 65 72 6d 53 69 67 6e 61 6c 28 29 0a 7b 0a 24 74 68 c.function.getTermSignal().{.$th
127540 69 73 2d 3e 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 73 54 65 72 6d 69 6e 61 74 65 64 28 5f is->requireProcessIsTerminated(_
127560 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 53 69 67 63 _FUNCTION__);..if.($this->isSigc
127580 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 20 26 26 20 28 21 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 hildEnabled().&&.(!$this->enhanc
1275a0 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 7c 7c 20 2d 31 20 3d 3d 3d eSigchildCompatibility.||.-1.===
1275c0 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 74 65 72 6d .$this->processInformation['term
1275e0 73 69 67 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 sig'])).{.throw.new.RuntimeExcep
127600 74 69 6f 6e 28 27 54 68 69 73 20 50 48 50 20 68 61 73 20 62 65 65 6e 20 63 6f 6d 70 69 6c 65 64 tion('This.PHP.has.been.compiled
127620 20 77 69 74 68 20 2d 2d 65 6e 61 62 6c 65 2d 73 69 67 63 68 69 6c 64 2e 20 54 65 72 6d 20 73 69 .with.--enable-sigchild..Term.si
127640 67 6e 61 6c 20 63 61 6e 20 6e 6f 74 20 62 65 20 72 65 74 72 69 65 76 65 64 2e 27 29 3b 0a 7d 0a gnal.can.not.be.retrieved.');.}.
127660 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f .return.$this->processInformatio
127680 6e 5b 27 74 65 72 6d 73 69 67 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 n['termsig'];.}...........public
1276a0 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 42 65 65 6e 53 74 6f 70 70 65 64 28 29 0a 7b 0a 24 74 68 .function.hasBeenStopped().{.$th
1276c0 69 73 2d 3e 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 73 54 65 72 6d 69 6e 61 74 65 64 28 5f is->requireProcessIsTerminated(_
1276e0 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f _FUNCTION__);..return.$this->pro
127700 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 74 6f 70 70 65 64 27 5d 3b 0a 7d 0a 0a 0a cessInformation['stopped'];.}...
127720 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 6f 70 53 ........public.function.getStopS
127740 69 67 6e 61 6c 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 ignal().{.$this->requireProcessI
127760 73 54 65 72 6d 69 6e 61 74 65 64 28 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 3b 0a 0a 72 65 74 75 sTerminated(__FUNCTION__);..retu
127780 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 74 rn.$this->processInformation['st
1277a0 6f 70 73 69 67 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e opsig'];.}.......public.function
1277c0 20 69 73 52 75 6e 6e 69 6e 67 28 29 0a 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f .isRunning().{.if.(self::STATUS_
1277e0 53 54 41 52 54 45 44 20 21 3d 3d 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 29 20 7b 0a 72 65 74 STARTED.!==.$this->status).{.ret
127800 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 urn.false;.}..$this->updateStatu
127820 73 28 66 61 6c 73 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 s(false);..return.$this->process
127840 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 72 75 6e 6e 69 6e 67 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a Information['running'];.}.......
127860 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 74 61 72 74 65 64 28 29 0a 7b 0a 72 65 public.function.isStarted().{.re
127880 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 21 3d 20 73 65 6c 66 3a 3a 53 54 41 54 turn.$this->status.!=.self::STAT
1278a0 55 53 5f 52 45 41 44 59 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f US_READY;.}.......public.functio
1278c0 6e 20 69 73 54 65 72 6d 69 6e 61 74 65 64 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 n.isTerminated().{.$this->update
1278e0 53 74 61 74 75 73 28 66 61 6c 73 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 Status(false);..return.$this->st
127900 61 74 75 73 20 3d 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 54 45 52 4d 49 4e 41 54 45 44 3b atus.==.self::STATUS_TERMINATED;
127920 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 .}.........public.function.getSt
127940 61 74 75 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 66 61 6c atus().{.$this->updateStatus(fal
127960 73 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 3b 0a 7d 0a 0a 0a se);..return.$this->status;.}...
127980 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 6f 70 28 24 74 69 6d .......public.function.stop($tim
1279a0 65 6f 75 74 20 3d 20 31 30 2c 20 24 73 69 67 6e 61 6c 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 69 eout.=.10,.$signal.=.null).{.$ti
1279c0 6d 65 6f 75 74 4d 69 63 72 6f 20 3d 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 20 2b 20 24 meoutMicro.=.microtime(true).+.$
1279e0 74 69 6d 65 6f 75 74 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 timeout;.if.($this->isRunning())
127a00 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 53 69 67 6e 61 6c 28 31 35 2c 20 66 61 6c 73 65 29 3b .{...$this->doSignal(15,.false);
127a20 0a 64 6f 20 7b 0a 75 73 6c 65 65 70 28 31 30 30 30 29 3b 0a 7d 20 77 68 69 6c 65 20 28 24 74 68 .do.{.usleep(1000);.}.while.($th
127a40 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 20 26 26 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 is->isRunning().&&.microtime(tru
127a60 65 29 20 3c 20 24 74 69 6d 65 6f 75 74 4d 69 63 72 6f 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d e).<.$timeoutMicro);..if.($this-
127a80 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 0a 20 0a 20 24 74 68 69 73 2d 3e 64 6f 53 69 67 >isRunning()).{.....$this->doSig
127aa0 6e 61 6c 28 24 73 69 67 6e 61 6c 20 3f 3a 20 39 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 0a 69 nal($signal.?:.9,.false);.}.}..i
127ac0 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 69 66 20 28 69 73 73 f.($this->isRunning()).{.if.(iss
127ae0 65 74 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 5b 27 70 69 64 27 5d 29 et($this->fallbackStatus['pid'])
127b00 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 5b ).{.unset($this->fallbackStatus[
127b20 27 70 69 64 27 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 6f 70 28 30 2c 20 'pid']);..return.$this->stop(0,.
127b40 24 73 69 67 6e 61 6c 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 63 6c 6f 73 65 28 29 3b 0a 7d 0a 0a 72 $signal);.}.$this->close();.}..r
127b60 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 eturn.$this->exitcode;.}.......p
127b80 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4f 75 74 70 75 74 28 24 6c 69 6e 65 29 0a ublic.function.addOutput($line).
127ba0 7b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4f 75 74 70 75 74 54 69 6d 65 20 3d 20 6d 69 63 72 6f 74 {.$this->lastOutputTime.=.microt
127bc0 69 6d 65 28 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 73 74 64 6f 75 74 20 2e 3d 20 24 6c 69 6e ime(true);.$this->stdout..=.$lin
127be0 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 45 72 e;.}.......public.function.addEr
127c00 72 6f 72 4f 75 74 70 75 74 28 24 6c 69 6e 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4f 75 rorOutput($line).{.$this->lastOu
127c20 74 70 75 74 54 69 6d 65 20 3d 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 3b 0a 24 74 68 69 tputTime.=.microtime(true);.$thi
127c40 73 2d 3e 73 74 64 65 72 72 20 2e 3d 20 24 6c 69 6e 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c s->stderr..=.$line;.}.......publ
127c60 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 0a 7b 0a 72 ic.function.getCommandLine().{.r
127c80 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 7d 0a 0a 0a 0a 0a eturn.$this->commandline;.}.....
127ca0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6d 6d 61 6e 64 4c 69 ....public.function.setCommandLi
127cc0 6e 65 28 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e ne($commandline).{.$this->comman
127ce0 64 6c 69 6e 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 dline.=.$commandline;..return.$t
127d00 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 his;.}.......public.function.get
127d20 54 69 6d 65 6f 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 Timeout().{.return.$this->timeou
127d40 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 64 t;.}.......public.function.getId
127d60 6c 65 54 69 6d 65 6f 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 64 6c 65 leTimeout().{.return.$this->idle
127d80 54 69 6d 65 6f 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 Timeout;.}.............public.fu
127da0 6e 63 74 69 6f 6e 20 73 65 74 54 69 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 0a 7b 0a 24 74 nction.setTimeout($timeout).{.$t
127dc0 68 69 73 2d 3e 74 69 6d 65 6f 75 74 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 54 69 his->timeout.=.$this->validateTi
127de0 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a meout($timeout);..return.$this;.
127e00 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 }..............public.function.s
127e20 65 74 49 64 6c 65 54 69 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 0a 7b 0a 69 66 20 28 6e 75 etIdleTimeout($timeout).{.if.(nu
127e40 6c 6c 20 21 3d 3d 20 24 74 69 6d 65 6f 75 74 20 26 26 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 ll.!==.$timeout.&&.$this->output
127e60 44 69 73 61 62 6c 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 Disabled).{.throw.new.LogicExcep
127e80 74 69 6f 6e 28 27 49 64 6c 65 20 74 69 6d 65 6f 75 74 20 63 61 6e 20 6e 6f 74 20 62 65 20 73 65 tion('Idle.timeout.can.not.be.se
127ea0 74 20 77 68 69 6c 65 20 74 68 65 20 6f 75 74 70 75 74 20 69 73 20 64 69 73 61 62 6c 65 64 2e 27 t.while.the.output.is.disabled.'
127ec0 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 64 6c 65 54 69 6d 65 6f 75 74 20 3d 20 24 74 68 69 73 );.}..$this->idleTimeout.=.$this
127ee0 2d 3e 76 61 6c 69 64 61 74 65 54 69 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 3b 0a 0a 72 65 ->validateTimeout($timeout);..re
127f00 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 turn.$this;.}...........public.f
127f20 75 6e 63 74 69 6f 6e 20 73 65 74 54 74 79 28 24 74 74 79 29 0a 7b 0a 69 66 20 28 27 5c 5c 27 20 unction.setTty($tty).{.if.('\\'.
127f40 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 26 26 20 24 74 74 79 29 ===.DIRECTORY_SEPARATOR.&&.$tty)
127f60 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 .{.throw.new.RuntimeException('T
127f80 54 59 20 6d 6f 64 65 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 6f 6e 20 57 69 6e 64 TY.mode.is.not.supported.on.Wind
127fa0 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 27 29 3b 0a 7d 0a 69 66 20 28 24 74 74 79 20 26 26 20 28 ows.platform.');.}.if.($tty.&&.(
127fc0 21 66 69 6c 65 5f 65 78 69 73 74 73 28 27 2f 64 65 76 2f 74 74 79 27 29 20 7c 7c 20 21 69 73 5f !file_exists('/dev/tty').||.!is_
127fe0 72 65 61 64 61 62 6c 65 28 27 2f 64 65 76 2f 74 74 79 27 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e readable('/dev/tty'))).{.throw.n
128000 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 54 59 20 6d 6f 64 65 20 72 65 ew.RuntimeException('TTY.mode.re
128020 71 75 69 72 65 73 20 2f 64 65 76 2f 74 74 79 20 74 6f 20 62 65 20 72 65 61 64 61 62 6c 65 2e 27 quires./dev/tty.to.be.readable.'
128040 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 74 74 79 20 3d 20 28 62 6f 6f 6c 29 20 24 74 74 79 3b 0a );.}..$this->tty.=.(bool).$tty;.
128060 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 .return.$this;.}.......public.fu
128080 6e 63 74 69 6f 6e 20 69 73 54 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 nction.isTty().{.return.$this->t
1280a0 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 ty;.}.........public.function.se
1280c0 74 50 74 79 28 24 62 6f 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 74 79 20 3d 20 28 62 6f 6f 6c tPty($bool).{.$this->pty.=.(bool
1280e0 29 20 24 62 6f 6f 6c 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ).$bool;..return.$this;.}.......
128100 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 50 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e public.function.isPty().{.return
128120 20 24 74 68 69 73 2d 3e 70 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .$this->pty;.}.......public.func
128140 74 69 6f 6e 20 67 65 74 57 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72 79 28 29 0a 7b 0a 69 66 20 tion.getWorkingDirectory().{.if.
128160 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 77 64 29 20 7b 0a 0a 20 0a 20 72 65 74 75 (null.===.$this->cwd).{.....retu
128180 72 6e 20 67 65 74 63 77 64 28 29 20 3f 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 rn.getcwd().?:.null;.}..return.$
1281a0 74 68 69 73 2d 3e 63 77 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 this->cwd;.}.........public.func
1281c0 74 69 6f 6e 20 73 65 74 57 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72 79 28 24 63 77 64 29 0a 7b tion.setWorkingDirectory($cwd).{
1281e0 0a 24 74 68 69 73 2d 3e 63 77 64 20 3d 20 24 63 77 64 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 .$this->cwd.=.$cwd;..return.$thi
128200 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 6e s;.}.......public.function.getEn
128220 76 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6e 76 3b 0a 7d 0a 0a 0a 0a 0a 0a v().{.return.$this->env;.}......
128240 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 6e 76 28 .........public.function.setEnv(
128260 61 72 72 61 79 20 24 65 6e 76 29 0a 7b 0a 0a 20 24 65 6e 76 20 3d 20 61 72 72 61 79 5f 66 69 6c array.$env).{...$env.=.array_fil
128280 74 65 72 28 24 65 6e 76 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 7b 0a 72 65 ter($env,.function.($value).{.re
1282a0 74 75 72 6e 20 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 3b 0a 7d 29 3b 0a 0a 24 74 68 turn.!is_array($value);.});..$th
1282c0 69 73 2d 3e 65 6e 76 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 65 6e 76 is->env.=.array();.foreach.($env
1282e0 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 74 68 69 73 2d 3e 65 6e 76 .as.$key.=>.$value).{.$this->env
128300 5b 24 6b 65 79 5d 20 3d 20 28 73 74 72 69 6e 67 29 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 72 65 74 [$key].=.(string).$value;.}..ret
128320 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 urn.$this;.}...........public.fu
128340 6e 63 74 69 6f 6e 20 67 65 74 53 74 64 69 6e 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 nction.getStdin().{.@trigger_err
128360 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 74 68 6f 64 20 69 73 or('The.'.__METHOD__.'.method.is
128380 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 35 20 61 6e .deprecated.since.version.2.5.an
1283a0 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 55 73 65 20 74 68 d.will.be.removed.in.3.0..Use.th
1283c0 65 20 67 65 74 49 6e 70 75 74 28 29 20 6d 65 74 68 6f 64 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 e.getInput().method.instead.',.E
1283e0 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 _USER_DEPRECATED);..return.$this
128400 2d 3e 67 65 74 49 6e 70 75 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ->getInput();.}.......public.fun
128420 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ction.getInput().{.return.$this-
128440 3e 69 6e 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 >input;.}...............public.f
128460 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 64 69 6e 28 24 73 74 64 69 6e 29 0a 7b 0a 40 74 72 69 67 unction.setStdin($stdin).{.@trig
128480 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 ger_error('The.'.__METHOD__.'.me
1284a0 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e thod.is.deprecated.since.version
1284c0 20 32 2e 35 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e .2.5.and.will.be.removed.in.3.0.
1284e0 20 55 73 65 20 74 68 65 20 73 65 74 49 6e 70 75 74 28 29 20 6d 65 74 68 6f 64 20 69 6e 73 74 65 .Use.the.setInput().method.inste
128500 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 72 65 74 75 72 ad.',.E_USER_DEPRECATED);..retur
128520 6e 20 24 74 68 69 73 2d 3e 73 65 74 49 6e 70 75 74 28 24 73 74 64 69 6e 29 3b 0a 7d 0a 0a 0a 0a n.$this->setInput($stdin);.}....
128540 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e ...........public.function.setIn
128560 70 75 74 28 24 69 6e 70 75 74 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 put($input).{.if.($this->isRunni
128580 6e 67 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e ng()).{.throw.new.LogicException
1285a0 28 27 49 6e 70 75 74 20 63 61 6e 20 6e 6f 74 20 62 65 20 73 65 74 20 77 68 69 6c 65 20 74 68 65 ('Input.can.not.be.set.while.the
1285c0 20 70 72 6f 63 65 73 73 20 69 73 20 72 75 6e 6e 69 6e 67 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 .process.is.running.');.}..$this
1285e0 2d 3e 69 6e 70 75 74 20 3d 20 50 72 6f 63 65 73 73 55 74 69 6c 73 3a 3a 76 61 6c 69 64 61 74 65 ->input.=.ProcessUtils::validate
128600 49 6e 70 75 74 28 73 70 72 69 6e 74 66 28 27 25 73 3a 3a 25 73 27 2c 20 5f 5f 43 4c 41 53 53 5f Input(sprintf('%s::%s',.__CLASS_
128620 5f 2c 20 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 2c 20 24 69 6e 70 75 74 29 3b 0a 0a 72 65 74 75 _,.__FUNCTION__),.$input);..retu
128640 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f rn.$this;.}.......public.functio
128660 6e 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f n.getOptions().{.return.$this->o
128680 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ptions;.}.........public.functio
1286a0 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 29 0a 7b 0a 24 n.setOptions(array.$options).{.$
1286c0 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 24 6f 70 74 69 6f 6e 73 3b 0a 0a 72 65 74 75 72 this->options.=.$options;..retur
1286e0 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 n.$this;.}.........public.functi
128700 6f 6e 20 67 65 74 45 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 on.getEnhanceWindowsCompatibilit
128720 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 65 57 69 6e 64 6f y().{.return.$this->enhanceWindo
128740 77 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 wsCompatibility;.}.........publi
128760 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d 70 c.function.setEnhanceWindowsComp
128780 61 74 69 62 69 6c 69 74 79 28 24 65 6e 68 61 6e 63 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e 68 atibility($enhance).{.$this->enh
1287a0 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 3d 20 28 62 6f 6f 6c anceWindowsCompatibility.=.(bool
1287c0 29 20 24 65 6e 68 61 6e 63 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a ).$enhance;..return.$this;.}....
1287e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 6e 68 61 6e 63 65 53 69 67 ...public.function.getEnhanceSig
128800 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 childCompatibility().{.return.$t
128820 68 69 73 2d 3e 65 6e 68 61 6e 63 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 his->enhanceSigchildCompatibilit
128840 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e y;.}.............public.function
128860 20 73 65 74 45 6e 68 61 6e 63 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 .setEnhanceSigchildCompatibility
128880 28 24 65 6e 68 61 6e 63 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 65 53 69 67 63 68 ($enhance).{.$this->enhanceSigch
1288a0 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 3d 20 28 62 6f 6f 6c 29 20 24 65 6e 68 61 6e ildCompatibility.=.(bool).$enhan
1288c0 63 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ce;..return.$this;.}..........pu
1288e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 54 69 6d 65 6f 75 74 28 29 0a 7b 0a 69 blic.function.checkTimeout().{.i
128900 66 20 28 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 21 3d 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 f.($this->status.!==.self::STATU
128920 53 5f 53 54 41 52 54 45 44 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c S_STARTED).{.return;.}..if.(null
128940 20 21 3d 3d 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 20 26 26 20 24 74 68 69 73 2d 3e 74 69 .!==.$this->timeout.&&.$this->ti
128960 6d 65 6f 75 74 20 3c 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 20 2d 20 24 74 68 69 73 2d meout.<.microtime(true).-.$this-
128980 3e 73 74 61 72 74 74 69 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 6f 70 28 30 29 3b 0a 0a 74 >starttime).{.$this->stop(0);..t
1289a0 68 72 6f 77 20 6e 65 77 20 50 72 6f 63 65 73 73 54 69 6d 65 64 4f 75 74 45 78 63 65 70 74 69 6f hrow.new.ProcessTimedOutExceptio
1289c0 6e 28 24 74 68 69 73 2c 20 50 72 6f 63 65 73 73 54 69 6d 65 64 4f 75 74 45 78 63 65 70 74 69 6f n($this,.ProcessTimedOutExceptio
1289e0 6e 3a 3a 54 59 50 45 5f 47 45 4e 45 52 41 4c 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d n::TYPE_GENERAL);.}..if.(null.!=
128a00 3d 20 24 74 68 69 73 2d 3e 69 64 6c 65 54 69 6d 65 6f 75 74 20 26 26 20 24 74 68 69 73 2d 3e 69 =.$this->idleTimeout.&&.$this->i
128a20 64 6c 65 54 69 6d 65 6f 75 74 20 3c 20 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 20 2d 20 24 dleTimeout.<.microtime(true).-.$
128a40 74 68 69 73 2d 3e 6c 61 73 74 4f 75 74 70 75 74 54 69 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 this->lastOutputTime).{.$this->s
128a60 74 6f 70 28 30 29 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 50 72 6f 63 65 73 73 54 69 6d 65 64 4f top(0);..throw.new.ProcessTimedO
128a80 75 74 45 78 63 65 70 74 69 6f 6e 28 24 74 68 69 73 2c 20 50 72 6f 63 65 73 73 54 69 6d 65 64 4f utException($this,.ProcessTimedO
128aa0 75 74 45 78 63 65 70 74 69 6f 6e 3a 3a 54 59 50 45 5f 49 44 4c 45 29 3b 0a 7d 0a 7d 0a 0a 0a 0a utException::TYPE_IDLE);.}.}....
128ac0 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 50 74 79 53 ...public.static.function.isPtyS
128ae0 75 70 70 6f 72 74 65 64 28 29 0a 7b 0a 73 74 61 74 69 63 20 24 72 65 73 75 6c 74 3b 0a 0a 69 66 upported().{.static.$result;..if
128b00 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 72 65 73 75 6c 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 .(null.!==.$result).{.return.$re
128b20 73 75 6c 74 3b 0a 7d 0a 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f sult;.}..if.('\\'.===.DIRECTORY_
128b40 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 20 3d 20 66 61 SEPARATOR).{.return.$result.=.fa
128b60 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 20 3d 20 28 62 6f 6f 6c 29 20 lse;.}..return.$result.=.(bool).
128b80 40 70 72 6f 63 5f 6f 70 65 6e 28 27 65 63 68 6f 20 31 27 2c 20 61 72 72 61 79 28 61 72 72 61 79 @proc_open('echo.1',.array(array
128ba0 28 27 70 74 79 27 29 2c 20 61 72 72 61 79 28 27 70 74 79 27 29 2c 20 61 72 72 61 79 28 27 70 74 ('pty'),.array('pty'),.array('pt
128bc0 79 27 29 29 2c 20 24 70 69 70 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 y')),.$pipes);.}.......private.f
128be0 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 6f 72 73 28 29 0a 7b 0a 69 66 20 28 27 unction.getDescriptors().{.if.('
128c00 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 24 \\'.===.DIRECTORY_SEPARATOR).{.$
128c20 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 69 70 65 73 20 3d 20 57 69 6e 64 6f 77 73 50 69 70 65 this->processPipes.=.WindowsPipe
128c40 73 3a 3a 63 72 65 61 74 65 28 24 74 68 69 73 2c 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 29 3b 0a s::create($this,.$this->input);.
128c60 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 69 70 65 73 20 3d 20 55 }.else.{.$this->processPipes.=.U
128c80 6e 69 78 50 69 70 65 73 3a 3a 63 72 65 61 74 65 28 24 74 68 69 73 2c 20 24 74 68 69 73 2d 3e 69 nixPipes::create($this,.$this->i
128ca0 6e 70 75 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 nput);.}..return.$this->processP
128cc0 69 70 65 73 2d 3e 67 65 74 44 65 73 63 72 69 70 74 6f 72 73 28 24 74 68 69 73 2d 3e 6f 75 74 70 ipes->getDescriptors($this->outp
128ce0 75 74 44 69 73 61 62 6c 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 utDisabled);.}............protec
128d00 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 61 6c 6c 62 61 63 6b 28 24 63 61 6c 6c ted.function.buildCallback($call
128d20 62 61 63 6b 29 0a 7b 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a 24 6f 75 74 20 3d 20 73 65 back).{.$that.=.$this;.$out.=.se
128d40 6c 66 3a 3a 4f 55 54 3b 0a 24 63 61 6c 6c 62 61 63 6b 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 lf::OUT;.$callback.=.function.($
128d60 74 79 70 65 2c 20 24 64 61 74 61 29 20 75 73 65 20 28 24 74 68 61 74 2c 20 24 63 61 6c 6c 62 61 type,.$data).use.($that,.$callba
128d80 63 6b 2c 20 24 6f 75 74 29 20 7b 0a 69 66 20 28 24 6f 75 74 20 3d 3d 20 24 74 79 70 65 29 20 7b ck,.$out).{.if.($out.==.$type).{
128da0 0a 24 74 68 61 74 2d 3e 61 64 64 4f 75 74 70 75 74 28 24 64 61 74 61 29 3b 0a 7d 20 65 6c 73 65 .$that->addOutput($data);.}.else
128dc0 20 7b 0a 24 74 68 61 74 2d 3e 61 64 64 45 72 72 6f 72 4f 75 74 70 75 74 28 24 64 61 74 61 29 3b .{.$that->addErrorOutput($data);
128de0 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 61 6c 6c 62 61 63 6b 29 20 7b 0a 63 61 .}..if.(null.!==.$callback).{.ca
128e00 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 61 6c 6c 62 61 63 6b 2c 20 24 74 79 70 65 2c 20 24 ll_user_func($callback,.$type,.$
128e20 64 61 74 61 29 3b 0a 7d 0a 7d 3b 0a 0a 72 65 74 75 72 6e 20 24 63 61 6c 6c 62 61 63 6b 3b 0a 7d data);.}.};..return.$callback;.}
128e40 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 .......protected.function.update
128e60 53 74 61 74 75 73 28 24 62 6c 6f 63 6b 69 6e 67 29 0a 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 53 54 Status($blocking).{.if.(self::ST
128e80 41 54 55 53 5f 53 54 41 52 54 45 44 20 21 3d 3d 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 29 20 ATUS_STARTED.!==.$this->status).
128ea0 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 {.return;.}..$this->processInfor
128ec0 6d 61 74 69 6f 6e 20 3d 20 70 72 6f 63 5f 67 65 74 5f 73 74 61 74 75 73 28 24 74 68 69 73 2d 3e mation.=.proc_get_status($this->
128ee0 70 72 6f 63 65 73 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 69 70 65 73 28 24 62 6c 6f process);..$this->readPipes($blo
128f00 63 6b 69 6e 67 2c 20 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 cking,.'\\'.===.DIRECTORY_SEPARA
128f20 54 4f 52 20 3f 20 21 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e TOR.?.!$this->processInformation
128f40 5b 27 72 75 6e 6e 69 6e 67 27 5d 20 3a 20 74 72 75 65 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d ['running'].:.true);..if.($this-
128f60 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 20 26 26 20 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 >fallbackStatus.&&.$this->enhanc
128f80 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 26 26 20 24 74 68 69 73 2d eSigchildCompatibility.&&.$this-
128fa0 3e 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 >isSigchildEnabled()).{.$this->p
128fc0 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 rocessInformation.=.$this->fallb
128fe0 61 63 6b 53 74 61 74 75 73 20 2b 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d ackStatus.+.$this->processInform
129000 61 74 69 6f 6e 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 ation;.}..if.(!$this->processInf
129020 6f 72 6d 61 74 69 6f 6e 5b 27 72 75 6e 6e 69 6e 67 27 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6c ormation['running']).{.$this->cl
129040 6f 73 65 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 ose();.}.}.......protected.funct
129060 69 6f 6e 20 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 0a 7b 0a 69 66 20 28 6e 75 ion.isSigchildEnabled().{.if.(nu
129080 6c 6c 20 21 3d 3d 20 73 65 6c 66 3a 3a 24 73 69 67 63 68 69 6c 64 29 20 7b 0a 72 65 74 75 72 6e ll.!==.self::$sigchild).{.return
1290a0 20 73 65 6c 66 3a 3a 24 73 69 67 63 68 69 6c 64 3b 0a 7d 0a 0a 69 66 20 28 21 66 75 6e 63 74 69 .self::$sigchild;.}..if.(!functi
1290c0 6f 6e 5f 65 78 69 73 74 73 28 27 70 68 70 69 6e 66 6f 27 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 on_exists('phpinfo').||.defined(
1290e0 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 'HHVM_VERSION')).{.return.self::
129100 24 73 69 67 63 68 69 6c 64 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 6f 62 5f 73 74 61 72 74 28 29 $sigchild.=.false;.}..ob_start()
129120 3b 0a 70 68 70 69 6e 66 6f 28 49 4e 46 4f 5f 47 45 4e 45 52 41 4c 29 3b 0a 0a 72 65 74 75 72 6e ;.phpinfo(INFO_GENERAL);..return
129140 20 73 65 6c 66 3a 3a 24 73 69 67 63 68 69 6c 64 20 3d 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 .self::$sigchild.=.false.!==.str
129160 70 6f 73 28 6f 62 5f 67 65 74 5f 63 6c 65 61 6e 28 29 2c 20 27 2d 2d 65 6e 61 62 6c 65 2d 73 69 pos(ob_get_clean(),.'--enable-si
129180 67 63 68 69 6c 64 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 gchild');.}...........private.fu
1291a0 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 54 69 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 nction.validateTimeout($timeout)
1291c0 0a 7b 0a 24 74 69 6d 65 6f 75 74 20 3d 20 28 66 6c 6f 61 74 29 20 24 74 69 6d 65 6f 75 74 3b 0a .{.$timeout.=.(float).$timeout;.
1291e0 0a 69 66 20 28 30 2e 30 20 3d 3d 3d 20 24 74 69 6d 65 6f 75 74 29 20 7b 0a 24 74 69 6d 65 6f 75 .if.(0.0.===.$timeout).{.$timeou
129200 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 69 6d 65 6f 75 74 20 3c 20 30 t.=.null;.}.elseif.($timeout.<.0
129220 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 ).{.throw.new.InvalidArgumentExc
129240 65 70 74 69 6f 6e 28 27 54 68 65 20 74 69 6d 65 6f 75 74 20 76 61 6c 75 65 20 6d 75 73 74 20 62 eption('The.timeout.value.must.b
129260 65 20 61 20 76 61 6c 69 64 20 70 6f 73 69 74 69 76 65 20 69 6e 74 65 67 65 72 20 6f 72 20 66 6c e.a.valid.positive.integer.or.fl
129280 6f 61 74 20 6e 75 6d 62 65 72 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 69 6d 65 6f 75 oat.number.');.}..return.$timeou
1292a0 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 t;.}........private.function.rea
1292c0 64 50 69 70 65 73 28 24 62 6c 6f 63 6b 69 6e 67 2c 20 24 63 6c 6f 73 65 29 0a 7b 0a 24 72 65 73 dPipes($blocking,.$close).{.$res
1292e0 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 69 70 65 73 2d 3e 72 65 61 64 41 ult.=.$this->processPipes->readA
129300 6e 64 57 72 69 74 65 28 24 62 6c 6f 63 6b 69 6e 67 2c 20 24 63 6c 6f 73 65 29 3b 0a 0a 24 63 61 ndWrite($blocking,.$close);..$ca
129320 6c 6c 62 61 63 6b 20 3d 20 24 74 68 69 73 2d 3e 63 61 6c 6c 62 61 63 6b 3b 0a 66 6f 72 65 61 63 llback.=.$this->callback;.foreac
129340 68 20 28 24 72 65 73 75 6c 74 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 64 61 74 61 29 20 7b 0a h.($result.as.$type.=>.$data).{.
129360 69 66 20 28 33 20 21 3d 3d 20 24 74 79 70 65 29 20 7b 0a 24 63 61 6c 6c 62 61 63 6b 28 24 74 79 if.(3.!==.$type).{.$callback($ty
129380 70 65 20 3d 3d 3d 20 73 65 6c 66 3a 3a 53 54 44 4f 55 54 20 3f 20 73 65 6c 66 3a 3a 4f 55 54 20 pe.===.self::STDOUT.?.self::OUT.
1293a0 3a 20 73 65 6c 66 3a 3a 45 52 52 2c 20 24 64 61 74 61 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 :.self::ERR,.$data);.}.elseif.(!
1293c0 69 73 73 65 74 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 5b 27 73 69 67 isset($this->fallbackStatus['sig
1293e0 6e 61 6c 65 64 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 naled'])).{.$this->fallbackStatu
129400 73 5b 27 65 78 69 74 63 6f 64 65 27 5d 20 3d 20 28 69 6e 74 29 20 24 64 61 74 61 3b 0a 7d 0a 7d s['exitcode'].=.(int).$data;.}.}
129420 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6c 6f 73 65 28 .}.......private.function.close(
129440 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 69 70 65 73 2d 3e 63 6c 6f 73 65 28 29 ).{.$this->processPipes->close()
129460 3b 0a 69 66 20 28 69 73 5f 72 65 73 6f 75 72 63 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 ;.if.(is_resource($this->process
129480 29 29 20 7b 0a 70 72 6f 63 5f 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b )).{.proc_close($this->process);
1294a0 0a 7d 0a 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 .}.$this->exitcode.=.$this->proc
1294c0 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 65 78 69 74 63 6f 64 65 27 5d 3b 0a 24 74 68 69 essInformation['exitcode'];.$thi
1294e0 73 2d 3e 73 74 61 74 75 73 20 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 54 45 52 4d 49 4e 41 s->status.=.self::STATUS_TERMINA
129500 54 45 44 3b 0a 0a 69 66 20 28 2d 31 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 TED;..if.(-1.===.$this->exitcode
129520 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f ).{.if.($this->processInformatio
129540 6e 5b 27 73 69 67 6e 61 6c 65 64 27 5d 20 26 26 20 30 20 3c 20 24 74 68 69 73 2d 3e 70 72 6f 63 n['signaled'].&&.0.<.$this->proc
129560 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 29 20 7b 0a 0a 20 24 essInformation['termsig']).{...$
129580 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 20 3d 20 31 32 38 20 2b 20 24 74 68 69 73 2d 3e 70 72 this->exitcode.=.128.+.$this->pr
1295a0 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 3b 0a 7d 20 65 ocessInformation['termsig'];.}.e
1295c0 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 65 53 69 67 63 68 69 6c 64 43 6f 6d lseif.($this->enhanceSigchildCom
1295e0 70 61 74 69 62 69 6c 69 74 79 20 26 26 20 24 74 68 69 73 2d 3e 69 73 53 69 67 63 68 69 6c 64 45 patibility.&&.$this->isSigchildE
129600 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d nabled()).{.$this->processInform
129620 61 74 69 6f 6e 5b 27 73 69 67 6e 61 6c 65 64 27 5d 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d ation['signaled'].=.true;.$this-
129640 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 20 3d >processInformation['termsig'].=
129660 20 2d 31 3b 0a 7d 0a 7d 0a 0a 0a 20 0a 20 0a 20 24 74 68 69 73 2d 3e 63 61 6c 6c 62 61 63 6b 20 .-1;.}.}........$this->callback.
129680 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 3b =.null;..return.$this->exitcode;
1296a0 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 50 72 6f .}.....private.function.resetPro
1296c0 63 65 73 73 44 61 74 61 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 74 69 6d 65 20 3d 20 cessData().{.$this->starttime.=.
1296e0 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 3b 0a 24 74 null;.$this->callback.=.null;.$t
129700 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 66 61 6c his->exitcode.=.null;.$this->fal
129720 6c 62 61 63 6b 53 74 61 74 75 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 lbackStatus.=.array();.$this->pr
129740 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e ocessInformation.=.null;.$this->
129760 73 74 64 6f 75 74 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 20 3d 20 6e stdout.=.null;.$this->stderr.=.n
129780 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 ull;.$this->process.=.null;.$thi
1297a0 73 2d 3e 6c 61 74 65 73 74 53 69 67 6e 61 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 73 s->latestSignal.=.null;.$this->s
1297c0 74 61 74 75 73 20 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 52 45 41 44 59 3b 0a 24 74 68 69 tatus.=.self::STATUS_READY;.$thi
1297e0 73 2d 3e 69 6e 63 72 65 6d 65 6e 74 61 6c 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a s->incrementalOutputOffset.=.0;.
129800 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 6e 74 61 6c 45 72 72 6f 72 4f 75 74 70 75 74 4f 66 66 $this->incrementalErrorOutputOff
129820 73 65 74 20 3d 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 set.=.0;.}..............private.
129840 66 75 6e 63 74 69 6f 6e 20 64 6f 53 69 67 6e 61 6c 28 24 73 69 67 6e 61 6c 2c 20 24 74 68 72 6f function.doSignal($signal,.$thro
129860 77 45 78 63 65 70 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 70 69 64 20 wException).{.if.(null.===.$pid.
129880 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 69 64 28 29 29 20 7b 0a 69 66 20 28 24 74 68 72 6f 77 45 =.$this->getPid()).{.if.($throwE
1298a0 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 xception).{.throw.new.LogicExcep
1298c0 74 69 6f 6e 28 27 43 61 6e 20 6e 6f 74 20 73 65 6e 64 20 73 69 67 6e 61 6c 20 6f 6e 20 61 20 6e tion('Can.not.send.signal.on.a.n
1298e0 6f 6e 20 72 75 6e 6e 69 6e 67 20 70 72 6f 63 65 73 73 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e on.running.process.');.}..return
129900 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 .false;.}..if.('\\'.===.DIRECTOR
129920 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 65 78 65 63 28 73 70 72 69 6e 74 66 28 27 74 61 73 Y_SEPARATOR).{.exec(sprintf('tas
129940 6b 6b 69 6c 6c 20 2f 46 20 2f 54 20 2f 50 49 44 20 25 64 20 32 3e 26 31 27 2c 20 24 70 69 64 29 kkill./F./T./PID.%d.2>&1',.$pid)
129960 2c 20 24 6f 75 74 70 75 74 2c 20 24 65 78 69 74 43 6f 64 65 29 3b 0a 69 66 20 28 24 65 78 69 74 ,.$output,.$exitCode);.if.($exit
129980 43 6f 64 65 20 26 26 20 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 69 66 Code.&&.$this->isRunning()).{.if
1299a0 20 28 24 74 68 72 6f 77 45 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 .($throwException).{.throw.new.R
1299c0 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 61 62 6c 65 20 untimeException(sprintf('Unable.
1299e0 74 6f 20 6b 69 6c 6c 20 74 68 65 20 70 72 6f 63 65 73 73 20 28 25 73 29 2e 27 2c 20 69 6d 70 6c to.kill.the.process.(%s).',.impl
129a00 6f 64 65 28 27 20 27 2c 20 24 6f 75 74 70 75 74 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 ode('.',.$output)));.}..return.f
129a20 61 6c 73 65 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 65 6e 68 alse;.}.}.else.{.if.(!$this->enh
129a40 61 6e 63 65 53 69 67 63 68 69 6c 64 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 7c 7c 20 21 24 74 anceSigchildCompatibility.||.!$t
129a60 68 69 73 2d 3e 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 6f 6b 20 his->isSigchildEnabled()).{.$ok.
129a80 3d 20 40 70 72 6f 63 5f 74 65 72 6d 69 6e 61 74 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 =.@proc_terminate($this->process
129aa0 2c 20 24 73 69 67 6e 61 6c 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 ,.$signal);.}.elseif.(function_e
129ac0 78 69 73 74 73 28 27 70 6f 73 69 78 5f 6b 69 6c 6c 27 29 29 20 7b 0a 24 6f 6b 20 3d 20 40 70 6f xists('posix_kill')).{.$ok.=.@po
129ae0 73 69 78 5f 6b 69 6c 6c 28 24 70 69 64 2c 20 24 73 69 67 6e 61 6c 29 3b 0a 7d 20 65 6c 73 65 69 six_kill($pid,.$signal);.}.elsei
129b00 66 20 28 24 6f 6b 20 3d 20 70 72 6f 63 5f 6f 70 65 6e 28 73 70 72 69 6e 74 66 28 27 6b 69 6c 6c f.($ok.=.proc_open(sprintf('kill
129b20 20 2d 25 64 20 25 64 27 2c 20 24 73 69 67 6e 61 6c 2c 20 24 70 69 64 29 2c 20 61 72 72 61 79 28 .-%d.%d',.$signal,.$pid),.array(
129b40 32 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 29 2c 20 24 70 69 70 65 73 2.=>.array('pipe',.'w')),.$pipes
129b60 29 29 20 7b 0a 24 6f 6b 20 3d 20 66 61 6c 73 65 20 3d 3d 3d 20 66 67 65 74 73 28 24 70 69 70 65 )).{.$ok.=.false.===.fgets($pipe
129b80 73 5b 32 5d 29 3b 0a 7d 0a 69 66 20 28 21 24 6f 6b 29 20 7b 0a 69 66 20 28 24 74 68 72 6f 77 45 s[2]);.}.if.(!$ok).{.if.($throwE
129ba0 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 xception).{.throw.new.RuntimeExc
129bc0 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 45 72 72 6f 72 20 77 68 69 6c 65 20 73 65 6e 64 eption(sprintf('Error.while.send
129be0 69 6e 67 20 73 69 67 6e 61 6c 20 60 25 73 60 2e 27 2c 20 24 73 69 67 6e 61 6c 29 29 3b 0a 7d 0a ing.signal.`%s`.',.$signal));.}.
129c00 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6c 61 74 65 73 .return.false;.}.}..$this->lates
129c20 74 53 69 67 6e 61 6c 20 3d 20 28 69 6e 74 29 20 24 73 69 67 6e 61 6c 3b 0a 24 74 68 69 73 2d 3e tSignal.=.(int).$signal;.$this->
129c40 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 5b 27 73 69 67 6e 61 6c 65 64 27 5d 20 3d 20 74 72 75 fallbackStatus['signaled'].=.tru
129c60 65 3b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 5b 27 65 78 69 74 63 6f e;.$this->fallbackStatus['exitco
129c80 64 65 27 5d 20 3d 20 2d 31 3b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 de'].=.-1;.$this->fallbackStatus
129ca0 5b 27 74 65 72 6d 73 69 67 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6c 61 74 65 73 74 53 69 67 6e 61 ['termsig'].=.$this->latestSigna
129cc0 6c 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 l;..return.true;.}.........priva
129ce0 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 73 53 74 61 72 te.function.requireProcessIsStar
129d00 74 65 64 28 24 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d ted($functionName).{.if.(!$this-
129d20 3e 69 73 53 74 61 72 74 65 64 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 >isStarted()).{.throw.new.LogicE
129d40 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 50 72 6f 63 65 73 73 20 6d 75 73 74 20 62 xception(sprintf('Process.must.b
129d60 65 20 73 74 61 72 74 65 64 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 25 73 2e 27 2c 20 24 e.started.before.calling.%s.',.$
129d80 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 functionName));.}.}.........priv
129da0 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 69 72 65 50 72 6f 63 65 73 73 49 73 54 65 72 ate.function.requireProcessIsTer
129dc0 6d 69 6e 61 74 65 64 28 24 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 minated($functionName).{.if.(!$t
129de0 68 69 73 2d 3e 69 73 54 65 72 6d 69 6e 61 74 65 64 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 his->isTerminated()).{.throw.new
129e00 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 50 72 6f 63 65 73 73 .LogicException(sprintf('Process
129e20 20 6d 75 73 74 20 62 65 20 74 65 72 6d 69 6e 61 74 65 64 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 .must.be.terminated.before.calli
129e40 6e 67 20 25 73 2e 27 2c 20 24 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a ng.%s.',.$functionName));.}.}.}.
129e60 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e <?php...........namespace.Symfon
129e80 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e y\Component\Process;..use.Symfon
129ea0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e y\Component\Process\Exception\In
129ec0 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 validArgumentException;.use.Symf
129ee0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 5c ony\Component\Process\Exception\
129f00 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 LogicException;.......class.Proc
129f20 65 73 73 42 75 69 6c 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 72 67 75 6d 65 6e 74 73 3b essBuilder.{.private.$arguments;
129f40 0a 70 72 69 76 61 74 65 20 24 63 77 64 3b 0a 70 72 69 76 61 74 65 20 24 65 6e 76 20 3d 20 61 72 .private.$cwd;.private.$env.=.ar
129f60 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 ray();.private.$input;.private.$
129f80 74 69 6d 65 6f 75 74 20 3d 20 36 30 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 20 3d timeout.=.60;.private.$options.=
129fa0 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 68 65 72 69 74 45 6e 76 20 3d 20 .array();.private.$inheritEnv.=.
129fc0 74 72 75 65 3b 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 69 78 20 3d 20 61 72 72 61 79 28 29 3b true;.private.$prefix.=.array();
129fe0 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 .private.$outputDisabled.=.false
12a000 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 ;.......public.function.__constr
12a020 75 63 74 28 61 72 72 61 79 20 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 29 0a uct(array.$arguments.=.array()).
12a040 7b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 3d 20 24 61 72 67 75 6d 65 6e 74 73 3b {.$this->arguments.=.$arguments;
12a060 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f .}.........public.static.functio
12a080 6e 20 63 72 65 61 74 65 28 61 72 72 61 79 20 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 n.create(array.$arguments.=.arra
12a0a0 79 28 29 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 74 61 74 69 63 28 24 61 72 67 75 6d 65 y()).{.return.new.static($argume
12a0c0 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 nts);.}.........public.function.
12a0e0 61 64 64 28 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 add($argument).{.$this->argument
12a100 73 5b 5d 20 3d 20 24 61 72 67 75 6d 65 6e 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a s[].=.$argument;..return.$this;.
12a120 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 }...........public.function.setP
12a140 72 65 66 69 78 28 24 70 72 65 66 69 78 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 20 3d refix($prefix).{.$this->prefix.=
12a160 20 69 73 5f 61 72 72 61 79 28 24 70 72 65 66 69 78 29 20 3f 20 24 70 72 65 66 69 78 20 3a 20 61 .is_array($prefix).?.$prefix.:.a
12a180 72 72 61 79 28 24 70 72 65 66 69 78 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a rray($prefix);..return.$this;.}.
12a1a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 72 ...........public.function.setAr
12a1c0 67 75 6d 65 6e 74 73 28 61 72 72 61 79 20 24 61 72 67 75 6d 65 6e 74 73 29 0a 7b 0a 24 74 68 69 guments(array.$arguments).{.$thi
12a1e0 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 3d 20 24 61 72 67 75 6d 65 6e 74 73 3b 0a 0a 72 65 74 75 s->arguments.=.$arguments;..retu
12a200 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 rn.$this;.}.........public.funct
12a220 69 6f 6e 20 73 65 74 57 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72 79 28 24 63 77 64 29 0a 7b 0a ion.setWorkingDirectory($cwd).{.
12a240 24 74 68 69 73 2d 3e 63 77 64 20 3d 20 24 63 77 64 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 $this->cwd.=.$cwd;..return.$this
12a260 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 68 65 ;.}.........public.function.inhe
12a280 72 69 74 45 6e 76 69 72 6f 6e 6d 65 6e 74 56 61 72 69 61 62 6c 65 73 28 24 69 6e 68 65 72 69 74 ritEnvironmentVariables($inherit
12a2a0 45 6e 76 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 68 65 72 69 74 45 6e 76 20 Env.=.true).{.$this->inheritEnv.
12a2c0 3d 20 24 69 6e 68 65 72 69 74 45 6e 76 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a =.$inheritEnv;..return.$this;.}.
12a2e0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 ............public.function.setE
12a300 6e 76 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e 76 5b 24 nv($name,.$value).{.$this->env[$
12a320 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d name].=.$value;..return.$this;.}
12a340 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 .............public.function.add
12a360 45 6e 76 69 72 6f 6e 6d 65 6e 74 56 61 72 69 61 62 6c 65 73 28 61 72 72 61 79 20 24 76 61 72 69 EnvironmentVariables(array.$vari
12a380 61 62 6c 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e 76 20 3d 20 61 72 72 61 79 5f 72 65 70 6c ables).{.$this->env.=.array_repl
12a3a0 61 63 65 28 24 74 68 69 73 2d 3e 65 6e 76 2c 20 24 76 61 72 69 61 62 6c 65 73 29 3b 0a 0a 72 65 ace($this->env,.$variables);..re
12a3c0 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 turn.$this;.}.............public
12a3e0 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 70 75 74 28 24 69 6e 70 75 74 29 0a 7b 0a 24 74 68 .function.setInput($input).{.$th
12a400 69 73 2d 3e 69 6e 70 75 74 20 3d 20 50 72 6f 63 65 73 73 55 74 69 6c 73 3a 3a 76 61 6c 69 64 61 is->input.=.ProcessUtils::valida
12a420 74 65 49 6e 70 75 74 28 73 70 72 69 6e 74 66 28 27 25 73 3a 3a 25 73 27 2c 20 5f 5f 43 4c 41 53 teInput(sprintf('%s::%s',.__CLAS
12a440 53 5f 5f 2c 20 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 2c 20 24 69 6e 70 75 74 29 3b 0a 0a 72 65 S__,.__FUNCTION__),.$input);..re
12a460 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 turn.$this;.}.............public
12a480 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 69 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 0a 7b .function.setTimeout($timeout).{
12a4a0 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 69 6d 65 6f 75 74 29 20 7b 0a 24 74 68 69 73 2d .if.(null.===.$timeout).{.$this-
12a4c0 3e 74 69 6d 65 6f 75 74 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a >timeout.=.null;..return.$this;.
12a4e0 7d 0a 0a 24 74 69 6d 65 6f 75 74 20 3d 20 28 66 6c 6f 61 74 29 20 24 74 69 6d 65 6f 75 74 3b 0a }..$timeout.=.(float).$timeout;.
12a500 0a 69 66 20 28 24 74 69 6d 65 6f 75 74 20 3c 20 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 .if.($timeout.<.0).{.throw.new.I
12a520 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 74 69 6d nvalidArgumentException('The.tim
12a540 65 6f 75 74 20 76 61 6c 75 65 20 6d 75 73 74 20 62 65 20 61 20 76 61 6c 69 64 20 70 6f 73 69 74 eout.value.must.be.a.valid.posit
12a560 69 76 65 20 69 6e 74 65 67 65 72 20 6f 72 20 66 6c 6f 61 74 20 6e 75 6d 62 65 72 2e 27 29 3b 0a ive.integer.or.float.number.');.
12a580 7d 0a 0a 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 20 3d 20 24 74 69 6d 65 6f 75 74 3b 0a 0a 72 }..$this->timeout.=.$timeout;..r
12a5a0 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 eturn.$this;.}..........public.f
12a5c0 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 unction.setOption($name,.$value)
12a5e0 0a 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 .{.$this->options[$name].=.$valu
12a600 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 e;..return.$this;.}.......public
12a620 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 4f 75 74 70 75 74 28 29 0a 7b 0a 24 74 68 69 .function.disableOutput().{.$thi
12a640 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0a 0a 72 65 74 75 72 s->outputDisabled.=.true;..retur
12a660 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e n.$this;.}.......public.function
12a680 20 65 6e 61 62 6c 65 4f 75 74 70 75 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 44 .enableOutput().{.$this->outputD
12a6a0 69 73 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a isabled.=.false;..return.$this;.
12a6c0 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f }.........public.function.getPro
12a6e0 63 65 73 73 28 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e cess().{.if.(0.===.count($this->
12a700 70 72 65 66 69 78 29 20 26 26 20 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 61 72 prefix).&&.0.===.count($this->ar
12a720 67 75 6d 65 6e 74 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 guments)).{.throw.new.LogicExcep
12a740 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 61 64 64 28 29 20 63 6f 6d 6d 61 6e 64 20 61 72 67 tion('You.must.add().command.arg
12a760 75 6d 65 6e 74 73 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 67 65 74 50 72 6f 63 65 73 73 uments.before.calling.getProcess
12a780 28 29 2e 27 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 6f 70 74 69 ().');.}..$options.=.$this->opti
12a7a0 6f 6e 73 3b 0a 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 ons;..$arguments.=.array_merge($
12a7c0 74 68 69 73 2d 3e 70 72 65 66 69 78 2c 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 3b this->prefix,.$this->arguments);
12a7e0 0a 24 73 63 72 69 70 74 20 3d 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 61 72 72 61 79 5f 6d 61 .$script.=.implode('.',.array_ma
12a800 70 28 61 72 72 61 79 28 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 5c 50 72 6f 63 65 73 73 p(array(__NAMESPACE__.'\\Process
12a820 55 74 69 6c 73 27 2c 20 27 65 73 63 61 70 65 41 72 67 75 6d 65 6e 74 27 29 2c 20 24 61 72 67 75 Utils',.'escapeArgument'),.$argu
12a840 6d 65 6e 74 73 29 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6e 68 65 72 69 74 45 6e 76 29 ments));..if.($this->inheritEnv)
12a860 20 7b 0a 0a 20 24 65 6e 76 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 28 24 5f 45 4e 56 2c .{...$env.=.array_replace($_ENV,
12a880 20 24 5f 53 45 52 56 45 52 2c 20 24 74 68 69 73 2d 3e 65 6e 76 29 3b 0a 7d 20 65 6c 73 65 20 7b .$_SERVER,.$this->env);.}.else.{
12a8a0 0a 24 65 6e 76 20 3d 20 24 74 68 69 73 2d 3e 65 6e 76 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 20 .$env.=.$this->env;.}..$process.
12a8c0 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 28 24 73 63 72 69 70 74 2c 20 24 74 68 69 73 2d 3e 63 77 =.new.Process($script,.$this->cw
12a8e0 64 2c 20 24 65 6e 76 2c 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 74 68 69 73 2d 3e 74 69 d,.$env,.$this->input,.$this->ti
12a900 6d 65 6f 75 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 75 meout,.$options);..if.($this->ou
12a920 74 70 75 74 44 69 73 61 62 6c 65 64 29 20 7b 0a 24 70 72 6f 63 65 73 73 2d 3e 64 69 73 61 62 6c tputDisabled).{.$process->disabl
12a940 65 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 63 65 73 73 3b 0a 7d eOutput();.}..return.$process;.}
12a960 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d .}.<?php...........namespace.Sym
12a980 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 3b 0a 0a 75 73 65 20 53 79 6d fony\Component\Process;..use.Sym
12a9a0 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e fony\Component\Process\Exception
12a9c0 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a \InvalidArgumentException;......
12a9e0 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 55 74 69 6c 73 0a 7b 0a 0a 0a 0a 70 72 69 76 61 ...class.ProcessUtils.{....priva
12aa00 74 65 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 7d 0a 0a 0a te.function.__construct().{.}...
12aa20 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 73 63 ......public.static.function.esc
12aa40 61 70 65 41 72 67 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 0a 20 0a 20 0a 20 0a apeArgument($argument).{........
12aa60 20 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f .if.('\\'.===.DIRECTORY_SEPARATO
12aa80 52 29 20 7b 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 72 65 74 R).{.if.(''.===.$argument).{.ret
12aaa0 75 72 6e 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 61 72 67 75 6d 65 6e 74 29 3b 0a 7d urn.escapeshellarg($argument);.}
12aac0 0a 0a 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 20 3d 20 27 27 3b 0a 24 71 75 6f 74 65 20 ..$escapedArgument.=.'';.$quote.
12aae0 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 70 72 65 67 5f 73 70 6c 69 74 28 27 2f 28 =.false;.foreach.(preg_split('/(
12ab00 22 29 2f 27 2c 20 24 61 72 67 75 6d 65 6e 74 2c 20 2d 31 2c 20 50 52 45 47 5f 53 50 4c 49 54 5f ")/',.$argument,.-1,.PREG_SPLIT_
12ab20 4e 4f 5f 45 4d 50 54 59 20 7c 20 50 52 45 47 5f 53 50 4c 49 54 5f 44 45 4c 49 4d 5f 43 41 50 54 NO_EMPTY.|.PREG_SPLIT_DELIM_CAPT
12ab40 55 52 45 29 20 61 73 20 24 70 61 72 74 29 20 7b 0a 69 66 20 28 27 22 27 20 3d 3d 3d 20 24 70 61 URE).as.$part).{.if.('"'.===.$pa
12ab60 72 74 29 20 7b 0a 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 20 2e 3d 20 27 5c 5c 22 27 3b rt).{.$escapedArgument..=.'\\"';
12ab80 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 69 73 53 75 72 72 6f 75 6e 64 65 64 42 79 28 .}.elseif.(self::isSurroundedBy(
12aba0 24 70 61 72 74 2c 20 27 25 27 29 29 20 7b 0a 0a 20 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e $part,.'%')).{...$escapedArgumen
12abc0 74 20 2e 3d 20 27 5e 25 22 27 2e 73 75 62 73 74 72 28 24 70 61 72 74 2c 20 31 2c 20 2d 31 29 2e t..=.'^%"'.substr($part,.1,.-1).
12abe0 27 22 5e 25 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 73 '"^%';.}.else.{...if.('\\'.===.s
12ac00 75 62 73 74 72 28 24 70 61 72 74 2c 20 2d 31 29 29 20 7b 0a 24 70 61 72 74 20 2e 3d 20 27 5c 5c ubstr($part,.-1)).{.$part..=.'\\
12ac20 27 3b 0a 7d 0a 24 71 75 6f 74 65 20 3d 20 74 72 75 65 3b 0a 24 65 73 63 61 70 65 64 41 72 67 75 ';.}.$quote.=.true;.$escapedArgu
12ac40 6d 65 6e 74 20 2e 3d 20 24 70 61 72 74 3b 0a 7d 0a 7d 0a 69 66 20 28 24 71 75 6f 74 65 29 20 7b ment..=.$part;.}.}.if.($quote).{
12ac60 0a 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 20 3d 20 27 22 27 2e 24 65 73 63 61 70 65 64 .$escapedArgument.=.'"'.$escaped
12ac80 41 72 67 75 6d 65 6e 74 2e 27 22 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 73 63 61 70 65 64 Argument.'"';.}..return.$escaped
12aca0 41 72 67 75 6d 65 6e 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 65 73 63 61 70 65 73 68 65 6c 6c 61 Argument;.}..return.escapeshella
12acc0 72 67 28 24 61 72 67 75 6d 65 6e 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 rg($argument);.}..............pu
12ace0 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 49 6e 70 blic.static.function.validateInp
12ad00 75 74 28 24 63 61 6c 6c 65 72 2c 20 24 69 6e 70 75 74 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 ut($caller,.$input).{.if.(null.!
12ad20 3d 3d 20 24 69 6e 70 75 74 29 20 7b 0a 69 66 20 28 69 73 5f 72 65 73 6f 75 72 63 65 28 24 69 6e ==.$input).{.if.(is_resource($in
12ad40 70 75 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 6e 70 75 74 3b 0a 7d 0a 69 66 20 28 69 73 5f put)).{.return.$input;.}.if.(is_
12ad60 73 63 61 6c 61 72 28 24 69 6e 70 75 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 28 73 74 72 69 6e 67 scalar($input)).{.return.(string
12ad80 29 20 24 69 6e 70 75 74 3b 0a 7d 0a 0a 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 69 6e 70 ).$input;.}...if.(is_object($inp
12ada0 75 74 29 20 26 26 20 6d 65 74 68 6f 64 5f 65 78 69 73 74 73 28 24 69 6e 70 75 74 2c 20 27 5f 5f ut).&&.method_exists($input,.'__
12adc0 74 6f 53 74 72 69 6e 67 27 29 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 50 61 toString')).{.@trigger_error('Pa
12ade0 73 73 69 6e 67 20 61 6e 20 6f 62 6a 65 63 74 20 61 73 20 61 6e 20 69 6e 70 75 74 20 69 73 20 64 ssing.an.object.as.an.input.is.d
12ae00 65 70 72 65 63 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 35 20 61 6e 64 20 eprecated.since.version.2.5.and.
12ae20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 27 2c 20 45 5f 55 53 45 52 will.be.removed.in.3.0.',.E_USER
12ae40 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 72 65 74 75 72 6e 20 28 73 74 72 69 6e 67 29 20 24 _DEPRECATED);..return.(string).$
12ae60 69 6e 70 75 74 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d input;.}..throw.new.InvalidArgum
12ae80 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 25 73 20 6f 6e 6c 79 20 61 63 entException(sprintf('%s.only.ac
12aea0 63 65 70 74 73 20 73 74 72 69 6e 67 73 20 6f 72 20 73 74 72 65 61 6d 20 72 65 73 6f 75 72 63 65 cepts.strings.or.stream.resource
12aec0 73 2e 27 2c 20 24 63 61 6c 6c 65 72 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 70 75 74 s.',.$caller));.}..return.$input
12aee0 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 ;.}..private.static.function.isS
12af00 75 72 72 6f 75 6e 64 65 64 42 79 28 24 61 72 67 2c 20 24 63 68 61 72 29 0a 7b 0a 72 65 74 75 72 urroundedBy($arg,.$char).{.retur
12af20 6e 20 32 20 3c 20 73 74 72 6c 65 6e 28 24 61 72 67 29 20 26 26 20 24 63 68 61 72 20 3d 3d 3d 20 n.2.<.strlen($arg).&&.$char.===.
12af40 24 61 72 67 5b 30 5d 20 26 26 20 24 63 68 61 72 20 3d 3d 3d 20 24 61 72 67 5b 73 74 72 6c 65 6e $arg[0].&&.$char.===.$arg[strlen
12af60 28 24 61 72 67 29 20 2d 20 31 5d 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 ($arg).-.1];.}.}.Copyright.(c).2
12af80 30 31 31 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 0a 0a 50 65 72 6d 69 73 73 69 6f 6e 20 69 011.Jordi.Boggiano..Permission.i
12afa0 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 s.hereby.granted,.free.of.charge
12afc0 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 ,.to.any.person.obtaining.a.copy
12afe0 0a 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 .of.this.software.and.associated
12b000 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 .documentation.files.(the."Softw
12b020 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 are"),.to.deal.in.the.Software.w
12b040 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 ithout.restriction,.including.wi
12b060 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 74 6f 20 75 thout.limitation.the.rights.to.u
12b080 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 se,.copy,.modify,.merge,.publish
12b0a0 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 ,.distribute,.sublicense,.and/or
12b0c0 20 73 65 6c 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 61 6e .sell.copies.of.the.Software,.an
12b0e0 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 d.to.permit.persons.to.whom.the.
12b100 53 6f 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 0a 74 6f 20 64 6f 20 73 6f 2c 20 Software.is.furnished.to.do.so,.
12b120 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 subject.to.the.following.conditi
12b140 6f 6e 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 ons:..The.above.copyright.notice
12b160 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c .and.this.permission.notice.shal
12b180 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 20 6f 72 20 73 l.be.included.in.all.copies.or.s
12b1a0 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 ubstantial.portions.of.the.Softw
12b1c0 61 72 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 are...THE.SOFTWARE.IS.PROVIDED."
12b1e0 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 AS.IS",.WITHOUT.WARRANTY.OF.ANY.
12b200 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 KIND,.EXPRESS.OR.IMPLIED,.INCLUD
12b220 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 ING.BUT.NOT.LIMITED.TO.THE.WARRA
12b240 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 49 54 4e 45 53 NTIES.OF.MERCHANTABILITY,.FITNES
12b260 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e S.FOR.A.PARTICULAR.PURPOSE.AND.N
12b280 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c ONINFRINGEMENT..IN.NO.EVENT.SHAL
12b2a0 4c 20 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 L.THE.AUTHORS.OR.COPYRIGHT.HOLDE
12b2c0 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 RS.BE.LIABLE.FOR.ANY.CLAIM,.DAMA
12b2e0 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 GES.OR.OTHER.LIABILITY,.WHETHER.
12b300 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f IN.AN.ACTION.OF.CONTRACT,.TORT.O
12b320 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 4f 55 54 20 4f R.OTHERWISE,.ARISING.FROM,.OUT.O
12b340 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f 46 54 F.OR.IN.CONNECTION.WITH.THE.SOFT
12b360 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 WARE.OR.THE.USE.OR.OTHER.DEALING
12b380 53 20 49 4e 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a S.IN.THE.SOFTWARE..<?php........
12b3a0 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a 0a 63 6c 61 ...namespace.Seld\JsonLint;..cla
12b3c0 73 73 20 44 75 70 6c 69 63 61 74 65 4b 65 79 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 ss.DuplicateKeyException.extends
12b3e0 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .ParsingException.{.public.funct
12b400 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 2c 20 24 6b 65 79 2c 20 ion.__construct($message,.$key,.
12b420 61 72 72 61 79 20 24 64 65 74 61 69 6c 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 64 65 74 array.$details.=.array()).{.$det
12b440 61 69 6c 73 5b 27 6b 65 79 27 5d 20 3d 20 24 6b 65 79 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f ails['key'].=.$key;.parent::__co
12b460 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 2c 20 24 64 65 74 61 69 6c 73 29 3b 0a 7d 0a 0a nstruct($message,.$details);.}..
12b480 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4b 65 79 28 29 0a 7b 0a 72 65 74 75 72 public.function.getKey().{.retur
12b4a0 6e 20 24 74 68 69 73 2d 3e 64 65 74 61 69 6c 73 5b 27 6b 65 79 27 5d 3b 0a 7d 0a 7d 0a 3c 3f 70 n.$this->details['key'];.}.}.<?p
12b4c0 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 4a 73 6f 6e hp...........namespace.Seld\Json
12b4e0 4c 69 6e 74 3b 0a 75 73 65 20 73 74 64 43 6c 61 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a Lint;.use.stdClass;.............
12b500 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 50 61 72 73 65 72 0a 7b 0a 63 6f 6e 73 74 20 44 45 54 45 43 ..class.JsonParser.{.const.DETEC
12b520 54 5f 4b 45 59 5f 43 4f 4e 46 4c 49 43 54 53 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 41 4c 4c 4f 57 T_KEY_CONFLICTS.=.1;.const.ALLOW
12b540 5f 44 55 50 4c 49 43 41 54 45 5f 4b 45 59 53 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 50 41 52 53 45 _DUPLICATE_KEYS.=.2;.const.PARSE
12b560 5f 54 4f 5f 41 53 53 4f 43 20 3d 20 34 3b 0a 0a 70 72 69 76 61 74 65 20 24 6c 65 78 65 72 3b 0a _TO_ASSOC.=.4;..private.$lexer;.
12b580 0a 70 72 69 76 61 74 65 20 24 66 6c 61 67 73 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 63 6b 3b .private.$flags;.private.$stack;
12b5a0 0a 70 72 69 76 61 74 65 20 24 76 73 74 61 63 6b 3b 20 0a 20 70 72 69 76 61 74 65 20 24 6c 73 74 .private.$vstack;...private.$lst
12b5c0 61 63 6b 3b 20 0a 0a 70 72 69 76 61 74 65 20 24 73 79 6d 62 6f 6c 73 20 3d 20 61 72 72 61 79 28 ack;...private.$symbols.=.array(
12b5e0 0a 27 65 72 72 6f 72 27 20 3d 3e 20 32 2c 0a 27 4a 53 4f 4e 53 74 72 69 6e 67 27 20 3d 3e 20 33 .'error'.=>.2,.'JSONString'.=>.3
12b600 2c 0a 27 53 54 52 49 4e 47 27 20 3d 3e 20 34 2c 0a 27 4a 53 4f 4e 4e 75 6d 62 65 72 27 20 3d 3e ,.'STRING'.=>.4,.'JSONNumber'.=>
12b620 20 35 2c 0a 27 4e 55 4d 42 45 52 27 20 3d 3e 20 36 2c 0a 27 4a 53 4f 4e 4e 75 6c 6c 4c 69 74 65 .5,.'NUMBER'.=>.6,.'JSONNullLite
12b640 72 61 6c 27 20 3d 3e 20 37 2c 0a 27 4e 55 4c 4c 27 20 3d 3e 20 38 2c 0a 27 4a 53 4f 4e 42 6f 6f ral'.=>.7,.'NULL'.=>.8,.'JSONBoo
12b660 6c 65 61 6e 4c 69 74 65 72 61 6c 27 20 3d 3e 20 39 2c 0a 27 54 52 55 45 27 20 3d 3e 20 31 30 2c leanLiteral'.=>.9,.'TRUE'.=>.10,
12b680 0a 27 46 41 4c 53 45 27 20 3d 3e 20 31 31 2c 0a 27 4a 53 4f 4e 54 65 78 74 27 20 3d 3e 20 31 32 .'FALSE'.=>.11,.'JSONText'.=>.12
12b6a0 2c 0a 27 4a 53 4f 4e 56 61 6c 75 65 27 20 3d 3e 20 31 33 2c 0a 27 45 4f 46 27 20 3d 3e 20 31 34 ,.'JSONValue'.=>.13,.'EOF'.=>.14
12b6c0 2c 0a 27 4a 53 4f 4e 4f 62 6a 65 63 74 27 20 3d 3e 20 31 35 2c 0a 27 4a 53 4f 4e 41 72 72 61 79 ,.'JSONObject'.=>.15,.'JSONArray
12b6e0 27 20 3d 3e 20 31 36 2c 0a 27 7b 27 20 3d 3e 20 31 37 2c 0a 27 7d 27 20 3d 3e 20 31 38 2c 0a 27 '.=>.16,.'{'.=>.17,.'}'.=>.18,.'
12b700 4a 53 4f 4e 4d 65 6d 62 65 72 4c 69 73 74 27 20 3d 3e 20 31 39 2c 0a 27 4a 53 4f 4e 4d 65 6d 62 JSONMemberList'.=>.19,.'JSONMemb
12b720 65 72 27 20 3d 3e 20 32 30 2c 0a 27 3a 27 20 3d 3e 20 32 31 2c 0a 27 2c 27 20 3d 3e 20 32 32 2c er'.=>.20,.':'.=>.21,.','.=>.22,
12b740 0a 27 5b 27 20 3d 3e 20 32 33 2c 0a 27 5d 27 20 3d 3e 20 32 34 2c 0a 27 4a 53 4f 4e 45 6c 65 6d .'['.=>.23,.']'.=>.24,.'JSONElem
12b760 65 6e 74 4c 69 73 74 27 20 3d 3e 20 32 35 2c 0a 27 24 61 63 63 65 70 74 27 20 3d 3e 20 30 2c 0a entList'.=>.25,.'$accept'.=>.0,.
12b780 27 24 65 6e 64 27 20 3d 3e 20 31 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 74 65 72 6d 69 6e '$end'.=>.1,.);..private.$termin
12b7a0 61 6c 73 5f 20 3d 20 61 72 72 61 79 28 0a 32 20 3d 3e 20 22 65 72 72 6f 72 22 2c 0a 34 20 3d 3e als_.=.array(.2.=>."error",.4.=>
12b7c0 20 22 53 54 52 49 4e 47 22 2c 0a 36 20 3d 3e 20 22 4e 55 4d 42 45 52 22 2c 0a 38 20 3d 3e 20 22 ."STRING",.6.=>."NUMBER",.8.=>."
12b7e0 4e 55 4c 4c 22 2c 0a 31 30 20 3d 3e 20 22 54 52 55 45 22 2c 0a 31 31 20 3d 3e 20 22 46 41 4c 53 NULL",.10.=>."TRUE",.11.=>."FALS
12b800 45 22 2c 0a 31 34 20 3d 3e 20 22 45 4f 46 22 2c 0a 31 37 20 3d 3e 20 22 7b 22 2c 0a 31 38 20 3d E",.14.=>."EOF",.17.=>."{",.18.=
12b820 3e 20 22 7d 22 2c 0a 32 31 20 3d 3e 20 22 3a 22 2c 0a 32 32 20 3d 3e 20 22 2c 22 2c 0a 32 33 20 >."}",.21.=>.":",.22.=>.",",.23.
12b840 3d 3e 20 22 5b 22 2c 0a 32 34 20 3d 3e 20 22 5d 22 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 =>."[",.24.=>."]",.);..private.$
12b860 70 72 6f 64 75 63 74 69 6f 6e 73 5f 20 3d 20 61 72 72 61 79 28 0a 30 2c 0a 61 72 72 61 79 28 33 productions_.=.array(.0,.array(3
12b880 2c 20 31 29 2c 0a 61 72 72 61 79 28 35 2c 20 31 29 2c 0a 61 72 72 61 79 28 37 2c 20 31 29 2c 0a ,.1),.array(5,.1),.array(7,.1),.
12b8a0 61 72 72 61 79 28 39 2c 20 31 29 2c 0a 61 72 72 61 79 28 39 2c 20 31 29 2c 0a 61 72 72 61 79 28 array(9,.1),.array(9,.1),.array(
12b8c0 31 32 2c 20 32 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 12,.2),.array(13,.1),.array(13,.
12b8e0 31 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 1),.array(13,.1),.array(13,.1),.
12b900 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 61 72 72 61 array(13,.1),.array(13,.1),.arra
12b920 79 28 31 35 2c 20 32 29 2c 0a 61 72 72 61 79 28 31 35 2c 20 33 29 2c 0a 61 72 72 61 79 28 32 30 y(15,.2),.array(15,.3),.array(20
12b940 2c 20 33 29 2c 0a 61 72 72 61 79 28 31 39 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 39 2c 20 33 29 ,.3),.array(19,.1),.array(19,.3)
12b960 2c 0a 61 72 72 61 79 28 31 36 2c 20 32 29 2c 0a 61 72 72 61 79 28 31 36 2c 20 33 29 2c 0a 61 72 ,.array(16,.2),.array(16,.3),.ar
12b980 72 61 79 28 32 35 2c 20 31 29 2c 0a 61 72 72 61 79 28 32 35 2c 20 33 29 0a 29 3b 0a 0a 70 72 69 ray(25,.1),.array(25,.3).);..pri
12b9a0 76 61 74 65 20 24 74 61 62 6c 65 20 3d 20 61 72 72 61 79 28 61 72 72 61 79 28 33 20 3d 3e 20 35 vate.$table.=.array(array(3.=>.5
12b9c0 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 32 29 2c 20 35 20 3d 3e 20 36 2c 20 36 20 3d 3e ,.4.=>.array(1,12),.5.=>.6,.6.=>
12b9e0 20 61 72 72 61 79 28 31 2c 31 33 29 2c 20 37 20 3d 3e 20 33 2c 20 38 20 3d 3e 20 61 72 72 61 79 .array(1,13),.7.=>.3,.8.=>.array
12ba00 28 31 2c 39 29 2c 20 39 20 3d 3e 20 34 2c 20 31 30 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 30 29 (1,9),.9.=>.4,.10.=>.array(1,10)
12ba20 2c 20 31 31 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 31 29 2c 20 31 32 20 3d 3e 20 31 2c 20 31 33 ,.11.=>.array(1,11),.12.=>.1,.13
12ba40 20 3d 3e 20 32 2c 20 31 35 20 3d 3e 20 37 2c 20 31 36 20 3d 3e 20 38 2c 20 31 37 20 3d 3e 20 61 .=>.2,.15.=>.7,.16.=>.8,.17.=>.a
12ba60 72 72 61 79 28 31 2c 31 34 29 2c 20 32 33 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 35 29 29 2c 20 rray(1,14),.23.=>.array(1,15)),.
12ba80 61 72 72 61 79 28 20 31 20 3d 3e 20 61 72 72 61 79 28 33 29 29 2c 20 61 72 72 61 79 28 20 31 34 array(.1.=>.array(3)),.array(.14
12baa0 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 36 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 .=>.array(1,16)),.array(.14.=>.a
12bac0 72 72 61 79 28 32 2c 37 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 37 29 2c 20 32 32 20 rray(2,7),.18.=>.array(2,7),.22.
12bae0 3d 3e 20 61 72 72 61 79 28 32 2c 37 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 37 29 29 =>.array(2,7),.24.=>.array(2,7))
12bb00 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 38 29 2c 20 31 38 20 3d 3e ,.array(.14.=>.array(2,8),.18.=>
12bb20 20 61 72 72 61 79 28 32 2c 38 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 38 29 2c 20 32 .array(2,8),.22.=>.array(2,8),.2
12bb40 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 38 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 4.=>.array(2,8)),.array(.14.=>.a
12bb60 72 72 61 79 28 32 2c 39 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 39 29 2c 20 32 32 20 rray(2,9),.18.=>.array(2,9),.22.
12bb80 3d 3e 20 61 72 72 61 79 28 32 2c 39 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 39 29 29 =>.array(2,9),.24.=>.array(2,9))
12bba0 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 30 29 2c 20 31 38 20 3d ,.array(.14.=>.array(2,10),.18.=
12bbc0 3e 20 61 72 72 61 79 28 32 2c 31 30 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 30 29 >.array(2,10),.22.=>.array(2,10)
12bbe0 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 30 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 ,.24.=>.array(2,10)),.array(.14.
12bc00 3d 3e 20 61 72 72 61 79 28 32 2c 31 31 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 31 =>.array(2,11),.18.=>.array(2,11
12bc20 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 31 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 ),.22.=>.array(2,11),.24.=>.arra
12bc40 79 28 32 2c 31 31 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 y(2,11)),.array(.14.=>.array(2,1
12bc60 32 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 32 29 2c 20 32 32 20 3d 3e 20 61 72 72 2),.18.=>.array(2,12),.22.=>.arr
12bc80 61 79 28 32 2c 31 32 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 32 29 29 2c 20 61 72 ay(2,12),.24.=>.array(2,12)),.ar
12bca0 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 33 29 2c 20 31 38 20 3d 3e 20 61 72 72 ray(.14.=>.array(2,3),.18.=>.arr
12bcc0 61 79 28 32 2c 33 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 33 29 2c 20 32 34 20 3d 3e ay(2,3),.22.=>.array(2,3),.24.=>
12bce0 20 61 72 72 61 79 28 32 2c 33 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 .array(2,3)),.array(.14.=>.array
12bd00 28 32 2c 34 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 34 29 2c 20 32 32 20 3d 3e 20 61 (2,4),.18.=>.array(2,4),.22.=>.a
12bd20 72 72 61 79 28 32 2c 34 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 34 29 29 2c 20 61 72 rray(2,4),.24.=>.array(2,4)),.ar
12bd40 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 35 29 2c 20 31 38 20 3d 3e 20 61 72 72 ray(.14.=>.array(2,5),.18.=>.arr
12bd60 61 79 28 32 2c 35 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 35 29 2c 20 32 34 20 3d 3e ay(2,5),.22.=>.array(2,5),.24.=>
12bd80 20 61 72 72 61 79 28 32 2c 35 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 .array(2,5)),.array(.14.=>.array
12bda0 28 32 2c 31 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 2c 20 32 31 20 3d 3e 20 61 (2,1),.18.=>.array(2,1),.21.=>.a
12bdc0 72 72 61 79 28 32 2c 31 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 2c 20 32 34 20 rray(2,1),.22.=>.array(2,1),.24.
12bde0 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 =>.array(2,1)),.array(.14.=>.arr
12be00 61 79 28 32 2c 32 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 29 2c 20 32 32 20 3d 3e ay(2,2),.18.=>.array(2,2),.22.=>
12be20 20 61 72 72 61 79 28 32 2c 32 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 29 29 2c 20 .array(2,2),.24.=>.array(2,2)),.
12be40 61 72 72 61 79 28 20 33 20 3d 3e 20 32 30 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 32 29 array(.3.=>.20,.4.=>.array(1,12)
12be60 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 37 29 2c 20 31 39 20 3d 3e 20 31 38 2c 20 32 ,.18.=>.array(1,17),.19.=>.18,.2
12be80 30 20 3d 3e 20 31 39 20 29 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 20 35 2c 20 34 20 3d 3e 20 61 0.=>.19.),.array(.3.=>.5,.4.=>.a
12bea0 72 72 61 79 28 31 2c 31 32 29 2c 20 35 20 3d 3e 20 36 2c 20 36 20 3d 3e 20 61 72 72 61 79 28 31 rray(1,12),.5.=>.6,.6.=>.array(1
12bec0 2c 31 33 29 2c 20 37 20 3d 3e 20 33 2c 20 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 39 29 2c 20 39 ,13),.7.=>.3,.8.=>.array(1,9),.9
12bee0 20 3d 3e 20 34 2c 20 31 30 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 30 29 2c 20 31 31 20 3d 3e 20 .=>.4,.10.=>.array(1,10),.11.=>.
12bf00 61 72 72 61 79 28 31 2c 31 31 29 2c 20 31 33 20 3d 3e 20 32 33 2c 20 31 35 20 3d 3e 20 37 2c 20 array(1,11),.13.=>.23,.15.=>.7,.
12bf20 31 36 20 3d 3e 20 38 2c 20 31 37 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 34 29 2c 20 32 33 20 3d 16.=>.8,.17.=>.array(1,14),.23.=
12bf40 3e 20 61 72 72 61 79 28 31 2c 31 35 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 31 29 >.array(1,15),.24.=>.array(1,21)
12bf60 2c 20 32 35 20 3d 3e 20 32 32 20 29 2c 20 61 72 72 61 79 28 20 31 20 3d 3e 20 61 72 72 61 79 28 ,.25.=>.22.),.array(.1.=>.array(
12bf80 32 2c 36 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 33 29 2c 2,6)),.array(.14.=>.array(2,13),
12bfa0 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 33 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 .18.=>.array(2,13),.22.=>.array(
12bfc0 32 2c 31 33 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 33 29 29 2c 20 61 72 72 61 79 2,13),.24.=>.array(2,13)),.array
12bfe0 28 20 31 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 34 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 (.18.=>.array(1,24),.22.=>.array
12c000 28 31 2c 32 35 29 29 2c 20 61 72 72 61 79 28 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 36 (1,25)),.array(.18.=>.array(2,16
12c020 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 36 29 29 2c 20 61 72 72 61 79 28 20 32 31 ),.22.=>.array(2,16)),.array(.21
12c040 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 36 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 .=>.array(1,26)),.array(.14.=>.a
12c060 72 72 61 79 28 32 2c 31 38 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 38 29 2c 20 32 rray(2,18),.18.=>.array(2,18),.2
12c080 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 38 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 2.=>.array(2,18),.24.=>.array(2,
12c0a0 31 38 29 29 2c 20 61 72 72 61 79 28 20 32 32 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 38 29 2c 20 18)),.array(.22.=>.array(1,28),.
12c0c0 32 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 37 29 29 2c 20 61 72 72 61 79 28 20 32 32 20 3d 3e 24.=>.array(1,27)),.array(.22.=>
12c0e0 20 61 72 72 61 79 28 32 2c 32 30 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 30 29 29 .array(2,20),.24.=>.array(2,20))
12c100 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 34 29 2c 20 31 38 20 3d ,.array(.14.=>.array(2,14),.18.=
12c120 3e 20 61 72 72 61 79 28 32 2c 31 34 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 34 29 >.array(2,14),.22.=>.array(2,14)
12c140 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 34 29 29 2c 20 61 72 72 61 79 28 20 33 20 3d ,.24.=>.array(2,14)),.array(.3.=
12c160 3e 20 32 30 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 32 29 2c 20 32 30 20 3d 3e 20 32 39 >.20,.4.=>.array(1,12),.20.=>.29
12c180 20 29 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 20 35 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 31 2c .),.array(.3.=>.5,.4.=>.array(1,
12c1a0 31 32 29 2c 20 35 20 3d 3e 20 36 2c 20 36 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 33 29 2c 20 37 12),.5.=>.6,.6.=>.array(1,13),.7
12c1c0 20 3d 3e 20 33 2c 20 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 39 29 2c 20 39 20 3d 3e 20 34 2c 20 .=>.3,.8.=>.array(1,9),.9.=>.4,.
12c1e0 31 30 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 30 29 2c 20 31 31 20 3d 3e 20 61 72 72 61 79 28 31 10.=>.array(1,10),.11.=>.array(1
12c200 2c 31 31 29 2c 20 31 33 20 3d 3e 20 33 30 2c 20 31 35 20 3d 3e 20 37 2c 20 31 36 20 3d 3e 20 38 ,11),.13.=>.30,.15.=>.7,.16.=>.8
12c220 2c 20 31 37 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 34 29 2c 20 32 33 20 3d 3e 20 61 72 72 61 79 ,.17.=>.array(1,14),.23.=>.array
12c240 28 31 2c 31 35 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 39 (1,15)),.array(.14.=>.array(2,19
12c260 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 39 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 ),.18.=>.array(2,19),.22.=>.arra
12c280 79 28 32 2c 31 39 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 39 29 29 2c 20 61 72 72 y(2,19),.24.=>.array(2,19)),.arr
12c2a0 61 79 28 20 33 20 3d 3e 20 35 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 32 29 2c 20 35 20 ay(.3.=>.5,.4.=>.array(1,12),.5.
12c2c0 3d 3e 20 36 2c 20 36 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 33 29 2c 20 37 20 3d 3e 20 33 2c 20 =>.6,.6.=>.array(1,13),.7.=>.3,.
12c2e0 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 39 29 2c 20 39 20 3d 3e 20 34 2c 20 31 30 20 3d 3e 20 61 8.=>.array(1,9),.9.=>.4,.10.=>.a
12c300 72 72 61 79 28 31 2c 31 30 29 2c 20 31 31 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 31 29 2c 20 31 rray(1,10),.11.=>.array(1,11),.1
12c320 33 20 3d 3e 20 33 31 2c 20 31 35 20 3d 3e 20 37 2c 20 31 36 20 3d 3e 20 38 2c 20 31 37 20 3d 3e 3.=>.31,.15.=>.7,.16.=>.8,.17.=>
12c340 20 61 72 72 61 79 28 31 2c 31 34 29 2c 20 32 33 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 35 29 29 .array(1,14),.23.=>.array(1,15))
12c360 2c 20 61 72 72 61 79 28 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 37 29 2c 20 32 32 20 3d ,.array(.18.=>.array(2,17),.22.=
12c380 3e 20 61 72 72 61 79 28 32 2c 31 37 29 29 2c 20 61 72 72 61 79 28 20 31 38 20 3d 3e 20 61 72 72 >.array(2,17)),.array(.18.=>.arr
12c3a0 61 79 28 32 2c 31 35 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 35 29 29 2c 20 61 72 ay(2,15),.22.=>.array(2,15)),.ar
12c3c0 72 61 79 28 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 31 29 2c 20 32 34 20 3d 3e 20 61 72 ray(.22.=>.array(2,21),.24.=>.ar
12c3e0 72 61 79 28 32 2c 32 31 29 29 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 64 65 66 61 75 6c 74 ray(2,21)),.);..private.$default
12c400 41 63 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 0a 31 36 20 3d 3e 20 61 72 72 61 79 28 32 2c 20 Actions.=.array(.16.=>.array(2,.
12c420 36 29 0a 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 69 6e 74 28 6).);......public.function.lint(
12c440 24 69 6e 70 75 74 29 0a 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 28 24 69 6e $input).{.try.{.$this->parse($in
12c460 70 75 74 29 3b 0a 7d 20 63 61 74 63 68 20 28 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 20 put);.}.catch.(ParsingException.
12c480 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 $e).{.return.$e;.}.}.......publi
12c4a0 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 28 24 69 6e 70 75 74 2c 20 24 66 6c 61 67 73 20 c.function.parse($input,.$flags.
12c4c0 3d 20 30 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 61 69 6c 4f 6e 42 4f 4d 28 24 69 6e 70 75 74 29 3b =.0).{.$this->failOnBOM($input);
12c4e0 0a 0a 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 3d 20 24 66 6c 61 67 73 3b 0a 0a 24 74 68 69 73 2d ..$this->flags.=.$flags;..$this-
12c500 3e 73 74 61 63 6b 20 3d 20 61 72 72 61 79 28 30 29 3b 0a 24 74 68 69 73 2d 3e 76 73 74 61 63 6b >stack.=.array(0);.$this->vstack
12c520 20 3d 20 61 72 72 61 79 28 6e 75 6c 6c 29 3b 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 20 3d 20 .=.array(null);.$this->lstack.=.
12c540 61 72 72 61 79 28 29 3b 0a 0a 24 79 79 74 65 78 74 20 3d 20 27 27 3b 0a 24 79 79 6c 69 6e 65 6e array();..$yytext.=.'';.$yylinen
12c560 6f 20 3d 20 30 3b 0a 24 79 79 6c 65 6e 67 20 3d 20 30 3b 0a 24 72 65 63 6f 76 65 72 69 6e 67 20 o.=.0;.$yyleng.=.0;.$recovering.
12c580 3d 20 30 3b 0a 24 54 45 52 52 4f 52 20 3d 20 32 3b 0a 24 45 4f 46 20 3d 20 31 3b 0a 0a 24 74 68 =.0;.$TERROR.=.2;.$EOF.=.1;..$th
12c5a0 69 73 2d 3e 6c 65 78 65 72 20 3d 20 6e 65 77 20 4c 65 78 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e is->lexer.=.new.Lexer();.$this->
12c5c0 6c 65 78 65 72 2d 3e 73 65 74 49 6e 70 75 74 28 24 69 6e 70 75 74 29 3b 0a 0a 24 79 79 6c 6f 63 lexer->setInput($input);..$yyloc
12c5e0 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f 63 3b 0a 24 74 68 69 73 2d 3e .=.$this->lexer->yylloc;.$this->
12c600 6c 73 74 61 63 6b 5b 5d 20 3d 20 24 79 79 6c 6f 63 3b 0a 0a 24 73 79 6d 62 6f 6c 20 3d 20 6e 75 lstack[].=.$yyloc;..$symbol.=.nu
12c620 6c 6c 3b 0a 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 73 74 61 ll;.$preErrorSymbol.=.null;.$sta
12c640 74 65 20 3d 20 6e 75 6c 6c 3b 0a 24 61 63 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 24 61 20 3d 20 te.=.null;.$action.=.null;.$a.=.
12c660 6e 75 6c 6c 3b 0a 24 72 20 3d 20 6e 75 6c 6c 3b 0a 24 79 79 76 61 6c 20 3d 20 6e 65 77 20 73 74 null;.$r.=.null;.$yyval.=.new.st
12c680 64 43 6c 61 73 73 3b 0a 24 70 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 65 6e 20 3d 20 6e 75 6c 6c 3b 0a dClass;.$p.=.null;.$len.=.null;.
12c6a0 24 6e 65 77 53 74 61 74 65 20 3d 20 6e 75 6c 6c 3b 0a 24 65 78 70 65 63 74 65 64 20 3d 20 6e 75 $newState.=.null;.$expected.=.nu
12c6c0 6c 6c 3b 0a 24 65 72 72 53 74 72 20 3d 20 6e 75 6c 6c 3b 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 ll;.$errStr.=.null;..while.(true
12c6e0 29 20 7b 0a 0a 20 24 73 74 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 63 6f 75 6e ).{...$state.=.$this->stack[coun
12c700 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 31 5d 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 t($this->stack)-1];....if.(isset
12c720 28 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 41 63 74 69 6f 6e 73 5b 24 73 74 61 74 65 5d 29 29 ($this->defaultActions[$state]))
12c740 20 7b 0a 24 61 63 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 41 63 74 69 6f .{.$action.=.$this->defaultActio
12c760 6e 73 5b 24 73 74 61 74 65 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 24 73 79 6d 62 6f 6c ns[$state];.}.else.{.if.($symbol
12c780 20 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 73 79 6d 62 6f 6c 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 .==.null).{.$symbol.=.$this->lex
12c7a0 28 29 3b 0a 7d 0a 0a 20 24 61 63 74 69 6f 6e 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 ();.}...$action.=.isset($this->t
12c7c0 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b 24 73 79 6d 62 6f 6c 5d 29 20 3f 20 24 74 68 69 73 2d 3e able[$state][$symbol]).?.$this->
12c7e0 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b 24 73 79 6d 62 6f 6c 5d 20 3a 20 66 61 6c 73 65 3b 0a table[$state][$symbol].:.false;.
12c800 7d 0a 0a 0a 20 69 66 20 28 21 24 61 63 74 69 6f 6e 20 7c 7c 20 21 24 61 63 74 69 6f 6e 5b 30 5d }....if.(!$action.||.!$action[0]
12c820 29 20 7b 0a 69 66 20 28 21 24 72 65 63 6f 76 65 72 69 6e 67 29 20 7b 0a 0a 20 24 65 78 70 65 63 ).{.if.(!$recovering).{...$expec
12c840 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 ted.=.array();.foreach.($this->t
12c860 61 62 6c 65 5b 24 73 74 61 74 65 5d 20 61 73 20 24 70 20 3d 3e 20 24 69 67 6e 6f 72 65 29 20 7b able[$state].as.$p.=>.$ignore).{
12c880 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 73 5f 5b 24 70 5d .if.(isset($this->terminals_[$p]
12c8a0 29 20 26 26 20 24 70 20 3e 20 32 29 20 7b 0a 24 65 78 70 65 63 74 65 64 5b 5d 20 3d 20 22 27 22 ).&&.$p.>.2).{.$expected[].=."'"
12c8c0 20 2e 20 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 73 5f 5b 24 70 5d 20 2e 20 22 27 22 3b 0a ...$this->terminals_[$p]..."'";.
12c8e0 7d 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 69 6e 5f 61 72 72 }.}..$message.=.null;.if.(in_arr
12c900 61 79 28 22 27 53 54 52 49 4e 47 27 22 2c 20 24 65 78 70 65 63 74 65 64 29 20 26 26 20 69 6e 5f ay("'STRING'",.$expected).&&.in_
12c920 61 72 72 61 79 28 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 6d 61 74 63 68 array(substr($this->lexer->match
12c940 2c 20 30 2c 20 31 29 2c 20 61 72 72 61 79 28 27 22 27 2c 20 22 27 22 29 29 29 20 7b 0a 24 6d 65 ,.0,.1),.array('"',."'"))).{.$me
12c960 73 73 61 67 65 20 3d 20 22 49 6e 76 61 6c 69 64 20 73 74 72 69 6e 67 22 3b 0a 69 66 20 28 22 27 ssage.=."Invalid.string";.if.("'
12c980 22 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 6d 61 74 63 68 ".===.substr($this->lexer->match
12c9a0 2c 20 30 2c 20 31 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 2c 20 69 74 20 61 70 70 ,.0,.1)).{.$message..=.",.it.app
12c9c0 65 61 72 73 20 79 6f 75 20 75 73 65 64 20 73 69 6e 67 6c 65 20 71 75 6f 74 65 73 20 69 6e 73 74 ears.you.used.single.quotes.inst
12c9e0 65 61 64 20 6f 66 20 64 6f 75 62 6c 65 20 71 75 6f 74 65 73 22 3b 0a 7d 20 65 6c 73 65 69 66 20 ead.of.double.quotes";.}.elseif.
12ca00 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 22 2e 2b 3f 28 5c 5c 5c 5c 5b 5e 22 62 66 6e 72 74 2f (preg_match('{".+?(\\\\[^"bfnrt/
12ca20 5c 5c 5c 5c 75 5d 29 7d 27 2c 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 67 65 74 55 70 63 6f \\\\u])}',.$this->lexer->getUpco
12ca40 6d 69 6e 67 49 6e 70 75 74 28 29 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 mingInput(),.$match)).{.$message
12ca60 20 2e 3d 20 22 2c 20 69 74 20 61 70 70 65 61 72 73 20 79 6f 75 20 68 61 76 65 20 61 6e 20 75 6e ..=.",.it.appears.you.have.an.un
12ca80 65 73 63 61 70 65 64 20 62 61 63 6b 73 6c 61 73 68 20 61 74 3a 20 22 2e 24 6d 61 74 63 68 5b 31 escaped.backslash.at:.".$match[1
12caa0 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 22 28 3f 3a 5b 5e ];.}.elseif.(preg_match('{"(?:[^
12cac0 22 5d 2b 7c 5c 5c 5c 5c 22 29 2a 24 7d 6d 27 2c 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 67 "]+|\\\\")*$}m',.$this->lexer->g
12cae0 65 74 55 70 63 6f 6d 69 6e 67 49 6e 70 75 74 28 29 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e etUpcomingInput())).{.$message..
12cb00 3d 20 22 2c 20 69 74 20 61 70 70 65 61 72 73 20 79 6f 75 20 66 6f 72 67 6f 74 20 74 6f 20 74 65 =.",.it.appears.you.forgot.to.te
12cb20 72 6d 69 6e 61 74 65 64 20 74 68 65 20 73 74 72 69 6e 67 2c 20 6f 72 20 61 74 74 65 6d 70 74 65 rminated.the.string,.or.attempte
12cb40 64 20 74 6f 20 77 72 69 74 65 20 61 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 77 68 d.to.write.a.multiline.string.wh
12cb60 69 63 68 20 69 73 20 69 6e 76 61 6c 69 64 22 3b 0a 7d 0a 7d 0a 0a 24 65 72 72 53 74 72 20 3d 20 ich.is.invalid";.}.}..$errStr.=.
12cb80 27 50 61 72 73 65 20 65 72 72 6f 72 20 6f 6e 20 6c 69 6e 65 20 27 20 2e 20 28 24 79 79 6c 69 6e 'Parse.error.on.line.'...($yylin
12cba0 65 6e 6f 2b 31 29 20 2e 20 22 3a 5c 6e 22 3b 0a 24 65 72 72 53 74 72 20 2e 3d 20 24 74 68 69 73 eno+1)...":\n";.$errStr..=.$this
12cbc0 2d 3e 6c 65 78 65 72 2d 3e 73 68 6f 77 50 6f 73 69 74 69 6f 6e 28 29 20 2e 20 22 5c 6e 22 3b 0a ->lexer->showPosition()..."\n";.
12cbe0 69 66 20 28 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 65 72 72 53 74 72 20 2e 3d 20 24 6d 65 73 73 if.($message).{.$errStr..=.$mess
12cc00 61 67 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 72 72 53 74 72 20 2e 3d 20 28 63 6f 75 6e 74 28 age;.}.else.{.$errStr..=.(count(
12cc20 24 65 78 70 65 63 74 65 64 29 20 3e 20 31 29 20 3f 20 22 45 78 70 65 63 74 65 64 20 6f 6e 65 20 $expected).>.1).?."Expected.one.
12cc40 6f 66 3a 20 22 20 3a 20 22 45 78 70 65 63 74 65 64 3a 20 22 3b 0a 24 65 72 72 53 74 72 20 2e 3d of:.".:."Expected:.";.$errStr..=
12cc60 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 65 78 70 65 63 74 65 64 29 3b 0a 7d 0a 0a 69 66 .implode(',.',.$expected);.}..if
12cc80 20 28 27 2c 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 74 72 69 6d 28 24 74 68 69 73 2d 3e 6c 65 78 .(','.===.substr(trim($this->lex
12cca0 65 72 2d 3e 67 65 74 50 61 73 74 49 6e 70 75 74 28 29 29 2c 20 2d 31 29 29 20 7b 0a 24 65 72 72 er->getPastInput()),.-1)).{.$err
12ccc0 53 74 72 20 2e 3d 20 22 20 2d 20 49 74 20 61 70 70 65 61 72 73 20 79 6f 75 20 68 61 76 65 20 61 Str..=.".-.It.appears.you.have.a
12cce0 6e 20 65 78 74 72 61 20 74 72 61 69 6c 69 6e 67 20 63 6f 6d 6d 61 22 3b 0a 7d 0a 0a 24 74 68 69 n.extra.trailing.comma";.}..$thi
12cd00 73 2d 3e 70 61 72 73 65 45 72 72 6f 72 28 24 65 72 72 53 74 72 2c 20 61 72 72 61 79 28 0a 27 74 s->parseError($errStr,.array(.'t
12cd20 65 78 74 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 6d 61 74 63 68 2c 0a 27 74 6f ext'.=>.$this->lexer->match,.'to
12cd40 6b 65 6e 27 20 3d 3e 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 73 5f ken'.=>.!empty($this->terminals_
12cd60 5b 24 73 79 6d 62 6f 6c 5d 29 20 3f 20 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 73 5f 5b 24 [$symbol]).?.$this->terminals_[$
12cd80 73 79 6d 62 6f 6c 5d 20 3a 20 24 73 79 6d 62 6f 6c 2c 0a 27 6c 69 6e 65 27 20 3d 3e 20 24 74 68 symbol].:.$symbol,.'line'.=>.$th
12cda0 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 69 6e 65 6e 6f 2c 0a 27 6c 6f 63 27 20 3d 3e 20 24 79 is->lexer->yylineno,.'loc'.=>.$y
12cdc0 79 6c 6f 63 2c 0a 27 65 78 70 65 63 74 65 64 27 20 3d 3e 20 24 65 78 70 65 63 74 65 64 2c 0a 29 yloc,.'expected'.=>.$expected,.)
12cde0 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 72 65 63 6f 76 65 72 69 6e 67 20 3d 3d 20 33 29 20 7b 0a );.}....if.($recovering.==.3).{.
12ce00 69 66 20 28 24 73 79 6d 62 6f 6c 20 3d 3d 20 24 45 4f 46 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 if.($symbol.==.$EOF).{.throw.new
12ce20 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 53 74 72 20 3f 3a 20 27 50 61 .ParsingException($errStr.?:.'Pa
12ce40 72 73 69 6e 67 20 68 61 6c 74 65 64 2e 27 29 3b 0a 7d 0a 0a 0a 20 24 79 79 6c 65 6e 67 20 3d 20 rsing.halted.');.}....$yyleng.=.
12ce60 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 65 6e 67 3b 0a 24 79 79 74 65 78 74 20 3d 20 $this->lexer->yyleng;.$yytext.=.
12ce80 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 74 65 78 74 3b 0a 24 79 79 6c 69 6e 65 6e 6f 20 $this->lexer->yytext;.$yylineno.
12cea0 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 69 6e 65 6e 6f 3b 0a 24 79 79 6c 6f 63 =.$this->lexer->yylineno;.$yyloc
12cec0 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f 63 3b 0a 24 73 79 6d 62 6f 6c .=.$this->lexer->yylloc;.$symbol
12cee0 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 28 29 3b 0a 7d 0a 0a 0a 20 77 68 69 6c 65 20 28 74 72 75 .=.$this->lex();.}....while.(tru
12cf00 65 29 20 7b 0a 0a 20 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 54 45 52 e).{...if.(array_key_exists($TER
12cf20 52 4f 52 2c 20 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 29 29 20 7b 0a 62 72 ROR,.$this->table[$state])).{.br
12cf40 65 61 6b 3b 0a 7d 0a 69 66 20 28 24 73 74 61 74 65 20 3d 3d 20 30 29 20 7b 0a 74 68 72 6f 77 20 eak;.}.if.($state.==.0).{.throw.
12cf60 6e 65 77 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 53 74 72 20 3f 3a 20 new.ParsingException($errStr.?:.
12cf80 27 50 61 72 73 69 6e 67 20 68 61 6c 74 65 64 2e 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 6f 70 'Parsing.halted.');.}.$this->pop
12cfa0 53 74 61 63 6b 28 31 29 3b 0a 24 73 74 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b Stack(1);.$state.=.$this->stack[
12cfc0 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 31 5d 3b 0a 7d 0a 0a 24 70 72 65 45 count($this->stack)-1];.}..$preE
12cfe0 72 72 6f 72 53 79 6d 62 6f 6c 20 3d 20 24 73 79 6d 62 6f 6c 3b 20 0a 20 24 73 79 6d 62 6f 6c 20 rrorSymbol.=.$symbol;...$symbol.
12d000 3d 20 24 54 45 52 52 4f 52 3b 20 0a 20 24 73 74 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 =.$TERROR;...$state.=.$this->sta
12d020 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 31 5d 3b 0a 24 61 63 74 69 ck[count($this->stack)-1];.$acti
12d040 6f 6e 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b on.=.isset($this->table[$state][
12d060 24 54 45 52 52 4f 52 5d 29 20 3f 20 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d $TERROR]).?.$this->table[$state]
12d080 5b 24 54 45 52 52 4f 52 5d 20 3a 20 66 61 6c 73 65 3b 0a 24 72 65 63 6f 76 65 72 69 6e 67 20 3d [$TERROR].:.false;.$recovering.=
12d0a0 20 33 3b 20 0a 20 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 61 63 74 69 6f 6e 5b .3;...}....if.(is_array($action[
12d0c0 30 5d 29 20 26 26 20 63 6f 75 6e 74 28 24 61 63 74 69 6f 6e 29 20 3e 20 31 29 20 7b 0a 74 68 72 0]).&&.count($action).>.1).{.thr
12d0e0 6f 77 20 6e 65 77 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 27 50 61 72 73 65 20 45 ow.new.ParsingException('Parse.E
12d100 72 72 6f 72 3a 20 6d 75 6c 74 69 70 6c 65 20 61 63 74 69 6f 6e 73 20 70 6f 73 73 69 62 6c 65 20 rror:.multiple.actions.possible.
12d120 61 74 20 73 74 61 74 65 3a 20 27 20 2e 20 24 73 74 61 74 65 20 2e 20 27 2c 20 74 6f 6b 65 6e 3a at.state:.'...$state...',.token:
12d140 20 27 20 2e 20 24 73 79 6d 62 6f 6c 29 3b 0a 7d 0a 0a 73 77 69 74 63 68 20 28 24 61 63 74 69 6f .'...$symbol);.}..switch.($actio
12d160 6e 5b 30 5d 29 20 7b 0a 63 61 73 65 20 31 3a 20 0a 20 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 5d n[0]).{.case.1:...$this->stack[]
12d180 20 3d 20 24 73 79 6d 62 6f 6c 3b 0a 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 5b 5d 20 3d 20 24 74 .=.$symbol;.$this->vstack[].=.$t
12d1a0 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 74 65 78 74 3b 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 his->lexer->yytext;.$this->lstac
12d1c0 6b 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f 63 3b 0a 24 74 68 69 k[].=.$this->lexer->yylloc;.$thi
12d1e0 73 2d 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 61 63 74 69 6f 6e 5b 31 5d 3b 20 0a 20 24 73 79 6d 62 s->stack[].=.$action[1];...$symb
12d200 6f 6c 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 21 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 29 ol.=.null;.if.(!$preErrorSymbol)
12d220 20 7b 20 0a 20 24 79 79 6c 65 6e 67 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c .{...$yyleng.=.$this->lexer->yyl
12d240 65 6e 67 3b 0a 24 79 79 74 65 78 74 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 74 eng;.$yytext.=.$this->lexer->yyt
12d260 65 78 74 3b 0a 24 79 79 6c 69 6e 65 6e 6f 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 ext;.$yylineno.=.$this->lexer->y
12d280 79 6c 69 6e 65 6e 6f 3b 0a 24 79 79 6c 6f 63 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e ylineno;.$yyloc.=.$this->lexer->
12d2a0 79 79 6c 6c 6f 63 3b 0a 69 66 20 28 24 72 65 63 6f 76 65 72 69 6e 67 20 3e 20 30 29 20 7b 0a 24 yylloc;.if.($recovering.>.0).{.$
12d2c0 72 65 63 6f 76 65 72 69 6e 67 2d 2d 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 20 0a 20 24 73 79 6d 62 recovering--;.}.}.else.{...$symb
12d2e0 6f 6c 20 3d 20 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 3b 0a 24 70 72 65 45 72 72 6f 72 53 ol.=.$preErrorSymbol;.$preErrorS
12d300 79 6d 62 6f 6c 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 32 3a 20 ymbol.=.null;.}.break;..case.2:.
12d320 0a 20 24 6c 65 6e 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 64 75 63 74 69 6f 6e 73 5f 5b 24 61 63 ..$len.=.$this->productions_[$ac
12d340 74 69 6f 6e 5b 31 5d 5d 5b 31 5d 3b 0a 0a 0a 20 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 tion[1]][1];....$yyval->token.=.
12d360 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 76 73 74 61 63 $this->vstack[count($this->vstac
12d380 6b 29 20 2d 20 24 6c 65 6e 5d 3b 20 0a 20 0a 20 24 79 79 76 61 6c 2d 3e 73 74 6f 72 65 20 3d 20 k).-.$len];.....$yyval->store.=.
12d3a0 61 72 72 61 79 28 20 0a 20 27 66 69 72 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e array(...'first_line'.=>.$this->
12d3c0 6c 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 29 20 2d 20 28 24 lstack[count($this->lstack).-.($
12d3e0 6c 65 6e 20 3f 3a 20 31 29 5d 5b 27 66 69 72 73 74 5f 6c 69 6e 65 27 5d 2c 0a 27 6c 61 73 74 5f len.?:.1)]['first_line'],.'last_
12d400 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 line'.=>.$this->lstack[count($th
12d420 69 73 2d 3e 6c 73 74 61 63 6b 29 20 2d 20 31 5d 5b 27 6c 61 73 74 5f 6c 69 6e 65 27 5d 2c 0a 27 is->lstack).-.1]['last_line'],.'
12d440 66 69 72 73 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 63 first_column'.=>.$this->lstack[c
12d460 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 29 20 2d 20 28 24 6c 65 6e 20 3f 3a 20 31 ount($this->lstack).-.($len.?:.1
12d480 29 5d 5b 27 66 69 72 73 74 5f 63 6f 6c 75 6d 6e 27 5d 2c 0a 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e )]['first_column'],.'last_column
12d4a0 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e '.=>.$this->lstack[count($this->
12d4c0 6c 73 74 61 63 6b 29 20 2d 20 31 5d 5b 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e 27 5d 2c 0a 29 3b 0a lstack).-.1]['last_column'],.);.
12d4e0 24 72 20 3d 20 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 6d 41 63 74 69 6f 6e 28 24 79 79 76 61 6c $r.=.$this->performAction($yyval
12d500 2c 20 24 79 79 74 65 78 74 2c 20 24 79 79 6c 65 6e 67 2c 20 24 79 79 6c 69 6e 65 6e 6f 2c 20 24 ,.$yytext,.$yyleng,.$yylineno,.$
12d520 61 63 74 69 6f 6e 5b 31 5d 2c 20 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 2c 20 24 74 68 69 73 2d action[1],.$this->vstack,.$this-
12d540 3e 6c 73 74 61 63 6b 29 3b 0a 0a 69 66 20 28 21 24 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e >lstack);..if.(!$r.instanceof.Un
12d560 64 65 66 69 6e 65 64 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 3b 0a 7d 0a 0a 69 66 20 28 24 6c 65 defined).{.return.$r;.}..if.($le
12d580 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 70 6f 70 53 74 61 63 6b 28 24 6c 65 6e 29 3b 0a 7d 0a 0a 24 n).{.$this->popStack($len);.}..$
12d5a0 74 68 69 73 2d 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 64 75 63 74 69 6f this->stack[].=.$this->productio
12d5c0 6e 73 5f 5b 24 61 63 74 69 6f 6e 5b 31 5d 5d 5b 30 5d 3b 20 0a 20 24 74 68 69 73 2d 3e 76 73 74 ns_[$action[1]][0];...$this->vst
12d5e0 61 63 6b 5b 5d 20 3d 20 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 3b 0a 24 74 68 69 73 2d 3e 6c 73 ack[].=.$yyval->token;.$this->ls
12d600 74 61 63 6b 5b 5d 20 3d 20 24 79 79 76 61 6c 2d 3e 73 74 6f 72 65 3b 0a 24 6e 65 77 53 74 61 74 tack[].=.$yyval->store;.$newStat
12d620 65 20 3d 20 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 63 6f e.=.$this->table[$this->stack[co
12d640 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 32 5d 5d 5b 24 74 68 69 73 2d 3e 73 74 61 unt($this->stack)-2]][$this->sta
12d660 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 31 5d 5d 3b 0a 24 74 68 69 ck[count($this->stack)-1]];.$thi
12d680 73 2d 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 6e 65 77 53 74 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a s->stack[].=.$newState;.break;..
12d6a0 63 61 73 65 20 33 3a 20 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 case.3:...return.true;.}.}..retu
12d6c0 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 rn.true;.}..protected.function.p
12d6e0 61 72 73 65 45 72 72 6f 72 28 24 73 74 72 2c 20 24 68 61 73 68 29 0a 7b 0a 74 68 72 6f 77 20 6e arseError($str,.$hash).{.throw.n
12d700 65 77 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 24 73 74 72 2c 20 24 68 61 73 68 29 ew.ParsingException($str,.$hash)
12d720 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 65 72 66 ;.}........private.function.perf
12d740 6f 72 6d 41 63 74 69 6f 6e 28 73 74 64 43 6c 61 73 73 20 24 79 79 76 61 6c 2c 20 24 79 79 74 65 ormAction(stdClass.$yyval,.$yyte
12d760 78 74 2c 20 24 79 79 6c 65 6e 67 2c 20 24 79 79 6c 69 6e 65 6e 6f 2c 20 24 79 79 73 74 61 74 65 xt,.$yyleng,.$yylineno,.$yystate
12d780 2c 20 26 24 74 6f 6b 65 6e 73 29 0a 7b 0a 0a 20 24 6c 65 6e 20 3d 20 63 6f 75 6e 74 28 24 74 6f ,.&$tokens).{...$len.=.count($to
12d7a0 6b 65 6e 73 29 20 2d 20 31 3b 0a 73 77 69 74 63 68 20 28 24 79 79 73 74 61 74 65 29 20 7b 0a 63 kens).-.1;.switch.($yystate).{.c
12d7c0 61 73 65 20 31 3a 0a 24 79 79 74 65 78 74 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 ase.1:.$yytext.=.preg_replace_ca
12d7e0 6c 6c 62 61 63 6b 28 27 7b 28 3f 3a 5c 5c 5c 5c 5b 22 62 66 6e 72 74 2f 5c 5c 5c 5c 5d 7c 5c 5c llback('{(?:\\\\["bfnrt/\\\\]|\\
12d800 5c 5c 75 5b 61 2d 66 41 2d 46 30 2d 39 5d 7b 34 7d 29 7d 27 2c 20 61 72 72 61 79 28 24 74 68 69 \\u[a-fA-F0-9]{4})}',.array($thi
12d820 73 2c 20 27 73 74 72 69 6e 67 49 6e 74 65 72 70 6f 6c 61 74 69 6f 6e 27 29 2c 20 24 79 79 74 65 s,.'stringInterpolation'),.$yyte
12d840 78 74 29 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 79 79 74 65 78 74 3b 0a 62 72 xt);.$yyval->token.=.$yytext;.br
12d860 65 61 6b 3b 0a 63 61 73 65 20 32 3a 0a 69 66 20 28 73 74 72 70 6f 73 28 24 79 79 74 65 78 74 2c eak;.case.2:.if.(strpos($yytext,
12d880 20 27 65 27 29 20 21 3d 3d 20 66 61 6c 73 65 20 7c 7c 20 73 74 72 70 6f 73 28 24 79 79 74 65 78 .'e').!==.false.||.strpos($yytex
12d8a0 74 2c 20 27 45 27 29 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b t,.'E').!==.false).{.$yyval->tok
12d8c0 65 6e 20 3d 20 66 6c 6f 61 74 76 61 6c 28 24 79 79 74 65 78 74 29 3b 0a 7d 20 65 6c 73 65 20 7b en.=.floatval($yytext);.}.else.{
12d8e0 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 73 74 72 70 6f 73 28 24 79 79 74 65 78 74 2c .$yyval->token.=.strpos($yytext,
12d900 20 27 2e 27 29 20 3d 3d 3d 20 66 61 6c 73 65 20 3f 20 69 6e 74 76 61 6c 28 24 79 79 74 65 78 74 .'.').===.false.?.intval($yytext
12d920 29 20 3a 20 66 6c 6f 61 74 76 61 6c 28 24 79 79 74 65 78 74 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a ).:.floatval($yytext);.}.break;.
12d940 63 61 73 65 20 33 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 6e 75 6c 6c 3b 0a 62 72 case.3:.$yyval->token.=.null;.br
12d960 65 61 6b 3b 0a 63 61 73 65 20 34 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 74 72 75 eak;.case.4:.$yyval->token.=.tru
12d980 65 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 35 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 e;.break;.case.5:.$yyval->token.
12d9a0 3d 20 66 61 6c 73 65 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 36 3a 0a 72 65 74 75 72 6e 20 24 =.false;.break;.case.6:.return.$
12d9c0 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 31 5d 3b 0a yyval->token.=.$tokens[$len-1];.
12d9e0 63 61 73 65 20 31 33 3a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 65 6c 66 case.13:.if.($this->flags.&.self
12da00 3a 3a 50 41 52 53 45 5f 54 4f 5f 41 53 53 4f 43 29 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 ::PARSE_TO_ASSOC).{.$yyval->toke
12da20 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f n.=.array();.}.else.{.$yyval->to
12da40 6b 65 6e 20 3d 20 6e 65 77 20 73 74 64 43 6c 61 73 73 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 ken.=.new.stdClass;.}.break;.cas
12da60 65 20 31 34 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c e.14:.$yyval->token.=.$tokens[$l
12da80 65 6e 2d 31 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 35 3a 0a 24 79 79 76 61 6c 2d 3e 74 en-1];.break;.case.15:.$yyval->t
12daa0 6f 6b 65 6e 20 3d 20 61 72 72 61 79 28 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 2c 20 24 74 oken.=.array($tokens[$len-2],.$t
12dac0 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 36 3a 0a 24 70 okens[$len]);.break;.case.16:.$p
12dae0 72 6f 70 65 72 74 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 30 5d 20 3d 3d 3d 20 27 roperty.=.$tokens[$len][0].===.'
12db00 27 20 3f 20 27 5f 65 6d 70 74 79 5f 27 20 3a 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 30 5d '.?.'_empty_'.:.$tokens[$len][0]
12db20 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 50 41 52 53 45 ;.if.($this->flags.&.self::PARSE
12db40 5f 54 4f 5f 41 53 53 4f 43 29 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 61 72 72 _TO_ASSOC).{.$yyval->token.=.arr
12db60 61 79 28 29 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 5b 24 70 72 6f 70 65 72 74 79 5d 20 3d ay();.$yyval->token[$property].=
12db80 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 31 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 79 79 76 .$tokens[$len][1];.}.else.{.$yyv
12dba0 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 6e 65 77 20 73 74 64 43 6c 61 73 73 3b 0a 24 79 79 76 61 6c al->token.=.new.stdClass;.$yyval
12dbc0 2d 3e 74 6f 6b 65 6e 2d 3e 24 70 72 6f 70 65 72 74 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 ->token->$property.=.$tokens[$le
12dbe0 6e 5d 5b 31 5d 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 37 3a 0a 69 66 20 28 24 74 68 n][1];.}.break;.case.17:.if.($th
12dc00 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 50 41 52 53 45 5f 54 4f 5f 41 53 53 4f 43 is->flags.&.self::PARSE_TO_ASSOC
12dc20 29 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 26 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 ).{.$yyval->token.=&.$tokens[$le
12dc40 6e 2d 32 5d 3b 0a 24 6b 65 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 30 5d 3b 0a 69 n-2];.$key.=.$tokens[$len][0];.i
12dc60 66 20 28 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 44 45 54 45 43 54 5f f.(($this->flags.&.self::DETECT_
12dc80 4b 45 59 5f 43 4f 4e 46 4c 49 43 54 53 29 20 26 26 20 69 73 73 65 74 28 24 74 6f 6b 65 6e 73 5b KEY_CONFLICTS).&&.isset($tokens[
12dca0 24 6c 65 6e 2d 32 5d 5b 24 6b 65 79 5d 29 29 20 7b 0a 24 65 72 72 53 74 72 20 3d 20 27 50 61 72 $len-2][$key])).{.$errStr.=.'Par
12dcc0 73 65 20 65 72 72 6f 72 20 6f 6e 20 6c 69 6e 65 20 27 20 2e 20 28 24 79 79 6c 69 6e 65 6e 6f 2b se.error.on.line.'...($yylineno+
12dce0 31 29 20 2e 20 22 3a 5c 6e 22 3b 0a 24 65 72 72 53 74 72 20 2e 3d 20 24 74 68 69 73 2d 3e 6c 65 1)...":\n";.$errStr..=.$this->le
12dd00 78 65 72 2d 3e 73 68 6f 77 50 6f 73 69 74 69 6f 6e 28 29 20 2e 20 22 5c 6e 22 3b 0a 24 65 72 72 xer->showPosition()..."\n";.$err
12dd20 53 74 72 20 2e 3d 20 22 44 75 70 6c 69 63 61 74 65 20 6b 65 79 3a 20 22 2e 24 74 6f 6b 65 6e 73 Str..=."Duplicate.key:.".$tokens
12dd40 5b 24 6c 65 6e 5d 5b 30 5d 3b 0a 74 68 72 6f 77 20 6e 65 77 20 44 75 70 6c 69 63 61 74 65 4b 65 [$len][0];.throw.new.DuplicateKe
12dd60 79 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 53 74 72 2c 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e yException($errStr,.$tokens[$len
12dd80 5d 5b 30 5d 2c 20 61 72 72 61 79 28 27 6c 69 6e 65 27 20 3d 3e 20 24 79 79 6c 69 6e 65 6e 6f 2b ][0],.array('line'.=>.$yylineno+
12dda0 31 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 1));.}.elseif.(($this->flags.&.s
12ddc0 65 6c 66 3a 3a 41 4c 4c 4f 57 5f 44 55 50 4c 49 43 41 54 45 5f 4b 45 59 53 29 20 26 26 20 69 73 elf::ALLOW_DUPLICATE_KEYS).&&.is
12dde0 73 65 74 28 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 5b 24 6b 65 79 5d 29 29 20 7b 0a 24 64 set($tokens[$len-2][$key])).{.$d
12de00 75 70 6c 69 63 61 74 65 43 6f 75 6e 74 20 3d 20 31 3b 0a 64 6f 20 7b 0a 24 64 75 70 6c 69 63 61 uplicateCount.=.1;.do.{.$duplica
12de20 74 65 4b 65 79 20 3d 20 24 6b 65 79 20 2e 20 27 2e 27 20 2e 20 24 64 75 70 6c 69 63 61 74 65 43 teKey.=.$key...'.'...$duplicateC
12de40 6f 75 6e 74 2b 2b 3b 0a 7d 20 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 74 6f 6b 65 6e 73 5b 24 ount++;.}.while.(isset($tokens[$
12de60 6c 65 6e 2d 32 5d 5b 24 64 75 70 6c 69 63 61 74 65 4b 65 79 5d 29 29 3b 0a 24 6b 65 79 20 3d 20 len-2][$duplicateKey]));.$key.=.
12de80 24 64 75 70 6c 69 63 61 74 65 4b 65 79 3b 0a 7d 0a 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d $duplicateKey;.}.$tokens[$len-2]
12dea0 5b 24 6b 65 79 5d 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 31 5d 3b 0a 7d 20 65 6c 73 [$key].=.$tokens[$len][1];.}.els
12dec0 65 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e e.{.$yyval->token.=.$tokens[$len
12dee0 2d 32 5d 3b 0a 24 6b 65 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 30 5d 20 3d 3d 3d -2];.$key.=.$tokens[$len][0].===
12df00 20 27 27 20 3f 20 27 5f 65 6d 70 74 79 5f 27 20 3a 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b .''.?.'_empty_'.:.$tokens[$len][
12df20 30 5d 3b 0a 69 66 20 28 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 44 45 0];.if.(($this->flags.&.self::DE
12df40 54 45 43 54 5f 4b 45 59 5f 43 4f 4e 46 4c 49 43 54 53 29 20 26 26 20 69 73 73 65 74 28 24 74 6f TECT_KEY_CONFLICTS).&&.isset($to
12df60 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 2d 3e 7b 24 6b 65 79 7d 29 29 20 7b 0a 24 65 72 72 53 74 72 kens[$len-2]->{$key})).{.$errStr
12df80 20 3d 20 27 50 61 72 73 65 20 65 72 72 6f 72 20 6f 6e 20 6c 69 6e 65 20 27 20 2e 20 28 24 79 79 .=.'Parse.error.on.line.'...($yy
12dfa0 6c 69 6e 65 6e 6f 2b 31 29 20 2e 20 22 3a 5c 6e 22 3b 0a 24 65 72 72 53 74 72 20 2e 3d 20 24 74 lineno+1)...":\n";.$errStr..=.$t
12dfc0 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 73 68 6f 77 50 6f 73 69 74 69 6f 6e 28 29 20 2e 20 22 5c 6e his->lexer->showPosition()..."\n
12dfe0 22 3b 0a 24 65 72 72 53 74 72 20 2e 3d 20 22 44 75 70 6c 69 63 61 74 65 20 6b 65 79 3a 20 22 2e ";.$errStr..=."Duplicate.key:.".
12e000 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 30 5d 3b 0a 74 68 72 6f 77 20 6e 65 77 20 44 75 70 6c $tokens[$len][0];.throw.new.Dupl
12e020 69 63 61 74 65 4b 65 79 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 53 74 72 2c 20 24 74 6f 6b 65 icateKeyException($errStr,.$toke
12e040 6e 73 5b 24 6c 65 6e 5d 5b 30 5d 2c 20 61 72 72 61 79 28 27 6c 69 6e 65 27 20 3d 3e 20 24 79 79 ns[$len][0],.array('line'.=>.$yy
12e060 6c 69 6e 65 6e 6f 2b 31 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 28 24 74 68 69 73 2d 3e 66 6c lineno+1));.}.elseif.(($this->fl
12e080 61 67 73 20 26 20 73 65 6c 66 3a 3a 41 4c 4c 4f 57 5f 44 55 50 4c 49 43 41 54 45 5f 4b 45 59 53 ags.&.self::ALLOW_DUPLICATE_KEYS
12e0a0 29 20 26 26 20 69 73 73 65 74 28 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 2d 3e 7b 24 6b 65 ).&&.isset($tokens[$len-2]->{$ke
12e0c0 79 7d 29 29 20 7b 0a 24 64 75 70 6c 69 63 61 74 65 43 6f 75 6e 74 20 3d 20 31 3b 0a 64 6f 20 7b y})).{.$duplicateCount.=.1;.do.{
12e0e0 0a 24 64 75 70 6c 69 63 61 74 65 4b 65 79 20 3d 20 24 6b 65 79 20 2e 20 27 2e 27 20 2e 20 24 64 .$duplicateKey.=.$key...'.'...$d
12e100 75 70 6c 69 63 61 74 65 43 6f 75 6e 74 2b 2b 3b 0a 7d 20 77 68 69 6c 65 20 28 69 73 73 65 74 28 uplicateCount++;.}.while.(isset(
12e120 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 2d 3e 24 64 75 70 6c 69 63 61 74 65 4b 65 79 29 29 $tokens[$len-2]->$duplicateKey))
12e140 3b 0a 24 6b 65 79 20 3d 20 24 64 75 70 6c 69 63 61 74 65 4b 65 79 3b 0a 7d 0a 24 74 6f 6b 65 6e ;.$key.=.$duplicateKey;.}.$token
12e160 73 5b 24 6c 65 6e 2d 32 5d 2d 3e 24 6b 65 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b s[$len-2]->$key.=.$tokens[$len][
12e180 31 5d 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 38 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 1];.}.break;.case.18:.$yyval->to
12e1a0 6b 65 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 39 3a 0a 24 ken.=.array();.break;.case.19:.$
12e1c0 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 31 5d 3b 0a yyval->token.=.$tokens[$len-1];.
12e1e0 62 72 65 61 6b 3b 0a 63 61 73 65 20 32 30 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 break;.case.20:.$yyval->token.=.
12e200 61 72 72 61 79 28 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 array($tokens[$len]);.break;.cas
12e220 65 20 32 31 3a 0a 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 5b 5d 20 3d 20 24 74 6f 6b 65 6e e.21:.$tokens[$len-2][].=.$token
12e240 73 5b 24 6c 65 6e 5d 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 s[$len];.$yyval->token.=.$tokens
12e260 5b 24 6c 65 6e 2d 32 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 55 [$len-2];.break;.}..return.new.U
12e280 6e 64 65 66 69 6e 65 64 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 ndefined();.}..private.function.
12e2a0 73 74 72 69 6e 67 49 6e 74 65 72 70 6f 6c 61 74 69 6f 6e 28 24 6d 61 74 63 68 29 0a 7b 0a 73 77 stringInterpolation($match).{.sw
12e2c0 69 74 63 68 20 28 24 6d 61 74 63 68 5b 30 5d 29 20 7b 0a 63 61 73 65 20 27 5c 5c 5c 5c 27 3a 0a itch.($match[0]).{.case.'\\\\':.
12e2e0 72 65 74 75 72 6e 20 27 5c 5c 27 3b 0a 63 61 73 65 20 27 5c 22 27 3a 0a 72 65 74 75 72 6e 20 27 return.'\\';.case.'\"':.return.'
12e300 22 27 3b 0a 63 61 73 65 20 27 5c 62 27 3a 0a 72 65 74 75 72 6e 20 63 68 72 28 38 29 3b 0a 63 61 "';.case.'\b':.return.chr(8);.ca
12e320 73 65 20 27 5c 66 27 3a 0a 72 65 74 75 72 6e 20 63 68 72 28 31 32 29 3b 0a 63 61 73 65 20 27 5c se.'\f':.return.chr(12);.case.'\
12e340 6e 27 3a 0a 72 65 74 75 72 6e 20 22 5c 6e 22 3b 0a 63 61 73 65 20 27 5c 72 27 3a 0a 72 65 74 75 n':.return."\n";.case.'\r':.retu
12e360 72 6e 20 22 5c 72 22 3b 0a 63 61 73 65 20 27 5c 74 27 3a 0a 72 65 74 75 72 6e 20 22 5c 74 22 3b rn."\r";.case.'\t':.return."\t";
12e380 0a 63 61 73 65 20 27 5c 2f 27 3a 0a 72 65 74 75 72 6e 20 22 2f 22 3b 0a 64 65 66 61 75 6c 74 3a .case.'\/':.return."/";.default:
12e3a0 0a 72 65 74 75 72 6e 20 68 74 6d 6c 5f 65 6e 74 69 74 79 5f 64 65 63 6f 64 65 28 27 26 23 78 27 .return.html_entity_decode('&#x'
12e3c0 2e 6c 74 72 69 6d 28 73 75 62 73 74 72 28 24 6d 61 74 63 68 5b 30 5d 2c 20 32 29 2c 20 27 30 27 .ltrim(substr($match[0],.2),.'0'
12e3e0 29 2e 27 3b 27 2c 20 30 2c 20 27 55 54 46 2d 38 27 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 ).';',.0,.'UTF-8');.}.}..private
12e400 20 66 75 6e 63 74 69 6f 6e 20 70 6f 70 53 74 61 63 6b 28 24 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e .function.popStack($n).{.$this->
12e420 73 74 61 63 6b 20 3d 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 74 68 69 73 2d 3e 73 74 61 63 6b stack.=.array_slice($this->stack
12e440 2c 20 30 2c 20 2d 20 28 32 20 2a 20 24 6e 29 29 3b 0a 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 20 ,.0,.-.(2.*.$n));.$this->vstack.
12e460 3d 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 2c 20 30 2c 20 =.array_slice($this->vstack,.0,.
12e480 2d 20 24 6e 29 3b 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 20 3d 20 61 72 72 61 79 5f 73 6c 69 -.$n);.$this->lstack.=.array_sli
12e4a0 63 65 28 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 2c 20 30 2c 20 2d 20 24 6e 29 3b 0a 7d 0a 0a 70 ce($this->lstack,.0,.-.$n);.}..p
12e4c0 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 65 78 28 29 0a 7b 0a 24 74 6f 6b 65 6e 20 3d rivate.function.lex().{.$token.=
12e4e0 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 6c 65 78 28 29 20 3f 3a 20 31 3b 20 0a 20 0a 20 69 .$this->lexer->lex().?:.1;.....i
12e500 66 20 28 21 69 73 5f 6e 75 6d 65 72 69 63 28 24 74 6f 6b 65 6e 29 29 20 7b 0a 24 74 6f 6b 65 6e f.(!is_numeric($token)).{.$token
12e520 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 79 6d 62 6f 6c 73 5b 24 74 6f 6b 65 6e 5d 29 .=.isset($this->symbols[$token])
12e540 20 3f 20 24 74 68 69 73 2d 3e 73 79 6d 62 6f 6c 73 5b 24 74 6f 6b 65 6e 5d 20 3a 20 24 74 6f 6b .?.$this->symbols[$token].:.$tok
12e560 65 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 en;.}..return.$token;.}..private
12e580 20 66 75 6e 63 74 69 6f 6e 20 66 61 69 6c 4f 6e 42 4f 4d 28 24 69 6e 70 75 74 29 0a 7b 0a 0a 20 .function.failOnBOM($input).{...
12e5a0 24 62 6f 6d 20 3d 20 22 5c 78 45 46 5c 78 42 42 5c 78 42 46 22 3b 0a 0a 69 66 20 28 73 75 62 73 $bom.=."\xEF\xBB\xBF";..if.(subs
12e5c0 74 72 28 24 69 6e 70 75 74 2c 20 30 2c 20 33 29 20 3d 3d 3d 20 24 62 6f 6d 29 20 7b 0a 24 74 68 tr($input,.0,.3).===.$bom).{.$th
12e5e0 69 73 2d 3e 70 61 72 73 65 45 72 72 6f 72 28 22 42 4f 4d 20 64 65 74 65 63 74 65 64 2c 20 6d 61 is->parseError("BOM.detected,.ma
12e600 6b 65 20 73 75 72 65 20 79 6f 75 72 20 69 6e 70 75 74 20 64 6f 65 73 20 6e 6f 74 20 69 6e 63 6c ke.sure.your.input.does.not.incl
12e620 75 64 65 20 61 20 55 6e 69 63 6f 64 65 20 42 79 74 65 2d 4f 72 64 65 72 2d 4d 61 72 6b 22 2c 20 ude.a.Unicode.Byte-Order-Mark",.
12e640 61 72 72 61 79 28 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a array());.}.}.}.<?php...........
12e660 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 namespace.Seld\JsonLint;.......c
12e680 6c 61 73 73 20 4c 65 78 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 45 4f 46 20 3d 20 31 3b 0a 70 lass.Lexer.{.private.$EOF.=.1;.p
12e6a0 72 69 76 61 74 65 20 24 72 75 6c 65 73 20 3d 20 61 72 72 61 79 28 0a 30 20 3d 3e 20 27 2f 5e 5c rivate.$rules.=.array(.0.=>.'/^\
12e6c0 73 2b 2f 27 2c 0a 31 20 3d 3e 20 27 2f 5e 2d 3f 28 5b 30 2d 39 5d 7c 5b 31 2d 39 5d 5b 30 2d 39 s+/',.1.=>.'/^-?([0-9]|[1-9][0-9
12e6e0 5d 2b 29 28 5c 2e 5b 30 2d 39 5d 2b 29 3f 28 5b 65 45 5d 5b 2b 2d 5d 3f 5b 30 2d 39 5d 2b 29 3f ]+)(\.[0-9]+)?([eE][+-]?[0-9]+)?
12e700 5c 62 2f 27 2c 0a 32 20 3d 3e 20 27 7b 5e 22 28 3f 3a 5c 5c 5c 5c 5b 22 62 66 6e 72 74 2f 5c 5c \b/',.2.=>.'{^"(?:\\\\["bfnrt/\\
12e720 5c 5c 5d 7c 5c 5c 5c 5c 75 5b 61 2d 66 41 2d 46 30 2d 39 5d 7b 34 7d 7c 5b 5e 5c 30 2d 5c 78 30 \\]|\\\\u[a-fA-F0-9]{4}|[^\0-\x0
12e740 39 5c 78 30 61 2d 5c 78 31 66 5c 5c 5c 5c 22 5d 2b 29 2a 22 7d 27 2c 0a 33 20 3d 3e 20 27 2f 5e 9\x0a-\x1f\\\\"]+)*"}',.3.=>.'/^
12e760 5c 7b 2f 27 2c 0a 34 20 3d 3e 20 27 2f 5e 5c 7d 2f 27 2c 0a 35 20 3d 3e 20 27 2f 5e 5c 5b 2f 27 \{/',.4.=>.'/^\}/',.5.=>.'/^\[/'
12e780 2c 0a 36 20 3d 3e 20 27 2f 5e 5c 5d 2f 27 2c 0a 37 20 3d 3e 20 27 2f 5e 2c 2f 27 2c 0a 38 20 3d ,.6.=>.'/^\]/',.7.=>.'/^,/',.8.=
12e7a0 3e 20 27 2f 5e 3a 2f 27 2c 0a 39 20 3d 3e 20 27 2f 5e 74 72 75 65 5c 62 2f 27 2c 0a 31 30 20 3d >.'/^:/',.9.=>.'/^true\b/',.10.=
12e7c0 3e 20 27 2f 5e 66 61 6c 73 65 5c 62 2f 27 2c 0a 31 31 20 3d 3e 20 27 2f 5e 6e 75 6c 6c 5c 62 2f >.'/^false\b/',.11.=>.'/^null\b/
12e7e0 27 2c 0a 31 32 20 3d 3e 20 27 2f 5e 24 2f 27 2c 0a 31 33 20 3d 3e 20 27 2f 5e 2e 2f 27 2c 0a 29 ',.12.=>.'/^$/',.13.=>.'/^./',.)
12e800 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 64 69 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 0a ;..private.$conditions.=.array(.
12e820 22 49 4e 49 54 49 41 4c 22 20 3d 3e 20 61 72 72 61 79 28 0a 22 72 75 6c 65 73 22 20 3d 3e 20 61 "INITIAL".=>.array(."rules".=>.a
12e840 72 72 61 79 28 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39 2c 31 30 2c 31 31 2c 31 rray(0,1,2,3,4,5,6,7,8,9,10,11,1
12e860 32 2c 31 33 29 2c 0a 22 69 6e 63 6c 75 73 69 76 65 22 20 3d 3e 20 74 72 75 65 2c 0a 29 2c 0a 29 2,13),."inclusive".=>.true,.),.)
12e880 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 3b 0a 70 72 69 76 ;..private.$conditionStack;.priv
12e8a0 61 74 65 20 24 69 6e 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 6d 6f 72 65 3b 0a 70 72 69 76 61 ate.$input;.private.$more;.priva
12e8c0 74 65 20 24 64 6f 6e 65 3b 0a 70 72 69 76 61 74 65 20 24 6d 61 74 63 68 65 64 3b 0a 0a 70 75 62 te.$done;.private.$matched;..pub
12e8e0 6c 69 63 20 24 6d 61 74 63 68 3b 0a 70 75 62 6c 69 63 20 24 79 79 6c 69 6e 65 6e 6f 3b 0a 70 75 lic.$match;.public.$yylineno;.pu
12e900 62 6c 69 63 20 24 79 79 6c 65 6e 67 3b 0a 70 75 62 6c 69 63 20 24 79 79 74 65 78 74 3b 0a 70 75 blic.$yyleng;.public.$yytext;.pu
12e920 62 6c 69 63 20 24 79 79 6c 6c 6f 63 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c blic.$yylloc;..public.function.l
12e940 65 78 28 29 0a 7b 0a 24 72 20 3d 20 24 74 68 69 73 2d 3e 6e 65 78 74 28 29 3b 0a 69 66 20 28 21 ex().{.$r.=.$this->next();.if.(!
12e960 24 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e 65 64 29 20 7b 0a 72 65 74 75 72 $r.instanceof.Undefined).{.retur
12e980 6e 20 24 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 65 78 28 29 3b 0a 7d 0a n.$r;.}..return.$this->lex();.}.
12e9a0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 70 75 74 28 24 69 6e 70 75 74 .public.function.setInput($input
12e9c0 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 24 74 68 69 73 ).{.$this->input.=.$input;.$this
12e9e0 2d 3e 6d 6f 72 65 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 64 6f 6e 65 20 3d 20 66 61 ->more.=.false;.$this->done.=.fa
12ea00 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 20 3d 20 24 74 68 69 73 2d 3e 79 79 lse;.$this->yylineno.=.$this->yy
12ea20 6c 65 6e 67 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 79 79 74 65 78 74 20 3d 20 24 74 68 69 73 2d leng.=.0;.$this->yytext.=.$this-
12ea40 3e 6d 61 74 63 68 65 64 20 3d 20 24 74 68 69 73 2d 3e 6d 61 74 63 68 20 3d 20 27 27 3b 0a 24 74 >matched.=.$this->match.=.'';.$t
12ea60 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 20 3d 20 61 72 72 61 79 28 27 49 4e 49 his->conditionStack.=.array('INI
12ea80 54 49 41 4c 27 29 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 20 3d 20 61 72 72 61 79 28 27 66 TIAL');.$this->yylloc.=.array('f
12eaa0 69 72 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 31 2c 20 27 66 69 72 73 74 5f 63 6f 6c 75 6d 6e 27 20 irst_line'.=>.1,.'first_column'.
12eac0 3d 3e 20 30 2c 20 27 6c 61 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 31 2c 20 27 6c 61 73 74 5f 63 6f =>.0,.'last_line'.=>.1,.'last_co
12eae0 6c 75 6d 6e 27 20 3d 3e 20 30 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 lumn'.=>.0);..return.$this;.}..p
12eb00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 77 50 6f 73 69 74 69 6f 6e 28 29 0a 7b 0a ublic.function.showPosition().{.
12eb20 24 70 72 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 27 27 2c 20 24 74 68 $pre.=.str_replace("\n",.'',.$th
12eb40 69 73 2d 3e 67 65 74 50 61 73 74 49 6e 70 75 74 28 29 29 3b 0a 24 63 20 3d 20 73 74 72 5f 72 65 is->getPastInput());.$c.=.str_re
12eb60 70 65 61 74 28 27 2d 27 2c 20 6d 61 78 28 30 2c 20 73 74 72 6c 65 6e 28 24 70 72 65 29 20 2d 20 peat('-',.max(0,.strlen($pre).-.
12eb80 31 29 29 3b 20 0a 0a 72 65 74 75 72 6e 20 24 70 72 65 20 2e 20 73 74 72 5f 72 65 70 6c 61 63 65 1));...return.$pre...str_replace
12eba0 28 22 5c 6e 22 2c 20 27 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 55 70 63 6f 6d 69 6e 67 49 6e 70 ("\n",.'',.$this->getUpcomingInp
12ebc0 75 74 28 29 29 20 2e 20 22 5c 6e 22 20 2e 20 24 63 20 2e 20 22 5e 22 3b 0a 7d 0a 0a 70 75 62 6c ut())..."\n"...$c..."^";.}..publ
12ebe0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 73 74 49 6e 70 75 74 28 29 0a 7b 0a 24 70 61 ic.function.getPastInput().{.$pa
12ec00 73 74 20 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 2c 20 30 2c 20 73 st.=.substr($this->matched,.0,.s
12ec20 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 29 20 2d 20 73 74 72 6c 65 6e 28 24 trlen($this->matched).-.strlen($
12ec40 74 68 69 73 2d 3e 6d 61 74 63 68 29 29 3b 0a 0a 72 65 74 75 72 6e 20 28 73 74 72 6c 65 6e 28 24 this->match));..return.(strlen($
12ec60 70 61 73 74 29 20 3e 20 32 30 20 3f 20 27 2e 2e 2e 27 20 3a 20 27 27 29 20 2e 20 73 75 62 73 74 past).>.20.?.'...'.:.'')...subst
12ec80 72 28 24 70 61 73 74 2c 20 2d 32 30 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f r($past,.-20);.}..public.functio
12eca0 6e 20 67 65 74 55 70 63 6f 6d 69 6e 67 49 6e 70 75 74 28 29 0a 7b 0a 24 6e 65 78 74 20 3d 20 24 n.getUpcomingInput().{.$next.=.$
12ecc0 74 68 69 73 2d 3e 6d 61 74 63 68 3b 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 6e 65 78 74 29 20 3c this->match;.if.(strlen($next).<
12ece0 20 32 30 29 20 7b 0a 24 6e 65 78 74 20 2e 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 69 6e .20).{.$next..=.substr($this->in
12ed00 70 75 74 2c 20 30 2c 20 32 30 20 2d 20 73 74 72 6c 65 6e 28 24 6e 65 78 74 29 29 3b 0a 7d 0a 0a put,.0,.20.-.strlen($next));.}..
12ed20 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 6e 65 78 74 2c 20 30 2c 20 32 30 29 20 2e 20 28 73 return.substr($next,.0,.20)...(s
12ed40 74 72 6c 65 6e 28 24 6e 65 78 74 29 20 3e 20 32 30 20 3f 20 27 2e 2e 2e 27 20 3a 20 27 27 29 3b trlen($next).>.20.?.'...'.:.'');
12ed60 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 45 72 72 6f .}..protected.function.parseErro
12ed80 72 28 24 73 74 72 2c 20 24 68 61 73 68 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 r($str,.$hash).{.throw.new.\Exce
12eda0 70 74 69 6f 6e 28 24 73 74 72 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e ption($str);.}..private.function
12edc0 20 6e 65 78 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 6f 6e 65 29 20 7b 0a 72 65 74 .next().{.if.($this->done).{.ret
12ede0 75 72 6e 20 24 74 68 69 73 2d 3e 45 4f 46 3b 0a 7d 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6e urn.$this->EOF;.}.if.(!$this->in
12ee00 70 75 74 29 20 7b 0a 24 74 68 69 73 2d 3e 64 6f 6e 65 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 74 put).{.$this->done.=.true;.}..$t
12ee20 6f 6b 65 6e 20 3d 20 6e 75 6c 6c 3b 0a 24 6d 61 74 63 68 20 3d 20 6e 75 6c 6c 3b 0a 24 63 6f 6c oken.=.null;.$match.=.null;.$col
12ee40 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 69 6e 65 73 20 3d 20 6e 75 6c 6c 3b 0a 0a 69 66 20 28 21 24 74 .=.null;.$lines.=.null;..if.(!$t
12ee60 68 69 73 2d 3e 6d 6f 72 65 29 20 7b 0a 24 74 68 69 73 2d 3e 79 79 74 65 78 74 20 3d 20 27 27 3b his->more).{.$this->yytext.=.'';
12ee80 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 20 3d 20 27 27 3b 0a 7d 0a 0a 24 72 75 6c 65 73 20 3d 20 .$this->match.=.'';.}..$rules.=.
12eea0 24 74 68 69 73 2d 3e 67 65 74 43 75 72 72 65 6e 74 52 75 6c 65 73 28 29 3b 0a 24 72 75 6c 65 73 $this->getCurrentRules();.$rules
12eec0 4c 65 6e 20 3d 20 63 6f 75 6e 74 28 24 72 75 6c 65 73 29 3b 0a 0a 66 6f 72 20 28 24 69 3d 30 3b Len.=.count($rules);..for.($i=0;
12eee0 20 24 69 20 3c 20 24 72 75 6c 65 73 4c 65 6e 3b 20 24 69 2b 2b 29 20 7b 0a 69 66 20 28 70 72 65 .$i.<.$rulesLen;.$i++).{.if.(pre
12ef00 67 5f 6d 61 74 63 68 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 72 75 6c 65 73 5b 24 69 5d 5d g_match($this->rules[$rules[$i]]
12ef20 2c 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 70 72 65 67 5f ,.$this->input,.$match)).{.preg_
12ef40 6d 61 74 63 68 5f 61 6c 6c 28 27 2f 5c 6e 2e 2a 2f 27 2c 20 24 6d 61 74 63 68 5b 30 5d 2c 20 24 match_all('/\n.*/',.$match[0],.$
12ef60 6c 69 6e 65 73 29 3b 0a 24 6c 69 6e 65 73 20 3d 20 24 6c 69 6e 65 73 5b 30 5d 3b 0a 69 66 20 28 lines);.$lines.=.$lines[0];.if.(
12ef80 24 6c 69 6e 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 20 2b 3d 20 63 6f 75 $lines).{.$this->yylineno.+=.cou
12efa0 6e 74 28 24 6c 69 6e 65 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 20 3d 20 61 nt($lines);.}..$this->yylloc.=.a
12efc0 72 72 61 79 28 0a 27 66 69 72 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 79 79 6c rray(.'first_line'.=>.$this->yyl
12efe0 6c 6f 63 5b 27 6c 61 73 74 5f 6c 69 6e 65 27 5d 2c 0a 27 6c 61 73 74 5f 6c 69 6e 65 27 20 3d 3e loc['last_line'],.'last_line'.=>
12f000 20 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 2b 31 2c 0a 27 66 69 72 73 74 5f 63 6f 6c 75 6d .$this->yylineno+1,.'first_colum
12f020 6e 27 20 3d 3e 20 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 5b 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e n'.=>.$this->yylloc['last_column
12f040 27 5d 2c 0a 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 24 6c 69 6e 65 73 20 3f 20 73 74 '],.'last_column'.=>.$lines.?.st
12f060 72 6c 65 6e 28 24 6c 69 6e 65 73 5b 63 6f 75 6e 74 28 24 6c 69 6e 65 73 29 20 2d 20 31 5d 29 20 rlen($lines[count($lines).-.1]).
12f080 2d 20 31 20 3a 20 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 5b 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e -.1.:.$this->yylloc['last_column
12f0a0 27 5d 20 2b 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 2c 0a 29 3b 0a 24 74 68 69 73 '].+.strlen($match[0]),.);.$this
12f0c0 2d 3e 79 79 74 65 78 74 20 2e 3d 20 24 6d 61 74 63 68 5b 30 5d 3b 0a 24 74 68 69 73 2d 3e 6d 61 ->yytext..=.$match[0];.$this->ma
12f0e0 74 63 68 20 2e 3d 20 24 6d 61 74 63 68 5b 30 5d 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 65 6e 67 20 tch..=.$match[0];.$this->yyleng.
12f100 3d 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 79 79 74 65 78 74 29 3b 0a 24 74 68 69 73 2d 3e =.strlen($this->yytext);.$this->
12f120 6d 6f 72 65 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 73 75 62 more.=.false;.$this->input.=.sub
12f140 73 74 72 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b str($this->input,.strlen($match[
12f160 30 5d 29 29 3b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 20 2e 3d 20 24 6d 61 74 63 68 5b 30 0]));.$this->matched..=.$match[0
12f180 5d 3b 0a 24 74 6f 6b 65 6e 20 3d 20 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 6d 41 63 74 69 6f 6e ];.$token.=.$this->performAction
12f1a0 28 24 72 75 6c 65 73 5b 24 69 5d 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 ($rules[$i],.$this->conditionSta
12f1c0 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 29 2d ck[count($this->conditionStack)-
12f1e0 31 5d 29 3b 0a 69 66 20 28 24 74 6f 6b 65 6e 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e 1]);.if.($token).{.return.$token
12f200 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 28 29 3b 0a 7d 0a 7d ;.}..return.new.Undefined();.}.}
12f220 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 3d 3d 20 22 22 29 20 7b 0a 72 65 74 ..if.($this->input.===."").{.ret
12f240 75 72 6e 20 24 74 68 69 73 2d 3e 45 4f 46 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 45 urn.$this->EOF;.}..$this->parseE
12f260 72 72 6f 72 28 0a 27 4c 65 78 69 63 61 6c 20 65 72 72 6f 72 20 6f 6e 20 6c 69 6e 65 20 27 20 2e rror(.'Lexical.error.on.line.'..
12f280 20 28 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 2b 31 29 20 2e 20 22 2e 20 55 6e 72 65 63 6f .($this->yylineno+1)..."..Unreco
12f2a0 67 6e 69 7a 65 64 20 74 65 78 74 2e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 73 68 6f 77 50 6f 73 gnized.text.\n"...$this->showPos
12f2c0 69 74 69 6f 6e 28 29 2c 0a 61 72 72 61 79 28 0a 27 74 65 78 74 27 20 3d 3e 20 22 22 2c 0a 27 74 ition(),.array(.'text'.=>."",.'t
12f2e0 6f 6b 65 6e 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e oken'.=>.null,.'line'.=>.$this->
12f300 79 79 6c 69 6e 65 6e 6f 2c 0a 29 0a 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 yylineno,.).);.}..private.functi
12f320 6f 6e 20 67 65 74 43 75 72 72 65 6e 74 52 75 6c 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 on.getCurrentRules().{.return.$t
12f340 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 73 5b 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e his->conditions[$this->condition
12f360 53 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 Stack[count($this->conditionStac
12f380 6b 29 2d 31 5d 5d 5b 27 72 75 6c 65 73 27 5d 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 k)-1]]['rules'];.}..private.func
12f3a0 74 69 6f 6e 20 70 65 72 66 6f 72 6d 41 63 74 69 6f 6e 28 24 61 76 6f 69 64 69 6e 67 5f 6e 61 6d tion.performAction($avoiding_nam
12f3c0 65 5f 63 6f 6c 6c 69 73 69 6f 6e 73 2c 20 24 59 59 5f 53 54 41 52 54 29 0a 7b 0a 73 77 69 74 63 e_collisions,.$YY_START).{.switc
12f3e0 68 20 28 24 61 76 6f 69 64 69 6e 67 5f 6e 61 6d 65 5f 63 6f 6c 6c 69 73 69 6f 6e 73 29 20 7b 0a h.($avoiding_name_collisions).{.
12f400 63 61 73 65 20 30 3a 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 3a 0a 72 65 74 75 72 6e 20 36 3b case.0:.break;.case.1:.return.6;
12f420 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 32 3a 0a 24 74 68 69 73 2d 3e 79 79 74 65 78 74 20 3d 20 .break;.case.2:.$this->yytext.=.
12f440 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 79 79 74 65 78 74 2c 20 31 2c 20 24 74 68 69 73 2d 3e substr($this->yytext,.1,.$this->
12f460 79 79 6c 65 6e 67 2d 32 29 3b 0a 0a 72 65 74 75 72 6e 20 34 3b 0a 63 61 73 65 20 33 3a 0a 72 65 yyleng-2);..return.4;.case.3:.re
12f480 74 75 72 6e 20 31 37 3b 0a 63 61 73 65 20 34 3a 0a 72 65 74 75 72 6e 20 31 38 3b 0a 63 61 73 65 turn.17;.case.4:.return.18;.case
12f4a0 20 35 3a 0a 72 65 74 75 72 6e 20 32 33 3b 0a 63 61 73 65 20 36 3a 0a 72 65 74 75 72 6e 20 32 34 .5:.return.23;.case.6:.return.24
12f4c0 3b 0a 63 61 73 65 20 37 3a 0a 72 65 74 75 72 6e 20 32 32 3b 0a 63 61 73 65 20 38 3a 0a 72 65 74 ;.case.7:.return.22;.case.8:.ret
12f4e0 75 72 6e 20 32 31 3b 0a 63 61 73 65 20 39 3a 0a 72 65 74 75 72 6e 20 31 30 3b 0a 63 61 73 65 20 urn.21;.case.9:.return.10;.case.
12f500 31 30 3a 0a 72 65 74 75 72 6e 20 31 31 3b 0a 63 61 73 65 20 31 31 3a 0a 72 65 74 75 72 6e 20 38 10:.return.11;.case.11:.return.8
12f520 3b 0a 63 61 73 65 20 31 32 3a 0a 72 65 74 75 72 6e 20 31 34 3b 0a 63 61 73 65 20 31 33 3a 0a 72 ;.case.12:.return.14;.case.13:.r
12f540 65 74 75 72 6e 20 27 49 4e 56 41 4c 49 44 27 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a eturn.'INVALID';.}.}.}.<?php....
12f560 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a .......namespace.Seld\JsonLint;.
12f580 0a 63 6c 61 73 73 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 .class.ParsingException.extends.
12f5a0 5c 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 74 61 69 6c 73 3b \Exception.{.protected.$details;
12f5c0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d ..public.function.__construct($m
12f5e0 65 73 73 61 67 65 2c 20 24 64 65 74 61 69 6c 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 essage,.$details.=.array()).{.$t
12f600 68 69 73 2d 3e 64 65 74 61 69 6c 73 20 3d 20 24 64 65 74 61 69 6c 73 3b 0a 70 61 72 65 6e 74 3a his->details.=.$details;.parent:
12f620 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 :__construct($message);.}..publi
12f640 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 74 61 69 6c 73 28 29 0a 7b 0a 72 65 74 75 72 6e c.function.getDetails().{.return
12f660 20 24 74 68 69 73 2d 3e 64 65 74 61 69 6c 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a .$this->details;.}.}.<?php......
12f680 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a 0a 63 .....namespace.Seld\JsonLint;..c
12f6a0 6c 61 73 73 20 55 6e 64 65 66 69 6e 65 64 0a 7b 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 lass.Undefined.{.}.Copyright.(c)
12f6c0 20 32 30 31 35 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 0a 0a 50 65 72 6d 69 73 73 69 6f 6e .2015.Jordi.Boggiano..Permission
12f6e0 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 .is.hereby.granted,.free.of.char
12f700 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f ge,.to.any.person.obtaining.a.co
12f720 70 79 0a 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 py.of.this.software.and.associat
12f740 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 ed.documentation.files.(the."Sof
12f760 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 tware"),.to.deal.in.the.Software
12f780 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 .without.restriction,.including.
12f7a0 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 74 6f without.limitation.the.rights.to
12f7c0 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 .use,.copy,.modify,.merge,.publi
12f7e0 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f sh,.distribute,.sublicense,.and/
12f800 6f 72 20 73 65 6c 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 or.sell.copies.of.the.Software,.
12f820 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 and.to.permit.persons.to.whom.th
12f840 65 20 53 6f 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 0a 74 6f 20 64 6f 20 73 6f e.Software.is.furnished.to.do.so
12f860 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 ,.subject.to.the.following.condi
12f880 74 69 6f 6e 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 tions:..The.above.copyright.noti
12f8a0 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 ce.and.this.permission.notice.sh
12f8c0 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 20 6f 72 all.be.included.in.all.copies.or
12f8e0 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 .substantial.portions.of.the.Sof
12f900 74 77 61 72 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 tware...THE.SOFTWARE.IS.PROVIDED
12f920 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e ."AS.IS",.WITHOUT.WARRANTY.OF.AN
12f940 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c Y.KIND,.EXPRESS.OR.IMPLIED,.INCL
12f960 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 UDING.BUT.NOT.LIMITED.TO.THE.WAR
12f980 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 49 54 4e RANTIES.OF.MERCHANTABILITY,.FITN
12f9a0 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 ESS.FOR.A.PARTICULAR.PURPOSE.AND
12f9c0 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 .NONINFRINGEMENT..IN.NO.EVENT.SH
12f9e0 41 4c 4c 20 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c ALL.THE.AUTHORS.OR.COPYRIGHT.HOL
12fa00 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 DERS.BE.LIABLE.FOR.ANY.CLAIM,.DA
12fa20 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 MAGES.OR.OTHER.LIABILITY,.WHETHE
12fa40 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 R.IN.AN.ACTION.OF.CONTRACT,.TORT
12fa60 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 4f 55 54 .OR.OTHERWISE,.ARISING.FROM,.OUT
12fa80 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f .OF.OR.IN.CONNECTION.WITH.THE.SO
12faa0 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 FTWARE.OR.THE.USE.OR.OTHER.DEALI
12fac0 4e 47 53 20 49 4e 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 0a 0a 72 65 71 75 NGS.IN.THE.SOFTWARE..<?php..requ
12fae0 69 72 65 20 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 76 65 6e 64 6f 72 2f 61 75 74 6f 6c 6f 61 64 ire.__DIR__.'/../vendor/autoload
12fb00 2e 70 68 70 27 3b 0a 0a 65 63 68 6f 20 27 53 61 79 20 68 65 6c 6c 6f 20 28 76 69 73 69 62 6c 65 .php';..echo.'Say.hello.(visible
12fb20 29 3a 20 27 3b 0a 0a 24 61 6e 73 77 65 72 20 3d 20 53 65 6c 64 5c 43 6c 69 50 72 6f 6d 70 74 5c ):.';..$answer.=.Seld\CliPrompt\
12fb40 43 6c 69 50 72 6f 6d 70 74 3a 3a 70 72 6f 6d 70 74 28 29 3b 0a 0a 65 63 68 6f 20 27 59 6f 75 20 CliPrompt::prompt();..echo.'You.
12fb60 61 6e 73 77 65 72 65 64 3a 20 27 2e 24 61 6e 73 77 65 72 20 2e 20 50 48 50 5f 45 4f 4c 3b 0a 0a answered:.'.$answer...PHP_EOL;..
12fb80 65 63 68 6f 20 27 53 61 79 20 68 65 6c 6c 6f 20 28 68 69 64 64 65 6e 29 3a 20 27 3b 0a 0a 24 61 echo.'Say.hello.(hidden):.';..$a
12fba0 6e 73 77 65 72 20 3d 20 53 65 6c 64 5c 43 6c 69 50 72 6f 6d 70 74 5c 43 6c 69 50 72 6f 6d 70 74 nswer.=.Seld\CliPrompt\CliPrompt
12fbc0 3a 3a 68 69 64 64 65 6e 50 72 6f 6d 70 74 28 29 3b 0a 0a 65 63 68 6f 20 27 59 6f 75 20 61 6e 73 ::hiddenPrompt();..echo.'You.ans
12fbe0 77 65 72 65 64 3a 20 27 2e 24 61 6e 73 77 65 72 20 2e 20 50 48 50 5f 45 4f 4c 3b 0a 3c 3f 70 68 wered:.'.$answer...PHP_EOL;.<?ph
12fc00 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 43 6c 69 50 72 p...........namespace.Seld\CliPr
12fc20 6f 6d 70 74 3b 0a 0a 63 6c 61 73 73 20 43 6c 69 50 72 6f 6d 70 74 0a 7b 0a 0a 0a 0a 0a 0a 70 75 ompt;..class.CliPrompt.{......pu
12fc40 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 6d 70 74 28 29 0a 7b 0a blic.static.function.prompt().{.
12fc60 24 73 74 64 69 6e 20 3d 20 66 6f 70 65 6e 28 27 70 68 70 3a 2f 2f 73 74 64 69 6e 27 2c 20 27 72 $stdin.=.fopen('php://stdin',.'r
12fc80 27 29 3b 0a 24 61 6e 73 77 65 72 20 3d 20 73 65 6c 66 3a 3a 74 72 69 6d 41 6e 73 77 65 72 28 66 ');.$answer.=.self::trimAnswer(f
12fca0 67 65 74 73 28 24 73 74 64 69 6e 2c 20 34 30 39 36 29 29 3b 0a 66 63 6c 6f 73 65 28 24 73 74 64 gets($stdin,.4096));.fclose($std
12fcc0 69 6e 29 3b 0a 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a in);..return.$answer;.}.........
12fce0 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 69 64 64 65 6e 50 ..public.static.function.hiddenP
12fd00 72 6f 6d 70 74 28 24 61 6c 6c 6f 77 46 61 6c 6c 62 61 63 6b 20 3d 20 66 61 6c 73 65 29 0a 7b 0a rompt($allowFallback.=.false).{.
12fd20 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 ..if.(defined('PHP_WINDOWS_VERSI
12fd40 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 0a 20 24 65 78 65 20 3d 20 5f 5f 44 49 52 5f 5f 2e 27 ON_BUILD')).{...$exe.=.__DIR__.'
12fd60 5c 5c 2e 2e 5c 5c 72 65 73 5c 5c 68 69 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 27 3b 0a 0a 0a 20 \\..\\res\\hiddeninput.exe';....
12fd80 69 66 20 28 27 70 68 61 72 3a 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 5f 5f 46 49 4c 45 5f 5f 2c if.('phar:'.===.substr(__FILE__,
12fda0 20 30 2c 20 35 29 29 20 7b 0a 24 74 6d 70 45 78 65 20 3d 20 73 79 73 5f 67 65 74 5f 74 65 6d 70 .0,.5)).{.$tmpExe.=.sys_get_temp
12fdc0 5f 64 69 72 28 29 2e 27 2f 68 69 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 27 3b 0a 0a 0a 20 0a 20 _dir().'/hiddeninput.exe';......
12fde0 24 73 6f 75 72 63 65 20 3d 20 66 6f 70 65 6e 28 24 65 78 65 2c 20 27 72 27 29 3b 0a 24 74 61 72 $source.=.fopen($exe,.'r');.$tar
12fe00 67 65 74 20 3d 20 66 6f 70 65 6e 28 24 74 6d 70 45 78 65 2c 20 27 77 2b 27 29 3b 0a 73 74 72 65 get.=.fopen($tmpExe,.'w+');.stre
12fe20 61 6d 5f 63 6f 70 79 5f 74 6f 5f 73 74 72 65 61 6d 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 am_copy_to_stream($source,.$targ
12fe40 65 74 29 3b 0a 66 63 6c 6f 73 65 28 24 73 6f 75 72 63 65 29 3b 0a 66 63 6c 6f 73 65 28 24 74 61 et);.fclose($source);.fclose($ta
12fe60 72 67 65 74 29 3b 0a 75 6e 73 65 74 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 29 3b 0a rget);.unset($source,.$target);.
12fe80 0a 24 65 78 65 20 3d 20 24 74 6d 70 45 78 65 3b 0a 7d 0a 0a 24 61 6e 73 77 65 72 20 3d 20 73 65 .$exe.=.$tmpExe;.}..$answer.=.se
12fea0 6c 66 3a 3a 74 72 69 6d 41 6e 73 77 65 72 28 73 68 65 6c 6c 5f 65 78 65 63 28 24 65 78 65 29 29 lf::trimAnswer(shell_exec($exe))
12fec0 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 74 6d 70 45 78 65 29 29 20 7b 0a 75 6e 6c 69 6e ;....if.(isset($tmpExe)).{.unlin
12fee0 6b 28 24 74 6d 70 45 78 65 29 3b 0a 7d 0a 0a 0a 20 65 63 68 6f 20 50 48 50 5f 45 4f 4c 3b 0a 0a k($tmpExe);.}....echo.PHP_EOL;..
12ff00 72 65 74 75 72 6e 20 24 61 6e 73 77 65 72 3b 0a 7d 0a 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 return.$answer;.}..if.(file_exis
12ff20 74 73 28 27 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 27 29 29 20 7b 0a 0a 20 24 74 65 73 74 20 3d 20 ts('/usr/bin/env')).{...$test.=.
12ff40 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 25 73 20 2d 63 20 27 65 63 68 6f 20 4f 4b 27 20 32 3e "/usr/bin/env.%s.-c.'echo.OK'.2>
12ff60 20 2f 64 65 76 2f 6e 75 6c 6c 22 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 62 61 73 ./dev/null";.foreach.(array('bas
12ff80 68 27 2c 20 27 7a 73 68 27 2c 20 27 6b 73 68 27 2c 20 27 63 73 68 27 29 20 61 73 20 24 73 68 29 h',.'zsh',.'ksh',.'csh').as.$sh)
12ffa0 20 7b 0a 69 66 20 28 27 4f 4b 27 20 3d 3d 3d 20 72 74 72 69 6d 28 73 68 65 6c 6c 5f 65 78 65 63 .{.if.('OK'.===.rtrim(shell_exec
12ffc0 28 73 70 72 69 6e 74 66 28 24 74 65 73 74 2c 20 24 73 68 29 29 29 29 20 7b 0a 24 73 68 65 6c 6c (sprintf($test,.$sh)))).{.$shell
12ffe0 20 3d 20 24 73 68 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 .=.$sh;.break;.}.}..if.(isset($s
130000 68 65 6c 6c 29 29 20 7b 0a 24 72 65 61 64 43 6d 64 20 3d 20 28 24 73 68 65 6c 6c 20 3d 3d 3d 20 hell)).{.$readCmd.=.($shell.===.
130020 27 63 73 68 27 29 20 3f 20 27 73 65 74 20 6d 79 70 61 73 73 77 6f 72 64 20 3d 20 24 3c 27 20 3a 'csh').?.'set.mypassword.=.$<'.:
130040 20 27 72 65 61 64 20 2d 72 20 6d 79 70 61 73 73 77 6f 72 64 27 3b 0a 24 63 6f 6d 6d 61 6e 64 20 .'read.-r.mypassword';.$command.
130060 3d 20 73 70 72 69 6e 74 66 28 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 25 73 20 2d 63 20 27 73 =.sprintf("/usr/bin/env.%s.-c.'s
130080 74 74 79 20 2d 65 63 68 6f 3b 20 25 73 3b 20 73 74 74 79 20 65 63 68 6f 3b 20 65 63 68 6f 20 5c tty.-echo;.%s;.stty.echo;.echo.\
1300a0 24 6d 79 70 61 73 73 77 6f 72 64 27 22 2c 20 24 73 68 65 6c 6c 2c 20 24 72 65 61 64 43 6d 64 29 $mypassword'",.$shell,.$readCmd)
1300c0 3b 0a 24 76 61 6c 75 65 20 3d 20 73 65 6c 66 3a 3a 74 72 69 6d 41 6e 73 77 65 72 28 73 68 65 6c ;.$value.=.self::trimAnswer(shel
1300e0 6c 5f 65 78 65 63 28 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a 0a 0a 20 65 63 68 6f 20 50 48 50 5f 45 l_exec($command));....echo.PHP_E
130100 4f 4c 3b 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 OL;..return.$value;.}.}....if.(!
130120 24 61 6c 6c 6f 77 46 61 6c 6c 62 61 63 6b 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e $allowFallback).{.throw.new.\Run
130140 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 70 72 6f 6d 70 74 20 timeException('Could.not.prompt.
130160 66 6f 72 20 69 6e 70 75 74 20 69 6e 20 61 20 73 65 63 75 72 65 20 66 61 73 68 69 6f 6e 2c 20 61 for.input.in.a.secure.fashion,.a
130180 62 6f 72 74 69 6e 67 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 70 72 6f 6d 70 borting');.}..return.self::promp
1301a0 74 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 t();.}..private.static.function.
1301c0 74 72 69 6d 41 6e 73 77 65 72 28 24 73 74 72 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 trimAnswer($str).{.return.preg_r
1301e0 65 70 6c 61 63 65 28 27 7b 5c 72 3f 5c 6e 24 7d 44 27 2c 20 27 27 2c 20 24 73 74 72 29 3b 0a 7d eplace('{\r?\n$}D',.'',.$str);.}
130200 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 30 38 2c 20 47 72 61 64 75 61 20 4e 65 .}.Copyright.(c).2008,.Gradua.Ne
130220 74 77 6f 72 6b 73 0a 41 75 74 68 6f 72 3a 20 42 72 75 6e 6f 20 50 72 69 65 74 6f 20 52 65 69 73 tworks.Author:.Bruno.Prieto.Reis
130240 0a 41 6c 6c 20 72 69 67 68 74 73 20 72 65 73 65 72 76 65 64 2e 0a 0a 0a 52 65 64 69 73 74 72 69 .All.rights.reserved....Redistri
130260 62 75 74 69 6f 6e 20 61 6e 64 20 75 73 65 20 69 6e 20 73 6f 75 72 63 65 20 61 6e 64 20 62 69 6e bution.and.use.in.source.and.bin
130280 61 72 79 20 66 6f 72 6d 73 2c 20 77 69 74 68 20 6f 72 20 77 69 74 68 6f 75 74 0a 6d 6f 64 69 66 ary.forms,.with.or.without.modif
1302a0 69 63 61 74 69 6f 6e 2c 20 61 72 65 20 70 65 72 6d 69 74 74 65 64 20 70 72 6f 76 69 64 65 64 20 ication,.are.permitted.provided.
1302c0 74 68 61 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 that.the.following.conditions.ar
1302e0 65 20 6d 65 74 3a 0a 0a 20 2a 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 73 20 6f 66 20 73 6f e.met:...*.Redistributions.of.so
130300 75 72 63 65 20 63 6f 64 65 20 6d 75 73 74 20 72 65 74 61 69 6e 20 74 68 65 20 61 62 6f 76 65 20 urce.code.must.retain.the.above.
130320 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 2c 20 74 68 69 73 0a 20 20 20 6c 69 73 74 20 6f copyright.notice,.this....list.o
130340 66 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 f.conditions.and.the.following.d
130360 69 73 63 6c 61 69 6d 65 72 2e 0a 0a 20 2a 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 73 20 69 isclaimer....*.Redistributions.i
130380 6e 20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d 75 73 74 20 72 65 70 72 6f 64 75 63 65 20 74 68 65 n.binary.form.must.reproduce.the
1303a0 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 2c 0a 20 20 20 74 68 69 73 .above.copyright.notice,....this
1303c0 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 20 66 6f 6c 6c .list.of.conditions.and.the.foll
1303e0 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 20 69 6e 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 owing.disclaimer.in.the.document
130400 61 74 69 6f 6e 0a 20 20 20 61 6e 64 2f 6f 72 20 6f 74 68 65 72 20 6d 61 74 65 72 69 61 6c 73 20 ation....and/or.other.materials.
130420 70 72 6f 76 69 64 65 64 20 77 69 74 68 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2e 0a provided.with.the.distribution..
130440 0a 20 2a 20 4e 65 69 74 68 65 72 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 47 72 61 64 ..*.Neither.the.name.of.the.Grad
130460 75 61 20 4e 65 74 77 6f 72 6b 73 20 6e 6f 72 20 74 68 65 20 6e 61 6d 65 73 20 6f 66 20 69 74 73 ua.Networks.nor.the.names.of.its
130480 20 63 6f 6e 74 72 69 62 75 74 6f 72 73 0a 20 20 20 6d 61 79 20 62 65 20 75 73 65 64 20 74 6f 20 .contributors....may.be.used.to.
1304a0 65 6e 64 6f 72 73 65 20 6f 72 20 70 72 6f 6d 6f 74 65 20 70 72 6f 64 75 63 74 73 20 64 65 72 69 endorse.or.promote.products.deri
1304c0 76 65 64 20 66 72 6f 6d 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 0a 20 20 20 77 69 74 68 6f 75 ved.from.this.software....withou
1304e0 74 20 73 70 65 63 69 66 69 63 20 70 72 69 6f 72 20 77 72 69 74 74 65 6e 20 70 65 72 6d 69 73 73 t.specific.prior.written.permiss
130500 69 6f 6e 2e 0a 0a 54 48 49 53 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 ion...THIS.SOFTWARE.IS.PROVIDED.
130520 42 59 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 41 4e 44 20 43 4f 4e BY.THE.COPYRIGHT.HOLDERS.AND.CON
130540 54 52 49 42 55 54 4f 52 53 20 22 41 53 20 49 53 22 0a 41 4e 44 20 41 4e 59 20 45 58 50 52 45 53 TRIBUTORS."AS.IS".AND.ANY.EXPRES
130560 53 20 4f 52 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 2c 20 49 4e 43 4c 55 44 49 S.OR.IMPLIED.WARRANTIES,.INCLUDI
130580 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 2c 20 54 48 45 0a 49 4d 50 4c NG,.BUT.NOT.LIMITED.TO,.THE.IMPL
1305a0 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 IED.WARRANTIES.OF.MERCHANTABILIT
1305c0 59 20 41 4e 44 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 Y.AND.FITNESS.FOR.A.PARTICULAR.P
1305e0 55 52 50 4f 53 45 20 41 52 45 0a 44 49 53 43 4c 41 49 4d 45 44 2e 20 49 4e 20 4e 4f 20 45 56 45 URPOSE.ARE.DISCLAIMED..IN.NO.EVE
130600 4e 54 20 53 48 41 4c 4c 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 20 4f 52 NT.SHALL.THE.COPYRIGHT.HOLDER.OR
130620 20 43 4f 4e 54 52 49 42 55 54 4f 52 53 20 42 45 20 4c 49 41 42 4c 45 0a 46 4f 52 20 41 4e 59 20 .CONTRIBUTORS.BE.LIABLE.FOR.ANY.
130640 44 49 52 45 43 54 2c 20 49 4e 44 49 52 45 43 54 2c 20 49 4e 43 49 44 45 4e 54 41 4c 2c 20 53 50 DIRECT,.INDIRECT,.INCIDENTAL,.SP
130660 45 43 49 41 4c 2c 20 45 58 45 4d 50 4c 41 52 59 2c 20 4f 52 20 43 4f 4e 53 45 51 55 45 4e 54 49 ECIAL,.EXEMPLARY,.OR.CONSEQUENTI
130680 41 4c 0a 44 41 4d 41 47 45 53 20 28 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c AL.DAMAGES.(INCLUDING,.BUT.NOT.L
1306a0 49 4d 49 54 45 44 20 54 4f 2c 20 50 52 4f 43 55 52 45 4d 45 4e 54 20 4f 46 20 53 55 42 53 54 49 IMITED.TO,.PROCUREMENT.OF.SUBSTI
1306c0 54 55 54 45 20 47 4f 4f 44 53 20 4f 52 0a 53 45 52 56 49 43 45 53 3b 20 4c 4f 53 53 20 4f 46 20 TUTE.GOODS.OR.SERVICES;.LOSS.OF.
1306e0 55 53 45 2c 20 44 41 54 41 2c 20 4f 52 20 50 52 4f 46 49 54 53 3b 20 4f 52 20 42 55 53 49 4e 45 USE,.DATA,.OR.PROFITS;.OR.BUSINE
130700 53 53 20 49 4e 54 45 52 52 55 50 54 49 4f 4e 29 20 48 4f 57 45 56 45 52 0a 43 41 55 53 45 44 20 SS.INTERRUPTION).HOWEVER.CAUSED.
130720 41 4e 44 20 4f 4e 20 41 4e 59 20 54 48 45 4f 52 59 20 4f 46 20 4c 49 41 42 49 4c 49 54 59 2c 20 AND.ON.ANY.THEORY.OF.LIABILITY,.
130740 57 48 45 54 48 45 52 20 49 4e 20 43 4f 4e 54 52 41 43 54 2c 20 53 54 52 49 43 54 20 4c 49 41 42 WHETHER.IN.CONTRACT,.STRICT.LIAB
130760 49 4c 49 54 59 2c 0a 4f 52 20 54 4f 52 54 20 28 49 4e 43 4c 55 44 49 4e 47 20 4e 45 47 4c 49 47 ILITY,.OR.TORT.(INCLUDING.NEGLIG
130780 45 4e 43 45 20 4f 52 20 4f 54 48 45 52 57 49 53 45 29 20 41 52 49 53 49 4e 47 20 49 4e 20 41 4e ENCE.OR.OTHERWISE).ARISING.IN.AN
1307a0 59 20 57 41 59 20 4f 55 54 20 4f 46 20 54 48 45 20 55 53 45 0a 4f 46 20 54 48 49 53 20 53 4f 46 Y.WAY.OUT.OF.THE.USE.OF.THIS.SOF
1307c0 54 57 41 52 45 2c 20 45 56 45 4e 20 49 46 20 41 44 56 49 53 45 44 20 4f 46 20 54 48 45 20 50 4f TWARE,.EVEN.IF.ADVISED.OF.THE.PO
1307e0 53 53 49 42 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 2e 0a 3c 3f 70 68 70 0a SSIBILITY.OF.SUCH.DAMAGE..<?php.
130800 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e ........namespace.JsonSchema\Con
130820 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6c 6c 65 63 74 69 6f straints;........class.Collectio
130840 6e 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b nConstraint.extends.Constraint.{
130860 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 76 61 6c 75 65 ....public.function.check($value
130880 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 ,.$schema.=.null,.$path.=.null,.
1308a0 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 $i.=.null).{...if.(isset($schema
1308c0 2d 3e 6d 69 6e 49 74 65 6d 73 29 20 26 26 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 20 3c 20 24 ->minItems).&&.count($value).<.$
1308e0 73 63 68 65 6d 61 2d 3e 6d 69 6e 49 74 65 6d 73 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 schema->minItems).{.$this->addEr
130900 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 72 65 20 6d 75 73 74 20 62 65 20 61 20 6d 69 6e 69 ror($path,."There.must.be.a.mini
130920 6d 75 6d 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 49 74 65 6d 73 20 2e 20 22 mum.of."...$schema->minItems..."
130940 20 69 74 65 6d 73 20 69 6e 20 74 68 65 20 61 72 72 61 79 22 2c 20 27 6d 69 6e 49 74 65 6d 73 27 .items.in.the.array",.'minItems'
130960 2c 20 61 72 72 61 79 28 27 6d 69 6e 49 74 65 6d 73 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d ,.array('minItems'.=>.$schema->m
130980 69 6e 49 74 65 6d 73 2c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 inItems,));.}....if.(isset($sche
1309a0 6d 61 2d 3e 6d 61 78 49 74 65 6d 73 29 20 26 26 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 20 3e ma->maxItems).&&.count($value).>
1309c0 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 49 74 65 6d 73 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 .$schema->maxItems).{.$this->add
1309e0 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 72 65 20 6d 75 73 74 20 62 65 20 61 20 6d 61 Error($path,."There.must.be.a.ma
130a00 78 69 6d 75 6d 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 49 74 65 6d 73 20 2e ximum.of."...$schema->maxItems..
130a20 20 22 20 69 74 65 6d 73 20 69 6e 20 74 68 65 20 61 72 72 61 79 22 2c 20 27 6d 61 78 49 74 65 6d .".items.in.the.array",.'maxItem
130a40 73 27 2c 20 61 72 72 61 79 28 27 6d 61 78 49 74 65 6d 73 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d s',.array('maxItems'.=>.$schema-
130a60 3e 6d 61 78 49 74 65 6d 73 2c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 >maxItems,));.}....if.(isset($sc
130a80 68 65 6d 61 2d 3e 75 6e 69 71 75 65 49 74 65 6d 73 29 20 26 26 20 24 73 63 68 65 6d 61 2d 3e 75 hema->uniqueItems).&&.$schema->u
130aa0 6e 69 71 75 65 49 74 65 6d 73 29 20 7b 0a 24 75 6e 69 71 75 65 20 3d 20 24 76 61 6c 75 65 3b 0a niqueItems).{.$unique.=.$value;.
130ac0 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 20 26 26 20 63 6f 75 6e 74 28 24 76 if.(is_array($value).&&.count($v
130ae0 61 6c 75 65 29 29 20 7b 0a 24 75 6e 69 71 75 65 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e alue)).{.$unique.=.array_map(fun
130b00 63 74 69 6f 6e 28 24 65 29 20 7b 20 72 65 74 75 72 6e 20 76 61 72 5f 65 78 70 6f 72 74 28 24 65 ction($e).{.return.var_export($e
130b20 2c 20 74 72 75 65 29 3b 20 7d 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 69 66 20 28 63 6f 75 6e 74 ,.true);.},.$value);.}.if.(count
130b40 28 61 72 72 61 79 5f 75 6e 69 71 75 65 28 24 75 6e 69 71 75 65 29 29 20 21 3d 20 63 6f 75 6e 74 (array_unique($unique)).!=.count
130b60 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 ($value)).{.$this->addError($pat
130b80 68 2c 20 22 54 68 65 72 65 20 61 72 65 20 6e 6f 20 64 75 70 6c 69 63 61 74 65 73 20 61 6c 6c 6f h,."There.are.no.duplicates.allo
130ba0 77 65 64 20 69 6e 20 74 68 65 20 61 72 72 61 79 22 2c 20 27 75 6e 69 71 75 65 49 74 65 6d 73 27 wed.in.the.array",.'uniqueItems'
130bc0 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 69 74 65 );.}.}....if.(isset($schema->ite
130be0 6d 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 49 74 65 6d 73 28 24 76 61 6c ms)).{.$this->validateItems($val
130c00 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a ue,.$schema,.$path,.$i);.}.}....
130c20 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 ......protected.function.validat
130c40 65 49 74 65 6d 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 eItems($value,.$schema.=.null,.$
130c60 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 69 73 path.=.null,.$i.=.null).{.if.(is
130c80 5f 6f 62 6a 65 63 74 28 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 29 29 20 7b 0a 0a 20 66 6f 72 _object($schema->items)).{...for
130ca0 65 61 63 68 20 28 24 76 61 6c 75 65 20 61 73 20 24 6b 20 3d 3e 20 24 76 29 20 7b 0a 24 69 6e 69 each.($value.as.$k.=>.$v).{.$ini
130cc0 74 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 0a 0a tErrors.=.$this->getErrors();...
130ce0 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 2c 20 24 73 63 68 65 .$this->checkUndefined($v,.$sche
130d00 6d 61 2d 3e 69 74 65 6d 73 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b 0a 0a 0a 20 69 66 20 28 63 6f ma->items,.$path,.$k);....if.(co
130d20 75 6e 74 28 24 69 6e 69 74 45 72 72 6f 72 73 29 20 3c 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e unt($initErrors).<.count($this->
130d40 67 65 74 45 72 72 6f 72 73 28 29 29 20 26 26 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e getErrors()).&&.(isset($schema->
130d60 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 29 20 26 26 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 additionalItems).&&.$schema->add
130d80 69 74 69 6f 6e 61 6c 49 74 65 6d 73 20 21 3d 3d 20 66 61 6c 73 65 29 29 20 7b 0a 24 73 65 63 6f itionalItems.!==.false)).{.$seco
130da0 6e 64 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 24 ndErrors.=.$this->getErrors();.$
130dc0 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 2c 20 24 73 63 68 65 6d 61 this->checkUndefined($v,.$schema
130de0 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b 0a 7d ->additionalItems,.$path,.$k);.}
130e00 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 29 20 26 26 20 ....if.(isset($secondErrors).&&.
130e20 63 6f 75 6e 74 28 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 29 20 3c 20 63 6f 75 6e 74 28 24 74 68 count($secondErrors).<.count($th
130e40 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 is->getErrors())).{.$this->error
130e60 73 20 3d 20 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 3b 0a 7d 20 65 6c 73 65 20 69 66 20 28 69 73 s.=.$secondErrors;.}.else.if.(is
130e80 73 65 74 28 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 29 20 26 26 20 63 6f 75 6e 74 28 24 73 65 63 set($secondErrors).&&.count($sec
130ea0 6f 6e 64 45 72 72 6f 72 73 29 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 45 ondErrors).===.count($this->getE
130ec0 72 72 6f 72 73 28 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 69 6e 69 rrors())).{.$this->errors.=.$ini
130ee0 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 tErrors;.}.}.}.else.{...foreach.
130f00 28 24 76 61 6c 75 65 20 61 73 20 24 6b 20 3d 3e 20 24 76 29 20 7b 0a 69 66 20 28 61 72 72 61 79 ($value.as.$k.=>.$v).{.if.(array
130f20 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 6b 2c 20 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 29 29 _key_exists($k,.$schema->items))
130f40 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 2c 20 24 73 63 .{.$this->checkUndefined($v,.$sc
130f60 68 65 6d 61 2d 3e 69 74 65 6d 73 5b 24 6b 5d 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b 0a 7d 20 65 hema->items[$k],.$path,.$k);.}.e
130f80 6c 73 65 20 7b 0a 0a 20 69 66 20 28 70 72 6f 70 65 72 74 79 5f 65 78 69 73 74 73 28 24 73 63 68 lse.{...if.(property_exists($sch
130fa0 65 6d 61 2c 20 27 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 27 29 29 20 7b 0a 69 66 20 28 24 ema,.'additionalItems')).{.if.($
130fc0 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 20 21 3d 3d 20 66 61 6c 73 schema->additionalItems.!==.fals
130fe0 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 2c 20 24 e).{.$this->checkUndefined($v,.$
131000 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 2c 20 24 70 61 74 68 2c 20 schema->additionalItems,.$path,.
131020 24 6b 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 0a 24 $k);.}.else.{.$this->addError(.$
131040 70 61 74 68 2c 20 27 54 68 65 20 69 74 65 6d 20 27 20 2e 20 24 69 20 2e 20 27 5b 27 20 2e 20 24 path,.'The.item.'...$i...'['...$
131060 6b 20 2e 20 27 5d 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 20 61 6e 64 20 74 68 65 20 64 65 k...'].is.not.defined.and.the.de
131080 66 69 6e 69 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 61 64 64 69 74 69 6f 6e finition.does.not.allow.addition
1310a0 61 6c 20 69 74 65 6d 73 27 2c 20 27 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 27 2c 20 61 72 al.items',.'additionalItems',.ar
1310c0 72 61 79 28 27 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 27 20 3d 3e 20 24 73 63 68 65 6d 61 ray('additionalItems'.=>.$schema
1310e0 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 2c 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b ->additionalItems,));.}.}.else.{
131100 0a 0a 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 2c 20 6e 65 77 ...$this->checkUndefined($v,.new
131120 20 5c 73 74 64 43 6c 61 73 73 28 29 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b 0a 7d 0a 7d 0a 7d 0a .\stdClass(),.$path,.$k);.}.}.}.
131140 0a 0a 20 69 66 28 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 20 3e 20 30 29 20 7b 0a 66 6f 72 20 28 ...if(count($value).>.0).{.for.(
131160 24 6b 20 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 3b 20 24 6b 20 3c 20 63 6f 75 6e 74 28 24 $k.=.count($value);.$k.<.count($
131180 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 29 3b 20 24 6b 2b 2b 29 20 7b 0a 24 74 68 69 73 2d 3e 63 schema->items);.$k++).{.$this->c
1311a0 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 heckUndefined(new.UndefinedConst
1311c0 72 61 69 6e 74 28 29 2c 20 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 5b 24 6b 5d 2c 20 24 70 61 raint(),.$schema->items[$k],.$pa
1311e0 74 68 2c 20 24 6b 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a th,.$k);.}.}.}.}.}.<?php........
131200 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 .namespace.JsonSchema\Constraint
131220 73 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 5c 55 72 69 52 65 74 72 69 65 s;..use.JsonSchema\Uri\UriRetrie
131240 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 43 6f 6e 73 74 ver;........abstract.class.Const
131260 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 raint.implements.ConstraintInter
131280 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 68 65 63 6b 4d 6f 64 65 20 3d 20 73 65 face.{.protected.$checkMode.=.se
1312a0 6c 66 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 3b 0a 70 72 6f 74 65 63 74 65 64 lf::CHECK_MODE_NORMAL;.protected
1312c0 20 24 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 65 72 72 6f 72 .$uriRetriever;.protected.$error
1312e0 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 6c 69 6e 65 53 63 s.=.array();.protected.$inlineSc
131300 68 65 6d 61 50 72 6f 70 65 72 74 79 20 3d 20 27 24 73 63 68 65 6d 61 27 3b 0a 0a 63 6f 6e 73 74 hemaProperty.=.'$schema';..const
131320 20 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 43 48 .CHECK_MODE_NORMAL.=.1;.const.CH
131340 45 43 4b 5f 4d 4f 44 45 5f 54 59 50 45 5f 43 41 53 54 20 3d 20 32 3b 0a 0a 0a 0a 0a 70 72 69 76 ECK_MODE_TYPE_CAST.=.2;.....priv
131360 61 74 65 20 24 66 61 63 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ate.$factory;.......public.funct
131380 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 63 68 65 63 6b 4d 6f 64 65 20 3d 20 73 65 6c ion.__construct($checkMode.=.sel
1313a0 66 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 55 72 69 52 65 74 72 69 65 76 f::CHECK_MODE_NORMAL,.UriRetriev
1313c0 65 72 20 24 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 6e 75 6c 6c 2c 20 46 61 63 74 6f 72 79 er.$uriRetriever.=.null,.Factory
1313e0 20 24 66 61 63 74 6f 72 79 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b .$factory.=.null).{.$this->check
131400 4d 6f 64 65 20 3d 20 24 63 68 65 63 6b 4d 6f 64 65 3b 0a 24 74 68 69 73 2d 3e 75 72 69 52 65 74 Mode.=.$checkMode;.$this->uriRet
131420 72 69 65 76 65 72 20 3d 20 24 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 24 74 68 69 73 2d 3e 66 riever.=.$uriRetriever;.$this->f
131440 61 63 74 6f 72 79 20 3d 20 24 66 61 63 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 actory.=.$factory;.}.....public.
131460 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 29 0a 7b 0a 69 66 20 function.getUriRetriever().{.if.
131480 28 69 73 5f 6e 75 6c 6c 28 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 29 29 0a 7b (is_null($this->uriRetriever)).{
1314a0 0a 24 74 68 69 73 2d 3e 73 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 6e 65 77 20 55 72 69 52 .$this->setUriRetriever(new.UriR
1314c0 65 74 72 69 65 76 65 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 69 52 etriever);.}..return.$this->uriR
1314e0 65 74 72 69 65 76 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 etriever;.}.....public.function.
131500 67 65 74 46 61 63 74 6f 72 79 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 61 63 74 6f getFactory().{.if.(!$this->facto
131520 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 46 61 63 74 6f ry).{.$this->factory.=.new.Facto
131540 72 79 28 24 74 68 69 73 2d 3e 67 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 29 29 3b 0a 7d 0a ry($this->getUriRetriever());.}.
131560 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 61 63 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 .return.$this->factory;.}.....pu
131580 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 55 72 blic.function.setUriRetriever(Ur
1315a0 69 52 65 74 72 69 65 76 65 72 20 24 75 72 69 52 65 74 72 69 65 76 65 72 29 0a 7b 0a 24 74 68 69 iRetriever.$uriRetriever).{.$thi
1315c0 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 24 75 72 69 52 65 74 72 69 65 76 65 72 3b s->uriRetriever.=.$uriRetriever;
1315e0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 45 72 72 6f 72 28 .}.....public.function.addError(
131600 24 70 61 74 68 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 3d 27 27 2c $path,.$message,.$constraint='',
131620 20 61 72 72 61 79 20 24 6d 6f 72 65 3d 6e 75 6c 6c 29 0a 7b 0a 24 65 72 72 6f 72 20 3d 20 61 72 .array.$more=null).{.$error.=.ar
131640 72 61 79 28 0a 27 70 72 6f 70 65 72 74 79 27 20 3d 3e 20 24 70 61 74 68 2c 0a 27 6d 65 73 73 61 ray(.'property'.=>.$path,.'messa
131660 67 65 27 20 3d 3e 20 24 6d 65 73 73 61 67 65 2c 0a 27 63 6f 6e 73 74 72 61 69 6e 74 27 20 3d 3e ge'.=>.$message,.'constraint'.=>
131680 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 0a 29 3b 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 .$constraint,.);..if.(is_array($
1316a0 6d 6f 72 65 29 20 26 26 20 63 6f 75 6e 74 28 24 6d 6f 72 65 29 20 3e 20 30 29 0a 7b 0a 24 65 72 more).&&.count($more).>.0).{.$er
1316c0 72 6f 72 20 2b 3d 20 24 6d 6f 72 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d ror.+=.$more;.}..$this->errors[]
1316e0 20 3d 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e .=.$error;.}.....public.function
131700 20 61 64 64 45 72 72 6f 72 73 28 61 72 72 61 79 20 24 65 72 72 6f 72 73 29 0a 7b 0a 24 74 68 69 .addErrors(array.$errors).{.$thi
131720 73 2d 3e 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 65 s->errors.=.array_merge($this->e
131740 72 72 6f 72 73 2c 20 24 65 72 72 6f 72 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 rrors,.$errors);.}.....public.fu
131760 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 nction.getErrors().{.return.$thi
131780 73 2d 3e 65 72 72 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e s->errors;.}.....public.function
1317a0 20 69 73 56 61 6c 69 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 21 24 74 68 69 73 2d 3e 67 65 74 45 .isValid().{.return.!$this->getE
1317c0 72 72 6f 72 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 rrors();.}......public.function.
1317e0 72 65 73 65 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 reset().{.$this->errors.=.array(
131800 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e );.}..........protected.function
131820 20 69 6e 63 72 65 6d 65 6e 74 50 61 74 68 28 24 70 61 74 68 2c 20 24 69 29 0a 7b 0a 69 66 20 28 .incrementPath($path,.$i).{.if.(
131840 24 70 61 74 68 20 21 3d 3d 20 27 27 29 20 7b 0a 69 66 20 28 69 73 5f 69 6e 74 28 24 69 29 29 20 $path.!==.'').{.if.(is_int($i)).
131860 7b 0a 24 70 61 74 68 20 2e 3d 20 27 5b 27 20 2e 20 24 69 20 2e 20 27 5d 27 3b 0a 7d 20 65 6c 73 {.$path..=.'['...$i...']';.}.els
131880 65 69 66 20 28 24 69 20 3d 3d 20 27 27 29 20 7b 0a 24 70 61 74 68 20 2e 3d 20 27 27 3b 0a 7d 20 eif.($i.==.'').{.$path..=.'';.}.
1318a0 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 2e 3d 20 27 2e 27 20 2e 20 24 69 3b 0a 7d 0a 7d 20 65 6c else.{.$path..=.'.'...$i;.}.}.el
1318c0 73 65 20 7b 0a 24 70 61 74 68 20 3d 20 24 69 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 74 68 se.{.$path.=.$i;.}..return.$path
1318e0 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 ;.}..........protected.function.
131900 63 68 65 63 6b 41 72 72 61 79 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c checkArray($value,.$schema.=.nul
131920 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 l,.$path.=.null,.$i.=.null).{.$v
131940 61 6c 69 64 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 61 63 74 6f 72 79 28 29 2d 3e alidator.=.$this->getFactory()->
131960 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 63 6f 6c 6c 65 63 74 69 6f 6e 27 29 3b createInstanceFor('collection');
131980 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 .$validator->check($value,.$sche
1319a0 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 ma,.$path,.$i);..$this->addError
1319c0 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 0a s($validator->getErrors());.}...
1319e0 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b ........protected.function.check
131a00 4f 62 6a 65 63 74 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 Object($value,.$schema.=.null,.$
131a20 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 74 65 72 6e path.=.null,.$i.=.null,.$pattern
131a40 50 72 6f 70 65 72 74 69 65 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 Properties.=.null).{.$validator.
131a60 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 61 63 74 6f 72 79 28 29 2d 3e 63 72 65 61 74 65 49 6e 73 =.$this->getFactory()->createIns
131a80 74 61 6e 63 65 46 6f 72 28 27 6f 62 6a 65 63 74 27 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e tanceFor('object');.$validator->
131aa0 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 check($value,.$schema,.$path,.$i
131ac0 2c 20 24 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 ,.$patternProperties);..$this->a
131ae0 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 ddErrors($validator->getErrors()
131b00 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e );.}..........protected.function
131b20 20 63 68 65 63 6b 54 79 70 65 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c .checkType($value,.$schema.=.nul
131b40 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 l,.$path.=.null,.$i.=.null).{.$v
131b60 61 6c 69 64 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 61 63 74 6f 72 79 28 29 2d 3e alidator.=.$this->getFactory()->
131b80 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 74 79 70 65 27 29 3b 0a 24 76 61 6c 69 createInstanceFor('type');.$vali
131ba0 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 dator->check($value,.$schema,.$p
131bc0 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c ath,.$i);..$this->addErrors($val
131be0 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a idator->getErrors());.}.........
131c00 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 55 6e 64 65 66 69 6e .protected.function.checkUndefin
131c20 65 64 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 ed($value,.$schema.=.null,.$path
131c40 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 .=.null,.$i.=.null).{.$validator
131c60 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 61 63 74 6f 72 79 28 29 2d 3e 63 72 65 61 74 65 49 6e .=.$this->getFactory()->createIn
131c80 73 74 61 6e 63 65 46 6f 72 28 27 75 6e 64 65 66 69 6e 65 64 27 29 3b 0a 24 76 61 6c 69 64 61 74 stanceFor('undefined');.$validat
131ca0 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 or->check($value,.$schema,.$path
131cc0 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 ,.$i);..$this->addErrors($valida
131ce0 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 tor->getErrors());.}..........pr
131d00 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 53 74 72 69 6e 67 28 24 76 61 otected.function.checkString($va
131d20 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c lue,.$schema.=.null,.$path.=.nul
131d40 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 24 74 68 l,.$i.=.null).{.$validator.=.$th
131d60 69 73 2d 3e 67 65 74 46 61 63 74 6f 72 79 28 29 2d 3e 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 is->getFactory()->createInstance
131d80 46 6f 72 28 27 73 74 72 69 6e 67 27 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b For('string');.$validator->check
131da0 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 ($value,.$schema,.$path,.$i);..$
131dc0 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 this->addErrors($validator->getE
131de0 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 rrors());.}..........protected.f
131e00 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 4e 75 6d 62 65 72 28 24 76 61 6c 75 65 2c 20 24 73 63 68 unction.checkNumber($value,.$sch
131e20 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e ema.=.null,.$path.=.null,.$i.=.n
131e40 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 61 ull).{.$validator.=.$this->getFa
131e60 63 74 6f 72 79 28 29 2d 3e 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 6e 75 6d 62 ctory()->createInstanceFor('numb
131e80 65 72 27 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 er');.$validator->check($value,.
131ea0 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 $schema,.$path,.$i);..$this->add
131ec0 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b Errors($validator->getErrors());
131ee0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 .}..........protected.function.c
131f00 68 65 63 6b 45 6e 75 6d 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c heckEnum($value,.$schema.=.null,
131f20 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c .$path.=.null,.$i.=.null).{.$val
131f40 69 64 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 61 63 74 6f 72 79 28 29 2d 3e 63 72 idator.=.$this->getFactory()->cr
131f60 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 65 6e 75 6d 27 29 3b 0a 24 76 61 6c 69 64 61 eateInstanceFor('enum');.$valida
131f80 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 tor->check($value,.$schema,.$pat
131fa0 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 h,.$i);..$this->addErrors($valid
131fc0 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 ator->getErrors());.}..protected
131fe0 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 46 6f 72 6d 61 74 28 24 76 61 6c 75 65 2c 20 24 73 .function.checkFormat($value,.$s
132000 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d chema.=.null,.$path.=.null,.$i.=
132020 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 .null).{.$validator.=.$this->get
132040 46 61 63 74 6f 72 79 28 29 2d 3e 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 66 6f Factory()->createInstanceFor('fo
132060 72 6d 61 74 27 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 rmat');.$validator->check($value
132080 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 ,.$schema,.$path,.$i);..$this->a
1320a0 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 ddErrors($validator->getErrors()
1320c0 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 );.}......protected.function.ret
1320e0 72 69 65 76 65 55 72 69 28 24 75 72 69 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 rieveUri($uri).{.if.(null.===.$t
132100 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 55 his->uriRetriever).{.$this->setU
132120 72 69 52 65 74 72 69 65 76 65 72 28 6e 65 77 20 55 72 69 52 65 74 72 69 65 76 65 72 29 3b 0a 7d riRetriever(new.UriRetriever);.}
132140 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 .$jsonSchema.=.$this->uriRetriev
132160 65 72 2d 3e 72 65 74 72 69 65 76 65 28 24 75 72 69 29 3b 0a 0a 20 72 65 74 75 72 6e 20 24 6a 73 er->retrieve($uri);...return.$js
132180 6f 6e 53 63 68 65 6d 61 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 onSchema;.}.}.<?php.........name
1321a0 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 0a space.JsonSchema\Constraints;...
1321c0 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 ....interface.ConstraintInterfac
1321e0 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f e.{......public.function.getErro
132200 72 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 45 rs();.......public.function.addE
132220 72 72 6f 72 73 28 61 72 72 61 79 20 24 65 72 72 6f 72 73 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 rrors(array.$errors);..........p
132240 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 24 ublic.function.addError($path,.$
132260 6d 65 73 73 61 67 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 3d 27 27 2c 20 61 72 72 61 79 20 24 message,.$constraint='',.array.$
132280 6d 6f 72 65 3d 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f more=null);.......public.functio
1322a0 6e 20 69 73 56 61 6c 69 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 n.isValid();...........public.fu
1322c0 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e nction.check($value,.$schema.=.n
1322e0 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 3b 0a 7d ull,.$path.=.null,.$i.=.null);.}
132300 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 <?php.........namespace.JsonSche
132320 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 6e 75 ma\Constraints;........class.Enu
132340 6d 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b mConstraint.extends.Constraint.{
132360 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 ....public.function.check($eleme
132380 6e 74 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c nt,.$schema.=.null,.$path.=.null
1323a0 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 24 65 6c 65 6d 65 6e 74 20 69 6e ,.$i.=.null).{...if.($element.in
1323c0 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 20 26 26 20 stanceof.UndefinedConstraint.&&.
1323e0 28 21 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 29 20 7c 7c 20 21 24 (!isset($schema->required).||.!$
132400 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a schema->required)).{.return;.}..
132420 66 6f 72 65 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e 65 6e 75 6d 20 61 73 20 24 65 6e 75 6d 29 foreach.($schema->enum.as.$enum)
132440 20 7b 0a 24 74 79 70 65 20 3d 20 67 65 74 74 79 70 65 28 24 65 6c 65 6d 65 6e 74 29 3b 0a 69 66 .{.$type.=.gettype($element);.if
132460 20 28 24 74 79 70 65 20 3d 3d 3d 20 67 65 74 74 79 70 65 28 24 65 6e 75 6d 29 29 20 7b 0a 69 66 .($type.===.gettype($enum)).{.if
132480 20 28 24 74 79 70 65 20 3d 3d 20 22 6f 62 6a 65 63 74 22 29 20 7b 0a 69 66 20 28 24 65 6c 65 6d .($type.==."object").{.if.($elem
1324a0 65 6e 74 20 3d 3d 20 24 65 6e 75 6d 29 0a 72 65 74 75 72 6e 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 ent.==.$enum).return;.}.else.{.i
1324c0 66 20 28 24 65 6c 65 6d 65 6e 74 20 3d 3d 3d 20 24 65 6e 75 6d 29 0a 72 65 74 75 72 6e 3b 0a 0a f.($element.===.$enum).return;..
1324e0 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 44 }.}.}..$this->addError($path,."D
132500 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 61 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 65 6e 75 6d oes.not.have.a.value.in.the.enum
132520 65 72 61 74 69 6f 6e 20 22 20 2e 20 70 72 69 6e 74 5f 72 28 24 73 63 68 65 6d 61 2d 3e 65 6e 75 eration."...print_r($schema->enu
132540 6d 2c 20 74 72 75 65 29 2c 20 27 65 6e 75 6d 27 2c 20 61 72 72 61 79 28 27 65 6e 75 6d 27 20 3d m,.true),.'enum',.array('enum'.=
132560 3e 20 24 73 63 68 65 6d 61 2d 3e 65 6e 75 6d 2c 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a >.$schema->enum,));.}.}.<?php...
132580 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 ......namespace.JsonSchema\Const
1325a0 72 61 69 6e 74 73 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f raints;..use.JsonSchema\Exceptio
1325c0 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 n\InvalidArgumentException;.use.
1325e0 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 5c 55 72 69 52 65 74 72 69 65 76 65 72 3b 0a 75 73 65 JsonSchema\Uri\UriRetriever;.use
132600 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 56 61 6c 69 64 61 74 6f 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 .JsonSchema\Validator;.....class
132620 20 46 61 63 74 6f 72 79 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 75 72 69 52 65 74 72 .Factory.{....protected.$uriRetr
132640 69 65 76 65 72 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e iever;.....public.function.__con
132660 73 74 72 75 63 74 28 55 72 69 52 65 74 72 69 65 76 65 72 20 24 75 72 69 52 65 74 72 69 65 76 65 struct(UriRetriever.$uriRetrieve
132680 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 24 75 72 69 52 65 74 72 69 65 76 65 72 29 20 r.=.null).{.if.(!$uriRetriever).
1326a0 7b 0a 24 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 6e 65 77 20 55 72 69 52 65 74 72 69 65 76 {.$uriRetriever.=.new.UriRetriev
1326c0 65 72 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 24 er();.}..$this->uriRetriever.=.$
1326e0 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 uriRetriever;.}.....public.funct
132700 69 6f 6e 20 67 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 ion.getUriRetriever().{.return.$
132720 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 this->uriRetriever;.}.........pu
132740 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 blic.function.createInstanceFor(
132760 24 63 6f 6e 73 74 72 61 69 6e 74 4e 61 6d 65 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 63 6f 6e 73 $constraintName).{.switch.($cons
132780 74 72 61 69 6e 74 4e 61 6d 65 29 20 7b 0a 63 61 73 65 20 27 61 72 72 61 79 27 3a 0a 63 61 73 65 traintName).{.case.'array':.case
1327a0 20 27 63 6f 6c 6c 65 63 74 69 6f 6e 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 43 6f 6c 6c 65 63 .'collection':.return.new.Collec
1327c0 74 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 69 6e 74 3a 3a 43 48 45 43 4b tionConstraint(Constraint::CHECK
1327e0 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 _MODE_NORMAL,.$this->uriRetrieve
132800 72 2c 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 6f 62 6a 65 63 74 27 3a 0a 72 65 74 75 72 6e r,.$this);.case.'object':.return
132820 20 6e 65 77 20 4f 62 6a 65 63 74 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 69 6e 74 .new.ObjectConstraint(Constraint
132840 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 24 74 68 69 73 2d 3e 75 72 69 52 ::CHECK_MODE_NORMAL,.$this->uriR
132860 65 74 72 69 65 76 65 72 2c 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 74 79 70 65 27 3a 0a 72 etriever,.$this);.case.'type':.r
132880 65 74 75 72 6e 20 6e 65 77 20 54 79 70 65 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 eturn.new.TypeConstraint(Constra
1328a0 69 6e 74 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 24 74 68 69 73 2d 3e 75 int::CHECK_MODE_NORMAL,.$this->u
1328c0 72 69 52 65 74 72 69 65 76 65 72 2c 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 75 6e 64 65 66 riRetriever,.$this);.case.'undef
1328e0 69 6e 65 64 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 ined':.return.new.UndefinedConst
132900 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 69 6e 74 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 raint(Constraint::CHECK_MODE_NOR
132920 4d 41 4c 2c 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 2c 20 24 74 68 69 73 29 MAL,.$this->uriRetriever,.$this)
132940 3b 0a 63 61 73 65 20 27 73 74 72 69 6e 67 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 53 74 72 69 ;.case.'string':.return.new.Stri
132960 6e 67 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 69 6e 74 3a 3a 43 48 45 43 4b 5f 4d ngConstraint(Constraint::CHECK_M
132980 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 2c ODE_NORMAL,.$this->uriRetriever,
1329a0 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 6e 75 6d 62 65 72 27 3a 0a 72 65 74 75 72 6e 20 6e .$this);.case.'number':.return.n
1329c0 65 77 20 4e 75 6d 62 65 72 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 69 6e 74 3a 3a ew.NumberConstraint(Constraint::
1329e0 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 CHECK_MODE_NORMAL,.$this->uriRet
132a00 72 69 65 76 65 72 2c 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 65 6e 75 6d 27 3a 0a 72 65 74 riever,.$this);.case.'enum':.ret
132a20 75 72 6e 20 6e 65 77 20 45 6e 75 6d 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 69 6e urn.new.EnumConstraint(Constrain
132a40 74 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 24 74 68 69 73 2d 3e 75 72 69 t::CHECK_MODE_NORMAL,.$this->uri
132a60 52 65 74 72 69 65 76 65 72 2c 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 66 6f 72 6d 61 74 27 Retriever,.$this);.case.'format'
132a80 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 46 6f 72 6d 61 74 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f :.return.new.FormatConstraint(Co
132aa0 6e 73 74 72 61 69 6e 74 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 24 74 68 nstraint::CHECK_MODE_NORMAL,.$th
132ac0 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 2c 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 is->uriRetriever,.$this);.case.'
132ae0 73 63 68 65 6d 61 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 53 63 68 65 6d 61 43 6f 6e 73 74 72 schema':.return.new.SchemaConstr
132b00 61 69 6e 74 28 43 6f 6e 73 74 72 61 69 6e 74 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d aint(Constraint::CHECK_MODE_NORM
132b20 41 4c 2c 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 2c 20 24 74 68 69 73 29 3b AL,.$this->uriRetriever,.$this);
132b40 0a 63 61 73 65 20 27 76 61 6c 69 64 61 74 6f 72 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 56 61 .case.'validator':.return.new.Va
132b60 6c 69 64 61 74 6f 72 28 43 6f 6e 73 74 72 61 69 6e 74 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e lidator(Constraint::CHECK_MODE_N
132b80 4f 52 4d 41 4c 2c 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 2c 20 24 74 68 69 ORMAL,.$this->uriRetriever,.$thi
132ba0 73 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 s);.}..throw.new.InvalidArgument
132bc0 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 6b 6e 6f 77 6e 20 63 6f 6e 73 74 72 61 69 6e 74 20 27 20 Exception('Unknown.constraint.'.
132be0 2e 20 24 63 6f 6e 73 74 72 61 69 6e 74 4e 61 6d 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ..$constraintName);.}.}.<?php...
132c00 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 ......namespace.JsonSchema\Const
132c20 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 6f 72 6d 61 74 43 6f 6e 73 74 raints;........class.FormatConst
132c40 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 raint.extends.Constraint.{....pu
132c60 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 blic.function.check($element,.$s
132c80 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d chema.=.null,.$path.=.null,.$i.=
132ca0 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 66 6f 72 .null).{.if.(!isset($schema->for
132cc0 6d 61 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 73 77 69 74 63 68 20 28 24 73 63 68 65 mat)).{.return;.}..switch.($sche
132ce0 6d 61 2d 3e 66 6f 72 6d 61 74 29 20 7b 0a 63 61 73 65 20 27 64 61 74 65 27 3a 0a 69 66 20 28 21 ma->format).{.case.'date':.if.(!
132d00 24 64 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 61 74 65 54 69 6d 65 28 $date.=.$this->validateDateTime(
132d20 24 65 6c 65 6d 65 6e 74 2c 20 27 59 2d 6d 2d 64 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 $element,.'Y-m-d')).{.$this->add
132d40 45 72 72 6f 72 28 24 70 61 74 68 2c 20 73 70 72 69 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 64 61 Error($path,.sprintf('Invalid.da
132d60 74 65 20 25 73 2c 20 65 78 70 65 63 74 65 64 20 66 6f 72 6d 61 74 20 59 59 59 59 2d 4d 4d 2d 44 te.%s,.expected.format.YYYY-MM-D
132d80 44 27 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 65 6c 65 6d 65 6e 74 29 29 2c 20 27 66 6f 72 D',.json_encode($element)),.'for
132da0 6d 61 74 27 2c 20 61 72 72 61 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d mat',.array('format'.=>.$schema-
132dc0 3e 66 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 74 69 6d 65 >format,));.}.break;..case.'time
132de0 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 61 74 65 54 69 6d 65 28 ':.if.(!$this->validateDateTime(
132e00 24 65 6c 65 6d 65 6e 74 2c 20 27 48 3a 69 3a 73 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 $element,.'H:i:s')).{.$this->add
132e20 45 72 72 6f 72 28 24 70 61 74 68 2c 20 73 70 72 69 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 74 69 Error($path,.sprintf('Invalid.ti
132e40 6d 65 20 25 73 2c 20 65 78 70 65 63 74 65 64 20 66 6f 72 6d 61 74 20 68 68 3a 6d 6d 3a 73 73 27 me.%s,.expected.format.hh:mm:ss'
132e60 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 65 6c 65 6d 65 6e 74 29 29 2c 20 27 66 6f 72 6d 61 ,.json_encode($element)),.'forma
132e80 74 27 2c 20 61 72 72 61 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 t',.array('format'.=>.$schema->f
132ea0 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 64 61 74 65 2d 74 ormat,));.}.break;..case.'date-t
132ec0 69 6d 65 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 61 74 65 54 69 ime':.if.(!$this->validateDateTi
132ee0 6d 65 28 24 65 6c 65 6d 65 6e 74 2c 20 27 59 2d 6d 2d 64 5c 54 48 3a 69 3a 73 5c 5a 27 29 20 26 me($element,.'Y-m-d\TH:i:s\Z').&
132f00 26 0a 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 61 74 65 54 69 6d 65 28 24 65 6c 65 6d &.!$this->validateDateTime($elem
132f20 65 6e 74 2c 20 27 59 2d 6d 2d 64 5c 54 48 3a 69 3a 73 2e 75 5c 5a 27 29 20 26 26 0a 21 24 74 68 ent,.'Y-m-d\TH:i:s.u\Z').&&.!$th
132f40 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 61 74 65 54 69 6d 65 28 24 65 6c 65 6d 65 6e 74 2c 20 27 is->validateDateTime($element,.'
132f60 59 2d 6d 2d 64 5c 54 48 3a 69 3a 73 50 27 29 20 26 26 0a 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 Y-m-d\TH:i:sP').&&.!$this->valid
132f80 61 74 65 44 61 74 65 54 69 6d 65 28 24 65 6c 65 6d 65 6e 74 2c 20 27 59 2d 6d 2d 64 5c 54 48 3a ateDateTime($element,.'Y-m-d\TH:
132fa0 69 3a 73 4f 27 29 0a 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 i:sO').).{.$this->addError($path
132fc0 2c 20 73 70 72 69 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 64 61 74 65 2d 74 69 6d 65 20 25 73 2c ,.sprintf('Invalid.date-time.%s,
132fe0 20 65 78 70 65 63 74 65 64 20 66 6f 72 6d 61 74 20 59 59 59 59 2d 4d 4d 2d 44 44 54 68 68 3a 6d .expected.format.YYYY-MM-DDThh:m
133000 6d 3a 73 73 5a 20 6f 72 20 59 59 59 59 2d 4d 4d 2d 44 44 54 68 68 3a 6d 6d 3a 73 73 2b 68 68 3a m:ssZ.or.YYYY-MM-DDThh:mm:ss+hh:
133020 6d 6d 27 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 65 6c 65 6d 65 6e 74 29 29 2c 20 27 66 6f mm',.json_encode($element)),.'fo
133040 72 6d 61 74 27 2c 20 61 72 72 61 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 rmat',.array('format'.=>.$schema
133060 2d 3e 66 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 75 74 63 ->format,));.}.break;..case.'utc
133080 2d 6d 69 6c 6c 69 73 65 63 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 -millisec':.if.(!$this->validate
1330a0 44 61 74 65 54 69 6d 65 28 24 65 6c 65 6d 65 6e 74 2c 20 27 55 27 29 29 20 7b 0a 24 74 68 69 73 DateTime($element,.'U')).{.$this
1330c0 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 73 70 72 69 6e 74 66 28 27 49 6e 76 61 6c ->addError($path,.sprintf('Inval
1330e0 69 64 20 74 69 6d 65 20 25 73 2c 20 65 78 70 65 63 74 65 64 20 69 6e 74 65 67 65 72 20 6f 66 20 id.time.%s,.expected.integer.of.
133100 6d 69 6c 6c 69 73 65 63 6f 6e 64 73 20 73 69 6e 63 65 20 45 70 6f 63 68 27 2c 20 6a 73 6f 6e 5f milliseconds.since.Epoch',.json_
133120 65 6e 63 6f 64 65 28 24 65 6c 65 6d 65 6e 74 29 29 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 72 encode($element)),.'format',.arr
133140 61 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 2c 29 ay('format'.=>.$schema->format,)
133160 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 72 65 67 65 78 27 3a 0a 69 66 20 28 21 );.}.break;..case.'regex':.if.(!
133180 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 24 65 6c 65 6d 65 6e 74 29 29 20 $this->validateRegex($element)).
1331a0 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 27 49 6e 76 61 6c 69 {.$this->addError($path,.'Invali
1331c0 64 20 72 65 67 65 78 20 66 6f 72 6d 61 74 20 27 20 2e 20 24 65 6c 65 6d 65 6e 74 2c 20 27 66 6f d.regex.format.'...$element,.'fo
1331e0 72 6d 61 74 27 2c 20 61 72 72 61 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 rmat',.array('format'.=>.$schema
133200 2d 3e 66 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 63 6f 6c ->format,));.}.break;..case.'col
133220 6f 72 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 43 6f 6c 6f 72 28 24 or':.if.(!$this->validateColor($
133240 65 6c 65 6d 65 6e 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 element)).{.$this->addError($pat
133260 68 2c 20 22 49 6e 76 61 6c 69 64 20 63 6f 6c 6f 72 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 h,."Invalid.color",.'format',.ar
133280 72 61 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 2c ray('format'.=>.$schema->format,
1332a0 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 73 74 79 6c 65 27 3a 0a 69 66 20 28 ));.}.break;..case.'style':.if.(
1332c0 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 79 6c 65 28 24 65 6c 65 6d 65 6e 74 29 29 !$this->validateStyle($element))
1332e0 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 49 6e 76 61 6c .{.$this->addError($path,."Inval
133300 69 64 20 73 74 79 6c 65 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 72 61 79 28 27 66 6f 72 6d id.style",.'format',.array('form
133320 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 at'.=>.$schema->format,));.}.bre
133340 61 6b 3b 0a 0a 63 61 73 65 20 27 70 68 6f 6e 65 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 ak;..case.'phone':.if.(!$this->v
133360 61 6c 69 64 61 74 65 50 68 6f 6e 65 28 24 65 6c 65 6d 65 6e 74 29 29 20 7b 0a 24 74 68 69 73 2d alidatePhone($element)).{.$this-
133380 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 49 6e 76 61 6c 69 64 20 70 68 6f 6e 65 20 >addError($path,."Invalid.phone.
1333a0 6e 75 6d 62 65 72 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 72 61 79 28 27 66 6f 72 6d 61 74 number",.'format',.array('format
1333c0 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b '.=>.$schema->format,));.}.break
1333e0 3b 0a 0a 63 61 73 65 20 27 75 72 69 27 3a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 66 69 6c 74 ;..case.'uri':.if.(null.===.filt
133400 65 72 5f 76 61 72 28 24 65 6c 65 6d 65 6e 74 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 er_var($element,.FILTER_VALIDATE
133420 5f 55 52 4c 2c 20 46 49 4c 54 45 52 5f 4e 55 4c 4c 5f 4f 4e 5f 46 41 49 4c 55 52 45 29 29 20 7b _URL,.FILTER_NULL_ON_FAILURE)).{
133440 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 49 6e 76 61 6c 69 64 .$this->addError($path,."Invalid
133460 20 55 52 4c 20 66 6f 72 6d 61 74 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 72 61 79 28 27 66 .URL.format",.'format',.array('f
133480 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a ormat'.=>.$schema->format,));.}.
1334a0 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 65 6d 61 69 6c 27 3a 0a 69 66 20 28 6e 75 6c 6c 20 3d break;..case.'email':.if.(null.=
1334c0 3d 3d 20 66 69 6c 74 65 72 5f 76 61 72 28 24 65 6c 65 6d 65 6e 74 2c 20 46 49 4c 54 45 52 5f 56 ==.filter_var($element,.FILTER_V
1334e0 41 4c 49 44 41 54 45 5f 45 4d 41 49 4c 2c 20 46 49 4c 54 45 52 5f 4e 55 4c 4c 5f 4f 4e 5f 46 41 ALIDATE_EMAIL,.FILTER_NULL_ON_FA
133500 49 4c 55 52 45 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c ILURE)).{.$this->addError($path,
133520 20 22 49 6e 76 61 6c 69 64 20 65 6d 61 69 6c 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 72 61 ."Invalid.email",.'format',.arra
133540 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 2c 29 29 y('format'.=>.$schema->format,))
133560 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 69 70 2d 61 64 64 72 65 73 73 27 3a 0a 63 ;.}.break;..case.'ip-address':.c
133580 61 73 65 20 27 69 70 76 34 27 3a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 66 69 6c 74 65 72 5f ase.'ipv4':.if.(null.===.filter_
1335a0 76 61 72 28 24 65 6c 65 6d 65 6e 74 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 49 50 var($element,.FILTER_VALIDATE_IP
1335c0 2c 20 46 49 4c 54 45 52 5f 4e 55 4c 4c 5f 4f 4e 5f 46 41 49 4c 55 52 45 20 7c 20 46 49 4c 54 45 ,.FILTER_NULL_ON_FAILURE.|.FILTE
1335e0 52 5f 46 4c 41 47 5f 49 50 56 34 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 R_FLAG_IPV4)).{.$this->addError(
133600 24 70 61 74 68 2c 20 22 49 6e 76 61 6c 69 64 20 49 50 20 61 64 64 72 65 73 73 22 2c 20 27 66 6f $path,."Invalid.IP.address",.'fo
133620 72 6d 61 74 27 2c 20 61 72 72 61 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 rmat',.array('format'.=>.$schema
133640 2d 3e 66 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 69 70 76 ->format,));.}.break;..case.'ipv
133660 36 27 3a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 66 69 6c 74 65 72 5f 76 61 72 28 24 65 6c 65 6':.if.(null.===.filter_var($ele
133680 6d 65 6e 74 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 49 50 2c 20 46 49 4c 54 45 52 ment,.FILTER_VALIDATE_IP,.FILTER
1336a0 5f 4e 55 4c 4c 5f 4f 4e 5f 46 41 49 4c 55 52 45 20 7c 20 46 49 4c 54 45 52 5f 46 4c 41 47 5f 49 _NULL_ON_FAILURE.|.FILTER_FLAG_I
1336c0 50 56 36 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 PV6)).{.$this->addError($path,."
1336e0 49 6e 76 61 6c 69 64 20 49 50 20 61 64 64 72 65 73 73 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 Invalid.IP.address",.'format',.a
133700 72 72 61 79 28 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 rray('format'.=>.$schema->format
133720 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 68 6f 73 74 2d 6e 61 6d 65 27 3a ,));.}.break;..case.'host-name':
133740 0a 63 61 73 65 20 27 68 6f 73 74 6e 61 6d 65 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 .case.'hostname':.if.(!$this->va
133760 6c 69 64 61 74 65 48 6f 73 74 6e 61 6d 65 28 24 65 6c 65 6d 65 6e 74 29 29 20 7b 0a 24 74 68 69 lidateHostname($element)).{.$thi
133780 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 49 6e 76 61 6c 69 64 20 68 6f 73 74 s->addError($path,."Invalid.host
1337a0 6e 61 6d 65 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 72 61 79 28 27 66 6f 72 6d 61 74 27 20 name",.'format',.array('format'.
1337c0 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a =>.$schema->format,));.}.break;.
1337e0 0a 64 65 66 61 75 6c 74 3a 0a 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 62 72 65 61 6b 3b 0a 7d 0a 7d .default:.............break;.}.}
133800 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 44 61 74 ..protected.function.validateDat
133820 65 54 69 6d 65 28 24 64 61 74 65 74 69 6d 65 2c 20 24 66 6f 72 6d 61 74 29 0a 7b 0a 24 64 74 20 eTime($datetime,.$format).{.$dt.
133840 3d 20 5c 44 61 74 65 54 69 6d 65 3a 3a 63 72 65 61 74 65 46 72 6f 6d 46 6f 72 6d 61 74 28 24 66 =.\DateTime::createFromFormat($f
133860 6f 72 6d 61 74 2c 20 24 64 61 74 65 74 69 6d 65 29 3b 0a 0a 69 66 20 28 21 24 64 74 29 20 7b 0a ormat,.$datetime);..if.(!$dt).{.
133880 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 24 64 61 74 65 74 69 6d 65 20 3d return.false;.}..if.($datetime.=
1338a0 3d 3d 20 24 64 74 2d 3e 66 6f 72 6d 61 74 28 24 66 6f 72 6d 61 74 29 29 20 7b 0a 72 65 74 75 72 ==.$dt->format($format)).{.retur
1338c0 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 0a 20 69 66 20 28 28 73 74 72 70 6f 73 28 27 n.true;.}..........if.((strpos('
1338e0 75 27 2c 20 24 66 6f 72 6d 61 74 29 20 21 3d 3d 20 2d 31 29 20 26 26 20 28 69 6e 74 76 61 6c 28 u',.$format).!==.-1).&&.(intval(
133900 24 64 74 2d 3e 66 6f 72 6d 61 74 28 27 75 27 29 29 20 3e 20 30 29 29 20 7b 0a 72 65 74 75 72 6e $dt->format('u')).>.0)).{.return
133920 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 6f 74 65 .true;.}..return.false;.}..prote
133940 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 24 72 65 67 cted.function.validateRegex($reg
133960 65 78 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 40 70 72 65 67 5f 6d 61 74 ex).{.return.false.!==.@preg_mat
133980 63 68 28 27 2f 27 20 2e 20 24 72 65 67 65 78 20 2e 20 27 2f 27 2c 20 27 27 29 3b 0a 7d 0a 0a 70 ch('/'...$regex...'/',.'');.}..p
1339a0 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 43 6f 6c 6f 72 28 rotected.function.validateColor(
1339c0 24 63 6f 6c 6f 72 29 0a 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 73 74 72 74 6f 6c 6f 77 65 $color).{.if.(in_array(strtolowe
1339e0 72 28 24 63 6f 6c 6f 72 29 2c 20 61 72 72 61 79 28 27 61 71 75 61 27 2c 20 27 62 6c 61 63 6b 27 r($color),.array('aqua',.'black'
133a00 2c 20 27 62 6c 75 65 27 2c 20 27 66 75 63 68 73 69 61 27 2c 0a 27 67 72 61 79 27 2c 20 27 67 72 ,.'blue',.'fuchsia',.'gray',.'gr
133a20 65 65 6e 27 2c 20 27 6c 69 6d 65 27 2c 20 27 6d 61 72 6f 6f 6e 27 2c 20 27 6e 61 76 79 27 2c 20 een',.'lime',.'maroon',.'navy',.
133a40 27 6f 6c 69 76 65 27 2c 20 27 6f 72 61 6e 67 65 27 2c 20 27 70 75 72 70 6c 65 27 2c 0a 27 72 65 'olive',.'orange',.'purple',.'re
133a60 64 27 2c 20 27 73 69 6c 76 65 72 27 2c 20 27 74 65 61 6c 27 2c 20 27 77 68 69 74 65 27 2c 20 27 d',.'silver',.'teal',.'white',.'
133a80 79 65 6c 6c 6f 77 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 yellow'))).{.return.true;.}..ret
133aa0 75 72 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 23 28 5b 61 2d 66 30 2d 39 5d 7b 33 7d 7c urn.preg_match('/^#([a-f0-9]{3}|
133ac0 5b 61 2d 66 30 2d 39 5d 7b 36 7d 29 24 2f 69 27 2c 20 24 63 6f 6c 6f 72 29 3b 0a 7d 0a 0a 70 72 [a-f0-9]{6})$/i',.$color);.}..pr
133ae0 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 53 74 79 6c 65 28 24 otected.function.validateStyle($
133b00 73 74 79 6c 65 29 0a 7b 0a 24 70 72 6f 70 65 72 74 69 65 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 style).{.$properties.=.explode('
133b20 3b 27 2c 20 72 74 72 69 6d 28 24 73 74 79 6c 65 2c 20 27 3b 27 29 29 3b 0a 24 69 6e 76 61 6c 69 ;',.rtrim($style,.';'));.$invali
133b40 64 45 6e 74 72 69 65 73 20 3d 20 70 72 65 67 5f 67 72 65 70 28 27 2f 5e 5c 73 2a 5b 2d 61 2d 7a dEntries.=.preg_grep('/^\s*[-a-z
133b60 5d 2b 5c 73 2a 3a 5c 73 2a 2e 2b 24 2f 69 27 2c 20 24 70 72 6f 70 65 72 74 69 65 73 2c 20 50 52 ]+\s*:\s*.+$/i',.$properties,.PR
133b80 45 47 5f 47 52 45 50 5f 49 4e 56 45 52 54 29 3b 0a 0a 72 65 74 75 72 6e 20 65 6d 70 74 79 28 24 EG_GREP_INVERT);..return.empty($
133ba0 69 6e 76 61 6c 69 64 45 6e 74 72 69 65 73 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 invalidEntries);.}..protected.fu
133bc0 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 50 68 6f 6e 65 28 24 70 68 6f 6e 65 29 0a 7b 0a 72 nction.validatePhone($phone).{.r
133be0 65 74 75 72 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 5c 2b 3f 28 5c 28 5c 64 7b 33 7d 5c eturn.preg_match('/^\+?(\(\d{3}\
133c00 29 7c 5c 64 7b 33 7d 29 20 5c 64 7b 33 7d 20 5c 64 7b 34 7d 24 2f 27 2c 20 24 70 68 6f 6e 65 29 )|\d{3}).\d{3}.\d{4}$/',.$phone)
133c20 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 ;.}..protected.function.validate
133c40 48 6f 73 74 6e 61 6d 65 28 24 68 6f 73 74 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 6d 61 Hostname($host).{.return.preg_ma
133c60 74 63 68 28 27 2f 5e 5b 5f 61 2d 7a 5d 2b 5c 2e 28 5b 5f 61 2d 7a 5d 2b 5c 2e 3f 29 2b 24 2f 69 tch('/^[_a-z]+\.([_a-z]+\.?)+$/i
133c80 27 2c 20 24 68 6f 73 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d ',.$host);.}.}.<?php.........nam
133ca0 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a espace.JsonSchema\Constraints;..
133cc0 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 75 6d 62 65 72 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 ......class.NumberConstraint.ext
133ce0 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ends.Constraint.{....public.func
133d00 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e tion.check($element,.$schema.=.n
133d20 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a ull,.$path.=.null,.$i.=.null).{.
133d40 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 65 78 63 6c 75 73 69 76 65 4d 69 ..if.(isset($schema->exclusiveMi
133d60 6e 69 6d 75 6d 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 69 6e nimum)).{.if.(isset($schema->min
133d80 69 6d 75 6d 29 29 20 7b 0a 69 66 20 28 24 73 63 68 65 6d 61 2d 3e 65 78 63 6c 75 73 69 76 65 4d imum)).{.if.($schema->exclusiveM
133da0 69 6e 69 6d 75 6d 20 26 26 20 24 65 6c 65 6d 65 6e 74 20 3d 3d 3d 20 24 73 63 68 65 6d 61 2d 3e inimum.&&.$element.===.$schema->
133dc0 6d 69 6e 69 6d 75 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 minimum).{.$this->addError($path
133de0 2c 20 22 4d 75 73 74 20 68 61 76 65 20 61 20 6d 69 6e 69 6d 75 6d 20 76 61 6c 75 65 20 67 72 65 ,."Must.have.a.minimum.value.gre
133e00 61 74 65 72 20 74 68 61 6e 20 62 6f 75 6e 64 61 72 79 20 76 61 6c 75 65 20 6f 66 20 22 20 2e 20 ater.than.boundary.value.of."...
133e20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 2c 20 27 65 78 63 6c 75 73 69 76 65 4d 69 6e 69 $schema->minimum,.'exclusiveMini
133e40 6d 75 6d 27 2c 20 61 72 72 61 79 28 27 6d 69 6e 69 6d 75 6d 27 20 3d 3e 20 24 73 63 68 65 6d 61 mum',.array('minimum'.=>.$schema
133e60 2d 3e 6d 69 6e 69 6d 75 6d 2c 29 29 3b 0a 7d 20 65 6c 73 65 20 69 66 20 28 24 65 6c 65 6d 65 6e ->minimum,));.}.else.if.($elemen
133e80 74 20 3c 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 t.<.$schema->minimum).{.$this->a
133ea0 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 68 61 76 65 20 61 20 6d 69 6e 69 ddError($path,."Must.have.a.mini
133ec0 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 mum.value.of."...$schema->minimu
133ee0 6d 2c 20 27 6d 69 6e 69 6d 75 6d 27 2c 20 61 72 72 61 79 28 27 6d 69 6e 69 6d 75 6d 27 20 3d 3e m,.'minimum',.array('minimum'.=>
133f00 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 2c 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b .$schema->minimum,));.}.}.else.{
133f20 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 55 73 65 20 6f 66 20 .$this->addError($path,."Use.of.
133f40 65 78 63 6c 75 73 69 76 65 4d 69 6e 69 6d 75 6d 20 72 65 71 75 69 72 65 73 20 70 72 65 73 65 6e exclusiveMinimum.requires.presen
133f60 63 65 20 6f 66 20 6d 69 6e 69 6d 75 6d 22 2c 20 27 6d 69 73 73 69 6e 67 4d 69 6e 69 6d 75 6d 27 ce.of.minimum",.'missingMinimum'
133f80 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d );.}.}.else.if.(isset($schema->m
133fa0 69 6e 69 6d 75 6d 29 20 26 26 20 24 65 6c 65 6d 65 6e 74 20 3c 20 24 73 63 68 65 6d 61 2d 3e 6d inimum).&&.$element.<.$schema->m
133fc0 69 6e 69 6d 75 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c inimum).{.$this->addError($path,
133fe0 20 22 4d 75 73 74 20 68 61 76 65 20 61 20 6d 69 6e 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 22 ."Must.have.a.minimum.value.of."
134000 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 2c 20 27 6d 69 6e 69 6d 75 6d 27 2c 20 ...$schema->minimum,.'minimum',.
134020 61 72 72 61 79 28 27 6d 69 6e 69 6d 75 6d 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 array('minimum'.=>.$schema->mini
134040 6d 75 6d 2c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e mum,));.}....if.(isset($schema->
134060 65 78 63 6c 75 73 69 76 65 4d 61 78 69 6d 75 6d 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 exclusiveMaximum)).{.if.(isset($
134080 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 29 20 7b 0a 69 66 20 28 24 73 63 68 65 6d 61 2d schema->maximum)).{.if.($schema-
1340a0 3e 65 78 63 6c 75 73 69 76 65 4d 61 78 69 6d 75 6d 20 26 26 20 24 65 6c 65 6d 65 6e 74 20 3d 3d >exclusiveMaximum.&&.$element.==
1340c0 3d 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 =.$schema->maximum).{.$this->add
1340e0 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 68 61 76 65 20 61 20 6d 61 78 69 6d 75 Error($path,."Must.have.a.maximu
134100 6d 20 76 61 6c 75 65 20 6c 65 73 73 20 74 68 61 6e 20 62 6f 75 6e 64 61 72 79 20 76 61 6c 75 65 m.value.less.than.boundary.value
134120 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 2c 20 27 65 78 63 6c 75 .of."...$schema->maximum,.'exclu
134140 73 69 76 65 4d 61 78 69 6d 75 6d 27 2c 20 61 72 72 61 79 28 27 6d 61 78 69 6d 75 6d 27 20 3d 3e siveMaximum',.array('maximum'.=>
134160 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 2c 29 29 3b 0a 7d 20 65 6c 73 65 20 69 66 20 .$schema->maximum,));.}.else.if.
134180 28 24 65 6c 65 6d 65 6e 74 20 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 20 7b 0a ($element.>.$schema->maximum).{.
1341a0 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 68 61 76 $this->addError($path,."Must.hav
1341c0 65 20 61 20 6d 61 78 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 e.a.maximum.value.of."...$schema
1341e0 2d 3e 6d 61 78 69 6d 75 6d 2c 20 27 6d 61 78 69 6d 75 6d 27 2c 20 61 72 72 61 79 28 27 6d 61 78 ->maximum,.'maximum',.array('max
134200 69 6d 75 6d 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 2c 29 29 3b 0a 7d 0a imum'.=>.$schema->maximum,));.}.
134220 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 }.else.{.$this->addError($path,.
134240 22 55 73 65 20 6f 66 20 65 78 63 6c 75 73 69 76 65 4d 61 78 69 6d 75 6d 20 72 65 71 75 69 72 65 "Use.of.exclusiveMaximum.require
134260 73 20 70 72 65 73 65 6e 63 65 20 6f 66 20 6d 61 78 69 6d 75 6d 22 2c 20 27 6d 69 73 73 69 6e 67 s.presence.of.maximum",.'missing
134280 4d 69 6e 69 6d 75 6d 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 69 66 20 28 69 73 73 65 74 28 24 73 Minimum');.}.}.else.if.(isset($s
1342a0 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 20 26 26 20 24 65 6c 65 6d 65 6e 74 20 3e 20 24 73 chema->maximum).&&.$element.>.$s
1342c0 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f chema->maximum).{.$this->addErro
1342e0 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 68 61 76 65 20 61 20 6d 61 78 69 6d 75 6d 20 76 61 r($path,."Must.have.a.maximum.va
134300 6c 75 65 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 2c 20 27 6d 61 lue.of."...$schema->maximum,.'ma
134320 78 69 6d 75 6d 27 2c 20 61 72 72 61 79 28 27 6d 61 78 69 6d 75 6d 27 20 3d 3e 20 24 73 63 68 65 ximum',.array('maximum'.=>.$sche
134340 6d 61 2d 3e 6d 61 78 69 6d 75 6d 2c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 ma->maximum,));.}....if.(isset($
134360 73 63 68 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c 65 42 79 29 20 26 26 20 24 74 68 69 73 2d 3e 66 schema->divisibleBy).&&.$this->f
134380 6d 6f 64 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c 65 mod($element,.$schema->divisible
1343a0 42 79 29 20 21 3d 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 By).!=.0).{.$this->addError($pat
1343c0 68 2c 20 22 49 73 20 6e 6f 74 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 22 20 2e 20 24 73 63 68 h,."Is.not.divisible.by."...$sch
1343e0 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c 65 42 79 2c 20 27 64 69 76 69 73 69 62 6c 65 42 79 27 2c ema->divisibleBy,.'divisibleBy',
134400 20 61 72 72 61 79 28 27 64 69 76 69 73 69 62 6c 65 42 79 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d .array('divisibleBy'.=>.$schema-
134420 3e 64 69 76 69 73 69 62 6c 65 42 79 2c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 >divisibleBy,));.}....if.(isset(
134440 24 73 63 68 65 6d 61 2d 3e 6d 75 6c 74 69 70 6c 65 4f 66 29 20 26 26 20 24 74 68 69 73 2d 3e 66 $schema->multipleOf).&&.$this->f
134460 6d 6f 64 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2d 3e 6d 75 6c 74 69 70 6c 65 4f mod($element,.$schema->multipleO
134480 66 29 20 21 3d 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 f).!=.0).{.$this->addError($path
1344a0 2c 20 22 4d 75 73 74 20 62 65 20 61 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 22 20 2e 20 24 73 63 ,."Must.be.a.multiple.of."...$sc
1344c0 68 65 6d 61 2d 3e 6d 75 6c 74 69 70 6c 65 4f 66 2c 20 27 6d 75 6c 74 69 70 6c 65 4f 66 27 2c 20 hema->multipleOf,.'multipleOf',.
1344e0 61 72 72 61 79 28 27 6d 75 6c 74 69 70 6c 65 4f 66 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d array('multipleOf'.=>.$schema->m
134500 75 6c 74 69 70 6c 65 4f 66 2c 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 46 6f 72 ultipleOf,));.}..$this->checkFor
134520 6d 61 74 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 mat($element,.$schema,.$path,.$i
134540 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 6d 6f 64 28 24 6e 75 6d );.}..private.function.fmod($num
134560 62 65 72 31 2c 20 24 6e 75 6d 62 65 72 32 29 0a 7b 0a 24 6d 6f 64 75 6c 75 73 20 3d 20 66 6d 6f ber1,.$number2).{.$modulus.=.fmo
134580 64 28 24 6e 75 6d 62 65 72 31 2c 20 24 6e 75 6d 62 65 72 32 29 3b 0a 24 70 72 65 63 69 73 69 6f d($number1,.$number2);.$precisio
1345a0 6e 20 3d 20 61 62 73 28 30 2e 30 30 30 30 30 30 30 30 30 31 29 3b 0a 24 64 69 66 66 20 3d 20 28 n.=.abs(0.0000000001);.$diff.=.(
1345c0 66 6c 6f 61 74 29 28 24 6d 6f 64 75 6c 75 73 20 2d 20 24 6e 75 6d 62 65 72 32 29 3b 0a 0a 69 66 float)($modulus.-.$number2);..if
1345e0 20 28 2d 24 70 72 65 63 69 73 69 6f 6e 20 3c 20 24 64 69 66 66 20 26 26 20 24 64 69 66 66 20 3c .(-$precision.<.$diff.&&.$diff.<
134600 20 24 70 72 65 63 69 73 69 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 30 2e 30 3b 0a 7d 0a 0a 24 64 .$precision).{.return.0.0;.}..$d
134620 65 63 69 6d 61 6c 73 31 20 3d 20 6d 62 5f 73 74 72 70 6f 73 28 24 6e 75 6d 62 65 72 31 2c 20 22 ecimals1.=.mb_strpos($number1,."
134640 2e 22 29 20 3f 20 6d 62 5f 73 74 72 6c 65 6e 28 24 6e 75 6d 62 65 72 31 29 20 2d 20 6d 62 5f 73 .").?.mb_strlen($number1).-.mb_s
134660 74 72 70 6f 73 28 24 6e 75 6d 62 65 72 31 2c 20 22 2e 22 29 20 2d 20 31 20 3a 20 30 3b 0a 24 64 trpos($number1,.".").-.1.:.0;.$d
134680 65 63 69 6d 61 6c 73 32 20 3d 20 6d 62 5f 73 74 72 70 6f 73 28 24 6e 75 6d 62 65 72 32 2c 20 22 ecimals2.=.mb_strpos($number2,."
1346a0 2e 22 29 20 3f 20 6d 62 5f 73 74 72 6c 65 6e 28 24 6e 75 6d 62 65 72 32 29 20 2d 20 6d 62 5f 73 .").?.mb_strlen($number2).-.mb_s
1346c0 74 72 70 6f 73 28 24 6e 75 6d 62 65 72 32 2c 20 22 2e 22 29 20 2d 20 31 20 3a 20 30 3b 0a 0a 72 trpos($number2,.".").-.1.:.0;..r
1346e0 65 74 75 72 6e 20 28 66 6c 6f 61 74 29 72 6f 75 6e 64 28 24 6d 6f 64 75 6c 75 73 2c 20 6d 61 78 eturn.(float)round($modulus,.max
134700 28 24 64 65 63 69 6d 61 6c 73 31 2c 20 24 64 65 63 69 6d 61 6c 73 32 29 29 3b 0a 7d 0a 7d 0a 3c ($decimals1,.$decimals2));.}.}.<
134720 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d ?php.........namespace.JsonSchem
134740 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4f 62 6a 65 a\Constraints;........class.Obje
134760 63 74 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a ctConstraint.extends.Constraint.
134780 7b 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 6e 74 2c 20 24 64 {....function.check($element,.$d
1347a0 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 efinition.=.null,.$path.=.null,.
1347c0 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 74 65 72 6e $additionalProp.=.null,.$pattern
1347e0 50 72 6f 70 65 72 74 69 65 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 65 6c 65 6d 65 6e Properties.=.null).{.if.($elemen
134800 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 t.instanceof.UndefinedConstraint
134820 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 6d 61 74 63 68 65 73 20 3d 20 61 72 72 61 79 28 ).{.return;.}..$matches.=.array(
134840 29 3b 0a 69 66 20 28 24 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 29 20 7b 0a 24 6d 61 );.if.($patternProperties).{.$ma
134860 74 63 68 65 73 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 50 61 74 74 65 72 6e 50 72 tches.=.$this->validatePatternPr
134880 6f 70 65 72 74 69 65 73 28 24 65 6c 65 6d 65 6e 74 2c 20 24 70 61 74 68 2c 20 24 70 61 74 74 65 operties($element,.$path,.$patte
1348a0 72 6e 50 72 6f 70 65 72 74 69 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 64 65 66 69 6e 69 74 69 6f rnProperties);.}..if.($definitio
1348c0 6e 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 65 66 69 6e 69 74 69 6f 6e n).{...$this->validateDefinition
1348e0 28 24 65 6c 65 6d 65 6e 74 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 24 70 61 74 68 29 3b 0a ($element,.$definition,.$path);.
134900 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 45 6c 65 6d 65 6e 74 28 24 65 6c 65 }....$this->validateElement($ele
134920 6d 65 6e 74 2c 20 24 6d 61 74 63 68 65 73 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 24 70 61 ment,.$matches,.$definition,.$pa
134940 74 68 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 th,.$additionalProp);.}..public.
134960 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 50 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 function.validatePatternProperti
134980 65 73 28 24 65 6c 65 6d 65 6e 74 2c 20 24 70 61 74 68 2c 20 24 70 61 74 74 65 72 6e 50 72 6f 70 es($element,.$path,.$patternProp
1349a0 65 72 74 69 65 73 29 0a 7b 0a 24 74 72 79 20 3d 20 61 72 72 61 79 28 27 2f 27 2c 27 23 27 2c 27 erties).{.$try.=.array('/','#','
1349c0 2b 27 2c 27 7e 27 2c 27 25 27 29 3b 0a 24 6d 61 74 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b +','~','%');.$matches.=.array();
1349e0 0a 66 6f 72 65 61 63 68 20 28 24 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 20 61 73 20 .foreach.($patternProperties.as.
134a00 24 70 72 65 67 65 78 20 3d 3e 20 24 73 63 68 65 6d 61 29 20 7b 0a 24 64 65 6c 69 6d 69 74 65 72 $pregex.=>.$schema).{.$delimiter
134a20 20 3d 20 27 2f 27 3b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 72 79 20 61 73 20 24 64 65 6c 69 .=.'/';...foreach.($try.as.$deli
134a40 6d 69 74 65 72 29 20 7b 0a 69 66 20 28 73 74 72 70 6f 73 28 24 70 72 65 67 65 78 2c 20 24 64 65 miter).{.if.(strpos($pregex,.$de
134a60 6c 69 6d 69 74 65 72 29 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 20 0a 20 62 72 65 61 6b 3b 0a 7d limiter).===.false).{...break;.}
134a80 0a 7d 0a 0a 0a 20 69 66 20 28 40 70 72 65 67 5f 6d 61 74 63 68 28 24 64 65 6c 69 6d 69 74 65 72 .}....if.(@preg_match($delimiter
134aa0 2e 20 24 70 72 65 67 65 78 20 2e 20 24 64 65 6c 69 6d 69 74 65 72 2c 20 27 27 29 20 3d 3d 3d 20 ..$pregex...$delimiter,.'').===.
134ac0 66 61 6c 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 false).{.$this->addError($path,.
134ae0 27 54 68 65 20 70 61 74 74 65 72 6e 20 22 27 20 2e 20 24 70 72 65 67 65 78 20 2e 20 27 22 20 69 'The.pattern."'...$pregex...'".i
134b00 73 20 69 6e 76 61 6c 69 64 27 2c 20 27 70 72 65 67 65 78 27 2c 20 61 72 72 61 79 28 27 70 72 65 s.invalid',.'pregex',.array('pre
134b20 67 65 78 27 20 3d 3e 20 24 70 72 65 67 65 78 2c 29 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a gex'.=>.$pregex,));.continue;.}.
134b40 66 6f 72 65 61 63 68 20 28 24 65 6c 65 6d 65 6e 74 20 61 73 20 24 69 20 3d 3e 20 24 76 61 6c 75 foreach.($element.as.$i.=>.$valu
134b60 65 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 64 65 6c 69 6d 69 74 65 72 20 2e e).{.if.(preg_match($delimiter..
134b80 20 24 70 72 65 67 65 78 20 2e 20 24 64 65 6c 69 6d 69 74 65 72 2c 20 24 69 29 29 20 7b 0a 24 6d .$pregex...$delimiter,.$i)).{.$m
134ba0 61 74 63 68 65 73 5b 5d 20 3d 20 24 69 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 atches[].=.$i;.$this->checkUndef
134bc0 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3f 20 3a 20 6e 65 77 20 5c 73 74 ined($value,.$schema.?.:.new.\st
134be0 64 43 6c 61 73 73 28 29 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 7d 0a 72 65 74 75 dClass(),.$path,.$i);.}.}.}.retu
134c00 72 6e 20 24 6d 61 74 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 rn.$matches;.}...........public.
134c20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 45 6c 65 6d 65 6e 74 28 24 65 6c 65 6d 65 6e function.validateElement($elemen
134c40 74 2c 20 24 6d 61 74 63 68 65 73 2c 20 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 20 3d t,.$matches,.$objectDefinition.=
134c60 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c .null,.$path.=.null,.$additional
134c80 50 72 6f 70 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 65 6c 65 6d 65 6e 74 Prop.=.null).{.foreach.($element
134ca0 20 61 73 20 24 69 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 0a 24 70 72 6f 70 65 72 74 79 20 3d .as.$i.=>.$value).{..$property.=
134cc0 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 65 6c 65 6d 65 6e 74 2c 20 24 69 .$this->getProperty($element,.$i
134ce0 2c 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 24 64 ,.new.UndefinedConstraint());.$d
134d00 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 efinition.=.$this->getProperty($
134d20 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 2c 20 24 69 29 3b 0a 0a 0a 20 69 66 20 28 21 69 objectDefinition,.$i);....if.(!i
134d40 6e 5f 61 72 72 61 79 28 24 69 2c 20 24 6d 61 74 63 68 65 73 29 20 26 26 20 24 61 64 64 69 74 69 n_array($i,.$matches).&&.$additi
134d60 6f 6e 61 6c 50 72 6f 70 20 3d 3d 3d 20 66 61 6c 73 65 20 26 26 20 24 74 68 69 73 2d 3e 69 6e 6c onalProp.===.false.&&.$this->inl
134d80 69 6e 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 20 21 3d 3d 20 24 69 20 26 26 20 21 24 64 65 ineSchemaProperty.!==.$i.&&.!$de
134da0 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 finition).{.$this->addError($pat
134dc0 68 2c 20 22 54 68 65 20 70 72 6f 70 65 72 74 79 20 22 20 2e 20 24 69 20 2e 20 22 20 69 73 20 6e h,."The.property."...$i...".is.n
134de0 6f 74 20 64 65 66 69 6e 65 64 20 61 6e 64 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 64 6f ot.defined.and.the.definition.do
134e00 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 61 64 64 69 74 69 6f 6e 61 6c 20 70 72 6f 70 65 72 74 69 es.not.allow.additional.properti
134e20 65 73 22 2c 20 27 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 27 29 3b 0a 7d 0a 0a 0a 20 69 66 20 es",.'additionalProp');.}....if.
134e40 28 21 69 6e 5f 61 72 72 61 79 28 24 69 2c 20 24 6d 61 74 63 68 65 73 29 20 26 26 20 24 61 64 64 (!in_array($i,.$matches).&&.$add
134e60 69 74 69 6f 6e 61 6c 50 72 6f 70 20 26 26 20 21 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 69 itionalProp.&&.!$definition).{.i
134e80 66 20 28 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 3d 3d 20 74 72 75 65 29 20 7b 0a 24 f.($additionalProp.===.true).{.$
134ea0 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 6e 75 6c this->checkUndefined($value,.nul
134ec0 6c 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 63 l,.$path,.$i);.}.else.{.$this->c
134ee0 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 61 64 64 69 74 69 6f 6e 61 heckUndefined($value,.$additiona
134f00 6c 50 72 6f 70 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 72 65 71 75 69 lProp,.$path,.$i);.}.}....$requi
134f20 72 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 64 65 66 69 6e 69 74 re.=.$this->getProperty($definit
134f40 69 6f 6e 2c 20 27 72 65 71 75 69 72 65 73 27 29 3b 0a 69 66 20 28 24 72 65 71 75 69 72 65 20 26 ion,.'requires');.if.($require.&
134f60 26 20 21 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 65 6c 65 6d 65 6e 74 2c 20 &.!$this->getProperty($element,.
134f80 24 72 65 71 75 69 72 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 $require)).{.$this->addError($pa
134fa0 74 68 2c 20 22 54 68 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 74 68 65 20 70 72 6f 70 65 72 74 th,."The.presence.of.the.propert
134fc0 79 20 22 20 2e 20 24 69 20 2e 20 22 20 72 65 71 75 69 72 65 73 20 74 68 61 74 20 22 20 2e 20 24 y."...$i...".requires.that."...$
134fe0 72 65 71 75 69 72 65 20 2e 20 22 20 61 6c 73 6f 20 62 65 20 70 72 65 73 65 6e 74 22 2c 20 27 72 require...".also.be.present",.'r
135000 65 71 75 69 72 65 73 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 equires');.}..if.(!$definition).
135020 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 {...$this->checkUndefined($value
135040 2c 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 28 29 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d ,.new.\stdClass(),.$path,.$i);.}
135060 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c .}.}.........public.function.val
135080 69 64 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 24 65 6c 65 6d 65 6e 74 2c 20 24 6f 62 6a 65 63 idateDefinition($element,.$objec
1350a0 74 44 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c tDefinition.=.null,.$path.=.null
1350c0 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 20 61 ).{.foreach.($objectDefinition.a
1350e0 73 20 24 69 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 70 72 6f 70 65 72 74 79 20 3d 20 24 74 s.$i.=>.$value).{.$property.=.$t
135100 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 65 6c 65 6d 65 6e 74 2c 20 24 69 2c 20 6e his->getProperty($element,.$i,.n
135120 65 77 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 24 64 65 66 69 ew.UndefinedConstraint());.$defi
135140 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 6f 62 6a nition.=.$this->getProperty($obj
135160 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 2c 20 24 69 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b ectDefinition,.$i);.$this->check
135180 55 6e 64 65 66 69 6e 65 64 28 24 70 72 6f 70 65 72 74 79 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e Undefined($property,.$definition
1351a0 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 ,.$path,.$i);.}.}...........prot
1351c0 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 70 65 72 74 79 28 24 65 6c 65 6d ected.function.getProperty($elem
1351e0 65 6e 74 2c 20 24 70 72 6f 70 65 72 74 79 2c 20 24 66 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c ent,.$property,.$fallback.=.null
135200 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 65 6c 65 6d 65 6e 74 29 20 29 20 7b 0a 72 ).{.if.(is_array($element).).{.r
135220 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 70 72 6f 70 65 72 74 79 eturn.array_key_exists($property
135240 2c 20 24 65 6c 65 6d 65 6e 74 29 20 3f 20 24 65 6c 65 6d 65 6e 74 5b 24 70 72 6f 70 65 72 74 79 ,.$element).?.$element[$property
135260 5d 20 3a 20 24 66 61 6c 6c 62 61 63 6b 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 6f 62 6a 65 ].:.$fallback;.}.elseif.(is_obje
135280 63 74 28 24 65 6c 65 6d 65 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 70 72 6f 70 65 72 74 79 5f ct($element)).{.return.property_
1352a0 65 78 69 73 74 73 28 24 65 6c 65 6d 65 6e 74 2c 20 24 70 72 6f 70 65 72 74 79 29 20 3f 20 24 65 exists($element,.$property).?.$e
1352c0 6c 65 6d 65 6e 74 2d 3e 24 70 72 6f 70 65 72 74 79 20 3a 20 24 66 61 6c 6c 62 61 63 6b 3b 0a 7d lement->$property.:.$fallback;.}
1352e0 0a 0a 72 65 74 75 72 6e 20 24 66 61 6c 6c 62 61 63 6b 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ..return.$fallback;.}.}.<?php...
135300 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 ......namespace.JsonSchema\Const
135320 72 61 69 6e 74 73 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f raints;..use.JsonSchema\Exceptio
135340 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a n\InvalidArgumentException;.....
135360 0a 0a 0a 63 6c 61 73 73 20 53 63 68 65 6d 61 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 ...class.SchemaConstraint.extend
135380 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f s.Constraint.{....public.functio
1353a0 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c n.check($element,.$schema.=.null
1353c0 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 ,.$path.=.null,.$i.=.null).{.if.
1353e0 28 24 73 63 68 65 6d 61 20 21 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 68 ($schema.!==.null).{...$this->ch
135400 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2c 20 eckUndefined($element,.$schema,.
135420 27 27 2c 20 27 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 6f 70 65 72 74 79 5f 65 78 69 73 '',.'');.}.elseif.(property_exis
135440 74 73 28 24 65 6c 65 6d 65 6e 74 2c 20 24 74 68 69 73 2d 3e 69 6e 6c 69 6e 65 53 63 68 65 6d 61 ts($element,.$this->inlineSchema
135460 50 72 6f 70 65 72 74 79 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 Property)).{...$this->checkUndef
135480 69 6e 65 64 28 24 65 6c 65 6d 65 6e 74 2c 20 24 65 6c 65 6d 65 6e 74 2d 3e 7b 24 74 68 69 73 2d ined($element,.$element->{$this-
1354a0 3e 69 6e 6c 69 6e 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 7d 2c 20 27 27 2c 20 27 27 29 3b >inlineSchemaProperty},.'',.'');
1354c0 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d .}.else.{.throw.new.InvalidArgum
1354e0 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 6e 6f 20 73 63 68 65 6d 61 20 66 6f 75 6e 64 20 74 6f entException('no.schema.found.to
135500 20 76 65 72 69 66 79 20 61 67 61 69 6e 73 74 27 29 3b 0a 7d 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a 0a .verify.against');.}.}.}<?php...
135520 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 ......namespace.JsonSchema\Const
135540 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 74 72 69 6e 67 43 6f 6e 73 74 raints;........class.StringConst
135560 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 raint.extends.Constraint.{....pu
135580 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 blic.function.check($element,.$s
1355a0 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d chema.=.null,.$path.=.null,.$i.=
1355c0 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 61 .null).{...if.(isset($schema->ma
1355e0 78 4c 65 6e 67 74 68 29 20 26 26 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 65 6c 65 6d 65 xLength).&&.$this->strlen($eleme
135600 6e 74 29 20 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 4c 65 6e 67 74 68 29 20 7b 0a 24 74 68 69 nt).>.$schema->maxLength).{.$thi
135620 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 62 65 20 61 74 20 6d s->addError($path,."Must.be.at.m
135640 6f 73 74 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 4c 65 6e 67 74 68 20 2e 20 22 20 63 ost."...$schema->maxLength...".c
135660 68 61 72 61 63 74 65 72 73 20 6c 6f 6e 67 22 2c 20 27 6d 61 78 4c 65 6e 67 74 68 27 2c 20 61 72 haracters.long",.'maxLength',.ar
135680 72 61 79 28 0a 27 6d 61 78 4c 65 6e 67 74 68 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 ray(.'maxLength'.=>.$schema->max
1356a0 4c 65 6e 67 74 68 2c 0a 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 Length,.));.}....if.(isset($sche
1356c0 6d 61 2d 3e 6d 69 6e 4c 65 6e 67 74 68 29 20 26 26 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 ma->minLength).&&.$this->strlen(
1356e0 24 65 6c 65 6d 65 6e 74 29 20 3c 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 4c 65 6e 67 74 68 29 20 $element).<.$schema->minLength).
135700 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 62 {.$this->addError($path,."Must.b
135720 65 20 61 74 20 6c 65 61 73 74 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 4c 65 6e 67 74 e.at.least."...$schema->minLengt
135740 68 20 2e 20 22 20 63 68 61 72 61 63 74 65 72 73 20 6c 6f 6e 67 22 2c 20 27 6d 69 6e 4c 65 6e 67 h...".characters.long",.'minLeng
135760 74 68 27 2c 20 61 72 72 61 79 28 0a 27 6d 69 6e 4c 65 6e 67 74 68 27 20 3d 3e 20 24 73 63 68 65 th',.array(.'minLength'.=>.$sche
135780 6d 61 2d 3e 6d 69 6e 4c 65 6e 67 74 68 2c 0a 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 ma->minLength,.));.}....if.(isse
1357a0 74 28 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 29 20 26 26 20 21 70 72 65 67 5f 6d 61 74 t($schema->pattern).&&.!preg_mat
1357c0 63 68 28 27 23 27 20 2e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 23 27 2c 20 27 5c 5c 23 27 2c ch('#'...str_replace('#',.'\\#',
1357e0 20 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 29 20 2e 20 27 23 27 2c 20 24 65 6c 65 6d 65 .$schema->pattern)...'#',.$eleme
135800 6e 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 44 nt)).{.$this->addError($path,."D
135820 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 74 68 65 20 72 65 67 65 78 20 70 61 74 74 65 72 6e 20 oes.not.match.the.regex.pattern.
135840 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 2c 20 27 70 61 74 74 65 72 6e 27 2c "...$schema->pattern,.'pattern',
135860 20 61 72 72 61 79 28 0a 27 70 61 74 74 65 72 6e 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 70 61 .array(.'pattern'.=>.$schema->pa
135880 74 74 65 72 6e 2c 0a 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 46 6f 72 6d 61 74 ttern,.));.}..$this->checkFormat
1358a0 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a ($element,.$schema,.$path,.$i);.
1358c0 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 74 72 6c 65 6e 28 24 73 74 72 69 }..private.function.strlen($stri
1358e0 6e 67 29 0a 7b 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6d 62 73 74 ng).{.if.(extension_loaded('mbst
135900 72 69 6e 67 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 6d 62 5f 73 74 72 6c 65 6e 28 24 73 74 72 69 ring')).{.return.mb_strlen($stri
135920 6e 67 2c 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 74 72 69 6e 67 29 29 ng,.mb_detect_encoding($string))
135940 3b 0a 7d 20 65 6c 73 65 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 ;.}.else.{.return.strlen($string
135960 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 );.}.}.}.<?php.........namespace
135980 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 75 73 65 20 4a 73 .JsonSchema\Constraints;..use.Js
1359a0 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 onSchema\Exception\InvalidArgume
1359c0 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 ntException;.use.UnexpectedValue
1359e0 45 78 63 65 70 74 69 6f 6e 20 61 73 20 53 74 61 6e 64 61 72 64 55 6e 65 78 70 65 63 74 65 64 56 Exception.as.StandardUnexpectedV
135a00 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 79 70 65 alueException;........class.Type
135a20 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a Constraint.extends.Constraint.{.
135a40 0a 0a 0a 73 74 61 74 69 63 20 24 77 6f 72 64 69 6e 67 20 3d 20 61 72 72 61 79 28 0a 27 69 6e 74 ...static.$wording.=.array(.'int
135a60 65 67 65 72 27 20 3d 3e 20 27 61 6e 20 69 6e 74 65 67 65 72 27 2c 0a 27 6e 75 6d 62 65 72 27 20 eger'.=>.'an.integer',.'number'.
135a80 3d 3e 20 27 61 20 6e 75 6d 62 65 72 27 2c 0a 27 62 6f 6f 6c 65 61 6e 27 20 3d 3e 20 27 61 20 62 =>.'a.number',.'boolean'.=>.'a.b
135aa0 6f 6f 6c 65 61 6e 27 2c 0a 27 6f 62 6a 65 63 74 27 20 3d 3e 20 27 61 6e 20 6f 62 6a 65 63 74 27 oolean',.'object'.=>.'an.object'
135ac0 2c 0a 27 61 72 72 61 79 27 20 3d 3e 20 27 61 6e 20 61 72 72 61 79 27 2c 0a 27 73 74 72 69 6e 67 ,.'array'.=>.'an.array',.'string
135ae0 27 20 3d 3e 20 27 61 20 73 74 72 69 6e 67 27 2c 0a 27 6e 75 6c 6c 27 20 3d 3e 20 27 61 20 6e 75 '.=>.'a.string',.'null'.=>.'a.nu
135b00 6c 6c 27 2c 0a 27 61 6e 79 27 20 3d 3e 20 4e 55 4c 4c 2c 20 0a 20 30 20 3d 3e 20 4e 55 4c 4c 2c ll',.'any'.=>.NULL,...0.=>.NULL,
135b20 20 0a 20 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 ...);.....public.function.check(
135b40 24 76 61 6c 75 65 20 3d 20 6e 75 6c 6c 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 $value.=.null,.$schema.=.null,.$
135b60 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 79 70 65 20 path.=.null,.$i.=.null).{.$type.
135b80 3d 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 74 79 70 65 29 20 3f 20 24 73 63 68 65 6d 61 =.isset($schema->type).?.$schema
135ba0 2d 3e 74 79 70 65 20 3a 20 6e 75 6c 6c 3b 0a 24 69 73 56 61 6c 69 64 20 3d 20 74 72 75 65 3b 0a ->type.:.null;.$isValid.=.true;.
135bc0 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 74 79 70 65 29 29 20 7b 0a 0a 20 24 76 61 6c 69 64 .if.(is_array($type)).{...$valid
135be0 61 74 65 64 4f 6e 65 54 79 70 65 20 3d 20 66 61 6c 73 65 3b 0a 24 65 72 72 6f 72 73 20 3d 20 61 atedOneType.=.false;.$errors.=.a
135c00 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 79 70 65 20 61 73 20 24 74 70 29 20 7b rray();.foreach.($type.as.$tp).{
135c20 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 54 79 70 65 43 6f 6e 73 74 72 61 69 6e 74 .$validator.=.new.TypeConstraint
135c40 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 4d 6f 64 65 29 3b 0a 24 73 75 62 53 63 68 65 6d 61 20 3d ($this->checkMode);.$subSchema.=
135c60 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 28 29 3b 0a 24 73 75 62 53 63 68 65 6d 61 2d 3e 74 79 .new.\stdClass();.$subSchema->ty
135c80 70 65 20 3d 20 24 74 70 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c pe.=.$tp;.$validator->check($val
135ca0 75 65 2c 20 24 73 75 62 53 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 6e 75 6c 6c 29 3b 0a 24 65 ue,.$subSchema,.$path,.null);.$e
135cc0 72 72 6f 72 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a rror.=.$validator->getErrors();.
135ce0 0a 69 66 20 28 21 63 6f 75 6e 74 28 24 65 72 72 6f 72 29 29 20 7b 0a 24 76 61 6c 69 64 61 74 65 .if.(!count($error)).{.$validate
135d00 64 4f 6e 65 54 79 70 65 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 65 72 72 6f dOneType.=.true;.break;.}..$erro
135d20 72 73 20 3d 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 69 66 20 28 21 24 76 61 6c 69 64 61 74 65 64 4f rs.=.$error;.}..if.(!$validatedO
135d40 6e 65 54 79 70 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 65 72 72 6f neType).{.$this->addErrors($erro
135d60 72 73 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 6f 62 6a rs);..return;.}.}.elseif.(is_obj
135d80 65 63 74 28 24 74 79 70 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 ect($type)).{.$this->checkUndefi
135da0 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 74 79 70 65 2c 20 24 70 61 74 68 29 3b 0a 7d 20 65 6c 73 ned($value,.$type,.$path);.}.els
135dc0 65 20 7b 0a 24 69 73 56 61 6c 69 64 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 54 79 e.{.$isValid.=.$this->validateTy
135de0 70 65 28 24 76 61 6c 75 65 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 73 56 61 6c pe($value,.$type);.}..if.($isVal
135e00 69 64 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 65 6c 66 3a id.===.false).{.if.(!isset(self:
135e20 3a 24 77 6f 72 64 69 6e 67 5b 24 74 79 70 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 53 :$wording[$type])).{.throw.new.S
135e40 74 61 6e 64 61 72 64 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 tandardUnexpectedValueException(
135e60 0a 73 70 72 69 6e 74 66 28 0a 22 4e 6f 20 77 6f 72 64 69 6e 67 20 66 6f 72 20 25 73 20 61 76 61 .sprintf(."No.wording.for.%s.ava
135e80 69 6c 61 62 6c 65 2c 20 65 78 70 65 63 74 65 64 20 77 6f 72 64 69 6e 67 73 20 61 72 65 3a 20 5b ilable,.expected.wordings.are:.[
135ea0 25 73 5d 22 2c 0a 76 61 72 5f 65 78 70 6f 72 74 28 24 74 79 70 65 2c 20 74 72 75 65 29 2c 0a 69 %s]",.var_export($type,.true),.i
135ec0 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 73 65 6c 66 3a 3a mplode(',.',.array_filter(self::
135ee0 24 77 6f 72 64 69 6e 67 29 29 29 0a 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 $wording))).);.}.$this->addError
135f00 28 24 70 61 74 68 2c 20 75 63 77 6f 72 64 73 28 67 65 74 74 79 70 65 28 24 76 61 6c 75 65 29 29 ($path,.ucwords(gettype($value))
135f20 20 2e 20 22 20 76 61 6c 75 65 20 66 6f 75 6e 64 2c 20 62 75 74 20 22 20 2e 20 73 65 6c 66 3a 3a ...".value.found,.but."...self::
135f40 24 77 6f 72 64 69 6e 67 5b 24 74 79 70 65 5d 20 2e 20 22 20 69 73 20 72 65 71 75 69 72 65 64 22 $wording[$type]...".is.required"
135f60 2c 20 27 74 79 70 65 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 ,.'type');.}.}............protec
135f80 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 54 79 70 65 28 24 76 61 6c 75 65 ted.function.validateType($value
135fa0 2c 20 24 74 79 70 65 29 0a 7b 0a 0a 20 69 66 20 28 21 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 ,.$type).{...if.(!$type).{.retur
135fc0 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 27 69 6e 74 65 67 65 72 27 20 3d 3d 3d 20 24 74 79 n.true;.}..if.('integer'.===.$ty
135fe0 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 5f 69 6e 74 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a pe).{.return.is_int($value);.}..
136000 69 66 20 28 27 6e 75 6d 62 65 72 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e if.('number'.===.$type).{.return
136020 20 69 73 5f 6e 75 6d 65 72 69 63 28 24 76 61 6c 75 65 29 20 26 26 20 21 69 73 5f 73 74 72 69 6e .is_numeric($value).&&.!is_strin
136040 67 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 62 6f 6f 6c 65 61 6e 27 20 3d 3d 3d 20 g($value);.}..if.('boolean'.===.
136060 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 5f 62 6f 6f 6c 28 24 76 61 6c 75 65 29 3b $type).{.return.is_bool($value);
136080 0a 7d 0a 0a 69 66 20 28 27 6f 62 6a 65 63 74 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b 0a 72 65 .}..if.('object'.===.$type).{.re
1360a0 74 75 72 6e 20 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 3b 0a 0a 20 7d 0a 0a 69 66 20 turn.is_object($value);...}..if.
1360c0 28 27 61 72 72 61 79 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 5f ('array'.===.$type).{.return.is_
1360e0 61 72 72 61 79 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 73 74 72 69 6e 67 27 20 3d array($value);.}..if.('string'.=
136100 3d 3d 20 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 5f 73 74 72 69 6e 67 28 24 76 61 ==.$type).{.return.is_string($va
136120 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 65 6d 61 69 6c 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 lue);.}..if.('email'.===.$type).
136140 7b 0a 72 65 74 75 72 6e 20 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 {.return.is_string($value);.}..i
136160 66 20 28 27 6e 75 6c 6c 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 f.('null'.===.$type).{.return.is
136180 5f 6e 75 6c 6c 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 61 6e 79 27 20 3d 3d 3d 20 _null($value);.}..if.('any'.===.
1361a0 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e $type).{.return.true;.}..throw.n
1361c0 65 77 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 28 69 73 5f ew.InvalidArgumentException((is_
1361e0 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 20 3f 20 27 6f 62 6a 65 63 74 27 20 3a 20 24 76 61 6c object($value).?.'object'.:.$val
136200 75 65 29 20 2e 20 27 20 69 73 20 61 6e 20 69 6e 76 61 6c 69 64 20 74 79 70 65 20 66 6f 72 20 27 ue)...'.is.an.invalid.type.for.'
136220 20 2e 20 24 74 79 70 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d ...$type);.}.}.<?php.........nam
136240 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a espace.JsonSchema\Constraints;..
136260 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 use.JsonSchema\Exception\Invalid
136280 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d ArgumentException;.use.JsonSchem
1362a0 61 5c 55 72 69 5c 55 72 69 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 a\Uri\UriResolver;........class.
1362c0 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 UndefinedConstraint.extends.Cons
1362e0 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 traint.{....public.function.chec
136300 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 k($value,.$schema.=.null,.$path.
136320 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 69 73 5f 6e 75 6c 6c =.null,.$i.=.null).{.if.(is_null
136340 28 24 73 63 68 65 6d 61 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f ($schema)).{.return;.}..if.(!is_
136360 6f 62 6a 65 63 74 28 24 73 63 68 65 6d 61 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 object($schema)).{.throw.new.Inv
136380 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 0a 27 47 69 76 65 6e 20 73 63 alidArgumentException(.'Given.sc
1363a0 68 65 6d 61 20 6d 75 73 74 20 62 65 20 61 6e 20 6f 62 6a 65 63 74 20 69 6e 20 27 20 2e 20 24 70 hema.must.be.an.object.in.'...$p
1363c0 61 74 68 0a 2e 20 27 20 62 75 74 20 69 73 20 61 20 27 20 2e 20 67 65 74 74 79 70 65 28 24 73 63 ath...'.but.is.a.'...gettype($sc
1363e0 68 65 6d 61 29 0a 29 3b 0a 7d 0a 0a 24 69 20 3d 20 69 73 5f 6e 75 6c 6c 28 24 69 29 20 3f 20 22 hema).);.}..$i.=.is_null($i).?."
136400 22 20 3a 20 24 69 3b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 6e 74 ".:.$i;.$path.=.$this->increment
136420 50 61 74 68 28 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 Path($path,.$i);....$this->valid
136440 61 74 65 43 6f 6d 6d 6f 6e 50 72 6f 70 65 72 74 69 65 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 ateCommonProperties($value,.$sch
136460 65 6d 61 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 4f ema,.$path);....$this->validateO
136480 66 50 72 6f 70 65 72 74 69 65 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 fProperties($value,.$schema,.$pa
1364a0 74 68 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 54 79 70 65 73 28 24 76 61 th);....$this->validateTypes($va
1364c0 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 0a 0a 0a lue,.$schema,.$path,.$i);.}.....
1364e0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 54 79 70 .....public.function.validateTyp
136500 65 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 es($value,.$schema.=.null,.$path
136520 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 69 73 5f 61 .=.null,.$i.=.null).{...if.(is_a
136540 72 72 61 79 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 41 72 72 61 rray($value)).{.$this->checkArra
136560 79 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d y($value,.$schema,.$path,.$i);.}
136580 0a 0a 0a 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 20 26 26 20 28 69 73 ....if.(is_object($value).&&.(is
1365a0 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 70 72 6f 70 65 72 74 69 65 73 29 20 7c 7c 20 69 73 73 65 set($schema->properties).||.isse
1365c0 74 28 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 29 20 7c 7c t($schema->patternProperties).||
1365e0 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 .isset($schema->additionalProper
136600 74 69 65 73 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 4f 62 6a 65 63 74 28 0a 24 76 ties))).{.$this->checkObject(.$v
136620 61 6c 75 65 2c 0a 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 70 72 6f 70 65 72 74 69 65 73 29 alue,.isset($schema->properties)
136640 20 3f 20 24 73 63 68 65 6d 61 2d 3e 70 72 6f 70 65 72 74 69 65 73 20 3a 20 6e 75 6c 6c 2c 0a 24 .?.$schema->properties.:.null,.$
136660 70 61 74 68 2c 0a 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 50 path,.isset($schema->additionalP
136680 72 6f 70 65 72 74 69 65 73 29 20 3f 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c roperties).?.$schema->additional
1366a0 50 72 6f 70 65 72 74 69 65 73 20 3a 20 6e 75 6c 6c 2c 0a 69 73 73 65 74 28 24 73 63 68 65 6d 61 Properties.:.null,.isset($schema
1366c0 2d 3e 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 29 20 3f 20 24 73 63 68 65 6d 61 2d 3e ->patternProperties).?.$schema->
1366e0 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 20 3a 20 6e 75 6c 6c 0a 29 3b 0a 7d 0a 0a 0a patternProperties.:.null.);.}...
136700 20 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d .if.(is_string($value)).{.$this-
136720 3e 63 68 65 63 6b 53 74 72 69 6e 67 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 >checkString($value,.$schema,.$p
136740 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 6e 75 6d 65 72 69 63 28 24 76 ath,.$i);.}....if.(is_numeric($v
136760 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 4e 75 6d 62 65 72 28 24 76 61 6c alue)).{.$this->checkNumber($val
136780 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 0a 20 69 66 ue,.$schema,.$path,.$i);.}....if
1367a0 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 65 6e 75 6d 29 29 20 7b 0a 24 74 68 69 73 2d .(isset($schema->enum)).{.$this-
1367c0 3e 63 68 65 63 6b 45 6e 75 6d 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 >checkEnum($value,.$schema,.$pat
1367e0 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 h,.$i);.}.}..........protected.f
136800 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 43 6f 6d 6d 6f 6e 50 72 6f 70 65 72 74 69 65 73 unction.validateCommonProperties
136820 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d ($value,.$schema.=.null,.$path.=
136840 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 22 22 29 0a 7b 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 .null,.$i.=."").{...if.(isset($s
136860 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 29 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 chema->extends)).{.if.(is_string
136880 28 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 29 29 20 7b 0a 24 73 63 68 65 6d 61 2d 3e 65 ($schema->extends)).{.$schema->e
1368a0 78 74 65 6e 64 73 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 55 72 69 28 24 73 63 68 xtends.=.$this->validateUri($sch
1368c0 65 6d 61 2c 20 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 29 3b 0a 7d 0a 69 66 20 28 69 73 ema,.$schema->extends);.}.if.(is
1368e0 5f 61 72 72 61 79 28 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 29 29 20 7b 0a 66 6f 72 65 _array($schema->extends)).{.fore
136900 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 20 61 73 20 24 65 78 74 65 6e 64 ach.($schema->extends.as.$extend
136920 73 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 s).{.$this->checkUndefined($valu
136940 65 2c 20 24 65 78 74 65 6e 64 73 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 20 65 6c 73 e,.$extends,.$path,.$i);.}.}.els
136960 65 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 e.{.$this->checkUndefined($value
136980 2c 20 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a ,.$schema->extends,.$path,.$i);.
1369a0 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 29 20 7b 0a }.}....if.(is_object($value)).{.
1369c0 69 66 20 28 21 28 24 76 61 6c 75 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e 65 if.(!($value.instanceof.Undefine
1369e0 64 43 6f 6e 73 74 72 61 69 6e 74 29 20 26 26 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 72 dConstraint).&&.isset($schema->r
136a00 65 71 75 69 72 65 64 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 73 63 68 65 6d 61 2d 3e 72 65 equired).&&.is_array($schema->re
136a20 71 75 69 72 65 64 29 20 29 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e quired).).{...foreach.($schema->
136a40 72 65 71 75 69 72 65 64 20 61 73 20 24 72 65 71 75 69 72 65 64 29 20 7b 0a 69 66 20 28 21 70 72 required.as.$required).{.if.(!pr
136a60 6f 70 65 72 74 79 5f 65 78 69 73 74 73 28 24 76 61 6c 75 65 2c 20 24 72 65 71 75 69 72 65 64 29 operty_exists($value,.$required)
136a80 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 28 21 24 70 61 74 68 29 20 3f 20 24 ).{.$this->addError((!$path).?.$
136aa0 72 65 71 75 69 72 65 64 20 3a 20 22 24 70 61 74 68 2e 24 72 65 71 75 69 72 65 64 22 2c 20 22 54 required.:."$path.$required",."T
136ac0 68 65 20 70 72 6f 70 65 72 74 79 20 22 20 2e 20 24 72 65 71 75 69 72 65 64 20 2e 20 22 20 69 73 he.property."...$required...".is
136ae0 20 72 65 71 75 69 72 65 64 22 2c 20 27 72 65 71 75 69 72 65 64 27 29 3b 0a 7d 0a 7d 0a 7d 20 65 .required",.'required');.}.}.}.e
136b00 6c 73 65 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 29 lse.if.(isset($schema->required)
136b20 20 26 26 20 21 69 73 5f 61 72 72 61 79 28 24 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 29 .&&.!is_array($schema->required)
136b40 29 20 7b 0a 0a 20 69 66 20 28 20 24 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 20 26 26 20 ).{...if.(.$schema->required.&&.
136b60 24 76 61 6c 75 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 $value.instanceof.UndefinedConst
136b80 72 61 69 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 raint).{.$this->addError($path,.
136ba0 22 49 73 20 6d 69 73 73 69 6e 67 20 61 6e 64 20 69 74 20 69 73 20 72 65 71 75 69 72 65 64 22 2c "Is.missing.and.it.is.required",
136bc0 20 27 72 65 71 75 69 72 65 64 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 28 24 76 61 .'required');.}.}.}....if.(!($va
136be0 6c 75 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 lue.instanceof.UndefinedConstrai
136c00 6e 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 54 79 70 65 28 24 76 61 6c 75 65 2c 20 nt)).{.$this->checkType($value,.
136c20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 $schema,.$path);.}....if.(isset(
136c40 24 73 63 68 65 6d 61 2d 3e 64 69 73 61 6c 6c 6f 77 29 29 20 7b 0a 24 69 6e 69 74 45 72 72 6f 72 $schema->disallow)).{.$initError
136c60 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 0a 24 74 79 70 65 53 63 s.=.$this->getErrors();..$typeSc
136c80 68 65 6d 61 20 3d 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 28 29 3b 0a 24 74 79 70 65 53 63 68 hema.=.new.\stdClass();.$typeSch
136ca0 65 6d 61 2d 3e 74 79 70 65 20 3d 20 24 73 63 68 65 6d 61 2d 3e 64 69 73 61 6c 6c 6f 77 3b 0a 24 ema->type.=.$schema->disallow;.$
136cc0 74 68 69 73 2d 3e 63 68 65 63 6b 54 79 70 65 28 24 76 61 6c 75 65 2c 20 24 74 79 70 65 53 63 68 this->checkType($value,.$typeSch
136ce0 65 6d 61 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d ema,.$path);....if.(count($this-
136d00 3e 67 65 74 45 72 72 6f 72 73 28 29 29 20 3d 3d 20 63 6f 75 6e 74 28 24 69 6e 69 74 45 72 72 6f >getErrors()).==.count($initErro
136d20 72 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 44 rs)).{.$this->addError($path,."D
136d40 69 73 61 6c 6c 6f 77 65 64 20 76 61 6c 75 65 20 77 61 73 20 6d 61 74 63 68 65 64 22 2c 20 27 64 isallowed.value.was.matched",.'d
136d60 69 73 61 6c 6c 6f 77 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 isallow');.}.else.{.$this->error
136d80 73 20 3d 20 24 69 6e 69 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 s.=.$initErrors;.}.}..if.(isset(
136da0 24 73 63 68 65 6d 61 2d 3e 6e 6f 74 29 29 20 7b 0a 24 69 6e 69 74 45 72 72 6f 72 73 20 3d 20 24 $schema->not)).{.$initErrors.=.$
136dc0 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 this->getErrors();.$this->checkU
136de0 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2d 3e 6e 6f 74 2c 20 24 ndefined($value,.$schema->not,.$
136e00 70 61 74 68 2c 20 24 69 29 3b 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 path,.$i);....if.(count($this->g
136e20 65 74 45 72 72 6f 72 73 28 29 29 20 3d 3d 20 63 6f 75 6e 74 28 24 69 6e 69 74 45 72 72 6f 72 73 etErrors()).==.count($initErrors
136e40 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 61 74 )).{.$this->addError($path,."Mat
136e60 63 68 65 64 20 61 20 73 63 68 65 6d 61 20 77 68 69 63 68 20 69 74 20 73 68 6f 75 6c 64 20 6e 6f ched.a.schema.which.it.should.no
136e80 74 22 2c 20 27 6e 6f 74 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f t",.'not');.}.else.{.$this->erro
136ea0 72 73 20 3d 20 24 69 6e 69 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f rs.=.$initErrors;.}.}....if.(is_
136ec0 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 73 63 68 object($value)).{.if.(isset($sch
136ee0 65 6d 61 2d 3e 6d 69 6e 50 72 6f 70 65 72 74 69 65 73 29 29 20 7b 0a 69 66 20 28 63 6f 75 6e 74 ema->minProperties)).{.if.(count
136f00 28 67 65 74 5f 6f 62 6a 65 63 74 5f 76 61 72 73 28 24 76 61 6c 75 65 29 29 20 3c 20 24 73 63 68 (get_object_vars($value)).<.$sch
136f20 65 6d 61 2d 3e 6d 69 6e 50 72 6f 70 65 72 74 69 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 ema->minProperties).{.$this->add
136f40 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 63 6f 6e 74 61 69 6e 20 61 20 6d 69 6e Error($path,."Must.contain.a.min
136f60 69 6d 75 6d 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 50 72 6f 70 65 72 74 69 imum.of."...$schema->minProperti
136f80 65 73 20 2e 20 22 20 70 72 6f 70 65 72 74 69 65 73 22 2c 20 27 6d 69 6e 50 72 6f 70 65 72 74 69 es...".properties",.'minProperti
136fa0 65 73 27 2c 20 61 72 72 61 79 28 27 6d 69 6e 50 72 6f 70 65 72 74 69 65 73 27 20 3d 3e 20 24 73 es',.array('minProperties'.=>.$s
136fc0 63 68 65 6d 61 2d 3e 6d 69 6e 50 72 6f 70 65 72 74 69 65 73 2c 29 29 3b 0a 7d 0a 7d 0a 69 66 20 chema->minProperties,));.}.}.if.
136fe0 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 61 78 50 72 6f 70 65 72 74 69 65 73 29 29 20 (isset($schema->maxProperties)).
137000 7b 0a 69 66 20 28 63 6f 75 6e 74 28 67 65 74 5f 6f 62 6a 65 63 74 5f 76 61 72 73 28 24 76 61 6c {.if.(count(get_object_vars($val
137020 75 65 29 29 20 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 50 72 6f 70 65 72 74 69 65 73 29 20 7b ue)).>.$schema->maxProperties).{
137040 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 63 6f .$this->addError($path,."Must.co
137060 6e 74 61 69 6e 20 6e 6f 20 6d 6f 72 65 20 74 68 61 6e 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e ntain.no.more.than."...$schema->
137080 6d 61 78 50 72 6f 70 65 72 74 69 65 73 20 2e 20 22 20 70 72 6f 70 65 72 74 69 65 73 22 2c 20 27 maxProperties...".properties",.'
1370a0 6d 61 78 50 72 6f 70 65 72 74 69 65 73 27 2c 20 61 72 72 61 79 28 27 6d 61 78 50 72 6f 70 65 72 maxProperties',.array('maxProper
1370c0 74 69 65 73 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 50 72 6f 70 65 72 74 69 65 73 2c ties'.=>.$schema->maxProperties,
1370e0 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 ));.}.}.}....if.(is_object($valu
137100 65 29 20 26 26 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 64 65 70 65 6e 64 65 6e 63 69 65 e).&&.isset($schema->dependencie
137120 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 65 70 65 6e 64 65 6e 63 69 65 s)).{.$this->validateDependencie
137140 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2d 3e 64 65 70 65 6e 64 65 6e 63 69 65 73 2c s($value,.$schema->dependencies,
137160 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 .$path);.}.}..........protected.
137180 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 4f 66 50 72 6f 70 65 72 74 69 65 73 28 24 76 function.validateOfProperties($v
1371a0 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 20 3d 20 22 22 29 0a 7b alue,.$schema,.$path,.$i.=."").{
1371c0 0a 0a 20 69 66 20 28 24 76 61 6c 75 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e ...if.($value.instanceof.Undefin
1371e0 65 64 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 69 edConstraint).{.return;.}..if.(i
137200 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 6c 6c 4f 66 29 29 20 7b 0a 24 69 73 56 61 6c 69 64 sset($schema->allOf)).{.$isValid
137220 20 3d 20 74 72 75 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e 61 6c 6c 4f 66 .=.true;.foreach.($schema->allOf
137240 20 61 73 20 24 61 6c 6c 4f 66 29 20 7b 0a 24 69 6e 69 74 45 72 72 6f 72 73 20 3d 20 24 74 68 69 .as.$allOf).{.$initErrors.=.$thi
137260 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 s->getErrors();.$this->checkUnde
137280 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 61 6c 6c 4f 66 2c 20 24 70 61 74 68 2c 20 24 69 29 fined($value,.$allOf,.$path,.$i)
1372a0 3b 0a 24 69 73 56 61 6c 69 64 20 3d 20 24 69 73 56 61 6c 69 64 20 26 26 20 28 63 6f 75 6e 74 28 ;.$isValid.=.$isValid.&&.(count(
1372c0 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 20 3d 3d 20 63 6f 75 6e 74 28 24 69 6e $this->getErrors()).==.count($in
1372e0 69 74 45 72 72 6f 72 73 29 29 3b 0a 7d 0a 69 66 20 28 21 24 69 73 56 61 6c 69 64 29 20 7b 0a 24 itErrors));.}.if.(!$isValid).{.$
137300 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 46 61 69 6c 65 64 20 74 6f this->addError($path,."Failed.to
137320 20 6d 61 74 63 68 20 61 6c 6c 20 73 63 68 65 6d 61 73 22 2c 20 27 61 6c 6c 4f 66 27 29 3b 0a 7d .match.all.schemas",.'allOf');.}
137340 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 6e 79 4f 66 29 29 20 7b .}..if.(isset($schema->anyOf)).{
137360 0a 24 69 73 56 61 6c 69 64 20 3d 20 66 61 6c 73 65 3b 0a 24 73 74 61 72 74 45 72 72 6f 72 73 20 .$isValid.=.false;.$startErrors.
137380 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 =.$this->getErrors();.foreach.($
1373a0 73 63 68 65 6d 61 2d 3e 61 6e 79 4f 66 20 61 73 20 24 61 6e 79 4f 66 29 20 7b 0a 24 69 6e 69 74 schema->anyOf.as.$anyOf).{.$init
1373c0 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 24 74 68 Errors.=.$this->getErrors();.$th
1373e0 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 61 6e 79 4f is->checkUndefined($value,.$anyO
137400 66 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 69 66 20 28 24 69 73 56 61 6c 69 64 20 3d 20 28 63 f,.$path,.$i);.if.($isValid.=.(c
137420 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 20 3d 3d 20 63 6f 75 6e ount($this->getErrors()).==.coun
137440 74 28 24 69 6e 69 74 45 72 72 6f 72 73 29 29 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 69 66 t($initErrors))).{.break;.}.}.if
137460 20 28 21 24 69 73 56 61 6c 69 64 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 .(!$isValid).{.$this->addError($
137480 70 61 74 68 2c 20 22 46 61 69 6c 65 64 20 74 6f 20 6d 61 74 63 68 20 61 74 20 6c 65 61 73 74 20 path,."Failed.to.match.at.least.
1374a0 6f 6e 65 20 73 63 68 65 6d 61 22 2c 20 27 61 6e 79 4f 66 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a one.schema",.'anyOf');.}.else.{.
1374c0 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 73 74 61 72 74 45 72 72 6f 72 73 3b 0a 7d 0a $this->errors.=.$startErrors;.}.
1374e0 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6f 6e 65 4f 66 29 29 20 7b 0a }..if.(isset($schema->oneOf)).{.
137500 24 61 6c 6c 45 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6d 61 74 63 68 65 64 53 63 $allErrors.=.array();.$matchedSc
137520 68 65 6d 61 73 20 3d 20 30 3b 0a 24 73 74 61 72 74 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d hemas.=.0;.$startErrors.=.$this-
137540 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e >getErrors();.foreach.($schema->
137560 6f 6e 65 4f 66 20 61 73 20 24 6f 6e 65 4f 66 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 oneOf.as.$oneOf).{.$this->errors
137580 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 .=.array();.$this->checkUndefine
1375a0 64 28 24 76 61 6c 75 65 2c 20 24 6f 6e 65 4f 66 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 69 66 d($value,.$oneOf,.$path,.$i);.if
1375c0 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 20 3d 3d 20 30 .(count($this->getErrors()).==.0
1375e0 29 20 7b 0a 24 6d 61 74 63 68 65 64 53 63 68 65 6d 61 73 2b 2b 3b 0a 7d 0a 24 61 6c 6c 45 72 72 ).{.$matchedSchemas++;.}.$allErr
137600 6f 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 61 6c 6c 45 72 72 6f 72 73 2c 20 61 72 ors.=.array_merge($allErrors,.ar
137620 72 61 79 5f 76 61 6c 75 65 73 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 29 3b ray_values($this->getErrors()));
137640 0a 7d 0a 69 66 20 28 24 6d 61 74 63 68 65 64 53 63 68 65 6d 61 73 20 21 3d 3d 20 31 29 20 7b 0a .}.if.($matchedSchemas.!==.1).{.
137660 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 0a 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 24 $this->addErrors(.array_merge(.$
137680 61 6c 6c 45 72 72 6f 72 73 2c 0a 61 72 72 61 79 28 61 72 72 61 79 28 0a 27 70 72 6f 70 65 72 74 allErrors,.array(array(.'propert
1376a0 79 27 20 3d 3e 20 24 70 61 74 68 2c 0a 27 6d 65 73 73 61 67 65 27 20 3d 3e 20 22 46 61 69 6c 65 y'.=>.$path,.'message'.=>."Faile
1376c0 64 20 74 6f 20 6d 61 74 63 68 20 65 78 61 63 74 6c 79 20 6f 6e 65 20 73 63 68 65 6d 61 22 2c 0a d.to.match.exactly.one.schema",.
1376e0 27 63 6f 6e 73 74 72 61 69 6e 74 27 20 3d 3e 20 27 6f 6e 65 4f 66 27 2c 0a 29 2c 29 2c 0a 24 73 'constraint'.=>.'oneOf',.),),.$s
137700 74 61 72 74 45 72 72 6f 72 73 0a 29 0a 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e tartErrors.).);.}.else.{.$this->
137720 65 72 72 6f 72 73 20 3d 20 24 73 74 61 72 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a errors.=.$startErrors;.}.}.}....
137740 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 ......protected.function.validat
137760 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 76 61 6c 75 65 2c 20 24 64 65 70 65 6e 64 65 6e 63 eDependencies($value,.$dependenc
137780 69 65 73 2c 20 24 70 61 74 68 2c 20 24 69 20 3d 20 22 22 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 ies,.$path,.$i.=."").{.foreach.(
1377a0 24 64 65 70 65 6e 64 65 6e 63 69 65 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 64 65 70 65 6e 64 $dependencies.as.$key.=>.$depend
1377c0 65 6e 63 79 29 20 7b 0a 69 66 20 28 70 72 6f 70 65 72 74 79 5f 65 78 69 73 74 73 28 24 76 61 6c ency).{.if.(property_exists($val
1377e0 75 65 2c 20 24 6b 65 79 29 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 64 65 70 65 ue,.$key)).{.if.(is_string($depe
137800 6e 64 65 6e 63 79 29 29 20 7b 0a 0a 20 69 66 20 28 21 70 72 6f 70 65 72 74 79 5f 65 78 69 73 74 ndency)).{...if.(!property_exist
137820 73 28 24 76 61 6c 75 65 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 29 29 20 7b 0a 24 74 68 69 73 2d s($value,.$dependency)).{.$this-
137840 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 24 6b 65 79 20 64 65 70 65 6e 64 73 20 6f >addError($path,."$key.depends.o
137860 6e 20 24 64 65 70 65 6e 64 65 6e 63 79 20 61 6e 64 20 24 64 65 70 65 6e 64 65 6e 63 79 20 69 73 n.$dependency.and.$dependency.is
137880 20 6d 69 73 73 69 6e 67 22 2c 20 27 64 65 70 65 6e 64 65 6e 63 69 65 73 27 29 3b 0a 7d 0a 7d 20 .missing",.'dependencies');.}.}.
1378a0 65 6c 73 65 20 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 64 65 70 65 6e 64 65 6e 63 79 29 29 20 else.if.(is_array($dependency)).
1378c0 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 64 65 70 65 6e 64 65 6e 63 79 20 61 73 20 24 64 29 20 {...foreach.($dependency.as.$d).
1378e0 7b 0a 69 66 20 28 21 70 72 6f 70 65 72 74 79 5f 65 78 69 73 74 73 28 24 76 61 6c 75 65 2c 20 24 {.if.(!property_exists($value,.$
137900 64 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 24 6b d)).{.$this->addError($path,."$k
137920 65 79 20 64 65 70 65 6e 64 73 20 6f 6e 20 24 64 20 61 6e 64 20 24 64 20 69 73 20 6d 69 73 73 69 ey.depends.on.$d.and.$d.is.missi
137940 6e 67 22 2c 20 27 64 65 70 65 6e 64 65 6e 63 69 65 73 27 29 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 ng",.'dependencies');.}.}.}.else
137960 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 64 65 70 65 6e 64 65 6e 63 79 29 29 20 7b 0a 0a .if.(is_object($dependency)).{..
137980 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 .$this->checkUndefined($value,.$
1379a0 64 65 70 65 6e 64 65 6e 63 79 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a dependency,.$path,.$i);.}.}.}.}.
1379c0 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 55 72 69 28 .protected.function.validateUri(
1379e0 24 73 63 68 65 6d 61 2c 20 24 73 63 68 65 6d 61 55 72 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 72 $schema,.$schemaUri.=.null).{.$r
137a00 65 73 6f 6c 76 65 72 20 3d 20 6e 65 77 20 55 72 69 52 65 73 6f 6c 76 65 72 28 29 3b 0a 24 72 65 esolver.=.new.UriResolver();.$re
137a20 74 72 69 65 76 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 55 72 69 52 65 74 72 69 65 76 65 72 triever.=.$this->getUriRetriever
137a40 28 29 3b 0a 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 72 65 ();..$jsonSchema.=.null;.if.($re
137a60 73 6f 6c 76 65 72 2d 3e 69 73 56 61 6c 69 64 28 24 73 63 68 65 6d 61 55 72 69 29 29 20 7b 0a 24 solver->isValid($schemaUri)).{.$
137a80 73 63 68 65 6d 61 49 64 20 3d 20 70 72 6f 70 65 72 74 79 5f 65 78 69 73 74 73 28 24 73 63 68 65 schemaId.=.property_exists($sche
137aa0 6d 61 2c 20 27 69 64 27 29 20 3f 20 24 73 63 68 65 6d 61 2d 3e 69 64 20 3a 20 6e 75 6c 6c 3b 0a ma,.'id').?.$schema->id.:.null;.
137ac0 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 24 72 65 74 72 69 65 76 65 72 2d 3e 72 65 74 72 69 65 $jsonSchema.=.$retriever->retrie
137ae0 76 65 28 24 73 63 68 65 6d 61 49 64 2c 20 24 73 63 68 65 6d 61 55 72 69 29 3b 0a 7d 0a 0a 72 65 ve($schemaId,.$schemaUri);.}..re
137b00 74 75 72 6e 20 24 6a 73 6f 6e 53 63 68 65 6d 61 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a turn.$jsonSchema;.}.}.<?php.....
137b20 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 ....namespace.JsonSchema\Excepti
137b40 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 on;.....class.InvalidArgumentExc
137b60 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 eption.extends.\InvalidArgumentE
137b80 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 xception.{.}<?php.........namesp
137ba0 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c ace.JsonSchema\Exception;.....cl
137bc0 61 73 73 20 49 6e 76 61 6c 69 64 53 63 68 65 6d 61 4d 65 64 69 61 54 79 70 65 45 78 63 65 70 74 ass.InvalidSchemaMediaTypeExcept
137be0 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 20 ion.extends.\RuntimeException.{.
137c00 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 .}<?php.........namespace.JsonSc
137c20 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 76 61 6c 69 hema\Exception;.....class.Invali
137c40 64 53 6f 75 72 63 65 55 72 69 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 49 6e 76 61 dSourceUriException.extends.Inva
137c60 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a lidArgumentException.{.}.<?php..
137c80 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 .......namespace.JsonSchema\Exce
137ca0 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 44 65 63 6f 64 69 6e 67 45 78 63 ption;.....class.JsonDecodingExc
137cc0 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e eption.extends.\RuntimeException
137ce0 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 .{.public.function.__construct($
137d00 63 6f 64 65 20 3d 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 4e 4f 4e 45 2c 20 5c 45 78 63 65 70 74 69 code.=.JSON_ERROR_NONE,.\Excepti
137d20 6f 6e 20 24 70 72 65 76 69 6f 75 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 on.$previous.=.null).{.switch.($
137d40 63 6f 64 65 29 20 7b 0a 63 61 73 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 44 45 50 54 48 3a 0a 24 code).{.case.JSON_ERROR_DEPTH:.$
137d60 6d 65 73 73 61 67 65 20 3d 20 27 54 68 65 20 6d 61 78 69 6d 75 6d 20 73 74 61 63 6b 20 64 65 70 message.=.'The.maximum.stack.dep
137d80 74 68 20 68 61 73 20 62 65 65 6e 20 65 78 63 65 65 64 65 64 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 th.has.been.exceeded';.break;.ca
137da0 73 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 53 54 41 54 45 5f 4d 49 53 4d 41 54 43 48 3a 0a 24 6d se.JSON_ERROR_STATE_MISMATCH:.$m
137dc0 65 73 73 61 67 65 20 3d 20 27 49 6e 76 61 6c 69 64 20 6f 72 20 6d 61 6c 66 6f 72 6d 65 64 20 4a essage.=.'Invalid.or.malformed.J
137de0 53 4f 4e 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 43 54 52 SON';.break;.case.JSON_ERROR_CTR
137e00 4c 5f 43 48 41 52 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 43 6f 6e 74 72 6f 6c 20 63 68 61 72 L_CHAR:.$message.=.'Control.char
137e20 61 63 74 65 72 20 65 72 72 6f 72 2c 20 70 6f 73 73 69 62 6c 79 20 69 6e 63 6f 72 72 65 63 74 6c acter.error,.possibly.incorrectl
137e40 79 20 65 6e 63 6f 64 65 64 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4a 53 4f 4e 5f 45 52 52 y.encoded';.break;.case.JSON_ERR
137e60 4f 52 5f 55 54 46 38 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 4d 61 6c 66 6f 72 6d 65 64 20 55 OR_UTF8:.$message.=.'Malformed.U
137e80 54 46 2d 38 20 63 68 61 72 61 63 74 65 72 73 2c 20 70 6f 73 73 69 62 6c 79 20 69 6e 63 6f 72 72 TF-8.characters,.possibly.incorr
137ea0 65 63 74 6c 79 20 65 6e 63 6f 64 65 64 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4a 53 4f 4e ectly.encoded';.break;.case.JSON
137ec0 5f 45 52 52 4f 52 5f 53 59 4e 54 41 58 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 4a 53 4f 4e 20 _ERROR_SYNTAX:.$message.=.'JSON.
137ee0 73 79 6e 74 61 78 20 69 73 20 6d 61 6c 66 6f 72 6d 65 64 27 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 syntax.is.malformed';.break;.def
137f00 61 75 6c 74 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 53 79 6e 74 61 78 20 65 72 72 6f 72 27 3b ault:.$message.=.'Syntax.error';
137f20 0a 7d 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 2c .}.parent::__construct($message,
137f40 20 24 63 6f 64 65 2c 20 24 70 72 65 76 69 6f 75 73 29 3b 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a .$code,.$previous);.}.}<?php....
137f60 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 .....namespace.JsonSchema\Except
137f80 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 ion;.....class.ResourceNotFoundE
137fa0 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 xception.extends.\RuntimeExcepti
137fc0 6f 6e 0a 7b 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 on.{.}<?php.........namespace.Js
137fe0 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 72 onSchema\Exception;.....class.Ur
138000 69 52 65 73 6f 6c 76 65 72 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 iResolverException.extends.\Runt
138020 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 imeException.{.}<?php.........na
138040 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 mespace.JsonSchema;..use.JsonSch
138060 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 4a 73 6f 6e 44 65 63 6f 64 69 6e 67 45 78 63 65 70 74 ema\Exception\JsonDecodingExcept
138080 69 6f 6e 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 5c 52 65 74 72 69 65 76 65 ion;.use.JsonSchema\Uri\Retrieve
1380a0 72 73 5c 55 72 69 52 65 74 72 69 65 76 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 4a 73 rs\UriRetrieverInterface;.use.Js
1380c0 6f 6e 53 63 68 65 6d 61 5c 55 72 69 5c 55 72 69 52 65 74 72 69 65 76 65 72 3b 0a 0a 0a 0a 0a 0a onSchema\Uri\UriRetriever;......
1380e0 0a 0a 63 6c 61 73 73 20 52 65 66 52 65 73 6f 6c 76 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f ..class.RefResolver.{........pro
138100 74 65 63 74 65 64 20 73 74 61 74 69 63 20 24 64 65 70 74 68 20 3d 20 30 3b 0a 0a 0a 0a 0a 0a 70 tected.static.$depth.=.0;......p
138120 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 6d 61 78 44 65 70 74 68 20 3d 20 37 3b 0a 0a 0a 0a 0a ublic.static.$maxDepth.=.7;.....
138140 70 72 6f 74 65 63 74 65 64 20 24 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 6e 75 6c 6c 3b 0a protected.$uriRetriever.=.null;.
138160 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 53 63 68 65 6d 61 20 3d 20 6e 75 6c 6c ....protected.$rootSchema.=.null
138180 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 ;.....public.function.__construc
1381a0 74 28 24 72 65 74 72 69 65 76 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 72 t($retriever.=.null).{.$this->ur
1381c0 69 52 65 74 72 69 65 76 65 72 20 3d 20 24 72 65 74 72 69 65 76 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a iRetriever.=.$retriever;.}......
1381e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 65 74 63 68 52 65 66 28 24 72 65 66 ...public.function.fetchRef($ref
138200 2c 20 24 73 6f 75 72 63 65 55 72 69 29 0a 7b 0a 24 72 65 74 72 69 65 76 65 72 20 3d 20 24 74 68 ,.$sourceUri).{.$retriever.=.$th
138220 69 73 2d 3e 67 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 29 3b 0a 24 6a 73 6f 6e 53 63 68 65 is->getUriRetriever();.$jsonSche
138240 6d 61 20 3d 20 24 72 65 74 72 69 65 76 65 72 2d 3e 72 65 74 72 69 65 76 65 28 24 72 65 66 2c 20 ma.=.$retriever->retrieve($ref,.
138260 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 28 24 6a 73 6f $sourceUri);.$this->resolve($jso
138280 6e 53 63 68 65 6d 61 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6a 73 6f 6e 53 63 68 65 6d 61 3b 0a 7d nSchema);..return.$jsonSchema;.}
1382a0 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 69 52 65 ........public.function.getUriRe
1382c0 74 72 69 65 76 65 72 28 29 0a 7b 0a 69 66 20 28 69 73 5f 6e 75 6c 6c 28 24 74 68 69 73 2d 3e 75 triever().{.if.(is_null($this->u
1382e0 72 69 52 65 74 72 69 65 76 65 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 55 72 69 52 65 74 riRetriever)).{.$this->setUriRet
138300 72 69 65 76 65 72 28 6e 65 77 20 55 72 69 52 65 74 72 69 65 76 65 72 29 3b 0a 7d 0a 0a 72 65 74 riever(new.UriRetriever);.}..ret
138320 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a urn.$this->uriRetriever;.}......
138340 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 ..........public.function.resolv
138360 65 28 24 73 63 68 65 6d 61 2c 20 24 73 6f 75 72 63 65 55 72 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a e($schema,.$sourceUri.=.null).{.
138380 69 66 20 28 73 65 6c 66 3a 3a 24 64 65 70 74 68 20 3e 20 73 65 6c 66 3a 3a 24 6d 61 78 44 65 70 if.(self::$depth.>.self::$maxDep
1383a0 74 68 29 20 7b 0a 73 65 6c 66 3a 3a 24 64 65 70 74 68 20 3d 20 30 3b 0a 74 68 72 6f 77 20 6e 65 th).{.self::$depth.=.0;.throw.ne
1383c0 77 20 4a 73 6f 6e 44 65 63 6f 64 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 4a 53 4f 4e 5f 45 52 52 w.JsonDecodingException(JSON_ERR
1383e0 4f 52 5f 44 45 50 54 48 29 3b 0a 7d 0a 2b 2b 73 65 6c 66 3a 3a 24 64 65 70 74 68 3b 0a 0a 69 66 OR_DEPTH);.}.++self::$depth;..if
138400 20 28 21 20 69 73 5f 6f 62 6a 65 63 74 28 24 73 63 68 65 6d 61 29 29 20 7b 0a 2d 2d 73 65 6c 66 .(!.is_object($schema)).{.--self
138420 3a 3a 24 64 65 70 74 68 3b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d ::$depth;.return;.}..if.(null.==
138440 3d 20 24 73 6f 75 72 63 65 55 72 69 20 26 26 20 21 20 65 6d 70 74 79 28 24 73 63 68 65 6d 61 2d =.$sourceUri.&&.!.empty($schema-
138460 3e 69 64 29 29 20 7b 0a 24 73 6f 75 72 63 65 55 72 69 20 3d 20 24 73 63 68 65 6d 61 2d 3e 69 64 >id)).{.$sourceUri.=.$schema->id
138480 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 53 63 68 ;.}..if.(null.===.$this->rootSch
1384a0 65 6d 61 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 53 63 68 65 6d 61 20 3d 20 24 73 63 68 65 ema).{.$this->rootSchema.=.$sche
1384c0 6d 61 3b 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 52 65 66 28 24 73 63 68 65 ma;.}....$this->resolveRef($sche
1384e0 6d 61 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 0a 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 61 ma,.$sourceUri);......foreach.(a
138500 72 72 61 79 28 27 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 27 2c 20 27 61 64 64 69 74 69 6f rray('additionalItems',.'additio
138520 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 27 2c 20 27 65 78 74 65 6e 64 73 27 2c 20 27 69 74 65 6d nalProperties',.'extends',.'item
138540 73 27 29 20 61 73 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 72 s').as.$propertyName).{.$this->r
138560 65 73 6f 6c 76 65 50 72 6f 70 65 72 74 79 28 24 73 63 68 65 6d 61 2c 20 24 70 72 6f 70 65 72 74 esolveProperty($schema,.$propert
138580 79 4e 61 6d 65 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 66 6f 72 yName,.$sourceUri);.}........for
1385a0 65 61 63 68 20 28 61 72 72 61 79 28 27 64 69 73 61 6c 6c 6f 77 27 2c 20 27 65 78 74 65 6e 64 73 each.(array('disallow',.'extends
1385c0 27 2c 20 27 69 74 65 6d 73 27 2c 20 27 74 79 70 65 27 2c 20 27 61 6c 6c 4f 66 27 2c 20 27 61 6e ',.'items',.'type',.'allOf',.'an
1385e0 79 4f 66 27 2c 20 27 6f 6e 65 4f 66 27 29 20 61 73 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 yOf',.'oneOf').as.$propertyName)
138600 20 7b 0a 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 41 72 72 61 79 4f 66 53 63 68 65 6d 61 73 28 .{.$this->resolveArrayOfSchemas(
138620 24 73 63 68 65 6d 61 2c 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 2c 20 24 73 6f 75 72 63 65 55 $schema,.$propertyName,.$sourceU
138640 72 69 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 64 65 70 65 6e 64 ri);.}....foreach.(array('depend
138660 65 6e 63 69 65 73 27 2c 20 27 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 27 2c 20 27 70 encies',.'patternProperties',.'p
138680 72 6f 70 65 72 74 69 65 73 27 29 20 61 73 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 20 7b 0a roperties').as.$propertyName).{.
1386a0 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 4f 62 6a 65 63 74 4f 66 53 63 68 65 6d 61 73 28 24 73 $this->resolveObjectOfSchemas($s
1386c0 63 68 65 6d 61 2c 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 2c 20 24 73 6f 75 72 63 65 55 72 69 chema,.$propertyName,.$sourceUri
1386e0 29 3b 0a 7d 0a 0a 2d 2d 73 65 6c 66 3a 3a 24 64 65 70 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a );.}..--self::$depth;.}.........
138700 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 41 72 72 61 79 4f 66 53 .public.function.resolveArrayOfS
138720 63 68 65 6d 61 73 28 24 73 63 68 65 6d 61 2c 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 2c 20 24 chemas($schema,.$propertyName,.$
138740 73 6f 75 72 63 65 55 72 69 29 0a 7b 0a 69 66 20 28 21 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 sourceUri).{.if.(!.isset($schema
138760 2d 3e 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 20 7c 7c 20 21 20 69 73 5f 61 72 72 61 79 28 24 ->$propertyName).||.!.is_array($
138780 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 29 20 7b 0a 72 65 74 75 72 6e schema->$propertyName)).{.return
1387a0 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 ;.}..foreach.($schema->$property
1387c0 4e 61 6d 65 20 61 73 20 24 70 6f 73 73 69 62 6c 79 53 63 68 65 6d 61 29 20 7b 0a 24 74 68 69 73 Name.as.$possiblySchema).{.$this
1387e0 2d 3e 72 65 73 6f 6c 76 65 28 24 70 6f 73 73 69 62 6c 79 53 63 68 65 6d 61 2c 20 24 73 6f 75 72 ->resolve($possiblySchema,.$sour
138800 63 65 55 72 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ceUri);.}.}..........public.func
138820 74 69 6f 6e 20 72 65 73 6f 6c 76 65 4f 62 6a 65 63 74 4f 66 53 63 68 65 6d 61 73 28 24 73 63 68 tion.resolveObjectOfSchemas($sch
138840 65 6d 61 2c 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 2c 20 24 73 6f 75 72 63 65 55 72 69 29 0a ema,.$propertyName,.$sourceUri).
138860 7b 0a 69 66 20 28 21 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 {.if.(!.isset($schema->$property
138880 4e 61 6d 65 29 20 7c 7c 20 21 20 69 73 5f 6f 62 6a 65 63 74 28 24 73 63 68 65 6d 61 2d 3e 24 70 Name).||.!.is_object($schema->$p
1388a0 72 6f 70 65 72 74 79 4e 61 6d 65 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 66 6f 72 65 61 ropertyName)).{.return;.}..forea
1388c0 63 68 20 28 67 65 74 5f 6f 62 6a 65 63 74 5f 76 61 72 73 28 24 73 63 68 65 6d 61 2d 3e 24 70 72 ch.(get_object_vars($schema->$pr
1388e0 6f 70 65 72 74 79 4e 61 6d 65 29 20 61 73 20 24 70 6f 73 73 69 62 6c 79 53 63 68 65 6d 61 29 20 opertyName).as.$possiblySchema).
138900 7b 0a 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 28 24 70 6f 73 73 69 62 6c 79 53 63 68 65 6d 61 {.$this->resolve($possiblySchema
138920 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ,.$sourceUri);.}.}..........publ
138940 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 50 72 6f 70 65 72 74 79 28 24 73 63 68 ic.function.resolveProperty($sch
138960 65 6d 61 2c 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 2c 20 24 73 6f 75 72 63 65 55 72 69 29 0a ema,.$propertyName,.$sourceUri).
138980 7b 0a 69 66 20 28 21 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 {.if.(!.isset($schema->$property
1389a0 4e 61 6d 65 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 73 6f 6c Name)).{.return;.}..$this->resol
1389c0 76 65 28 24 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 2c 20 24 73 6f 75 72 ve($schema->$propertyName,.$sour
1389e0 63 65 55 72 69 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ceUri);.}..........public.functi
138a00 6f 6e 20 72 65 73 6f 6c 76 65 52 65 66 28 24 73 63 68 65 6d 61 2c 20 24 73 6f 75 72 63 65 55 72 on.resolveRef($schema,.$sourceUr
138a20 69 29 0a 7b 0a 24 72 65 66 20 3d 20 27 24 72 65 66 27 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 i).{.$ref.=.'$ref';..if.(empty($
138a40 73 63 68 65 6d 61 2d 3e 24 72 65 66 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 73 70 6c schema->$ref)).{.return;.}..$spl
138a60 69 74 52 65 66 20 3d 20 65 78 70 6c 6f 64 65 28 27 23 27 2c 20 24 73 63 68 65 6d 61 2d 3e 24 72 itRef.=.explode('#',.$schema->$r
138a80 65 66 2c 20 32 29 3b 0a 0a 24 72 65 66 44 6f 63 20 3d 20 24 73 70 6c 69 74 52 65 66 5b 30 5d 3b ef,.2);..$refDoc.=.$splitRef[0];
138aa0 0a 24 72 65 66 50 61 74 68 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 73 70 6c .$refPath.=.null;.if.(count($spl
138ac0 69 74 52 65 66 29 20 3d 3d 3d 20 32 29 20 7b 0a 24 72 65 66 50 61 74 68 20 3d 20 65 78 70 6c 6f itRef).===.2).{.$refPath.=.explo
138ae0 64 65 28 27 2f 27 2c 20 24 73 70 6c 69 74 52 65 66 5b 31 5d 29 3b 0a 61 72 72 61 79 5f 73 68 69 de('/',.$splitRef[1]);.array_shi
138b00 66 74 28 24 72 65 66 50 61 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 72 65 66 44 ft($refPath);.}..if.(empty($refD
138b20 6f 63 29 20 26 26 20 65 6d 70 74 79 28 24 72 65 66 50 61 74 68 29 29 20 7b 0a 0a 20 72 65 74 75 oc).&&.empty($refPath)).{...retu
138b40 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 72 65 66 44 6f 63 29 29 20 7b 0a 24 72 rn;.}..if.(!empty($refDoc)).{.$r
138b60 65 66 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e 66 65 74 63 68 52 65 66 28 24 72 65 66 44 efSchema.=.$this->fetchRef($refD
138b80 6f 63 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 66 53 63 oc,.$sourceUri);.}.else.{.$refSc
138ba0 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 53 63 68 65 6d 61 3b 0a 7d 0a 0a 69 66 20 hema.=.$this->rootSchema;.}..if.
138bc0 28 6e 75 6c 6c 20 21 3d 3d 20 24 72 65 66 50 61 74 68 29 20 7b 0a 24 72 65 66 53 63 68 65 6d 61 (null.!==.$refPath).{.$refSchema
138be0 20 3d 20 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 52 65 66 53 65 67 6d 65 6e 74 28 24 72 65 66 .=.$this->resolveRefSegment($ref
138c00 53 63 68 65 6d 61 2c 20 24 72 65 66 50 61 74 68 29 3b 0a 7d 0a 0a 75 6e 73 65 74 28 24 73 63 68 Schema,.$refPath);.}..unset($sch
138c20 65 6d 61 2d 3e 24 72 65 66 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 67 65 74 5f 6f 62 6a 65 ema->$ref);....foreach.(get_obje
138c40 63 74 5f 76 61 72 73 28 24 72 65 66 53 63 68 65 6d 61 29 20 61 73 20 24 70 72 6f 70 20 3d 3e 20 ct_vars($refSchema).as.$prop.=>.
138c60 24 76 61 6c 75 65 29 20 7b 0a 24 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 20 3d 20 24 76 61 6c 75 $value).{.$schema->$prop.=.$valu
138c80 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 e;.}.}........public.function.se
138ca0 74 55 72 69 52 65 74 72 69 65 76 65 72 28 55 72 69 52 65 74 72 69 65 76 65 72 20 24 72 65 74 72 tUriRetriever(UriRetriever.$retr
138cc0 69 65 76 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 24 iever).{.$this->uriRetriever.=.$
138ce0 72 65 74 72 69 65 76 65 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 72 6f retriever;..return.$this;.}..pro
138d00 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 52 65 66 53 65 67 6d 65 6e tected.function.resolveRefSegmen
138d20 74 28 24 64 61 74 61 2c 20 24 70 61 74 68 50 61 72 74 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 t($data,.$pathParts).{.foreach.(
138d40 24 70 61 74 68 50 61 72 74 73 20 61 73 20 24 70 61 74 68 29 20 7b 0a 24 70 61 74 68 20 3d 20 73 $pathParts.as.$path).{.$path.=.s
138d60 74 72 74 72 28 24 70 61 74 68 2c 20 61 72 72 61 79 28 27 7e 31 27 20 3d 3e 20 27 2f 27 2c 20 27 trtr($path,.array('~1'.=>.'/',.'
138d80 7e 30 27 20 3d 3e 20 27 7e 27 2c 20 27 25 32 35 27 20 3d 3e 20 27 25 27 29 29 3b 0a 0a 69 66 20 ~0'.=>.'~',.'%25'.=>.'%'));..if.
138da0 28 69 73 5f 61 72 72 61 79 28 24 64 61 74 61 29 29 20 7b 0a 24 64 61 74 61 20 3d 20 24 64 61 74 (is_array($data)).{.$data.=.$dat
138dc0 61 5b 24 70 61 74 68 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 61 74 61 20 3d 20 24 64 61 74 61 a[$path];.}.else.{.$data.=.$data
138de0 2d 3e 7b 24 70 61 74 68 7d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 61 74 61 3b 0a 7d 0a ->{$path};.}.}..return.$data;.}.
138e00 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 }.<?php.....namespace.JsonSchema
138e20 5c 55 72 69 5c 52 65 74 72 69 65 76 65 72 73 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 \Uri\Retrievers;.......abstract.
138e40 63 6c 61 73 73 20 41 62 73 74 72 61 63 74 52 65 74 72 69 65 76 65 72 20 69 6d 70 6c 65 6d 65 6e class.AbstractRetriever.implemen
138e60 74 73 20 55 72 69 52 65 74 72 69 65 76 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 70 ts.UriRetrieverInterface.{.....p
138e80 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 74 65 6e 74 54 79 70 65 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c rotected.$contentType;......publ
138ea0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 54 79 70 65 28 29 0a 7b 0a 72 ic.function.getContentType().{.r
138ec0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 54 79 70 65 3b 0a 7d 0a 7d 0a 3c 3f eturn.$this->contentType;.}.}.<?
138ee0 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 php.........namespace.JsonSchema
138f00 5c 55 72 69 5c 52 65 74 72 69 65 76 65 72 73 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 \Uri\Retrievers;..use.JsonSchema
138f20 5c 56 61 6c 69 64 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 75 72 6c 20 65 78 74 \Validator;.......class.Curl.ext
138f40 65 6e 64 73 20 41 62 73 74 72 61 63 74 52 65 74 72 69 65 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 ends.AbstractRetriever.{.protect
138f60 65 64 20 24 6d 65 73 73 61 67 65 42 6f 64 79 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ed.$messageBody;..public.functio
138f80 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f n.__construct().{.if.(!function_
138fa0 65 78 69 73 74 73 28 27 63 75 72 6c 5f 69 6e 69 74 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 exists('curl_init')).{.throw.new
138fc0 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 22 63 55 52 4c 20 6e 6f 74 20 69 6e 73 .\RuntimeException("cURL.not.ins
138fe0 74 61 6c 6c 65 64 22 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 talled");.}.}......public.functi
139000 6f 6e 20 72 65 74 72 69 65 76 65 28 24 75 72 69 29 0a 7b 0a 24 63 68 20 3d 20 63 75 72 6c 5f 69 on.retrieve($uri).{.$ch.=.curl_i
139020 6e 69 74 28 29 3b 0a 0a 63 75 72 6c 5f 73 65 74 6f 70 74 28 24 63 68 2c 20 43 55 52 4c 4f 50 54 nit();..curl_setopt($ch,.CURLOPT
139040 5f 55 52 4c 2c 20 24 75 72 69 29 3b 0a 63 75 72 6c 5f 73 65 74 6f 70 74 28 24 63 68 2c 20 43 55 _URL,.$uri);.curl_setopt($ch,.CU
139060 52 4c 4f 50 54 5f 48 45 41 44 45 52 2c 20 74 72 75 65 29 3b 0a 63 75 72 6c 5f 73 65 74 6f 70 74 RLOPT_HEADER,.true);.curl_setopt
139080 28 24 63 68 2c 20 43 55 52 4c 4f 50 54 5f 52 45 54 55 52 4e 54 52 41 4e 53 46 45 52 2c 20 74 72 ($ch,.CURLOPT_RETURNTRANSFER,.tr
1390a0 75 65 29 3b 0a 63 75 72 6c 5f 73 65 74 6f 70 74 28 24 63 68 2c 20 43 55 52 4c 4f 50 54 5f 48 54 ue);.curl_setopt($ch,.CURLOPT_HT
1390c0 54 50 48 45 41 44 45 52 2c 20 61 72 72 61 79 28 27 41 63 63 65 70 74 3a 20 27 20 2e 20 56 61 6c TPHEADER,.array('Accept:.'...Val
1390e0 69 64 61 74 6f 72 3a 3a 53 43 48 45 4d 41 5f 4d 45 44 49 41 5f 54 59 50 45 29 29 3b 0a 0a 24 72 idator::SCHEMA_MEDIA_TYPE));..$r
139100 65 73 70 6f 6e 73 65 20 3d 20 63 75 72 6c 5f 65 78 65 63 28 24 63 68 29 3b 0a 69 66 20 28 66 61 esponse.=.curl_exec($ch);.if.(fa
139120 6c 73 65 20 3d 3d 3d 20 24 72 65 73 70 6f 6e 73 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c lse.===.$response).{.throw.new.\
139140 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 52 65 73 6f 75 72 63 65 4e 6f 74 JsonSchema\Exception\ResourceNot
139160 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 27 4a 53 4f 4e 20 73 63 68 65 6d 61 20 6e 6f 74 20 FoundException('JSON.schema.not.
139180 66 6f 75 6e 64 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 65 74 63 68 4d 65 73 73 61 67 65 42 found');.}..$this->fetchMessageB
1391a0 6f 64 79 28 24 72 65 73 70 6f 6e 73 65 29 3b 0a 24 74 68 69 73 2d 3e 66 65 74 63 68 43 6f 6e 74 ody($response);.$this->fetchCont
1391c0 65 6e 74 54 79 70 65 28 24 72 65 73 70 6f 6e 73 65 29 3b 0a 0a 63 75 72 6c 5f 63 6c 6f 73 65 28 entType($response);..curl_close(
1391e0 24 63 68 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 42 6f 64 79 $ch);..return.$this->messageBody
139200 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 65 74 63 68 4d 65 ;.}.....private.function.fetchMe
139220 73 73 61 67 65 42 6f 64 79 28 24 72 65 73 70 6f 6e 73 65 29 0a 7b 0a 70 72 65 67 5f 6d 61 74 63 ssageBody($response).{.preg_matc
139240 68 28 22 2f 28 3f 3a 5c 72 5c 6e 29 7b 32 7d 28 2e 2a 29 24 2f 6d 73 22 2c 20 24 72 65 73 70 6f h("/(?:\r\n){2}(.*)$/ms",.$respo
139260 6e 73 65 2c 20 24 6d 61 74 63 68 29 3b 0a 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 42 6f 64 79 nse,.$match);.$this->messageBody
139280 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 .=.$match[1];.}......protected.f
1392a0 75 6e 63 74 69 6f 6e 20 66 65 74 63 68 43 6f 6e 74 65 6e 74 54 79 70 65 28 24 72 65 73 70 6f 6e unction.fetchContentType($respon
1392c0 73 65 29 0a 7b 0a 69 66 20 28 30 20 3c 20 70 72 65 67 5f 6d 61 74 63 68 28 22 2f 43 6f 6e 74 65 se).{.if.(0.<.preg_match("/Conte
1392e0 6e 74 2d 54 79 70 65 3a 28 5c 56 2a 29 2f 69 6d 73 22 2c 20 24 72 65 73 70 6f 6e 73 65 2c 20 24 nt-Type:(\V*)/ims",.$response,.$
139300 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 54 79 70 65 20 3d 20 74 match)).{.$this->contentType.=.t
139320 72 69 6d 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a rim($match[1]);..return.true;.}.
139340 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a .return.false;.}.}<?php.........
139360 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 5c 52 65 74 72 69 65 76 namespace.JsonSchema\Uri\Retriev
139380 65 72 73 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 52 ers;..use.JsonSchema\Exception\R
1393a0 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 4a 73 esourceNotFoundException;.use.Js
1393c0 6f 6e 53 63 68 65 6d 61 5c 56 61 6c 69 64 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 onSchema\Validator;.......class.
1393e0 46 69 6c 65 47 65 74 43 6f 6e 74 65 6e 74 73 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 FileGetContents.extends.Abstract
139400 52 65 74 72 69 65 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 65 73 73 61 67 65 42 6f Retriever.{.protected.$messageBo
139420 64 79 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 72 69 65 76 dy;......public.function.retriev
139440 65 28 24 75 72 69 29 0a 7b 0a 24 63 6f 6e 74 65 78 74 20 3d 20 73 74 72 65 61 6d 5f 63 6f 6e 74 e($uri).{.$context.=.stream_cont
139460 65 78 74 5f 63 72 65 61 74 65 28 61 72 72 61 79 28 0a 27 68 74 74 70 27 20 3d 3e 20 61 72 72 61 ext_create(array(.'http'.=>.arra
139480 79 28 0a 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 47 45 54 27 2c 0a 27 68 65 61 64 65 72 27 20 3d y(.'method'.=>.'GET',.'header'.=
1394a0 3e 20 22 41 63 63 65 70 74 3a 20 22 20 2e 20 56 61 6c 69 64 61 74 6f 72 3a 3a 53 43 48 45 4d 41 >."Accept:."...Validator::SCHEMA
1394c0 5f 4d 45 44 49 41 5f 54 59 50 45 0a 29 29 29 3b 0a 0a 73 65 74 5f 65 72 72 6f 72 5f 68 61 6e 64 _MEDIA_TYPE.)));..set_error_hand
1394e0 6c 65 72 28 66 75 6e 63 74 69 6f 6e 28 29 20 75 73 65 20 28 24 75 72 69 29 20 7b 0a 74 68 72 6f ler(function().use.($uri).{.thro
139500 77 20 6e 65 77 20 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 w.new.ResourceNotFoundException(
139520 27 4a 53 4f 4e 20 73 63 68 65 6d 61 20 6e 6f 74 20 66 6f 75 6e 64 20 61 74 20 27 20 2e 20 24 75 'JSON.schema.not.found.at.'...$u
139540 72 69 29 3b 0a 7d 29 3b 0a 24 72 65 73 70 6f 6e 73 65 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f ri);.});.$response.=.file_get_co
139560 6e 74 65 6e 74 73 28 24 75 72 69 29 3b 0a 72 65 73 74 6f 72 65 5f 65 72 72 6f 72 5f 68 61 6e 64 ntents($uri);.restore_error_hand
139580 6c 65 72 28 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 73 70 6f 6e 73 65 29 ler();..if.(false.===.$response)
1395a0 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 78 63 .{.throw.new.ResourceNotFoundExc
1395c0 65 70 74 69 6f 6e 28 27 4a 53 4f 4e 20 73 63 68 65 6d 61 20 6e 6f 74 20 66 6f 75 6e 64 20 61 74 eption('JSON.schema.not.found.at
1395e0 20 27 20 2e 20 24 75 72 69 29 3b 0a 7d 0a 69 66 20 28 24 72 65 73 70 6f 6e 73 65 20 3d 3d 20 27 .'...$uri);.}.if.($response.==.'
139600 27 0a 26 26 20 73 75 62 73 74 72 28 24 75 72 69 2c 20 30 2c 20 37 29 20 3d 3d 20 27 66 69 6c 65 '.&&.substr($uri,.0,.7).==.'file
139620 3a 2f 2f 27 20 26 26 20 73 75 62 73 74 72 28 24 75 72 69 2c 20 2d 31 29 20 3d 3d 20 27 2f 27 0a ://'.&&.substr($uri,.-1).==.'/'.
139640 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 78 ).{.throw.new.ResourceNotFoundEx
139660 63 65 70 74 69 6f 6e 28 27 4a 53 4f 4e 20 73 63 68 65 6d 61 20 6e 6f 74 20 66 6f 75 6e 64 20 61 ception('JSON.schema.not.found.a
139680 74 20 27 20 2e 20 24 75 72 69 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 42 6f t.'...$uri);.}..$this->messageBo
1396a0 64 79 20 3d 20 24 72 65 73 70 6f 6e 73 65 3b 0a 69 66 20 28 21 20 65 6d 70 74 79 28 24 68 74 74 dy.=.$response;.if.(!.empty($htt
1396c0 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 65 74 p_response_header)).{.$this->fet
1396e0 63 68 43 6f 6e 74 65 6e 74 54 79 70 65 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 chContentType($http_response_hea
139700 64 65 72 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 54 der);.}.else.{...$this->contentT
139720 79 70 65 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 65 73 ype.=.null;.}..return.$this->mes
139740 73 61 67 65 42 6f 64 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f sageBody;.}......private.functio
139760 6e 20 66 65 74 63 68 43 6f 6e 74 65 6e 74 54 79 70 65 28 61 72 72 61 79 20 24 68 65 61 64 65 72 n.fetchContentType(array.$header
139780 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 68 65 61 64 65 72 73 20 61 73 20 24 68 65 61 64 65 s).{.foreach.($headers.as.$heade
1397a0 72 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 54 79 70 65 20 3d 20 73 65 r).{.if.($this->contentType.=.se
1397c0 6c 66 3a 3a 67 65 74 43 6f 6e 74 65 6e 74 54 79 70 65 4d 61 74 63 68 49 6e 48 65 61 64 65 72 28 lf::getContentTypeMatchInHeader(
1397e0 24 68 65 61 64 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 $header)).{.return.true;.}.}..re
139800 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 turn.false;.}......protected.sta
139820 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 54 79 70 65 4d 61 74 63 68 tic.function.getContentTypeMatch
139840 49 6e 48 65 61 64 65 72 28 24 68 65 61 64 65 72 29 0a 7b 0a 69 66 20 28 30 20 3c 20 70 72 65 67 InHeader($header).{.if.(0.<.preg
139860 5f 6d 61 74 63 68 28 22 2f 43 6f 6e 74 65 6e 74 2d 54 79 70 65 3a 28 5c 56 2a 29 2f 69 6d 73 22 _match("/Content-Type:(\V*)/ims"
139880 2c 20 24 68 65 61 64 65 72 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 69 ,.$header,.$match)).{.return.tri
1398a0 6d 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 6e 61 6d 65 73 m($match[1]);.}.}.}.<?php..names
1398c0 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 5c 52 65 74 72 69 65 76 65 72 73 3b 0a pace.JsonSchema\Uri\Retrievers;.
1398e0 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 56 61 6c 69 64 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a .use.JsonSchema\Validator;......
139900 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 65 64 65 66 69 6e 65 64 41 72 72 61 79 20 65 78 ........class.PredefinedArray.ex
139920 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 52 65 74 72 69 65 76 65 72 0a 7b 0a 0a 0a 0a 0a 70 72 tends.AbstractRetriever.{.....pr
139940 69 76 61 74 65 20 24 73 63 68 65 6d 61 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ivate.$schemas;........public.fu
139960 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 73 63 68 65 6d 61 nction.__construct(array.$schema
139980 73 2c 20 24 63 6f 6e 74 65 6e 74 54 79 70 65 20 3d 20 56 61 6c 69 64 61 74 6f 72 3a 3a 53 43 48 s,.$contentType.=.Validator::SCH
1399a0 45 4d 41 5f 4d 45 44 49 41 5f 54 59 50 45 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 63 68 65 6d 61 73 EMA_MEDIA_TYPE).{.$this->schemas
1399c0 20 3d 20 24 73 63 68 65 6d 61 73 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 54 79 70 65 20 .=.$schemas;.$this->contentType.
1399e0 3d 20 24 63 6f 6e 74 65 6e 74 54 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 =.$contentType;.}......public.fu
139a00 6e 63 74 69 6f 6e 20 72 65 74 72 69 65 76 65 28 24 75 72 69 29 0a 7b 0a 69 66 20 28 21 61 72 72 nction.retrieve($uri).{.if.(!arr
139a20 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 75 72 69 2c 20 24 74 68 69 73 2d 3e 73 63 68 65 6d ay_key_exists($uri,.$this->schem
139a40 61 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 as)).{.throw.new.\JsonSchema\Exc
139a60 65 70 74 69 6f 6e 5c 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e eption\ResourceNotFoundException
139a80 28 73 70 72 69 6e 74 66 28 0a 27 54 68 65 20 4a 53 4f 4e 20 73 63 68 65 6d 61 20 22 25 73 22 20 (sprintf(.'The.JSON.schema."%s".
139aa0 77 61 73 20 6e 6f 74 20 66 6f 75 6e 64 2e 27 2c 0a 24 75 72 69 0a 29 29 3b 0a 7d 0a 0a 72 65 74 was.not.found.',.$uri.));.}..ret
139ac0 75 72 6e 20 24 74 68 69 73 2d 3e 73 63 68 65 6d 61 73 5b 24 75 72 69 5d 3b 0a 7d 0a 7d 0a 3c 3f urn.$this->schemas[$uri];.}.}.<?
139ae0 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 php.........namespace.JsonSchema
139b00 5c 55 72 69 5c 52 65 74 72 69 65 76 65 72 73 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 \Uri\Retrievers;.......interface
139b20 20 55 72 69 52 65 74 72 69 65 76 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 .UriRetrieverInterface.{.......p
139b40 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 72 69 65 76 65 28 24 75 72 69 29 3b 0a 0a ublic.function.retrieve($uri);..
139b60 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 54 79 ....public.function.getContentTy
139b80 70 65 28 29 3b 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a pe();.}<?php.........namespace.J
139ba0 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 sonSchema\Uri;..use.JsonSchema\E
139bc0 78 63 65 70 74 69 6f 6e 5c 55 72 69 52 65 73 6f 6c 76 65 72 45 78 63 65 70 74 69 6f 6e 3b 0a 0a xception\UriResolverException;..
139be0 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 72 69 52 65 73 6f 6c 76 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 .....class.UriResolver.{.......p
139c00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 28 24 75 72 69 29 0a 7b 0a 70 72 65 ublic.function.parse($uri).{.pre
139c20 67 5f 6d 61 74 63 68 28 27 7c 5e 28 28 5b 5e 3a 2f 3f 23 5d 2b 29 3a 29 3f 28 2f 2f 28 5b 5e 2f g_match('|^(([^:/?#]+):)?(//([^/
139c40 3f 23 5d 2a 29 29 3f 28 5b 5e 3f 23 5d 2a 29 28 5c 3f 28 5b 5e 23 5d 2a 29 29 3f 28 23 28 2e 2a ?#]*))?([^?#]*)(\?([^#]*))?(#(.*
139c60 29 29 3f 7c 27 2c 20 24 75 72 69 2c 20 24 6d 61 74 63 68 29 3b 0a 0a 24 63 6f 6d 70 6f 6e 65 6e ))?|',.$uri,.$match);..$componen
139c80 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 35 20 3c 20 63 6f 75 6e 74 28 24 6d 61 74 ts.=.array();.if.(5.<.count($mat
139ca0 63 68 29 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 61 72 72 61 79 28 0a 27 73 63 68 ch)).{.$components.=.array(.'sch
139cc0 65 6d 65 27 20 3d 3e 20 24 6d 61 74 63 68 5b 32 5d 2c 0a 27 61 75 74 68 6f 72 69 74 79 27 20 3d eme'.=>.$match[2],.'authority'.=
139ce0 3e 20 24 6d 61 74 63 68 5b 34 5d 2c 0a 27 70 61 74 68 27 20 3d 3e 20 24 6d 61 74 63 68 5b 35 5d >.$match[4],.'path'.=>.$match[5]
139d00 0a 29 3b 0a 7d 20 0a 69 66 20 28 37 20 3c 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 29 29 20 7b 0a .);.}..if.(7.<.count($match)).{.
139d20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 71 75 65 72 79 27 5d 20 3d 20 24 6d 61 74 63 68 5b 37 5d $components['query'].=.$match[7]
139d40 3b 0a 7d 0a 69 66 20 28 39 20 3c 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 6f ;.}.if.(9.<.count($match)).{.$co
139d60 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 20 3d 20 24 6d 61 74 63 68 5b 39 5d mponents['fragment'].=.$match[9]
139d80 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 3b 0a 7d 0a 0a 0a 0a 0a 0a ;.}..return.$components;.}......
139da0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 28 61 72 72 61 79 ..public.function.generate(array
139dc0 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 0a 7b 0a 24 75 72 69 20 3d 20 24 63 6f 6d 70 6f 6e 65 6e .$components).{.$uri.=.$componen
139de0 74 73 5b 27 73 63 68 65 6d 65 27 5d 20 2e 20 27 3a 2f 2f 27 20 0a 2e 20 24 63 6f 6d 70 6f 6e 65 ts['scheme']...'://'....$compone
139e00 6e 74 73 5b 27 61 75 74 68 6f 72 69 74 79 27 5d 0a 2e 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 nts['authority']...$components['
139e20 70 61 74 68 27 5d 3b 0a 0a 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 27 71 path'];..if.(array_key_exists('q
139e40 75 65 72 79 27 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 29 20 7b 0a 24 75 72 69 20 2e 3d 20 24 uery',.$components)).{.$uri..=.$
139e60 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 71 75 65 72 79 27 5d 3b 0a 7d 0a 69 66 20 28 61 72 72 61 79 components['query'];.}.if.(array
139e80 5f 6b 65 79 5f 65 78 69 73 74 73 28 27 66 72 61 67 6d 65 6e 74 27 2c 20 24 63 6f 6d 70 6f 6e 65 _key_exists('fragment',.$compone
139ea0 6e 74 73 29 29 20 7b 0a 24 75 72 69 20 2e 3d 20 27 23 27 20 2e 20 24 63 6f 6d 70 6f 6e 65 6e 74 nts)).{.$uri..=.'#'...$component
139ec0 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 75 72 69 3b 0a 7d s['fragment'];.}..return.$uri;.}
139ee0 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 .........public.function.resolve
139f00 28 24 75 72 69 2c 20 24 62 61 73 65 55 72 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 75 ($uri,.$baseUri.=.null).{.if.($u
139f20 72 69 20 3d 3d 20 27 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 62 61 73 65 55 72 69 3b 0a 7d 0a 0a ri.==.'').{.return.$baseUri;.}..
139f40 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 28 24 75 72 69 29 $components.=.$this->parse($uri)
139f60 3b 0a 24 70 61 74 68 20 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 70 61 74 68 27 5d 3b 0a 0a ;.$path.=.$components['path'];..
139f80 69 66 20 28 21 20 65 6d 70 74 79 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 73 63 68 65 6d 65 27 if.(!.empty($components['scheme'
139fa0 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 75 72 69 3b 0a 7d 0a 24 62 61 73 65 43 6f 6d 70 6f 6e ])).{.return.$uri;.}.$baseCompon
139fc0 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 28 24 62 61 73 65 55 72 69 29 3b 0a 24 ents.=.$this->parse($baseUri);.$
139fe0 62 61 73 65 50 61 74 68 20 3d 20 24 62 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 73 5b 27 70 61 74 68 basePath.=.$baseComponents['path
13a000 27 5d 3b 0a 0a 24 62 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 73 5b 27 70 61 74 68 27 5d 20 3d 20 73 '];..$baseComponents['path'].=.s
13a020 65 6c 66 3a 3a 63 6f 6d 62 69 6e 65 52 65 6c 61 74 69 76 65 50 61 74 68 57 69 74 68 42 61 73 65 elf::combineRelativePathWithBase
13a040 50 61 74 68 28 24 70 61 74 68 2c 20 24 62 61 73 65 50 61 74 68 29 3b 0a 69 66 20 28 69 73 73 65 Path($path,.$basePath);.if.(isse
13a060 74 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 29 29 20 7b 0a 24 62 t($components['fragment'])).{.$b
13a080 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 20 3d 20 24 63 6f 6d aseComponents['fragment'].=.$com
13a0a0 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ponents['fragment'];.}..return.$
13a0c0 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 28 24 62 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 73 29 3b this->generate($baseComponents);
13a0e0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 .}..........public.static.functi
13a100 6f 6e 20 63 6f 6d 62 69 6e 65 52 65 6c 61 74 69 76 65 50 61 74 68 57 69 74 68 42 61 73 65 50 61 on.combineRelativePathWithBasePa
13a120 74 68 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 24 62 61 73 65 50 61 74 68 29 0a 7b 0a 24 th($relativePath,.$basePath).{.$
13a140 72 65 6c 61 74 69 76 65 50 61 74 68 20 3d 20 73 65 6c 66 3a 3a 6e 6f 72 6d 61 6c 69 7a 65 50 61 relativePath.=.self::normalizePa
13a160 74 68 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 29 3b 0a 69 66 20 28 24 72 65 6c 61 74 69 76 65 th($relativePath);.if.($relative
13a180 50 61 74 68 20 3d 3d 20 27 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 62 61 73 65 50 61 74 68 3b 0a Path.==.'').{.return.$basePath;.
13a1a0 7d 0a 69 66 20 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 7b 30 7d 20 3d 3d 20 27 2f 27 29 20 7b }.if.($relativePath{0}.==.'/').{
13a1c0 0a 72 65 74 75 72 6e 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 7d 0a 0a 24 62 61 73 65 50 .return.$relativePath;.}..$baseP
13a1e0 61 74 68 53 65 67 6d 65 6e 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 24 62 61 73 65 athSegments.=.explode('/',.$base
13a200 50 61 74 68 29 3b 0a 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 7c 5e 2f 3f 28 5c 2e 5c 2e 2f 28 3f Path);..preg_match('|^/?(\.\./(?
13a220 3a 5c 2e 2f 29 2a 29 2a 7c 27 2c 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 24 6d 61 74 63 :\./)*)*|',.$relativePath,.$matc
13a240 68 29 3b 0a 24 6e 75 6d 4c 65 76 65 6c 55 70 20 3d 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b h);.$numLevelUp.=.strlen($match[
13a260 30 5d 29 20 2f 33 20 2b 20 31 3b 0a 69 66 20 28 24 6e 75 6d 4c 65 76 65 6c 55 70 20 3e 3d 20 63 0])./3.+.1;.if.($numLevelUp.>=.c
13a280 6f 75 6e 74 28 24 62 61 73 65 50 61 74 68 53 65 67 6d 65 6e 74 73 29 29 20 7b 0a 74 68 72 6f 77 ount($basePathSegments)).{.throw
13a2a0 20 6e 65 77 20 55 72 69 52 65 73 6f 6c 76 65 72 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 .new.UriResolverException(sprint
13a2c0 66 28 22 55 6e 61 62 6c 65 20 74 6f 20 72 65 73 6f 6c 76 65 20 55 52 49 20 27 25 73 27 20 66 72 f("Unable.to.resolve.URI.'%s'.fr
13a2e0 6f 6d 20 62 61 73 65 20 27 25 73 27 22 2c 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 24 62 om.base.'%s'",.$relativePath,.$b
13a300 61 73 65 50 61 74 68 29 29 3b 0a 7d 0a 0a 24 62 61 73 65 50 61 74 68 53 65 67 6d 65 6e 74 73 20 asePath));.}..$basePathSegments.
13a320 3d 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 62 61 73 65 50 61 74 68 53 65 67 6d 65 6e 74 73 2c =.array_slice($basePathSegments,
13a340 20 30 2c 20 2d 24 6e 75 6d 4c 65 76 65 6c 55 70 29 3b 0a 24 70 61 74 68 20 3d 20 70 72 65 67 5f .0,.-$numLevelUp);.$path.=.preg_
13a360 72 65 70 6c 61 63 65 28 27 7c 5e 2f 3f 28 5c 2e 5c 2e 2f 28 5c 2e 2f 29 2a 29 2a 7c 27 2c 20 27 replace('|^/?(\.\./(\./)*)*|',.'
13a380 27 2c 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f ',.$relativePath);..return.implo
13a3a0 64 65 28 27 2f 27 2c 20 24 62 61 73 65 50 61 74 68 53 65 67 6d 65 6e 74 73 29 20 2e 20 27 2f 27 de('/',.$basePathSegments)...'/'
13a3c0 20 2e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 ...$path;.}........private.stati
13a3e0 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 0a c.function.normalizePath($path).
13a400 7b 0a 24 70 61 74 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7c 28 28 3f 3c 21 5c 2e {.$path.=.preg_replace('|((?<!\.
13a420 29 5c 2e 2f 29 2a 7c 27 2c 20 27 27 2c 20 24 70 61 74 68 29 3b 0a 24 70 61 74 68 20 3d 20 70 72 )\./)*|',.'',.$path);.$path.=.pr
13a440 65 67 5f 72 65 70 6c 61 63 65 28 27 7c 2f 2f 7c 27 2c 20 27 2f 27 2c 20 24 70 61 74 68 29 3b 0a eg_replace('|//|',.'/',.$path);.
13a460 0a 72 65 74 75 72 6e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .return.$path;.}......public.fun
13a480 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 28 24 75 72 69 29 0a 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 ction.isValid($uri).{.$component
13a4a0 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 28 24 75 72 69 29 3b 0a 0a 72 65 74 75 72 6e 20 s.=.$this->parse($uri);..return.
13a4c0 21 65 6d 70 74 79 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a !empty($components);.}.}.<?php..
13a4e0 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 3b .......namespace.JsonSchema\Uri;
13a500 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 5c 52 65 74 72 69 65 76 65 72 73 5c ..use.JsonSchema\Uri\Retrievers\
13a520 46 69 6c 65 47 65 74 43 6f 6e 74 65 6e 74 73 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c FileGetContents;.use.JsonSchema\
13a540 55 72 69 5c 52 65 74 72 69 65 76 65 72 73 5c 55 72 69 52 65 74 72 69 65 76 65 72 49 6e 74 65 72 Uri\Retrievers\UriRetrieverInter
13a560 66 61 63 65 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 56 61 6c 69 64 61 74 6f 72 3b 0a face;.use.JsonSchema\Validator;.
13a580 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 use.JsonSchema\Exception\Invalid
13a5a0 53 63 68 65 6d 61 4d 65 64 69 61 54 79 70 65 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 4a 73 SchemaMediaTypeException;.use.Js
13a5c0 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 4a 73 6f 6e 44 65 63 6f 64 69 6e 67 45 onSchema\Exception\JsonDecodingE
13a5e0 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 xception;.use.JsonSchema\Excepti
13a600 6f 6e 5c 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a on\ResourceNotFoundException;...
13a620 0a 0a 0a 0a 63 6c 61 73 73 20 55 72 69 52 65 74 72 69 65 76 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 ....class.UriRetriever.{....prot
13a640 65 63 74 65 64 20 24 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 0a 0a ected.$uriRetriever.=.null;.....
13a660 0a 70 72 69 76 61 74 65 20 24 73 63 68 65 6d 61 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b .private.$schemaCache.=.array();
13a680 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 72 6d .........public.function.confirm
13a6a0 4d 65 64 69 61 54 79 70 65 28 24 75 72 69 52 65 74 72 69 65 76 65 72 2c 20 24 75 72 69 29 0a 7b MediaType($uriRetriever,.$uri).{
13a6c0 0a 24 63 6f 6e 74 65 6e 74 54 79 70 65 20 3d 20 24 75 72 69 52 65 74 72 69 65 76 65 72 2d 3e 67 .$contentType.=.$uriRetriever->g
13a6e0 65 74 43 6f 6e 74 65 6e 74 54 79 70 65 28 29 3b 0a 0a 69 66 20 28 69 73 5f 6e 75 6c 6c 28 24 63 etContentType();..if.(is_null($c
13a700 6f 6e 74 65 6e 74 54 79 70 65 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 ontentType)).{...return;.}..if.(
13a720 56 61 6c 69 64 61 74 6f 72 3a 3a 53 43 48 45 4d 41 5f 4d 45 44 49 41 5f 54 59 50 45 20 3d 3d 3d Validator::SCHEMA_MEDIA_TYPE.===
13a740 20 24 63 6f 6e 74 65 6e 74 54 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 .$contentType).{.return;.}..if.(
13a760 73 75 62 73 74 72 28 24 75 72 69 2c 20 30 2c 20 32 33 29 20 3d 3d 20 27 68 74 74 70 3a 2f 2f 6a substr($uri,.0,.23).==.'http://j
13a780 73 6f 6e 2d 73 63 68 65 6d 61 2e 6f 72 67 2f 27 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 74 72 75 son-schema.org/').{...return.tru
13a7a0 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 53 63 68 65 6d 61 4d 65 64 e;.}..throw.new.InvalidSchemaMed
13a7c0 69 61 54 79 70 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4d 65 64 69 61 20 74 iaTypeException(sprintf('Media.t
13a7e0 79 70 65 20 25 73 20 65 78 70 65 63 74 65 64 27 2c 20 56 61 6c 69 64 61 74 6f 72 3a 3a 53 43 48 ype.%s.expected',.Validator::SCH
13a800 45 4d 41 5f 4d 45 44 49 41 5f 54 59 50 45 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 EMA_MEDIA_TYPE));.}..........pub
13a820 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 29 0a 7b lic.function.getUriRetriever().{
13a840 0a 69 66 20 28 69 73 5f 6e 75 6c 6c 28 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 .if.(is_null($this->uriRetriever
13a860 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 6e 65 77 20 )).{.$this->setUriRetriever(new.
13a880 46 69 6c 65 47 65 74 43 6f 6e 74 65 6e 74 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 FileGetContents);.}..return.$thi
13a8a0 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a s->uriRetriever;.}..............
13a8c0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 50 6f 69 6e 74 65 72 28 .public.function.resolvePointer(
13a8e0 24 6a 73 6f 6e 53 63 68 65 6d 61 2c 20 24 75 72 69 29 0a 7b 0a 24 72 65 73 6f 6c 76 65 72 20 3d $jsonSchema,.$uri).{.$resolver.=
13a900 20 6e 65 77 20 55 72 69 52 65 73 6f 6c 76 65 72 28 29 3b 0a 24 70 61 72 73 65 64 20 3d 20 24 72 .new.UriResolver();.$parsed.=.$r
13a920 65 73 6f 6c 76 65 72 2d 3e 70 61 72 73 65 28 24 75 72 69 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 esolver->parse($uri);.if.(empty(
13a940 24 70 61 72 73 65 64 5b 27 66 72 61 67 6d 65 6e 74 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 $parsed['fragment'])).{.return.$
13a960 6a 73 6f 6e 53 63 68 65 6d 61 3b 0a 7d 0a 0a 24 70 61 74 68 20 3d 20 65 78 70 6c 6f 64 65 28 27 jsonSchema;.}..$path.=.explode('
13a980 2f 27 2c 20 24 70 61 72 73 65 64 5b 27 66 72 61 67 6d 65 6e 74 27 5d 29 3b 0a 77 68 69 6c 65 20 /',.$parsed['fragment']);.while.
13a9a0 28 24 70 61 74 68 29 20 7b 0a 24 70 61 74 68 45 6c 65 6d 65 6e 74 20 3d 20 61 72 72 61 79 5f 73 ($path).{.$pathElement.=.array_s
13a9c0 68 69 66 74 28 24 70 61 74 68 29 3b 0a 69 66 20 28 21 20 65 6d 70 74 79 28 24 70 61 74 68 45 6c hift($path);.if.(!.empty($pathEl
13a9e0 65 6d 65 6e 74 29 29 20 7b 0a 24 70 61 74 68 45 6c 65 6d 65 6e 74 20 3d 20 73 74 72 5f 72 65 70 ement)).{.$pathElement.=.str_rep
13aa00 6c 61 63 65 28 27 7e 31 27 2c 20 27 2f 27 2c 20 24 70 61 74 68 45 6c 65 6d 65 6e 74 29 3b 0a 24 lace('~1',.'/',.$pathElement);.$
13aa20 70 61 74 68 45 6c 65 6d 65 6e 74 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 7e 30 27 2c 20 pathElement.=.str_replace('~0',.
13aa40 27 7e 27 2c 20 24 70 61 74 68 45 6c 65 6d 65 6e 74 29 3b 0a 69 66 20 28 21 20 65 6d 70 74 79 28 '~',.$pathElement);.if.(!.empty(
13aa60 24 6a 73 6f 6e 53 63 68 65 6d 61 2d 3e 24 70 61 74 68 45 6c 65 6d 65 6e 74 29 29 20 7b 0a 24 6a $jsonSchema->$pathElement)).{.$j
13aa80 73 6f 6e 53 63 68 65 6d 61 20 3d 20 24 6a 73 6f 6e 53 63 68 65 6d 61 2d 3e 24 70 61 74 68 45 6c sonSchema.=.$jsonSchema->$pathEl
13aaa0 65 6d 65 6e 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 65 73 6f 75 72 ement;.}.else.{.throw.new.Resour
13aac0 63 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 0a 27 46 72 61 67 6d 65 6e 74 20 22 ceNotFoundException(.'Fragment."
13aae0 27 20 2e 20 24 70 61 72 73 65 64 5b 27 66 72 61 67 6d 65 6e 74 27 5d 20 2e 20 27 22 20 6e 6f 74 '...$parsed['fragment']...'".not
13ab00 20 66 6f 75 6e 64 27 0a 2e 20 27 20 69 6e 20 27 20 2e 20 24 75 72 69 0a 29 3b 0a 7d 0a 0a 69 66 .found'...'.in.'...$uri.);.}..if
13ab20 20 28 21 20 69 73 5f 6f 62 6a 65 63 74 28 24 6a 73 6f 6e 53 63 68 65 6d 61 29 29 20 7b 0a 74 68 .(!.is_object($jsonSchema)).{.th
13ab40 72 6f 77 20 6e 65 77 20 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f row.new.ResourceNotFoundExceptio
13ab60 6e 28 0a 27 46 72 61 67 6d 65 6e 74 20 70 61 72 74 20 22 27 20 2e 20 24 70 61 74 68 45 6c 65 6d n(.'Fragment.part."'...$pathElem
13ab80 65 6e 74 20 2e 20 27 22 20 69 73 20 6e 6f 20 6f 62 6a 65 63 74 20 27 0a 2e 20 27 20 69 6e 20 27 ent...'".is.no.object.'...'.in.'
13aba0 20 2e 20 24 75 72 69 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6a 73 6f 6e 53 63 ...$uri.);.}.}.}..return.$jsonSc
13abc0 68 65 6d 61 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 hema;.}.........public.function.
13abe0 72 65 74 72 69 65 76 65 28 24 75 72 69 2c 20 24 62 61 73 65 55 72 69 20 3d 20 6e 75 6c 6c 29 0a retrieve($uri,.$baseUri.=.null).
13ac00 7b 0a 24 72 65 73 6f 6c 76 65 72 20 3d 20 6e 65 77 20 55 72 69 52 65 73 6f 6c 76 65 72 28 29 3b {.$resolver.=.new.UriResolver();
13ac20 0a 24 72 65 73 6f 6c 76 65 64 55 72 69 20 3d 20 24 66 65 74 63 68 55 72 69 20 3d 20 24 72 65 73 .$resolvedUri.=.$fetchUri.=.$res
13ac40 6f 6c 76 65 72 2d 3e 72 65 73 6f 6c 76 65 28 24 75 72 69 2c 20 24 62 61 73 65 55 72 69 29 3b 0a olver->resolve($uri,.$baseUri);.
13ac60 0a 0a 20 24 61 72 50 61 72 74 73 20 3d 20 24 72 65 73 6f 6c 76 65 72 2d 3e 70 61 72 73 65 28 24 ...$arParts.=.$resolver->parse($
13ac80 72 65 73 6f 6c 76 65 64 55 72 69 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 61 72 50 61 72 74 73 resolvedUri);.if.(isset($arParts
13aca0 5b 27 66 72 61 67 6d 65 6e 74 27 5d 29 29 20 7b 0a 75 6e 73 65 74 28 24 61 72 50 61 72 74 73 5b ['fragment'])).{.unset($arParts[
13acc0 27 66 72 61 67 6d 65 6e 74 27 5d 29 3b 0a 24 66 65 74 63 68 55 72 69 20 3d 20 24 72 65 73 6f 6c 'fragment']);.$fetchUri.=.$resol
13ace0 76 65 72 2d 3e 67 65 6e 65 72 61 74 65 28 24 61 72 50 61 72 74 73 29 3b 0a 7d 0a 0a 24 6a 73 6f ver->generate($arParts);.}..$jso
13ad00 6e 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 53 63 68 65 6d 61 28 24 66 65 74 nSchema.=.$this->loadSchema($fet
13ad20 63 68 55 72 69 29 3b 0a 0a 0a 20 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e chUri);....$jsonSchema.=.$this->
13ad40 72 65 73 6f 6c 76 65 50 6f 69 6e 74 65 72 28 24 6a 73 6f 6e 53 63 68 65 6d 61 2c 20 24 72 65 73 resolvePointer($jsonSchema,.$res
13ad60 6f 6c 76 65 64 55 72 69 29 3b 0a 0a 69 66 20 28 24 6a 73 6f 6e 53 63 68 65 6d 61 20 69 6e 73 74 olvedUri);..if.($jsonSchema.inst
13ad80 61 6e 63 65 6f 66 20 5c 73 74 64 43 6c 61 73 73 29 20 7b 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 2d anceof.\stdClass).{.$jsonSchema-
13ada0 3e 69 64 20 3d 20 24 72 65 73 6f 6c 76 65 64 55 72 69 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6a >id.=.$resolvedUri;.}..return.$j
13adc0 73 6f 6e 53 63 68 65 6d 61 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 sonSchema;.}..........protected.
13ade0 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 53 63 68 65 6d 61 28 24 66 65 74 63 68 55 72 69 29 0a 7b function.loadSchema($fetchUri).{
13ae00 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 63 68 65 6d 61 43 61 63 68 65 5b 24 66 .if.(isset($this->schemaCache[$f
13ae20 65 74 63 68 55 72 69 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 63 68 65 6d etchUri])).{.return.$this->schem
13ae40 61 43 61 63 68 65 5b 24 66 65 74 63 68 55 72 69 5d 3b 0a 7d 0a 0a 24 75 72 69 52 65 74 72 69 65 aCache[$fetchUri];.}..$uriRetrie
13ae60 76 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 29 3b 0a ver.=.$this->getUriRetriever();.
13ae80 24 63 6f 6e 74 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 2d $contents.=.$this->uriRetriever-
13aea0 3e 72 65 74 72 69 65 76 65 28 24 66 65 74 63 68 55 72 69 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e >retrieve($fetchUri);.$this->con
13aec0 66 69 72 6d 4d 65 64 69 61 54 79 70 65 28 24 75 72 69 52 65 74 72 69 65 76 65 72 2c 20 24 66 65 firmMediaType($uriRetriever,.$fe
13aee0 74 63 68 55 72 69 29 3b 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f tchUri);.$jsonSchema.=.json_deco
13af00 64 65 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 69 66 20 28 4a 53 4f 4e 5f 45 52 52 4f 52 5f 4e de($contents);..if.(JSON_ERROR_N
13af20 4f 4e 45 20 3c 20 24 65 72 72 6f 72 20 3d 20 6a 73 6f 6e 5f 6c 61 73 74 5f 65 72 72 6f 72 28 29 ONE.<.$error.=.json_last_error()
13af40 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4a 73 6f 6e 44 65 63 6f 64 69 6e 67 45 78 63 65 70 74 ).{.throw.new.JsonDecodingExcept
13af60 69 6f 6e 28 24 65 72 72 6f 72 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 63 68 65 6d 61 43 61 63 ion($error);.}..$this->schemaCac
13af80 68 65 5b 24 66 65 74 63 68 55 72 69 5d 20 3d 20 24 6a 73 6f 6e 53 63 68 65 6d 61 3b 0a 0a 72 65 he[$fetchUri].=.$jsonSchema;..re
13afa0 74 75 72 6e 20 24 6a 73 6f 6e 53 63 68 65 6d 61 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 turn.$jsonSchema;.}........publi
13afc0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 55 72 69 52 65 74 72 69 65 76 65 72 28 55 72 69 52 65 c.function.setUriRetriever(UriRe
13afe0 74 72 69 65 76 65 72 49 6e 74 65 72 66 61 63 65 20 24 75 72 69 52 65 74 72 69 65 76 65 72 29 0a trieverInterface.$uriRetriever).
13b000 7b 0a 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 24 75 72 69 52 65 74 72 {.$this->uriRetriever.=.$uriRetr
13b020 69 65 76 65 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 iever;..return.$this;.}........p
13b040 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 28 24 75 72 69 29 0a 7b 0a 70 72 65 ublic.function.parse($uri).{.pre
13b060 67 5f 6d 61 74 63 68 28 27 7c 5e 28 28 5b 5e 3a 2f 3f 23 5d 2b 29 3a 29 3f 28 2f 2f 28 5b 5e 2f g_match('|^(([^:/?#]+):)?(//([^/
13b080 3f 23 5d 2a 29 29 3f 28 5b 5e 3f 23 5d 2a 29 28 5c 3f 28 5b 5e 23 5d 2a 29 29 3f 28 23 28 2e 2a ?#]*))?([^?#]*)(\?([^#]*))?(#(.*
13b0a0 29 29 3f 7c 27 2c 20 24 75 72 69 2c 20 24 6d 61 74 63 68 29 3b 0a 0a 24 63 6f 6d 70 6f 6e 65 6e ))?|',.$uri,.$match);..$componen
13b0c0 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 35 20 3c 20 63 6f 75 6e 74 28 24 6d 61 74 ts.=.array();.if.(5.<.count($mat
13b0e0 63 68 29 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 61 72 72 61 79 28 0a 27 73 63 68 ch)).{.$components.=.array(.'sch
13b100 65 6d 65 27 20 3d 3e 20 24 6d 61 74 63 68 5b 32 5d 2c 0a 27 61 75 74 68 6f 72 69 74 79 27 20 3d eme'.=>.$match[2],.'authority'.=
13b120 3e 20 24 6d 61 74 63 68 5b 34 5d 2c 0a 27 70 61 74 68 27 20 3d 3e 20 24 6d 61 74 63 68 5b 35 5d >.$match[4],.'path'.=>.$match[5]
13b140 0a 29 3b 0a 7d 0a 0a 69 66 20 28 37 20 3c 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 29 29 20 7b 0a .);.}..if.(7.<.count($match)).{.
13b160 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 71 75 65 72 79 27 5d 20 3d 20 24 6d 61 74 63 68 5b 37 5d $components['query'].=.$match[7]
13b180 3b 0a 7d 0a 0a 69 66 20 28 39 20 3c 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 ;.}..if.(9.<.count($match)).{.$c
13b1a0 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 20 3d 20 24 6d 61 74 63 68 5b 39 omponents['fragment'].=.$match[9
13b1c0 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 3b 0a 7d 0a 0a 0a 0a 0a ];.}..return.$components;.}.....
13b1e0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 28 61 72 72 61 ...public.function.generate(arra
13b200 79 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 0a 7b 0a 24 75 72 69 20 3d 20 24 63 6f 6d 70 6f 6e 65 y.$components).{.$uri.=.$compone
13b220 6e 74 73 5b 27 73 63 68 65 6d 65 27 5d 20 2e 20 27 3a 2f 2f 27 0a 2e 20 24 63 6f 6d 70 6f 6e 65 nts['scheme']...'://'...$compone
13b240 6e 74 73 5b 27 61 75 74 68 6f 72 69 74 79 27 5d 0a 2e 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 nts['authority']...$components['
13b260 70 61 74 68 27 5d 3b 0a 0a 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 27 71 path'];..if.(array_key_exists('q
13b280 75 65 72 79 27 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 29 20 7b 0a 24 75 72 69 20 2e 3d 20 24 uery',.$components)).{.$uri..=.$
13b2a0 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 71 75 65 72 79 27 5d 3b 0a 7d 0a 0a 69 66 20 28 61 72 72 61 components['query'];.}..if.(arra
13b2c0 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 27 66 72 61 67 6d 65 6e 74 27 2c 20 24 63 6f 6d 70 6f 6e y_key_exists('fragment',.$compon
13b2e0 65 6e 74 73 29 29 20 7b 0a 24 75 72 69 20 2e 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 ents)).{.$uri..=.$components['fr
13b300 61 67 6d 65 6e 74 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 75 72 69 3b 0a 7d 0a 0a 0a 0a 0a agment'];.}..return.$uri;.}.....
13b320 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 28 24 75 72 69 ....public.function.resolve($uri
13b340 2c 20 24 62 61 73 65 55 72 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 ,.$baseUri.=.null).{.$components
13b360 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 28 24 75 72 69 29 3b 0a 24 70 61 74 68 20 3d 20 24 .=.$this->parse($uri);.$path.=.$
13b380 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 70 61 74 68 27 5d 3b 0a 0a 69 66 20 28 28 61 72 72 61 79 5f components['path'];..if.((array_
13b3a0 6b 65 79 5f 65 78 69 73 74 73 28 27 73 63 68 65 6d 65 27 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 key_exists('scheme',.$components
13b3c0 29 29 20 26 26 20 28 27 68 74 74 70 27 20 3d 3d 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 73 )).&&.('http'.===.$components['s
13b3e0 63 68 65 6d 65 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 75 72 69 3b 0a 7d 0a 0a 24 62 61 73 cheme'])).{.return.$uri;.}..$bas
13b400 65 43 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 28 24 62 61 73 65 eComponents.=.$this->parse($base
13b420 55 72 69 29 3b 0a 24 62 61 73 65 50 61 74 68 20 3d 20 24 62 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 Uri);.$basePath.=.$baseComponent
13b440 73 5b 27 70 61 74 68 27 5d 3b 0a 0a 24 62 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 73 5b 27 70 61 74 s['path'];..$baseComponents['pat
13b460 68 27 5d 20 3d 20 55 72 69 52 65 73 6f 6c 76 65 72 3a 3a 63 6f 6d 62 69 6e 65 52 65 6c 61 74 69 h'].=.UriResolver::combineRelati
13b480 76 65 50 61 74 68 57 69 74 68 42 61 73 65 50 61 74 68 28 24 70 61 74 68 2c 20 24 62 61 73 65 50 vePathWithBasePath($path,.$baseP
13b4a0 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 28 24 62 ath);..return.$this->generate($b
13b4c0 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 aseComponents);.}......public.fu
13b4e0 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 28 24 75 72 69 29 0a 7b 0a 24 63 6f 6d 70 6f 6e 65 6e nction.isValid($uri).{.$componen
13b500 74 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 28 24 75 72 69 29 3b 0a 0a 72 65 74 75 72 6e ts.=.$this->parse($uri);..return
13b520 20 21 65 6d 70 74 79 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a .!empty($components);.}.}.<?php.
13b540 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 3b 0a 0a 75 ........namespace.JsonSchema;..u
13b560 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 5c 53 63 68 65 6d 61 se.JsonSchema\Constraints\Schema
13b580 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 Constraint;.use.JsonSchema\Const
13b5a0 72 61 69 6e 74 73 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 raints\Constraint;.........class
13b5c0 20 56 61 6c 69 64 61 74 6f 72 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a .Validator.extends.Constraint.{.
13b5e0 63 6f 6e 73 74 20 53 43 48 45 4d 41 5f 4d 45 44 49 41 5f 54 59 50 45 20 3d 20 27 61 70 70 6c 69 const.SCHEMA_MEDIA_TYPE.=.'appli
13b600 63 61 74 69 6f 6e 2f 73 63 68 65 6d 61 2b 6a 73 6f 6e 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 cation/schema+json';.........pub
13b620 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 lic.function.check($value,.$sche
13b640 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 ma.=.null,.$path.=.null,.$i.=.nu
13b660 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 61 63 ll).{.$validator.=.$this->getFac
13b680 74 6f 72 79 28 29 2d 3e 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 73 63 68 65 6d tory()->createInstanceFor('schem
13b6a0 61 27 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 a');.$validator->check($value,.$
13b6c0 73 63 68 65 6d 61 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 61 72 72 61 79 schema);..$this->addErrors(array
13b6e0 5f 75 6e 69 71 75 65 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 2c _unique($validator->getErrors(),
13b700 20 53 4f 52 54 5f 52 45 47 55 4c 41 52 29 29 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 .SORT_REGULAR));.}.}.Copyright.(
13b720 43 29 20 32 30 31 35 20 43 6f 6d 70 6f 73 65 72 0a 0a 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 C).2015.Composer..Permission.is.
13b740 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 hereby.granted,.free.of.charge,.
13b760 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 20 6f to.any.person.obtaining.a.copy.o
13b780 66 0a 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 f.this.software.and.associated.d
13b7a0 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 ocumentation.files.(the."Softwar
13b7c0 65 22 29 2c 20 74 6f 20 64 65 61 6c 20 69 6e 0a 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 e"),.to.deal.in.the.Software.wit
13b7e0 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 hout.restriction,.including.with
13b800 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 20 74 6f 0a 75 73 65 out.limitation.the.rights.to.use
13b820 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 2c 20 ,.copy,.modify,.merge,.publish,.
13b840 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 20 73 distribute,.sublicense,.and/or.s
13b860 65 6c 6c 20 63 6f 70 69 65 73 0a 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 ell.copies.of.the.Software,.and.
13b880 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 53 6f to.permit.persons.to.whom.the.So
13b8a0 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 20 74 6f 20 64 6f 0a 73 6f 2c 20 73 75 ftware.is.furnished.to.do.so,.su
13b8c0 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e bject.to.the.following.condition
13b8e0 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 s:..The.above.copyright.notice.a
13b900 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c 6c 20 nd.this.permission.notice.shall.
13b920 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 20 6f 72 20 73 75 62 be.included.in.all.copies.or.sub
13b940 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 stantial.portions.of.the.Softwar
13b960 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 e...THE.SOFTWARE.IS.PROVIDED."AS
13b980 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 .IS",.WITHOUT.WARRANTY.OF.ANY.KI
13b9a0 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e ND,.EXPRESS.OR.IMPLIED,.INCLUDIN
13b9c0 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 G.BUT.NOT.LIMITED.TO.THE.WARRANT
13b9e0 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 49 54 4e 45 53 53 20 IES.OF.MERCHANTABILITY,.FITNESS.
13ba00 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e FOR.A.PARTICULAR.PURPOSE.AND.NON
13ba20 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 INFRINGEMENT..IN.NO.EVENT.SHALL.
13ba40 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 THE.AUTHORS.OR.COPYRIGHT.HOLDERS
13ba60 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 .BE.LIABLE.FOR.ANY.CLAIM,.DAMAGE
13ba80 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e S.OR.OTHER.LIABILITY,.WHETHER.IN
13baa0 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 20 .AN.ACTION.OF.CONTRACT,.TORT.OR.
13bac0 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 4f 55 54 20 4f 46 20 OTHERWISE,.ARISING.FROM,.OUT.OF.
13bae0 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f 46 54 57 41 OR.IN.CONNECTION.WITH.THE.SOFTWA
13bb00 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 53 20 RE.OR.THE.USE.OR.OTHER.DEALINGS.
13bb20 49 4e 20 54 48 45 0a 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a IN.THE.SOFTWARE..<?php..........
13bb40 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 70 64 78 3b 0a 0a 63 6c 61 73 73 .namespace.Composer\Spdx;..class
13bb60 20 53 70 64 78 4c 69 63 65 6e 73 65 73 0a 7b 0a 0a 63 6f 6e 73 74 20 4c 49 43 45 4e 53 45 53 5f .SpdxLicenses.{..const.LICENSES_
13bb80 46 49 4c 45 20 3d 20 27 73 70 64 78 2d 6c 69 63 65 6e 73 65 73 2e 6a 73 6f 6e 27 3b 0a 0a 0a 63 FILE.=.'spdx-licenses.json';...c
13bba0 6f 6e 73 74 20 45 58 43 45 50 54 49 4f 4e 53 5f 46 49 4c 45 20 3d 20 27 73 70 64 78 2d 65 78 63 onst.EXCEPTIONS_FILE.=.'spdx-exc
13bbc0 65 70 74 69 6f 6e 73 2e 6a 73 6f 6e 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 eptions.json';...............pri
13bbe0 76 61 74 65 20 24 6c 69 63 65 6e 73 65 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6c 69 63 vate.$licenses;.....private.$lic
13bc00 65 6e 73 65 73 45 78 70 72 65 73 73 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ensesExpression;...............p
13bc20 72 69 76 61 74 65 20 24 65 78 63 65 70 74 69 6f 6e 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 rivate.$exceptions;.....private.
13bc40 24 65 78 63 65 70 74 69 6f 6e 73 45 78 70 72 65 73 73 69 6f 6e 3b 0a 0a 70 75 62 6c 69 63 20 66 $exceptionsExpression;..public.f
13bc60 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c unction.__construct().{.$this->l
13bc80 6f 61 64 4c 69 63 65 6e 73 65 73 28 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 45 78 63 65 70 74 oadLicenses();.$this->loadExcept
13bca0 69 6f 6e 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ions();.}..............public.fu
13bcc0 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 42 79 49 64 65 6e 74 69 66 69 65 72 28 24 69 nction.getLicenseByIdentifier($i
13bce0 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6c dentifier).{.if.(!isset($this->l
13bd00 69 63 65 6e 73 65 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 72 65 74 75 72 6e 3b icenses[$identifier])).{.return;
13bd20 0a 7d 0a 0a 24 6c 69 63 65 6e 73 65 20 3d 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 5b 24 .}..$license.=.$this->licenses[$
13bd40 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 24 6c 69 63 65 6e 73 65 5b 5d 20 3d 20 27 68 74 74 70 73 identifier];.$license[].=.'https
13bd60 3a 2f 2f 73 70 64 78 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 27 20 2e 20 24 69 64 65 6e 74 69 ://spdx.org/licenses/'...$identi
13bd80 66 69 65 72 20 2e 20 27 2e 68 74 6d 6c 23 6c 69 63 65 6e 73 65 54 65 78 74 27 3b 0a 0a 72 65 74 fier...'.html#licenseText';..ret
13bda0 75 72 6e 20 24 6c 69 63 65 6e 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 urn.$license;.}..............pub
13bdc0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 63 65 70 74 69 6f 6e 42 79 49 64 65 6e 74 lic.function.getExceptionByIdent
13bde0 69 66 69 65 72 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 ifier($identifier).{.if.(!isset(
13be00 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 $this->exceptions[$identifier]))
13be20 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 6c 69 63 65 6e 73 65 20 3d 20 24 74 68 69 73 2d 3e .{.return;.}..$license.=.$this->
13be40 65 78 63 65 70 74 69 6f 6e 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 24 6c 69 63 65 6e 73 exceptions[$identifier];.$licens
13be60 65 5b 5d 20 3d 20 27 68 74 74 70 73 3a 2f 2f 73 70 64 78 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 e[].=.'https://spdx.org/licenses
13be80 2f 27 20 2e 20 24 69 64 65 6e 74 69 66 69 65 72 20 2e 20 27 2e 68 74 6d 6c 23 6c 69 63 65 6e 73 /'...$identifier...'.html#licens
13bea0 65 45 78 63 65 70 74 69 6f 6e 54 65 78 74 27 3b 0a 0a 72 65 74 75 72 6e 20 24 6c 69 63 65 6e 73 eExceptionText';..return.$licens
13bec0 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 e;.}.........public.function.get
13bee0 49 64 65 6e 74 69 66 69 65 72 42 79 4e 61 6d 65 28 24 6e 61 6d 65 29 0a 7b 0a 66 6f 72 65 61 63 IdentifierByName($name).{.foreac
13bf00 68 20 28 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 20 61 73 20 24 69 64 65 6e 74 69 66 69 65 h.($this->licenses.as.$identifie
13bf20 72 20 3d 3e 20 24 6c 69 63 65 6e 73 65 44 61 74 61 29 20 7b 0a 69 66 20 28 24 6c 69 63 65 6e 73 r.=>.$licenseData).{.if.($licens
13bf40 65 44 61 74 61 5b 30 5d 20 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 64 eData[0].===.$name).{.return.$id
13bf60 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 65 entifier;.}.}..foreach.($this->e
13bf80 78 63 65 70 74 69 6f 6e 73 20 61 73 20 24 69 64 65 6e 74 69 66 69 65 72 20 3d 3e 20 24 6c 69 63 xceptions.as.$identifier.=>.$lic
13bfa0 65 6e 73 65 44 61 74 61 29 20 7b 0a 69 66 20 28 24 6c 69 63 65 6e 73 65 44 61 74 61 5b 30 5d 20 enseData).{.if.($licenseData[0].
13bfc0 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 64 65 6e 74 69 66 69 65 72 3b ===.$name).{.return.$identifier;
13bfe0 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 .}.}.}.........public.function.i
13c000 73 4f 73 69 41 70 70 72 6f 76 65 64 42 79 49 64 65 6e 74 69 66 69 65 72 28 24 69 64 65 6e 74 69 sOsiApprovedByIdentifier($identi
13c020 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 5b 24 fier).{.return.$this->licenses[$
13c040 69 64 65 6e 74 69 66 69 65 72 5d 5b 31 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 identifier][1];.}........public.
13c060 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 28 24 6c 69 63 65 6e 73 65 29 0a 7b 0a 69 66 function.validate($license).{.if
13c080 20 28 69 73 5f 61 72 72 61 79 28 24 6c 69 63 65 6e 73 65 29 29 20 7b 0a 24 63 6f 75 6e 74 20 3d .(is_array($license)).{.$count.=
13c0a0 20 63 6f 75 6e 74 28 24 6c 69 63 65 6e 73 65 29 3b 0a 69 66 20 28 24 63 6f 75 6e 74 20 21 3d 3d .count($license);.if.($count.!==
13c0c0 20 63 6f 75 6e 74 28 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 6c 69 63 65 6e 73 65 2c 20 27 69 .count(array_filter($license,.'i
13c0e0 73 5f 73 74 72 69 6e 67 27 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 s_string'))).{.throw.new.\Invali
13c100 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 41 72 72 61 79 20 6f 66 20 73 74 72 dArgumentException('Array.of.str
13c120 69 6e 67 73 20 65 78 70 65 63 74 65 64 2e 27 29 3b 0a 7d 0a 24 6c 69 63 65 6e 73 65 20 3d 20 24 ings.expected.');.}.$license.=.$
13c140 63 6f 75 6e 74 20 3e 20 31 20 3f 20 27 28 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 20 4f 52 20 27 count.>.1.?.'('...implode('.OR.'
13c160 2c 20 24 6c 69 63 65 6e 73 65 29 20 2e 20 27 29 27 20 3a 20 28 73 74 72 69 6e 67 29 20 72 65 73 ,.$license)...')'.:.(string).res
13c180 65 74 28 24 6c 69 63 65 6e 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 73 74 72 69 6e 67 28 et($license);.}..if.(!is_string(
13c1a0 24 6c 69 63 65 6e 73 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 $license)).{.throw.new.\InvalidA
13c1c0 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 41 72 72 61 79 rgumentException(sprintf(.'Array
13c1e0 20 6f 72 20 53 74 72 69 6e 67 20 65 78 70 65 63 74 65 64 2c 20 25 73 20 67 69 76 65 6e 2e 27 2c .or.String.expected,.%s.given.',
13c200 0a 67 65 74 74 79 70 65 28 24 6c 69 63 65 6e 73 65 29 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e .gettype($license).));.}..return
13c220 20 24 74 68 69 73 2d 3e 69 73 56 61 6c 69 64 4c 69 63 65 6e 73 65 53 74 72 69 6e 67 28 24 6c 69 .$this->isValidLicenseString($li
13c240 63 65 6e 73 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 cense);.}.....public.static.func
13c260 74 69 6f 6e 20 67 65 74 52 65 73 6f 75 72 63 65 73 44 69 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 tion.getResourcesDir().{.return.
13c280 64 69 72 6e 61 6d 65 28 5f 5f 44 49 52 5f 5f 29 20 2e 20 27 2f 72 65 73 27 3b 0a 7d 0a 0a 70 72 dirname(__DIR__)...'/res';.}..pr
13c2a0 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 4c 69 63 65 6e 73 65 73 28 29 0a 7b 0a ivate.function.loadLicenses().{.
13c2c0 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 29 20 7b 0a if.(null.===.$this->licenses).{.
13c2e0 24 6a 73 6f 6e 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 73 65 6c 66 3a 3a $json.=.file_get_contents(self::
13c300 67 65 74 52 65 73 6f 75 72 63 65 73 44 69 72 28 29 20 2e 20 27 2f 27 20 2e 20 73 65 6c 66 3a 3a getResourcesDir()...'/'...self::
13c320 4c 49 43 45 4e 53 45 53 5f 46 49 4c 45 29 3b 0a 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 20 LICENSES_FILE);.$this->licenses.
13c340 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 6a 73 6f 6e 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a =.json_decode($json,.true);.}.}.
13c360 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 45 78 63 65 70 74 69 6f 6e 73 .private.function.loadExceptions
13c380 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 ().{.if.(null.===.$this->excepti
13c3a0 6f 6e 73 29 20 7b 0a 24 6a 73 6f 6e 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 ons).{.$json.=.file_get_contents
13c3c0 28 73 65 6c 66 3a 3a 67 65 74 52 65 73 6f 75 72 63 65 73 44 69 72 28 29 20 2e 20 27 2f 27 20 2e (self::getResourcesDir()...'/'..
13c3e0 20 73 65 6c 66 3a 3a 45 58 43 45 50 54 49 4f 4e 53 5f 46 49 4c 45 29 3b 0a 24 74 68 69 73 2d 3e .self::EXCEPTIONS_FILE);.$this->
13c400 65 78 63 65 70 74 69 6f 6e 73 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 6a 73 6f 6e 2c 20 exceptions.=.json_decode($json,.
13c420 74 72 75 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 true);.}.}.....private.function.
13c440 67 65 74 4c 69 63 65 6e 73 65 73 45 78 70 72 65 73 73 69 6f 6e 28 29 0a 7b 0a 69 66 20 28 6e 75 getLicensesExpression().{.if.(nu
13c460 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 45 78 70 72 65 73 73 69 6f 6e ll.===.$this->licensesExpression
13c480 29 20 7b 0a 24 6c 69 63 65 6e 73 65 73 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 27 70 72 65 67 5f ).{.$licenses.=.array_map('preg_
13c4a0 71 75 6f 74 65 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 quote',.array_keys($this->licens
13c4c0 65 73 29 29 3b 0a 72 73 6f 72 74 28 24 6c 69 63 65 6e 73 65 73 29 3b 0a 24 6c 69 63 65 6e 73 65 es));.rsort($licenses);.$license
13c4e0 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 6c 69 63 65 6e 73 65 73 29 3b 0a 24 74 68 s.=.implode('|',.$licenses);.$th
13c500 69 73 2d 3e 6c 69 63 65 6e 73 65 73 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 24 6c 69 63 65 6e 73 is->licensesExpression.=.$licens
13c520 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 45 78 70 es;.}..return.$this->licensesExp
13c540 72 65 73 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 ression;.}.....private.function.
13c560 67 65 74 45 78 63 65 70 74 69 6f 6e 73 45 78 70 72 65 73 73 69 6f 6e 28 29 0a 7b 0a 69 66 20 28 getExceptionsExpression().{.if.(
13c580 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 45 78 70 72 65 73 null.===.$this->exceptionsExpres
13c5a0 73 69 6f 6e 29 20 7b 0a 24 65 78 63 65 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 sion).{.$exceptions.=.array_map(
13c5c0 27 70 72 65 67 5f 71 75 6f 74 65 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 'preg_quote',.array_keys($this->
13c5e0 65 78 63 65 70 74 69 6f 6e 73 29 29 3b 0a 72 73 6f 72 74 28 24 65 78 63 65 70 74 69 6f 6e 73 29 exceptions));.rsort($exceptions)
13c600 3b 0a 24 65 78 63 65 70 74 69 6f 6e 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 65 78 ;.$exceptions.=.implode('|',.$ex
13c620 63 65 70 74 69 6f 6e 73 29 3b 0a 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 45 78 70 72 ceptions);.$this->exceptionsExpr
13c640 65 73 73 69 6f 6e 20 3d 20 24 65 78 63 65 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 ession.=.$exceptions;.}..return.
13c660 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 45 78 70 72 65 73 73 69 6f 6e 3b 0a 7d 0a 0a $this->exceptionsExpression;.}..
13c680 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 4c 69 ......private.function.isValidLi
13c6a0 63 65 6e 73 65 53 74 72 69 6e 67 28 24 6c 69 63 65 6e 73 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 censeString($license).{.if.(isse
13c6c0 74 28 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 5b 24 6c 69 63 65 6e 73 65 5d 29 29 20 7b 0a t($this->licenses[$license])).{.
13c6e0 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 6c 69 63 65 6e 73 65 73 20 3d 20 24 74 68 69 return.true;.}..$licenses.=.$thi
13c700 73 2d 3e 67 65 74 4c 69 63 65 6e 73 65 73 45 78 70 72 65 73 73 69 6f 6e 28 29 3b 0a 24 65 78 63 s->getLicensesExpression();.$exc
13c720 65 70 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 78 63 65 70 74 69 6f 6e 73 45 78 eptions.=.$this->getExceptionsEx
13c740 70 72 65 73 73 69 6f 6e 28 29 3b 0a 0a 24 72 65 67 65 78 20 3d 20 3c 3c 3c 52 45 47 45 58 0a 7b pression();..$regex.=.<<<REGEX.{
13c760 0a 28 3f 28 44 45 46 49 4e 45 29 0a 20 20 20 20 23 20 69 64 73 74 72 69 6e 67 3a 20 31 2a 28 20 .(?(DEFINE).....#.idstring:.1*(.
13c780 41 4c 50 48 41 20 2f 20 44 49 47 49 54 20 2f 20 2d 20 2f 20 2e 20 29 0a 20 20 20 20 28 3f 3c 69 ALPHA./.DIGIT./.-./...).....(?<i
13c7a0 64 73 74 72 69 6e 67 3e 5b 5c 70 4c 5c 70 4e 2e 2d 5d 7b 31 2c 7d 29 0a 0a 20 20 20 20 23 20 6c dstring>[\pL\pN.-]{1,})......#.l
13c7c0 69 63 65 6e 73 65 2d 69 64 3a 20 74 61 6b 65 6e 20 66 72 6f 6d 20 6c 69 73 74 0a 20 20 20 20 28 icense-id:.taken.from.list.....(
13c7e0 3f 3c 6c 69 63 65 6e 73 65 69 64 3e 24 7b 6c 69 63 65 6e 73 65 73 7d 29 0a 0a 20 20 20 20 23 20 ?<licenseid>${licenses})......#.
13c800 6c 69 63 65 6e 73 65 2d 65 78 63 65 70 74 69 6f 6e 2d 69 64 3a 20 74 61 6b 65 6e 20 66 72 6f 6d license-exception-id:.taken.from
13c820 20 6c 69 73 74 0a 20 20 20 20 28 3f 3c 6c 69 63 65 6e 73 65 65 78 63 65 70 74 69 6f 6e 69 64 3e .list.....(?<licenseexceptionid>
13c840 24 7b 65 78 63 65 70 74 69 6f 6e 73 7d 29 0a 0a 20 20 20 20 23 20 6c 69 63 65 6e 73 65 2d 72 65 ${exceptions})......#.license-re
13c860 66 3a 20 5b 44 6f 63 75 6d 65 6e 74 52 65 66 2d 31 2a 28 69 64 73 74 72 69 6e 67 29 3a 5d 4c 69 f:.[DocumentRef-1*(idstring):]Li
13c880 63 65 6e 73 65 52 65 66 2d 31 2a 28 69 64 73 74 72 69 6e 67 29 0a 20 20 20 20 28 3f 3c 6c 69 63 censeRef-1*(idstring).....(?<lic
13c8a0 65 6e 73 65 72 65 66 3e 28 3f 3a 44 6f 63 75 6d 65 6e 74 52 65 66 2d 28 3f 26 69 64 73 74 72 69 enseref>(?:DocumentRef-(?&idstri
13c8c0 6e 67 29 3a 29 3f 4c 69 63 65 6e 73 65 52 65 66 2d 28 3f 26 69 64 73 74 72 69 6e 67 29 29 0a 0a ng):)?LicenseRef-(?&idstring))..
13c8e0 20 20 20 20 23 20 73 69 6d 70 6c 65 2d 65 78 70 72 65 73 73 73 69 6f 6e 3a 20 6c 69 63 65 6e 73 ....#.simple-expresssion:.licens
13c900 65 2d 69 64 20 2f 20 6c 69 63 65 6e 73 65 2d 69 64 2b 20 2f 20 6c 69 63 65 6e 73 65 2d 72 65 66 e-id./.license-id+./.license-ref
13c920 0a 20 20 20 20 28 3f 3c 73 69 6d 70 6c 65 5f 65 78 70 72 65 73 73 69 6f 6e 3e 28 3f 26 6c 69 63 .....(?<simple_expression>(?&lic
13c940 65 6e 73 65 69 64 29 5c 2b 3f 20 7c 20 28 3f 26 6c 69 63 65 6e 73 65 69 64 29 20 7c 20 28 3f 26 enseid)\+?.|.(?&licenseid).|.(?&
13c960 6c 69 63 65 6e 73 65 72 65 66 29 29 0a 0a 20 20 20 20 23 20 63 6f 6d 70 6f 75 6e 64 2d 65 78 70 licenseref))......#.compound-exp
13c980 72 65 73 73 69 6f 6e 3a 20 31 2a 28 0a 20 20 20 20 23 20 20 20 73 69 6d 70 6c 65 2d 65 78 70 72 ression:.1*(.....#...simple-expr
13c9a0 65 73 73 69 6f 6e 20 2f 0a 20 20 20 20 23 20 20 20 73 69 6d 70 6c 65 2d 65 78 70 72 65 73 73 69 ession./.....#...simple-expressi
13c9c0 6f 6e 20 57 49 54 48 20 6c 69 63 65 6e 73 65 2d 65 78 63 65 70 74 69 6f 6e 2d 69 64 20 2f 0a 20 on.WITH.license-exception-id./..
13c9e0 20 20 20 23 20 20 20 63 6f 6d 70 6f 75 6e 64 2d 65 78 70 72 65 73 73 69 6f 6e 20 41 4e 44 20 63 ...#...compound-expression.AND.c
13ca00 6f 6d 70 6f 75 6e 64 2d 65 78 70 72 65 73 73 69 6f 6e 20 2f 0a 20 20 20 20 23 20 20 20 63 6f 6d ompound-expression./.....#...com
13ca20 70 6f 75 6e 64 2d 65 78 70 72 65 73 73 69 6f 6e 20 4f 52 20 63 6f 6d 70 6f 75 6e 64 2d 65 78 70 pound-expression.OR.compound-exp
13ca40 72 65 73 73 69 6f 6e 0a 20 20 20 20 23 20 29 20 2f 20 28 20 63 6f 6d 70 6f 75 6e 64 2d 65 78 70 ression.....#.)./.(.compound-exp
13ca60 72 65 73 73 69 6f 6e 20 29 20 29 0a 20 20 20 20 28 3f 3c 63 6f 6d 70 6f 75 6e 64 5f 68 65 61 64 ression.).).....(?<compound_head
13ca80 3e 0a 20 20 20 20 20 20 20 20 28 3f 26 73 69 6d 70 6c 65 5f 65 78 70 72 65 73 73 69 6f 6e 29 20 >.........(?&simple_expression).
13caa0 28 20 5c 73 2b 20 28 3f 3a 77 69 74 68 7c 57 49 54 48 29 20 5c 73 2b 20 28 3f 26 6c 69 63 65 6e (.\s+.(?:with|WITH).\s+.(?&licen
13cac0 73 65 65 78 63 65 70 74 69 6f 6e 69 64 29 29 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 5c seexceptionid))?.............|.\
13cae0 28 20 5c 73 2a 20 28 3f 26 63 6f 6d 70 6f 75 6e 64 5f 65 78 70 72 65 73 73 69 6f 6e 29 20 5c 73 (.\s*.(?&compound_expression).\s
13cb00 2a 20 5c 29 0a 20 20 20 20 29 0a 20 20 20 20 28 3f 3c 63 6f 6d 70 6f 75 6e 64 5f 65 78 70 72 65 *.\).....).....(?<compound_expre
13cb20 73 73 69 6f 6e 3e 0a 20 20 20 20 20 20 20 20 28 3f 26 63 6f 6d 70 6f 75 6e 64 5f 68 65 61 64 29 ssion>.........(?&compound_head)
13cb40 20 28 3f 3a 20 5c 73 2b 20 28 3f 3a 61 6e 64 7c 41 4e 44 7c 6f 72 7c 4f 52 29 20 5c 73 2b 20 28 .(?:.\s+.(?:and|AND|or|OR).\s+.(
13cb60 3f 26 63 6f 6d 70 6f 75 6e 64 5f 65 78 70 72 65 73 73 69 6f 6e 29 29 3f 0a 20 20 20 20 29 0a 0a ?&compound_expression))?.....)..
13cb80 20 20 20 20 23 20 6c 69 63 65 6e 73 65 2d 65 78 70 72 65 73 73 69 6f 6e 3a 20 31 2a 31 28 73 69 ....#.license-expression:.1*1(si
13cba0 6d 70 6c 65 2d 65 78 70 72 65 73 73 69 6f 6e 20 2f 20 63 6f 6d 70 6f 75 6e 64 2d 65 78 70 72 65 mple-expression./.compound-expre
13cbc0 73 73 69 6f 6e 29 0a 20 20 20 20 28 3f 3c 6c 69 63 65 6e 73 65 5f 65 78 70 72 65 73 73 69 6f 6e ssion).....(?<license_expression
13cbe0 3e 28 3f 26 63 6f 6d 70 6f 75 6e 64 5f 65 78 70 72 65 73 73 69 6f 6e 29 20 7c 20 28 3f 26 73 69 >(?&compound_expression).|.(?&si
13cc00 6d 70 6c 65 5f 65 78 70 72 65 73 73 69 6f 6e 29 29 0a 29 20 23 20 65 6e 64 20 6f 66 20 64 65 66 mple_expression)).).#.end.of.def
13cc20 69 6e 65 0a 0a 5e 28 4e 4f 4e 45 20 7c 20 4e 4f 41 53 53 45 52 54 49 4f 4e 20 7c 20 28 3f 26 6c ine..^(NONE.|.NOASSERTION.|.(?&l
13cc40 69 63 65 6e 73 65 5f 65 78 70 72 65 73 73 69 6f 6e 29 29 24 0a 7d 78 0a 52 45 47 45 58 3b 0a 0a icense_expression))$.}x.REGEX;..
13cc60 24 6d 61 74 63 68 20 3d 20 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 67 65 78 2c 20 24 6c 69 63 $match.=.preg_match($regex,.$lic
13cc80 65 6e 73 65 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6d 61 74 63 68 29 20 7b 0a 72 65 74 75 ense);..if.(0.===.$match).{.retu
13cca0 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6d 61 74 63 rn.false;.}..if.(false.===.$matc
13ccc0 68 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e h).{.throw.new.\RuntimeException
13cce0 28 27 52 65 67 65 78 20 66 61 69 6c 65 64 20 74 6f 20 63 6f 6d 70 69 6c 65 2f 72 75 6e 2e 27 29 ('Regex.failed.to.compile/run.')
13cd00 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 ;.}..return.true;.}.}.Copyright.
13cd20 28 43 29 20 32 30 31 35 20 43 6f 6d 70 6f 73 65 72 0a 0a 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 (C).2015.Composer..Permission.is
13cd40 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c .hereby.granted,.free.of.charge,
13cd60 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 20 .to.any.person.obtaining.a.copy.
13cd80 6f 66 0a 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 of.this.software.and.associated.
13cda0 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 documentation.files.(the."Softwa
13cdc0 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 20 69 6e 0a 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 re"),.to.deal.in.the.Software.wi
13cde0 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 thout.restriction,.including.wit
13ce00 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 20 74 6f 0a 75 73 hout.limitation.the.rights.to.us
13ce20 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 2c e,.copy,.modify,.merge,.publish,
13ce40 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 20 .distribute,.sublicense,.and/or.
13ce60 73 65 6c 6c 20 63 6f 70 69 65 73 0a 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 61 6e 64 sell.copies.of.the.Software,.and
13ce80 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 53 .to.permit.persons.to.whom.the.S
13cea0 6f 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 20 74 6f 20 64 6f 0a 73 6f 2c 20 73 oftware.is.furnished.to.do.so,.s
13cec0 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f ubject.to.the.following.conditio
13cee0 6e 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 ns:..The.above.copyright.notice.
13cf00 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c 6c and.this.permission.notice.shall
13cf20 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 20 6f 72 20 73 75 .be.included.in.all.copies.or.su
13cf40 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 bstantial.portions.of.the.Softwa
13cf60 72 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 re...THE.SOFTWARE.IS.PROVIDED."A
13cf80 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b S.IS",.WITHOUT.WARRANTY.OF.ANY.K
13cfa0 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 IND,.EXPRESS.OR.IMPLIED,.INCLUDI
13cfc0 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e NG.BUT.NOT.LIMITED.TO.THE.WARRAN
13cfe0 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 49 54 4e 45 53 53 TIES.OF.MERCHANTABILITY,.FITNESS
13d000 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f .FOR.A.PARTICULAR.PURPOSE.AND.NO
13d020 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c NINFRINGEMENT..IN.NO.EVENT.SHALL
13d040 20 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 .THE.AUTHORS.OR.COPYRIGHT.HOLDER
13d060 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 S.BE.LIABLE.FOR.ANY.CLAIM,.DAMAG
13d080 45 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 ES.OR.OTHER.LIABILITY,.WHETHER.I
13d0a0 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 N.AN.ACTION.OF.CONTRACT,.TORT.OR
13d0c0 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 4f 55 54 20 4f 46 .OTHERWISE,.ARISING.FROM,.OUT.OF
13d0e0 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f 46 54 57 .OR.IN.CONNECTION.WITH.THE.SOFTW
13d100 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 53 ARE.OR.THE.USE.OR.OTHER.DEALINGS
13d120 20 49 4e 20 54 48 45 0a 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a .IN.THE.SOFTWARE..<?php.........
13d140 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 3b 0a 0a 75 73 ..namespace.Composer\Semver;..us
13d160 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e e.Composer\Semver\Constraint\Con
13d180 73 74 72 61 69 6e 74 3b 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 61 72 61 74 6f 72 0a 7b 0a 0a 0a 0a straint;..class.Comparator.{....
13d1a0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 72 65 61 .....public.static.function.grea
13d1c0 74 65 72 54 68 61 6e 28 24 76 65 72 73 69 6f 6e 31 2c 20 24 76 65 72 73 69 6f 6e 32 29 0a 7b 0a terThan($version1,.$version2).{.
13d1e0 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 63 6f 6d 70 61 72 65 28 24 76 65 72 73 69 6f 6e 31 2c 20 return.self::compare($version1,.
13d200 27 3e 27 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c '>',.$version2);.}..........publ
13d220 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 72 65 61 74 65 72 54 68 61 6e 4f 72 ic.static.function.greaterThanOr
13d240 45 71 75 61 6c 54 6f 28 24 76 65 72 73 69 6f 6e 31 2c 20 24 76 65 72 73 69 6f 6e 32 29 0a 7b 0a EqualTo($version1,.$version2).{.
13d260 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 63 6f 6d 70 61 72 65 28 24 76 65 72 73 69 6f 6e 31 2c 20 return.self::compare($version1,.
13d280 27 3e 3d 27 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 '>=',.$version2);.}..........pub
13d2a0 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 65 73 73 54 68 61 6e 28 24 76 65 lic.static.function.lessThan($ve
13d2c0 72 73 69 6f 6e 31 2c 20 24 76 65 72 73 69 6f 6e 32 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 rsion1,.$version2).{.return.self
13d2e0 3a 3a 63 6f 6d 70 61 72 65 28 24 76 65 72 73 69 6f 6e 31 2c 20 27 3c 27 2c 20 24 76 65 72 73 69 ::compare($version1,.'<',.$versi
13d300 6f 6e 32 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 on2);.}..........public.static.f
13d320 75 6e 63 74 69 6f 6e 20 6c 65 73 73 54 68 61 6e 4f 72 45 71 75 61 6c 54 6f 28 24 76 65 72 73 69 unction.lessThanOrEqualTo($versi
13d340 6f 6e 31 2c 20 24 76 65 72 73 69 6f 6e 32 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 63 on1,.$version2).{.return.self::c
13d360 6f 6d 70 61 72 65 28 24 76 65 72 73 69 6f 6e 31 2c 20 27 3c 3d 27 2c 20 24 76 65 72 73 69 6f 6e ompare($version1,.'<=',.$version
13d380 32 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 2);.}..........public.static.fun
13d3a0 63 74 69 6f 6e 20 65 71 75 61 6c 54 6f 28 24 76 65 72 73 69 6f 6e 31 2c 20 24 76 65 72 73 69 6f ction.equalTo($version1,.$versio
13d3c0 6e 32 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 63 6f 6d 70 61 72 65 28 24 76 65 72 73 n2).{.return.self::compare($vers
13d3e0 69 6f 6e 31 2c 20 27 3d 3d 27 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ion1,.'==',.$version2);.}.......
13d400 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 45 71 75 ...public.static.function.notEqu
13d420 61 6c 54 6f 28 24 76 65 72 73 69 6f 6e 31 2c 20 24 76 65 72 73 69 6f 6e 32 29 0a 7b 0a 72 65 74 alTo($version1,.$version2).{.ret
13d440 75 72 6e 20 73 65 6c 66 3a 3a 63 6f 6d 70 61 72 65 28 24 76 65 72 73 69 6f 6e 31 2c 20 27 21 3d urn.self::compare($version1,.'!=
13d460 27 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ',.$version2);.}...........publi
13d480 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 70 61 72 65 28 24 76 65 72 73 69 c.static.function.compare($versi
13d4a0 6f 6e 31 2c 20 24 6f 70 65 72 61 74 6f 72 2c 20 24 76 65 72 73 69 6f 6e 32 29 0a 7b 0a 24 63 6f on1,.$operator,.$version2).{.$co
13d4c0 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 24 6f 70 65 72 61 nstraint.=.new.Constraint($opera
13d4e0 74 6f 72 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 73 74 72 tor,.$version2);..return.$constr
13d500 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d aint->matches(new.Constraint('==
13d520 27 2c 20 24 76 65 72 73 69 6f 6e 31 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a ',.$version1));.}.}.<?php.......
13d540 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f ....namespace.Composer\Semver\Co
13d560 6e 73 74 72 61 69 6e 74 3b 0a 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 20 nstraint;..trigger_error('The.'.
13d580 2e 20 5f 5f 43 4c 41 53 53 5f 5f 20 2e 20 27 20 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 69 ..__CLASS__...'.abstract.class.i
13d5a0 73 20 64 65 70 72 65 63 61 74 65 64 2c 20 74 68 65 72 65 20 69 73 20 6e 6f 20 72 65 70 6c 61 63 s.deprecated,.there.is.no.replac
13d5c0 65 6d 65 6e 74 20 66 6f 72 20 69 74 2c 20 69 74 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 ement.for.it,.it.will.be.removed
13d5e0 20 69 6e 20 74 68 65 20 6e 65 78 74 20 6d 61 6a 6f 72 20 76 65 72 73 69 6f 6e 2e 27 2c 20 45 5f .in.the.next.major.version.',.E_
13d600 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 USER_DEPRECATED);.....abstract.c
13d620 6c 61 73 73 20 41 62 73 74 72 61 63 74 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e lass.AbstractConstraint.implemen
13d640 74 73 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 70 72 6f 74 65 63 ts.ConstraintInterface.{..protec
13d660 74 65 64 20 24 70 72 65 74 74 79 53 74 72 69 6e 67 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ted.$prettyString;.......public.
13d680 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 65 73 28 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 function.matches(ConstraintInter
13d6a0 66 61 63 65 20 24 70 72 6f 76 69 64 65 72 29 0a 7b 0a 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 face.$provider).{.if.($provider.
13d6c0 69 6e 73 74 61 6e 63 65 6f 66 20 24 74 68 69 73 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 instanceof.$this).{...return.$th
13d6e0 69 73 2d 3e 6d 61 74 63 68 53 70 65 63 69 66 69 63 28 24 70 72 6f 76 69 64 65 72 29 3b 0a 7d 0a is->matchSpecific($provider);.}.
13d700 0a 0a 20 72 65 74 75 72 6e 20 24 70 72 6f 76 69 64 65 72 2d 3e 6d 61 74 63 68 65 73 28 24 74 68 ...return.$provider->matches($th
13d720 69 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 is);.}.....public.function.setPr
13d740 65 74 74 79 53 74 72 69 6e 67 28 24 70 72 65 74 74 79 53 74 72 69 6e 67 29 0a 7b 0a 24 74 68 69 ettyString($prettyString).{.$thi
13d760 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 20 3d 20 24 70 72 65 74 74 79 53 74 72 69 6e 67 3b s->prettyString.=.$prettyString;
13d780 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 .}.....public.function.getPretty
13d7a0 53 74 72 69 6e 67 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 74 74 79 53 74 72 69 String().{.if.($this->prettyStri
13d7c0 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 ng).{.return.$this->prettyString
13d7e0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b ;.}..return.$this->__toString();
13d800 0a 7d 0a 0a 0a 20 0a 20 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 .}.......}.<?php...........names
13d820 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 3b pace.Composer\Semver\Constraint;
13d840 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 .....class.Constraint.implements
13d860 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 63 6f 6e 73 74 20 4f 50 .ConstraintInterface.{..const.OP
13d880 5f 45 51 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 4f 50 5f 4c 54 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 _EQ.=.0;.const.OP_LT.=.1;.const.
13d8a0 4f 50 5f 4c 45 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 4f 50 5f 47 54 20 3d 20 33 3b 0a 63 6f 6e 73 OP_LE.=.2;.const.OP_GT.=.3;.cons
13d8c0 74 20 4f 50 5f 47 45 20 3d 20 34 3b 0a 63 6f 6e 73 74 20 4f 50 5f 4e 45 20 3d 20 35 3b 0a 0a 0a t.OP_GE.=.4;.const.OP_NE.=.5;...
13d8e0 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 74 72 61 6e 73 4f 70 53 74 72 20 3d ....private.static.$transOpStr.=
13d900 20 61 72 72 61 79 28 0a 27 3d 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 45 51 2c 0a 27 3d 3d 27 .array(.'='.=>.self::OP_EQ,.'=='
13d920 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 45 51 2c 0a 27 3c 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 .=>.self::OP_EQ,.'<'.=>.self::OP
13d940 5f 4c 54 2c 0a 27 3c 3d 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 4c 45 2c 0a 27 3e 27 20 3d 3e _LT,.'<='.=>.self::OP_LE,.'>'.=>
13d960 20 73 65 6c 66 3a 3a 4f 50 5f 47 54 2c 0a 27 3e 3d 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 47 .self::OP_GT,.'>='.=>.self::OP_G
13d980 45 2c 0a 27 3c 3e 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 4e 45 2c 0a 27 21 3d 27 20 3d 3e 20 E,.'<>'.=>.self::OP_NE,.'!='.=>.
13d9a0 73 65 6c 66 3a 3a 4f 50 5f 4e 45 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 self::OP_NE,.);.......private.st
13d9c0 61 74 69 63 20 24 74 72 61 6e 73 4f 70 49 6e 74 20 3d 20 61 72 72 61 79 28 0a 73 65 6c 66 3a 3a atic.$transOpInt.=.array(.self::
13d9e0 4f 50 5f 45 51 20 3d 3e 20 27 3d 3d 27 2c 0a 73 65 6c 66 3a 3a 4f 50 5f 4c 54 20 3d 3e 20 27 3c OP_EQ.=>.'==',.self::OP_LT.=>.'<
13da00 27 2c 0a 73 65 6c 66 3a 3a 4f 50 5f 4c 45 20 3d 3e 20 27 3c 3d 27 2c 0a 73 65 6c 66 3a 3a 4f 50 ',.self::OP_LE.=>.'<=',.self::OP
13da20 5f 47 54 20 3d 3e 20 27 3e 27 2c 0a 73 65 6c 66 3a 3a 4f 50 5f 47 45 20 3d 3e 20 27 3e 3d 27 2c _GT.=>.'>',.self::OP_GE.=>.'>=',
13da40 0a 73 65 6c 66 3a 3a 4f 50 5f 4e 45 20 3d 3e 20 27 21 3d 27 2c 0a 29 3b 0a 0a 0a 70 72 6f 74 65 .self::OP_NE.=>.'!=',.);...prote
13da60 63 74 65 64 20 24 6f 70 65 72 61 74 6f 72 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 cted.$operator;...protected.$ver
13da80 73 69 6f 6e 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 53 74 72 69 6e 67 3b sion;...protected.$prettyString;
13daa0 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 65 73 28 43 .......public.function.matches(C
13dac0 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 70 72 6f 76 69 64 65 72 29 0a 7b 0a onstraintInterface.$provider).{.
13dae0 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 24 74 68 69 73 29 20 if.($provider.instanceof.$this).
13db00 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 74 63 68 53 70 65 63 69 66 69 63 28 24 70 {.return.$this->matchSpecific($p
13db20 72 6f 76 69 64 65 72 29 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 24 70 72 6f 76 69 64 65 72 2d rovider);.}....return.$provider-
13db40 3e 6d 61 74 63 68 65 73 28 24 74 68 69 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 >matches($this);.}.....public.fu
13db60 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 72 65 74 74 79 53 74 nction.setPrettyString($prettySt
13db80 72 69 6e 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 20 3d 20 24 70 ring).{.$this->prettyString.=.$p
13dba0 72 65 74 74 79 53 74 72 69 6e 67 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 rettyString;.}.....public.functi
13dbc0 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 on.getPrettyString().{.if.($this
13dbe0 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e ->prettyString).{.return.$this->
13dc00 70 72 65 74 74 79 53 74 72 69 6e 67 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 5f prettyString;.}..return.$this->_
13dc20 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 _toString();.}.......public.stat
13dc40 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 70 70 6f 72 74 65 64 4f 70 65 72 61 74 6f 72 ic.function.getSupportedOperator
13dc60 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 73 65 6c 66 3a 3a 24 74 s().{.return.array_keys(self::$t
13dc80 72 61 6e 73 4f 70 53 74 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ransOpStr);.}..........public.fu
13dca0 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6f 70 65 72 61 74 6f 72 2c 20 24 76 nction.__construct($operator,.$v
13dcc0 65 72 73 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 74 72 61 6e ersion).{.if.(!isset(self::$tran
13dce0 73 4f 70 53 74 72 5b 24 6f 70 65 72 61 74 6f 72 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 sOpStr[$operator])).{.throw.new.
13dd00 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 \InvalidArgumentException(sprint
13dd20 66 28 0a 27 49 6e 76 61 6c 69 64 20 6f 70 65 72 61 74 6f 72 20 22 25 73 22 20 67 69 76 65 6e 2c f(.'Invalid.operator."%s".given,
13dd40 20 65 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 3a 20 25 73 27 2c 0a 24 6f 70 65 72 61 74 6f 72 .expected.one.of:.%s',.$operator
13dd60 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 73 65 6c 66 3a 3a 67 65 74 53 75 70 70 6f 72 74 ,.implode(',.',.self::getSupport
13dd80 65 64 4f 70 65 72 61 74 6f 72 73 28 29 29 0a 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 65 edOperators()).));.}..$this->ope
13dda0 72 61 74 6f 72 20 3d 20 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 53 74 72 5b 24 6f 70 65 72 61 rator.=.self::$transOpStr[$opera
13ddc0 74 6f 72 5d 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b tor];.$this->version.=.$version;
13dde0 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 65 .}............public.function.ve
13de00 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 61 2c 20 24 62 2c 20 24 6f 70 65 72 61 74 6f 72 2c 20 rsionCompare($a,.$b,.$operator,.
13de20 24 63 6f 6d 70 61 72 65 42 72 61 6e 63 68 65 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 $compareBranches.=.false).{.if.(
13de40 21 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 53 74 72 5b 24 6f 70 65 72 61 74 !isset(self::$transOpStr[$operat
13de60 6f 72 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 or])).{.throw.new.\InvalidArgume
13de80 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 6f 70 ntException(sprintf(.'Invalid.op
13dea0 65 72 61 74 6f 72 20 22 25 73 22 20 67 69 76 65 6e 2c 20 65 78 70 65 63 74 65 64 20 6f 6e 65 20 erator."%s".given,.expected.one.
13dec0 6f 66 3a 20 25 73 27 2c 0a 24 6f 70 65 72 61 74 6f 72 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 of:.%s',.$operator,.implode(',.'
13dee0 2c 20 73 65 6c 66 3a 3a 67 65 74 53 75 70 70 6f 72 74 65 64 4f 70 65 72 61 74 6f 72 73 28 29 29 ,.self::getSupportedOperators())
13df00 0a 29 29 3b 0a 7d 0a 0a 24 61 49 73 42 72 61 6e 63 68 20 3d 20 27 64 65 76 2d 27 20 3d 3d 3d 20 .));.}..$aIsBranch.=.'dev-'.===.
13df20 73 75 62 73 74 72 28 24 61 2c 20 30 2c 20 34 29 3b 0a 24 62 49 73 42 72 61 6e 63 68 20 3d 20 27 substr($a,.0,.4);.$bIsBranch.=.'
13df40 64 65 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 62 2c 20 30 2c 20 34 29 3b 0a 0a 69 66 20 dev-'.===.substr($b,.0,.4);..if.
13df60 28 24 61 49 73 42 72 61 6e 63 68 20 26 26 20 24 62 49 73 42 72 61 6e 63 68 29 20 7b 0a 72 65 74 ($aIsBranch.&&.$bIsBranch).{.ret
13df80 75 72 6e 20 24 6f 70 65 72 61 74 6f 72 20 3d 3d 3d 20 27 3d 3d 27 20 26 26 20 24 61 20 3d 3d 3d urn.$operator.===.'=='.&&.$a.===
13dfa0 20 24 62 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 63 6f 6d 70 61 72 65 42 72 61 6e 63 68 65 73 20 .$b;.}....if.(!$compareBranches.
13dfc0 26 26 20 28 24 61 49 73 42 72 61 6e 63 68 20 7c 7c 20 24 62 49 73 42 72 61 6e 63 68 29 29 20 7b &&.($aIsBranch.||.$bIsBranch)).{
13dfe0 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 76 65 72 73 69 6f 6e .return.false;.}..return.version
13e000 5f 63 6f 6d 70 61 72 65 28 24 61 2c 20 24 62 2c 20 24 6f 70 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a _compare($a,.$b,.$operator);.}..
13e020 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 53 70 65 63 69 ......public.function.matchSpeci
13e040 66 69 63 28 43 6f 6e 73 74 72 61 69 6e 74 20 24 70 72 6f 76 69 64 65 72 2c 20 24 63 6f 6d 70 61 fic(Constraint.$provider,.$compa
13e060 72 65 42 72 61 6e 63 68 65 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6e 6f 45 71 75 61 6c 4f 70 reBranches.=.false).{.$noEqualOp
13e080 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 3d 27 2c 20 27 27 2c 20 73 65 6c 66 3a 3a 24 74 .=.str_replace('=',.'',.self::$t
13e0a0 72 61 6e 73 4f 70 49 6e 74 5b 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 5d 29 3b 0a 24 70 72 ransOpInt[$this->operator]);.$pr
13e0c0 6f 76 69 64 65 72 4e 6f 45 71 75 61 6c 4f 70 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 3d oviderNoEqualOp.=.str_replace('=
13e0e0 27 2c 20 27 27 2c 20 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 49 6e 74 5b 24 70 72 6f 76 69 64 ',.'',.self::$transOpInt[$provid
13e100 65 72 2d 3e 6f 70 65 72 61 74 6f 72 5d 29 3b 0a 0a 24 69 73 45 71 75 61 6c 4f 70 20 3d 20 73 65 er->operator]);..$isEqualOp.=.se
13e120 6c 66 3a 3a 4f 50 5f 45 51 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 24 lf::OP_EQ.===.$this->operator;.$
13e140 69 73 4e 6f 6e 45 71 75 61 6c 4f 70 20 3d 20 73 65 6c 66 3a 3a 4f 50 5f 4e 45 20 3d 3d 3d 20 24 isNonEqualOp.=.self::OP_NE.===.$
13e160 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 24 69 73 50 72 6f 76 69 64 65 72 45 71 75 61 6c this->operator;.$isProviderEqual
13e180 4f 70 20 3d 20 73 65 6c 66 3a 3a 4f 50 5f 45 51 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 2d 3e Op.=.self::OP_EQ.===.$provider->
13e1a0 6f 70 65 72 61 74 6f 72 3b 0a 24 69 73 50 72 6f 76 69 64 65 72 4e 6f 6e 45 71 75 61 6c 4f 70 20 operator;.$isProviderNonEqualOp.
13e1c0 3d 20 73 65 6c 66 3a 3a 4f 50 5f 4e 45 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 2d 3e 6f 70 65 =.self::OP_NE.===.$provider->ope
13e1e0 72 61 74 6f 72 3b 0a 0a 0a 20 0a 20 69 66 20 28 24 69 73 4e 6f 6e 45 71 75 61 6c 4f 70 20 7c 7c rator;......if.($isNonEqualOp.||
13e200 20 24 69 73 50 72 6f 76 69 64 65 72 4e 6f 6e 45 71 75 61 6c 4f 70 29 20 7b 0a 72 65 74 75 72 6e .$isProviderNonEqualOp).{.return
13e220 20 21 24 69 73 45 71 75 61 6c 4f 70 20 26 26 20 21 24 69 73 50 72 6f 76 69 64 65 72 45 71 75 61 .!$isEqualOp.&&.!$isProviderEqua
13e240 6c 4f 70 0a 7c 7c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 72 lOp.||.$this->versionCompare($pr
13e260 6f 76 69 64 65 72 2d 3e 76 65 72 73 69 6f 6e 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 2c ovider->version,.$this->version,
13e280 20 27 21 3d 27 2c 20 24 63 6f 6d 70 61 72 65 42 72 61 6e 63 68 65 73 29 3b 0a 7d 0a 0a 0a 20 0a .'!=',.$compareBranches);.}.....
13e2a0 20 69 66 20 28 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 20 21 3d 3d 20 73 65 6c 66 3a 3a 4f .if.($this->operator.!==.self::O
13e2c0 50 5f 45 51 20 26 26 20 24 6e 6f 45 71 75 61 6c 4f 70 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 P_EQ.&&.$noEqualOp.===.$provider
13e2e0 4e 6f 45 71 75 61 6c 4f 70 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 NoEqualOp).{.return.true;.}..if.
13e300 28 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 72 6f 76 69 64 65 72 ($this->versionCompare($provider
13e320 2d 3e 76 65 72 73 69 6f 6e 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 2c 20 73 65 6c 66 3a ->version,.$this->version,.self:
13e340 3a 24 74 72 61 6e 73 4f 70 49 6e 74 5b 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 5d 2c 20 24 :$transOpInt[$this->operator],.$
13e360 63 6f 6d 70 61 72 65 42 72 61 6e 63 68 65 73 29 29 20 7b 0a 0a 20 0a 20 69 66 20 28 24 70 72 6f compareBranches)).{.....if.($pro
13e380 76 69 64 65 72 2d 3e 76 65 72 73 69 6f 6e 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f vider->version.===.$this->versio
13e3a0 6e 0a 26 26 20 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 49 6e 74 5b 24 70 72 6f 76 69 64 65 72 n.&&.self::$transOpInt[$provider
13e3c0 2d 3e 6f 70 65 72 61 74 6f 72 5d 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 4e 6f 45 71 75 61 6c ->operator].===.$providerNoEqual
13e3e0 4f 70 0a 26 26 20 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 49 6e 74 5b 24 74 68 69 73 2d 3e 6f Op.&&.self::$transOpInt[$this->o
13e400 70 65 72 61 74 6f 72 5d 20 21 3d 3d 20 24 6e 6f 45 71 75 61 6c 4f 70 29 20 7b 0a 72 65 74 75 72 perator].!==.$noEqualOp).{.retur
13e420 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 n.false;.}..return.true;.}..retu
13e440 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 rn.false;.}.....public.function.
13e460 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 74 72 61 __toString().{.return.self::$tra
13e480 6e 73 4f 70 49 6e 74 5b 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 5d 20 2e 20 27 20 27 20 2e nsOpInt[$this->operator]...'.'..
13e4a0 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a .$this->version;.}.}.<?php......
13e4c0 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 .....namespace.Composer\Semver\C
13e4e0 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6e 73 74 72 61 69 6e 74 onstraint;..interface.Constraint
13e500 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e Interface.{......public.function
13e520 20 6d 61 74 63 68 65 73 28 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 70 72 .matches(ConstraintInterface.$pr
13e540 6f 76 69 64 65 72 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 ovider);.....public.function.get
13e560 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 PrettyString();.....public.funct
13e580 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a ion.__toString();.}.<?php.......
13e5a0 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f ....namespace.Composer\Semver\Co
13e5c0 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 6d 70 74 79 43 6f 6e 73 74 72 61 nstraint;.....class.EmptyConstra
13e5e0 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 int.implements.ConstraintInterfa
13e600 63 65 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 53 74 72 69 6e 67 3b 0a 0a ce.{..protected.$prettyString;..
13e620 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 65 73 28 43 6f 6e .....public.function.matches(Con
13e640 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 70 72 6f 76 69 64 65 72 29 0a 7b 0a 72 65 straintInterface.$provider).{.re
13e660 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e turn.true;.}.....public.function
13e680 20 73 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 72 65 74 74 79 53 74 72 69 6e 67 29 0a .setPrettyString($prettyString).
13e6a0 7b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 20 3d 20 24 70 72 65 74 74 79 53 {.$this->prettyString.=.$prettyS
13e6c0 74 72 69 6e 67 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 tring;.}.....public.function.get
13e6e0 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 74 PrettyString().{.if.($this->pret
13e700 74 79 53 74 72 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 tyString).{.return.$this->pretty
13e720 53 74 72 69 6e 67 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 5f 5f 74 6f 53 74 72 String;.}..return.$this->__toStr
13e740 69 6e 67 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 ing();.}.....public.function.__t
13e760 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 5b 5d 27 3b 0a 7d 0a 7d 0a 3c 3f 70 oString().{.return.'[]';.}.}.<?p
13e780 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c hp...........namespace.Composer\
13e7a0 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 75 6c Semver\Constraint;.....class.Mul
13e7c0 74 69 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 73 74 72 61 69 tiConstraint.implements.Constrai
13e7e0 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 73 74 72 ntInterface.{..protected.$constr
13e800 61 69 6e 74 73 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 53 74 72 69 6e 67 aints;...protected.$prettyString
13e820 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 6a 75 6e 63 74 69 76 65 3b 0a 0a 0a 0a 0a ;...protected.$conjunctive;.....
13e840 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 .public.function.__construct(arr
13e860 61 79 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 24 63 6f 6e 6a 75 6e 63 74 69 76 65 20 3d 20 ay.$constraints,.$conjunctive.=.
13e880 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 24 63 6f true).{.$this->constraints.=.$co
13e8a0 6e 73 74 72 61 69 6e 74 73 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 6a 75 6e 63 74 69 76 65 20 3d 20 nstraints;.$this->conjunctive.=.
13e8c0 24 63 6f 6e 6a 75 6e 63 74 69 76 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e $conjunctive;.}.......public.fun
13e8e0 63 74 69 6f 6e 20 6d 61 74 63 68 65 73 28 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 ction.matches(ConstraintInterfac
13e900 65 20 24 70 72 6f 76 69 64 65 72 29 0a 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 74 68 e.$provider).{.if.(false.===.$th
13e920 69 73 2d 3e 63 6f 6e 6a 75 6e 63 74 69 76 65 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 is->conjunctive).{.foreach.($thi
13e940 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b s->constraints.as.$constraint).{
13e960 0a 69 66 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 70 72 6f 76 69 .if.($constraint->matches($provi
13e980 64 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e der)).{.return.true;.}.}..return
13e9a0 20 66 61 6c 73 65 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 73 74 .false;.}..foreach.($this->const
13e9c0 72 61 69 6e 74 73 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 21 24 63 raints.as.$constraint).{.if.(!$c
13e9e0 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 70 72 6f 76 69 64 65 72 29 29 20 7b onstraint->matches($provider)).{
13ea00 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b .return.false;.}.}..return.true;
13ea20 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 74 74 79 .}.....public.function.setPretty
13ea40 53 74 72 69 6e 67 28 24 70 72 65 74 74 79 53 74 72 69 6e 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 String($prettyString).{.$this->p
13ea60 72 65 74 74 79 53 74 72 69 6e 67 20 3d 20 24 70 72 65 74 74 79 53 74 72 69 6e 67 3b 0a 7d 0a 0a rettyString.=.$prettyString;.}..
13ea80 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 ...public.function.getPrettyStri
13eaa0 6e 67 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 29 20 ng().{.if.($this->prettyString).
13eac0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 3b 0a 7d 0a {.return.$this->prettyString;.}.
13eae0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 0a .return.$this->__toString();.}..
13eb00 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a ...public.function.__toString().
13eb20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 {.$constraints.=.array();.foreac
13eb40 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 73 20 24 63 6f 6e 73 74 72 h.($this->constraints.as.$constr
13eb60 61 69 6e 74 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 5b 5d 20 3d 20 28 73 74 72 69 6e 67 aint).{.$constraints[].=.(string
13eb80 29 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 5b 27 20 2e 20 69 ).$constraint;.}..return.'['...i
13eba0 6d 70 6c 6f 64 65 28 24 74 68 69 73 2d 3e 63 6f 6e 6a 75 6e 63 74 69 76 65 20 3f 20 27 20 27 20 mplode($this->conjunctive.?.'.'.
13ebc0 3a 20 27 20 7c 7c 20 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 20 2e 20 27 5d 27 3b 0a 7d :.'.||.',.$constraints)...']';.}
13ebe0 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d .}.<?php...........namespace.Com
13ec00 70 6f 73 65 72 5c 53 65 6d 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 poser\Semver;..use.Composer\Semv
13ec20 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 63 6c 61 73 73 er\Constraint\Constraint;..class
13ec40 20 53 65 6d 76 65 72 0a 7b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 41 53 43 20 3d 20 31 3b 0a 63 6f .Semver.{.const.SORT_ASC.=.1;.co
13ec60 6e 73 74 20 53 4f 52 54 5f 44 45 53 43 20 3d 20 2d 31 3b 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 nst.SORT_DESC.=.-1;...private.st
13ec80 61 74 69 63 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 atic.$versionParser;..........pu
13eca0 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 61 74 69 73 66 69 65 73 28 24 blic.static.function.satisfies($
13ecc0 76 65 72 73 69 6f 6e 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 0a 7b 0a 69 66 20 28 6e 75 6c version,.$constraints).{.if.(nul
13ece0 6c 20 3d 3d 3d 20 73 65 6c 66 3a 3a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 20 7b 0a 73 65 l.===.self::$versionParser).{.se
13ed00 6c 66 3a 3a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e lf::$versionParser.=.new.Version
13ed20 50 61 72 73 65 72 28 29 3b 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 73 65 Parser();.}..$versionParser.=.se
13ed40 6c 66 3a 3a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 24 70 72 6f 76 69 64 65 72 20 3d 20 lf::$versionParser;.$provider.=.
13ed60 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 76 65 72 73 69 6f 6e 50 61 72 new.Constraint('==',.$versionPar
13ed80 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 72 73 69 6f 6e 29 29 3b 0a 24 63 6f 6e 73 ser->normalize($version));.$cons
13eda0 74 72 61 69 6e 74 73 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 72 73 65 43 traints.=.$versionParser->parseC
13edc0 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 3b 0a 0a 72 65 74 75 72 onstraints($constraints);..retur
13ede0 6e 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 2d 3e 6d 61 74 63 68 65 73 28 24 70 72 6f 76 69 64 65 n.$constraints->matches($provide
13ee00 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e r);.}..........public.static.fun
13ee20 63 74 69 6f 6e 20 73 61 74 69 73 66 69 65 64 42 79 28 61 72 72 61 79 20 24 76 65 72 73 69 6f 6e ction.satisfiedBy(array.$version
13ee40 73 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 0a 7b 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 61 s,.$constraints).{.$versions.=.a
13ee60 72 72 61 79 5f 66 69 6c 74 65 72 28 24 76 65 72 73 69 6f 6e 73 2c 20 66 75 6e 63 74 69 6f 6e 20 rray_filter($versions,.function.
13ee80 28 24 76 65 72 73 69 6f 6e 29 20 75 73 65 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 20 7b 0a ($version).use.($constraints).{.
13eea0 72 65 74 75 72 6e 20 53 65 6d 76 65 72 3a 3a 73 61 74 69 73 66 69 65 73 28 24 76 65 72 73 69 6f return.Semver::satisfies($versio
13eec0 6e 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 n,.$constraints);.});..return.ar
13eee0 72 61 79 5f 76 61 6c 75 65 73 28 24 76 65 72 73 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a ray_values($versions);.}........
13ef00 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 28 61 72 72 .public.static.function.sort(arr
13ef20 61 79 20 24 76 65 72 73 69 6f 6e 73 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 75 73 6f ay.$versions).{.return.self::uso
13ef40 72 74 28 24 76 65 72 73 69 6f 6e 73 2c 20 73 65 6c 66 3a 3a 53 4f 52 54 5f 41 53 43 29 3b 0a 7d rt($versions,.self::SORT_ASC);.}
13ef60 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 .........public.static.function.
13ef80 72 73 6f 72 74 28 61 72 72 61 79 20 24 76 65 72 73 69 6f 6e 73 29 0a 7b 0a 72 65 74 75 72 6e 20 rsort(array.$versions).{.return.
13efa0 73 65 6c 66 3a 3a 75 73 6f 72 74 28 24 76 65 72 73 69 6f 6e 73 2c 20 73 65 6c 66 3a 3a 53 4f 52 self::usort($versions,.self::SOR
13efc0 54 5f 44 45 53 43 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 T_DESC);.}........private.static
13efe0 20 66 75 6e 63 74 69 6f 6e 20 75 73 6f 72 74 28 61 72 72 61 79 20 24 76 65 72 73 69 6f 6e 73 2c .function.usort(array.$versions,
13f000 20 24 64 69 72 65 63 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 73 65 6c 66 .$direction).{.if.(null.===.self
13f020 3a 3a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 20 7b 0a 73 65 6c 66 3a 3a 24 76 65 72 73 69 ::$versionParser).{.self::$versi
13f040 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a onParser.=.new.VersionParser();.
13f060 7d 0a 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 73 65 6c 66 3a 3a 24 76 65 72 73 69 }..$versionParser.=.self::$versi
13f080 6f 6e 50 61 72 73 65 72 3b 0a 24 6e 6f 72 6d 61 6c 69 7a 65 64 20 3d 20 61 72 72 61 79 28 29 3b onParser;.$normalized.=.array();
13f0a0 0a 0a 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 24 76 65 72 73 69 6f 6e 73 20 61 73 20 24 6b 65 79 ......foreach.($versions.as.$key
13f0c0 20 3d 3e 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 6e 6f 72 6d 61 6c 69 7a 65 64 5b 5d 20 3d 20 .=>.$version).{.$normalized[].=.
13f0e0 61 72 72 61 79 28 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 array($versionParser->normalize(
13f100 24 76 65 72 73 69 6f 6e 29 2c 20 24 6b 65 79 29 3b 0a 7d 0a 0a 75 73 6f 72 74 28 24 6e 6f 72 6d $version),.$key);.}..usort($norm
13f120 61 6c 69 7a 65 64 2c 20 66 75 6e 63 74 69 6f 6e 20 28 61 72 72 61 79 20 24 6c 65 66 74 2c 20 61 alized,.function.(array.$left,.a
13f140 72 72 61 79 20 24 72 69 67 68 74 29 20 75 73 65 20 28 24 64 69 72 65 63 74 69 6f 6e 29 20 7b 0a rray.$right).use.($direction).{.
13f160 69 66 20 28 24 6c 65 66 74 5b 30 5d 20 3d 3d 3d 20 24 72 69 67 68 74 5b 30 5d 29 20 7b 0a 72 65 if.($left[0].===.$right[0]).{.re
13f180 74 75 72 6e 20 30 3b 0a 7d 0a 0a 69 66 20 28 43 6f 6d 70 61 72 61 74 6f 72 3a 3a 6c 65 73 73 54 turn.0;.}..if.(Comparator::lessT
13f1a0 68 61 6e 28 24 6c 65 66 74 5b 30 5d 2c 20 24 72 69 67 68 74 5b 30 5d 29 29 20 7b 0a 72 65 74 75 han($left[0],.$right[0])).{.retu
13f1c0 72 6e 20 2d 24 64 69 72 65 63 74 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 69 72 65 63 rn.-$direction;.}..return.$direc
13f1e0 74 69 6f 6e 3b 0a 7d 29 3b 0a 0a 0a 20 24 73 6f 72 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a tion;.});....$sorted.=.array();.
13f200 66 6f 72 65 61 63 68 20 28 24 6e 6f 72 6d 61 6c 69 7a 65 64 20 61 73 20 24 69 74 65 6d 29 20 7b foreach.($normalized.as.$item).{
13f220 0a 24 73 6f 72 74 65 64 5b 5d 20 3d 20 24 76 65 72 73 69 6f 6e 73 5b 24 69 74 65 6d 5b 31 5d 5d .$sorted[].=.$versions[$item[1]]
13f240 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 6f 72 74 65 64 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a ;.}..return.$sorted;.}.}.<?php..
13f260 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 .........namespace.Composer\Semv
13f280 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 er;..use.Composer\Semver\Constra
13f2a0 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d int\ConstraintInterface;.use.Com
13f2c0 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 45 6d 70 74 79 43 6f 6e poser\Semver\Constraint\EmptyCon
13f2e0 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e straint;.use.Composer\Semver\Con
13f300 73 74 72 61 69 6e 74 5c 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d straint\MultiConstraint;.use.Com
13f320 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 5c 43 6f 6e 73 74 72 61 69 poser\Semver\Constraint\Constrai
13f340 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 0a 7b 0a nt;.......class.VersionParser.{.
13f360 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 6d 6f 64 .............private.static.$mod
13f380 69 66 69 65 72 52 65 67 65 78 20 3d 20 27 5b 2e 5f 2d 5d 3f 28 3f 3a 28 73 74 61 62 6c 65 7c 62 ifierRegex.=.'[._-]?(?:(stable|b
13f3a0 65 74 61 7c 62 7c 52 43 7c 61 6c 70 68 61 7c 61 7c 70 61 74 63 68 7c 70 6c 7c 70 29 28 28 3f 3a eta|b|RC|alpha|a|patch|pl|p)((?:
13f3c0 5b 2e 2d 5d 3f 5c 64 2b 29 2a 2b 29 3f 29 3f 28 5b 2e 2d 5d 3f 64 65 76 29 3f 27 3b 0a 0a 0a 70 [.-]?\d+)*+)?)?([.-]?dev)?';...p
13f3e0 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 73 74 61 62 69 6c 69 74 69 65 73 20 3d 20 61 72 72 rivate.static.$stabilities.=.arr
13f400 61 79 28 27 73 74 61 62 6c 65 27 2c 20 27 52 43 27 2c 20 27 62 65 74 61 27 2c 20 27 61 6c 70 68 ay('stable',.'RC',.'beta',.'alph
13f420 61 27 2c 20 27 64 65 76 27 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 a',.'dev');.........public.stati
13f440 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 53 74 61 62 69 6c 69 74 79 28 24 76 65 72 73 69 c.function.parseStability($versi
13f460 6f 6e 29 0a 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b on).{.$version.=.preg_replace('{
13f480 23 2e 2b 24 7d 69 27 2c 20 27 27 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 27 64 65 #.+$}i',.'',.$version);..if.('de
13f4a0 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 76 65 72 73 69 6f 6e 2c 20 30 2c 20 34 29 20 7c v-'.===.substr($version,.0,.4).|
13f4c0 7c 20 27 2d 64 65 76 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 76 65 72 73 69 6f 6e 2c 20 2d 34 |.'-dev'.===.substr($version,.-4
13f4e0 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 64 65 76 27 3b 0a 7d 0a 0a 70 72 65 67 5f 6d 61 74 63 68 )).{.return.'dev';.}..preg_match
13f500 28 27 7b 27 20 2e 20 73 65 6c 66 3a 3a 24 6d 6f 64 69 66 69 65 72 52 65 67 65 78 20 2e 20 27 28 ('{'...self::$modifierRegex...'(
13f520 3f 3a 5c 2b 2e 2a 29 3f 24 7d 69 27 2c 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 76 65 72 73 69 6f ?:\+.*)?$}i',.strtolower($versio
13f540 6e 29 2c 20 24 6d 61 74 63 68 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 33 n),.$match);.if.(!empty($match[3
13f560 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 64 65 76 27 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 ])).{.return.'dev';.}..if.(!empt
13f580 79 28 24 6d 61 74 63 68 5b 31 5d 29 29 20 7b 0a 69 66 20 28 27 62 65 74 61 27 20 3d 3d 3d 20 24 y($match[1])).{.if.('beta'.===.$
13f5a0 6d 61 74 63 68 5b 31 5d 20 7c 7c 20 27 62 27 20 3d 3d 3d 20 24 6d 61 74 63 68 5b 31 5d 29 20 7b match[1].||.'b'.===.$match[1]).{
13f5c0 0a 72 65 74 75 72 6e 20 27 62 65 74 61 27 3b 0a 7d 0a 69 66 20 28 27 61 6c 70 68 61 27 20 3d 3d .return.'beta';.}.if.('alpha'.==
13f5e0 3d 20 24 6d 61 74 63 68 5b 31 5d 20 7c 7c 20 27 61 27 20 3d 3d 3d 20 24 6d 61 74 63 68 5b 31 5d =.$match[1].||.'a'.===.$match[1]
13f600 29 20 7b 0a 72 65 74 75 72 6e 20 27 61 6c 70 68 61 27 3b 0a 7d 0a 69 66 20 28 27 72 63 27 20 3d ).{.return.'alpha';.}.if.('rc'.=
13f620 3d 3d 20 24 6d 61 74 63 68 5b 31 5d 29 20 7b 0a 72 65 74 75 72 6e 20 27 52 43 27 3b 0a 7d 0a 7d ==.$match[1]).{.return.'RC';.}.}
13f640 0a 0a 72 65 74 75 72 6e 20 27 73 74 61 62 6c 65 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ..return.'stable';.}.......publi
13f660 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 53 74 61 62 69 c.static.function.normalizeStabi
13f680 6c 69 74 79 28 24 73 74 61 62 69 6c 69 74 79 29 0a 7b 0a 24 73 74 61 62 69 6c 69 74 79 20 3d 20 lity($stability).{.$stability.=.
13f6a0 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 74 61 62 69 6c 69 74 79 29 3b 0a 0a 72 65 74 75 72 6e 20 strtolower($stability);..return.
13f6c0 24 73 74 61 62 69 6c 69 74 79 20 3d 3d 3d 20 27 72 63 27 20 3f 20 27 52 43 27 20 3a 20 24 73 74 $stability.===.'rc'.?.'RC'.:.$st
13f6e0 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ability;.}............public.fun
13f700 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 72 73 69 6f 6e 2c 20 24 66 75 6c 6c 56 ction.normalize($version,.$fullV
13f720 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 74 72 69 6d ersion.=.null).{.$version.=.trim
13f740 28 24 76 65 72 73 69 6f 6e 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 66 75 6c 6c 56 65 ($version);.if.(null.===.$fullVe
13f760 72 73 69 6f 6e 29 20 7b 0a 24 66 75 6c 6c 56 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e rsion).{.$fullVersion.=.$version
13f780 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 5b 5e 2c 5c 73 5d ;.}....if.(preg_match('{^([^,\s]
13f7a0 2b 2b 29 20 2b 2b 61 73 20 2b 2b 28 5b 5e 2c 5c 73 5d 2b 2b 29 24 7d 27 2c 20 24 76 65 72 73 69 ++).++as.++([^,\s]++)$}',.$versi
13f7c0 6f 6e 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 on,.$match)).{.$version.=.$match
13f7e0 5b 31 5d 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 5b 5e 2c [1];.}....if.(preg_match('{^([^,
13f800 5c 73 2b 5d 2b 2b 29 5c 2b 5b 5e 5c 73 5d 2b 2b 24 7d 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 \s+]++)\+[^\s]++$}',.$version,.$
13f820 6d 61 74 63 68 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a match)).{.$version.=.$match[1];.
13f840 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 64 65 76 2d 29 3f }....if.(preg_match('{^(?:dev-)?
13f860 28 3f 3a 6d 61 73 74 65 72 7c 74 72 75 6e 6b 7c 64 65 66 61 75 6c 74 29 24 7d 69 27 2c 20 24 76 (?:master|trunk|default)$}i',.$v
13f880 65 72 73 69 6f 6e 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 39 39 39 39 39 39 39 2d 64 65 76 27 3b ersion)).{.return.'9999999-dev';
13f8a0 0a 7d 0a 0a 69 66 20 28 27 64 65 76 2d 27 20 3d 3d 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 73 75 .}..if.('dev-'.===.strtolower(su
13f8c0 62 73 74 72 28 24 76 65 72 73 69 6f 6e 2c 20 30 2c 20 34 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 bstr($version,.0,.4))).{.return.
13f8e0 27 64 65 76 2d 27 20 2e 20 73 75 62 73 74 72 28 24 76 65 72 73 69 6f 6e 2c 20 34 29 3b 0a 7d 0a 'dev-'...substr($version,.4);.}.
13f900 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 76 3f 28 5c 64 7b 31 2c 35 7d 29 ...if.(preg_match('{^v?(\d{1,5})
13f920 28 5c 2e 5c 64 2b 2b 29 3f 28 5c 2e 5c 64 2b 2b 29 3f 28 5c 2e 5c 64 2b 2b 29 3f 27 20 2e 20 73 (\.\d++)?(\.\d++)?(\.\d++)?'...s
13f940 65 6c 66 3a 3a 24 6d 6f 64 69 66 69 65 72 52 65 67 65 78 20 2e 20 27 24 7d 69 27 2c 20 24 76 65 elf::$modifierRegex...'$}i',.$ve
13f960 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 rsion,.$matches)).{.$version.=.$
13f980 6d 61 74 63 68 65 73 5b 31 5d 0a 2e 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 32 5d matches[1]...(!empty($matches[2]
13f9a0 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 32 5d 20 3a 20 27 2e 30 27 29 0a 2e 20 28 21 65 6d 70 74 ).?.$matches[2].:.'.0')...(!empt
13f9c0 79 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 33 5d 20 3a 20 27 y($matches[3]).?.$matches[3].:.'
13f9e0 2e 30 27 29 0a 2e 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 34 5d 29 20 3f 20 24 6d .0')...(!empty($matches[4]).?.$m
13fa00 61 74 63 68 65 73 5b 34 5d 20 3a 20 27 2e 30 27 29 3b 0a 24 69 6e 64 65 78 20 3d 20 35 3b 0a 0a atches[4].:.'.0');.$index.=.5;..
13fa20 20 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 76 3f 28 5c 64 7b 34 .}.elseif.(preg_match('{^v?(\d{4
13fa40 7d 28 3f 3a 5b 2e 3a 2d 5d 3f 5c 64 7b 32 7d 29 7b 31 2c 36 7d 28 3f 3a 5b 2e 3a 2d 5d 3f 5c 64 }(?:[.:-]?\d{2}){1,6}(?:[.:-]?\d
13fa60 7b 31 2c 33 7d 29 3f 29 27 20 2e 20 73 65 6c 66 3a 3a 24 6d 6f 64 69 66 69 65 72 52 65 67 65 78 {1,3})?)'...self::$modifierRegex
13fa80 20 2e 20 27 24 7d 69 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b ...'$}i',.$version,.$matches)).{
13faa0 0a 24 76 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5c 44 7d 27 2c .$version.=.preg_replace('{\D}',
13fac0 20 27 2e 27 2c 20 24 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 24 69 6e 64 65 78 20 3d 20 32 3b 0a .'.',.$matches[1]);.$index.=.2;.
13fae0 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 69 6e 64 65 78 29 29 20 7b 0a 69 66 20 28 21 65 }....if.(isset($index)).{.if.(!e
13fb00 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 29 29 20 7b 0a 69 66 20 28 27 73 mpty($matches[$index])).{.if.('s
13fb20 74 61 62 6c 65 27 20 3d 3d 3d 20 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 29 20 7b 0a 72 table'.===.$matches[$index]).{.r
13fb40 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 24 76 65 72 73 69 6f 6e 20 2e 3d 20 27 2d eturn.$version;.}.$version..=.'-
13fb60 27 20 2e 20 24 74 68 69 73 2d 3e 65 78 70 61 6e 64 53 74 61 62 69 6c 69 74 79 28 24 6d 61 74 63 '...$this->expandStability($matc
13fb80 68 65 73 5b 24 69 6e 64 65 78 5d 29 20 2e 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b hes[$index])...(!empty($matches[
13fba0 24 69 6e 64 65 78 20 2b 20 31 5d 29 20 3f 20 6c 74 72 69 6d 28 24 6d 61 74 63 68 65 73 5b 24 69 $index.+.1]).?.ltrim($matches[$i
13fbc0 6e 64 65 78 20 2b 20 31 5d 2c 20 27 2e 2d 27 29 20 3a 20 27 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 ndex.+.1],.'.-').:.'');.}..if.(!
13fbe0 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 20 2b 20 32 5d 29 29 20 7b 0a 24 empty($matches[$index.+.2])).{.$
13fc00 76 65 72 73 69 6f 6e 20 2e 3d 20 27 2d 64 65 76 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 65 version..=.'-dev';.}..return.$ve
13fc20 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 28 2e 2a rsion;.}....if.(preg_match('{(.*
13fc40 3f 29 5b 2e 2d 5d 3f 64 65 76 24 7d 69 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 ?)[.-]?dev$}i',.$version,.$match
13fc60 29 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 )).{.try.{.return.$this->normali
13fc80 7a 65 42 72 61 6e 63 68 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 zeBranch($match[1]);.}.catch.(\E
13fca0 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 7d 0a 0a 24 65 78 74 72 61 4d 65 73 73 61 67 xception.$e).{.}.}..$extraMessag
13fcc0 65 20 3d 20 27 27 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 20 2b 61 73 20 2b 27 e.=.'';.if.(preg_match('{.+as.+'
13fce0 20 2e 20 70 72 65 67 5f 71 75 6f 74 65 28 24 76 65 72 73 69 6f 6e 29 20 2e 20 27 24 7d 27 2c 20 ...preg_quote($version)...'$}',.
13fd00 24 66 75 6c 6c 56 65 72 73 69 6f 6e 29 29 20 7b 0a 24 65 78 74 72 61 4d 65 73 73 61 67 65 20 3d $fullVersion)).{.$extraMessage.=
13fd20 20 27 20 69 6e 20 22 27 20 2e 20 24 66 75 6c 6c 56 65 72 73 69 6f 6e 20 2e 20 27 22 2c 20 74 68 .'.in."'...$fullVersion...'",.th
13fd40 65 20 61 6c 69 61 73 20 6d 75 73 74 20 62 65 20 61 6e 20 65 78 61 63 74 20 76 65 72 73 69 6f 6e e.alias.must.be.an.exact.version
13fd60 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 27 20 2e 20 70 ';.}.elseif.(preg_match('{^'...p
13fd80 72 65 67 5f 71 75 6f 74 65 28 24 76 65 72 73 69 6f 6e 29 20 2e 20 27 20 2b 61 73 20 2b 7d 27 2c reg_quote($version)...'.+as.+}',
13fda0 20 24 66 75 6c 6c 56 65 72 73 69 6f 6e 29 29 20 7b 0a 24 65 78 74 72 61 4d 65 73 73 61 67 65 20 .$fullVersion)).{.$extraMessage.
13fdc0 3d 20 27 20 69 6e 20 22 27 20 2e 20 24 66 75 6c 6c 56 65 72 73 69 6f 6e 20 2e 20 27 22 2c 20 74 =.'.in."'...$fullVersion...'",.t
13fde0 68 65 20 61 6c 69 61 73 20 73 6f 75 72 63 65 20 6d 75 73 74 20 62 65 20 61 6e 20 65 78 61 63 74 he.alias.source.must.be.an.exact
13fe00 20 76 65 72 73 69 6f 6e 2c 20 69 66 20 69 74 20 69 73 20 61 20 62 72 61 6e 63 68 20 6e 61 6d 65 .version,.if.it.is.a.branch.name
13fe20 20 79 6f 75 20 73 68 6f 75 6c 64 20 70 72 65 66 69 78 20 69 74 20 77 69 74 68 20 64 65 76 2d 27 .you.should.prefix.it.with.dev-'
13fe40 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 ;.}..throw.new.\UnexpectedValueE
13fe60 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 76 65 72 73 69 6f 6e 20 73 74 72 69 6e 67 xception('Invalid.version.string
13fe80 20 22 27 20 2e 20 24 76 65 72 73 69 6f 6e 20 2e 20 27 22 27 20 2e 20 24 65 78 74 72 61 4d 65 73 ."'...$version...'"'...$extraMes
13fea0 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e sage);.}.........public.function
13fec0 20 70 61 72 73 65 4e 75 6d 65 72 69 63 41 6c 69 61 73 50 72 65 66 69 78 28 24 62 72 61 6e 63 68 .parseNumericAliasPrefix($branch
13fee0 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 50 3c 76 65 72 73 69 6f ).{.if.(preg_match('{^(?P<versio
13ff00 6e 3e 28 5c 64 2b 2b 5c 5c 2e 29 2a 5c 64 2b 2b 29 28 3f 3a 5c 2e 78 29 3f 2d 64 65 76 24 7d 69 n>(\d++\\.)*\d++)(?:\.x)?-dev$}i
13ff20 27 2c 20 24 62 72 61 6e 63 68 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 ',.$branch,.$matches)).{.return.
13ff40 24 6d 61 74 63 68 65 73 5b 27 76 65 72 73 69 6f 6e 27 5d 20 2e 20 27 2e 27 3b 0a 7d 0a 0a 72 65 $matches['version']...'.';.}..re
13ff60 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e turn.false;.}.........public.fun
13ff80 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 42 72 61 6e 63 68 28 24 6e 61 6d 65 29 0a 7b 0a 24 ction.normalizeBranch($name).{.$
13ffa0 6e 61 6d 65 20 3d 20 74 72 69 6d 28 24 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 69 6e 5f 61 72 72 61 name.=.trim($name);..if.(in_arra
13ffc0 79 28 24 6e 61 6d 65 2c 20 61 72 72 61 79 28 27 6d 61 73 74 65 72 27 2c 20 27 74 72 75 6e 6b 27 y($name,.array('master',.'trunk'
13ffe0 2c 20 27 64 65 66 61 75 6c 74 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e ,.'default'))).{.return.$this->n
140000 6f 72 6d 61 6c 69 7a 65 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 ormalize($name);.}..if.(preg_mat
140020 63 68 28 27 7b 5e 76 3f 28 5c 64 2b 2b 29 28 5c 2e 28 3f 3a 5c 64 2b 2b 7c 5b 78 58 2a 5d 29 29 ch('{^v?(\d++)(\.(?:\d++|[xX*]))
140040 3f 28 5c 2e 28 3f 3a 5c 64 2b 2b 7c 5b 78 58 2a 5d 29 29 3f 28 5c 2e 28 3f 3a 5c 64 2b 2b 7c 5b ?(\.(?:\d++|[xX*]))?(\.(?:\d++|[
140060 78 58 2a 5d 29 29 3f 24 7d 69 27 2c 20 24 6e 61 6d 65 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b xX*]))?$}i',.$name,.$matches)).{
140080 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 27 3b 0a 66 6f 72 20 28 24 69 20 3d 20 31 3b 20 24 69 20 .$version.=.'';.for.($i.=.1;.$i.
1400a0 3c 20 35 3b 20 2b 2b 24 69 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 2e 3d 20 69 73 73 65 74 28 24 <.5;.++$i).{.$version..=.isset($
1400c0 6d 61 74 63 68 65 73 5b 24 69 5d 29 20 3f 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 matches[$i]).?.str_replace(array
1400e0 28 27 2a 27 2c 20 27 58 27 29 2c 20 27 78 27 2c 20 24 6d 61 74 63 68 65 73 5b 24 69 5d 29 20 3a ('*',.'X'),.'x',.$matches[$i]).:
140100 20 27 2e 78 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 78 27 .'.x';.}..return.str_replace('x'
140120 2c 20 27 39 39 39 39 39 39 39 27 2c 20 24 76 65 72 73 69 6f 6e 29 20 2e 20 27 2d 64 65 76 27 3b ,.'9999999',.$version)...'-dev';
140140 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 64 65 76 2d 27 20 2e 20 24 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a .}..return.'dev-'...$name;.}....
140160 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 43 6f 6e 73 74 72 .....public.function.parseConstr
140180 61 69 6e 74 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 0a 7b 0a 24 70 72 65 74 74 79 43 6f 6e aints($constraints).{.$prettyCon
1401a0 73 74 72 61 69 6e 74 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 69 66 20 28 70 72 65 straint.=.$constraints;..if.(pre
1401c0 67 5f 6d 61 74 63 68 28 27 7b 5e 28 5b 5e 2c 5c 73 5d 2a 3f 29 40 28 27 20 2e 20 69 6d 70 6c 6f g_match('{^([^,\s]*?)@('...implo
1401e0 64 65 28 27 7c 27 2c 20 73 65 6c 66 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 29 20 2e 20 27 29 de('|',.self::$stabilities)...')
140200 24 7d 69 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 $}i',.$constraints,.$match)).{.$
140220 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 31 5d 29 20 3f constraints.=.empty($match[1]).?
140240 20 27 2a 27 20 3a 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 .'*'.:.$match[1];.}..if.(preg_ma
140260 74 63 68 28 27 7b 5e 28 64 65 76 2d 5b 5e 2c 5c 73 40 5d 2b 3f 7c 5b 5e 2c 5c 73 40 5d 2b 3f 5c tch('{^(dev-[^,\s@]+?|[^,\s@]+?\
140280 2e 78 2d 64 65 76 29 23 2e 2b 24 7d 69 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 24 6d .x-dev)#.+$}i',.$constraints,.$m
1402a0 61 74 63 68 29 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 24 6d 61 74 63 68 5b 31 atch)).{.$constraints.=.$match[1
1402c0 5d 3b 0a 7d 0a 0a 24 6f 72 43 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 70 72 65 67 5f 73 70 6c 69 ];.}..$orConstraints.=.preg_spli
1402e0 74 28 27 7b 5c 73 2a 5c 7c 5c 7c 3f 5c 73 2a 7d 27 2c 20 74 72 69 6d 28 24 63 6f 6e 73 74 72 61 t('{\s*\|\|?\s*}',.trim($constra
140300 69 6e 74 73 29 29 3b 0a 24 6f 72 47 72 6f 75 70 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 ints));.$orGroups.=.array();.for
140320 65 61 63 68 20 28 24 6f 72 43 6f 6e 73 74 72 61 69 6e 74 73 20 61 73 20 24 63 6f 6e 73 74 72 61 each.($orConstraints.as.$constra
140340 69 6e 74 73 29 20 7b 0a 24 61 6e 64 43 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 70 72 65 67 5f 73 ints).{.$andConstraints.=.preg_s
140360 70 6c 69 74 28 27 7b 28 3f 3c 21 5e 7c 61 73 7c 5b 3d 3e 3c 20 2c 5d 29 20 2a 28 3f 3c 21 2d 29 plit('{(?<!^|as|[=><.,]).*(?<!-)
140380 5b 2c 20 5d 28 3f 21 2d 29 20 2a 28 3f 21 2c 7c 61 73 7c 24 29 7d 27 2c 20 24 63 6f 6e 73 74 72 [,.](?!-).*(?!,|as|$)}',.$constr
1403a0 61 69 6e 74 73 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 61 6e 64 43 6f 6e 73 74 72 61 69 6e 74 aints);.if.(count($andConstraint
1403c0 73 29 20 3e 20 31 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 4f 62 6a 65 63 74 73 20 3d 20 61 s).>.1).{.$constraintObjects.=.a
1403e0 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 61 6e 64 43 6f 6e 73 74 72 61 69 6e 74 73 rray();.foreach.($andConstraints
140400 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 .as.$constraint).{.foreach.($thi
140420 73 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 s->parseConstraint($constraint).
140440 61 73 20 24 70 61 72 73 65 64 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 63 6f 6e 73 74 72 61 as.$parsedConstraint).{.$constra
140460 69 6e 74 4f 62 6a 65 63 74 73 5b 5d 20 3d 20 24 70 61 72 73 65 64 43 6f 6e 73 74 72 61 69 6e 74 intObjects[].=.$parsedConstraint
140480 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 4f 62 6a 65 63 74 ;.}.}.}.else.{.$constraintObject
1404a0 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 28 24 61 6e 64 43 s.=.$this->parseConstraint($andC
1404c0 6f 6e 73 74 72 61 69 6e 74 73 5b 30 5d 29 3b 0a 7d 0a 0a 69 66 20 28 31 20 3d 3d 3d 20 63 6f 75 onstraints[0]);.}..if.(1.===.cou
1404e0 6e 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 4f 62 6a 65 63 74 73 29 29 20 7b 0a 24 63 6f 6e 73 74 nt($constraintObjects)).{.$const
140500 72 61 69 6e 74 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 4f 62 6a 65 63 74 73 5b 30 5d 3b 0a 7d raint.=.$constraintObjects[0];.}
140520 20 65 6c 73 65 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 4d 75 6c 74 69 43 .else.{.$constraint.=.new.MultiC
140540 6f 6e 73 74 72 61 69 6e 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 4f 62 6a 65 63 74 73 29 3b 0a 7d onstraint($constraintObjects);.}
140560 0a 0a 24 6f 72 47 72 6f 75 70 73 5b 5d 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a ..$orGroups[].=.$constraint;.}..
140580 69 66 20 28 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 6f 72 47 72 6f 75 70 73 29 29 20 7b 0a 24 63 if.(1.===.count($orGroups)).{.$c
1405a0 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 6f 72 47 72 6f 75 70 73 5b 30 5d 3b 0a 7d 20 65 6c 73 65 onstraint.=.$orGroups[0];.}.else
1405c0 69 66 20 28 32 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 6f 72 47 72 6f 75 70 73 29 0a 0a 20 0a 20 26 if.(2.===.count($orGroups).....&
1405e0 26 20 24 6f 72 47 72 6f 75 70 73 5b 30 5d 20 69 6e 73 74 61 6e 63 65 6f 66 20 4d 75 6c 74 69 43 &.$orGroups[0].instanceof.MultiC
140600 6f 6e 73 74 72 61 69 6e 74 0a 26 26 20 24 6f 72 47 72 6f 75 70 73 5b 31 5d 20 69 6e 73 74 61 6e onstraint.&&.$orGroups[1].instan
140620 63 65 6f 66 20 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 0a 26 26 20 28 24 61 20 3d 20 28 73 ceof.MultiConstraint.&&.($a.=.(s
140640 74 72 69 6e 67 29 20 24 6f 72 47 72 6f 75 70 73 5b 30 5d 29 0a 26 26 20 73 75 62 73 74 72 28 24 tring).$orGroups[0]).&&.substr($
140660 61 2c 20 30 2c 20 33 29 20 3d 3d 3d 20 27 5b 3e 3d 27 20 26 26 20 28 66 61 6c 73 65 20 21 3d 3d a,.0,.3).===.'[>='.&&.(false.!==
140680 20 28 24 70 6f 73 41 20 3d 20 73 74 72 70 6f 73 28 24 61 2c 20 27 3c 27 2c 20 34 29 29 29 0a 26 .($posA.=.strpos($a,.'<',.4))).&
1406a0 26 20 28 24 62 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6f 72 47 72 6f 75 70 73 5b 31 5d 29 0a 26 &.($b.=.(string).$orGroups[1]).&
1406c0 26 20 73 75 62 73 74 72 28 24 62 2c 20 30 2c 20 33 29 20 3d 3d 3d 20 27 5b 3e 3d 27 20 26 26 20 &.substr($b,.0,.3).===.'[>='.&&.
1406e0 28 66 61 6c 73 65 20 21 3d 3d 20 28 24 70 6f 73 42 20 3d 20 73 74 72 70 6f 73 28 24 62 2c 20 27 (false.!==.($posB.=.strpos($b,.'
140700 3c 27 2c 20 34 29 29 29 0a 26 26 20 73 75 62 73 74 72 28 24 61 2c 20 24 70 6f 73 41 20 2b 20 32 <',.4))).&&.substr($a,.$posA.+.2
140720 2c 20 2d 31 29 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 62 2c 20 34 2c 20 24 70 6f 73 42 20 2d 20 ,.-1).===.substr($b,.4,.$posB.-.
140740 35 29 0a 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 4d 75 6c 74 69 43 6f 5).).{.$constraint.=.new.MultiCo
140760 6e 73 74 72 61 69 6e 74 28 61 72 72 61 79 28 0a 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 nstraint(array(.new.Constraint('
140780 3e 3d 27 2c 20 73 75 62 73 74 72 28 24 61 2c 20 34 2c 20 24 70 6f 73 41 20 2d 20 35 29 29 2c 0a >=',.substr($a,.4,.$posA.-.5)),.
1407a0 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3c 27 2c 20 73 75 62 73 74 72 28 24 62 2c 20 24 new.Constraint('<',.substr($b,.$
1407c0 70 6f 73 42 20 2b 20 32 2c 20 2d 31 29 29 2c 0a 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f posB.+.2,.-1)),.));.}.else.{.$co
1407e0 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 28 24 nstraint.=.new.MultiConstraint($
140800 6f 72 47 72 6f 75 70 73 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 24 63 6f 6e 73 74 72 61 69 6e 74 orGroups,.false);.}..$constraint
140820 2d 3e 73 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 72 65 74 74 79 43 6f 6e 73 74 72 61 ->setPrettyString($prettyConstra
140840 69 6e 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 0a 0a int);..return.$constraint;.}....
140860 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 43 6f 6e 73 74 .....private.function.parseConst
140880 72 61 69 6e 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 raint($constraint).{.if.(preg_ma
1408a0 74 63 68 28 27 7b 5e 28 5b 5e 2c 5c 73 5d 2b 3f 29 40 28 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 tch('{^([^,\s]+?)@('...implode('
1408c0 7c 27 2c 20 73 65 6c 66 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 29 20 2e 20 27 29 24 7d 69 27 |',.self::$stabilities)...')$}i'
1408e0 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 6f 6e 73 74 ,.$constraint,.$match)).{.$const
140900 72 61 69 6e 74 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 69 66 20 28 24 6d 61 74 63 68 5b 32 5d raint.=.$match[1];.if.($match[2]
140920 20 21 3d 3d 20 27 73 74 61 62 6c 65 27 29 20 7b 0a 24 73 74 61 62 69 6c 69 74 79 4d 6f 64 69 66 .!==.'stable').{.$stabilityModif
140940 69 65 72 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d ier.=.$match[2];.}.}..if.(preg_m
140960 61 74 63 68 28 27 7b 5e 76 3f 5b 78 58 2a 5d 28 5c 2e 5b 78 58 2a 5d 29 2a 24 7d 69 27 2c 20 24 atch('{^v?[xX*](\.[xX*])*$}i',.$
140980 63 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 65 77 20 constraint)).{.return.array(new.
1409a0 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 52 EmptyConstraint());.}..$versionR
1409c0 65 67 65 78 20 3d 20 27 76 3f 28 5c 64 2b 2b 29 28 3f 3a 5c 2e 28 5c 64 2b 2b 29 29 3f 28 3f 3a egex.=.'v?(\d++)(?:\.(\d++))?(?:
1409e0 5c 2e 28 5c 64 2b 2b 29 29 3f 28 3f 3a 5c 2e 28 5c 64 2b 2b 29 29 3f 27 20 2e 20 73 65 6c 66 3a \.(\d++))?(?:\.(\d++))?'...self:
140a00 3a 24 6d 6f 64 69 66 69 65 72 52 65 67 65 78 20 2e 20 27 28 3f 3a 5c 2b 5b 5e 5c 73 5d 2b 29 3f :$modifierRegex...'(?:\+[^\s]+)?
140a20 27 3b 0a 0a 0a 20 0a 20 0a 20 0a 20 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e ';............if.(preg_match('{^
140a40 7e 3e 3f 27 20 2e 20 24 76 65 72 73 69 6f 6e 52 65 67 65 78 20 2e 20 27 24 7d 69 27 2c 20 24 63 ~>?'...$versionRegex...'$}i',.$c
140a60 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 69 66 20 28 73 75 62 73 onstraint,.$matches)).{.if.(subs
140a80 74 72 28 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 30 2c 20 32 29 20 3d 3d 3d 20 27 7e 3e 27 29 20 tr($constraint,.0,.2).===.'~>').
140aa0 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 {.throw.new.\UnexpectedValueExce
140ac0 70 74 69 6f 6e 28 0a 27 43 6f 75 6c 64 20 6e 6f 74 20 70 61 72 73 65 20 76 65 72 73 69 6f 6e 20 ption(.'Could.not.parse.version.
140ae0 63 6f 6e 73 74 72 61 69 6e 74 20 27 20 2e 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 2e 20 27 3a 20 constraint.'...$constraint...':.
140b00 27 20 2e 0a 27 49 6e 76 61 6c 69 64 20 6f 70 65 72 61 74 6f 72 20 22 7e 3e 22 2c 20 79 6f 75 20 '...'Invalid.operator."~>",.you.
140b20 70 72 6f 62 61 62 6c 79 20 6d 65 61 6e 74 20 74 6f 20 75 73 65 20 74 68 65 20 22 7e 22 20 6f 70 probably.meant.to.use.the."~".op
140b40 65 72 61 74 6f 72 27 0a 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 erator'.);.}....if.(isset($match
140b60 65 73 5b 34 5d 29 20 26 26 20 27 27 20 21 3d 3d 20 24 6d 61 74 63 68 65 73 5b 34 5d 29 20 7b 0a es[4]).&&.''.!==.$matches[4]).{.
140b80 24 70 6f 73 69 74 69 6f 6e 20 3d 20 34 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 $position.=.4;.}.elseif.(isset($
140ba0 6d 61 74 63 68 65 73 5b 33 5d 29 20 26 26 20 27 27 20 21 3d 3d 20 24 6d 61 74 63 68 65 73 5b 33 matches[3]).&&.''.!==.$matches[3
140bc0 5d 29 20 7b 0a 24 70 6f 73 69 74 69 6f 6e 20 3d 20 33 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 ]).{.$position.=.3;.}.elseif.(is
140be0 73 65 74 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 26 26 20 27 27 20 21 3d 3d 20 24 6d 61 74 63 set($matches[2]).&&.''.!==.$matc
140c00 68 65 73 5b 32 5d 29 20 7b 0a 24 70 6f 73 69 74 69 6f 6e 20 3d 20 32 3b 0a 7d 20 65 6c 73 65 20 hes[2]).{.$position.=.2;.}.else.
140c20 7b 0a 24 70 6f 73 69 74 69 6f 6e 20 3d 20 31 3b 0a 7d 0a 0a 0a 20 24 73 74 61 62 69 6c 69 74 79 {.$position.=.1;.}....$stability
140c40 53 75 66 66 69 78 20 3d 20 27 27 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 Suffix.=.'';.if.(!empty($matches
140c60 5b 35 5d 29 29 20 7b 0a 24 73 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 20 2e 3d 20 27 2d 27 20 [5])).{.$stabilitySuffix..=.'-'.
140c80 2e 20 24 74 68 69 73 2d 3e 65 78 70 61 6e 64 53 74 61 62 69 6c 69 74 79 28 24 6d 61 74 63 68 65 ..$this->expandStability($matche
140ca0 73 5b 35 5d 29 20 2e 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 36 5d 29 20 3f 20 24 s[5])...(!empty($matches[6]).?.$
140cc0 6d 61 74 63 68 65 73 5b 36 5d 20 3a 20 27 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 matches[6].:.'');.}..if.(!empty(
140ce0 24 6d 61 74 63 68 65 73 5b 37 5d 29 29 20 7b 0a 24 73 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 $matches[7])).{.$stabilitySuffix
140d00 20 2e 3d 20 27 2d 64 65 76 27 3b 0a 7d 0a 0a 69 66 20 28 21 24 73 74 61 62 69 6c 69 74 79 53 75 ..=.'-dev';.}..if.(!$stabilitySu
140d20 66 66 69 78 29 20 7b 0a 24 73 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 20 3d 20 27 2d 64 65 76 ffix).{.$stabilitySuffix.=.'-dev
140d40 27 3b 0a 7d 0a 0a 24 6c 6f 77 56 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 6d 61 6e 69 70 ';.}..$lowVersion.=.$this->manip
140d60 75 6c 61 74 65 56 65 72 73 69 6f 6e 53 74 72 69 6e 67 28 24 6d 61 74 63 68 65 73 2c 20 24 70 6f ulateVersionString($matches,.$po
140d80 73 69 74 69 6f 6e 2c 20 30 29 20 2e 20 24 73 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 3b 0a 24 sition,.0)...$stabilitySuffix;.$
140da0 6c 6f 77 65 72 42 6f 75 6e 64 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3e 3d 27 lowerBound.=.new.Constraint('>='
140dc0 2c 20 24 6c 6f 77 56 65 72 73 69 6f 6e 29 3b 0a 0a 0a 20 0a 20 24 68 69 67 68 50 6f 73 69 74 69 ,.$lowVersion);......$highPositi
140de0 6f 6e 20 3d 20 6d 61 78 28 31 2c 20 24 70 6f 73 69 74 69 6f 6e 20 2d 20 31 29 3b 0a 24 68 69 67 on.=.max(1,.$position.-.1);.$hig
140e00 68 56 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 56 65 72 73 hVersion.=.$this->manipulateVers
140e20 69 6f 6e 53 74 72 69 6e 67 28 24 6d 61 74 63 68 65 73 2c 20 24 68 69 67 68 50 6f 73 69 74 69 6f ionString($matches,.$highPositio
140e40 6e 2c 20 31 29 20 2e 20 27 2d 64 65 76 27 3b 0a 24 75 70 70 65 72 42 6f 75 6e 64 20 3d 20 6e 65 n,.1)...'-dev';.$upperBound.=.ne
140e60 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3c 27 2c 20 24 68 69 67 68 56 65 72 73 69 6f 6e 29 3b w.Constraint('<',.$highVersion);
140e80 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 24 6c 6f 77 65 72 42 6f 75 6e 64 2c 0a 24 75 70 ..return.array(.$lowerBound,.$up
140ea0 70 65 72 42 6f 75 6e 64 2c 0a 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 0a 20 0a 20 69 66 20 28 70 72 perBound,.);.}............if.(pr
140ec0 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 5e 27 20 2e 20 24 76 65 72 73 69 6f 6e 52 65 67 65 78 20 eg_match('{^\^'...$versionRegex.
140ee0 2e 20 27 28 24 29 7d 69 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 63 68 65 73 ..'($)}i',.$constraint,.$matches
140f00 29 29 20 7b 0a 0a 20 69 66 20 28 27 30 27 20 21 3d 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 7c )).{...if.('0'.!==.$matches[1].|
140f20 7c 20 27 27 20 3d 3d 3d 20 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 7b 0a 24 70 6f 73 69 74 69 6f |.''.===.$matches[2]).{.$positio
140f40 6e 20 3d 20 31 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 30 27 20 21 3d 3d 20 24 6d 61 74 63 68 65 n.=.1;.}.elseif.('0'.!==.$matche
140f60 73 5b 32 5d 20 7c 7c 20 27 27 20 3d 3d 3d 20 24 6d 61 74 63 68 65 73 5b 33 5d 29 20 7b 0a 24 70 s[2].||.''.===.$matches[3]).{.$p
140f80 6f 73 69 74 69 6f 6e 20 3d 20 32 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 6f 73 69 74 69 6f 6e 20 osition.=.2;.}.else.{.$position.
140fa0 3d 20 33 3b 0a 7d 0a 0a 0a 20 24 73 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 20 3d 20 27 27 3b =.3;.}....$stabilitySuffix.=.'';
140fc0 0a 69 66 20 28 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 35 5d 29 20 26 26 20 65 6d 70 74 79 .if.(empty($matches[5]).&&.empty
140fe0 28 24 6d 61 74 63 68 65 73 5b 37 5d 29 29 20 7b 0a 24 73 74 61 62 69 6c 69 74 79 53 75 66 66 69 ($matches[7])).{.$stabilitySuffi
141000 78 20 2e 3d 20 27 2d 64 65 76 27 3b 0a 7d 0a 0a 24 6c 6f 77 56 65 72 73 69 6f 6e 20 3d 20 24 74 x..=.'-dev';.}..$lowVersion.=.$t
141020 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 73 75 62 73 74 72 28 24 63 6f 6e 73 74 72 61 69 6e his->normalize(substr($constrain
141040 74 20 2e 20 24 73 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 2c 20 31 29 29 3b 0a 24 6c 6f 77 65 t...$stabilitySuffix,.1));.$lowe
141060 72 42 6f 75 6e 64 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3e 3d 27 2c 20 24 6c rBound.=.new.Constraint('>=',.$l
141080 6f 77 56 65 72 73 69 6f 6e 29 3b 0a 0a 0a 20 0a 20 24 68 69 67 68 56 65 72 73 69 6f 6e 20 3d 20 owVersion);......$highVersion.=.
1410a0 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 56 65 72 73 69 6f 6e 53 74 72 69 6e 67 28 24 $this->manipulateVersionString($
1410c0 6d 61 74 63 68 65 73 2c 20 24 70 6f 73 69 74 69 6f 6e 2c 20 31 29 20 2e 20 27 2d 64 65 76 27 3b matches,.$position,.1)...'-dev';
1410e0 0a 24 75 70 70 65 72 42 6f 75 6e 64 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3c .$upperBound.=.new.Constraint('<
141100 27 2c 20 24 68 69 67 68 56 65 72 73 69 6f 6e 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 ',.$highVersion);..return.array(
141120 0a 24 6c 6f 77 65 72 42 6f 75 6e 64 2c 0a 24 75 70 70 65 72 42 6f 75 6e 64 2c 0a 29 3b 0a 7d 0a .$lowerBound,.$upperBound,.);.}.
141140 0a 0a 20 0a 20 0a 20 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 76 3f 28 5c 64 .........if.(preg_match('{^v?(\d
141160 2b 2b 29 28 3f 3a 5c 2e 28 5c 64 2b 2b 29 29 3f 28 3f 3a 5c 2e 28 5c 64 2b 2b 29 29 3f 28 3f 3a ++)(?:\.(\d++))?(?:\.(\d++))?(?:
141180 5c 2e 5b 78 58 2a 5d 29 2b 2b 24 7d 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 \.[xX*])++$}',.$constraint,.$mat
1411a0 63 68 65 73 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 20 ches)).{.if.(isset($matches[3]).
1411c0 26 26 20 27 27 20 21 3d 3d 20 24 6d 61 74 63 68 65 73 5b 33 5d 29 20 7b 0a 24 70 6f 73 69 74 69 &&.''.!==.$matches[3]).{.$positi
1411e0 6f 6e 20 3d 20 33 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 on.=.3;.}.elseif.(isset($matches
141200 5b 32 5d 29 20 26 26 20 27 27 20 21 3d 3d 20 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 7b 0a 24 70 [2]).&&.''.!==.$matches[2]).{.$p
141220 6f 73 69 74 69 6f 6e 20 3d 20 32 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 6f 73 69 74 69 6f 6e 20 osition.=.2;.}.else.{.$position.
141240 3d 20 31 3b 0a 7d 0a 0a 24 6c 6f 77 56 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 6d 61 6e =.1;.}..$lowVersion.=.$this->man
141260 69 70 75 6c 61 74 65 56 65 72 73 69 6f 6e 53 74 72 69 6e 67 28 24 6d 61 74 63 68 65 73 2c 20 24 ipulateVersionString($matches,.$
141280 70 6f 73 69 74 69 6f 6e 29 20 2e 20 27 2d 64 65 76 27 3b 0a 24 68 69 67 68 56 65 72 73 69 6f 6e position)...'-dev';.$highVersion
1412a0 20 3d 20 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 56 65 72 73 69 6f 6e 53 74 72 69 6e .=.$this->manipulateVersionStrin
1412c0 67 28 24 6d 61 74 63 68 65 73 2c 20 24 70 6f 73 69 74 69 6f 6e 2c 20 31 29 20 2e 20 27 2d 64 65 g($matches,.$position,.1)...'-de
1412e0 76 27 3b 0a 0a 69 66 20 28 24 6c 6f 77 56 65 72 73 69 6f 6e 20 3d 3d 3d 20 27 30 2e 30 2e 30 2e v';..if.($lowVersion.===.'0.0.0.
141300 30 2d 64 65 76 27 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 65 77 20 43 6f 6e 73 74 0-dev').{.return.array(new.Const
141320 72 61 69 6e 74 28 27 3c 27 2c 20 24 68 69 67 68 56 65 72 73 69 6f 6e 29 29 3b 0a 7d 0a 0a 72 65 raint('<',.$highVersion));.}..re
141340 74 75 72 6e 20 61 72 72 61 79 28 0a 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3e 3d 27 2c turn.array(.new.Constraint('>=',
141360 20 24 6c 6f 77 56 65 72 73 69 6f 6e 29 2c 0a 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3c .$lowVersion),.new.Constraint('<
141380 27 2c 20 24 68 69 67 68 56 65 72 73 69 6f 6e 29 2c 0a 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 0a 20 ',.$highVersion),.);.}..........
1413a0 0a 20 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 50 3c 66 72 6f 6d 3e 27 ....if.(preg_match('{^(?P<from>'
1413c0 20 2e 20 24 76 65 72 73 69 6f 6e 52 65 67 65 78 20 2e 20 27 29 20 2b 2d 20 2b 28 3f 50 3c 74 6f ...$versionRegex...').+-.+(?P<to
1413e0 3e 27 20 2e 20 24 76 65 72 73 69 6f 6e 52 65 67 65 78 20 2e 20 27 29 28 24 29 7d 69 27 2c 20 24 >'...$versionRegex...')($)}i',.$
141400 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 0a 20 24 6c 6f 77 53 constraint,.$matches)).{...$lowS
141420 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 20 3d 20 27 27 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 tabilitySuffix.=.'';.if.(empty($
141440 6d 61 74 63 68 65 73 5b 36 5d 29 20 26 26 20 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 38 5d matches[6]).&&.empty($matches[8]
141460 29 29 20 7b 0a 24 6c 6f 77 53 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 20 3d 20 27 2d 64 65 76 )).{.$lowStabilitySuffix.=.'-dev
141480 27 3b 0a 7d 0a 0a 24 6c 6f 77 56 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 ';.}..$lowVersion.=.$this->norma
1414a0 6c 69 7a 65 28 24 6d 61 74 63 68 65 73 5b 27 66 72 6f 6d 27 5d 29 3b 0a 24 6c 6f 77 65 72 42 6f lize($matches['from']);.$lowerBo
1414c0 75 6e 64 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3e 3d 27 2c 20 24 6c 6f 77 56 und.=.new.Constraint('>=',.$lowV
1414e0 65 72 73 69 6f 6e 20 2e 20 24 6c 6f 77 53 74 61 62 69 6c 69 74 79 53 75 66 66 69 78 29 3b 0a 0a ersion...$lowStabilitySuffix);..
141500 24 65 6d 70 74 79 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 78 29 20 7b 0a 72 65 74 75 72 6e 20 $empty.=.function.($x).{.return.
141520 28 24 78 20 3d 3d 3d 20 30 20 7c 7c 20 24 78 20 3d 3d 3d 20 27 30 27 29 20 3f 20 66 61 6c 73 65 ($x.===.0.||.$x.===.'0').?.false
141540 20 3a 20 65 6d 70 74 79 28 24 78 29 3b 0a 7d 3b 0a 0a 69 66 20 28 28 21 24 65 6d 70 74 79 28 24 .:.empty($x);.};..if.((!$empty($
141560 6d 61 74 63 68 65 73 5b 31 31 5d 29 20 26 26 20 21 24 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 matches[11]).&&.!$empty($matches
141580 5b 31 32 5d 29 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 31 34 5d 29 20 7c [12])).||.!empty($matches[14]).|
1415a0 7c 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 31 36 5d 29 29 20 7b 0a 24 68 69 67 68 56 |.!empty($matches[16])).{.$highV
1415c0 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6d 61 74 63 68 ersion.=.$this->normalize($match
1415e0 65 73 5b 27 74 6f 27 5d 29 3b 0a 24 75 70 70 65 72 42 6f 75 6e 64 20 3d 20 6e 65 77 20 43 6f 6e es['to']);.$upperBound.=.new.Con
141600 73 74 72 61 69 6e 74 28 27 3c 3d 27 2c 20 24 68 69 67 68 56 65 72 73 69 6f 6e 29 3b 0a 7d 20 65 straint('<=',.$highVersion);.}.e
141620 6c 73 65 20 7b 0a 24 68 69 67 68 4d 61 74 63 68 20 3d 20 61 72 72 61 79 28 27 27 2c 20 24 6d 61 lse.{.$highMatch.=.array('',.$ma
141640 74 63 68 65 73 5b 31 30 5d 2c 20 24 6d 61 74 63 68 65 73 5b 31 31 5d 2c 20 24 6d 61 74 63 68 65 tches[10],.$matches[11],.$matche
141660 73 5b 31 32 5d 2c 20 24 6d 61 74 63 68 65 73 5b 31 33 5d 29 3b 0a 24 68 69 67 68 56 65 72 73 69 s[12],.$matches[13]);.$highVersi
141680 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 6c 61 74 65 56 65 72 73 69 6f 6e 53 74 72 on.=.$this->manipulateVersionStr
1416a0 69 6e 67 28 24 68 69 67 68 4d 61 74 63 68 2c 20 24 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b ing($highMatch,.$empty($matches[
1416c0 31 31 5d 29 20 3f 20 31 20 3a 20 32 2c 20 31 29 20 2e 20 27 2d 64 65 76 27 3b 0a 24 75 70 70 65 11]).?.1.:.2,.1)...'-dev';.$uppe
1416e0 72 42 6f 75 6e 64 20 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3c 27 2c 20 24 68 69 rBound.=.new.Constraint('<',.$hi
141700 67 68 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 24 6c 6f ghVersion);.}..return.array(.$lo
141720 77 65 72 42 6f 75 6e 64 2c 0a 24 75 70 70 65 72 42 6f 75 6e 64 2c 0a 29 3b 0a 7d 0a 0a 0a 20 69 werBound,.$upperBound,.);.}....i
141740 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3c 3e 7c 21 3d 7c 3e 3d 3f 7c 3c 3d 3f 7c f.(preg_match('{^(<>|!=|>=?|<=?|
141760 3d 3d 3f 29 3f 5c 73 2a 28 2e 2a 29 7d 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 ==?)?\s*(.*)}',.$constraint,.$ma
141780 74 63 68 65 73 29 29 20 7b 0a 74 72 79 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 tches)).{.try.{.$version.=.$this
1417a0 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b 0a 0a 69 66 20 28 21 ->normalize($matches[2]);..if.(!
1417c0 65 6d 70 74 79 28 24 73 74 61 62 69 6c 69 74 79 4d 6f 64 69 66 69 65 72 29 20 26 26 20 24 74 68 empty($stabilityModifier).&&.$th
1417e0 69 73 2d 3e 70 61 72 73 65 53 74 61 62 69 6c 69 74 79 28 24 76 65 72 73 69 6f 6e 29 20 3d 3d 3d is->parseStability($version).===
141800 20 27 73 74 61 62 6c 65 27 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 2e 3d 20 27 2d 27 20 2e 20 24 .'stable').{.$version..=.'-'...$
141820 73 74 61 62 69 6c 69 74 79 4d 6f 64 69 66 69 65 72 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 3c 27 stabilityModifier;.}.elseif.('<'
141840 20 3d 3d 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 7c 7c 20 27 3e 3d 27 20 3d 3d 3d 20 24 6d 61 .===.$matches[1].||.'>='.===.$ma
141860 74 63 68 65 73 5b 31 5d 29 20 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 2d 27 tches[1]).{.if.(!preg_match('/-'
141880 20 2e 20 73 65 6c 66 3a 3a 24 6d 6f 64 69 66 69 65 72 52 65 67 65 78 20 2e 20 27 24 2f 27 2c 20 ...self::$modifierRegex...'$/',.
1418a0 73 74 72 74 6f 6c 6f 77 65 72 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 29 20 7b 0a 69 66 20 28 strtolower($matches[2]))).{.if.(
1418c0 73 75 62 73 74 72 28 24 6d 61 74 63 68 65 73 5b 32 5d 2c 20 30 2c 20 34 29 20 21 3d 3d 20 27 64 substr($matches[2],.0,.4).!==.'d
1418e0 65 76 2d 27 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 2e 3d 20 27 2d 64 65 76 27 3b 0a 7d 0a 7d 0a ev-').{.$version..=.'-dev';.}.}.
141900 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 24 }..return.array(new.Constraint($
141920 6d 61 74 63 68 65 73 5b 31 5d 20 3f 3a 20 27 3d 27 2c 20 24 76 65 72 73 69 6f 6e 29 29 3b 0a 7d matches[1].?:.'=',.$version));.}
141940 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 7d 0a 0a 24 6d .catch.(\Exception.$e).{.}.}..$m
141960 65 73 73 61 67 65 20 3d 20 27 43 6f 75 6c 64 20 6e 6f 74 20 70 61 72 73 65 20 76 65 72 73 69 6f essage.=.'Could.not.parse.versio
141980 6e 20 63 6f 6e 73 74 72 61 69 6e 74 20 27 20 2e 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 69 66 n.constraint.'...$constraint;.if
1419a0 20 28 69 73 73 65 74 28 24 65 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 27 3a 20 27 20 .(isset($e)).{.$message..=.':.'.
1419c0 2e 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 ..$e->getMessage();.}..throw.new
1419e0 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 .\UnexpectedValueException($mess
141a00 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e age);.}..............private.fun
141a20 63 74 69 6f 6e 20 6d 61 6e 69 70 75 6c 61 74 65 56 65 72 73 69 6f 6e 53 74 72 69 6e 67 28 24 6d ction.manipulateVersionString($m
141a40 61 74 63 68 65 73 2c 20 24 70 6f 73 69 74 69 6f 6e 2c 20 24 69 6e 63 72 65 6d 65 6e 74 20 3d 20 atches,.$position,.$increment.=.
141a60 30 2c 20 24 70 61 64 20 3d 20 27 30 27 29 0a 7b 0a 66 6f 72 20 28 24 69 20 3d 20 34 3b 20 24 69 0,.$pad.=.'0').{.for.($i.=.4;.$i
141a80 20 3e 20 30 3b 20 2d 2d 24 69 29 20 7b 0a 69 66 20 28 24 69 20 3e 20 24 70 6f 73 69 74 69 6f 6e .>.0;.--$i).{.if.($i.>.$position
141aa0 29 20 7b 0a 24 6d 61 74 63 68 65 73 5b 24 69 5d 20 3d 20 24 70 61 64 3b 0a 7d 20 65 6c 73 65 69 ).{.$matches[$i].=.$pad;.}.elsei
141ac0 66 20 28 24 69 20 3d 3d 3d 20 24 70 6f 73 69 74 69 6f 6e 20 26 26 20 24 69 6e 63 72 65 6d 65 6e f.($i.===.$position.&&.$incremen
141ae0 74 29 20 7b 0a 24 6d 61 74 63 68 65 73 5b 24 69 5d 20 2b 3d 20 24 69 6e 63 72 65 6d 65 6e 74 3b t).{.$matches[$i].+=.$increment;
141b00 0a 0a 20 69 66 20 28 24 6d 61 74 63 68 65 73 5b 24 69 5d 20 3c 20 30 29 20 7b 0a 24 6d 61 74 63 ...if.($matches[$i].<.0).{.$matc
141b20 68 65 73 5b 24 69 5d 20 3d 20 24 70 61 64 3b 0a 2d 2d 24 70 6f 73 69 74 69 6f 6e 3b 0a 0a 0a 20 hes[$i].=.$pad;.--$position;....
141b40 69 66 20 28 24 69 20 3d 3d 3d 20 31 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a if.($i.===.1).{.return;.}.}.}.}.
141b60 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 2e 20 27 2e 27 20 2e 20 24 6d 61 74 .return.$matches[1]...'.'...$mat
141b80 63 68 65 73 5b 32 5d 20 2e 20 27 2e 27 20 2e 20 24 6d 61 74 63 68 65 73 5b 33 5d 20 2e 20 27 2e ches[2]...'.'...$matches[3]...'.
141ba0 27 20 2e 20 24 6d 61 74 63 68 65 73 5b 34 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 '...$matches[4];.}.........priva
141bc0 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 70 61 6e 64 53 74 61 62 69 6c 69 74 79 28 24 73 74 61 te.function.expandStability($sta
141be0 62 69 6c 69 74 79 29 0a 7b 0a 24 73 74 61 62 69 6c 69 74 79 20 3d 20 73 74 72 74 6f 6c 6f 77 65 bility).{.$stability.=.strtolowe
141c00 72 28 24 73 74 61 62 69 6c 69 74 79 29 3b 0a 0a 73 77 69 74 63 68 20 28 24 73 74 61 62 69 6c 69 r($stability);..switch.($stabili
141c20 74 79 29 20 7b 0a 63 61 73 65 20 27 61 27 3a 0a 72 65 74 75 72 6e 20 27 61 6c 70 68 61 27 3b 0a ty).{.case.'a':.return.'alpha';.
141c40 63 61 73 65 20 27 62 27 3a 0a 72 65 74 75 72 6e 20 27 62 65 74 61 27 3b 0a 63 61 73 65 20 27 70 case.'b':.return.'beta';.case.'p
141c60 27 3a 0a 63 61 73 65 20 27 70 6c 27 3a 0a 72 65 74 75 72 6e 20 27 70 61 74 63 68 27 3b 0a 63 61 ':.case.'pl':.return.'patch';.ca
141c80 73 65 20 27 72 63 27 3a 0a 72 65 74 75 72 6e 20 27 52 43 27 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 se.'rc':.return.'RC';.default:.r
141ca0 65 74 75 72 6e 20 24 73 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a eturn.$stability;.}.}.}.<?php...
141cc0 0a 72 65 71 75 69 72 65 5f 6f 6e 63 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 63 6f 6d 70 6f 73 .require_once.__DIR__...'/compos
141ce0 65 72 27 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f 72 65 61 6c 2e 70 68 70 27 3b 0a 0a 72 65 74 er'...'/autoload_real.php';..ret
141d00 75 72 6e 20 43 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 43 6f 6d 70 6f 73 urn.ComposerAutoloaderInitCompos
141d20 65 72 50 68 61 72 31 34 35 39 30 39 30 38 33 34 3a 3a 67 65 74 4c 6f 61 64 65 72 28 29 3b 0a 3c erPhar1459090834::getLoader();.<
141d40 3f 70 68 70 0a 0a 0a 0a 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 64 69 72 ?php....$vendorDir.=.dirname(dir
141d60 6e 61 6d 65 28 5f 5f 46 49 4c 45 5f 5f 29 29 3b 0a 24 62 61 73 65 44 69 72 20 3d 20 64 69 72 6e name(__FILE__));.$baseDir.=.dirn
141d80 61 6d 65 28 24 76 65 6e 64 6f 72 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a ame($vendorDir);..return.array(.
141da0 29 3b 0a 3c 3f 70 68 70 0a 0a 0a 0a 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 64 69 72 6e 61 6d 65 );.<?php....$vendorDir.=.dirname
141dc0 28 64 69 72 6e 61 6d 65 28 5f 5f 46 49 4c 45 5f 5f 29 29 3b 0a 24 62 61 73 65 44 69 72 20 3d 20 (dirname(__FILE__));.$baseDir.=.
141de0 64 69 72 6e 61 6d 65 28 24 76 65 6e 64 6f 72 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 dirname($vendorDir);..return.arr
141e00 61 79 28 0a 27 53 79 6d 66 6f 6e 79 5c 5c 50 6f 6c 79 66 69 6c 6c 5c 5c 4d 62 73 74 72 69 6e 67 ay(.'Symfony\\Polyfill\\Mbstring
141e20 5c 5c 27 20 3d 3e 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 79 6d 66 \\'.=>.array($vendorDir...'/symf
141e40 6f 6e 79 2f 70 6f 6c 79 66 69 6c 6c 2d 6d 62 73 74 72 69 6e 67 27 29 2c 0a 27 53 79 6d 66 6f 6e ony/polyfill-mbstring'),.'Symfon
141e60 79 5c 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 5c 50 72 6f 63 65 73 73 5c 5c 27 20 3d 3e 20 61 72 72 61 y\\Component\\Process\\'.=>.arra
141e80 79 28 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 y($vendorDir...'/symfony/process
141ea0 27 29 2c 0a 27 53 79 6d 66 6f 6e 79 5c 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 5c 46 69 6e 64 65 72 5c '),.'Symfony\\Component\\Finder\
141ec0 5c 27 20 3d 3e 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 79 6d 66 6f \'.=>.array($vendorDir...'/symfo
141ee0 6e 79 2f 66 69 6e 64 65 72 27 29 2c 0a 27 53 79 6d 66 6f 6e 79 5c 5c 43 6f 6d 70 6f 6e 65 6e 74 ny/finder'),.'Symfony\\Component
141f00 5c 5c 46 69 6c 65 73 79 73 74 65 6d 5c 5c 27 20 3d 3e 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 \\Filesystem\\'.=>.array($vendor
141f20 44 69 72 20 2e 20 27 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 73 79 73 74 65 6d 27 29 2c 0a 27 53 Dir...'/symfony/filesystem'),.'S
141f40 79 6d 66 6f 6e 79 5c 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 5c 43 6f 6e 73 6f 6c 65 5c 5c 27 20 3d 3e ymfony\\Component\\Console\\'.=>
141f60 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 79 6d 66 6f 6e 79 2f 63 6f .array($vendorDir...'/symfony/co
141f80 6e 73 6f 6c 65 27 29 2c 0a 27 53 65 6c 64 5c 5c 50 68 61 72 55 74 69 6c 73 5c 5c 27 20 3d 3e 20 nsole'),.'Seld\\PharUtils\\'.=>.
141fa0 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 65 6c 64 2f 70 68 61 72 2d 75 array($vendorDir...'/seld/phar-u
141fc0 74 69 6c 73 2f 73 72 63 27 29 2c 0a 27 53 65 6c 64 5c 5c 4a 73 6f 6e 4c 69 6e 74 5c 5c 27 20 3d tils/src'),.'Seld\\JsonLint\\'.=
141fe0 3e 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 65 6c 64 2f 6a 73 6f 6e >.array($vendorDir...'/seld/json
142000 6c 69 6e 74 2f 73 72 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 27 29 2c 0a 27 53 65 6c 64 5c lint/src/Seld/JsonLint'),.'Seld\
142020 5c 43 6c 69 50 72 6f 6d 70 74 5c 5c 27 20 3d 3e 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 \CliPrompt\\'.=>.array($vendorDi
142040 72 20 2e 20 27 2f 73 65 6c 64 2f 63 6c 69 2d 70 72 6f 6d 70 74 2f 73 72 63 27 29 2c 0a 27 4a 73 r...'/seld/cli-prompt/src'),.'Js
142060 6f 6e 53 63 68 65 6d 61 5c 5c 27 20 3d 3e 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 72 20 onSchema\\'.=>.array($vendorDir.
142080 2e 20 27 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 ..'/justinrainbow/json-schema/sr
1420a0 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 27 29 2c 0a 27 43 6f 6d 70 6f 73 65 72 5c 5c 53 70 64 78 5c c/JsonSchema'),.'Composer\\Spdx\
1420c0 5c 27 20 3d 3e 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 63 6f 6d 70 6f \'.=>.array($vendorDir...'/compo
1420e0 73 65 72 2f 73 70 64 78 2d 6c 69 63 65 6e 73 65 73 2f 73 72 63 27 29 2c 0a 27 43 6f 6d 70 6f 73 ser/spdx-licenses/src'),.'Compos
142100 65 72 5c 5c 53 65 6d 76 65 72 5c 5c 27 20 3d 3e 20 61 72 72 61 79 28 24 76 65 6e 64 6f 72 44 69 er\\Semver\\'.=>.array($vendorDi
142120 72 20 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 2f 73 65 6d 76 65 72 2f 73 72 63 27 29 2c 0a 27 43 6f r...'/composer/semver/src'),.'Co
142140 6d 70 6f 73 65 72 5c 5c 27 20 3d 3e 20 61 72 72 61 79 28 24 62 61 73 65 44 69 72 20 2e 20 27 2f mposer\\'.=>.array($baseDir...'/
142160 73 72 63 2f 43 6f 6d 70 6f 73 65 72 27 29 2c 0a 29 3b 0a 3c 3f 70 68 70 0a 0a 0a 0a 24 76 65 6e src/Composer'),.);.<?php....$ven
142180 64 6f 72 44 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 64 69 72 6e 61 6d 65 28 5f 5f 46 49 4c 45 5f dorDir.=.dirname(dirname(__FILE_
1421a0 5f 29 29 3b 0a 24 62 61 73 65 44 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 24 76 65 6e 64 6f 72 44 _));.$baseDir.=.dirname($vendorD
1421c0 69 72 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 29 3b 0a 3c 3f 70 68 70 0a 0a 0a 0a ir);..return.array(.);.<?php....
1421e0 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 64 69 72 6e 61 6d 65 28 5f 5f 46 $vendorDir.=.dirname(dirname(__F
142200 49 4c 45 5f 5f 29 29 3b 0a 24 62 61 73 65 44 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 24 76 65 6e ILE__));.$baseDir.=.dirname($ven
142220 64 6f 72 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 30 65 36 64 37 62 66 dorDir);..return.array(.'0e6d7bf
142240 34 61 35 38 31 31 62 66 61 35 63 66 34 30 63 35 63 63 64 36 66 61 65 36 61 27 20 3d 3e 20 24 76 4a5811bfa5cf40c5ccd6fae6a'.=>.$v
142260 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 79 6d 66 6f 6e 79 2f 70 6f 6c 79 66 69 6c 6c 2d 6d 62 endorDir...'/symfony/polyfill-mb
142280 73 74 72 69 6e 67 2f 62 6f 6f 74 73 74 72 61 70 2e 70 68 70 27 2c 0a 29 3b 0a 3c 3f 70 68 70 0a string/bootstrap.php',.);.<?php.
1422a0 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 43 ...class.ComposerAutoloaderInitC
1422c0 6f 6d 70 6f 73 65 72 50 68 61 72 31 34 35 39 30 39 30 38 33 34 0a 7b 0a 70 72 69 76 61 74 65 20 omposerPhar1459090834.{.private.
1422e0 73 74 61 74 69 63 20 24 6c 6f 61 64 65 72 3b 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 static.$loader;..public.static.f
142300 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 43 6c 61 73 73 4c 6f 61 64 65 72 28 24 63 6c 61 73 73 29 0a unction.loadClassLoader($class).
142320 7b 0a 69 66 20 28 27 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 5c 43 6c 61 73 73 4c 6f {.if.('Composer\Autoload\ClassLo
142340 61 64 65 72 27 20 3d 3d 3d 20 24 63 6c 61 73 73 29 20 7b 0a 72 65 71 75 69 72 65 20 5f 5f 44 49 ader'.===.$class).{.require.__DI
142360 52 5f 5f 20 2e 20 27 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 27 3b 0a 7d 0a 7d 0a 0a 70 R__...'/ClassLoader.php';.}.}..p
142380 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 61 64 65 72 28 ublic.static.function.getLoader(
1423a0 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 73 65 6c 66 3a 3a 24 6c 6f 61 64 65 72 29 20 ).{.if.(null.!==.self::$loader).
1423c0 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 73 70 6c 5f 61 {.return.self::$loader;.}..spl_a
1423e0 75 74 6f 6c 6f 61 64 5f 72 65 67 69 73 74 65 72 28 61 72 72 61 79 28 27 43 6f 6d 70 6f 73 65 72 utoload_register(array('Composer
142400 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 43 6f 6d 70 6f 73 65 72 50 68 61 72 31 34 35 39 30 39 AutoloaderInitComposerPhar145909
142420 30 38 33 34 27 2c 20 27 6c 6f 61 64 43 6c 61 73 73 4c 6f 61 64 65 72 27 29 2c 20 74 72 75 65 2c 0834',.'loadClassLoader'),.true,
142440 20 74 72 75 65 29 3b 0a 73 65 6c 66 3a 3a 24 6c 6f 61 64 65 72 20 3d 20 24 6c 6f 61 64 65 72 20 .true);.self::$loader.=.$loader.
142460 3d 20 6e 65 77 20 5c 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 5c 43 6c 61 73 73 4c 6f =.new.\Composer\Autoload\ClassLo
142480 61 64 65 72 28 29 3b 0a 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 75 6e 72 65 67 69 73 74 65 72 28 ader();.spl_autoload_unregister(
1424a0 61 72 72 61 79 28 27 43 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 43 6f 6d array('ComposerAutoloaderInitCom
1424c0 70 6f 73 65 72 50 68 61 72 31 34 35 39 30 39 30 38 33 34 27 2c 20 27 6c 6f 61 64 43 6c 61 73 73 poserPhar1459090834',.'loadClass
1424e0 4c 6f 61 64 65 72 27 29 29 3b 0a 0a 24 6d 61 70 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 Loader'));..$map.=.require.__DIR
142500 5f 5f 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 2e 70 68 70 27 3b __...'/autoload_namespaces.php';
142520 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 70 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 .foreach.($map.as.$namespace.=>.
142540 24 70 61 74 68 29 20 7b 0a 24 6c 6f 61 64 65 72 2d 3e 73 65 74 28 24 6e 61 6d 65 73 70 61 63 65 $path).{.$loader->set($namespace
142560 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 24 6d 61 70 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 ,.$path);.}..$map.=.require.__DI
142580 52 5f 5f 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f 70 73 72 34 2e 70 68 70 27 3b 0a 66 6f 72 65 R__...'/autoload_psr4.php';.fore
1425a0 61 63 68 20 28 24 6d 61 70 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 ach.($map.as.$namespace.=>.$path
1425c0 29 20 7b 0a 24 6c 6f 61 64 65 72 2d 3e 73 65 74 50 73 72 34 28 24 6e 61 6d 65 73 70 61 63 65 2c ).{.$loader->setPsr4($namespace,
1425e0 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 24 63 6c 61 73 73 4d 61 70 20 3d 20 72 65 71 75 69 72 65 20 .$path);.}..$classMap.=.require.
142600 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 2e 70 68 __DIR__...'/autoload_classmap.ph
142620 70 27 3b 0a 69 66 20 28 24 63 6c 61 73 73 4d 61 70 29 20 7b 0a 24 6c 6f 61 64 65 72 2d 3e 61 64 p';.if.($classMap).{.$loader->ad
142640 64 43 6c 61 73 73 4d 61 70 28 24 63 6c 61 73 73 4d 61 70 29 3b 0a 7d 0a 0a 24 6c 6f 61 64 65 72 dClassMap($classMap);.}..$loader
142660 2d 3e 72 65 67 69 73 74 65 72 28 74 72 75 65 29 3b 0a 0a 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 ->register(true);..$includeFiles
142680 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f .=.require.__DIR__...'/autoload_
1426a0 66 69 6c 65 73 2e 70 68 70 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 69 6e 63 6c 75 64 65 46 69 6c files.php';.foreach.($includeFil
1426c0 65 73 20 61 73 20 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 20 3d 3e 20 24 66 69 6c 65 29 20 es.as.$fileIdentifier.=>.$file).
1426e0 7b 0a 63 6f 6d 70 6f 73 65 72 52 65 71 75 69 72 65 43 6f 6d 70 6f 73 65 72 50 68 61 72 31 34 35 {.composerRequireComposerPhar145
142700 39 30 39 30 38 33 34 28 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 2c 20 24 66 69 6c 65 29 3b 9090834($fileIdentifier,.$file);
142720 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 6f 61 64 65 72 3b 0a 7d 0a 7d 0a 0a 66 75 6e 63 74 69 6f .}..return.$loader;.}.}..functio
142740 6e 20 63 6f 6d 70 6f 73 65 72 52 65 71 75 69 72 65 43 6f 6d 70 6f 73 65 72 50 68 61 72 31 34 35 n.composerRequireComposerPhar145
142760 39 30 39 30 38 33 34 28 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 2c 20 24 66 69 6c 65 29 0a 9090834($fileIdentifier,.$file).
142780 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 47 4c 4f 42 41 4c 53 5b 27 5f 5f 63 6f 6d 70 6f 73 65 72 {.if.(empty($GLOBALS['__composer
1427a0 5f 61 75 74 6f 6c 6f 61 64 5f 66 69 6c 65 73 27 5d 5b 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 _autoload_files'][$fileIdentifie
1427c0 72 5d 29 29 20 7b 0a 72 65 71 75 69 72 65 20 24 66 69 6c 65 3b 0a 0a 24 47 4c 4f 42 41 4c 53 5b r])).{.require.$file;..$GLOBALS[
1427e0 27 5f 5f 63 6f 6d 70 6f 73 65 72 5f 61 75 74 6f 6c 6f 61 64 5f 66 69 6c 65 73 27 5d 5b 24 66 69 '__composer_autoload_files'][$fi
142800 6c 65 49 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a leIdentifier].=.true;.}.}.<?php.
142820 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 41 75 ...........namespace.Composer\Au
142840 74 6f 6c 6f 61 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a toload;.........................
142860 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6c 61 73 73 4c 6f 61 64 65 72 0a 7b 0a 0a 20 70 72 69 76 61 .....class.ClassLoader.{...priva
142880 74 65 20 24 70 72 65 66 69 78 4c 65 6e 67 74 68 73 50 73 72 34 20 3d 20 61 72 72 61 79 28 29 3b te.$prefixLengthsPsr4.=.array();
1428a0 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 69 78 44 69 72 73 50 73 72 34 20 3d 20 61 72 72 61 79 .private.$prefixDirsPsr4.=.array
1428c0 28 29 3b 0a 70 72 69 76 61 74 65 20 24 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 20 3d 20 ();.private.$fallbackDirsPsr4.=.
1428e0 61 72 72 61 79 28 29 3b 0a 0a 0a 20 70 72 69 76 61 74 65 20 24 70 72 65 66 69 78 65 73 50 73 72 array();....private.$prefixesPsr
142900 30 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 66 61 6c 6c 62 61 63 6b 44 69 0.=.array();.private.$fallbackDi
142920 72 73 50 73 72 30 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 75 73 65 49 rsPsr0.=.array();..private.$useI
142940 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 63 6c 61 ncludePath.=.false;.private.$cla
142960 73 73 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6c 61 73 73 ssMap.=.array();..private.$class
142980 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 70 75 62 6c 69 MapAuthoritative.=.false;..publi
1429a0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 66 69 78 65 73 28 29 0a 7b 0a 69 66 20 28 21 c.function.getPrefixes().{.if.(!
1429c0 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 29 29 20 7b 0a 72 65 empty($this->prefixesPsr0)).{.re
1429e0 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 72 72 61 79 turn.call_user_func_array('array
142a00 5f 6d 65 72 67 65 27 2c 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 29 3b 0a 7d _merge',.$this->prefixesPsr0);.}
142a20 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ..return.array();.}..public.func
142a40 74 69 6f 6e 20 67 65 74 50 72 65 66 69 78 65 73 50 73 72 34 28 29 0a 7b 0a 72 65 74 75 72 6e 20 tion.getPrefixesPsr4().{.return.
142a60 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 3b 0a 7d 0a 0a 70 75 62 6c 69 63 $this->prefixDirsPsr4;.}..public
142a80 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 61 6c 6c 62 61 63 6b 44 69 72 73 28 29 0a 7b 0a 72 65 .function.getFallbackDirs().{.re
142aa0 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 30 3b 0a 7d 0a turn.$this->fallbackDirsPsr0;.}.
142ac0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 61 6c 6c 62 61 63 6b 44 69 72 73 .public.function.getFallbackDirs
142ae0 50 73 72 34 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 Psr4().{.return.$this->fallbackD
142b00 69 72 73 50 73 72 34 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 irsPsr4;.}..public.function.getC
142b20 6c 61 73 73 4d 61 70 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d lassMap().{.return.$this->classM
142b40 61 70 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 43 6c 61 ap;.}.....public.function.addCla
142b60 73 73 4d 61 70 28 61 72 72 61 79 20 24 63 6c 61 73 73 4d 61 70 29 0a 7b 0a 69 66 20 28 24 74 68 ssMap(array.$classMap).{.if.($th
142b80 69 73 2d 3e 63 6c 61 73 73 4d 61 70 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 20 is->classMap).{.$this->classMap.
142ba0 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 2c 20 24 =.array_merge($this->classMap,.$
142bc0 63 6c 61 73 73 4d 61 70 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 63 6c 61 73 73 classMap);.}.else.{.$this->class
142be0 4d 61 70 20 3d 20 24 63 6c 61 73 73 4d 61 70 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 Map.=.$classMap;.}.}..........pu
142c00 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 24 70 72 65 66 69 78 2c 20 24 70 61 74 68 blic.function.add($prefix,.$path
142c20 73 2c 20 24 70 72 65 70 65 6e 64 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 70 72 65 s,.$prepend.=.false).{.if.(!$pre
142c40 66 69 78 29 20 7b 0a 69 66 20 28 24 70 72 65 70 65 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 fix).{.if.($prepend).{.$this->fa
142c60 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 30 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 28 61 llbackDirsPsr0.=.array_merge(.(a
142c80 72 72 61 79 29 20 24 70 61 74 68 73 2c 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 rray).$paths,.$this->fallbackDir
142ca0 73 50 73 72 30 0a 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 sPsr0.);.}.else.{.$this->fallbac
142cc0 6b 44 69 72 73 50 73 72 30 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 24 74 68 69 73 2d 3e kDirsPsr0.=.array_merge(.$this->
142ce0 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 30 2c 0a 28 61 72 72 61 79 29 20 24 70 61 74 68 73 fallbackDirsPsr0,.(array).$paths
142d00 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 66 69 72 73 74 20 3d 20 24 70 72 65 66 .);.}..return;.}..$first.=.$pref
142d20 69 78 5b 30 5d 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 ix[0];.if.(!isset($this->prefixe
142d40 73 50 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 29 29 20 7b 0a 24 74 68 69 73 sPsr0[$first][$prefix])).{.$this
142d60 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 20 ->prefixesPsr0[$first][$prefix].
142d80 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 69 66 20 =.(array).$paths;..return;.}.if.
142da0 28 24 70 72 65 70 65 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 ($prepend).{.$this->prefixesPsr0
142dc0 5b 24 66 69 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 [$first][$prefix].=.array_merge(
142de0 0a 28 61 72 72 61 79 29 20 24 70 61 74 68 73 2c 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 .(array).$paths,.$this->prefixes
142e00 50 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 0a 29 3b 0a 7d 20 65 6c 73 65 20 Psr0[$first][$prefix].);.}.else.
142e20 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 {.$this->prefixesPsr0[$first][$p
142e40 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 24 74 68 69 73 2d 3e 70 72 65 refix].=.array_merge(.$this->pre
142e60 66 69 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d 5b 24 70 72 65 66 69 78 5d 2c 0a 28 61 72 72 fixesPsr0[$first][$prefix],.(arr
142e80 61 79 29 20 24 70 61 74 68 73 0a 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ay).$paths.);.}.}............pub
142ea0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 50 73 72 34 28 24 70 72 65 66 69 78 2c 20 24 70 lic.function.addPsr4($prefix,.$p
142ec0 61 74 68 73 2c 20 24 70 72 65 70 65 6e 64 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 aths,.$prepend.=.false).{.if.(!$
142ee0 70 72 65 66 69 78 29 20 7b 0a 0a 20 69 66 20 28 24 70 72 65 70 65 6e 64 29 20 7b 0a 24 74 68 69 prefix).{...if.($prepend).{.$thi
142f00 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 s->fallbackDirsPsr4.=.array_merg
142f20 65 28 0a 28 61 72 72 61 79 29 20 24 70 61 74 68 73 2c 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 e(.(array).$paths,.$this->fallba
142f40 63 6b 44 69 72 73 50 73 72 34 0a 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 66 61 ckDirsPsr4.);.}.else.{.$this->fa
142f60 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 24 74 llbackDirsPsr4.=.array_merge(.$t
142f80 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 2c 0a 28 61 72 72 61 79 29 20 24 his->fallbackDirsPsr4,.(array).$
142fa0 70 61 74 68 73 0a 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 paths.);.}.}.elseif.(!isset($thi
142fc0 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d 29 29 20 7b 0a 0a s->prefixDirsPsr4[$prefix])).{..
142fe0 20 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 70 72 65 66 69 78 29 3b 0a 69 66 20 28 .$length.=.strlen($prefix);.if.(
143000 27 5c 5c 27 20 21 3d 3d 20 24 70 72 65 66 69 78 5b 24 6c 65 6e 67 74 68 20 2d 20 31 5d 29 20 7b '\\'.!==.$prefix[$length.-.1]).{
143020 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 .throw.new.\InvalidArgumentExcep
143040 74 69 6f 6e 28 22 41 20 6e 6f 6e 2d 65 6d 70 74 79 20 50 53 52 2d 34 20 70 72 65 66 69 78 20 6d tion("A.non-empty.PSR-4.prefix.m
143060 75 73 74 20 65 6e 64 20 77 69 74 68 20 61 20 6e 61 6d 65 73 70 61 63 65 20 73 65 70 61 72 61 74 ust.end.with.a.namespace.separat
143080 6f 72 2e 22 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 4c 65 6e 67 74 68 73 50 73 72 or.");.}.$this->prefixLengthsPsr
1430a0 34 5b 24 70 72 65 66 69 78 5b 30 5d 5d 5b 24 70 72 65 66 69 78 5d 20 3d 20 24 6c 65 6e 67 74 68 4[$prefix[0]][$prefix].=.$length
1430c0 3b 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d ;.$this->prefixDirsPsr4[$prefix]
1430e0 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 72 .=.(array).$paths;.}.elseif.($pr
143100 65 70 65 6e 64 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 epend).{...$this->prefixDirsPsr4
143120 5b 24 70 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 28 61 72 72 61 79 29 [$prefix].=.array_merge(.(array)
143140 20 24 70 61 74 68 73 2c 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 .$paths,.$this->prefixDirsPsr4[$
143160 70 72 65 66 69 78 5d 0a 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 70 72 65 prefix].);.}.else.{...$this->pre
143180 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 fixDirsPsr4[$prefix].=.array_mer
1431a0 67 65 28 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 ge(.$this->prefixDirsPsr4[$prefi
1431c0 78 5d 2c 0a 28 61 72 72 61 79 29 20 24 70 61 74 68 73 0a 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a x],.(array).$paths.);.}.}.......
1431e0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 28 24 70 72 65 66 69 78 2c 20 24 ..public.function.set($prefix,.$
143200 70 61 74 68 73 29 0a 7b 0a 69 66 20 28 21 24 70 72 65 66 69 78 29 20 7b 0a 24 74 68 69 73 2d 3e paths).{.if.(!$prefix).{.$this->
143220 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 30 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 fallbackDirsPsr0.=.(array).$path
143240 73 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 5b s;.}.else.{.$this->prefixesPsr0[
143260 24 70 72 65 66 69 78 5b 30 5d 5d 5b 24 70 72 65 66 69 78 5d 20 3d 20 28 61 72 72 61 79 29 20 24 $prefix[0]][$prefix].=.(array).$
143280 70 61 74 68 73 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 paths;.}.}...........public.func
1432a0 74 69 6f 6e 20 73 65 74 50 73 72 34 28 24 70 72 65 66 69 78 2c 20 24 70 61 74 68 73 29 0a 7b 0a tion.setPsr4($prefix,.$paths).{.
1432c0 69 66 20 28 21 24 70 72 65 66 69 78 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 if.(!$prefix).{.$this->fallbackD
1432e0 69 72 73 50 73 72 34 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b 0a 7d 20 65 6c 73 65 irsPsr4.=.(array).$paths;.}.else
143300 20 7b 0a 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 70 72 65 66 69 78 29 3b 0a 69 66 .{.$length.=.strlen($prefix);.if
143320 20 28 27 5c 5c 27 20 21 3d 3d 20 24 70 72 65 66 69 78 5b 24 6c 65 6e 67 74 68 20 2d 20 31 5d 29 .('\\'.!==.$prefix[$length.-.1])
143340 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 .{.throw.new.\InvalidArgumentExc
143360 65 70 74 69 6f 6e 28 22 41 20 6e 6f 6e 2d 65 6d 70 74 79 20 50 53 52 2d 34 20 70 72 65 66 69 78 eption("A.non-empty.PSR-4.prefix
143380 20 6d 75 73 74 20 65 6e 64 20 77 69 74 68 20 61 20 6e 61 6d 65 73 70 61 63 65 20 73 65 70 61 72 .must.end.with.a.namespace.separ
1433a0 61 74 6f 72 2e 22 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 4c 65 6e 67 74 68 73 50 ator.");.}.$this->prefixLengthsP
1433c0 73 72 34 5b 24 70 72 65 66 69 78 5b 30 5d 5d 5b 24 70 72 65 66 69 78 5d 20 3d 20 24 6c 65 6e 67 sr4[$prefix[0]][$prefix].=.$leng
1433e0 74 68 3b 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 th;.$this->prefixDirsPsr4[$prefi
143400 78 5d 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 x].=.(array).$paths;.}.}.......p
143420 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 ublic.function.setUseIncludePath
143440 28 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 73 65 49 6e ($useIncludePath).{.$this->useIn
143460 63 6c 75 64 65 50 61 74 68 20 3d 20 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 3b 0a 7d 0a 0a cludePath.=.$useIncludePath;.}..
143480 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 73 65 49 6e 63 6c ......public.function.getUseIncl
1434a0 75 64 65 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 udePath().{.return.$this->useInc
1434c0 6c 75 64 65 50 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ludePath;.}........public.functi
1434e0 6f 6e 20 73 65 74 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 63 6c 61 on.setClassMapAuthoritative($cla
143500 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6c 61 ssMapAuthoritative).{.$this->cla
143520 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 24 63 6c 61 73 73 4d 61 70 41 75 ssMapAuthoritative.=.$classMapAu
143540 74 68 6f 72 69 74 61 74 69 76 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 thoritative;.}.......public.func
143560 74 69 6f 6e 20 69 73 43 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 29 0a 7b tion.isClassMapAuthoritative().{
143580 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 .return.$this->classMapAuthorita
1435a0 74 69 76 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 tive;.}.......public.function.re
1435c0 67 69 73 74 65 72 28 24 70 72 65 70 65 6e 64 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 73 70 6c 5f 61 gister($prepend.=.false).{.spl_a
1435e0 75 74 6f 6c 6f 61 64 5f 72 65 67 69 73 74 65 72 28 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 6c utoload_register(array($this,.'l
143600 6f 61 64 43 6c 61 73 73 27 29 2c 20 74 72 75 65 2c 20 24 70 72 65 70 65 6e 64 29 3b 0a 7d 0a 0a oadClass'),.true,.$prepend);.}..
143620 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 72 65 67 69 73 74 65 72 28 29 0a ...public.function.unregister().
143640 7b 0a 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 75 6e 72 65 67 69 73 74 65 72 28 61 72 72 61 79 28 {.spl_autoload_unregister(array(
143660 24 74 68 69 73 2c 20 27 6c 6f 61 64 43 6c 61 73 73 27 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 $this,.'loadClass'));.}........p
143680 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 43 6c 61 73 73 28 24 63 6c 61 73 73 29 ublic.function.loadClass($class)
1436a0 0a 7b 0a 69 66 20 28 24 66 69 6c 65 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 46 69 6c 65 28 24 .{.if.($file.=.$this->findFile($
1436c0 63 6c 61 73 73 29 29 20 7b 0a 69 6e 63 6c 75 64 65 46 69 6c 65 28 24 66 69 6c 65 29 3b 0a 0a 72 class)).{.includeFile($file);..r
1436e0 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 eturn.true;.}.}.........public.f
143700 75 6e 63 74 69 6f 6e 20 66 69 6e 64 46 69 6c 65 28 24 63 6c 61 73 73 29 0a 7b 0a 0a 20 69 66 20 unction.findFile($class).{...if.
143720 28 27 5c 5c 27 20 3d 3d 20 24 63 6c 61 73 73 5b 30 5d 29 20 7b 0a 24 63 6c 61 73 73 20 3d 20 73 ('\\'.==.$class[0]).{.$class.=.s
143740 75 62 73 74 72 28 24 63 6c 61 73 73 2c 20 31 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 ubstr($class,.1);.}....if.(isset
143760 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 29 29 20 7b 0a 72 65 74 ($this->classMap[$class])).{.ret
143780 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 3b 0a 7d 0a 69 urn.$this->classMap[$class];.}.i
1437a0 66 20 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 29 f.($this->classMapAuthoritative)
1437c0 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 66 69 6c 65 20 3d 20 24 74 68 69 .{.return.false;.}..$file.=.$thi
1437e0 73 2d 3e 66 69 6e 64 46 69 6c 65 57 69 74 68 45 78 74 65 6e 73 69 6f 6e 28 24 63 6c 61 73 73 2c s->findFileWithExtension($class,
143800 20 27 2e 70 68 70 27 29 3b 0a 0a 0a 20 69 66 20 28 24 66 69 6c 65 20 3d 3d 3d 20 6e 75 6c 6c 20 .'.php');....if.($file.===.null.
143820 26 26 20 64 65 66 69 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 24 66 &&.defined('HHVM_VERSION')).{.$f
143840 69 6c 65 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 46 69 6c 65 57 69 74 68 45 78 74 65 6e 73 69 ile.=.$this->findFileWithExtensi
143860 6f 6e 28 24 63 6c 61 73 73 2c 20 27 2e 68 68 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 66 69 6c 65 20 on($class,.'.hh');.}..if.($file.
143880 3d 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 ===.null).{...return.$this->clas
1438a0 73 4d 61 70 5b 24 63 6c 61 73 73 5d 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 sMap[$class].=.false;.}..return.
1438c0 24 66 69 6c 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 46 $file;.}..private.function.findF
1438e0 69 6c 65 57 69 74 68 45 78 74 65 6e 73 69 6f 6e 28 24 63 6c 61 73 73 2c 20 24 65 78 74 29 0a 7b ileWithExtension($class,.$ext).{
143900 0a 0a 20 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 34 20 3d 20 73 74 72 74 72 28 24 63 6c 61 ...$logicalPathPsr4.=.strtr($cla
143920 73 73 2c 20 27 5c 5c 27 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 2e ss,.'\\',.DIRECTORY_SEPARATOR)..
143940 20 24 65 78 74 3b 0a 0a 24 66 69 72 73 74 20 3d 20 24 63 6c 61 73 73 5b 30 5d 3b 0a 69 66 20 28 .$ext;..$first.=.$class[0];.if.(
143960 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 4c 65 6e 67 74 68 73 50 73 72 34 5b 24 isset($this->prefixLengthsPsr4[$
143980 66 69 72 73 74 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 65 66 69 first])).{.foreach.($this->prefi
1439a0 78 4c 65 6e 67 74 68 73 50 73 72 34 5b 24 66 69 72 73 74 5d 20 61 73 20 24 70 72 65 66 69 78 20 xLengthsPsr4[$first].as.$prefix.
1439c0 3d 3e 20 24 6c 65 6e 67 74 68 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 =>.$length).{.if.(0.===.strpos($
1439e0 63 6c 61 73 73 2c 20 24 70 72 65 66 69 78 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 class,.$prefix)).{.foreach.($thi
143a00 73 2d 3e 70 72 65 66 69 78 44 69 72 73 50 73 72 34 5b 24 70 72 65 66 69 78 5d 20 61 73 20 24 64 s->prefixDirsPsr4[$prefix].as.$d
143a20 69 72 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 20 3d 20 24 64 ir).{.if.(file_exists($file.=.$d
143a40 69 72 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 73 75 62 73 74 ir...DIRECTORY_SEPARATOR...subst
143a60 72 28 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 34 2c 20 24 6c 65 6e 67 74 68 29 29 29 20 7b r($logicalPathPsr4,.$length))).{
143a80 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 66 6f 72 65 .return.$file;.}.}.}.}.}....fore
143aa0 61 63 68 20 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 34 20 61 73 20 ach.($this->fallbackDirsPsr4.as.
143ac0 24 64 69 72 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 20 3d 20 $dir).{.if.(file_exists($file.=.
143ae0 24 64 69 72 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 6c 6f $dir...DIRECTORY_SEPARATOR...$lo
143b00 67 69 63 61 6c 50 61 74 68 50 73 72 34 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a gicalPathPsr4)).{.return.$file;.
143b20 7d 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 72 72 }.}....if.(false.!==.$pos.=.strr
143b40 70 6f 73 28 24 63 6c 61 73 73 2c 20 27 5c 5c 27 29 29 20 7b 0a 0a 20 24 6c 6f 67 69 63 61 6c 50 pos($class,.'\\')).{...$logicalP
143b60 61 74 68 50 73 72 30 20 3d 20 73 75 62 73 74 72 28 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 athPsr0.=.substr($logicalPathPsr
143b80 34 2c 20 30 2c 20 24 70 6f 73 20 2b 20 31 29 0a 2e 20 73 74 72 74 72 28 73 75 62 73 74 72 28 24 4,.0,.$pos.+.1)...strtr(substr($
143ba0 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 34 2c 20 24 70 6f 73 20 2b 20 31 29 2c 20 27 5f 27 2c logicalPathPsr4,.$pos.+.1),.'_',
143bc0 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a .DIRECTORY_SEPARATOR);.}.else.{.
143be0 0a 20 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 30 20 3d 20 73 74 72 74 72 28 24 63 6c 61 73 ..$logicalPathPsr0.=.strtr($clas
143c00 73 2c 20 27 5f 27 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 2e 20 24 s,.'_',.DIRECTORY_SEPARATOR)...$
143c20 65 78 74 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 ext;.}..if.(isset($this->prefixe
143c40 73 50 73 72 30 5b 24 66 69 72 73 74 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 sPsr0[$first])).{.foreach.($this
143c60 2d 3e 70 72 65 66 69 78 65 73 50 73 72 30 5b 24 66 69 72 73 74 5d 20 61 73 20 24 70 72 65 66 69 ->prefixesPsr0[$first].as.$prefi
143c80 78 20 3d 3e 20 24 64 69 72 73 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 x.=>.$dirs).{.if.(0.===.strpos($
143ca0 63 6c 61 73 73 2c 20 24 70 72 65 66 69 78 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 69 72 class,.$prefix)).{.foreach.($dir
143cc0 73 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 s.as.$dir).{.if.(file_exists($fi
143ce0 6c 65 20 3d 20 24 64 69 72 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 le.=.$dir...DIRECTORY_SEPARATOR.
143d00 2e 20 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 73 72 30 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 ..$logicalPathPsr0)).{.return.$f
143d20 69 6c 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 ile;.}.}.}.}.}....foreach.($this
143d40 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 50 73 72 30 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 ->fallbackDirsPsr0.as.$dir).{.if
143d60 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 20 3d 20 24 64 69 72 20 2e 20 44 49 52 .(file_exists($file.=.$dir...DIR
143d80 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 6c 6f 67 69 63 61 6c 50 61 74 68 50 ECTORY_SEPARATOR...$logicalPathP
143da0 73 72 30 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 sr0)).{.return.$file;.}.}....if.
143dc0 28 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 20 26 26 20 24 66 69 6c 65 20 ($this->useIncludePath.&&.$file.
143de0 3d 20 73 74 72 65 61 6d 5f 72 65 73 6f 6c 76 65 5f 69 6e 63 6c 75 64 65 5f 70 61 74 68 28 24 6c =.stream_resolve_include_path($l
143e00 6f 67 69 63 61 6c 50 61 74 68 50 73 72 30 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 3b ogicalPathPsr0)).{.return.$file;
143e20 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 46 69 6c .}.}.}.......function.includeFil
143e40 65 28 24 66 69 6c 65 29 0a 7b 0a 69 6e 63 6c 75 64 65 20 24 66 69 6c 65 3b 0a 7d 0a 23 23 0a 23 e($file).{.include.$file;.}.##.#
143e60 23 20 42 75 6e 64 6c 65 20 6f 66 20 43 41 20 52 6f 6f 74 20 43 65 72 74 69 66 69 63 61 74 65 73 #.Bundle.of.CA.Root.Certificates
143e80 0a 23 23 0a 23 23 20 43 65 72 74 69 66 69 63 61 74 65 20 64 61 74 61 20 66 72 6f 6d 20 4d 6f 7a .##.##.Certificate.data.from.Moz
143ea0 69 6c 6c 61 20 61 73 20 6f 66 3a 20 57 65 64 20 4f 63 74 20 32 38 20 32 32 3a 34 32 3a 34 32 20 illa.as.of:.Wed.Oct.28.22:42:42.
143ec0 32 30 31 35 0a 23 23 0a 23 23 20 54 68 69 73 20 69 73 20 61 20 62 75 6e 64 6c 65 20 6f 66 20 58 2015.##.##.This.is.a.bundle.of.X
143ee0 2e 35 30 39 20 63 65 72 74 69 66 69 63 61 74 65 73 20 6f 66 20 70 75 62 6c 69 63 20 43 65 72 74 .509.certificates.of.public.Cert
143f00 69 66 69 63 61 74 65 20 41 75 74 68 6f 72 69 74 69 65 73 0a 23 23 20 28 43 41 29 2e 20 54 68 65 ificate.Authorities.##.(CA)..The
143f20 73 65 20 77 65 72 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 65 78 74 72 61 63 74 65 64 20 se.were.automatically.extracted.
143f40 66 72 6f 6d 20 4d 6f 7a 69 6c 6c 61 27 73 20 72 6f 6f 74 20 63 65 72 74 69 66 69 63 61 74 65 73 from.Mozilla's.root.certificates
143f60 0a 23 23 20 66 69 6c 65 20 28 63 65 72 74 64 61 74 61 2e 74 78 74 29 2e 20 20 54 68 69 73 20 66 .##.file.(certdata.txt)...This.f
143f80 69 6c 65 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 61 74 0a 23 23 20 68 74 74 70 73 3a 2f 2f 72 ile.can.be.found.at.##.https://r
143fa0 61 77 2e 67 69 74 68 75 62 75 73 65 72 63 6f 6e 74 65 6e 74 2e 63 6f 6d 2f 62 61 67 64 65 72 2f aw.githubusercontent.com/bagder/
143fc0 63 61 2d 62 75 6e 64 6c 65 2f 6d 61 73 74 65 72 2f 63 61 2d 62 75 6e 64 6c 65 2e 63 72 74 0a 23 ca-bundle/master/ca-bundle.crt.#
143fe0 23 0a 23 23 20 49 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 63 65 72 74 69 66 69 63 61 74 65 #.##.It.contains.the.certificate
144000 73 20 69 6e 20 50 45 4d 20 66 6f 72 6d 61 74 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 0a 23 23 s.in.PEM.format.and.therefore.##
144020 20 63 61 6e 20 62 65 20 64 69 72 65 63 74 6c 79 20 75 73 65 64 20 77 69 74 68 20 63 75 72 6c 20 .can.be.directly.used.with.curl.
144040 2f 20 6c 69 62 63 75 72 6c 20 2f 20 70 68 70 5f 63 75 72 6c 2c 20 6f 72 20 77 69 74 68 0a 23 23 /.libcurl./.php_curl,.or.with.##
144060 20 61 6e 20 41 70 61 63 68 65 2b 6d 6f 64 5f 73 73 6c 20 77 65 62 73 65 72 76 65 72 20 66 6f 72 .an.Apache+mod_ssl.webserver.for
144080 20 53 53 4c 20 63 6c 69 65 6e 74 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 2e 0a 23 23 20 4a .SSL.client.authentication..##.J
1440a0 75 73 74 20 63 6f 6e 66 69 67 75 72 65 20 74 68 69 73 20 66 69 6c 65 20 61 73 20 74 68 65 20 53 ust.configure.this.file.as.the.S
1440c0 53 4c 43 41 43 65 72 74 69 66 69 63 61 74 65 46 69 6c 65 2e 0a 23 23 0a 23 23 20 43 6f 6e 76 65 SLCACertificateFile..##.##.Conve
1440e0 72 73 69 6f 6e 20 64 6f 6e 65 20 77 69 74 68 20 6d 6b 2d 63 61 2d 62 75 6e 64 6c 65 2e 70 6c 20 rsion.done.with.mk-ca-bundle.pl.
144100 76 65 72 73 69 6f 6e 20 31 2e 32 35 2e 0a 23 23 20 53 48 41 31 3a 20 36 64 37 64 32 66 30 61 34 version.1.25..##.SHA1:.6d7d2f0a4
144120 66 61 65 35 38 37 65 37 34 33 31 62 65 31 39 31 61 30 38 31 61 63 31 32 35 37 64 33 30 30 61 0a fae587e7431be191a081ac1257d300a.
144140 23 23 0a 0a 0a 45 71 75 69 66 61 78 20 53 65 63 75 72 65 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d ##...Equifax.Secure.CA.=========
144160 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
144180 2d 2d 2d 2d 0a 4d 49 49 44 49 44 43 43 41 6f 6d 67 41 77 49 42 41 67 49 45 4e 64 37 30 7a 7a 41 ----.MIIDIDCCAomgAwIBAgIENd70zzA
1441a0 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 4f 4d 51 73 77 43 51 59 44 56 51 51 NBgkqhkiG9w0BAQUFADBOMQswCQYDVQQ
1441c0 47 45 77 4a 56 55 7a 45 51 4d 41 34 47 41 31 55 45 0a 43 68 4d 48 52 58 46 31 61 57 5a 68 65 44 GEwJVUzEQMA4GA1UE.ChMHRXF1aWZheD
1441e0 45 74 4d 43 73 47 41 31 55 45 43 78 4d 6b 52 58 46 31 61 57 5a 68 65 43 42 54 5a 57 4e 31 63 6d EtMCsGA1UECxMkRXF1aWZheCBTZWN1cm
144200 55 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 55 67 51 58 56 30 61 47 39 79 61 58 52 35 0a 4d UgQ2VydGlmaWNhdGUgQXV0aG9yaXR5.M
144220 42 34 58 44 54 6b 34 4d 44 67 79 4d 6a 45 32 4e 44 45 31 4d 56 6f 58 44 54 45 34 4d 44 67 79 4d B4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyM
144240 6a 45 32 4e 44 45 31 4d 56 6f 77 54 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 45 jE2NDE1MVowTjELMAkGA1UEBhMCVVMxE
144260 44 41 4f 42 67 4e 56 42 41 6f 54 0a 42 30 56 78 64 57 6c 6d 59 58 67 78 4c 54 41 72 42 67 4e 56 DAOBgNVBAoT.B0VxdWlmYXgxLTArBgNV
144280 42 41 73 54 4a 45 56 78 64 57 6c 6d 59 58 67 67 55 32 56 6a 64 58 4a 6c 49 45 4e 6c 63 6e 52 70 BAsTJEVxdWlmYXggU2VjdXJlIENlcnRp
1442a0 5a 6d 6c 6a 59 58 52 6c 49 45 46 31 64 47 68 76 63 6d 6c 30 65 54 43 42 0a 6e 7a 41 4e 42 67 6b ZmljYXRlIEF1dGhvcml0eTCB.nzANBgk
1442c0 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 42 6a 51 41 77 67 59 6b 43 67 59 45 41 77 56 32 qhkiG9w0BAQEFAAOBjQAwgYkCgYEAwV2
1442e0 78 57 47 63 49 59 75 36 67 6d 69 30 66 43 47 32 52 46 47 69 59 43 68 37 2b 32 67 52 76 45 34 52 xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4R
144300 69 49 63 50 52 0a 66 4d 36 66 42 65 43 34 41 66 42 4f 4e 4f 7a 69 69 70 55 45 5a 4b 7a 78 61 31 iIcPR.fM6fBeC4AfBONOziipUEZKzxa1
144320 4e 66 42 62 50 4c 5a 34 43 2f 51 67 4b 4f 2f 74 30 42 43 65 7a 68 41 42 52 50 2f 50 76 77 44 4e NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN
144340 31 44 75 6c 73 72 34 52 2b 41 63 4a 6b 56 56 35 4d 57 0a 38 51 2b 58 61 72 66 43 61 43 4d 63 7a 1Dulsr4R+AcJkVV5MW.8Q+XarfCaCMcz
144360 45 31 5a 4d 4b 78 52 48 6a 75 76 4b 39 62 75 59 30 56 37 78 64 6c 66 55 4e 4c 6a 55 41 38 36 69 E1ZMKxRHjuvK9buY0V7xdlfUNLjUA86i
144380 4f 65 2f 46 50 33 67 78 37 6b 43 41 77 45 41 41 61 4f 43 41 51 6b 77 67 67 45 46 4d 48 41 47 0a Oe/FP3gx7kCAwEAAaOCAQkwggEFMHAG.
1443a0 41 31 55 64 48 77 52 70 4d 47 63 77 5a 61 42 6a 6f 47 47 6b 58 7a 42 64 4d 51 73 77 43 51 59 44 A1UdHwRpMGcwZaBjoGGkXzBdMQswCQYD
1443c0 56 51 51 47 45 77 4a 56 55 7a 45 51 4d 41 34 47 41 31 55 45 43 68 4d 48 52 58 46 31 61 57 5a 68 VQQGEwJVUzEQMA4GA1UEChMHRXF1aWZh
1443e0 65 44 45 74 4d 43 73 47 41 31 55 45 0a 43 78 4d 6b 52 58 46 31 61 57 5a 68 65 43 42 54 5a 57 4e eDEtMCsGA1UE.CxMkRXF1aWZheCBTZWN
144400 31 63 6d 55 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 55 67 51 58 56 30 61 47 39 79 61 58 52 1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR
144420 35 4d 51 30 77 43 77 59 44 56 51 51 44 45 77 52 44 55 6b 77 78 4d 42 6f 47 0a 41 31 55 64 45 41 5MQ0wCwYDVQQDEwRDUkwxMBoG.A1UdEA
144440 51 54 4d 42 47 42 44 7a 49 77 4d 54 67 77 4f 44 49 79 4d 54 59 30 4d 54 55 78 57 6a 41 4c 42 67 QTMBGBDzIwMTgwODIyMTY0MTUxWjALBg
144460 4e 56 48 51 38 45 42 41 4d 43 41 51 59 77 48 77 59 44 56 52 30 6a 42 42 67 77 46 6f 41 55 53 4f NVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSO
144480 5a 6f 2b 53 76 53 0a 73 70 58 58 52 39 67 6a 49 42 42 50 4d 35 69 51 6e 39 51 77 48 51 59 44 56 Zo+SvS.spXXR9gjIBBPM5iQn9QwHQYDV
1444a0 52 30 4f 42 42 59 45 46 45 6a 6d 61 50 6b 72 30 72 4b 56 31 30 66 59 49 79 41 51 54 7a 4f 59 6b R0OBBYEFEjmaPkr0rKV10fYIyAQTzOYk
1444c0 4a 2f 55 4d 41 77 47 41 31 55 64 45 77 51 46 4d 41 4d 42 0a 41 66 38 77 47 67 59 4a 4b 6f 5a 49 J/UMAwGA1UdEwQFMAMB.Af8wGgYJKoZI
1444e0 68 76 5a 39 42 30 45 41 42 41 30 77 43 78 73 46 56 6a 4d 75 4d 47 4d 44 41 67 62 41 4d 41 30 47 hvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0G
144500 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 47 42 41 46 6a 4f 4b 65 72 38 39 39 36 31 CSqGSIb3DQEBBQUAA4GBAFjOKer89961
144520 0a 7a 67 4b 35 46 37 57 46 30 62 6e 6a 34 4a 58 4d 4a 54 45 4e 41 4b 61 53 62 6e 2b 32 6b 6d 4f .zgK5F7WF0bnj4JXMJTENAKaSbn+2kmO
144540 65 55 4a 58 52 6d 6d 2f 6b 45 64 35 6a 68 57 36 59 37 71 6a 2f 57 73 6a 54 56 62 4a 6d 63 56 66 eUJXRmm/kEd5jhW6Y7qj/WsjTVbJmcVf
144560 65 77 43 48 72 50 53 71 6e 49 30 6b 42 0a 42 49 5a 43 65 2f 7a 75 66 36 49 57 55 72 56 6e 5a 39 ewCHrPSqnI0kB.BIZCe/zuf6IWUrVnZ9
144580 4e 41 32 7a 73 6d 57 4c 49 6f 64 7a 32 75 46 48 64 68 31 76 6f 71 5a 69 65 67 44 66 71 6e 63 31 NA2zsmWLIodz2uFHdh1voqZiegDfqnc1
1445a0 7a 71 63 50 47 55 49 57 56 45 58 2f 72 38 37 79 6c 6f 71 61 4b 48 65 65 39 35 0a 37 30 2b 73 42 zqcPGUIWVEX/r87yloqaKHee95.70+sB
1445c0 33 63 34 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 3c4.-----END.CERTIFICATE-----..G
1445e0 6c 6f 62 61 6c 53 69 67 6e 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d lobalSign.Root.CA.==============
144600 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d ====.-----BEGIN.CERTIFICATE-----
144620 0a 4d 49 49 44 64 54 43 43 41 6c 32 67 41 77 49 42 41 67 49 4c 42 41 41 41 41 41 41 42 46 55 74 .MIIDdTCCAl2gAwIBAgILBAAAAAABFUt
144640 61 77 35 51 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 56 7a 45 4c 4d 41 6b aw5QwDQYJKoZIhvcNAQEFBQAwVzELMAk
144660 47 41 31 55 45 42 68 4d 43 51 6b 55 78 0a 47 54 41 58 42 67 4e 56 42 41 6f 54 45 45 64 73 62 32 GA1UEBhMCQkUx.GTAXBgNVBAoTEEdsb2
144680 4a 68 62 46 4e 70 5a 32 34 67 62 6e 59 74 63 32 45 78 45 44 41 4f 42 67 4e 56 42 41 73 54 42 31 JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1
1446a0 4a 76 62 33 51 67 51 30 45 78 47 7a 41 5a 42 67 4e 56 42 41 4d 54 45 6b 64 73 0a 62 32 4a 68 62 Jvb3QgQ0ExGzAZBgNVBAMTEkds.b2Jhb
1446c0 46 4e 70 5a 32 34 67 55 6d 39 76 64 43 42 44 51 54 41 65 46 77 30 35 4f 44 41 35 4d 44 45 78 4d FNpZ24gUm9vdCBDQTAeFw05ODA5MDExM
1446e0 6a 41 77 4d 44 42 61 46 77 30 79 4f 44 41 78 4d 6a 67 78 4d 6a 41 77 4d 44 42 61 4d 46 63 78 43 jAwMDBaFw0yODAxMjgxMjAwMDBaMFcxC
144700 7a 41 4a 42 67 4e 56 0a 42 41 59 54 41 6b 4a 46 4d 52 6b 77 46 77 59 44 56 51 51 4b 45 78 42 48 zAJBgNV.BAYTAkJFMRkwFwYDVQQKExBH
144720 62 47 39 69 59 57 78 54 61 57 64 75 49 47 35 32 4c 58 4e 68 4d 52 41 77 44 67 59 44 56 51 51 4c bG9iYWxTaWduIG52LXNhMRAwDgYDVQQL
144740 45 77 64 53 62 32 39 30 49 45 4e 42 4d 52 73 77 47 51 59 44 0a 56 51 51 44 45 78 4a 48 62 47 39 EwdSb290IENBMRswGQYD.VQQDExJHbG9
144760 69 59 57 78 54 61 57 64 75 49 46 4a 76 62 33 51 67 51 30 45 77 67 67 45 69 4d 41 30 47 43 53 71 iYWxTaWduIFJvb3QgQ0EwggEiMA0GCSq
144780 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 44 GSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD
1447a0 61 0a 44 75 61 5a 6a 63 36 6a 34 30 2b 4b 66 76 76 78 69 34 4d 6c 61 2b 70 49 48 2f 45 71 73 4c a.DuaZjc6j40+Kfvvxi4Mla+pIH/EqsL
1447c0 6d 56 45 51 53 39 38 47 50 52 34 6d 64 6d 7a 78 7a 64 7a 78 74 49 4b 2b 36 4e 69 59 36 61 72 79 mVEQS98GPR4mdmzxzdzxtIK+6NiY6ary
1447e0 6d 41 5a 61 76 70 78 79 30 53 79 36 73 63 0a 54 48 41 48 6f 54 30 4b 4d 4d 30 56 6a 55 2f 34 33 mAZavpxy0Sy6sc.THAHoT0KMM0VjU/43
144800 64 53 4d 55 42 55 63 37 31 44 75 78 43 37 33 2f 4f 6c 53 38 70 46 39 34 47 33 56 4e 54 43 4f 58 dSMUBUc71DuxC73/OlS8pF94G3VNTCOX
144820 6b 4e 7a 38 6b 48 70 31 57 72 6a 73 6f 6b 36 56 6a 6b 34 62 77 59 38 69 47 6c 62 0a 4b 6b 33 46 kNz8kHp1Wrjsok6Vjk4bwY8iGlb.Kk3F
144840 70 31 53 34 62 49 6e 4d 6d 2f 6b 38 79 75 58 39 69 66 55 53 50 4a 4a 34 6c 74 62 63 64 47 36 54 p1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6T
144860 52 47 48 52 6a 63 64 47 73 6e 55 4f 68 75 67 5a 69 74 56 74 62 4e 56 34 46 70 57 69 36 63 67 4b RGHRjcdGsnUOhugZitVtbNV4FpWi6cgK
144880 4f 4f 76 79 4a 42 4e 50 0a 63 31 53 54 45 34 55 36 47 37 77 65 4e 4c 57 4c 42 59 79 35 64 34 75 OOvyJBNP.c1STE4U6G7weNLWLBYy5d4u
1448a0 78 32 78 38 67 6b 61 73 4a 55 32 36 51 7a 6e 73 33 64 4c 6c 77 52 35 45 69 55 57 4d 57 65 61 36 x2x8gkasJU26Qzns3dLlwR5EiUWMWea6
1448c0 78 72 6b 45 6d 43 4d 67 5a 4b 39 46 47 71 6b 6a 57 5a 43 72 58 0a 67 7a 54 2f 4c 43 72 42 62 42 xrkEmCMgZK9FGqkjWZCrX.gzT/LCrBbB
1448e0 6c 44 53 67 65 46 35 39 4e 38 39 69 46 6f 37 2b 72 79 55 70 39 2f 6b 35 44 50 41 67 4d 42 41 41 lDSgeF59N89iFo7+ryUp9/k5DPAgMBAA
144900 47 6a 51 6a 42 41 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 50 42 67 GjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBg
144920 4e 56 0a 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 30 47 41 31 55 64 44 67 51 57 42 NV.HRMBAf8EBTADAQH/MB0GA1UdDgQWB
144940 42 52 67 65 32 59 61 52 51 32 58 79 6f 6c 51 4c 33 30 45 7a 54 53 6f 2f 2f 7a 39 53 7a 41 4e 42 BRge2YaRQ2XyolQL30EzTSo//z9SzANB
144960 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 0a 41 41 4f 43 41 51 45 41 31 6e 50 6e 66 45 39 32 gkqhkiG9w0BAQUF.AAOCAQEA1nPnfE92
144980 30 49 32 2f 37 4c 71 69 76 6a 54 46 4b 44 4b 31 66 50 78 73 6e 43 77 72 76 51 6d 65 55 37 39 72 0I2/7LqivjTFKDK1fPxsnCwrvQmeU79r
1449a0 58 71 6f 52 53 4c 62 6c 43 4b 4f 7a 79 6a 31 68 54 64 4e 47 43 62 4d 2b 77 36 44 6a 0a 59 31 55 XqoRSLblCKOzyj1hTdNGCbM+w6Dj.Y1U
1449c0 62 38 72 72 76 72 54 6e 68 51 37 6b 34 6f 2b 59 76 69 69 59 37 37 36 42 51 56 76 6e 47 43 76 30 b8rrvrTnhQ7k4o+YviiY776BQVvnGCv0
1449e0 34 7a 63 51 4c 63 46 47 55 6c 35 67 45 33 38 4e 66 6c 4e 55 56 79 52 52 42 6e 4d 52 64 64 57 51 4zcQLcFGUl5gE38NflNUVyRRBnMRddWQ
144a00 56 44 66 39 56 4d 4f 79 47 0a 6a 2f 38 4e 37 79 79 35 59 30 62 32 71 76 7a 66 76 47 6e 39 4c 68 VDf9VMOyG.j/8N7yy5Y0b2qvzfvGn9Lh
144a20 4a 49 5a 4a 72 67 6c 66 43 6d 37 79 6d 50 41 62 45 56 74 51 77 64 70 66 35 70 4c 47 6b 6b 65 42 JIZJrglfCm7ymPAbEVtQwdpf5pLGkkeB
144a40 36 7a 70 78 78 78 59 75 37 4b 79 4a 65 73 46 31 32 4b 77 76 68 48 0a 68 6d 34 71 78 46 59 78 6c 6zpxxxYu7KyJesF12KwvhH.hm4qxFYxl
144a60 64 42 6e 69 59 55 72 2b 57 79 6d 58 55 61 64 44 4b 71 43 35 4a 6c 52 33 58 43 33 32 31 59 39 59 dBniYUr+WymXUadDKqC5JlR3XC321Y9Y
144a80 65 52 71 34 56 7a 57 39 76 34 39 33 6b 48 4d 42 36 35 6a 55 72 39 54 55 2f 51 72 36 63 66 39 74 eRq4VzW9v493kHMB65jUr9TU/Qr6cf9t
144aa0 76 65 43 0a 58 34 58 53 51 52 6a 62 67 62 4d 45 48 4d 55 66 70 49 42 76 46 53 44 4a 33 67 79 49 veC.X4XSQRjbgbMEHMUfpIBvFSDJ3gyI
144ac0 43 68 33 57 5a 6c 58 69 2f 45 6a 4a 4b 53 5a 70 34 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 Ch3WZlXi/EjJKSZp4A==.-----END.CE
144ae0 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 6c 6f 62 61 6c 53 69 67 6e 20 52 6f 6f 74 20 RTIFICATE-----..GlobalSign.Root.
144b00 43 41 20 2d 20 52 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a CA.-.R2.=======================.
144b20 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 -----BEGIN.CERTIFICATE-----.MIID
144b40 75 6a 43 43 41 71 4b 67 41 77 49 42 41 67 49 4c 42 41 41 41 41 41 41 42 44 34 59 6d 35 67 30 77 ujCCAqKgAwIBAgILBAAAAAABD4Ym5g0w
144b60 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 54 44 45 67 4d 42 34 47 41 31 55 45 DQYJKoZIhvcNAQEFBQAwTDEgMB4GA1UE
144b80 43 78 4d 58 52 32 78 76 0a 59 6d 46 73 55 32 6c 6e 62 69 42 53 62 32 39 30 49 45 4e 42 49 43 30 CxMXR2xv.YmFsU2lnbiBSb290IENBIC0
144ba0 67 55 6a 49 78 45 7a 41 52 42 67 4e 56 42 41 6f 54 43 6b 64 73 62 32 4a 68 62 46 4e 70 5a 32 34 gUjIxEzARBgNVBAoTCkdsb2JhbFNpZ24
144bc0 78 45 7a 41 52 42 67 4e 56 42 41 4d 54 43 6b 64 73 62 32 4a 68 0a 62 46 4e 70 5a 32 34 77 48 68 xEzARBgNVBAMTCkdsb2Jh.bFNpZ24wHh
144be0 63 4e 4d 44 59 78 4d 6a 45 31 4d 44 67 77 4d 44 41 77 57 68 63 4e 4d 6a 45 78 4d 6a 45 31 4d 44 cNMDYxMjE1MDgwMDAwWhcNMjExMjE1MD
144c00 67 77 4d 44 41 77 57 6a 42 4d 4d 53 41 77 48 67 59 44 56 51 51 4c 45 78 64 48 62 47 39 69 59 57 gwMDAwWjBMMSAwHgYDVQQLExdHbG9iYW
144c20 78 54 0a 61 57 64 75 49 46 4a 76 62 33 51 67 51 30 45 67 4c 53 42 53 4d 6a 45 54 4d 42 45 47 41 xT.aWduIFJvb3QgQ0EgLSBSMjETMBEGA
144c40 31 55 45 43 68 4d 4b 52 32 78 76 59 6d 46 73 55 32 6c 6e 62 6a 45 54 4d 42 45 47 41 31 55 45 41 1UEChMKR2xvYmFsU2lnbjETMBEGA1UEA
144c60 78 4d 4b 52 32 78 76 59 6d 46 73 55 32 6c 6e 0a 62 6a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 xMKR2xvYmFsU2ln.bjCCASIwDQYJKoZI
144c80 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4b 62 50 hvcNAQEBBQADggEPADCCAQoCggEBAKbP
144ca0 4a 41 36 2b 4c 6d 38 6f 6d 55 56 43 78 4b 73 2b 49 56 53 62 43 39 4e 2f 68 48 44 36 0a 45 72 50 JA6+Lm8omUVCxKs+IVSbC9N/hHD6.ErP
144cc0 4c 76 34 64 66 78 6e 2b 47 30 37 49 77 58 4e 62 39 72 66 46 37 33 4f 58 34 59 4a 59 4a 6b 68 44 Lv4dfxn+G07IwXNb9rfF73OX4YJYJkhD
144ce0 31 30 46 50 65 2b 33 74 2b 63 34 69 73 55 6f 68 37 53 71 62 4b 53 61 5a 65 71 4b 65 4d 57 68 47 10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG
144d00 38 65 6f 4c 72 76 6f 7a 70 0a 73 36 79 57 4a 51 65 58 53 70 6b 71 42 79 2b 30 48 6e 65 2f 69 67 8eoLrvozp.s6yWJQeXSpkqBy+0Hne/ig
144d20 2b 31 41 6e 77 62 6c 72 6a 46 75 54 6f 73 76 4e 59 53 75 65 74 5a 66 65 4c 51 42 6f 5a 66 58 6b +1AnwblrjFuTosvNYSuetZfeLQBoZfXk
144d40 6c 71 74 54 6c 65 69 44 54 73 76 48 67 4d 43 4a 69 45 62 4b 6a 4e 0a 53 37 53 67 66 51 78 35 54 lqtTleiDTsvHgMCJiEbKjN.S7SgfQx5T
144d60 66 43 34 4c 63 73 68 79 74 56 73 57 33 33 68 6f 43 6d 45 6f 66 6e 54 6c 45 6e 4c 4a 47 4b 52 49 fC4LcshytVsW33hoCmEofnTlEnLJGKRI
144d80 4c 7a 64 43 39 58 5a 7a 50 6e 71 4a 77 6f 72 63 35 48 47 6e 52 75 73 79 4d 76 6f 34 4b 44 30 4c LzdC9XZzPnqJworc5HGnRusyMvo4KD0L
144da0 35 43 4c 0a 54 66 75 77 4e 68 76 32 47 58 71 46 34 47 33 79 59 52 4f 49 58 4a 2f 67 6b 77 70 52 5CL.TfuwNhv2GXqF4G3yYROIXJ/gkwpR
144dc0 6c 34 70 61 7a 71 2b 72 31 66 65 71 43 61 70 67 76 64 7a 5a 58 39 39 79 71 57 41 54 58 67 41 42 l4pazq+r1feqCapgvdzZX99yqWATXgAB
144de0 79 55 72 36 50 36 54 71 42 77 4d 68 41 6f 36 43 0a 79 67 50 43 6d 34 38 43 41 77 45 41 41 61 4f yUr6P6TqBwMhAo6C.ygPCm48CAwEAAaO
144e00 42 6e 44 43 42 6d 54 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 44 77 59 BnDCBmTAOBgNVHQ8BAf8EBAMCAQYwDwY
144e20 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 45 0a 46 67 DVR0TAQH/BAUwAwEB/zAdBgNVHQ4E.Fg
144e40 51 55 6d 2b 49 48 56 32 63 63 48 73 42 71 42 74 35 5a 74 4a 6f 74 33 39 77 5a 68 69 34 77 4e 67 QUm+IHV2ccHsBqBt5ZtJot39wZhi4wNg
144e60 59 44 56 52 30 66 42 43 38 77 4c 54 41 72 6f 43 6d 67 4a 34 59 6c 61 48 52 30 63 44 6f 76 4c 32 YDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2
144e80 4e 79 62 43 35 6e 62 47 39 69 0a 59 57 78 7a 61 57 64 75 4c 6d 35 6c 64 43 39 79 62 32 39 30 4c NybC5nbG9i.YWxzaWduLm5ldC9yb290L
144ea0 58 49 79 4c 6d 4e 79 62 44 41 66 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 53 62 34 67 64 58 5a XIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZ
144ec0 78 77 65 77 47 6f 47 33 6c 6d 30 6d 69 33 66 33 42 6d 47 4c 6a 41 4e 0a 42 67 6b 71 68 6b 69 47 xwewGoG3lm0mi3f3BmGLjAN.BgkqhkiG
144ee0 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 6d 59 46 54 68 78 78 6f 6c 34 61 52 37 4f 42 4b 9w0BAQUFAAOCAQEAmYFThxxol4aR7OBK
144f00 75 45 51 4c 71 34 47 73 4a 30 2f 57 77 62 67 63 51 33 69 7a 44 4a 72 38 36 69 77 38 62 6d 45 62 uEQLq4GsJ0/WwbgcQ3izDJr86iw8bmEb
144f20 54 55 73 70 0a 39 5a 38 46 48 53 62 42 75 4f 6d 44 41 47 4a 46 74 71 6b 49 6b 37 6d 70 4d 30 73 TUsp.9Z8FHSbBuOmDAGJFtqkIk7mpM0s
144f40 59 6d 73 4c 34 68 34 68 4f 32 39 31 78 4e 42 72 42 56 4e 70 47 50 2b 44 54 4b 71 74 74 56 43 4c YmsL4h4hO291xNBrBVNpGP+DTKqttVCL
144f60 31 4f 6d 4c 4e 49 47 2b 36 4b 59 6e 58 33 5a 48 75 0a 30 31 79 69 50 71 46 62 51 66 58 66 35 57 1OmLNIG+6KYnX3ZHu.01yiPqFbQfXf5W
144f80 52 44 4c 65 6e 56 4f 61 76 53 6f 74 2b 33 69 39 44 41 67 42 6b 63 52 63 41 74 6a 4f 6a 34 4c 61 RDLenVOavSot+3i9DAgBkcRcAtjOj4La
144fa0 52 30 56 6b 6e 46 42 62 56 50 46 64 35 75 52 48 67 35 68 36 68 2b 75 2f 4e 35 47 4a 47 37 0a 39 R0VknFBbVPFd5uRHg5h6h+u/N5GJG7.9
144fc0 47 2b 64 77 66 43 4d 4e 59 78 64 41 66 76 44 62 62 6e 76 52 47 31 35 52 6a 46 2b 43 76 36 70 67 G+dwfCMNYxdAfvDbbnvRG15RjF+Cv6pg
144fe0 73 48 2f 37 36 74 75 49 4d 52 51 79 56 2b 64 54 5a 73 58 6a 41 7a 6c 41 63 6d 67 51 57 70 7a 55 sH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU
145000 2f 71 6c 55 4c 52 75 4a 51 2f 37 0a 54 42 6a 30 2f 56 4c 5a 6a 6d 6d 78 36 42 45 50 33 6f 6a 59 /qlULRuJQ/7.TBj0/VLZjmmx6BEP3ojY
145020 2b 78 31 4a 39 36 72 65 6c 63 38 67 65 4d 4a 67 45 74 73 6c 51 49 78 71 2f 48 35 43 4f 45 42 6b +x1J96relc8geMJgEtslQIxq/H5COEBk
145040 45 76 65 65 67 65 47 54 4c 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 EveegeGTLg==.-----END.CERTIFICAT
145060 45 2d 2d 2d 2d 2d 0a 0a 56 65 72 69 73 69 67 6e 20 43 6c 61 73 73 20 33 20 50 75 62 6c 69 63 20 E-----..Verisign.Class.3.Public.
145080 50 72 69 6d 61 72 79 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 20 Primary.Certification.Authority.
1450a0 2d 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d -.G3.===========================
1450c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
1450e0 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 =.-----BEGIN.CERTIFICATE-----.MI
145100 49 45 47 6a 43 43 41 77 49 43 45 51 43 62 66 67 5a 4a 6f 7a 35 69 75 64 58 75 6b 45 68 78 4b 65 IEGjCCAwICEQCbfgZJoz5iudXukEhxKe
145120 39 58 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 4d 49 48 4b 4d 51 73 77 43 51 9XMA0GCSqGSIb3DQEBBQUAMIHKMQswCQ
145140 59 44 56 51 51 47 45 77 4a 56 0a 55 7a 45 58 4d 42 55 47 41 31 55 45 43 68 4d 4f 56 6d 56 79 61 YDVQQGEwJV.UzEXMBUGA1UEChMOVmVya
145160 56 4e 70 5a 32 34 73 49 45 6c 75 59 79 34 78 48 7a 41 64 42 67 4e 56 42 41 73 54 46 6c 5a 6c 63 VNpZ24sIEluYy4xHzAdBgNVBAsTFlZlc
145180 6d 6c 54 61 57 64 75 49 46 52 79 64 58 4e 30 49 45 35 6c 64 48 64 76 0a 63 6d 73 78 4f 6a 41 34 mlTaWduIFRydXN0IE5ldHdv.cmsxOjA4
1451a0 42 67 4e 56 42 41 73 54 4d 53 68 6a 4b 53 41 78 4f 54 6b 35 49 46 5a 6c 63 6d 6c 54 61 57 64 75 BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu
1451c0 4c 43 42 4a 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 76 63 6d 6c 36 5a 57 51 67 LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQg
1451e0 64 58 4e 6c 0a 49 47 39 75 62 48 6b 78 52 54 42 44 42 67 4e 56 42 41 4d 54 50 46 5a 6c 63 6d 6c dXNl.IG9ubHkxRTBDBgNVBAMTPFZlcml
145200 54 61 57 64 75 49 45 4e 73 59 58 4e 7a 49 44 4d 67 55 48 56 69 62 47 6c 6a 49 46 42 79 61 57 31 TaWduIENsYXNzIDMgUHVibGljIFByaW1
145220 68 63 6e 6b 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 0a 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 hcnkgQ2VydGlmaWNh.dGlvbiBBdXRob3
145240 4a 70 64 48 6b 67 4c 53 42 48 4d 7a 41 65 46 77 30 35 4f 54 45 77 4d 44 45 77 4d 44 41 77 4d 44 JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMD
145260 42 61 46 77 30 7a 4e 6a 41 33 4d 54 59 79 4d 7a 55 35 4e 54 6c 61 4d 49 48 4b 4d 51 73 77 0a 43 BaFw0zNjA3MTYyMzU5NTlaMIHKMQsw.C
145280 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 58 4d 42 55 47 41 31 55 45 43 68 4d 4f 56 6d 56 79 61 QYDVQQGEwJVUzEXMBUGA1UEChMOVmVya
1452a0 56 4e 70 5a 32 34 73 49 45 6c 75 59 79 34 78 48 7a 41 64 42 67 4e 56 42 41 73 54 46 6c 5a 6c 63 VNpZ24sIEluYy4xHzAdBgNVBAsTFlZlc
1452c0 6d 6c 54 61 57 64 75 49 46 52 79 0a 64 58 4e 30 49 45 35 6c 64 48 64 76 63 6d 73 78 4f 6a 41 34 mlTaWduIFRy.dXN0IE5ldHdvcmsxOjA4
1452e0 42 67 4e 56 42 41 73 54 4d 53 68 6a 4b 53 41 78 4f 54 6b 35 49 46 5a 6c 63 6d 6c 54 61 57 64 75 BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu
145300 4c 43 42 4a 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 76 0a 63 6d 6c 36 5a 57 51 LCBJbmMuIC0gRm9yIGF1dGhv.cml6ZWQ
145320 67 64 58 4e 6c 49 47 39 75 62 48 6b 78 52 54 42 44 42 67 4e 56 42 41 4d 54 50 46 5a 6c 63 6d 6c gdXNlIG9ubHkxRTBDBgNVBAMTPFZlcml
145340 54 61 57 64 75 49 45 4e 73 59 58 4e 7a 49 44 4d 67 55 48 56 69 62 47 6c 6a 49 46 42 79 61 57 31 TaWduIENsYXNzIDMgUHVibGljIFByaW1
145360 68 63 6e 6b 67 0a 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 hcnkg.Q2VydGlmaWNhdGlvbiBBdXRob3
145380 4a 70 64 48 6b 67 4c 53 42 48 4d 7a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQ
1453a0 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 0a 67 67 45 42 41 4d 75 36 6e 46 4c 38 65 EBBQADggEPADCCAQoC.ggEBAMu6nFL8e
1453c0 42 38 61 48 6d 38 62 4e 33 4f 39 2b 4d 6c 72 6c 42 49 77 54 2f 41 32 52 2f 58 51 6b 51 72 31 46 B8aHm8bN3O9+MlrlBIwT/A2R/XQkQr1F
1453e0 38 69 6c 59 63 45 57 51 45 33 37 69 6d 47 51 35 58 59 67 77 52 45 47 66 61 73 73 62 71 62 31 0a 8ilYcEWQE37imGQ5XYgwREGfassbqb1.
145400 45 55 47 4f 2b 69 32 74 4b 6d 46 5a 70 47 63 6d 54 4e 44 6f 76 46 4a 62 63 43 41 45 57 4e 46 36 EUGO+i2tKmFZpGcmTNDovFJbcCAEWNF6
145420 79 61 52 70 76 49 4d 58 5a 4b 30 46 69 37 7a 51 57 4d 36 4e 6a 50 58 72 38 45 4a 4a 43 35 32 58 yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52X
145440 4a 32 63 79 62 75 47 75 6b 78 55 63 0a 63 4c 77 67 54 53 38 59 33 70 4b 49 36 47 79 46 56 78 45 J2cybuGukxUc.cLwgTS8Y3pKI6GyFVxE
145460 61 36 58 37 6a 4a 68 46 55 6f 6b 57 57 56 59 50 4b 4d 49 6e 6f 33 4e 69 6a 37 53 71 41 50 33 39 a6X7jJhFUokWWVYPKMIno3Nij7SqAP39
145480 35 5a 56 63 2b 46 53 42 6d 43 43 2b 56 6b 37 2b 71 52 79 2b 6f 52 70 66 77 0a 45 75 4c 2b 77 67 5ZVc+FSBmCC+Vk7+qRy+oRpfw.EuL+wg
1454a0 6f 72 55 65 5a 32 35 72 64 47 74 2b 49 4e 70 73 79 6f 77 30 78 5a 56 59 6e 6d 36 46 4e 63 48 4f orUeZ25rdGt+INpsyow0xZVYnm6FNcHO
1454c0 71 64 38 47 49 57 43 36 66 4a 58 77 7a 77 33 73 4a 32 7a 71 2f 33 61 76 4c 36 51 61 61 69 4d 78 qd8GIWC6fJXwzw3sJ2zq/3avL6QaaiMx
1454e0 54 4a 35 58 70 6a 0a 30 35 35 69 4e 39 57 46 5a 5a 34 4f 35 6c 4d 6b 64 42 74 65 48 52 4a 54 57 TJ5Xpj.055iN9WFZZ4O5lMkdBteHRJTW
145500 38 63 73 35 34 4e 4a 4f 78 57 75 69 6d 69 35 56 35 63 43 41 77 45 41 41 54 41 4e 42 67 6b 71 68 8cs54NJOxWuimi5V5cCAwEAATANBgkqh
145520 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 0a 45 52 53 57 77 61 75 53 43 50 63 2f kiG9w0BAQUFAAOCAQEA.ERSWwauSCPc/
145540 4c 38 6d 79 2f 75 52 61 6e 32 54 65 32 79 46 50 68 70 6b 30 64 6a 5a 58 33 64 41 56 4c 38 57 74 L8my/uRan2Te2yFPhpk0djZX3dAVL8Wt
145560 66 78 55 66 4e 32 4a 7a 50 74 54 6e 58 38 34 58 41 39 73 31 2b 69 76 62 72 6d 41 4a 58 78 35 66 fxUfN2JzPtTnX84XA9s1+ivbrmAJXx5f
145580 0a 6a 32 36 37 43 7a 33 71 57 68 4d 65 44 47 42 76 74 63 43 31 49 79 49 75 42 77 76 4c 71 58 54 .j267Cz3qWhMeDGBvtcC1IyIuBwvLqXT
1455a0 4c 52 37 73 64 77 64 65 6c 61 38 77 76 30 6b 4c 39 53 64 32 6e 69 63 39 54 75 74 6f 41 57 69 69 LR7sdwdela8wv0kL9Sd2nic9TutoAWii
1455c0 2f 67 74 2f 34 75 68 4d 64 55 49 61 43 0a 2f 59 34 77 6a 79 6c 47 73 42 34 39 4e 64 6f 34 59 68 /gt/4uhMdUIaC./Y4wjylGsB49Ndo4Yh
1455e0 59 59 53 71 33 6d 74 6c 46 73 33 71 39 69 36 77 48 51 48 69 54 2b 65 6f 38 53 47 68 4a 6f 75 50 YYSq3mtlFs3q9i6wHQHiT+eo8SGhJouP
145600 74 6d 6d 52 51 55 52 56 79 75 35 36 35 70 46 34 45 72 57 6a 66 4a 58 69 72 30 0a 78 75 4b 68 58 tmmRQURVyu565pF4ErWjfJXir0.xuKhX
145620 46 53 62 70 6c 51 41 7a 2f 44 78 77 63 65 59 4d 42 6f 37 4e 68 62 62 6f 32 37 71 2f 61 32 79 77 FSbplQAz/DxwceYMBo7Nhbbo27q/a2yw
145640 74 72 76 41 6b 63 54 69 73 44 78 73 7a 47 74 54 78 7a 68 54 35 79 76 44 77 79 64 39 33 67 4e 32 trvAkcTisDxszGtTxzhT5yvDwyd93gN2
145660 50 51 31 56 6f 44 61 0a 74 32 30 58 6a 35 30 65 67 57 54 68 2f 73 56 46 75 71 31 72 75 51 70 36 PQ1VoDa.t20Xj50egWTh/sVFuq1ruQp6
145680 54 6b 39 4c 68 4f 35 4c 38 58 33 64 45 51 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 Tk9LhO5L8X3dEQ==.-----END.CERTIF
1456a0 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 56 65 72 69 73 69 67 6e 20 43 6c 61 73 73 20 34 20 50 75 62 ICATE-----..Verisign.Class.4.Pub
1456c0 6c 69 63 20 50 72 69 6d 61 72 79 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 lic.Primary.Certification.Author
1456e0 69 74 79 20 2d 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ity.-.G3.=======================
145700 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
145720 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d =====.-----BEGIN.CERTIFICATE----
145740 2d 0a 4d 49 49 45 47 6a 43 43 41 77 49 43 45 51 44 73 6f 4b 65 4c 62 6e 56 71 41 63 2f 45 66 4d -.MIIEGjCCAwICEQDsoKeLbnVqAc/EfM
145760 77 76 6c 46 37 58 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 4d 49 48 4b 4d 51 wvlF7XMA0GCSqGSIb3DQEBBQUAMIHKMQ
145780 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 0a 55 7a 45 58 4d 42 55 47 41 31 55 45 43 68 4d 4f 56 swCQYDVQQGEwJV.UzEXMBUGA1UEChMOV
1457a0 6d 56 79 61 56 4e 70 5a 32 34 73 49 45 6c 75 59 79 34 78 48 7a 41 64 42 67 4e 56 42 41 73 54 46 mVyaVNpZ24sIEluYy4xHzAdBgNVBAsTF
1457c0 6c 5a 6c 63 6d 6c 54 61 57 64 75 49 46 52 79 64 58 4e 30 49 45 35 6c 64 48 64 76 0a 63 6d 73 78 lZlcmlTaWduIFRydXN0IE5ldHdv.cmsx
1457e0 4f 6a 41 34 42 67 4e 56 42 41 73 54 4d 53 68 6a 4b 53 41 78 4f 54 6b 35 49 46 5a 6c 63 6d 6c 54 OjA4BgNVBAsTMShjKSAxOTk5IFZlcmlT
145800 61 57 64 75 4c 43 42 4a 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 76 63 6d 6c 36 aWduLCBJbmMuIC0gRm9yIGF1dGhvcml6
145820 5a 57 51 67 64 58 4e 6c 0a 49 47 39 75 62 48 6b 78 52 54 42 44 42 67 4e 56 42 41 4d 54 50 46 5a ZWQgdXNl.IG9ubHkxRTBDBgNVBAMTPFZ
145840 6c 63 6d 6c 54 61 57 64 75 49 45 4e 73 59 58 4e 7a 49 44 51 67 55 48 56 69 62 47 6c 6a 49 46 42 lcmlTaWduIENsYXNzIDQgUHVibGljIFB
145860 79 61 57 31 68 63 6e 6b 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 0a 64 47 6c 76 62 69 42 42 64 58 yaW1hcnkgQ2VydGlmaWNh.dGlvbiBBdX
145880 52 6f 62 33 4a 70 64 48 6b 67 4c 53 42 48 4d 7a 41 65 46 77 30 35 4f 54 45 77 4d 44 45 77 4d 44 Rob3JpdHkgLSBHMzAeFw05OTEwMDEwMD
1458a0 41 77 4d 44 42 61 46 77 30 7a 4e 6a 41 33 4d 54 59 79 4d 7a 55 35 4e 54 6c 61 4d 49 48 4b 4d 51 AwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQ
1458c0 73 77 0a 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 58 4d 42 55 47 41 31 55 45 43 68 4d 4f 56 sw.CQYDVQQGEwJVUzEXMBUGA1UEChMOV
1458e0 6d 56 79 61 56 4e 70 5a 32 34 73 49 45 6c 75 59 79 34 78 48 7a 41 64 42 67 4e 56 42 41 73 54 46 mVyaVNpZ24sIEluYy4xHzAdBgNVBAsTF
145900 6c 5a 6c 63 6d 6c 54 61 57 64 75 49 46 52 79 0a 64 58 4e 30 49 45 35 6c 64 48 64 76 63 6d 73 78 lZlcmlTaWduIFRy.dXN0IE5ldHdvcmsx
145920 4f 6a 41 34 42 67 4e 56 42 41 73 54 4d 53 68 6a 4b 53 41 78 4f 54 6b 35 49 46 5a 6c 63 6d 6c 54 OjA4BgNVBAsTMShjKSAxOTk5IFZlcmlT
145940 61 57 64 75 4c 43 42 4a 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 76 0a 63 6d 6c aWduLCBJbmMuIC0gRm9yIGF1dGhv.cml
145960 36 5a 57 51 67 64 58 4e 6c 49 47 39 75 62 48 6b 78 52 54 42 44 42 67 4e 56 42 41 4d 54 50 46 5a 6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZ
145980 6c 63 6d 6c 54 61 57 64 75 49 45 4e 73 59 58 4e 7a 49 44 51 67 55 48 56 69 62 47 6c 6a 49 46 42 lcmlTaWduIENsYXNzIDQgUHVibGljIFB
1459a0 79 61 57 31 68 63 6e 6b 67 0a 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 yaW1hcnkg.Q2VydGlmaWNhdGlvbiBBdX
1459c0 52 6f 62 33 4a 70 64 48 6b 67 4c 53 42 48 4d 7a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 Rob3JpdHkgLSBHMzCCASIwDQYJKoZIhv
1459e0 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 0a 67 67 45 42 41 4b 33 4c 70 cNAQEBBQADggEPADCCAQoC.ggEBAK3Lp
145a00 52 46 70 78 6c 6d 72 38 59 2b 31 47 51 39 57 7a 73 79 31 48 79 44 6b 6e 69 59 6c 53 2b 42 7a 5a RFpxlmr8Y+1GQ9Wzsy1HyDkniYlS+BzZ
145a20 59 6c 5a 33 74 43 44 35 50 55 50 74 62 75 74 38 58 7a 6f 49 66 7a 6b 36 41 7a 75 66 45 55 69 47 YlZ3tCD5PUPtbut8XzoIfzk6AzufEUiG
145a40 58 61 53 0a 74 42 4f 33 49 46 73 4a 2b 6d 47 75 71 50 4b 6c 6a 59 58 43 4b 74 62 65 5a 6a 62 53 XaS.tBO3IFsJ+mGuqPKljYXCKtbeZjbS
145a60 6d 77 4c 30 71 4a 4a 67 66 4a 78 70 74 49 38 6b 48 74 43 47 55 76 59 79 6e 45 46 59 48 69 4b 39 mwL0qJJgfJxptI8kHtCGUvYynEFYHiK9
145a80 7a 55 56 69 6c 51 68 75 30 47 62 64 55 36 4c 4d 0a 38 42 44 63 56 48 4f 4c 42 4b 46 47 4d 7a 4e zUVilQhu0GbdU6LM.8BDcVHOLBKFGMzN
145aa0 63 46 30 43 35 6e 6b 33 54 38 37 35 56 67 2b 69 78 69 59 35 61 66 4a 71 57 49 70 41 37 69 43 58 cF0C5nk3T875Vg+ixiY5afJqWIpA7iCX
145ac0 79 30 6c 4f 49 41 67 77 4c 65 50 4c 6d 4e 78 64 4c 4d 45 59 48 35 49 42 74 70 74 69 57 0a 4c 75 y0lOIAgwLePLmNxdLMEYH5IBtptiW.Lu
145ae0 67 73 2b 42 47 7a 4f 41 31 6d 70 70 76 71 79 53 4e 62 32 34 37 69 38 78 4f 4f 47 6c 6b 74 71 67 gs+BGzOA1mppvqySNb247i8xOOGlktqg
145b00 4c 77 37 4b 53 48 5a 74 7a 42 50 2f 58 59 75 66 54 73 67 73 62 53 50 5a 55 64 35 63 42 50 68 4d Lw7KSHZtzBP/XYufTsgsbSPZUd5cBPhM
145b20 6e 5a 6f 30 51 6f 42 6d 72 58 0a 52 61 7a 77 61 32 72 76 54 6c 2f 34 45 59 49 65 4f 47 4d 30 5a nZo0QoBmrX.Razwa2rvTl/4EYIeOGM0Z
145b40 6c 44 55 50 70 4e 7a 2b 6a 44 44 5a 71 33 2f 6b 79 32 58 37 77 4d 43 41 77 45 41 41 54 41 4e 42 lDUPpNz+jDDZq3/ky2X7wMCAwEAATANB
145b60 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 0a 6a 2f 6f 6c 61 30 39 62 gkqhkiG9w0BAQUFAAOCAQEA.j/ola09b
145b80 35 4b 52 4f 4a 31 57 72 49 68 56 5a 50 4d 71 31 43 74 52 4b 32 36 76 64 6f 56 39 54 78 61 42 58 5KROJ1WrIhVZPMq1CtRK26vdoV9TxaBX
145ba0 4f 63 4c 4f 52 79 75 2b 4f 73 68 57 76 38 4c 5a 4a 78 41 36 73 51 55 38 77 48 63 78 75 7a 72 54 OcLORyu+OshWv8LZJxA6sQU8wHcxuzrT
145bc0 42 58 74 74 0a 6d 68 77 77 6a 49 44 4c 6b 35 4d 71 67 36 73 46 55 59 49 43 41 42 46 6e 61 2f 4f BXtt.mhwwjIDLk5Mqg6sFUYICABFna/O
145be0 49 59 55 64 66 41 35 50 56 57 77 33 67 38 64 53 68 4d 6a 57 46 73 6a 72 62 73 49 4b 72 30 63 73 IYUdfA5PVWw3g8dShMjWFsjrbsIKr0cs
145c00 4b 76 45 2b 4d 57 38 56 4c 41 44 73 66 4b 6f 4b 6d 0a 66 6a 61 46 33 48 34 38 5a 77 43 31 35 44 KvE+MW8VLADsfKoKm.fjaF3H48ZwC15D
145c20 74 53 34 4b 6a 72 58 52 58 35 78 6d 33 77 72 52 30 4f 68 62 65 70 6d 6e 4d 55 57 6c 75 50 51 53 tS4KjrXRX5xm3wrR0OhbepmnMUWluPQS
145c40 6a 41 31 65 67 74 54 61 52 65 7a 61 72 5a 37 63 37 63 32 4e 55 38 51 68 30 58 77 52 4a 64 0a 52 jA1egtTaRezarZ7c7c2NU8Qh0XwRJd.R
145c60 54 6a 44 4f 50 50 38 68 53 36 44 52 6b 69 79 31 79 42 66 6b 6a 61 50 35 33 6b 50 6d 46 36 5a 36 TjDOPP8hS6DRkiy1yBfkjaP53kPmF6Z6
145c80 50 44 51 70 4c 76 31 55 37 30 71 7a 6c 6d 77 72 32 35 2f 62 4c 76 53 48 67 43 77 49 65 33 34 51 PDQpLv1U70qzlmwr25/bLvSHgCwIe34Q
145ca0 57 4b 43 75 64 69 79 78 4c 74 47 0a 55 50 4d 78 78 59 38 42 71 48 54 72 39 58 67 6e 32 75 66 33 WKCudiyxLtG.UPMxxY8BqHTr9Xgn2uf3
145cc0 5a 6b 50 7a 6e 6f 4d 2b 49 4b 72 44 4e 57 43 52 7a 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 ZkPznoM+IKrDNWCRzg==.-----END.CE
145ce0 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 45 6e 74 72 75 73 74 2e 6e 65 74 20 50 72 65 6d RTIFICATE-----..Entrust.net.Prem
145d00 69 75 6d 20 32 30 34 38 20 53 65 63 75 72 65 20 53 65 72 76 65 72 20 43 41 0a 3d 3d 3d 3d 3d 3d ium.2048.Secure.Server.CA.======
145d20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
145d40 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a ===.-----BEGIN.CERTIFICATE-----.
145d60 4d 49 49 45 4b 6a 43 43 41 78 4b 67 41 77 49 42 41 67 49 45 4f 47 50 65 2b 44 41 4e 42 67 6b 71 MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkq
145d80 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 74 44 45 55 4d 42 49 47 41 31 55 45 43 68 4d 4c hkiG9w0BAQUFADCBtDEUMBIGA1UEChML
145da0 52 57 35 30 63 6e 56 7a 64 43 35 75 0a 5a 58 51 78 51 44 41 2b 42 67 4e 56 42 41 73 55 4e 33 64 RW50cnVzdC5u.ZXQxQDA+BgNVBAsUN3d
145dc0 33 64 79 35 6c 62 6e 52 79 64 58 4e 30 4c 6d 35 6c 64 43 39 44 55 46 4e 66 4d 6a 41 30 4f 43 42 3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCB
145de0 70 62 6d 4e 76 63 6e 41 75 49 47 4a 35 49 48 4a 6c 5a 69 34 67 4b 47 78 70 0a 62 57 6c 30 63 79 pbmNvcnAuIGJ5IHJlZi4gKGxp.bWl0cy
145e00 42 73 61 57 46 69 4c 69 6b 78 4a 54 41 6a 42 67 4e 56 42 41 73 54 48 43 68 6a 4b 53 41 78 4f 54 BsaWFiLikxJTAjBgNVBAsTHChjKSAxOT
145e20 6b 35 49 45 56 75 64 48 4a 31 63 33 51 75 62 6d 56 30 49 45 78 70 62 57 6c 30 5a 57 51 78 4d 7a k5IEVudHJ1c3QubmV0IExpbWl0ZWQxMz
145e40 41 78 42 67 4e 56 0a 42 41 4d 54 4b 6b 56 75 64 48 4a 31 63 33 51 75 62 6d 56 30 49 45 4e 6c 63 AxBgNV.BAMTKkVudHJ1c3QubmV0IENlc
145e60 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 49 43 67 79 4d nRpZmljYXRpb24gQXV0aG9yaXR5ICgyM
145e80 44 51 34 4b 54 41 65 46 77 30 35 4f 54 45 79 4d 6a 51 78 0a 4e 7a 55 77 4e 54 46 61 46 77 30 79 DQ4KTAeFw05OTEyMjQx.NzUwNTFaFw0y
145ea0 4f 54 41 33 4d 6a 51 78 4e 44 45 31 4d 54 4a 61 4d 49 47 30 4d 52 51 77 45 67 59 44 56 51 51 4b OTA3MjQxNDE1MTJaMIG0MRQwEgYDVQQK
145ec0 45 77 74 46 62 6e 52 79 64 58 4e 30 4c 6d 35 6c 64 44 46 41 4d 44 34 47 41 31 55 45 43 78 51 33 EwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3
145ee0 0a 64 33 64 33 4c 6d 56 75 64 48 4a 31 63 33 51 75 62 6d 56 30 4c 30 4e 51 55 31 38 79 4d 44 51 .d3d3LmVudHJ1c3QubmV0L0NQU18yMDQ
145f00 34 49 47 6c 75 59 32 39 79 63 43 34 67 59 6e 6b 67 63 6d 56 6d 4c 69 41 6f 62 47 6c 74 61 58 52 4IGluY29ycC4gYnkgcmVmLiAobGltaXR
145f20 7a 49 47 78 70 59 57 49 75 4b 54 45 6c 0a 4d 43 4d 47 41 31 55 45 43 78 4d 63 4b 47 4d 70 49 44 zIGxpYWIuKTEl.MCMGA1UECxMcKGMpID
145f40 45 35 4f 54 6b 67 52 57 35 30 63 6e 56 7a 64 43 35 75 5a 58 51 67 54 47 6c 74 61 58 52 6c 5a 44 E5OTkgRW50cnVzdC5uZXQgTGltaXRlZD
145f60 45 7a 4d 44 45 47 41 31 55 45 41 78 4d 71 52 57 35 30 63 6e 56 7a 64 43 35 75 0a 5a 58 51 67 51 EzMDEGA1UEAxMqRW50cnVzdC5u.ZXQgQ
145f80 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 67 4b 2VydGlmaWNhdGlvbiBBdXRob3JpdHkgK
145fa0 44 49 77 4e 44 67 70 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 DIwNDgpMIIBIjANBgkqhkiG9w0BAQEFA
145fc0 41 4f 43 41 51 38 41 0a 4d 49 49 42 43 67 4b 43 41 51 45 41 72 55 31 4c 71 52 4b 47 73 75 71 6a AOCAQ8A.MIIBCgKCAQEArU1LqRKGsuqj
145fe0 49 41 63 56 46 6d 51 71 4b 30 76 52 76 77 74 4b 54 59 37 74 67 48 61 6c 5a 37 64 34 51 4d 42 7a IAcVFmQqK0vRvwtKTY7tgHalZ7d4QMBz
146000 51 73 68 6f 77 4e 74 54 4b 39 31 65 75 48 61 59 4e 5a 4f 4c 0a 47 70 31 38 45 7a 6f 4f 48 31 75 QshowNtTK91euHaYNZOL.Gp18EzoOH1u
146020 33 48 73 2f 6c 4a 42 51 65 73 59 47 70 6a 58 32 34 7a 47 74 4c 41 2f 45 43 44 4e 79 72 70 55 41 3Hs/lJBQesYGpjX24zGtLA/ECDNyrpUA
146040 6b 41 48 39 30 6c 4b 47 64 43 43 6d 7a 69 41 76 31 68 33 65 64 56 63 33 6b 77 33 37 58 61 6d 53 kAH90lKGdCCmziAv1h3edVc3kw37XamS
146060 72 0a 68 52 53 47 6c 56 75 58 4d 6c 42 76 50 63 69 36 5a 67 7a 6a 2f 4c 32 34 53 63 46 32 69 55 r.hRSGlVuXMlBvPci6Zgzj/L24ScF2iU
146080 6b 5a 2f 63 43 6f 76 59 6d 6a 5a 79 2f 47 6e 37 78 78 47 57 43 34 4c 65 6b 73 79 5a 42 32 5a 6e kZ/cCovYmjZy/Gn7xxGWC4LeksyZB2Zn
1460a0 75 55 34 71 39 34 31 6d 56 54 58 54 7a 57 0a 6e 4c 4c 50 4b 51 50 35 4c 36 52 51 73 74 52 49 7a uU4q941mVTXTzW.nLLPKQP5L6RQstRIz
1460c0 67 55 79 56 59 72 39 73 6d 52 4d 44 75 53 59 42 33 58 62 66 39 2b 35 43 46 56 67 68 54 41 70 2b gUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+
1460e0 58 74 49 70 47 6d 47 34 7a 55 2f 48 6f 5a 64 65 6e 6f 56 76 65 38 41 6a 68 55 69 0a 56 42 63 41 XtIpGmG4zU/HoZdenoVve8AjhUi.VBcA
146100 6b 43 61 54 76 41 35 4a 61 4a 47 2f 2b 45 66 54 6e 5a 56 43 77 51 35 4e 33 32 38 6d 7a 38 4d 59 kCaTvA5JaJG/+EfTnZVCwQ5N328mz8MY
146120 49 57 4a 6d 51 33 44 57 31 63 41 48 34 51 49 44 41 51 41 42 6f 30 49 77 51 44 41 4f 42 67 4e 56 IWJmQ3DW1cAH4QIDAQABo0IwQDAOBgNV
146140 48 51 38 42 41 66 38 45 0a 42 41 4d 43 41 51 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 HQ8BAf8E.BAMCAQYwDwYDVR0TAQH/BAU
146160 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 56 65 53 42 30 52 47 41 76 74 69 wAwEB/zAdBgNVHQ4EFgQUVeSB0RGAvti
146180 4a 75 51 69 6a 4d 66 6d 68 4a 41 6b 57 75 58 41 77 44 51 59 4a 0a 4b 6f 5a 49 68 76 63 4e 41 51 JuQijMfmhJAkWuXAwDQYJ.KoZIhvcNAQ
1461a0 45 46 42 51 41 44 67 67 45 42 41 44 75 62 6a 31 61 62 4d 4f 64 54 6d 58 78 36 65 61 64 4e 6c 39 EFBQADggEBADubj1abMOdTmXx6eadNl9
1461c0 63 5a 6c 5a 44 37 42 68 2f 4b 4d 33 78 47 59 34 2b 57 5a 69 54 36 51 42 73 68 4a 38 72 6d 63 6e cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcn
1461e0 50 79 0a 54 2f 34 78 6d 66 33 49 44 45 78 6f 55 38 61 41 67 68 4f 59 2b 72 61 74 32 6c 30 39 38 Py.T/4xmf3IDExoU8aAghOY+rat2l098
146200 63 35 75 39 68 55 52 6c 49 49 4d 37 6a 2b 56 72 78 47 72 44 39 63 76 33 68 38 44 6a 31 63 73 48 c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csH
146220 73 6d 37 6d 68 70 45 6c 65 73 59 54 36 59 66 0a 7a 58 31 58 45 43 2b 62 42 41 6c 61 68 4c 56 75 sm7mhpElesYT6Yf.zX1XEC+bBAlahLVu
146240 32 42 30 36 34 64 61 65 30 57 78 35 58 6e 6b 63 46 4d 58 6a 30 45 79 54 4f 32 55 38 37 64 38 39 2B064dae0Wx5XnkcFMXj0EyTO2U87d89
146260 76 71 62 6c 6c 52 72 44 74 52 6e 44 76 56 35 62 75 2f 38 6a 37 32 67 5a 79 78 4b 54 0a 4a 31 77 vqbllRrDtRnDvV5bu/8j72gZyxKT.J1w
146280 44 4c 57 38 77 30 42 36 32 47 71 7a 65 57 76 66 52 71 71 67 6e 70 76 35 35 67 63 52 35 6d 54 4e DLW8w0B62GqzeWvfRqqgnpv55gcR5mTN
1462a0 58 75 68 4b 77 71 65 42 43 62 4a 50 4b 56 74 37 2b 62 59 51 4c 43 49 74 2b 6a 65 72 58 6d 43 48 XuhKwqeBCbJPKVt7+bYQLCIt+jerXmCH
1462c0 47 38 2b 63 38 65 53 39 65 0a 6e 4e 46 4d 46 59 33 68 37 43 49 33 7a 4a 70 44 43 35 66 63 67 4a G8+c8eS9e.nNFMFY3h7CI3zJpDC5fcgJ
1462e0 43 4e 73 32 65 62 62 30 67 49 46 56 62 50 76 2f 45 72 66 46 36 61 64 75 6c 5a 6b 4d 56 38 67 7a CNs2ebb0gIFVbPv/ErfF6adulZkMV8gz
146300 55 52 5a 56 45 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d URZVE=.-----END.CERTIFICATE-----
146320 0a 0a 42 61 6c 74 69 6d 6f 72 65 20 43 79 62 65 72 54 72 75 73 74 20 52 6f 6f 74 0a 3d 3d 3d 3d ..Baltimore.CyberTrust.Root.====
146340 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e =====================.-----BEGIN
146360 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 64 7a 43 43 41 6c 2b 67 41 77 .CERTIFICATE-----.MIIDdzCCAl+gAw
146380 49 42 41 67 49 45 41 67 41 41 75 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 IBAgIEAgAAuTANBgkqhkiG9w0BAQUFAD
1463a0 42 61 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4a 52 54 45 53 4d 42 41 47 41 31 55 45 0a 43 BaMQswCQYDVQQGEwJJRTESMBAGA1UE.C
1463c0 68 4d 4a 51 6d 46 73 64 47 6c 74 62 33 4a 6c 4d 52 4d 77 45 51 59 44 56 51 51 4c 45 77 70 44 65 hMJQmFsdGltb3JlMRMwEQYDVQQLEwpDe
1463e0 57 4a 6c 63 6c 52 79 64 58 4e 30 4d 53 49 77 49 41 59 44 56 51 51 44 45 78 6c 43 59 57 78 30 61 WJlclRydXN0MSIwIAYDVQQDExlCYWx0a
146400 57 31 76 63 6d 55 67 51 33 6c 69 0a 5a 58 4a 55 63 6e 56 7a 64 43 42 53 62 32 39 30 4d 42 34 58 W1vcmUgQ3li.ZXJUcnVzdCBSb290MB4X
146420 44 54 41 77 4d 44 55 78 4d 6a 45 34 4e 44 59 77 4d 46 6f 58 44 54 49 31 4d 44 55 78 4d 6a 49 7a DTAwMDUxMjE4NDYwMFoXDTI1MDUxMjIz
146440 4e 54 6b 77 4d 46 6f 77 57 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 0a 53 55 55 78 45 6a 41 NTkwMFowWjELMAkGA1UEBhMC.SUUxEjA
146460 51 42 67 4e 56 42 41 6f 54 43 55 4a 68 62 48 52 70 62 57 39 79 5a 54 45 54 4d 42 45 47 41 31 55 QBgNVBAoTCUJhbHRpbW9yZTETMBEGA1U
146480 45 43 78 4d 4b 51 33 6c 69 5a 58 4a 55 63 6e 56 7a 64 44 45 69 4d 43 41 47 41 31 55 45 41 78 4d ECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxM
1464a0 5a 51 6d 46 73 0a 64 47 6c 74 62 33 4a 6c 49 45 4e 35 59 6d 56 79 56 48 4a 31 63 33 51 67 55 6d ZQmFs.dGltb3JlIEN5YmVyVHJ1c3QgUm
1464c0 39 76 64 44 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 9vdDCCASIwDQYJKoZIhvcNAQEBBQADgg
1464e0 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4b 4d 45 0a 75 79 4b 72 6d 44 31 58 36 43 5a 79 6d EPADCCAQoCggEBAKME.uyKrmD1X6CZym
146500 72 56 35 31 43 6e 69 34 65 69 56 67 4c 47 77 34 31 75 4f 4b 79 6d 61 5a 4e 2b 68 58 65 32 77 43 rV51Cni4eiVgLGw41uOKymaZN+hXe2wC
146520 51 56 74 32 79 67 75 7a 6d 4b 69 59 76 36 30 69 4e 6f 53 36 7a 6a 72 49 5a 33 41 51 53 73 42 0a QVt2yguzmKiYv60iNoS6zjrIZ3AQSsB.
146540 55 6e 75 49 64 39 4d 63 6a 38 65 36 75 59 69 31 61 67 6e 6e 63 2b 67 52 51 4b 66 52 7a 4d 70 69 UnuId9Mcj8e6uYi1agnnc+gRQKfRzMpi
146560 6a 53 33 6c 6a 77 75 6d 55 4e 4b 6f 55 4d 4d 6f 36 76 57 72 4a 59 65 4b 6d 70 59 63 71 57 65 34 jS3ljwumUNKoUMMo6vWrJYeKmpYcqWe4
146580 50 77 7a 56 39 2f 6c 53 45 79 2f 43 0a 47 39 56 77 63 50 43 50 77 42 4c 4b 42 73 75 61 34 64 6e PwzV9/lSEy/C.G9VwcPCPwBLKBsua4dn
1465a0 4b 4d 33 70 33 31 76 6a 73 75 66 46 6f 52 45 4a 49 45 39 4c 41 77 71 53 75 58 6d 44 2b 74 71 59 KM3p31vjsufFoREJIE9LAwqSuXmD+tqY
1465c0 46 2f 4c 54 64 42 31 6b 43 31 46 6b 59 6d 47 50 31 70 57 50 67 6b 41 78 39 0a 58 62 49 47 65 76 F/LTdB1kC1FkYmGP1pWPgkAx9.XbIGev
1465e0 4f 46 36 75 76 55 41 36 35 65 68 44 35 66 2f 78 58 74 61 62 7a 35 4f 54 5a 79 64 63 39 33 55 6b OF6uvUA65ehD5f/xXtabz5OTZydc93Uk
146600 33 7a 79 5a 41 73 75 54 33 6c 79 53 4e 54 50 78 38 6b 6d 43 46 63 42 35 6b 70 76 63 59 36 37 4f 3zyZAsuT3lySNTPx8kmCFcB5kpvcY67O
146620 64 75 68 6a 70 72 0a 6c 33 52 6a 4d 37 31 6f 47 44 48 77 65 49 31 32 76 2f 79 65 6a 6c 30 71 68 duhjpr.l3RjM71oGDHweI12v/yejl0qh
146640 71 64 4e 6b 4e 77 6e 47 6a 6b 43 41 77 45 41 41 61 4e 46 4d 45 4d 77 48 51 59 44 56 52 30 4f 42 qdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OB
146660 42 59 45 46 4f 57 64 57 54 43 43 52 31 6a 4d 72 50 6f 49 0a 56 44 61 47 65 7a 71 31 42 45 33 77 BYEFOWdWTCCR1jMrPoI.VDaGezq1BE3w
146680 4d 42 49 47 41 31 55 64 45 77 45 42 2f 77 51 49 4d 41 59 42 41 66 38 43 41 51 4d 77 44 67 59 44 MBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYD
1466a0 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEB
1466c0 0a 42 51 55 41 41 34 49 42 41 51 43 46 44 46 32 4f 35 47 39 52 61 45 49 46 6f 4e 32 37 54 79 63 .BQUAA4IBAQCFDF2O5G9RaEIFoN27Tyc
1466e0 6c 68 41 4f 39 39 32 54 39 4c 64 63 77 34 36 51 51 46 2b 76 61 4b 53 6d 32 65 54 39 32 39 68 6b lhAO992T9Ldcw46QQF+vaKSm2eT929hk
146700 54 49 37 67 51 43 76 6c 59 70 4e 52 68 0a 63 4c 30 45 59 57 6f 53 69 68 66 56 43 72 33 46 76 44 TI7gQCvlYpNRh.cL0EYWoSihfVCr3FvD
146720 42 38 31 75 6b 4d 4a 59 32 47 51 45 2f 73 7a 4b 4e 2b 4f 4d 59 33 45 55 2f 74 33 57 67 78 6a 6b B81ukMJY2GQE/szKN+OMY3EU/t3Wgxjk
146740 7a 53 73 77 46 30 37 72 35 31 58 67 64 49 47 6e 39 77 2f 78 5a 63 68 4d 42 35 0a 68 62 67 46 2f zSswF07r51XgdIGn9w/xZchMB5.hbgF/
146760 58 2b 2b 5a 52 47 6a 44 38 41 43 74 50 68 53 4e 7a 6b 45 31 61 6b 78 65 68 69 2f 6f 43 72 30 45 X++ZRGjD8ACtPhSNzkE1akxehi/oCr0E
146780 70 6e 33 6f 30 57 43 34 7a 78 65 39 5a 32 65 74 63 69 65 66 43 37 49 70 4a 35 4f 43 42 52 4c 62 pn3o0WC4zxe9Z2etciefC7IpJ5OCBRLb
1467a0 66 31 77 62 57 73 61 0a 59 37 31 6b 35 68 2b 33 7a 76 44 79 6e 79 36 37 47 37 66 79 55 49 68 7a f1wbWsa.Y71k5h+3zvDyny67G7fyUIhz
1467c0 6b 73 4c 69 34 78 61 4e 6d 6a 49 43 71 34 34 59 33 65 6b 51 45 65 35 2b 4e 61 75 51 72 7a 34 77 ksLi4xaNmjICq44Y3ekQEe5+NauQrz4w
1467e0 6c 48 72 51 4d 7a 32 6e 5a 51 2f 31 2f 49 36 65 59 73 39 48 0a 52 43 77 42 58 62 73 64 74 54 4c lHrQMz2nZQ/1/I6eYs9H.RCwBXbsdtTL
146800 53 52 39 49 34 4c 74 44 2b 67 64 77 79 61 68 36 31 37 6a 7a 56 2f 4f 65 42 48 52 6e 44 4a 45 4c SR9I4LtD+gdwyah617jzV/OeBHRnDJEL
146820 71 59 7a 6d 70 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a qYzmp.-----END.CERTIFICATE-----.
146840 0a 41 64 64 54 72 75 73 74 20 4c 6f 77 2d 56 61 6c 75 65 20 53 65 72 76 69 63 65 73 20 52 6f 6f .AddTrust.Low-Value.Services.Roo
146860 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d t.==============================
146880 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d ==.-----BEGIN.CERTIFICATE-----.M
1468a0 49 49 45 47 44 43 43 41 77 43 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 IIEGDCCAwCgAwIBAgIBATANBgkqhkiG9
1468c0 77 30 42 41 51 55 46 41 44 42 6c 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 54 52 54 45 55 4d w0BAQUFADBlMQswCQYDVQQGEwJTRTEUM
1468e0 42 49 47 41 31 55 45 43 68 4d 4c 0a 51 57 52 6b 56 48 4a 31 63 33 51 67 51 55 49 78 48 54 41 62 BIGA1UEChML.QWRkVHJ1c3QgQUIxHTAb
146900 42 67 4e 56 42 41 73 54 46 45 46 6b 5a 46 52 79 64 58 4e 30 49 46 52 55 55 43 42 4f 5a 58 52 33 BgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3
146920 62 33 4a 72 4d 53 45 77 48 77 59 44 56 51 51 44 45 78 68 42 5a 47 52 55 0a 63 6e 56 7a 64 43 42 b3JrMSEwHwYDVQQDExhBZGRU.cnVzdCB
146940 44 62 47 46 7a 63 79 41 78 49 45 4e 42 49 46 4a 76 62 33 51 77 48 68 63 4e 4d 44 41 77 4e 54 4d DbGFzcyAxIENBIFJvb3QwHhcNMDAwNTM
146960 77 4d 54 41 7a 4f 44 4d 78 57 68 63 4e 4d 6a 41 77 4e 54 4d 77 4d 54 41 7a 4f 44 4d 78 57 6a 42 wMTAzODMxWhcNMjAwNTMwMTAzODMxWjB
146980 6c 4d 51 73 77 0a 43 51 59 44 56 51 51 47 45 77 4a 54 52 54 45 55 4d 42 49 47 41 31 55 45 43 68 lMQsw.CQYDVQQGEwJTRTEUMBIGA1UECh
1469a0 4d 4c 51 57 52 6b 56 48 4a 31 63 33 51 67 51 55 49 78 48 54 41 62 42 67 4e 56 42 41 73 54 46 45 MLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFE
1469c0 46 6b 5a 46 52 79 64 58 4e 30 49 46 52 55 55 43 42 4f 0a 5a 58 52 33 62 33 4a 72 4d 53 45 77 48 FkZFRydXN0IFRUUCBO.ZXR3b3JrMSEwH
1469e0 77 59 44 56 51 51 44 45 78 68 42 5a 47 52 55 63 6e 56 7a 64 43 42 44 62 47 46 7a 63 79 41 78 49 wYDVQQDExhBZGRUcnVzdCBDbGFzcyAxI
146a00 45 4e 42 49 46 4a 76 62 33 51 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 0a ENBIFJvb3QwggEiMA0GCSqGSIb3DQEB.
146a20 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 57 6c 74 51 68 53 57 44 69 AQUAA4IBDwAwggEKAoIBAQCWltQhSWDi
146a40 61 2b 68 42 42 77 7a 65 78 4f 44 63 45 79 50 4e 77 54 58 48 2b 39 5a 4f 45 51 70 6e 58 76 55 47 a+hBBwzexODcEyPNwTXH+9ZOEQpnXvUG
146a60 57 32 75 6c 43 44 74 62 4b 52 59 36 0a 35 34 65 79 4e 41 62 46 76 41 57 6c 41 33 79 43 79 79 6b W2ulCDtbKRY6.54eyNAbFvAWlA3yCyyk
146a80 51 72 75 47 49 67 62 33 57 6e 74 50 2b 4c 56 62 42 46 63 37 6a 4a 70 30 56 4c 68 44 37 42 6f 38 QruGIgb3WntP+LVbBFc7jJp0VLhD7Bo8
146aa0 77 42 4e 36 6e 74 47 4f 30 2f 37 47 63 72 6a 79 76 64 37 5a 57 78 62 57 72 0a 6f 75 6c 70 4f 6a wBN6ntGO0/7Gcrjyvd7ZWxbWr.oulpOj
146ac0 30 4f 4d 33 6b 79 50 33 43 43 6b 70 6c 68 62 59 30 77 43 49 39 78 50 36 5a 49 56 78 6e 34 4a 64 0OM3kyP3CCkplhbY0wCI9xP6ZIVxn4Jd
146ae0 78 4c 5a 6c 79 6c 64 49 2b 59 72 73 6a 35 77 41 59 69 35 36 78 7a 33 36 55 75 2b 31 4c 63 73 52 xLZlyldI+Yrsj5wAYi56xz36Uu+1LcsR
146b00 56 6c 49 50 6f 31 0a 5a 6d 6e 65 33 79 7a 78 62 72 77 77 32 79 77 6b 45 74 76 72 4e 54 56 6f 6b VlIPo1.Zmne3yzxbrww2ywkEtvrNTVok
146b20 4d 73 41 73 4a 63 68 50 58 51 68 49 32 55 30 4b 37 74 34 57 61 50 57 34 58 59 35 6d 71 52 4a 6a MsAsJchPXQhI2U0K7t4WaPW4XY5mqRJj
146b40 6f 78 30 72 32 36 6b 6d 71 50 5a 6d 39 49 34 58 4a 75 69 0a 47 4d 78 31 49 34 53 2b 36 2b 4a 4e ox0r26kmqPZm9I4XJui.GMx1I4S+6+JN
146b60 4d 33 47 4f 47 76 44 43 2b 4d 63 64 6f 71 30 44 6c 79 7a 34 7a 79 58 47 39 72 67 6b 4d 62 46 6a M3GOGvDC+Mcdoq0Dlyz4zyXG9rgkMbFj
146b80 58 5a 4a 2f 59 2f 41 6c 79 56 4d 75 48 37 39 4e 41 67 4d 42 41 41 47 6a 67 64 49 77 67 63 38 77 XZJ/Y/AlyVMuH79NAgMBAAGjgdIwgc8w
146ba0 0a 48 51 59 44 56 52 30 4f 42 42 59 45 46 4a 57 78 74 50 43 55 74 72 33 48 32 74 45 52 43 53 47 .HQYDVR0OBBYEFJWxtPCUtr3H2tERCSG
146bc0 2b 77 61 39 4a 2f 52 42 37 4d 41 73 47 41 31 55 64 44 77 51 45 41 77 49 42 42 6a 41 50 42 67 4e +wa9J/RB7MAsGA1UdDwQEAwIBBjAPBgN
146be0 56 48 52 4d 42 41 66 38 45 42 54 41 44 0a 41 51 48 2f 4d 49 47 50 42 67 4e 56 48 53 4d 45 67 59 VHRMBAf8EBTAD.AQH/MIGPBgNVHSMEgY
146c00 63 77 67 59 53 41 46 4a 57 78 74 50 43 55 74 72 33 48 32 74 45 52 43 53 47 2b 77 61 39 4a 2f 52 cwgYSAFJWxtPCUtr3H2tERCSG+wa9J/R
146c20 42 37 6f 57 6d 6b 5a 7a 42 6c 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 54 0a 52 54 45 55 4d B7oWmkZzBlMQswCQYDVQQGEwJT.RTEUM
146c40 42 49 47 41 31 55 45 43 68 4d 4c 51 57 52 6b 56 48 4a 31 63 33 51 67 51 55 49 78 48 54 41 62 42 BIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbB
146c60 67 4e 56 42 41 73 54 46 45 46 6b 5a 46 52 79 64 58 4e 30 49 46 52 55 55 43 42 4f 5a 58 52 33 62 gNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b
146c80 33 4a 72 4d 53 45 77 0a 48 77 59 44 56 51 51 44 45 78 68 42 5a 47 52 55 63 6e 56 7a 64 43 42 44 3JrMSEw.HwYDVQQDExhBZGRUcnVzdCBD
146ca0 62 47 46 7a 63 79 41 78 49 45 4e 42 49 46 4a 76 62 33 53 43 41 51 45 77 44 51 59 4a 4b 6f 5a 49 bGFzcyAxIENBIFJvb3SCAQEwDQYJKoZI
146cc0 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 43 78 74 0a 5a 42 73 66 7a 51 33 64 75 51 48 hvcNAQEFBQADggEBACxt.ZBsfzQ3duQH
146ce0 36 6c 6d 4d 30 4d 6b 68 48 6d 61 36 58 37 66 31 79 46 71 5a 7a 52 31 72 30 36 39 33 70 39 64 62 6lmM0MkhHma6X7f1yFqZzR1r0693p9db
146d00 37 52 63 77 70 69 55 52 64 76 30 59 35 50 65 6a 75 76 45 31 55 68 68 34 64 62 4f 4d 58 4a 30 50 7RcwpiURdv0Y5PejuvE1Uhh4dbOMXJ0P
146d20 68 0a 69 56 59 72 71 57 39 79 54 6b 6b 7a 34 33 4a 38 4b 69 4f 61 76 44 37 2f 4b 43 72 74 6f 2f h.iVYrqW9yTkkz43J8KiOavD7/KCrto/
146d40 38 63 49 37 70 44 56 77 6c 6e 54 55 74 69 42 69 33 34 2f 32 79 64 59 42 37 59 48 45 74 39 74 54 8cI7pDVwlnTUtiBi34/2ydYB7YHEt9tT
146d60 45 76 32 64 42 38 58 66 6a 65 61 34 4d 59 0a 65 44 64 58 4c 2b 67 7a 42 32 66 66 48 73 64 72 4b Ev2dB8Xfjea4MY.eDdXL+gzB2ffHsdrK
146d80 70 56 32 72 6f 39 58 6f 2f 44 30 55 72 53 70 55 77 6a 50 34 45 2f 54 65 6c 4f 4c 2f 62 73 63 56 pV2ro9Xo/D0UrSpUwjP4E/TelOL/bscV
146da0 6a 62 79 2f 72 4b 32 35 58 61 37 31 53 4a 6c 70 7a 2f 2b 30 57 61 74 43 37 78 72 0a 6d 59 62 76 jby/rK25Xa71SJlpz/+0WatC7xr.mYbv
146dc0 50 33 33 7a 47 44 4c 4b 65 38 62 6a 71 32 52 47 6c 66 67 6d 61 64 6c 56 67 33 73 73 6c 67 66 2f P33zGDLKe8bjq2RGlfgmadlVg3sslgf/
146de0 57 53 78 45 6f 38 62 6c 36 61 6e 63 6f 57 4f 41 57 69 46 65 49 63 39 54 56 50 43 36 62 34 6e 62 WSxEo8bl6ancoWOAWiFeIc9TVPC6b4nb
146e00 71 4b 71 56 7a 34 76 6a 0a 63 63 77 65 47 79 42 45 43 4d 42 36 74 6b 44 39 78 4f 51 31 34 52 30 qKqVz4vj.ccweGyBECMB6tkD9xOQ14R0
146e20 57 48 4e 43 38 4b 34 37 57 63 64 6b 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 WHNC8K47Wcdk=.-----END.CERTIFICA
146e40 54 45 2d 2d 2d 2d 2d 0a 0a 41 64 64 54 72 75 73 74 20 45 78 74 65 72 6e 61 6c 20 52 6f 6f 74 0a TE-----..AddTrust.External.Root.
146e60 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 ======================.-----BEGI
146e80 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 4e 6a 43 43 41 78 36 67 41 N.CERTIFICATE-----.MIIENjCCAx6gA
146ea0 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 76 4d wIBAgIBATANBgkqhkiG9w0BAQUFADBvM
146ec0 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 54 52 54 45 55 4d 42 49 47 41 31 55 45 43 68 4d 4c 0a QswCQYDVQQGEwJTRTEUMBIGA1UEChML.
146ee0 51 57 52 6b 56 48 4a 31 63 33 51 67 51 55 49 78 4a 6a 41 6b 42 67 4e 56 42 41 73 54 48 55 46 6b QWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFk
146f00 5a 46 52 79 64 58 4e 30 49 45 56 34 64 47 56 79 62 6d 46 73 49 46 52 55 55 43 42 4f 5a 58 52 33 ZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3
146f20 62 33 4a 72 4d 53 49 77 49 41 59 44 0a 56 51 51 44 45 78 6c 42 5a 47 52 55 63 6e 56 7a 64 43 42 b3JrMSIwIAYD.VQQDExlBZGRUcnVzdCB
146f40 46 65 48 52 6c 63 6d 35 68 62 43 42 44 51 53 42 53 62 32 39 30 4d 42 34 58 44 54 41 77 4d 44 55 FeHRlcm5hbCBDQSBSb290MB4XDTAwMDU
146f60 7a 4d 44 45 77 4e 44 67 7a 4f 46 6f 58 44 54 49 77 4d 44 55 7a 4d 44 45 77 0a 4e 44 67 7a 4f 46 zMDEwNDgzOFoXDTIwMDUzMDEw.NDgzOF
146f80 6f 77 62 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 55 30 55 78 46 44 41 53 42 67 4e 56 42 41 owbzELMAkGA1UEBhMCU0UxFDASBgNVBA
146fa0 6f 54 43 30 46 6b 5a 46 52 79 64 58 4e 30 49 45 46 43 4d 53 59 77 4a 41 59 44 56 51 51 4c 45 78 oTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx
146fc0 31 42 5a 47 52 55 0a 63 6e 56 7a 64 43 42 46 65 48 52 6c 63 6d 35 68 62 43 42 55 56 46 41 67 54 1BZGRU.cnVzdCBFeHRlcm5hbCBUVFAgT
146fe0 6d 56 30 64 32 39 79 61 7a 45 69 4d 43 41 47 41 31 55 45 41 78 4d 5a 51 57 52 6b 56 48 4a 31 63 mV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c
147000 33 51 67 52 58 68 30 5a 58 4a 75 59 57 77 67 51 30 45 67 0a 55 6d 39 76 64 44 43 43 41 53 49 77 3QgRXh0ZXJuYWwgQ0Eg.Um9vdDCCASIw
147020 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 DQYJKoZIhvcNAQEBBQADggEPADCCAQoC
147040 67 67 45 42 41 4c 66 33 47 6a 50 6d 38 67 41 45 4c 54 6e 67 54 6c 76 74 48 37 78 73 44 38 32 31 ggEBALf3GjPm8gAELTngTlvtH7xsD821
147060 0a 2b 69 4f 32 7a 74 36 62 45 54 4f 58 70 43 6c 4d 66 5a 4f 66 76 55 71 38 6b 2b 30 44 47 75 4f .+iO2zt6bETOXpClMfZOfvUq8k+0DGuO
147080 50 7a 2b 56 74 55 46 72 57 6c 79 6d 55 57 6f 43 77 53 58 72 62 4c 70 58 39 75 4d 71 2f 4e 7a 67 Pz+VtUFrWlymUWoCwSXrbLpX9uMq/Nzg
1470a0 74 48 6a 36 52 51 61 31 77 56 73 66 77 0a 54 7a 2f 6f 4d 70 35 30 79 73 69 51 56 4f 6e 47 58 77 tHj6RQa1wVsfw.Tz/oMp50ysiQVOnGXw
1470c0 39 34 6e 5a 70 41 50 41 36 73 59 61 70 65 46 49 2b 65 68 36 46 71 55 4e 7a 58 6d 6b 36 76 42 62 94nZpAPA6sYapeFI+eh6FqUNzXmk6vBb
1470e0 4f 6d 63 5a 53 63 63 62 4e 51 59 41 72 48 45 35 30 34 42 34 59 43 71 4f 6d 6f 0a 61 53 59 59 6b OmcZSccbNQYArHE504B4YCqOmo.aSYYk
147100 4b 74 4d 73 45 38 6a 71 7a 70 50 68 4e 6a 66 7a 70 2f 68 61 57 2b 37 31 30 4c 58 61 30 54 6b 78 KtMsE8jqzpPhNjfzp/haW+710LXa0Tkx
147120 36 33 75 62 55 46 66 63 6c 70 78 43 44 65 7a 65 57 57 6b 57 61 43 55 4e 2f 63 41 4c 77 33 43 6b 63ubUFfclpxCDezeWWkWaCUN/cALw3Ck
147140 6e 4c 61 30 44 68 79 0a 32 78 53 6f 52 63 52 64 4b 6e 32 33 74 4e 62 45 37 71 7a 4e 45 30 53 33 nLa0Dhy.2xSoRcRdKn23tNbE7qzNE0S3
147160 79 53 76 64 51 77 41 6c 2b 6d 47 35 61 57 70 59 49 78 47 33 70 7a 4f 50 56 6e 56 5a 39 63 30 70 ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p
147180 31 30 61 33 43 69 74 6c 74 74 4e 43 62 78 57 79 75 48 76 37 0a 37 2b 6c 64 55 39 55 30 57 69 63 10a3CitlttNCbxWyuHv7.7+ldU9U0Wic
1471a0 43 41 77 45 41 41 61 4f 42 33 44 43 42 32 54 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 72 62 32 CAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2
1471c0 59 65 6a 53 30 4a 76 66 36 78 43 5a 55 37 77 4f 39 34 43 54 4c 56 42 6f 77 43 77 59 44 56 52 30 YejS0Jvf6xCZU7wO94CTLVBowCwYDVR0
1471e0 50 0a 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 P.BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf
147200 38 77 67 5a 6b 47 41 31 55 64 49 77 53 42 6b 54 43 42 6a 6f 41 55 72 62 32 59 65 6a 53 30 4a 76 8wgZkGA1UdIwSBkTCBjoAUrb2YejS0Jv
147220 66 36 78 43 5a 55 37 77 4f 39 34 43 54 4c 0a 56 42 71 68 63 36 52 78 4d 47 38 78 43 7a 41 4a 42 f6xCZU7wO94CTL.VBqhc6RxMG8xCzAJB
147240 67 4e 56 42 41 59 54 41 6c 4e 46 4d 52 51 77 45 67 59 44 56 51 51 4b 45 77 74 42 5a 47 52 55 63 gNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUc
147260 6e 56 7a 64 43 42 42 51 6a 45 6d 4d 43 51 47 41 31 55 45 43 78 4d 64 51 57 52 6b 0a 56 48 4a 31 nVzdCBBQjEmMCQGA1UECxMdQWRk.VHJ1
147280 63 33 51 67 52 58 68 30 5a 58 4a 75 59 57 77 67 56 46 52 51 49 45 35 6c 64 48 64 76 63 6d 73 78 c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsx
1472a0 49 6a 41 67 42 67 4e 56 42 41 4d 54 47 55 46 6b 5a 46 52 79 64 58 4e 30 49 45 56 34 64 47 56 79 IjAgBgNVBAMTGUFkZFRydXN0IEV4dGVy
1472c0 62 6d 46 73 49 45 4e 42 0a 49 46 4a 76 62 33 53 43 41 51 45 77 44 51 59 4a 4b 6f 5a 49 68 76 63 bmFsIENB.IFJvb3SCAQEwDQYJKoZIhvc
1472e0 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 4c 43 62 34 49 55 6c 77 74 59 6a 34 67 2b 57 42 70 4b NAQEFBQADggEBALCb4IUlwtYj4g+WBpK
147300 64 51 5a 69 63 32 59 52 35 67 64 6b 65 57 78 51 48 49 7a 5a 6c 0a 6a 37 44 59 64 37 75 73 51 57 dQZic2YR5gdkeWxQHIzZl.j7DYd7usQW
147320 78 48 59 49 4e 52 73 50 6b 79 50 65 66 38 39 69 59 54 78 34 41 57 70 62 39 61 2f 49 66 50 65 48 xHYINRsPkyPef89iYTx4AWpb9a/IfPeH
147340 6d 4a 49 5a 72 69 54 41 63 4b 68 6a 57 38 38 74 35 52 78 4e 4b 57 74 39 78 2b 54 75 35 77 2f 52 mJIZriTAcKhjW88t5RxNKWt9x+Tu5w/R
147360 77 35 0a 36 77 77 43 55 52 51 74 6a 72 30 57 34 4d 48 66 52 6e 58 6e 4a 4b 33 73 39 45 4b 30 68 w5.6wwCURQtjr0W4MHfRnXnJK3s9EK0h
147380 5a 4e 77 45 47 65 36 6e 51 59 31 53 68 6a 54 4b 33 72 4d 55 55 4b 68 65 6d 50 52 35 72 75 68 78 ZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhx
1473a0 53 76 43 4e 72 34 54 44 65 61 39 59 33 35 35 0a 65 36 63 4a 44 55 43 72 61 74 32 50 69 73 50 32 SvCNr4TDea9Y355.e6cJDUCrat2PisP2
1473c0 39 6f 77 61 51 67 56 52 31 45 58 31 6e 36 64 69 49 57 67 56 49 45 4d 38 6d 65 64 38 76 53 54 59 9owaQgVR1EX1n6diIWgVIEM8med8vSTY
1473e0 71 5a 45 58 63 34 67 2f 56 68 73 78 4f 42 69 30 63 51 2b 61 7a 63 67 4f 6e 6f 34 75 0a 47 2b 47 qZEXc4g/VhsxOBi0cQ+azcgOno4u.G+G
147400 4d 6d 49 50 4c 48 7a 48 78 52 45 7a 47 42 48 4e 4a 64 6d 41 50 78 2f 69 39 46 34 42 72 4c 75 6e MmIPLHzHxREzGBHNJdmAPx/i9F4BrLun
147420 4d 54 41 35 61 6d 6e 6b 50 49 41 6f 75 31 5a 35 6a 4a 68 35 56 6b 70 54 59 67 68 64 61 65 39 43 MTA5amnkPIAou1Z5jJh5VkpTYghdae9C
147440 38 78 34 39 4f 68 67 51 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 8x49OhgQ=.-----END.CERTIFICATE--
147460 2d 2d 2d 0a 0a 41 64 64 54 72 75 73 74 20 50 75 62 6c 69 63 20 53 65 72 76 69 63 65 73 20 52 6f ---..AddTrust.Public.Services.Ro
147480 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ot.=============================
1474a0 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 .-----BEGIN.CERTIFICATE-----.MII
1474c0 45 46 54 43 43 41 76 32 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 EFTCCAv2gAwIBAgIBATANBgkqhkiG9w0
1474e0 42 41 51 55 46 41 44 42 6b 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 54 52 54 45 55 4d 42 49 BAQUFADBkMQswCQYDVQQGEwJTRTEUMBI
147500 47 41 31 55 45 43 68 4d 4c 0a 51 57 52 6b 56 48 4a 31 63 33 51 67 51 55 49 78 48 54 41 62 42 67 GA1UEChML.QWRkVHJ1c3QgQUIxHTAbBg
147520 4e 56 42 41 73 54 46 45 46 6b 5a 46 52 79 64 58 4e 30 49 46 52 55 55 43 42 4f 5a 58 52 33 62 33 NVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3
147540 4a 72 4d 53 41 77 48 67 59 44 56 51 51 44 45 78 64 42 5a 47 52 55 0a 63 6e 56 7a 64 43 42 51 64 JrMSAwHgYDVQQDExdBZGRU.cnVzdCBQd
147560 57 4a 73 61 57 4d 67 51 30 45 67 55 6d 39 76 64 44 41 65 46 77 30 77 4d 44 41 31 4d 7a 41 78 4d WJsaWMgQ0EgUm9vdDAeFw0wMDA1MzAxM
147580 44 51 78 4e 54 42 61 46 77 30 79 4d 44 41 31 4d 7a 41 78 4d 44 51 78 4e 54 42 61 4d 47 51 78 43 DQxNTBaFw0yMDA1MzAxMDQxNTBaMGQxC
1475a0 7a 41 4a 0a 42 67 4e 56 42 41 59 54 41 6c 4e 46 4d 52 51 77 45 67 59 44 56 51 51 4b 45 77 74 42 zAJ.BgNVBAYTAlNFMRQwEgYDVQQKEwtB
1475c0 5a 47 52 55 63 6e 56 7a 64 43 42 42 51 6a 45 64 4d 42 73 47 41 31 55 45 43 78 4d 55 51 57 52 6b ZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRk
1475e0 56 48 4a 31 63 33 51 67 56 46 52 51 49 45 35 6c 0a 64 48 64 76 63 6d 73 78 49 44 41 65 42 67 4e VHJ1c3QgVFRQIE5l.dHdvcmsxIDAeBgN
147600 56 42 41 4d 54 46 30 46 6b 5a 46 52 79 64 58 4e 30 49 46 42 31 59 6d 78 70 59 79 42 44 51 53 42 VBAMTF0FkZFRydXN0IFB1YmxpYyBDQSB
147620 53 62 32 39 30 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 0a 41 41 Sb290MIIBIjANBgkqhkiG9w0BAQEF.AA
147640 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 36 52 6f 77 6a 34 4f 49 46 4d 45 67 32 44 OCAQ8AMIIBCgKCAQEA6Rowj4OIFMEg2D
147660 79 62 6a 78 74 2b 41 33 53 37 32 6d 6e 54 52 71 58 34 6a 73 49 4d 45 5a 42 52 70 53 39 6d 56 45 ybjxt+A3S72mnTRqX4jsIMEZBRpS9mVE
147680 42 56 36 74 73 66 53 6c 62 75 0a 6e 79 4e 75 39 44 6e 4c 6f 62 6c 76 38 6e 37 35 58 59 63 6d 59 BV6tsfSlbu.nyNu9DnLoblv8n75XYcmY
1476a0 5a 34 63 2b 4f 4c 73 70 6f 48 34 49 63 55 6b 7a 42 45 4d 50 39 73 6d 63 6e 72 48 41 5a 63 48 46 Z4c+OLspoH4IcUkzBEMP9smcnrHAZcHF
1476c0 2f 6e 58 47 43 77 77 66 51 35 36 48 6d 49 65 78 6b 76 41 2f 58 31 69 0a 64 39 4e 45 48 69 66 32 /nXGCwwfQ56HmIexkvA/X1i.d9NEHif2
1476e0 50 30 74 45 73 37 63 34 32 54 6b 66 59 4e 56 52 6b 6e 4d 44 74 41 42 70 34 2f 4d 55 54 75 37 52 P0tEs7c42TkfYNVRknMDtABp4/MUTu7R
147700 33 41 6e 50 64 7a 52 47 55 4c 44 34 45 66 4c 2b 4f 48 6e 33 42 7a 6e 2b 55 5a 4b 58 43 31 73 49 3AnPdzRGULD4EfL+OHn3Bzn+UZKXC1sI
147720 58 7a 53 47 0a 41 61 32 49 6c 2b 74 6d 7a 56 37 52 2f 39 78 39 38 6f 54 61 75 6e 65 74 33 49 41 XzSG.Aa2Il+tmzV7R/9x98oTaunet3IA
147740 49 78 36 65 48 31 6c 57 66 6c 32 72 6f 79 42 46 6b 75 75 63 5a 4b 54 38 52 73 33 69 51 68 43 42 Ix6eH1lWfl2royBFkuucZKT8Rs3iQhCB
147760 53 57 78 48 76 65 4e 43 44 39 74 56 49 6b 4e 41 77 0a 48 4d 2b 41 2b 57 44 2b 65 65 53 49 38 74 SWxHveNCD9tVIkNAw.HM+A+WD+eeSI8t
147780 30 41 36 35 52 46 36 32 57 55 61 55 43 36 77 4e 57 30 75 4c 70 39 42 42 47 6f 36 7a 45 46 6c 70 0A65RF62WUaUC6wNW0uLp9BBGo6zEFlp
1477a0 52 4f 57 43 47 4f 6e 39 42 67 2f 51 49 44 41 51 41 42 6f 34 48 52 4d 49 48 4f 4d 42 30 47 0a 41 ROWCGOn9Bg/QIDAQABo4HRMIHOMB0G.A
1477c0 31 55 64 44 67 51 57 42 42 53 42 50 6a 66 59 6b 72 41 66 64 35 39 63 74 4b 74 7a 71 75 66 32 4e 1UdDgQWBBSBPjfYkrAfd59ctKtzquf2N
1477e0 47 41 76 2b 6a 41 4c 42 67 4e 56 48 51 38 45 42 41 4d 43 41 51 59 77 44 77 59 44 56 52 30 54 41 GAv+jALBgNVHQ8EBAMCAQYwDwYDVR0TA
147800 51 48 2f 42 41 55 77 41 77 45 42 0a 2f 7a 43 42 6a 67 59 44 56 52 30 6a 42 49 47 47 4d 49 47 44 QH/BAUwAwEB./zCBjgYDVR0jBIGGMIGD
147820 67 42 53 42 50 6a 66 59 6b 72 41 66 64 35 39 63 74 4b 74 7a 71 75 66 32 4e 47 41 76 2b 71 46 6f gBSBPjfYkrAfd59ctKtzquf2NGAv+qFo
147840 70 47 59 77 5a 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 55 30 55 78 0a 46 44 41 53 42 67 4e pGYwZDELMAkGA1UEBhMCU0Ux.FDASBgN
147860 56 42 41 6f 54 43 30 46 6b 5a 46 52 79 64 58 4e 30 49 45 46 43 4d 52 30 77 47 77 59 44 56 51 51 VBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQ
147880 4c 45 78 52 42 5a 47 52 55 63 6e 56 7a 64 43 42 55 56 46 41 67 54 6d 56 30 64 32 39 79 61 7a 45 LExRBZGRUcnVzdCBUVFAgTmV0d29yazE
1478a0 67 4d 42 34 47 0a 41 31 55 45 41 78 4d 58 51 57 52 6b 56 48 4a 31 63 33 51 67 55 48 56 69 62 47 gMB4G.A1UEAxMXQWRkVHJ1c3QgUHVibG
1478c0 6c 6a 49 45 4e 42 49 46 4a 76 62 33 53 43 41 51 45 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 ljIENBIFJvb3SCAQEwDQYJKoZIhvcNAQ
1478e0 45 46 42 51 41 44 67 67 45 42 41 41 50 33 46 55 72 34 0a 4a 4e 6f 6a 56 68 61 54 64 74 30 32 4b EFBQADggEBAAP3FUr4.JNojVhaTdt02K
147900 4c 6d 75 47 37 6a 44 38 57 53 36 49 42 68 34 6c 53 6b 6e 56 77 57 38 66 43 72 30 75 56 46 56 32 LmuG7jD8WS6IBh4lSknVwW8fCr0uVFV2
147920 6f 63 43 33 67 38 57 46 7a 48 34 71 6e 6b 75 43 52 4f 37 72 37 49 67 47 52 4c 6c 6b 2f 6c 4c 0a ocC3g8WFzH4qnkuCRO7r7IgGRLlk/lL.
147940 2b 59 50 6f 52 4e 57 79 51 53 57 2f 69 48 56 76 2f 78 44 38 53 6c 54 51 58 2f 44 36 37 7a 5a 7a +YPoRNWyQSW/iHVv/xD8SlTQX/D67zZz
147960 66 52 73 32 52 63 59 68 62 62 51 56 75 45 37 50 6e 46 79 6c 50 56 6f 41 6a 67 62 6a 50 47 73 79 fRs2RcYhbbQVuE7PnFylPVoAjgbjPGsy
147980 65 2f 4b 66 38 4c 62 39 33 2f 41 6f 0a 47 45 6a 77 78 72 7a 51 76 7a 53 41 6c 73 4a 4b 73 57 32 e/Kf8Lb93/Ao.GEjwxrzQvzSAlsJKsW2
1479a0 4f 78 35 42 46 33 69 39 6e 72 45 55 45 6f 33 72 63 56 5a 4c 4a 52 32 62 59 47 6f 7a 48 37 5a 78 Ox5BF3i9nrEUEo3rcVZLJR2bYGozH7Zx
1479c0 4f 6d 75 41 53 75 37 56 71 54 49 54 68 34 53 49 4e 68 77 42 6b 2f 6f 78 39 0a 59 6a 6c 6c 70 75 OmuASu7VqTITh4SINhwBk/ox9.Yjllpu
1479e0 39 43 74 6f 41 6c 45 6d 45 42 71 43 51 54 63 41 41 52 4a 6c 2f 36 4e 56 44 46 53 4d 77 47 52 2b 9CtoAlEmEBqCQTcAARJl/6NVDFSMwGR+
147a00 67 6e 32 48 43 4e 58 32 54 6d 6f 55 51 6d 58 69 4c 73 6b 73 33 2f 51 70 70 45 49 57 31 63 78 65 gn2HCNX2TmoUQmXiLsks3/QppEIW1cxe
147a20 4d 69 48 56 39 48 0a 45 75 66 4f 58 31 33 36 32 4b 71 78 4d 79 33 5a 64 76 4a 4f 4f 6a 4d 4d 4b MiHV9H.EufOX1362KqxMy3ZdvJOOjMMK
147a40 37 4d 74 6b 41 59 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 7MtkAY=.-----END.CERTIFICATE----
147a60 2d 0a 0a 41 64 64 54 72 75 73 74 20 51 75 61 6c 69 66 69 65 64 20 43 65 72 74 69 66 69 63 61 74 -..AddTrust.Qualified.Certificat
147a80 65 73 20 52 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d es.Root.========================
147aa0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 ============.-----BEGIN.CERTIFIC
147ac0 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 48 6a 43 43 41 77 61 67 41 77 49 42 41 67 49 42 41 54 41 ATE-----.MIIEHjCCAwagAwIBAgIBATA
147ae0 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 6e 4d 51 73 77 43 51 59 44 56 51 51 NBgkqhkiG9w0BAQUFADBnMQswCQYDVQQ
147b00 47 45 77 4a 54 52 54 45 55 4d 42 49 47 41 31 55 45 43 68 4d 4c 0a 51 57 52 6b 56 48 4a 31 63 33 GEwJTRTEUMBIGA1UEChML.QWRkVHJ1c3
147b20 51 67 51 55 49 78 48 54 41 62 42 67 4e 56 42 41 73 54 46 45 46 6b 5a 46 52 79 64 58 4e 30 49 46 QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IF
147b40 52 55 55 43 42 4f 5a 58 52 33 62 33 4a 72 4d 53 4d 77 49 51 59 44 56 51 51 44 45 78 70 42 5a 47 RUUCBOZXR3b3JrMSMwIQYDVQQDExpBZG
147b60 52 55 0a 63 6e 56 7a 64 43 42 52 64 57 46 73 61 57 5a 70 5a 57 51 67 51 30 45 67 55 6d 39 76 64 RU.cnVzdCBRdWFsaWZpZWQgQ0EgUm9vd
147b80 44 41 65 46 77 30 77 4d 44 41 31 4d 7a 41 78 4d 44 51 30 4e 54 42 61 46 77 30 79 4d 44 41 31 4d DAeFw0wMDA1MzAxMDQ0NTBaFw0yMDA1M
147ba0 7a 41 78 4d 44 51 30 4e 54 42 61 4d 47 63 78 0a 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 4e 46 zAxMDQ0NTBaMGcx.CzAJBgNVBAYTAlNF
147bc0 4d 52 51 77 45 67 59 44 56 51 51 4b 45 77 74 42 5a 47 52 55 63 6e 56 7a 64 43 42 42 51 6a 45 64 MRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEd
147be0 4d 42 73 47 41 31 55 45 43 78 4d 55 51 57 52 6b 56 48 4a 31 63 33 51 67 56 46 52 51 0a 49 45 35 MBsGA1UECxMUQWRkVHJ1c3QgVFRQ.IE5
147c00 6c 64 48 64 76 63 6d 73 78 49 7a 41 68 42 67 4e 56 42 41 4d 54 47 6b 46 6b 5a 46 52 79 64 58 4e ldHdvcmsxIzAhBgNVBAMTGkFkZFRydXN
147c20 30 49 46 46 31 59 57 78 70 5a 6d 6c 6c 5a 43 42 44 51 53 42 53 62 32 39 30 4d 49 49 42 49 6a 41 0IFF1YWxpZmllZCBDQSBSb290MIIBIjA
147c40 4e 42 67 6b 71 68 6b 69 47 0a 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 NBgkqhkiG.9w0BAQEFAAOCAQ8AMIIBCg
147c60 4b 43 41 51 45 41 35 42 36 61 2f 74 77 4a 57 6f 65 6b 6e 30 65 2b 45 56 2b 76 68 44 54 62 59 6a KCAQEA5B6a/twJWoekn0e+EV+vhDTbYj
147c80 78 35 65 4c 66 70 4d 4c 58 73 44 42 77 71 78 42 62 2f 34 4f 78 78 0a 36 34 72 31 45 57 37 74 54 x5eLfpMLXsDBwqxBb/4Oxx.64r1EW7tT
147ca0 77 32 52 30 68 49 59 4c 55 6b 56 41 63 4b 6b 49 68 50 48 45 57 54 2f 49 68 4b 61 75 59 35 63 4c w2R0hIYLUkVAcKkIhPHEWT/IhKauY5cL
147cc0 77 6a 50 63 57 71 7a 5a 77 46 5a 38 56 31 47 38 37 42 34 70 66 59 4f 51 6e 72 6a 66 78 76 4d 30 wjPcWqzZwFZ8V1G87B4pfYOQnrjfxvM0
147ce0 50 43 33 0a 4b 50 30 71 36 70 36 7a 73 4c 6b 45 71 76 33 32 78 37 53 78 75 43 71 67 2b 31 6a 78 PC3.KP0q6p6zsLkEqv32x7SxuCqg+1jx
147d00 47 61 42 76 63 43 56 2b 50 6d 6c 4b 66 77 38 69 32 4f 2b 74 43 42 47 61 4b 5a 6e 68 71 6b 52 46 GaBvcCV+PmlKfw8i2O+tCBGaKZnhqkRF
147d20 6d 68 4a 65 50 70 31 74 55 76 7a 6e 6f 44 31 6f 0a 4c 2f 42 4c 63 48 77 54 4f 4b 32 38 46 53 58 mhJePp1tUvznoD1o.L/BLcHwTOK28FSX
147d40 78 31 73 36 72 6f 73 41 78 31 69 2b 66 34 50 38 55 57 66 79 45 6b 39 6d 48 66 45 78 55 45 2b 75 x1s6rosAx1i+f4P8UWfyEk9mHfExUE+u
147d60 66 30 53 30 52 2b 42 67 36 4f 74 34 6c 32 66 66 54 51 4f 32 6b 42 68 4c 45 4f 2b 47 52 0a 77 56 f0S0R+Bg6Ot4l2ffTQO2kBhLEO+GR.wV
147d80 59 31 38 42 54 63 5a 54 59 4a 62 71 75 6b 42 38 63 31 30 63 49 44 4d 7a 5a 62 64 53 5a 74 51 76 Y18BTcZTYJbqukB8c10cIDMzZbdSZtQv
147da0 45 53 61 30 4e 76 53 33 47 55 2b 6a 51 64 37 52 4e 75 79 6f 42 2f 6d 43 39 73 75 57 58 59 36 51 ESa0NvS3GU+jQd7RNuyoB/mC9suWXY6Q
147dc0 49 44 41 51 41 42 6f 34 48 55 0a 4d 49 48 52 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 51 35 6c IDAQABo4HU.MIHRMB0GA1UdDgQWBBQ5l
147de0 59 74 69 69 31 7a 4a 31 49 43 36 57 41 2b 58 50 78 55 49 51 38 79 59 70 7a 41 4c 42 67 4e 56 48 Ytii1zJ1IC6WA+XPxUIQ8yYpzALBgNVH
147e00 51 38 45 42 41 4d 43 41 51 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 0a 42 41 55 77 41 77 45 42 Q8EBAMCAQYwDwYDVR0TAQH/.BAUwAwEB
147e20 2f 7a 43 42 6b 51 59 44 56 52 30 6a 42 49 47 4a 4d 49 47 47 67 42 51 35 6c 59 74 69 69 31 7a 4a /zCBkQYDVR0jBIGJMIGGgBQ5lYtii1zJ
147e40 31 49 43 36 57 41 2b 58 50 78 55 49 51 38 79 59 70 36 46 72 70 47 6b 77 5a 7a 45 4c 4d 41 6b 47 1IC6WA+XPxUIQ8yYp6FrpGkwZzELMAkG
147e60 41 31 55 45 0a 42 68 4d 43 55 30 55 78 46 44 41 53 42 67 4e 56 42 41 6f 54 43 30 46 6b 5a 46 52 A1UE.BhMCU0UxFDASBgNVBAoTC0FkZFR
147e80 79 64 58 4e 30 49 45 46 43 4d 52 30 77 47 77 59 44 56 51 51 4c 45 78 52 42 5a 47 52 55 63 6e 56 ydXN0IEFCMR0wGwYDVQQLExRBZGRUcnV
147ea0 7a 64 43 42 55 56 46 41 67 54 6d 56 30 64 32 39 79 0a 61 7a 45 6a 4d 43 45 47 41 31 55 45 41 78 zdCBUVFAgTmV0d29y.azEjMCEGA1UEAx
147ec0 4d 61 51 57 52 6b 56 48 4a 31 63 33 51 67 55 58 56 68 62 47 6c 6d 61 57 56 6b 49 45 4e 42 49 46 MaQWRkVHJ1c3QgUXVhbGlmaWVkIENBIF
147ee0 4a 76 62 33 53 43 41 51 45 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 0a 67 Jvb3SCAQEwDQYJKoZIhvcNAQEFBQAD.g
147f00 67 45 42 41 42 6d 72 64 65 72 34 69 32 56 68 6c 52 4f 36 61 51 54 76 68 73 6f 54 6f 4d 65 71 54 gEBABmrder4i2VhlRO6aQTvhsoToMeqT
147f20 32 51 62 50 78 6a 32 71 43 30 73 56 59 38 46 74 7a 44 71 51 6d 6f 64 77 43 56 52 4c 61 65 2f 44 2QbPxj2qC0sVY8FtzDqQmodwCVRLae/D
147f40 4c 50 74 37 77 68 2f 62 44 78 47 0a 47 75 6f 59 51 39 39 32 7a 50 6c 6d 68 70 77 73 61 50 58 70 LPt7wh/bDxG.GuoYQ992zPlmhpwsaPXp
147f60 46 2f 67 78 73 78 6a 45 31 6b 68 39 49 30 78 6f 77 58 36 37 41 52 52 76 78 64 6c 75 33 72 73 45 F/gxsxjE1kh9I0xowX67ARRvxdlu3rsE
147f80 51 6d 72 34 39 6c 78 39 35 64 72 36 68 2b 73 4e 4e 56 4a 6e 30 4a 36 58 0a 64 67 57 54 50 35 58 Qmr49lx95dr6h+sNNVJn0J6X.dgWTP5X
147fa0 48 41 65 5a 70 56 54 68 2f 45 47 47 5a 79 65 4e 66 70 73 6f 2b 67 6d 4e 49 71 75 49 49 53 44 36 HAeZpVTh/EGGZyeNfpso+gmNIquIISD6
147fc0 71 38 72 4b 46 59 71 61 30 70 39 6d 39 4e 35 78 6f 74 53 31 57 66 62 43 33 50 36 43 78 42 39 62 q8rKFYqa0p9m9N5xotS1WfbC3P6CxB9b
147fe0 70 54 39 7a 65 0a 52 58 45 77 4d 6e 38 62 4c 67 6e 35 76 31 4b 68 37 73 4b 41 50 67 5a 63 4c 6c pT9ze.RXEwMn8bLgn5v1Kh7sKAPgZcLl
148000 56 41 77 52 76 31 63 45 57 77 33 46 33 36 39 6e 4a 61 64 39 4a 6a 7a 63 39 59 69 51 42 43 59 7a VAwRv1cEWw3F369nJad9Jjzc9YiQBCYz
148020 39 35 4f 64 42 45 73 49 4a 75 51 52 6e 6f 33 65 44 42 0a 69 46 72 52 48 6e 47 54 48 79 51 77 64 95OdBEsIJuQRno3eDB.iFrRHnGTHyQwd
148040 4f 55 65 71 4e 34 38 4a 7a 64 2f 67 36 36 65 64 38 2f 77 4d 4c 48 2f 53 35 6e 6f 78 71 45 3d 0a OUeqN48Jzd/g66ed8/wMLH/S5noxqE=.
148060 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 45 6e 74 72 75 -----END.CERTIFICATE-----..Entru
148080 73 74 20 52 6f 6f 74 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 0a st.Root.Certification.Authority.
1480a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
1480c0 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d ====.-----BEGIN.CERTIFICATE-----
1480e0 0a 4d 49 49 45 6b 54 43 43 41 33 6d 67 41 77 49 42 41 67 49 45 52 57 74 51 56 44 41 4e 42 67 6b .MIIEkTCCA3mgAwIBAgIERWtQVDANBgk
148100 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 73 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d qhkiG9w0BAQUFADCBsDELMAkGA1UEBhM
148120 43 56 56 4d 78 46 6a 41 55 42 67 4e 56 0a 42 41 6f 54 44 55 56 75 64 48 4a 31 63 33 51 73 49 45 CVVMxFjAUBgNV.BAoTDUVudHJ1c3QsIE
148140 6c 75 59 79 34 78 4f 54 41 33 42 67 4e 56 42 41 73 54 4d 48 64 33 64 79 35 6c 62 6e 52 79 64 58 luYy4xOTA3BgNVBAsTMHd3dy5lbnRydX
148160 4e 30 4c 6d 35 6c 64 43 39 44 55 46 4d 67 61 58 4d 67 61 57 35 6a 62 33 4a 77 0a 62 33 4a 68 64 N0Lm5ldC9DUFMgaXMgaW5jb3Jw.b3Jhd
148180 47 56 6b 49 47 4a 35 49 48 4a 6c 5a 6d 56 79 5a 57 35 6a 5a 54 45 66 4d 42 30 47 41 31 55 45 43 GVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UEC
1481a0 78 4d 57 4b 47 4d 70 49 44 49 77 4d 44 59 67 52 57 35 30 63 6e 56 7a 64 43 77 67 53 57 35 6a 4c xMWKGMpIDIwMDYgRW50cnVzdCwgSW5jL
1481c0 6a 45 74 4d 43 73 47 0a 41 31 55 45 41 78 4d 6b 52 57 35 30 63 6e 56 7a 64 43 42 53 62 32 39 30 jEtMCsG.A1UEAxMkRW50cnVzdCBSb290
1481e0 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 IENlcnRpZmljYXRpb24gQXV0aG9yaXR5
148200 4d 42 34 58 44 54 41 32 4d 54 45 79 4e 7a 49 77 4d 6a 4d 30 0a 4d 6c 6f 58 44 54 49 32 4d 54 45 MB4XDTA2MTEyNzIwMjM0.MloXDTI2MTE
148220 79 4e 7a 49 77 4e 54 4d 30 4d 6c 6f 77 67 62 41 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 56 yNzIwNTM0MlowgbAxCzAJBgNVBAYTAlV
148240 54 4d 52 59 77 46 41 59 44 56 51 51 4b 45 77 31 46 62 6e 52 79 64 58 4e 30 4c 43 42 4a 62 6d 4d TMRYwFAYDVQQKEw1FbnRydXN0LCBJbmM
148260 75 0a 4d 54 6b 77 4e 77 59 44 56 51 51 4c 45 7a 42 33 64 33 63 75 5a 57 35 30 63 6e 56 7a 64 43 u.MTkwNwYDVQQLEzB3d3cuZW50cnVzdC
148280 35 75 5a 58 51 76 51 31 42 54 49 47 6c 7a 49 47 6c 75 59 32 39 79 63 47 39 79 59 58 52 6c 5a 43 5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZC
1482a0 42 69 65 53 42 79 5a 57 5a 6c 63 6d 56 75 0a 59 32 55 78 48 7a 41 64 42 67 4e 56 42 41 73 54 46 BieSByZWZlcmVu.Y2UxHzAdBgNVBAsTF
1482c0 69 68 6a 4b 53 41 79 4d 44 41 32 49 45 56 75 64 48 4a 31 63 33 51 73 49 45 6c 75 59 79 34 78 4c ihjKSAyMDA2IEVudHJ1c3QsIEluYy4xL
1482e0 54 41 72 42 67 4e 56 42 41 4d 54 4a 45 56 75 64 48 4a 31 63 33 51 67 55 6d 39 76 0a 64 43 42 44 TArBgNVBAMTJEVudHJ1c3QgUm9v.dCBD
148300 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 54 43 43 ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCC
148320 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 ASIwDQYJKoZIhvcNAQEBBQADggEPADCC
148340 41 51 6f 43 67 67 45 42 0a 41 4c 61 56 74 6b 4e 43 2b 73 5a 74 4b 6d 39 49 33 35 52 4d 4f 56 63 AQoCggEB.ALaVtkNC+sZtKm9I35RMOVc
148360 46 37 73 4e 35 45 55 46 6f 4e 75 33 73 2f 70 6f 42 6a 36 45 34 4b 50 7a 33 45 45 5a 6d 4c 6b 30 F7sN5EUFoNu3s/poBj6E4KPz3EEZmLk0
148380 65 47 72 45 61 54 73 62 52 77 4a 57 49 73 4d 6e 2f 4d 59 73 7a 0a 41 39 75 33 67 33 73 2b 49 49 eGrEaTsbRwJWIsMn/MYsz.A9u3g3s+II
1483a0 52 65 37 62 4a 57 4b 4b 66 34 34 4c 6c 41 63 54 66 46 79 30 63 4f 6c 79 70 6f 77 43 4b 56 59 68 Re7bJWKKf44LlAcTfFy0cOlypowCKVYh
1483c0 58 62 52 39 6e 31 30 43 76 2f 67 6b 76 4a 72 54 37 65 54 4e 75 51 67 46 41 2f 43 59 71 45 41 4f XbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAO
1483e0 77 77 0a 43 6a 30 59 7a 66 76 39 4b 6c 6d 61 49 35 55 58 4c 45 57 65 48 32 35 44 65 57 30 4d 58 ww.Cj0Yzfv9KlmaI5UXLEWeH25DeW0MX
148400 4a 6a 2b 53 4b 66 46 49 30 64 63 58 76 31 75 35 78 36 30 39 6d 68 46 30 59 61 44 57 36 4b 4b 6a Jj+SKfFI0dcXv1u5x609mhF0YaDW6KKj
148420 62 48 6a 4b 59 44 2b 4a 58 47 49 72 62 36 38 0a 6a 36 78 53 6c 6b 75 71 55 59 33 6b 45 7a 45 5a bHjKYD+JXGIrb68.j6xSlkuqUY3kEzEZ
148440 36 45 35 4e 6e 39 75 73 73 32 72 56 76 44 6c 55 63 63 70 36 65 6e 2b 51 33 58 30 64 67 4e 6d 42 6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmB
148460 75 31 6b 6d 77 68 48 2b 35 70 50 69 39 34 44 6b 5a 66 73 30 4e 77 34 70 67 48 42 4e 0a 72 7a 69 u1kmwhH+5pPi94DkZfs0Nw4pgHBN.rzi
148480 47 4c 70 35 2f 56 36 2b 65 46 36 37 72 48 4d 73 6f 49 56 2b 32 48 4e 6a 6e 6f 67 51 69 2b 64 50 GLp5/V6+eF67rHMsoIV+2HNjnogQi+dP
1484a0 61 32 4d 73 43 41 77 45 41 41 61 4f 42 73 44 43 42 72 54 41 4f 42 67 4e 56 48 51 38 42 41 66 38 a2MsCAwEAAaOBsDCBrTAOBgNVHQ8BAf8
1484c0 45 42 41 4d 43 41 51 59 77 0a 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a EBAMCAQYw.DwYDVR0TAQH/BAUwAwEB/z
1484e0 41 72 42 67 4e 56 48 52 41 45 4a 44 41 69 67 41 38 79 4d 44 41 32 4d 54 45 79 4e 7a 49 77 4d 6a ArBgNVHRAEJDAigA8yMDA2MTEyNzIwMj
148500 4d 30 4d 6c 71 42 44 7a 49 77 4d 6a 59 78 4d 54 49 33 4d 6a 41 31 0a 4d 7a 51 79 57 6a 41 66 42 M0MlqBDzIwMjYxMTI3MjA1.MzQyWjAfB
148520 67 4e 56 48 53 4d 45 47 44 41 57 67 42 52 6f 6b 4f 52 6e 70 4b 5a 54 67 4d 65 47 5a 71 54 78 39 gNVHSMEGDAWgBRokORnpKZTgMeGZqTx9
148540 30 74 44 2b 34 53 39 62 54 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 61 4a 44 6b 5a 36 53 6d 55 0tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU
148560 34 44 48 0a 68 6d 61 6b 38 66 64 4c 51 2f 75 45 76 57 30 77 48 51 59 4a 4b 6f 5a 49 68 76 5a 39 4DH.hmak8fdLQ/uEvW0wHQYJKoZIhvZ9
148580 42 30 45 41 42 42 41 77 44 68 73 49 56 6a 63 75 4d 54 6f 30 4c 6a 41 44 41 67 53 51 4d 41 30 47 B0EABBAwDhsIVjcuMTo0LjADAgSQMA0G
1485a0 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 0a 41 34 49 42 41 51 43 54 31 44 43 77 31 77 4d CSqGSIb3DQEBBQUA.A4IBAQCT1DCw1wM
1485c0 67 4b 74 44 35 59 2b 69 52 44 41 55 67 71 56 38 5a 79 6e 74 79 54 74 53 78 32 39 43 57 2b 31 52 gKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1R
1485e0 61 47 53 77 4d 43 50 65 79 76 49 57 6f 6e 58 39 74 4f 31 4b 7a 4b 74 76 6e 31 49 53 4d 0a 59 2f aGSwMCPeyvIWonX9tO1KzKtvn1ISM.Y/
148600 59 50 79 79 59 42 6b 56 42 73 39 46 38 55 34 70 4e 30 77 42 4f 65 4d 44 70 51 34 37 52 67 78 52 YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxR
148620 7a 77 49 6b 53 4e 63 55 65 73 79 42 72 4a 36 5a 75 61 41 47 41 54 2f 33 42 2b 58 78 46 4e 53 52 zwIkSNcUesyBrJ6ZuaAGAT/3B+XxFNSR
148640 75 7a 46 56 4a 37 79 56 54 61 0a 76 35 32 56 72 32 75 61 32 4a 37 70 38 65 52 44 6a 65 49 52 52 uzFVJ7yVTa.v52Vr2ua2J7p8eRDjeIRR
148660 44 71 2f 72 37 32 44 51 6e 4e 53 69 36 71 37 70 79 6e 50 39 57 51 63 43 6b 33 52 76 4b 71 73 6e Dq/r72DQnNSi6q7pynP9WQcCk3RvKqsn
148680 79 72 51 2f 33 39 2f 32 6e 33 71 73 65 30 77 4a 63 47 45 32 6a 54 53 0a 57 33 69 44 56 75 79 63 yrQ/39/2n3qse0wJcGE2jTS.W3iDVuyc
1486a0 4e 73 4d 6d 34 68 48 32 5a 30 6b 64 6b 71 75 4d 2b 2b 76 2f 65 75 36 46 53 71 64 51 67 50 43 6e NsMm4hH2Z0kdkquM++v/eu6FSqdQgPCn
1486c0 58 45 71 55 4c 6c 38 46 6d 54 78 53 51 65 44 4e 74 47 50 50 41 55 4f 36 6e 49 50 63 6a 32 41 37 XEqULl8FmTxSQeDNtGPPAUO6nIPcj2A7
1486e0 38 31 71 30 0a 74 48 75 75 32 67 75 51 4f 48 58 76 67 52 31 6d 30 76 64 58 63 44 61 7a 76 2f 77 81q0.tHuu2guQOHXvgR1m0vdXcDazv/w
148700 6f 72 33 45 6c 68 56 73 54 2f 68 35 2f 57 72 51 38 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 or3ElhVsT/h5/WrQ8.-----END.CERTI
148720 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 52 53 41 20 53 65 63 75 72 69 74 79 20 32 30 34 38 20 76 FICATE-----..RSA.Security.2048.v
148740 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 3.====================.-----BEGI
148760 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 59 54 43 43 41 6b 6d 67 41 N.CERTIFICATE-----.MIIDYTCCAkmgA
148780 77 49 42 41 67 49 51 43 67 45 42 41 51 41 41 41 6e 77 41 41 41 41 4b 41 41 41 41 41 6a 41 4e 42 wIBAgIQCgEBAQAAAnwAAAAKAAAAAjANB
1487a0 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 41 36 4d 52 6b 77 46 77 59 44 56 51 51 4b 0a gkqhkiG9w0BAQUFADA6MRkwFwYDVQQK.
1487c0 45 78 42 53 55 30 45 67 55 32 56 6a 64 58 4a 70 64 48 6b 67 53 57 35 6a 4d 52 30 77 47 77 59 44 ExBSU0EgU2VjdXJpdHkgSW5jMR0wGwYD
1487e0 56 51 51 4c 45 78 52 53 55 30 45 67 55 32 56 6a 64 58 4a 70 64 48 6b 67 4d 6a 41 30 4f 43 42 57 VQQLExRSU0EgU2VjdXJpdHkgMjA0OCBW
148800 4d 7a 41 65 46 77 30 77 4d 54 41 79 0a 4d 6a 49 79 4d 44 4d 35 4d 6a 4e 61 46 77 30 79 4e 6a 41 MzAeFw0wMTAy.MjIyMDM5MjNaFw0yNjA
148820 79 4d 6a 49 79 4d 44 4d 35 4d 6a 4e 61 4d 44 6f 78 47 54 41 58 42 67 4e 56 42 41 6f 54 45 46 4a yMjIyMDM5MjNaMDoxGTAXBgNVBAoTEFJ
148840 54 51 53 42 54 5a 57 4e 31 63 6d 6c 30 65 53 42 4a 62 6d 4d 78 48 54 41 62 0a 42 67 4e 56 42 41 TQSBTZWN1cml0eSBJbmMxHTAb.BgNVBA
148860 73 54 46 46 4a 54 51 53 42 54 5a 57 4e 31 63 6d 6c 30 65 53 41 79 4d 44 51 34 49 46 59 7a 4d 49 sTFFJTQSBTZWN1cml0eSAyMDQ4IFYzMI
148880 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 IBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMI
1488a0 49 42 43 67 4b 43 0a 41 51 45 41 74 34 39 56 63 64 4b 41 33 58 74 70 65 61 66 77 47 46 41 79 50 IBCgKC.AQEAt49VcdKA3XtpeafwGFAyP
1488c0 47 4a 6e 39 67 71 56 42 39 33 6d 47 2f 4f 65 32 64 4a 42 56 47 75 74 6e 33 79 2b 47 63 33 37 52 GJn9gqVB93mG/Oe2dJBVGutn3y+Gc37R
1488e0 71 74 42 61 42 34 59 36 6c 58 49 4c 35 46 34 69 53 6a 37 0a 4a 79 6c 67 2f 39 2b 50 6a 44 76 4a qtBaB4Y6lXIL5F4iSj7.Jylg/9+PjDvJ
148900 53 5a 75 31 70 4a 54 4f 41 65 6f 2b 74 57 4e 37 66 79 62 39 47 64 33 41 49 62 32 45 30 53 31 50 SZu1pJTOAeo+tWN7fyb9Gd3AIb2E0S1P
148920 52 73 4e 4f 33 4e 67 33 4f 54 73 6f 72 38 75 64 47 75 6f 72 72 79 47 6c 77 53 4d 69 75 4c 67 62 RsNO3Ng3OTsor8udGuorryGlwSMiuLgb
148940 0a 57 68 4f 48 56 34 50 52 38 43 44 6e 36 45 38 6a 51 72 41 41 70 58 32 4a 36 65 6c 68 63 35 53 .WhOHV4PR8CDn6E8jQrAApX2J6elhc5S
148960 59 63 53 61 38 4c 57 72 67 39 30 33 77 38 62 59 71 4f 44 47 42 44 53 6e 68 41 4d 46 52 44 30 78 YcSa8LWrg903w8bYqODGBDSnhAMFRD0x
148980 53 2b 41 52 61 71 6e 31 79 30 37 69 48 0a 4b 72 74 6a 45 41 4d 71 73 36 46 50 44 56 70 65 52 72 S+ARaqn1y07iH.KrtjEAMqs6FPDVpeRr
1489a0 63 39 44 76 56 30 37 4a 6d 66 2b 54 30 6b 67 59 69 6d 33 57 42 55 36 4a 55 32 50 63 59 4a 6b 35 c9DvV07Jmf+T0kgYim3WBU6JU2PcYJk5
1489c0 71 6a 45 6f 41 41 56 5a 6b 5a 52 37 33 51 70 58 7a 44 75 76 73 66 39 2f 55 50 0a 2b 4b 79 35 74 qjEoAAVZkZR73QpXzDuvsf9/UP.+Ky5t
1489e0 66 51 33 6d 42 4d 59 33 6f 56 62 74 77 79 43 4f 34 64 76 6c 54 6c 59 4d 4e 70 75 41 57 67 58 49 fQ3mBMY3oVbtwyCO4dvlTlYMNpuAWgXI
148a00 73 7a 41 43 77 49 44 41 51 41 42 6f 32 4d 77 59 54 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 szACwIDAQABo2MwYTAPBgNVHRMBAf8EB
148a20 54 41 44 41 51 48 2f 0a 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 66 TADAQH/.MA4GA1UdDwEB/wQEAwIBBjAf
148a40 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 51 48 77 31 45 77 70 4b 72 70 52 61 34 31 4a 50 72 2f BgNVHSMEGDAWgBQHw1EwpKrpRa41JPr/
148a60 4a 43 77 7a 30 4c 47 64 6a 44 41 64 42 67 4e 56 48 51 34 45 0a 46 67 51 55 42 38 4e 52 4d 4b 53 JCwz0LGdjDAdBgNVHQ4E.FgQUB8NRMKS
148a80 71 36 55 57 75 4e 53 54 36 2f 79 51 73 4d 39 43 78 6e 59 77 77 44 51 59 4a 4b 6f 5a 49 68 76 63 q6UWuNST6/yQsM9CxnYwwDQYJKoZIhvc
148aa0 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 46 38 2b 68 6e 5a 75 75 44 55 38 54 6a 59 63 48 6e 6d NAQEFBQADggEBAF8+hnZuuDU8TjYcHnm
148ac0 59 0a 76 2f 33 56 45 68 46 35 55 67 37 75 4d 59 6d 38 33 58 2f 35 30 63 59 56 49 65 69 4b 41 56 Y.v/3VEhF5Ug7uMYm83X/50cYVIeiKAV
148ae0 51 4e 4f 76 74 55 75 64 5a 6a 31 4c 47 71 6c 6b 32 69 51 6b 33 55 55 78 2b 4c 45 4e 35 2f 5a 62 QNOvtUudZj1LGqlk2iQk3UUx+LEN5/Zb
148b00 35 67 45 79 64 78 69 4b 52 7a 34 34 52 6a 0a 30 61 52 56 34 56 43 54 35 68 73 4f 65 64 42 6e 76 5gEydxiKRz44Rj.0aRV4VCT5hsOedBnv
148b20 45 62 49 76 7a 38 58 44 5a 58 6d 78 70 42 70 33 75 65 30 4c 39 36 56 66 64 41 53 50 7a 30 2b 66 EbIvz8XDZXmxpBp3ue0L96VfdASPz0+f
148b40 30 30 2f 46 47 6a 31 45 56 44 56 77 66 53 51 70 51 67 64 4d 57 44 2f 59 49 77 6a 0a 56 41 71 76 00/FGj1EVDVwfSQpQgdMWD/YIwj.VAqv
148b60 2f 71 46 75 78 64 46 36 4b 6d 68 34 7a 78 36 43 43 69 43 30 48 36 33 6c 68 62 4a 71 61 48 56 4f /qFuxdF6Kmh4zx6CCiC0H63lhbJqaHVO
148b80 72 53 55 33 6c 49 57 2b 76 61 48 55 36 72 63 4d 53 7a 79 64 36 42 49 41 38 46 2b 73 44 65 47 73 rSU3lIW+vaHU6rcMSzyd6BIA8F+sDeGs
148ba0 63 47 4e 7a 39 33 39 35 0a 6e 7a 49 6c 51 6e 51 46 67 43 69 2f 76 63 45 6b 6c 6c 67 56 73 52 63 cGNz9395.nzIlQnQFgCi/vcEkllgVsRc
148bc0 68 36 59 6c 4c 32 77 65 49 5a 2f 51 56 72 58 41 2b 4c 30 32 46 4f 38 4b 33 32 2f 36 59 61 43 4f h6YlL2weIZ/QVrXA+L02FO8K32/6YaCO
148be0 4a 34 58 51 50 33 76 54 46 68 47 4d 70 47 38 7a 4c 42 38 6b 41 0a 70 4b 6e 58 77 69 4a 50 5a 39 J4XQP3vTFhGMpG8zLB8kA.pKnXwiJPZ9
148c00 64 33 37 43 41 46 59 64 34 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d d37CAFYd4=.-----END.CERTIFICATE-
148c20 2d 2d 2d 2d 0a 0a 47 65 6f 54 72 75 73 74 20 47 6c 6f 62 61 6c 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d ----..GeoTrust.Global.CA.=======
148c40 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 ===========.-----BEGIN.CERTIFICA
148c60 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 56 44 43 43 41 6a 79 67 41 77 49 42 41 67 49 44 41 6a 52 57 TE-----.MIIDVDCCAjygAwIBAgIDAjRW
148c80 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 4d 45 49 78 43 7a 41 4a 42 67 4e 56 MA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNV
148ca0 42 41 59 54 41 6c 56 54 4d 52 59 77 46 41 59 44 56 51 51 4b 0a 45 77 31 48 5a 57 39 55 63 6e 56 BAYTAlVTMRYwFAYDVQQK.Ew1HZW9UcnV
148cc0 7a 64 43 42 4a 62 6d 4d 75 4d 52 73 77 47 51 59 44 56 51 51 44 45 78 4a 48 5a 57 39 55 63 6e 56 zdCBJbmMuMRswGQYDVQQDExJHZW9UcnV
148ce0 7a 64 43 42 48 62 47 39 69 59 57 77 67 51 30 45 77 48 68 63 4e 4d 44 49 77 4e 54 49 78 4d 44 51 zdCBHbG9iYWwgQ0EwHhcNMDIwNTIxMDQ
148d00 77 0a 4d 44 41 77 57 68 63 4e 4d 6a 49 77 4e 54 49 78 4d 44 51 77 4d 44 41 77 57 6a 42 43 4d 51 w.MDAwWhcNMjIwNTIxMDQwMDAwWjBCMQ
148d20 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 57 4d 42 51 47 41 31 55 45 43 68 4d 4e 52 32 swCQYDVQQGEwJVUzEWMBQGA1UEChMNR2
148d40 56 76 56 48 4a 31 63 33 51 67 53 57 35 6a 0a 4c 6a 45 62 4d 42 6b 47 41 31 55 45 41 78 4d 53 52 VvVHJ1c3QgSW5j.LjEbMBkGA1UEAxMSR
148d60 32 56 76 56 48 4a 31 63 33 51 67 52 32 78 76 59 6d 46 73 49 45 4e 42 4d 49 49 42 49 6a 41 4e 42 2VvVHJ1c3QgR2xvYmFsIENBMIIBIjANB
148d80 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 0a 43 67 4b 43 gkqhkiG9w0BAQEFAAOCAQ8AMIIB.CgKC
148da0 41 51 45 41 32 73 77 59 59 7a 44 39 39 42 63 6a 47 6c 5a 2b 57 39 38 38 62 44 6a 6b 63 62 64 34 AQEA2swYYzD99BcjGlZ+W988bDjkcbd4
148dc0 6b 64 53 38 6f 64 68 4d 2b 4b 68 44 74 67 50 70 54 53 45 48 43 49 6a 61 57 43 39 6d 4f 53 6d 39 kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9
148de0 42 58 69 4c 6e 54 6a 6f 0a 42 62 64 71 66 6e 47 6b 35 73 52 67 70 72 44 76 67 4f 53 4a 4b 41 2b BXiLnTjo.BbdqfnGk5sRgprDvgOSJKA+
148e00 65 4a 64 62 74 67 2f 4f 74 70 70 48 48 6d 4d 6c 43 47 44 55 55 6e 61 32 59 52 70 49 75 54 38 72 eJdbtg/OtppHHmMlCGDUUna2YRpIuT8r
148e20 78 68 30 50 42 46 70 56 58 4c 56 44 76 69 53 32 41 65 6c 65 74 0a 38 75 35 66 61 39 49 41 6a 62 xh0PBFpVXLVDviS2Aelet.8u5fa9IAjb
148e40 6b 55 2b 42 51 56 4e 64 6e 41 52 71 4e 37 63 73 69 52 76 38 6c 56 4b 38 33 51 6c 7a 36 63 4a 6d kU+BQVNdnARqN7csiRv8lVK83Qlz6cJm
148e60 54 4d 33 38 36 44 47 58 48 4b 54 75 62 55 31 58 75 70 47 63 31 56 33 73 6a 73 30 6c 34 34 55 2b TM386DGXHKTubU1XupGc1V3sjs0l44U+
148e80 56 63 0a 54 34 77 74 2f 6c 41 6a 4e 76 78 6d 35 73 75 4f 70 44 6b 5a 41 4c 65 56 41 6a 6d 52 43 Vc.T4wt/lAjNvxm5suOpDkZALeVAjmRC
148ea0 77 37 2b 4f 43 37 52 48 51 57 61 39 6b 30 2b 62 77 38 48 48 61 38 73 48 6f 39 67 4f 65 4c 36 4e w7+OC7RHQWa9k0+bw8HHa8sHo9gOeL6N
148ec0 6c 4d 54 4f 64 52 65 4a 69 76 62 50 61 67 55 0a 76 54 4c 72 47 41 4d 6f 55 67 52 78 35 61 73 7a lMTOdReJivbPagU.vTLrGAMoUgRx5asz
148ee0 50 65 45 34 75 77 63 32 68 47 4b 63 65 65 6f 57 4d 50 52 66 77 43 76 6f 63 57 76 6b 2b 51 49 44 PeE4uwc2hGKceeoWMPRfwCvocWvk+QID
148f00 41 51 41 42 6f 31 4d 77 55 54 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 0a 41 51 48 AQABo1MwUTAPBgNVHRMBAf8EBTAD.AQH
148f20 2f 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 54 41 65 70 68 6f 6a 59 6e 37 71 77 56 6b 44 42 46 /MB0GA1UdDgQWBBTAephojYn7qwVkDBF
148f40 39 71 6e 31 6c 75 4d 72 4d 54 6a 41 66 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 54 41 65 70 68 9qn1luMrMTjAfBgNVHSMEGDAWgBTAeph
148f60 6f 6a 59 6e 37 71 77 56 6b 0a 44 42 46 39 71 6e 31 6c 75 4d 72 4d 54 6a 41 4e 42 67 6b 71 68 6b ojYn7qwVk.DBF9qn1luMrMTjANBgkqhk
148f80 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 4e 65 4d 70 61 75 55 76 58 56 53 4f 4b 56 iG9w0BAQUFAAOCAQEANeMpauUvXVSOKV
148fa0 43 55 6e 35 6b 61 46 4f 53 50 65 43 70 69 6c 4b 49 6e 5a 35 37 51 0a 7a 78 70 65 52 2b 6e 42 73 CUn5kaFOSPeCpilKInZ57Q.zxpeR+nBs
148fc0 71 54 50 33 55 45 61 42 55 36 62 53 2b 35 4b 62 31 56 53 73 79 53 68 4e 77 72 72 5a 48 59 71 4c qTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqL
148fe0 69 7a 7a 2f 54 74 31 6b 4c 2f 36 63 64 6a 48 50 54 66 53 74 51 57 56 59 72 6d 6d 33 6f 6b 39 4e izz/Tt1kL/6cdjHPTfStQWVYrmm3ok9N
149000 6e 73 34 0a 64 30 69 58 72 4b 59 67 6a 79 36 6d 79 51 7a 43 73 70 6c 46 41 4d 66 4f 45 56 45 69 ns4.d0iXrKYgjy6myQzCsplFAMfOEVEi
149020 49 75 43 6c 36 72 59 56 53 41 6c 6b 36 6c 35 50 64 50 63 46 50 73 65 4b 55 67 7a 62 46 62 53 39 IuCl6rYVSAlk6l5PdPcFPseKUgzbFbS9
149040 62 5a 76 6c 78 72 46 55 61 4b 6e 6a 61 5a 43 32 0a 6d 71 55 50 75 4c 6b 2f 49 48 32 75 53 72 57 bZvlxrFUaKnjaZC2.mqUPuLk/IH2uSrW
149060 34 6e 4f 51 64 74 71 76 6d 6c 4b 58 42 78 34 4f 74 32 2f 55 6e 68 77 34 45 62 4e 58 2f 33 61 42 4nOQdtqvmlKXBx4Ot2/Unhw4EbNX/3aB
149080 64 37 59 64 53 74 79 73 56 41 71 34 35 70 6d 70 30 36 64 72 45 35 37 78 4e 4e 42 36 70 0a 58 45 d7YdStysVAq45pmp06drE57xNNB6p.XE
1490a0 30 7a 58 35 49 4a 4c 34 68 6d 58 58 65 58 78 78 31 32 45 36 6e 56 35 66 45 57 43 52 45 31 31 61 0zX5IJL4hmXXeXxx12E6nV5fEWCRE11a
1490c0 7a 62 4a 48 46 77 4c 4a 68 57 43 39 6b 58 74 4e 48 6a 55 53 74 65 64 65 6a 56 30 4e 78 50 4e 4f zbJHFwLJhWC9kXtNHjUStedejV0NxPNO
1490e0 33 43 42 57 61 41 6f 63 76 6d 0a 4d 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 3CBWaAocvm.Mw==.-----END.CERTIFI
149100 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 65 6f 54 72 75 73 74 20 47 6c 6f 62 61 6c 20 43 41 20 32 0a CATE-----..GeoTrust.Global.CA.2.
149120 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 ====================.-----BEGIN.
149140 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 5a 6a 43 43 41 6b 36 67 41 77 49 CERTIFICATE-----.MIIDZjCCAk6gAwI
149160 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 45 4d 51 73 BAgIBATANBgkqhkiG9w0BAQUFADBEMQs
149180 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 57 4d 42 51 47 41 31 55 45 43 68 4d 4e 0a 52 32 wCQYDVQQGEwJVUzEWMBQGA1UEChMN.R2
1491a0 56 76 56 48 4a 31 63 33 51 67 53 57 35 6a 4c 6a 45 64 4d 42 73 47 41 31 55 45 41 78 4d 55 52 32 VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2
1491c0 56 76 56 48 4a 31 63 33 51 67 52 32 78 76 59 6d 46 73 49 45 4e 42 49 44 49 77 48 68 63 4e 4d 44 VvVHJ1c3QgR2xvYmFsIENBIDIwHhcNMD
1491e0 51 77 4d 7a 41 30 4d 44 55 77 0a 4d 44 41 77 57 68 63 4e 4d 54 6b 77 4d 7a 41 30 4d 44 55 77 4d QwMzA0MDUw.MDAwWhcNMTkwMzA0MDUwM
149200 44 41 77 57 6a 42 45 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 57 4d 42 51 47 41 DAwWjBEMQswCQYDVQQGEwJVUzEWMBQGA
149220 31 55 45 43 68 4d 4e 52 32 56 76 56 48 4a 31 63 33 51 67 53 57 35 6a 0a 4c 6a 45 64 4d 42 73 47 1UEChMNR2VvVHJ1c3QgSW5j.LjEdMBsG
149240 41 31 55 45 41 78 4d 55 52 32 56 76 56 48 4a 31 63 33 51 67 52 32 78 76 59 6d 46 73 49 45 4e 42 A1UEAxMUR2VvVHJ1c3QgR2xvYmFsIENB
149260 49 44 49 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 IDIwggEiMA0GCSqGSIb3DQEBAQUAA4IB
149280 44 77 41 77 0a 67 67 45 4b 41 6f 49 42 41 51 44 76 50 45 31 41 50 52 44 66 4f 31 4d 41 34 57 66 DwAw.ggEKAoIBAQDvPE1APRDfO1MA4Wf
1492a0 2b 6c 47 41 56 50 6f 57 49 38 59 6b 4e 6b 4d 67 6f 49 35 6b 46 36 43 73 67 6e 63 62 7a 59 45 62 +lGAVPoWI8YkNkMgoI5kF6CsgncbzYEb
1492c0 59 77 62 4c 56 6a 44 48 5a 33 43 42 35 4a 49 47 2f 0a 4e 54 4c 38 59 32 6e 62 73 53 70 72 37 69 YwbLVjDHZ3CB5JIG/.NTL8Y2nbsSpr7i
1492e0 46 59 38 67 6a 70 65 4d 74 76 79 2f 77 57 55 73 69 52 78 50 38 39 63 39 36 78 50 71 66 43 66 57 FY8gjpeMtvy/wWUsiRxP89c96xPqfCfW
149300 62 42 39 58 35 53 4a 42 72 69 31 57 65 52 30 49 49 51 31 33 68 4c 54 79 74 43 4f 62 31 6b 0a 4c bB9X5SJBri1WeR0IIQ13hLTytCOb1k.L
149320 55 43 67 73 42 44 54 4f 45 68 47 69 4b 45 4d 75 7a 6f 7a 4b 6d 4b 59 2b 77 43 64 45 31 6c 2f 62 UCgsBDTOEhGiKEMuzozKmKY+wCdE1l/b
149340 7a 74 79 71 75 36 6d 44 34 62 35 42 57 48 71 5a 33 38 4d 4e 35 61 4c 35 6d 6b 57 52 78 48 43 4a ztyqu6mD4b5BWHqZ38MN5aL5mkWRxHCJ
149360 31 6b 44 73 36 5a 67 77 69 46 41 0a 56 76 71 67 78 33 30 36 45 2b 50 73 56 38 65 7a 31 71 36 64 1kDs6ZgwiFA.Vvqgx306E+PsV8ez1q6d
149380 69 59 44 33 41 65 63 73 39 70 59 72 45 77 31 35 4c 4e 6e 41 35 49 5a 37 53 34 77 4d 63 6f 4b 4b iYD3Aecs9pYrEw15LNnA5IZ7S4wMcoKK
1493a0 2b 78 66 4e 41 47 77 36 45 7a 79 77 68 49 64 4c 46 6e 6f 70 73 6b 2f 62 0a 48 64 51 4c 38 32 59 +xfNAGw6EzywhIdLFnopsk/b.HdQL82Y
1493c0 33 76 64 6a 32 56 37 74 65 4a 48 71 34 50 49 75 35 2b 70 49 61 47 6f 53 65 32 48 53 50 71 68 74 3vdj2V7teJHq4PIu5+pIaGoSe2HSPqht
1493e0 2f 58 76 54 2b 52 53 49 68 41 67 4d 42 41 41 47 6a 59 7a 42 68 4d 41 38 47 41 31 55 64 45 77 45 /XvT+RSIhAgMBAAGjYzBhMA8GA1UdEwE
149400 42 2f 77 51 46 0a 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 48 45 34 4e 76 B/wQF.MAMBAf8wHQYDVR0OBBYEFHE4Nv
149420 49 43 4d 56 4e 48 4b 32 36 36 5a 55 61 70 45 42 56 59 49 41 55 4a 4d 42 38 47 41 31 55 64 49 77 ICMVNHK266ZUapEBVYIAUJMB8GA1UdIw
149440 51 59 4d 42 61 41 46 48 45 34 4e 76 49 43 4d 56 4e 48 0a 4b 32 36 36 5a 55 61 70 45 42 56 59 49 QYMBaAFHE4NvICMVNH.K266ZUapEBVYI
149460 41 55 4a 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 68 6a 41 4e 42 67 6b 71 68 AUJMA4GA1UdDwEB/wQEAwIBhjANBgkqh
149480 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 41 2f 65 31 4b 36 74 64 45 50 78 37 0a kiG9w0BAQUFAAOCAQEAA/e1K6tdEPx7.
1494a0 73 72 4a 65 72 4a 73 4f 66 6c 4e 34 57 54 35 43 42 50 35 31 6f 36 32 73 67 55 37 58 41 6f 74 65 srJerJsOflN4WT5CBP51o62sgU7XAote
1494c0 78 43 33 49 55 6e 62 48 4c 42 2f 38 67 54 4b 59 30 55 76 47 6b 70 4d 7a 4e 54 45 76 2f 4e 67 64 xC3IUnbHLB/8gTKY0UvGkpMzNTEv/Ngd
1494e0 52 4e 33 67 67 58 2b 64 36 59 76 68 0a 5a 4a 46 69 43 7a 6b 49 6a 4b 78 30 6e 56 6e 5a 65 6c 6c RN3ggX+d6Yvh.ZJFiCzkIjKx0nVnZell
149500 53 6c 78 47 35 46 6e 74 76 52 64 4f 57 32 54 46 39 41 6a 59 50 6e 44 74 75 7a 79 77 4e 41 30 5a SlxG5FntvRdOW2TF9AjYPnDtuzywNA0Z
149520 46 36 36 44 30 66 30 68 45 78 67 68 41 7a 4e 34 62 63 4c 55 70 72 62 71 4c 0a 4f 7a 52 6c 64 52 F66D0f0hExghAzN4bcLUprbqL.OzRldR
149540 74 78 49 52 30 73 46 41 71 77 6c 70 57 34 31 75 72 79 5a 66 73 70 75 6b 2f 71 6b 5a 4e 30 61 62 txIR0sFAqwlpW41uryZfspuk/qkZN0ab
149560 62 79 2f 2b 45 61 30 41 7a 52 64 6f 58 4c 69 69 57 39 6c 31 34 73 62 78 57 5a 4a 75 65 32 4b 66 by/+Ea0AzRdoXLiiW9l14sbxWZJue2Kf
149580 38 69 37 4d 6b 43 0a 78 31 59 41 7a 55 6d 35 73 32 78 37 55 77 51 61 34 71 6a 4a 71 68 49 46 49 8i7MkC.x1YAzUm5s2x7UwQa4qjJqhIFI
1495a0 38 4c 4f 35 37 73 45 41 73 7a 41 52 36 4c 6b 78 43 6b 76 57 30 56 58 69 56 48 75 50 4f 74 53 43 8LO57sEAszAR6LkxCkvW0VXiVHuPOtSC
1495c0 50 38 48 4e 52 36 66 4e 57 70 48 53 6c 61 59 30 56 71 46 0a 48 34 7a 31 49 72 2b 72 7a 6f 50 7a P8HNR6fNWpHSlaY0VqF.H4z1Ir+rzoPz
1495e0 34 69 49 70 72 6e 32 44 51 4b 69 36 62 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 4iIprn2DQKi6bA==.-----END.CERTIF
149600 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 65 6f 54 72 75 73 74 20 55 6e 69 76 65 72 73 61 6c 20 43 ICATE-----..GeoTrust.Universal.C
149620 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 A.=====================.-----BEG
149640 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 61 44 43 43 41 31 43 67 IN.CERTIFICATE-----.MIIFaDCCA1Cg
149660 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 46 AwIBAgIBATANBgkqhkiG9w0BAQUFADBF
149680 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 57 4d 42 51 47 41 31 55 45 43 68 4d 4e MQswCQYDVQQGEwJVUzEWMBQGA1UEChMN
1496a0 0a 52 32 56 76 56 48 4a 31 63 33 51 67 53 57 35 6a 4c 6a 45 65 4d 42 77 47 41 31 55 45 41 78 4d .R2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxM
1496c0 56 52 32 56 76 56 48 4a 31 63 33 51 67 56 57 35 70 64 6d 56 79 63 32 46 73 49 45 4e 42 4d 42 34 VR2VvVHJ1c3QgVW5pdmVyc2FsIENBMB4
1496e0 58 44 54 41 30 4d 44 4d 77 4e 44 41 31 0a 4d 44 41 77 4d 46 6f 58 44 54 49 35 4d 44 4d 77 4e 44 XDTA0MDMwNDA1.MDAwMFoXDTI5MDMwND
149700 41 31 4d 44 41 77 4d 46 6f 77 52 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 6a A1MDAwMFowRTELMAkGA1UEBhMCVVMxFj
149720 41 55 42 67 4e 56 42 41 6f 54 44 55 64 6c 62 31 52 79 64 58 4e 30 49 45 6c 75 0a 59 79 34 78 48 AUBgNVBAoTDUdlb1RydXN0IElu.Yy4xH
149740 6a 41 63 42 67 4e 56 42 41 4d 54 46 55 64 6c 62 31 52 79 64 58 4e 30 49 46 56 75 61 58 5a 6c 63 jAcBgNVBAMTFUdlb1RydXN0IFVuaXZlc
149760 6e 4e 68 62 43 42 44 51 54 43 43 41 69 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 nNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBB
149780 51 41 44 67 67 49 50 0a 41 44 43 43 41 67 6f 43 67 67 49 42 41 4b 59 56 56 61 43 6a 78 75 41 66 QADggIP.ADCCAgoCggIBAKYVVaCjxuAf
1497a0 6a 4a 30 68 55 4e 66 42 76 69 74 62 74 61 53 65 6f 64 6c 79 57 4c 30 41 47 30 79 2f 59 63 6b 55 jJ0hUNfBvitbtaSeodlyWL0AG0y/YckU
1497c0 48 55 57 43 71 38 59 64 67 4e 59 39 36 78 43 63 4f 71 39 74 0a 4a 50 69 38 63 51 47 65 42 76 56 HUWCq8YdgNY96xCcOq9t.JPi8cQGeBvV
1497e0 38 58 78 37 42 44 6c 58 4b 67 35 70 5a 4d 4b 34 5a 79 7a 42 49 6c 65 30 69 4e 34 33 30 53 70 70 8Xx7BDlXKg5pZMK4ZyzBIle0iN430Spp
149800 79 5a 6a 36 74 6c 63 44 67 46 67 44 67 45 42 38 72 4d 51 37 58 6c 46 54 54 51 6a 4f 67 4e 42 30 yZj6tlcDgFgDgEB8rMQ7XlFTTQjOgNB0
149820 65 0a 52 58 62 64 54 38 6f 59 4e 2b 79 46 46 58 6f 5a 43 50 7a 56 78 35 7a 77 38 71 6b 75 45 4b e.RXbdT8oYN+yFFXoZCPzVx5zw8qkuEK
149840 6d 53 35 6a 31 59 50 61 6b 57 61 44 77 76 64 53 45 59 66 79 68 33 70 65 46 68 46 37 65 6d 36 66 mS5j1YPakWaDwvdSEYfyh3peFhF7em6f
149860 67 65 6d 64 74 7a 62 76 51 4b 6f 69 46 73 0a 37 74 71 71 68 5a 4a 6d 72 2f 5a 36 61 34 4c 61 75 gemdtzbvQKoiFs.7tqqhZJmr/Z6a4Lau
149880 69 49 49 4e 51 2f 50 51 76 45 31 2b 6d 72 75 66 69 73 6c 7a 44 6f 52 35 47 32 76 63 37 4a 32 48 iIINQ/PQvE1+mrufislzDoR5G2vc7J2H
1498a0 61 33 51 73 6e 68 6e 47 71 51 35 48 46 45 4c 5a 31 61 44 2f 54 68 64 44 63 37 64 0a 38 4c 73 72 a3QsnhnGqQ5HFELZ1aD/ThdDc7d.8Lsr
1498c0 6c 68 2f 65 65 7a 4a 53 2f 52 32 37 74 51 61 68 73 69 46 65 70 64 61 56 61 48 2f 77 6d 5a 37 63 lh/eezJS/R27tQahsiFepdaVaH/wmZ7c
1498e0 52 51 67 2b 35 39 49 4a 44 54 57 55 33 59 42 4f 55 35 66 58 74 51 6c 45 49 47 51 57 46 77 4d 43 RQg+59IJDTWU3YBOU5fXtQlEIGQWFwMC
149900 54 46 4d 4e 61 4e 37 56 0a 71 6e 4a 4e 6b 32 32 43 44 74 75 63 76 63 2b 30 38 31 78 64 56 48 70 TFMNaN7V.qnJNk22CDtucvc+081xdVHp
149920 70 43 5a 62 57 32 78 48 42 6a 58 57 6f 74 4d 38 35 79 4d 34 38 76 43 52 38 35 6d 4c 4b 34 62 31 pCZbW2xHBjXWotM85yM48vCR85mLK4b1
149940 39 70 37 31 58 5a 51 76 6b 2f 69 58 74 74 6d 6b 51 33 43 67 61 0a 52 72 30 42 48 64 43 58 74 65 9p71XZQvk/iXttmkQ3Cga.Rr0BHdCXte
149960 47 59 4f 38 41 33 5a 4e 59 39 6c 4f 34 4c 34 66 55 6f 72 67 74 57 76 33 47 4c 49 79 6c 42 6a 6f GYO8A3ZNY9lO4L4fUorgtWv3GLIylBjo
149980 62 46 53 31 4a 37 32 48 47 72 48 34 6f 56 70 6a 75 44 57 74 64 59 41 56 48 47 54 45 48 5a 66 39 bFS1J72HGrH4oVpjuDWtdYAVHGTEHZf9
1499a0 68 42 0a 5a 33 4b 69 4b 4e 39 67 67 36 6d 65 79 48 76 38 55 33 4e 79 57 66 57 54 65 68 64 32 44 hB.Z3KiKN9gg6meyHv8U3NyWfWTehd2D
1499c0 73 37 33 35 56 7a 5a 43 31 55 30 6f 71 70 62 74 57 70 55 35 78 50 4b 56 2b 79 58 62 66 52 65 42 s735VzZC1U0oqpbtWpU5xPKV+yXbfReB
1499e0 69 39 46 69 31 6a 55 49 78 61 53 35 42 5a 75 0a 4b 47 4e 5a 4d 4e 39 51 41 5a 78 6a 69 52 71 66 i9Fi1jUIxaS5BZu.KGNZMN9QAZxjiRqf
149a00 32 78 65 55 67 6e 41 33 77 79 53 65 6d 6b 66 57 57 73 70 4f 71 47 6d 4a 63 68 2b 52 62 4e 74 2b 2xeUgnA3wySemkfWWspOqGmJch+RbNt+
149a20 6e 68 75 74 78 78 39 7a 33 53 78 50 47 57 58 39 66 35 4e 41 45 43 37 53 38 4f 30 38 0a 6e 69 34 nhutxx9z3SxPGWX9f5NAEC7S8O08.ni4
149a40 6f 50 6d 6b 6d 4d 38 56 37 41 67 4d 42 41 41 47 6a 59 7a 42 68 4d 41 38 47 41 31 55 64 45 77 45 oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwE
149a60 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4e 71 37 4c 71 71 B/wQFMAMBAf8wHQYDVR0OBBYEFNq7Lqq
149a80 77 44 4c 69 49 4a 6c 46 30 0a 58 47 30 44 30 38 44 59 6a 33 72 57 4d 42 38 47 41 31 55 64 49 77 wDLiIJlF0.XG0D08DYj3rWMB8GA1UdIw
149aa0 51 59 4d 42 61 41 46 4e 71 37 4c 71 71 77 44 4c 69 49 4a 6c 46 30 58 47 30 44 30 38 44 59 6a 33 QYMBaAFNq7LqqwDLiIJlF0XG0D08DYj3
149ac0 72 57 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 0a 68 6a 41 4e 42 67 6b 71 68 rWMA4GA1UdDwEB/wQEAwIB.hjANBgkqh
149ae0 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 67 45 41 4d 58 6a 6d 78 37 58 66 75 4a 52 41 79 kiG9w0BAQUFAAOCAgEAMXjmx7XfuJRAy
149b00 58 48 45 71 44 58 73 52 68 33 43 68 66 4d 6f 57 49 61 77 43 2f 79 4f 73 6a 6d 50 52 46 57 72 5a XHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZ
149b20 49 52 63 0a 61 61 6e 51 6d 6a 67 38 2b 75 55 66 4e 65 56 45 34 34 42 35 6c 47 69 6b 75 38 53 66 IRc.aanQmjg8+uUfNeVE44B5lGiku8Sf
149b40 50 65 45 30 7a 54 42 47 69 31 51 72 6c 61 58 76 39 7a 2b 5a 68 50 30 31 35 73 38 78 78 74 78 71 PeE0zTBGi1QrlaXv9z+ZhP015s8xxtxq
149b60 76 36 66 58 49 77 6a 68 6d 46 37 44 57 67 68 32 0a 71 61 61 76 64 79 2b 33 59 4c 31 45 52 6d 72 v6fXIwjhmF7DWgh2.qaavdy+3YL1ERmr
149b80 76 6c 2f 39 7a 6c 63 47 4f 36 4a 50 37 2f 54 47 33 37 46 63 52 45 55 57 62 4d 50 45 61 69 44 6e vl/9zlcGO6JP7/TG37FcREUWbMPEaiDn
149ba0 42 54 7a 79 6e 41 4e 58 48 2f 4b 74 74 67 43 4a 77 70 51 7a 67 58 51 51 70 41 76 76 4c 0a 6f 4a BTzynANXH/KttgCJwpQzgXQQpAvvL.oJ
149bc0 48 52 66 4e 62 44 66 6c 44 56 6e 56 69 2b 51 54 6a 72 75 58 55 38 46 64 6d 62 79 55 71 44 57 63 HRfNbDflDVnVi+QTjruXU8FdmbyUqDWc
149be0 44 61 55 2f 30 7a 75 7a 59 59 6d 34 55 50 46 64 33 75 4c 61 78 32 6b 37 6e 5a 41 59 31 49 45 4b DaU/0zuzYYm4UPFd3uLax2k7nZAY1IEK
149c00 6a 37 39 54 69 47 38 64 73 4b 0a 78 72 32 45 6f 79 4e 42 33 74 5a 33 62 34 58 55 68 52 78 51 34 j79TiG8dsK.xr2EoyNB3tZ3b4XUhRxQ4
149c20 4b 35 52 69 72 71 4e 50 6e 62 69 75 63 6f 6e 38 6c 2b 66 37 32 35 5a 44 51 62 59 4b 78 65 6b 30 K5RirqNPnbiucon8l+f725ZDQbYKxek0
149c40 6e 78 72 75 31 38 55 47 6b 69 50 47 6b 7a 6e 73 30 63 63 6a 6b 78 46 0a 4b 79 44 75 53 4e 2f 6e nxru18UGkiPGkzns0ccjkxF.KyDuSN/n
149c60 33 51 6d 4f 47 4b 6a 61 51 49 32 53 4a 68 46 54 59 58 4e 64 36 37 33 6e 78 45 30 70 4e 32 48 72 3QmOGKjaQI2SJhFTYXNd673nxE0pN2Hr
149c80 72 44 6b 74 5a 79 34 57 31 76 55 41 67 34 57 68 7a 48 39 32 78 48 33 6b 74 30 74 6d 37 77 4e 46 rDktZy4W1vUAg4WhzH92xH3kt0tm7wNF
149ca0 59 47 6d 32 0a 44 46 4b 57 6b 6f 52 65 70 71 4f 31 70 44 34 72 32 63 7a 59 47 30 65 71 38 6b 54 YGm2.DFKWkoRepqO1pD4r2czYG0eq8kT
149cc0 61 54 2f 6b 44 36 50 41 55 79 7a 2f 7a 67 39 37 51 77 56 54 6a 74 2b 67 4b 4e 30 32 4c 49 46 6b aT/kD6PAUyz/zg97QwVTjt+gKN02LIFk
149ce0 44 4d 42 6d 68 4c 4d 69 39 45 52 2f 66 72 73 6c 4b 0a 78 66 4d 6e 5a 6d 61 47 72 47 69 52 2f 39 DMBmhLMi9ER/frslK.xfMnZmaGrGiR/9
149d00 6e 6d 55 78 77 50 69 31 78 70 5a 51 6f 6d 79 42 34 30 77 31 31 52 65 39 65 70 6e 41 61 68 4e 74 nmUxwPi1xpZQomyB40w11Re9epnAahNt
149d20 33 56 69 5a 53 38 32 65 51 74 44 46 34 4a 62 41 69 58 66 4b 4d 39 66 4a 50 2f 50 36 45 55 0a 70 3ViZS82eQtDF4JbAiXfKM9fJP/P6EU.p
149d40 38 2b 31 58 65 76 62 32 78 7a 45 64 74 2b 49 75 62 31 46 42 5a 55 62 72 76 78 47 61 6b 79 76 53 8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvS
149d60 4f 50 4f 72 67 2f 53 66 75 76 6d 62 4a 78 50 67 57 70 36 5a 4b 79 37 50 74 58 6e 79 33 59 75 78 OPOrg/SfuvmbJxPgWp6ZKy7PtXny3Yux
149d80 61 64 49 77 56 79 51 44 38 76 49 0a 50 2f 72 6d 4d 75 47 4e 47 32 2b 6b 35 6f 37 59 2b 53 6c 49 adIwVyQD8vI.P/rmMuGNG2+k5o7Y+SlI
149da0 69 73 35 7a 2f 69 77 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d is5z/iw=.-----END.CERTIFICATE---
149dc0 2d 2d 0a 0a 47 65 6f 54 72 75 73 74 20 55 6e 69 76 65 72 73 61 6c 20 43 41 20 32 0a 3d 3d 3d 3d --..GeoTrust.Universal.CA.2.====
149de0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 ===================.-----BEGIN.C
149e00 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 62 44 43 43 41 31 53 67 41 77 49 42 ERTIFICATE-----.MIIFbDCCA1SgAwIB
149e20 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 48 4d 51 73 77 AgIBATANBgkqhkiG9w0BAQUFADBHMQsw
149e40 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 57 4d 42 51 47 41 31 55 45 43 68 4d 4e 0a 52 32 56 CQYDVQQGEwJVUzEWMBQGA1UEChMN.R2V
149e60 76 56 48 4a 31 63 33 51 67 53 57 35 6a 4c 6a 45 67 4d 42 34 47 41 31 55 45 41 78 4d 58 52 32 56 vVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2V
149e80 76 56 48 4a 31 63 33 51 67 56 57 35 70 64 6d 56 79 63 32 46 73 49 45 4e 42 49 44 49 77 48 68 63 vVHJ1c3QgVW5pdmVyc2FsIENBIDIwHhc
149ea0 4e 4d 44 51 77 4d 7a 41 30 0a 4d 44 55 77 4d 44 41 77 57 68 63 4e 4d 6a 6b 77 4d 7a 41 30 4d 44 NMDQwMzA0.MDUwMDAwWhcNMjkwMzA0MD
149ec0 55 77 4d 44 41 77 57 6a 42 48 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 57 4d 42 UwMDAwWjBHMQswCQYDVQQGEwJVUzEWMB
149ee0 51 47 41 31 55 45 43 68 4d 4e 52 32 56 76 56 48 4a 31 63 33 51 67 0a 53 57 35 6a 4c 6a 45 67 4d QGA1UEChMNR2VvVHJ1c3Qg.SW5jLjEgM
149f00 42 34 47 41 31 55 45 41 78 4d 58 52 32 56 76 56 48 4a 31 63 33 51 67 56 57 35 70 64 6d 56 79 63 B4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc
149f20 32 46 73 49 45 4e 42 49 44 49 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 2FsIENBIDIwggIiMA0GCSqGSIb3DQEBA
149f40 51 55 41 0a 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 7a 56 46 4c 42 79 54 37 79 QUA.A4ICDwAwggIKAoICAQCzVFLByT7y
149f60 32 64 79 78 55 78 70 5a 4b 65 65 78 77 30 55 6f 35 64 66 52 37 63 58 46 53 36 47 71 64 48 74 58 2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtX
149f80 72 30 6f 6d 2f 4e 6a 31 58 71 64 75 47 64 74 30 0a 44 45 38 31 57 7a 49 4c 41 65 50 62 36 33 70 r0om/Nj1XqduGdt0.DE81WzILAePb63p
149fa0 33 4e 65 71 71 57 75 44 57 36 4b 46 58 6c 50 43 51 6f 33 52 57 6c 45 51 77 41 78 35 63 54 69 75 3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiu
149fc0 46 4a 6e 53 43 65 67 78 32 6f 47 39 4e 7a 6b 45 74 6f 42 55 47 46 46 2b 33 51 73 31 37 0a 6a 31 FJnSCegx2oG9NzkEtoBUGFF+3Qs17.j1
149fe0 68 68 4e 4e 77 71 43 50 6b 75 77 77 47 6d 49 6b 51 63 54 41 65 43 35 6c 76 4f 30 45 70 38 42 4e hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BN
14a000 4d 5a 63 79 66 77 71 70 68 2f 4c 71 39 4f 36 34 63 65 4a 48 64 71 58 62 62 6f 57 30 57 36 33 4d MZcyfwqph/Lq9O64ceJHdqXbboW0W63M
14a020 4f 68 42 57 39 57 6a 6f 38 51 0a 4a 71 56 4a 77 79 37 58 51 59 63 69 34 45 2b 47 79 6d 43 31 36 OhBW9Wjo8Q.JqVJwy7XQYci4E+GymC16
14a040 71 46 6a 77 41 47 58 45 48 6d 39 41 44 77 53 62 53 73 56 73 61 78 4c 73 65 34 59 75 55 36 57 33 qFjwAGXEHm9ADwSbSsVsaxLse4YuU6W3
14a060 4e 78 32 2f 7a 75 2b 7a 31 38 44 77 50 77 37 36 4c 35 47 47 2f 2f 61 0a 51 4d 4a 53 39 2f 37 6a Nx2/zu+z18DwPw76L5GG//a.QMJS9/7j
14a080 4f 76 64 71 64 7a 58 51 32 6f 33 72 58 68 68 71 4d 63 63 65 75 6a 77 62 4b 4e 5a 72 56 4d 61 71 OvdqdzXQ2o3rXhhqMcceujwbKNZrVMaq
14a0a0 57 39 65 69 4c 42 73 5a 7a 4b 49 43 39 70 74 5a 76 54 64 72 68 72 56 74 67 72 72 59 36 73 6c 57 W9eiLBsZzKIC9ptZvTdrhrVtgrrY6slW
14a0c0 76 4b 6b 32 0a 57 50 30 2b 47 66 50 74 44 43 61 70 6b 7a 6a 34 54 38 46 64 49 67 62 51 6c 2b 72 vKk2.WP0+GfPtDCapkzj4T8FdIgbQl+r
14a0e0 68 72 63 5a 56 34 49 45 72 4b 49 4d 36 2b 76 52 37 49 56 45 41 76 6c 49 34 7a 73 31 6d 65 61 6a hrcZV4IErKIM6+vR7IVEAvlI4zs1meaj
14a100 30 67 56 62 69 30 49 4d 4a 52 31 46 62 55 47 72 50 0a 32 30 67 61 58 54 37 33 79 2f 5a 6c 39 32 0gVbi0IMJR1FbUGrP.20gaXT73y/Zl92
14a120 7a 78 6c 66 67 43 4f 7a 4a 57 67 6a 6c 36 57 37 30 76 69 52 75 2f 6f 62 54 6f 2f 33 2b 4e 6a 4e zxlfgCOzJWgjl6W70viRu/obTo/3+NjN
14a140 38 44 38 57 42 4f 57 42 46 4d 36 36 4d 2f 45 43 75 44 6d 67 46 7a 32 5a 52 74 68 41 41 6e 0a 5a 8D8WBOWBFM66M/ECuDmgFz2ZRthAAn.Z
14a160 71 7a 77 63 45 41 4a 51 70 4b 74 54 35 4d 4e 59 51 6c 52 4a 4e 69 53 31 51 75 55 59 62 4b 48 73 qzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHs
14a180 75 33 2f 6d 6a 58 2f 68 56 54 4b 37 55 52 44 72 42 73 38 46 6d 74 49 53 67 6f 63 51 49 67 66 6b u3/mjX/hVTK7URDrBs8FmtISgocQIgfk
14a1a0 73 49 4c 41 41 58 2f 38 73 67 43 0a 53 71 53 71 71 63 79 5a 6c 70 77 76 57 4f 42 39 34 62 36 37 sILAAX/8sgC.SqSqqcyZlpwvWOB94b67
14a1c0 42 39 78 66 42 48 4a 63 4d 54 54 44 37 46 38 74 34 44 31 6b 6b 43 4c 6d 30 65 79 34 4c 74 31 5a B9xfBHJcMTTD7F8t4D1kkCLm0ey4Lt1Z
14a1e0 72 74 6d 68 4e 37 39 55 4e 64 78 7a 4d 6b 2b 4d 42 42 34 7a 73 73 6c 47 0a 38 64 68 63 79 46 56 rtmhN79UNdxzMk+MBB4zsslG.8dhcyFV
14a200 51 79 57 69 39 71 4c 6f 32 43 51 49 44 41 51 41 42 6f 32 4d 77 59 54 41 50 42 67 4e 56 48 52 4d QyWi9qLo2CQIDAQABo2MwYTAPBgNVHRM
14a220 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 52 32 38 31 58 BAf8EBTADAQH/MB0GA1UdDgQWBBR281X
14a240 68 2b 71 51 32 0a 2b 2f 43 66 58 47 4a 78 37 54 7a 30 52 7a 67 51 4b 7a 41 66 42 67 4e 56 48 53 h+qQ2.+/CfXGJx7Tz0RzgQKzAfBgNVHS
14a260 4d 45 47 44 41 57 67 42 52 32 38 31 58 68 2b 71 51 32 2b 2f 43 66 58 47 4a 78 37 54 7a 30 52 7a MEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0Rz
14a280 67 51 4b 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 0a 42 41 4d 43 41 59 59 77 44 51 59 4a 4b gQKzAOBgNVHQ8BAf8E.BAMCAYYwDQYJK
14a2a0 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 49 42 41 47 62 42 78 69 50 7a 32 65 41 75 62 oZIhvcNAQEFBQADggIBAGbBxiPz2eAub
14a2c0 6c 2f 6f 7a 36 36 77 73 43 56 4e 4b 2f 67 37 57 4a 74 41 4a 44 64 61 79 36 73 57 53 66 2b 7a 0a l/oz66wsCVNK/g7WJtAJDday6sWSf+z.
14a2e0 64 58 6b 7a 6f 53 39 74 63 42 63 30 6b 66 35 6e 66 6f 2f 73 6d 2b 56 65 67 71 6c 56 48 79 2f 63 dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c
14a300 31 46 45 48 45 76 36 73 46 6a 34 73 4e 63 5a 6a 2f 4e 77 51 36 77 32 6a 71 74 42 38 7a 4e 48 51 1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQ
14a320 4c 31 45 75 78 42 52 61 33 75 67 5a 0a 34 54 37 47 7a 4b 51 70 35 79 36 45 71 67 59 77 65 48 5a L1EuxBRa3ugZ.4T7GzKQp5y6EqgYweHZ
14a340 55 63 79 69 59 57 54 6a 67 41 41 31 69 30 30 4a 39 49 5a 2b 75 50 54 71 4d 31 66 70 33 44 52 67 UcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRg
14a360 72 46 67 35 66 4e 75 48 38 4b 72 55 77 4a 4d 2f 67 59 77 78 37 57 42 72 2b 0a 6d 62 70 43 45 72 rFg5fNuH8KrUwJM/gYwx7WBr+.mbpCEr
14a380 47 52 39 48 78 6f 34 73 6a 6f 72 79 7a 71 79 58 36 75 75 79 6f 39 44 52 58 63 4e 4a 57 32 47 48 GR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GH
14a3a0 53 6f 61 67 2f 48 74 50 51 54 78 4f 52 62 37 51 72 53 70 4a 64 4d 4b 75 30 76 62 42 4b 4a 50 66 Soag/HtPQTxORb7QrSpJdMKu0vbBKJPf
14a3c0 45 6e 63 4b 70 71 0a 41 31 49 68 6e 30 43 6f 5a 31 44 79 38 31 6f 66 33 39 38 6a 39 74 78 34 54 EncKpq.A1Ihn0CoZ1Dy81of398j9tx4T
14a3e0 75 61 59 54 31 55 36 55 2b 50 76 38 76 53 66 78 33 7a 59 57 4b 38 70 49 70 65 34 34 4c 32 52 4c uaYT1U6U+Pv8vSfx3zYWK8pIpe44L2RL
14a400 72 42 32 37 46 63 52 7a 2b 38 70 52 50 50 70 68 58 70 67 0a 59 2b 52 64 4d 34 6b 58 32 54 47 71 rB27FcRz+8pRPPphXpg.Y+RdM4kX2TGq
14a420 32 74 62 7a 47 44 56 79 7a 34 63 72 4c 32 4d 6a 68 46 32 45 6a 44 39 58 6f 49 6a 38 6d 5a 45 6f 2tbzGDVyz4crL2MjhF2EjD9XoIj8mZEo
14a440 4a 6d 6d 5a 31 49 2b 58 52 4c 36 4f 31 55 69 78 70 43 67 70 38 52 57 30 34 65 57 65 33 66 69 50 JmmZ1I+XRL6O1UixpCgp8RW04eWe3fiP
14a460 0a 70 6d 38 6d 31 77 6b 38 4f 68 77 52 44 71 5a 73 4e 2f 65 74 52 49 63 73 4b 4d 66 59 64 49 4b .pm8m1wk8OhwRDqZsN/etRIcsKMfYdIK
14a480 7a 30 47 39 4b 56 37 73 31 4b 53 65 67 69 2b 67 68 70 34 64 6b 4e 6c 33 4d 32 42 61 73 78 37 49 z0G9KV7s1KSegi+ghp4dkNl3M2Basx7I
14a4a0 6e 51 4a 4a 56 4f 43 69 4e 55 57 37 64 0a 46 47 64 54 62 48 46 63 4a 6f 52 4e 64 56 71 32 66 6d nQJJVOCiNUW7d.FGdTbHFcJoRNdVq2fm
14a4c0 42 57 71 55 32 74 2b 35 73 65 6c 2f 4d 4e 32 64 4b 58 56 48 66 61 50 52 4b 33 34 42 37 76 43 41 BWqU2t+5sel/MN2dKXVHfaPRK34B7vCA
14a4e0 61 73 2b 59 57 48 36 61 4c 63 72 33 34 59 45 6f 50 39 56 68 64 42 4c 74 55 70 0a 67 6e 32 5a 39 as+YWH6aLcr34YEoP9VhdBLtUp.gn2Z9
14a500 44 48 32 63 61 6e 50 4c 41 45 6e 70 51 57 35 71 72 4a 49 54 69 72 76 6e 35 4e 53 55 5a 55 38 55 DH2canPLAEnpQW5qrJITirvn5NSUZU8U
14a520 6e 4f 4f 56 6b 77 58 51 4d 41 4a 4b 4f 53 4c 61 6b 68 54 32 2b 7a 4e 56 56 58 78 78 76 6a 70 6f nOOVkwXQMAJKOSLakhT2+zNVVXxxvjpo
14a540 69 78 4d 70 74 45 6d 0a 58 33 36 76 57 6b 7a 61 48 36 62 79 48 43 78 2b 72 67 49 57 30 6c 62 51 ixMptEm.X36vWkzaH6byHCx+rgIW0lbQ
14a560 4c 31 64 54 52 2b 69 53 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d L1dTR+iS.-----END.CERTIFICATE---
14a580 2d 2d 0a 0a 56 69 73 61 20 65 43 6f 6d 6d 65 72 63 65 20 52 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d --..Visa.eCommerce.Root.========
14a5a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 ===========.-----BEGIN.CERTIFICA
14a5c0 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 6f 6a 43 43 41 6f 71 67 41 77 49 42 41 67 49 51 45 34 59 31 TE-----.MIIDojCCAoqgAwIBAgIQE4Y1
14a5e0 54 52 30 2f 42 76 4c 42 2b 57 55 46 31 5a 41 63 59 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 TR0/BvLB+WUF1ZAcYjANBgkqhkiG9w0B
14a600 41 51 55 46 41 44 42 72 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 56 55 7a 45 4e 4d 41 73 AQUFADBrMQswCQYDVQQG.EwJVUzENMAs
14a620 47 41 31 55 45 43 68 4d 45 56 6b 6c 54 51 54 45 76 4d 43 30 47 41 31 55 45 43 78 4d 6d 56 6d 6c GA1UEChMEVklTQTEvMC0GA1UECxMmVml
14a640 7a 59 53 42 4a 62 6e 52 6c 63 6d 35 68 64 47 6c 76 62 6d 46 73 49 46 4e 6c 63 6e 5a 70 59 32 55 zYSBJbnRlcm5hdGlvbmFsIFNlcnZpY2U
14a660 67 0a 51 58 4e 7a 62 32 4e 70 59 58 52 70 62 32 34 78 48 44 41 61 42 67 4e 56 42 41 4d 54 45 31 g.QXNzb2NpYXRpb24xHDAaBgNVBAMTE1
14a680 5a 70 63 32 45 67 5a 55 4e 76 62 57 31 6c 63 6d 4e 6c 49 46 4a 76 62 33 51 77 48 68 63 4e 4d 44 Zpc2EgZUNvbW1lcmNlIFJvb3QwHhcNMD
14a6a0 49 77 4e 6a 49 32 4d 44 49 78 4f 44 4d 32 0a 57 68 63 4e 4d 6a 49 77 4e 6a 49 30 4d 44 41 78 4e IwNjI2MDIxODM2.WhcNMjIwNjI0MDAxN
14a6c0 6a 45 79 57 6a 42 72 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 4e 4d 41 73 47 41 jEyWjBrMQswCQYDVQQGEwJVUzENMAsGA
14a6e0 31 55 45 43 68 4d 45 56 6b 6c 54 51 54 45 76 4d 43 30 47 41 31 55 45 43 78 4d 6d 0a 56 6d 6c 7a 1UEChMEVklTQTEvMC0GA1UECxMm.Vmlz
14a700 59 53 42 4a 62 6e 52 6c 63 6d 35 68 64 47 6c 76 62 6d 46 73 49 46 4e 6c 63 6e 5a 70 59 32 55 67 YSBJbnRlcm5hdGlvbmFsIFNlcnZpY2Ug
14a720 51 58 4e 7a 62 32 4e 70 59 58 52 70 62 32 34 78 48 44 41 61 42 67 4e 56 42 41 4d 54 45 31 5a 70 QXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zp
14a740 63 32 45 67 5a 55 4e 76 0a 62 57 31 6c 63 6d 4e 6c 49 46 4a 76 62 33 51 77 67 67 45 69 4d 41 30 c2EgZUNv.bW1lcmNlIFJvb3QwggEiMA0
14a760 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoI
14a780 42 41 51 43 76 56 39 35 57 48 6d 36 68 32 6d 43 78 6c 43 66 4c 0a 46 39 73 48 50 34 43 46 54 38 BAQCvV95WHm6h2mCxlCfL.F9sHP4CFT8
14a7a0 69 63 74 74 44 30 62 30 2f 50 6d 64 6a 68 32 38 4a 49 58 44 71 73 4f 54 50 48 48 32 71 4c 4a 6a icttD0b0/Pmdjh28JIXDqsOTPHH2qLJj
14a7c0 30 72 4e 66 56 49 73 5a 48 42 41 6b 34 45 6c 70 46 37 73 44 50 77 73 52 52 4f 45 57 2b 31 51 4b 0rNfVIsZHBAk4ElpF7sDPwsRROEW+1QK
14a7e0 38 62 0a 52 61 56 4b 37 33 36 32 72 50 4b 67 48 31 67 2f 45 6b 5a 67 50 49 32 68 34 48 33 50 56 8b.RaVK7362rPKgH1g/EkZgPI2h4H3PV
14a800 7a 34 7a 48 76 74 48 38 61 6f 56 6c 77 64 56 5a 71 57 31 4c 53 37 59 67 46 6d 79 70 77 32 33 52 z4zHvtH8aoVlwdVZqW1LS7YgFmypw23R
14a820 75 77 68 59 2f 38 31 71 36 55 43 7a 79 72 30 0a 54 50 35 37 39 5a 52 64 68 45 32 6f 38 6d 43 50 uwhY/81q6UCzyr0.TP579ZRdhE2o8mCP
14a840 32 77 34 6c 50 4a 39 7a 63 63 2b 55 33 30 72 71 32 39 39 79 4f 49 7a 7a 6c 72 33 78 46 37 7a 53 2w4lPJ9zcc+U30rq299yOIzzlr3xF7zS
14a860 75 6a 74 46 57 73 61 6e 39 73 59 58 69 77 47 64 2f 42 6d 6f 4b 6f 4d 57 75 44 70 49 0a 2f 6b 34 ujtFWsan9sYXiwGd/BmoKoMWuDpI./k4
14a880 2b 6f 4b 73 47 47 65 6c 54 38 34 41 54 42 2b 30 74 76 7a 38 4b 50 46 55 67 4f 53 77 73 41 47 6c +oKsGGelT84ATB+0tvz8KPFUgOSwsAGl
14a8a0 30 6c 55 71 38 49 4c 4b 70 65 65 55 59 69 5a 47 6f 33 42 78 4e 37 37 74 2b 4e 77 74 64 2f 6a 6d 0lUq8ILKpeeUYiZGo3BxN77t+Nwtd/jm
14a8c0 6c 69 46 4b 4d 41 47 7a 73 0a 47 48 78 42 76 66 61 4c 64 58 65 36 59 4a 32 45 35 2f 34 74 41 67 liFKMAGzs.GHxBvfaLdXe6YJ2E5/4tAg
14a8e0 4d 42 41 41 47 6a 51 6a 42 41 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 MBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf
14a900 38 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 0a 4d 42 30 47 41 31 55 64 44 8wDgYDVR0PAQH/BAQDAgEG.MB0GA1UdD
14a920 67 51 57 42 42 51 56 4f 49 4d 50 50 79 77 2f 63 44 4d 65 7a 55 62 2b 42 34 77 67 34 4e 66 44 74 gQWBBQVOIMPPyw/cDMezUb+B4wg4NfDt
14a940 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 58 2f 46 42 66 zANBgkqhkiG9w0BAQUFAAOCAQEAX/FBf
14a960 58 78 63 0a 43 4c 6b 72 34 4e 57 53 52 2f 70 6e 58 4b 55 54 77 77 4d 68 6d 79 74 4d 69 55 62 50 Xxc.CLkr4NWSR/pnXKUTwwMhmytMiUbP
14a980 57 55 33 4a 2f 71 56 41 74 6d 50 4e 33 58 45 6f 6c 57 63 52 7a 43 53 73 30 30 52 73 63 61 34 42 WU3J/qVAtmPN3XEolWcRzCSs00Rsca4B
14a9a0 49 47 73 44 6f 6f 38 59 74 79 6b 36 66 65 55 57 0a 59 46 4e 34 50 4d 43 76 46 59 50 33 6a 31 49 IGsDoo8Ytyk6feUW.YFN4PMCvFYP3j1I
14a9c0 7a 4a 4c 31 6b 6b 35 66 75 69 2f 66 62 47 4b 68 74 63 62 50 33 4c 42 66 51 64 43 56 70 39 2f 35 zJL1kk5fui/fbGKhtcbP3LBfQdCVp9/5
14a9e0 72 50 4a 53 2b 54 55 74 42 6a 45 37 69 63 39 44 6a 6b 43 4a 7a 51 38 33 7a 37 2b 70 7a 0a 7a 6b rPJS+TUtBjE7ic9DjkCJzQ83z7+pz.zk
14aa00 57 4b 73 4b 5a 4a 2f 30 78 39 6e 58 47 49 78 48 59 64 6b 46 73 64 37 76 33 4d 39 2b 37 39 59 4b WKsKZJ/0x9nXGIxHYdkFsd7v3M9+79YK
14aa20 57 78 65 68 5a 78 30 52 62 51 66 42 49 38 62 47 6d 58 32 36 35 66 4f 5a 70 77 4c 77 55 38 47 55 WxehZx0RbQfBI8bGmX265fOZpwLwU8GU
14aa40 59 45 6d 53 41 32 30 47 42 75 0a 59 51 61 37 46 6b 4b 4d 63 50 63 77 2b 2b 44 62 5a 71 4d 41 41 YEmSA20GBu.YQa7FkKMcPcw++DbZqMAA
14aa60 62 33 6d 4c 4e 71 52 58 36 42 47 69 30 31 71 6e 44 30 39 33 51 56 47 2f 6e 61 2f 6f 41 6f 38 35 b3mLNqRX6BGi01qnD093QVG/na/oAo85
14aa80 41 44 6d 4a 37 66 2f 68 43 33 65 75 69 49 6e 6c 68 42 78 36 79 4c 74 0a 33 39 38 7a 6e 4d 2f 6a ADmJ7f/hC3euiInlhBx6yLt.398znM/j
14aaa0 72 61 36 4f 31 49 37 6d 54 31 47 76 46 70 4c 67 58 50 59 48 44 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e ra6O1I7mT1GvFpLgXPYHDw==.-----EN
14aac0 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 65 72 74 75 6d 20 52 6f 6f 74 20 D.CERTIFICATE-----..Certum.Root.
14aae0 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 CA.==============.-----BEGIN.CER
14ab00 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 44 44 43 43 41 66 53 67 41 77 49 42 41 67 TIFICATE-----.MIIDDDCCAfSgAwIBAg
14ab20 49 44 41 51 41 67 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 4d 44 34 78 43 7a IDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCz
14ab40 41 4a 42 67 4e 56 42 41 59 54 41 6c 42 4d 4d 52 73 77 47 51 59 44 56 51 51 4b 0a 45 78 4a 56 62 AJBgNVBAYTAlBMMRswGQYDVQQK.ExJVb
14ab60 6d 6c 36 5a 58 52 76 49 46 4e 77 4c 69 42 36 49 47 38 75 62 79 34 78 45 6a 41 51 42 67 4e 56 42 ml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVB
14ab80 41 4d 54 43 55 4e 6c 63 6e 52 31 62 53 42 44 51 54 41 65 46 77 30 77 4d 6a 41 32 4d 54 45 78 4d AMTCUNlcnR1bSBDQTAeFw0wMjA2MTExM
14aba0 44 51 32 4d 7a 6c 61 0a 46 77 30 79 4e 7a 41 32 4d 54 45 78 4d 44 51 32 4d 7a 6c 61 4d 44 34 78 DQ2Mzla.Fw0yNzA2MTExMDQ2MzlaMD4x
14abc0 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 42 4d 4d 52 73 77 47 51 59 44 56 51 51 4b 45 78 4a 56 CzAJBgNVBAYTAlBMMRswGQYDVQQKExJV
14abe0 62 6d 6c 36 5a 58 52 76 49 46 4e 77 4c 69 42 36 49 47 38 75 0a 62 79 34 78 45 6a 41 51 42 67 4e bml6ZXRvIFNwLiB6IG8u.by4xEjAQBgN
14ac00 56 42 41 4d 54 43 55 4e 6c 63 6e 52 31 62 53 42 44 51 54 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a VBAMTCUNlcnR1bSBDQTCCASIwDQYJKoZ
14ac20 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4d 36 IhvcNAQEBBQADggEPADCCAQoCggEBAM6
14ac40 78 0a 77 53 37 54 54 33 7a 4e 4a 63 34 59 50 6b 2f 45 6a 47 2b 41 61 6e 50 49 57 31 48 34 6d 39 x.wS7TT3zNJc4YPk/EjG+AanPIW1H4m9
14ac60 4c 63 75 77 42 63 73 61 44 38 64 51 50 75 67 66 43 49 37 69 4e 53 36 65 59 56 4d 34 32 73 4c 51 LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQ
14ac80 6e 46 64 76 6b 72 4f 59 43 4a 35 4a 64 4c 0a 6b 4b 57 6f 65 50 68 7a 51 33 75 6b 59 62 44 59 57 nFdvkrOYCJ5JdL.kKWoePhzQ3ukYbDYW
14aca0 4d 7a 68 62 47 5a 2b 6e 50 4d 4a 58 6c 56 6a 68 4e 57 6f 37 2f 4f 78 4c 6a 42 6f 73 38 51 38 32 MzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82
14acc0 4b 78 75 6a 5a 6c 61 6b 45 34 30 33 44 61 61 6a 34 47 49 55 4c 64 74 6c 6b 49 4a 0a 38 39 65 56 KxujZlakE403Daaj4GIULdtlkIJ.89eV
14ace0 67 77 31 42 53 37 42 71 61 2f 6a 38 44 33 35 69 6e 32 66 45 37 53 5a 66 45 43 59 50 43 45 2f 77 gw1BS7Bqa/j8D35in2fE7SZfECYPCE/w
14ad00 70 46 63 6f 7a 6f 2b 34 37 55 58 32 62 75 34 6c 58 61 70 75 4f 62 37 6b 6b 79 2f 5a 52 36 42 79 pFcozo+47UX2bu4lXapuOb7kky/ZR6By
14ad20 36 2f 71 6d 57 36 2f 4b 0a 55 7a 2f 69 44 73 61 57 56 68 46 75 39 2b 6c 6d 71 53 62 59 66 35 56 6/qmW6/K.Uz/iDsaWVhFu9+lmqSbYf5V
14ad40 54 37 51 71 46 69 4c 70 50 4b 61 56 43 6a 46 36 32 2f 49 55 67 41 4b 70 6f 43 36 45 61 68 51 47 T7QqFiLpPKaVCjF62/IUgAKpoC6EahQG
14ad60 63 78 45 5a 6a 67 6f 69 32 49 72 48 75 2f 71 70 47 57 58 37 50 0a 4e 53 7a 56 74 74 70 64 39 30 cxEZjgoi2IrHu/qpGWX7P.NSzVttpd90
14ad80 67 7a 46 46 53 32 36 39 6c 76 7a 73 32 49 31 71 73 62 32 70 59 37 48 56 6b 43 41 77 45 41 41 61 gzFFS269lvzs2I1qsb2pY7HVkCAwEAAa
14ada0 4d 54 4d 42 45 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4e 42 67 MTMBEwDwYDVR0TAQH/BAUwAwEB/zANBg
14adc0 6b 71 0a 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 75 49 33 4f 37 2b 63 55 75 kq.hkiG9w0BAQUFAAOCAQEAuI3O7+cUu
14ade0 73 2f 75 73 45 53 53 62 4c 51 35 50 71 4b 45 62 71 32 34 49 58 66 53 31 48 65 43 68 2b 59 67 51 s/usESSbLQ5PqKEbq24IXfS1HeCh+YgQ
14ae00 59 48 75 34 76 67 52 74 32 50 52 46 7a 65 2b 0a 47 58 59 6b 48 41 51 61 54 4f 73 39 71 6d 64 76 YHu4vgRt2PRFze+.GXYkHAQaTOs9qmdv
14ae20 4c 64 54 4e 2f 6d 55 78 63 4d 55 62 70 67 49 4b 75 6d 42 37 62 56 6a 43 6d 6b 6e 2b 59 7a 49 4c LdTN/mUxcMUbpgIKumB7bVjCmkn+YzIL
14ae40 61 2b 4d 36 77 4b 79 72 4f 37 44 6f 30 77 6c 52 6a 42 43 44 78 6a 54 67 78 53 76 67 0a 47 72 5a a+M6wKyrO7Do0wlRjBCDxjTgxSvg.GrZ
14ae60 67 46 43 64 73 4d 6e 65 4d 76 4c 4a 79 6d 4d 2f 4e 7a 44 2b 35 79 43 52 43 46 4e 5a 58 2f 4f 59 gFCdsMneMvLJymM/NzD+5yCRCFNZX/OY
14ae80 6d 51 36 6b 64 35 59 43 51 7a 67 4e 55 4b 44 37 33 50 39 50 34 54 65 31 71 43 6a 71 54 45 35 73 mQ6kd5YCQzgNUKD73P9P4Te1qCjqTE5s
14aea0 37 46 43 4d 54 59 35 77 2f 0a 30 59 63 6e 65 65 56 4d 55 65 4d 42 72 59 56 64 47 6a 75 78 31 58 7FCMTY5w/.0YcneeVMUeMBrYVdGjux1X
14aec0 4d 51 70 4e 50 79 76 47 35 6b 39 56 70 57 6b 4b 6a 48 44 6b 78 30 44 79 35 78 4f 2f 66 49 52 2f MQpNPyvG5k9VpWkKjHDkx0Dy5xO/fIR/
14aee0 52 70 62 78 58 79 45 56 36 44 48 70 78 38 55 71 37 39 41 74 6f 53 0a 71 46 6c 6e 47 4e 75 38 63 RpbxXyEV6DHpx8Uq79AtoS.qFlnGNu8c
14af00 4e 32 62 73 57 6e 74 67 4d 36 4a 51 45 68 71 44 6a 58 4b 4b 57 59 56 49 5a 51 73 36 47 41 71 6d N2bsWntgM6JQEhqDjXKKWYVIZQs6GAqm
14af20 34 56 4b 51 50 4e 72 69 69 54 73 42 68 59 73 63 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 4VKQPNriiTsBhYscw==.-----END.CER
14af40 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 6f 6d 6f 64 6f 20 41 41 41 20 53 65 72 76 69 63 TIFICATE-----..Comodo.AAA.Servic
14af60 65 73 20 72 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d es.root.========================
14af80 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 .-----BEGIN.CERTIFICATE-----.MII
14afa0 45 4d 6a 43 43 41 78 71 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 EMjCCAxqgAwIBAgIBATANBgkqhkiG9w0
14afc0 42 41 51 55 46 41 44 42 37 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 48 51 6a 45 62 4d 42 6b BAQUFADB7MQswCQYDVQQGEwJHQjEbMBk
14afe0 47 41 31 55 45 43 41 77 53 0a 52 33 4a 6c 59 58 52 6c 63 69 42 4e 59 57 35 6a 61 47 56 7a 64 47 GA1UECAwS.R3JlYXRlciBNYW5jaGVzdG
14b000 56 79 4d 52 41 77 44 67 59 44 56 51 51 48 44 41 64 54 59 57 78 6d 62 33 4a 6b 4d 52 6f 77 47 41 VyMRAwDgYDVQQHDAdTYWxmb3JkMRowGA
14b020 59 44 56 51 51 4b 44 42 46 44 62 32 31 76 5a 47 38 67 51 30 45 67 0a 54 47 6c 74 61 58 52 6c 5a YDVQQKDBFDb21vZG8gQ0Eg.TGltaXRlZ
14b040 44 45 68 4d 42 38 47 41 31 55 45 41 77 77 59 51 55 46 42 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 DEhMB8GA1UEAwwYQUFBIENlcnRpZmljY
14b060 58 52 6c 49 46 4e 6c 63 6e 5a 70 59 32 56 7a 4d 42 34 58 44 54 41 30 4d 44 45 77 4d 54 41 77 4d XRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwM
14b080 44 41 77 0a 4d 46 6f 58 44 54 49 34 4d 54 49 7a 4d 54 49 7a 4e 54 6b 31 4f 56 6f 77 65 7a 45 4c DAw.MFoXDTI4MTIzMTIzNTk1OVowezEL
14b0a0 4d 41 6b 47 41 31 55 45 42 68 4d 43 52 30 49 78 47 7a 41 5a 42 67 4e 56 42 41 67 4d 45 6b 64 79 MAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdy
14b0c0 5a 57 46 30 5a 58 49 67 54 57 46 75 59 32 68 6c 0a 63 33 52 6c 63 6a 45 51 4d 41 34 47 41 31 55 ZWF0ZXIgTWFuY2hl.c3RlcjEQMA4GA1U
14b0e0 45 42 77 77 48 55 32 46 73 5a 6d 39 79 5a 44 45 61 4d 42 67 47 41 31 55 45 43 67 77 52 51 32 39 EBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29
14b100 74 62 32 52 76 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 49 54 41 66 42 67 4e 56 0a 42 41 tb2RvIENBIExpbWl0ZWQxITAfBgNV.BA
14b120 4d 4d 47 45 46 42 51 53 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 42 54 5a 58 4a 32 61 57 MMGEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aW
14b140 4e 6c 63 7a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 NlczCCASIwDQYJKoZIhvcNAQEBBQADgg
14b160 45 50 41 44 43 43 41 51 6f 43 0a 67 67 45 42 41 4c 35 41 6e 66 52 75 34 65 70 32 68 78 78 4e 52 EPADCCAQoC.ggEBAL5AnfRu4ep2hxxNR
14b180 55 53 4f 76 6b 62 49 67 77 61 64 77 53 72 2b 47 42 2b 4f 35 41 4c 36 38 36 74 64 55 49 6f 57 4d USOvkbIgwadwSr+GB+O5AL686tdUIoWM
14b1a0 51 75 61 42 74 44 46 63 43 4c 4e 53 53 31 55 59 38 79 32 62 6d 68 47 0a 43 31 50 71 79 30 77 6b QuaBtDFcCLNSS1UY8y2bmhG.C1Pqy0wk
14b1c0 77 4c 78 79 54 75 72 78 46 61 37 30 56 4a 6f 53 43 73 4e 36 73 6a 4e 67 34 74 71 4a 56 66 4d 69 wLxyTurxFa70VJoSCsN6sjNg4tqJVfMi
14b1e0 57 50 50 65 33 4d 2f 76 67 34 61 69 6a 4a 52 50 6e 32 6a 79 6d 4a 42 47 68 43 66 48 64 72 2f 6a WPPe3M/vg4aijJRPn2jymJBGhCfHdr/j
14b200 7a 44 55 73 0a 69 31 34 48 5a 47 57 43 77 45 69 77 71 4a 48 35 59 5a 39 32 49 46 43 6f 6b 63 64 zDUs.i14HZGWCwEiwqJH5YZ92IFCokcd
14b220 6d 74 65 74 34 59 67 4e 57 38 49 6f 61 45 2b 6f 78 6f 78 36 67 6d 66 30 34 39 76 59 6e 4d 6c 68 mtet4YgNW8IoaE+oxox6gmf049vYnMlh
14b240 76 42 2f 56 72 75 50 73 55 4b 36 2b 33 71 73 7a 57 0a 59 31 39 7a 6a 4e 6f 46 6d 61 67 34 71 4d vB/VruPsUK6+3qszW.Y19zjNoFmag4qM
14b260 73 58 65 44 5a 52 72 4f 6d 65 39 48 67 36 6a 63 38 50 32 55 4c 69 6d 41 79 72 4c 35 38 4f 41 64 sXeDZRrOme9Hg6jc8P2ULimAyrL58OAd
14b280 37 76 6e 35 6c 4a 38 53 33 66 72 48 52 4e 47 35 69 31 52 38 58 6c 4b 64 48 35 6b 42 6a 48 0a 59 7vn5lJ8S3frHRNG5i1R8XlKdH5kBjH.Y
14b2a0 70 79 2b 67 38 63 6d 65 7a 36 4b 4a 63 66 41 33 5a 33 6d 4e 57 67 51 49 4a 32 50 32 4e 37 53 77 py+g8cmez6KJcfA3Z3mNWgQIJ2P2N7Sw
14b2c0 34 53 63 44 56 37 6f 4c 38 6b 43 41 77 45 41 41 61 4f 42 77 44 43 42 76 54 41 64 42 67 4e 56 48 4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVH
14b2e0 51 34 45 46 67 51 55 6f 42 45 4b 0a 49 7a 36 57 38 51 66 73 34 71 38 70 37 34 4b 6c 66 39 41 77 Q4EFgQUoBEK.Iz6W8Qfs4q8p74Klf9Aw
14b300 70 4c 51 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 pLQwDgYDVR0PAQH/BAQDAgEGMA8GA1Ud
14b320 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 65 77 59 44 56 52 30 66 0a 42 48 51 77 63 6a 41 EwEB/wQFMAMBAf8wewYDVR0f.BHQwcjA
14b340 34 6f 44 61 67 4e 49 59 79 61 48 52 30 63 44 6f 76 4c 32 4e 79 62 43 35 6a 62 32 31 76 5a 47 39 4oDagNIYyaHR0cDovL2NybC5jb21vZG9
14b360 6a 59 53 35 6a 62 32 30 76 51 55 46 42 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 56 54 5a 58 4a jYS5jb20vQUFBQ2VydGlmaWNhdGVTZXJ
14b380 32 61 57 4e 6c 0a 63 79 35 6a 63 6d 77 77 4e 71 41 30 6f 44 4b 47 4d 47 68 30 64 48 41 36 4c 79 2aWNl.cy5jcmwwNqA0oDKGMGh0dHA6Ly
14b3a0 39 6a 63 6d 77 75 59 32 39 74 62 32 52 76 4c 6d 35 6c 64 43 39 42 51 55 46 44 5a 58 4a 30 61 57 9jcmwuY29tb2RvLm5ldC9BQUFDZXJ0aW
14b3c0 5a 70 59 32 46 30 5a 56 4e 6c 63 6e 5a 70 59 32 56 7a 0a 4c 6d 4e 79 62 44 41 4e 42 67 6b 71 68 ZpY2F0ZVNlcnZpY2Vz.LmNybDANBgkqh
14b3e0 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 43 46 62 38 41 76 43 62 36 50 2b 6b 2b kiG9w0BAQUFAAOCAQEACFb8AvCb6P+k+
14b400 74 5a 37 78 6b 53 41 7a 6b 2f 45 78 66 59 41 57 4d 79 6d 74 72 77 55 53 57 67 45 64 75 6a 6d 0a tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm.
14b420 37 6c 33 73 41 67 39 67 31 6f 31 51 47 45 38 6d 54 67 48 6a 35 72 43 6c 37 72 2b 38 64 46 52 42 7l3sAg9g1o1QGE8mTgHj5rCl7r+8dFRB
14b440 76 2f 33 38 45 72 6a 48 54 31 72 30 69 57 41 46 66 32 43 33 42 55 72 7a 39 76 48 43 76 38 53 35 v/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5
14b460 64 49 61 32 4c 58 31 72 7a 4e 4c 7a 0a 52 74 30 76 78 75 42 71 77 38 4d 30 41 79 78 39 6c 74 31 dIa2LX1rzNLz.Rt0vxuBqw8M0Ayx9lt1
14b480 61 77 67 36 6e 43 70 6e 42 42 59 75 72 44 43 2f 7a 58 44 72 50 62 44 64 56 43 59 66 65 55 30 42 awg6nCpnBBYurDC/zXDrPbDdVCYfeU0B
14b4a0 73 57 4f 2f 38 74 71 74 6c 62 67 54 32 47 39 77 38 34 46 6f 56 78 70 37 5a 0a 38 56 6c 49 4d 43 sWO/8tqtlbgT2G9w84FoVxp7Z.8VlIMC
14b4c0 46 6c 41 32 7a 73 36 53 46 7a 37 4a 73 44 6f 65 41 33 72 61 41 56 47 49 2f 36 75 67 4c 4f 70 79 FlA2zs6SFz7JsDoeA3raAVGI/6ugLOpy
14b4e0 79 70 45 42 4d 73 31 4f 55 49 4a 71 73 69 6c 32 44 34 6b 46 35 30 31 4b 4b 61 55 37 33 79 71 57 ypEBMs1OUIJqsil2D4kF501KKaU73yqW
14b500 6a 67 6f 6d 37 43 0a 31 32 79 78 6f 77 2b 65 76 2b 74 6f 35 31 62 79 72 76 4c 6a 4b 7a 67 36 43 jgom7C.12yxow+ev+to51byrvLjKzg6C
14b520 59 47 31 61 34 58 58 76 69 33 74 50 78 71 33 73 6d 50 69 39 57 49 73 67 74 52 71 41 45 46 51 38 YG1a4XXvi3tPxq3smPi9WIsgtRqAEFQ8
14b540 54 6d 44 6e 35 58 70 4e 70 61 59 62 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 TmDn5XpNpaYbg==.-----END.CERTIFI
14b560 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 6f 6d 6f 64 6f 20 53 65 63 75 72 65 20 53 65 72 76 69 63 65 CATE-----..Comodo.Secure.Service
14b580 73 20 72 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d s.root.=========================
14b5a0 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d ==.-----BEGIN.CERTIFICATE-----.M
14b5c0 49 49 45 50 7a 43 43 41 79 65 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 IIEPzCCAyegAwIBAgIBATANBgkqhkiG9
14b5e0 77 30 42 41 51 55 46 41 44 42 2b 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 48 51 6a 45 62 4d w0BAQUFADB+MQswCQYDVQQGEwJHQjEbM
14b600 42 6b 47 41 31 55 45 43 41 77 53 0a 52 33 4a 6c 59 58 52 6c 63 69 42 4e 59 57 35 6a 61 47 56 7a BkGA1UECAwS.R3JlYXRlciBNYW5jaGVz
14b620 64 47 56 79 4d 52 41 77 44 67 59 44 56 51 51 48 44 41 64 54 59 57 78 6d 62 33 4a 6b 4d 52 6f 77 dGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow
14b640 47 41 59 44 56 51 51 4b 44 42 46 44 62 32 31 76 5a 47 38 67 51 30 45 67 0a 54 47 6c 74 61 58 52 GAYDVQQKDBFDb21vZG8gQ0Eg.TGltaXR
14b660 6c 5a 44 45 6b 4d 43 49 47 41 31 55 45 41 77 77 62 55 32 56 6a 64 58 4a 6c 49 45 4e 6c 63 6e 52 lZDEkMCIGA1UEAwwbU2VjdXJlIENlcnR
14b680 70 5a 6d 6c 6a 59 58 52 6c 49 46 4e 6c 63 6e 5a 70 59 32 56 7a 4d 42 34 58 44 54 41 30 4d 44 45 pZmljYXRlIFNlcnZpY2VzMB4XDTA0MDE
14b6a0 77 4d 54 41 77 0a 4d 44 41 77 4d 46 6f 58 44 54 49 34 4d 54 49 7a 4d 54 49 7a 4e 54 6b 31 4f 56 wMTAw.MDAwMFoXDTI4MTIzMTIzNTk1OV
14b6c0 6f 77 66 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 52 30 49 78 47 7a 41 5a 42 67 4e 56 42 41 owfjELMAkGA1UEBhMCR0IxGzAZBgNVBA
14b6e0 67 4d 45 6b 64 79 5a 57 46 30 5a 58 49 67 54 57 46 75 0a 59 32 68 6c 63 33 52 6c 63 6a 45 51 4d gMEkdyZWF0ZXIgTWFu.Y2hlc3RlcjEQM
14b700 41 34 47 41 31 55 45 42 77 77 48 55 32 46 73 5a 6d 39 79 5a 44 45 61 4d 42 67 47 41 31 55 45 43 A4GA1UEBwwHU2FsZm9yZDEaMBgGA1UEC
14b720 67 77 52 51 32 39 74 62 32 52 76 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 4a 44 41 69 0a gwRQ29tb2RvIENBIExpbWl0ZWQxJDAi.
14b740 42 67 4e 56 42 41 4d 4d 47 31 4e 6c 59 33 56 79 5a 53 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 BgNVBAMMG1NlY3VyZSBDZXJ0aWZpY2F0
14b760 5a 53 42 54 5a 58 4a 32 61 57 4e 6c 63 7a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcN
14b780 41 51 45 42 42 51 41 44 67 67 45 50 0a 41 44 43 43 41 51 6f 43 67 67 45 42 41 4d 42 78 4d 34 4b AQEBBQADggEP.ADCCAQoCggEBAMBxM4K
14b7a0 4b 30 48 44 72 63 34 65 43 51 4e 55 64 35 4d 76 4a 44 6b 4b 51 2b 64 34 30 75 61 47 36 45 66 51 K0HDrc4eCQNUd5MvJDkKQ+d40uaG6EfQ
14b7c0 6c 68 66 50 4d 63 6d 33 79 65 35 64 72 73 77 66 78 64 79 53 52 58 79 57 50 0a 39 6e 51 39 35 49 lhfPMcm3ye5drswfxdySRXyWP.9nQ95I
14b7e0 44 43 2b 44 77 4e 38 37 39 41 36 76 66 49 55 74 46 79 62 2b 2f 49 71 30 47 34 62 69 34 58 4b 70 DC+DwN879A6vfIUtFyb+/Iq0G4bi4XKp
14b800 56 70 44 4d 33 53 48 70 52 37 4c 5a 51 64 71 6e 58 58 73 35 6a 4c 72 4c 78 6b 55 30 43 38 6a 36 VpDM3SHpR7LZQdqnXXs5jLrLxkU0C8j6
14b820 79 73 4e 73 74 63 0a 72 62 76 64 34 4a 51 58 37 4e 46 63 30 4c 2f 76 70 5a 58 4a 6b 4d 57 77 72 ysNstc.rbvd4JQX7NFc0L/vpZXJkMWwr
14b840 50 73 62 51 39 39 36 43 46 32 33 75 50 4a 41 47 79 73 6e 6e 6c 44 4f 58 6d 57 43 69 49 78 65 30 PsbQ996CF23uPJAGysnnlDOXmWCiIxe0
14b860 30 34 4d 65 75 6f 49 6b 62 59 32 71 69 74 43 2b 2b 72 43 0a 6f 7a 6e 6c 32 79 59 34 72 59 73 4b 04MeuoIkbY2qitC++rC.oznl2yY4rYsK
14b880 37 68 6c 6a 78 78 77 6b 33 77 4e 34 32 75 62 71 77 55 63 61 43 77 74 47 43 64 30 43 2f 4e 37 4c 7hljxxwk3wN42ubqwUcaCwtGCd0C/N7L
14b8a0 68 31 2f 58 4d 47 4e 6f 6f 61 37 63 4d 71 47 36 76 76 35 45 71 32 69 32 70 52 63 56 2f 62 33 56 h1/XMGNooa7cMqG6vv5Eq2i2pRcV/b3V
14b8c0 0a 70 36 65 61 35 45 51 7a 36 59 69 4f 2f 4f 31 52 36 35 4e 78 54 71 30 42 35 30 53 4f 71 79 33 .p6ea5EQz6YiO/O1R65NxTq0B50SOqy3
14b8e0 4c 71 50 34 42 53 55 6a 77 77 4e 33 48 61 4e 69 53 2f 6a 30 43 41 77 45 41 41 61 4f 42 78 7a 43 LqP4BSUjwwN3HaNiS/j0CAwEAAaOBxzC
14b900 42 78 44 41 64 42 67 4e 56 48 51 34 45 0a 46 67 51 55 50 4e 69 54 69 4d 4c 41 67 67 6e 4d 41 5a BxDAdBgNVHQ4E.FgQUPNiTiMLAggnMAZ
14b920 6b 47 6b 79 44 70 6e 6e 41 4a 59 30 38 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 kGkyDpnnAJY08wDgYDVR0PAQH/BAQDAg
14b940 45 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 0a 67 59 45 47 41 EGMA8GA1UdEwEB/wQFMAMBAf8w.gYEGA
14b960 31 55 64 48 77 52 36 4d 48 67 77 4f 36 41 35 6f 44 65 47 4e 57 68 30 64 48 41 36 4c 79 39 6a 63 1UdHwR6MHgwO6A5oDeGNWh0dHA6Ly9jc
14b980 6d 77 75 59 32 39 74 62 32 52 76 59 32 45 75 59 32 39 74 4c 31 4e 6c 59 33 56 79 5a 55 4e 6c 63 mwuY29tb2RvY2EuY29tL1NlY3VyZUNlc
14b9a0 6e 52 70 5a 6d 6c 6a 0a 59 58 52 6c 55 32 56 79 64 6d 6c 6a 5a 58 4d 75 59 33 4a 73 4d 44 6d 67 nRpZmlj.YXRlU2VydmljZXMuY3JsMDmg
14b9c0 4e 36 41 31 68 6a 4e 6f 64 48 52 77 4f 69 38 76 59 33 4a 73 4c 6d 4e 76 62 57 39 6b 62 79 35 75 N6A1hjNodHRwOi8vY3JsLmNvbW9kby5u
14b9e0 5a 58 51 76 55 32 56 6a 64 58 4a 6c 51 32 56 79 64 47 6c 6d 0a 61 57 4e 68 64 47 56 54 5a 58 4a ZXQvU2VjdXJlQ2VydGlm.aWNhdGVTZXJ
14ba00 32 61 57 4e 6c 63 79 35 6a 63 6d 77 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 2aWNlcy5jcmwwDQYJKoZIhvcNAQEFBQA
14ba20 44 67 67 45 42 41 49 63 42 62 53 4d 64 66 6c 73 58 66 63 46 68 4d 73 2b 50 35 2f 4f 4b 6c 46 6c DggEBAIcBbSMdflsXfcFhMs+P5/OKlFl
14ba40 6d 0a 34 4a 34 6f 71 46 37 54 74 2f 51 30 35 71 6f 35 73 70 63 57 78 59 4a 76 4d 71 54 70 6a 4f m.4J4oqF7Tt/Q05qo5spcWxYJvMqTpjO
14ba60 65 76 2f 65 2f 43 36 4c 6c 4c 71 71 50 30 35 74 71 4e 5a 53 48 37 75 6f 44 72 4a 69 69 46 47 76 ev/e/C6LlLqqP05tqNZSH7uoDrJiiFGv
14ba80 34 35 6a 4e 35 62 42 41 53 30 56 50 6d 6a 0a 5a 35 35 42 2b 67 6c 53 7a 41 56 49 71 4d 6b 2f 49 45jN5bBAS0VPmj.Z55B+glSzAVIqMk/I
14baa0 51 51 65 7a 6b 68 72 2f 49 58 6f 77 6e 75 76 66 37 66 4d 2b 46 38 36 2f 54 58 47 44 65 2b 58 33 QQezkhr/IXownuvf7fM+F86/TXGDe+X3
14bac0 45 79 72 45 65 46 72 79 7a 48 52 62 50 74 49 67 4b 76 63 6e 44 65 34 49 52 52 4c 0a 44 58 45 39 EyrEeFryzHRbPtIgKvcnDe4IRRL.DXE9
14bae0 37 49 4d 7a 62 74 46 75 4d 68 62 73 6d 4d 63 57 69 31 6d 6d 4e 4b 73 46 56 79 32 54 39 36 6f 54 7IMzbtFuMhbsmMcWi1mmNKsFVy2T96oT
14bb00 79 39 49 54 34 72 63 75 4f 38 31 72 55 42 63 4a 61 44 36 31 4a 6c 66 75 74 75 43 32 33 62 6b 70 y9IT4rcuO81rUBcJaD61JlfutuC23bkp
14bb20 67 48 6c 39 6a 36 50 77 0a 70 43 69 6b 46 63 53 46 39 43 66 55 61 37 2f 6c 58 4f 52 6c 41 6e 5a gHl9j6Pw.pCikFcSF9CfUa7/lXORlAnZ
14bb40 55 74 4f 4d 33 5a 69 54 54 47 57 48 49 55 68 44 6c 69 7a 65 61 75 61 6e 35 48 62 2f 71 6d 5a 4a UtOM3ZiTTGWHIUhDlizeauan5Hb/qmZJ
14bb60 68 6c 76 38 42 7a 61 46 66 44 62 78 78 76 41 36 73 43 78 31 48 0a 52 52 33 42 37 48 7a 73 2f 53 hlv8BzaFfDbxxvA6sCx1H.RR3B7Hzs/S
14bb80 6b 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 6f k=.-----END.CERTIFICATE-----..Co
14bba0 6d 6f 64 6f 20 54 72 75 73 74 65 64 20 53 65 72 76 69 63 65 73 20 72 6f 6f 74 0a 3d 3d 3d 3d 3d modo.Trusted.Services.root.=====
14bbc0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 =======================.-----BEG
14bbe0 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 51 7a 43 43 41 79 75 67 IN.CERTIFICATE-----.MIIEQzCCAyug
14bc00 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 2f AwIBAgIBATANBgkqhkiG9w0BAQUFADB/
14bc20 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 48 51 6a 45 62 4d 42 6b 47 41 31 55 45 43 41 77 53 MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS
14bc40 0a 52 33 4a 6c 59 58 52 6c 63 69 42 4e 59 57 35 6a 61 47 56 7a 64 47 56 79 4d 52 41 77 44 67 59 .R3JlYXRlciBNYW5jaGVzdGVyMRAwDgY
14bc60 44 56 51 51 48 44 41 64 54 59 57 78 6d 62 33 4a 6b 4d 52 6f 77 47 41 59 44 56 51 51 4b 44 42 46 DVQQHDAdTYWxmb3JkMRowGAYDVQQKDBF
14bc80 44 62 32 31 76 5a 47 38 67 51 30 45 67 0a 54 47 6c 74 61 58 52 6c 5a 44 45 6c 4d 43 4d 47 41 31 Db21vZG8gQ0Eg.TGltaXRlZDElMCMGA1
14bca0 55 45 41 77 77 63 56 48 4a 31 63 33 52 6c 5a 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 UEAwwcVHJ1c3RlZCBDZXJ0aWZpY2F0ZS
14bcc0 42 54 5a 58 4a 32 61 57 4e 6c 63 7a 41 65 46 77 30 77 4e 44 41 78 4d 44 45 77 0a 4d 44 41 77 4d BTZXJ2aWNlczAeFw0wNDAxMDEw.MDAwM
14bce0 44 42 61 46 77 30 79 4f 44 45 79 4d 7a 45 79 4d 7a 55 35 4e 54 6c 61 4d 48 38 78 43 7a 41 4a 42 DBaFw0yODEyMzEyMzU5NTlaMH8xCzAJB
14bd00 67 4e 56 42 41 59 54 41 6b 64 43 4d 52 73 77 47 51 59 44 56 51 51 49 44 42 4a 48 63 6d 56 68 64 gNVBAYTAkdCMRswGQYDVQQIDBJHcmVhd
14bd20 47 56 79 49 45 31 68 0a 62 6d 4e 6f 5a 58 4e 30 5a 58 49 78 45 44 41 4f 42 67 4e 56 42 41 63 4d GVyIE1h.bmNoZXN0ZXIxEDAOBgNVBAcM
14bd40 42 31 4e 68 62 47 5a 76 63 6d 51 78 47 6a 41 59 42 67 4e 56 42 41 6f 4d 45 55 4e 76 62 57 39 6b B1NhbGZvcmQxGjAYBgNVBAoMEUNvbW9k
14bd60 62 79 42 44 51 53 42 4d 61 57 31 70 64 47 56 6b 4d 53 55 77 0a 49 77 59 44 56 51 51 44 44 42 78 byBDQSBMaW1pdGVkMSUw.IwYDVQQDDBx
14bd80 55 63 6e 56 7a 64 47 56 6b 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 6c 49 46 4e 6c 63 6e 5a UcnVzdGVkIENlcnRpZmljYXRlIFNlcnZ
14bda0 70 59 32 56 7a 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f pY2VzMIIBIjANBgkqhkiG9w0BAQEFAAO
14bdc0 43 0a 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 33 33 46 76 4e 6c 68 54 57 76 49 32 56 46 C.AQ8AMIIBCgKCAQEA33FvNlhTWvI2VF
14bde0 65 41 78 48 51 49 49 4f 30 59 66 79 6f 64 35 6a 57 61 48 69 57 73 6e 4f 57 57 66 6e 4a 53 6f 42 eAxHQIIO0Yfyod5jWaHiWsnOWWfnJSoB
14be00 56 43 32 31 6e 64 5a 48 6f 61 30 4c 68 37 0a 33 54 6b 56 76 46 56 49 78 4f 30 36 41 4f 6f 78 45 VC21ndZHoa0Lh7.3TkVvFVIxO06AOoxE
14be20 62 72 79 63 58 51 61 5a 37 6a 50 4d 38 79 6f 4d 61 2b 6a 34 39 64 2f 76 7a 4d 74 54 47 6f 38 37 brycXQaZ7jPM8yoMa+j49d/vzMtTGo87
14be40 49 76 44 6b 74 4a 54 64 79 52 30 6e 41 64 75 63 50 79 39 43 31 74 32 75 6c 2f 79 0a 2f 39 63 33 IvDktJTdyR0nAducPy9C1t2ul/y./9c3
14be60 53 30 70 67 65 50 66 77 2b 73 70 77 74 4f 70 5a 71 71 50 4f 53 43 2b 70 77 37 49 4c 66 68 64 79 S0pgePfw+spwtOpZqqPOSC+pw7ILfhdy
14be80 46 67 79 6d 42 77 77 62 4f 4d 2f 4a 59 72 63 2f 6f 4a 4f 6c 68 30 48 79 74 33 42 41 64 39 69 2b FgymBwwbOM/JYrc/oJOlh0Hyt3BAd9i+
14bea0 46 48 7a 6a 71 4d 42 36 0a 6a 75 6c 6a 61 74 45 50 6d 73 62 53 39 49 73 36 46 41 52 57 31 4f 32 FHzjqMB6.juljatEPmsbS9Is6FARW1O2
14bec0 34 7a 47 37 31 2b 2b 49 73 57 4c 31 2f 54 32 73 72 39 32 41 6b 57 43 54 4f 4a 75 38 30 6b 54 72 4zG71++IsWL1/T2sr92AkWCTOJu80kTr
14bee0 56 34 34 48 51 73 76 41 45 41 74 64 62 74 7a 36 53 72 47 73 53 0a 69 76 6e 6b 42 62 41 37 6b 55 V44HQsvAEAtdbtz6SrGsS.ivnkBbA7kU
14bf00 6c 63 73 75 74 54 36 76 69 66 52 34 62 75 76 35 58 41 77 41 61 66 30 6c 74 65 45 52 76 30 78 77 lcsutT6vifR4buv5XAwAaf0lteERv0xw
14bf20 51 31 4b 64 4a 56 58 4f 54 74 36 77 49 44 41 51 41 42 6f 34 48 4a 4d 49 48 47 4d 42 30 47 41 31 Q1KdJVXOTt6wIDAQABo4HJMIHGMB0GA1
14bf40 55 64 0a 44 67 51 57 42 42 54 46 65 31 69 39 37 64 6f 6c 61 64 4c 33 57 52 61 6f 73 7a 4c 41 65 Ud.DgQWBBTFe1i97doladL3WRaoszLAe
14bf60 79 64 62 39 44 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 44 77 59 44 56 ydb9DAOBgNVHQ8BAf8EBAMCAQYwDwYDV
14bf80 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 0a 2f 7a 43 42 67 77 59 44 56 52 30 66 42 48 77 77 R0TAQH/BAUwAwEB./zCBgwYDVR0fBHww
14bfa0 65 6a 41 38 6f 44 71 67 4f 49 59 32 61 48 52 30 63 44 6f 76 4c 32 4e 79 62 43 35 6a 62 32 31 76 ejA8oDqgOIY2aHR0cDovL2NybC5jb21v
14bfc0 5a 47 39 6a 59 53 35 6a 62 32 30 76 56 48 4a 31 63 33 52 6c 5a 45 4e 6c 63 6e 52 70 0a 5a 6d 6c ZG9jYS5jb20vVHJ1c3RlZENlcnRp.Zml
14bfe0 6a 59 58 52 6c 55 32 56 79 64 6d 6c 6a 5a 58 4d 75 59 33 4a 73 4d 44 71 67 4f 4b 41 32 68 6a 52 jYXRlU2VydmljZXMuY3JsMDqgOKA2hjR
14c000 6f 64 48 52 77 4f 69 38 76 59 33 4a 73 4c 6d 4e 76 62 57 39 6b 62 79 35 75 5a 58 51 76 56 48 4a odHRwOi8vY3JsLmNvbW9kby5uZXQvVHJ
14c020 31 63 33 52 6c 5a 45 4e 6c 0a 63 6e 52 70 5a 6d 6c 6a 59 58 52 6c 55 32 56 79 64 6d 6c 6a 5a 58 1c3RlZENl.cnRpZmljYXRlU2VydmljZX
14c040 4d 75 59 33 4a 73 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 42 41 51 MuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQ
14c060 44 49 6b 34 45 37 69 62 53 76 75 49 51 53 54 49 33 53 38 4e 74 77 0a 75 6c 65 47 46 54 51 51 75 DIk4E7ibSvuIQSTI3S8Ntw.uleGFTQQu
14c080 53 39 2f 48 72 43 6f 69 57 43 68 69 73 4a 33 44 46 42 4b 6d 77 43 4c 32 49 76 30 51 65 4c 51 67 S9/HrCoiWChisJ3DFBKmwCL2Iv0QeLQg
14c0a0 34 70 4b 48 42 51 47 73 4b 4e 6f 42 58 41 78 4d 4b 64 54 6d 77 37 70 53 71 42 59 61 57 63 4f 72 4pKHBQGsKNoBXAxMKdTmw7pSqBYaWcOr
14c0c0 70 33 32 0a 70 53 78 42 76 7a 77 47 61 2b 52 5a 7a 47 30 51 38 5a 5a 76 48 39 2f 30 42 41 4b 6b p32.pSxBvzwGa+RZzG0Q8ZZvH9/0BAKk
14c0e0 6e 30 55 2b 79 4e 6a 36 4e 6b 5a 45 55 44 2b 43 6c 35 45 66 4b 4e 73 59 45 59 77 71 35 47 57 44 n0U+yNj6NkZEUD+Cl5EfKNsYEYwq5GWD
14c100 56 78 49 53 6a 42 63 2f 6c 44 62 2b 58 62 44 41 0a 42 48 63 54 75 50 51 56 31 54 38 34 7a 4a 51 VxISjBc/lDb+XbDA.BHcTuPQV1T84zJQ
14c120 36 56 64 43 73 6d 50 57 36 41 46 2f 67 68 68 6d 42 65 43 38 6f 77 48 37 54 7a 45 49 4b 39 61 35 6VdCsmPW6AF/ghhmBeC8owH7TzEIK9a5
14c140 51 6f 4e 45 2b 78 71 46 78 37 44 2b 67 49 49 78 6d 4f 6f 6d 30 6a 74 54 59 73 55 30 6c 0a 52 2b QoNE+xqFx7D+gIIxmOom0jtTYsU0l.R+
14c160 34 76 69 4d 69 31 34 51 56 46 77 4c 34 55 63 64 35 36 2f 59 35 37 66 55 30 49 6c 71 55 53 63 2f 4viMi14QVFwL4Ucd56/Y57fU0IlqUSc/
14c180 41 74 79 6a 63 6e 64 42 49 6e 54 4d 75 32 6c 2b 6e 5a 72 67 68 74 57 6a 6c 41 33 51 56 48 64 57 AtyjcndBInTMu2l+nZrghtWjlA3QVHdW
14c1a0 70 61 49 62 4f 6a 47 4d 39 4f 0a 39 79 35 58 74 35 68 77 58 73 6a 45 65 4c 42 69 0a 2d 2d 2d 2d paIbOjGM9O.9y5Xt5hwXsjEeLBi.----
14c1c0 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 51 75 6f 56 61 64 69 73 20 -END.CERTIFICATE-----..QuoVadis.
14c1e0 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 Root.CA.================.-----BE
14c200 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 30 44 43 43 42 4c 69 GIN.CERTIFICATE-----.MIIF0DCCBLi
14c220 67 41 77 49 42 41 67 49 45 4f 72 5a 51 69 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 gAwIBAgIEOrZQizANBgkqhkiG9w0BAQU
14c240 46 41 44 42 2f 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 43 54 54 45 5a 4d 42 63 47 41 31 55 FADB/MQswCQYDVQQGEwJCTTEZMBcGA1U
14c260 45 0a 43 68 4d 51 55 58 56 76 56 6d 46 6b 61 58 4d 67 54 47 6c 74 61 58 52 6c 5a 44 45 6c 4d 43 E.ChMQUXVvVmFkaXMgTGltaXRlZDElMC
14c280 4d 47 41 31 55 45 43 78 4d 63 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 MGA1UECxMcUm9vdCBDZXJ0aWZpY2F0aW
14c2a0 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 0a 65 54 45 75 4d 43 77 47 41 31 55 45 41 78 4d 6c 55 9uIEF1dGhvcml0.eTEuMCwGA1UEAxMlU
14c2c0 58 56 76 56 6d 46 6b 61 58 4d 67 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 XVvVmFkaXMgUm9vdCBDZXJ0aWZpY2F0a
14c2e0 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 54 41 65 46 77 30 77 4d 54 41 7a 0a 4d 54 6b 78 W9uIEF1dGhvcml0eTAeFw0wMTAz.MTkx
14c300 4f 44 4d 7a 4d 7a 4e 61 46 77 30 79 4d 54 41 7a 4d 54 63 78 4f 44 4d 7a 4d 7a 4e 61 4d 48 38 78 ODMzMzNaFw0yMTAzMTcxODMzMzNaMH8x
14c320 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 4a 4e 4d 52 6b 77 46 77 59 44 56 51 51 4b 45 78 42 52 CzAJBgNVBAYTAkJNMRkwFwYDVQQKExBR
14c340 64 57 39 57 59 57 52 70 0a 63 79 42 4d 61 57 31 70 64 47 56 6b 4d 53 55 77 49 77 59 44 56 51 51 dW9WYWRp.cyBMaW1pdGVkMSUwIwYDVQQ
14c360 4c 45 78 78 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 LExxSb290IENlcnRpZmljYXRpb24gQXV
14c380 30 61 47 39 79 61 58 52 35 4d 53 34 77 4c 41 59 44 56 51 51 44 0a 45 79 56 52 64 57 39 57 59 57 0aG9yaXR5MS4wLAYDVQQD.EyVRdW9WYW
14c3a0 52 70 63 79 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 RpcyBSb290IENlcnRpZmljYXRpb24gQX
14c3c0 56 30 61 47 39 79 61 58 52 35 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 V0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQ
14c3e0 45 46 0a 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 76 32 47 31 6c 56 4f 36 56 EF.AAOCAQ8AMIIBCgKCAQEAv2G1lVO6V
14c400 2f 7a 36 38 6d 63 4c 4f 68 72 66 45 59 42 6b 6c 62 54 52 76 4d 31 36 7a 2f 59 70 6c 69 34 6b 56 /z68mcLOhrfEYBklbTRvM16z/Ypli4kV
14c420 45 41 6b 4f 50 63 61 68 64 78 59 54 4d 75 6b 0a 4a 30 4b 58 30 4a 2b 44 69 73 50 6b 42 67 4e 62 EAkOPcahdxYTMuk.J0KX0J+DisPkBgNb
14c440 41 4b 56 52 48 6e 41 45 64 4f 4c 42 31 44 71 72 31 36 30 37 42 78 67 46 6a 76 32 44 72 4f 70 6d AKVRHnAEdOLB1Dqr1607BxgFjv2DrOpm
14c460 32 52 67 62 61 49 72 31 56 78 71 59 75 76 58 74 64 6a 31 38 32 64 36 55 61 6a 74 4c 0a 46 38 48 2RgbaIr1VxqYuvXtdj182d6UajtL.F8H
14c480 56 6a 37 31 6c 4f 44 71 56 30 44 31 56 4e 6b 37 66 65 56 63 78 4b 68 37 59 57 57 56 4a 57 43 43 Vj71lODqV0D1VNk7feVcxKh7YWWVJWCC
14c4a0 59 66 71 74 66 66 70 2f 70 31 6b 33 73 67 33 53 70 78 32 7a 59 37 69 6c 4b 68 53 6f 47 46 50 6c Yfqtffp/p1k3sg3Spx2zY7ilKhSoGFPl
14c4c0 55 35 74 50 61 5a 51 65 4c 0a 59 7a 63 53 31 39 44 73 77 33 73 67 51 55 53 6a 37 63 75 67 46 2b U5tPaZQeL.YzcS19Dsw3sgQUSj7cugF+
14c4e0 46 78 5a 63 34 64 5a 6a 48 33 64 67 45 5a 79 48 30 44 57 4c 61 56 53 52 32 6d 45 69 62 6f 78 67 FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxg
14c500 78 32 34 4f 4e 6d 79 2b 70 64 70 69 62 75 35 63 78 66 76 57 65 6e 0a 41 53 63 4f 6f 73 70 55 78 x24ONmy+pdpibu5cxfvWen.AScOospUx
14c520 62 46 36 6c 52 31 78 48 6b 6f 70 69 67 50 63 61 6b 58 42 70 42 6c 65 62 7a 62 4e 77 36 4b 77 74 bF6lR1xHkopigPcakXBpBlebzbNw6Kwt
14c540 2f 35 63 4f 4f 4a 53 76 50 68 45 51 2b 61 51 75 77 49 44 41 51 41 42 6f 34 49 43 55 6a 43 43 41 /5cOOJSvPhEQ+aQuwIDAQABo4ICUjCCA
14c560 6b 34 77 0a 50 51 59 49 4b 77 59 42 42 51 55 48 41 51 45 45 4d 54 41 76 4d 43 30 47 43 43 73 47 k4w.PQYIKwYBBQUHAQEEMTAvMC0GCCsG
14c580 41 51 55 46 42 7a 41 42 68 69 46 6f 64 48 52 77 63 7a 6f 76 4c 32 39 6a 63 33 41 75 63 58 56 76 AQUFBzABhiFodHRwczovL29jc3AucXVv
14c5a0 64 6d 46 6b 61 58 4e 76 5a 6d 5a 7a 61 47 39 79 0a 5a 53 35 6a 62 32 30 77 44 77 59 44 56 52 30 dmFkaXNvZmZzaG9y.ZS5jb20wDwYDVR0
14c5c0 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 43 43 41 52 6f 47 41 31 55 64 49 41 53 43 41 52 45 TAQH/BAUwAwEB/zCCARoGA1UdIASCARE
14c5e0 77 67 67 45 4e 4d 49 49 42 43 51 59 4a 4b 77 59 42 42 41 47 2b 57 41 41 42 4d 49 48 37 0a 4d 49 wggENMIIBCQYJKwYBBAG+WAABMIH7.MI
14c600 48 55 42 67 67 72 42 67 45 46 42 51 63 43 41 6a 43 42 78 78 71 42 78 46 4a 6c 62 47 6c 68 62 6d HUBggrBgEFBQcCAjCBxxqBxFJlbGlhbm
14c620 4e 6c 49 47 39 75 49 48 52 6f 5a 53 42 52 64 57 39 57 59 57 52 70 63 79 42 53 62 32 39 30 49 45 NlIG9uIHRoZSBRdW9WYWRpcyBSb290IE
14c640 4e 6c 63 6e 52 70 5a 6d 6c 6a 0a 59 58 52 6c 49 47 4a 35 49 47 46 75 65 53 42 77 59 58 4a 30 65 NlcnRpZmlj.YXRlIGJ5IGFueSBwYXJ0e
14c660 53 42 68 63 33 4e 31 62 57 56 7a 49 47 46 6a 59 32 56 77 64 47 46 75 59 32 55 67 62 32 59 67 64 SBhc3N1bWVzIGFjY2VwdGFuY2Ugb2Ygd
14c680 47 68 6c 49 48 52 6f 5a 57 34 67 59 58 42 77 62 47 6c 6a 59 57 4a 73 0a 5a 53 42 7a 64 47 46 75 GhlIHRoZW4gYXBwbGljYWJs.ZSBzdGFu
14c6a0 5a 47 46 79 5a 43 42 30 5a 58 4a 74 63 79 42 68 62 6d 51 67 59 32 39 75 5a 47 6c 30 61 57 39 75 ZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9u
14c6c0 63 79 42 76 5a 69 42 31 63 32 55 73 49 47 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 cyBvZiB1c2UsIGNlcnRpZmljYXRpb24g
14c6e0 63 48 4a 68 0a 59 33 52 70 59 32 56 7a 4c 43 42 68 62 6d 51 67 64 47 68 6c 49 46 46 31 62 31 5a cHJh.Y3RpY2VzLCBhbmQgdGhlIFF1b1Z
14c700 68 5a 47 6c 7a 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 6c 49 46 42 76 62 47 6c 6a 65 53 34 hZGlzIENlcnRpZmljYXRlIFBvbGljeS4
14c720 77 49 67 59 49 4b 77 59 42 42 51 55 48 41 67 45 57 0a 46 6d 68 30 64 48 41 36 4c 79 39 33 64 33 wIgYIKwYBBQUHAgEW.Fmh0dHA6Ly93d3
14c740 63 75 63 58 56 76 64 6d 46 6b 61 58 4d 75 59 6d 30 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 49 cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFI
14c760 74 4c 62 65 33 54 4b 62 6b 47 47 65 77 35 4f 61 6e 77 6c 34 52 71 79 2b 2f 66 4d 49 47 75 0a 42 tLbe3TKbkGGew5Oanwl4Rqy+/fMIGu.B
14c780 67 4e 56 48 53 4d 45 67 61 59 77 67 61 4f 41 46 49 74 4c 62 65 33 54 4b 62 6b 47 47 65 77 35 4f gNVHSMEgaYwgaOAFItLbe3TKbkGGew5O
14c7a0 61 6e 77 6c 34 52 71 79 2b 2f 66 6f 59 47 45 70 49 47 42 4d 48 38 78 43 7a 41 4a 42 67 4e 56 42 anwl4Rqy+/foYGEpIGBMH8xCzAJBgNVB
14c7c0 41 59 54 41 6b 4a 4e 4d 52 6b 77 0a 46 77 59 44 56 51 51 4b 45 78 42 52 64 57 39 57 59 57 52 70 AYTAkJNMRkw.FwYDVQQKExBRdW9WYWRp
14c7e0 63 79 42 4d 61 57 31 70 64 47 56 6b 4d 53 55 77 49 77 59 44 56 51 51 4c 45 78 78 53 62 32 39 30 cyBMaW1pdGVkMSUwIwYDVQQLExxSb290
14c800 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 0a 61 47 39 79 61 58 52 IENlcnRpZmljYXRpb24gQXV0.aG9yaXR
14c820 35 4d 53 34 77 4c 41 59 44 56 51 51 44 45 79 56 52 64 57 39 57 59 57 52 70 63 79 42 53 62 32 39 5MS4wLAYDVQQDEyVRdW9WYWRpcyBSb29
14c840 30 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 0IENlcnRpZmljYXRpb24gQXV0aG9yaXR
14c860 35 67 67 51 36 0a 74 6c 43 4c 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 5ggQ6.tlCLMA4GA1UdDwEB/wQEAwIBBj
14c880 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 69 74 51 55 74 66 ANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf
14c8a0 37 30 6d 70 4b 6e 47 64 53 6b 66 6e 49 59 6a 39 6c 6f 0a 66 46 49 6b 33 57 64 76 4f 58 72 45 71 70mpKnGdSkfnIYj9lo.fFIk3WdvOXrEq
14c8c0 6c 34 39 34 6c 69 77 54 58 43 59 68 47 48 6f 47 2b 4e 70 47 41 37 4f 2b 30 64 51 6f 45 37 2f 38 l494liwTXCYhGHoG+NpGA7O+0dQoE7/8
14c8e0 43 51 66 76 62 4c 4f 39 53 66 38 37 43 39 54 71 6e 4e 37 41 7a 31 30 62 75 59 57 6e 75 75 6c 0a CQfvbLO9Sf87C9TqnN7Az10buYWnuul.
14c900 4c 73 53 2f 56 69 64 51 4b 32 4b 36 76 6b 73 63 50 46 56 63 51 52 30 6b 76 6f 49 67 52 31 33 56 LsS/VidQK2K6vkscPFVcQR0kvoIgR13V
14c920 52 48 35 36 46 6d 6a 66 66 55 31 52 63 48 68 58 48 54 4d 65 2f 51 4b 5a 6e 41 7a 4e 43 67 56 50 RH56FmjffU1RcHhXHTMe/QKZnAzNCgVP
14c940 78 37 75 4f 70 48 58 36 53 6d 32 78 0a 67 49 34 4a 56 72 6d 63 47 6d 44 2b 58 63 48 58 65 74 77 x7uOpHX6Sm2x.gI4JVrmcGmD+XcHXetw
14c960 52 65 4e 44 57 58 63 47 33 31 61 30 79 6d 51 4d 36 69 73 78 55 4a 54 6b 78 67 58 73 54 49 6c 47 ReNDWXcG31a0ymQM6isxUJTkxgXsTIlG
14c980 36 52 6d 79 68 75 35 37 36 42 47 78 4a 4a 6e 53 50 30 6e 50 72 7a 44 43 69 0a 35 75 70 5a 49 6f 6Rmyhu576BGxJJnSP0nPrzDCi.5upZIo
14c9a0 66 34 6c 2f 55 4f 2f 65 72 4d 6b 71 51 57 78 46 49 59 36 69 48 4f 73 66 48 6d 68 49 48 6c 75 71 f4l/UO/erMkqQWxFIY6iHOsfHmhIHluq
14c9c0 6d 47 4b 50 4a 44 57 6c 30 53 6e 61 77 65 32 61 6a 6c 43 6d 71 6e 66 36 43 48 4b 63 2f 79 69 55 mGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU
14c9e0 33 55 37 4d 58 69 0a 35 6e 72 51 4e 69 4f 4b 53 6e 51 32 2b 51 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 3U7MXi.5nrQNiOKSnQ2+Q==.-----END
14ca00 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 51 75 6f 56 61 64 69 73 20 52 6f 6f 74 .CERTIFICATE-----..QuoVadis.Root
14ca20 20 43 41 20 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 .CA.2.==================.-----BE
14ca40 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 74 7a 43 43 41 35 2b GIN.CERTIFICATE-----.MIIFtzCCA5+
14ca60 67 41 77 49 42 41 67 49 43 42 51 6b 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQA
14ca80 77 52 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 51 6b 30 78 47 54 41 58 42 67 4e 56 42 41 6f wRTELMAkGA1UEBhMCQk0xGTAXBgNVBAo
14caa0 54 0a 45 46 46 31 62 31 5a 68 5a 47 6c 7a 49 45 78 70 62 57 6c 30 5a 57 51 78 47 7a 41 5a 42 67 T.EFF1b1ZhZGlzIExpbWl0ZWQxGzAZBg
14cac0 4e 56 42 41 4d 54 45 6c 46 31 62 31 5a 68 5a 47 6c 7a 49 46 4a 76 62 33 51 67 51 30 45 67 4d 6a NVBAMTElF1b1ZhZGlzIFJvb3QgQ0EgMj
14cae0 41 65 46 77 30 77 4e 6a 45 78 4d 6a 51 78 0a 4f 44 49 33 4d 44 42 61 46 77 30 7a 4d 54 45 78 4d AeFw0wNjExMjQx.ODI3MDBaFw0zMTExM
14cb00 6a 51 78 4f 44 49 7a 4d 7a 4e 61 4d 45 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 4a 4e 4d jQxODIzMzNaMEUxCzAJBgNVBAYTAkJNM
14cb20 52 6b 77 46 77 59 44 56 51 51 4b 45 78 42 52 64 57 39 57 59 57 52 70 63 79 42 4d 0a 61 57 31 70 RkwFwYDVQQKExBRdW9WYWRpcyBM.aW1p
14cb40 64 47 56 6b 4d 52 73 77 47 51 59 44 56 51 51 44 45 78 4a 52 64 57 39 57 59 57 52 70 63 79 42 53 dGVkMRswGQYDVQQDExJRdW9WYWRpcyBS
14cb60 62 32 39 30 49 45 4e 42 49 44 49 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 b290IENBIDIwggIiMA0GCSqGSIb3DQEB
14cb80 41 51 55 41 41 34 49 43 0a 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 61 47 4d 70 4c 6c 41 30 AQUAA4IC.DwAwggIKAoICAQCaGMpLlA0
14cba0 41 4c 61 38 44 4b 59 72 77 44 34 48 49 72 6b 77 5a 68 52 30 49 6e 36 73 70 52 49 58 7a 4c 34 47 ALa8DKYrwD4HIrkwZhR0In6spRIXzL4G
14cbc0 74 4d 68 36 51 52 72 2b 6a 68 69 59 61 48 76 35 2b 48 42 67 36 0a 58 4a 78 67 46 79 6f 36 64 49 tMh6QRr+jhiYaHv5+HBg6.XJxgFyo6dI
14cbe0 4d 7a 4d 48 31 68 56 42 48 4c 37 61 76 67 35 74 4b 69 66 76 56 72 62 78 69 33 43 67 73 74 2f 65 MzMH1hVBHL7avg5tKifvVrbxi3Cgst/e
14cc00 6b 2b 37 77 72 47 73 78 44 70 33 4d 4a 47 46 2f 68 64 2f 61 54 61 2f 35 35 4a 57 70 7a 6d 4d 2b k+7wrGsxDp3MJGF/hd/aTa/55JWpzmM+
14cc20 59 6b 0a 6c 76 63 2f 75 6c 73 72 48 48 6f 31 77 74 5a 6e 2f 71 74 6d 55 49 74 74 4b 47 41 72 37 Yk.lvc/ulsrHHo1wtZn/qtmUIttKGAr7
14cc40 39 64 67 77 38 65 54 76 49 30 32 6b 66 4e 2f 2b 4e 73 52 45 38 53 63 64 33 62 42 72 72 63 43 61 9dgw8eTvI02kfN/+NsRE8Scd3bBrrcCa
14cc60 6f 46 36 71 55 57 44 34 67 58 6d 75 56 62 42 0a 6c 44 65 50 53 48 46 6a 49 75 77 58 5a 51 65 56 oF6qUWD4gXmuVbB.lDePSHFjIuwXZQeV
14cc80 69 6b 76 66 6a 38 5a 61 43 75 57 77 34 31 39 65 61 78 47 72 44 50 6d 46 36 30 54 70 2b 41 52 7a ikvfj8ZaCuWw419eaxGrDPmF60Tp+ARz
14cca0 38 75 6e 2b 58 4a 69 4d 39 58 4f 76 61 37 52 2b 7a 64 52 63 41 69 74 4d 4f 65 47 79 0a 6c 5a 55 8un+XJiM9XOva7R+zdRcAitMOeGy.lZU
14ccc0 74 51 6f 66 58 31 62 4f 51 51 37 64 73 45 2f 48 65 33 66 62 45 2b 49 6b 2f 30 58 58 31 6b 73 4f tQofX1bOQQ7dsE/He3fbE+Ik/0XX1ksO
14cce0 52 31 59 71 49 30 4a 44 73 33 47 33 65 69 63 4a 6c 63 5a 61 4c 44 51 50 39 6e 4c 39 62 46 71 79 R1YqI0JDs3G3eicJlcZaLDQP9nL9bFqy
14cd00 53 32 2b 72 2b 65 58 79 74 0a 36 36 2f 33 46 73 76 62 7a 53 55 72 35 52 2f 37 6d 70 2f 69 55 63 S2+r+eXyt.66/3FsvbzSUr5R/7mp/iUc
14cd20 77 36 55 77 78 49 35 67 36 39 79 62 52 32 42 6c 4c 6d 45 52 4f 46 63 6d 4d 44 42 4f 41 45 4e 69 w6UwxI5g69ybR2BlLmEROFcmMDBOAENi
14cd40 73 67 47 51 4c 6f 64 4b 63 66 74 73 6c 57 5a 76 42 31 4a 64 78 6e 0a 77 51 35 68 59 49 69 7a 50 sgGQLodKcftslWZvB1Jdxn.wQ5hYIizP
14cd60 74 47 6f 2f 4b 50 61 48 62 44 52 73 53 4e 55 33 30 52 32 62 65 31 42 32 4d 47 79 49 72 5a 54 48 tGo/KPaHbDRsSNU30R2be1B2MGyIrZTH
14cd80 4e 38 31 48 64 79 68 64 79 6f 78 35 43 33 31 35 65 58 62 79 4f 44 2f 35 59 44 58 43 32 4f 67 2f N81Hdyhdyox5C315eXbyOD/5YDXC2Og/
14cda0 7a 4f 68 0a 44 37 6f 73 46 52 58 71 6c 37 50 53 6f 72 57 2b 38 6f 79 57 48 68 71 50 48 57 79 6b zOh.D7osFRXql7PSorW+8oyWHhqPHWyk
14cdc0 59 54 65 35 68 6e 4d 7a 31 35 65 57 6e 69 4e 39 67 71 52 4d 67 65 4b 68 30 62 70 6e 58 35 55 48 YTe5hnMz15eWniN9gqRMgeKh0bpnX5UH
14cde0 6f 79 63 52 37 68 59 51 65 37 78 46 53 6b 79 79 0a 42 4e 4b 72 37 39 58 39 44 46 48 4f 55 47 6f oycR7hYQe7xFSkyy.BNKr79X9DFHOUGo
14ce00 49 4d 66 6d 52 32 67 79 50 5a 46 77 44 77 7a 71 4c 49 44 39 75 6a 57 63 39 4f 74 62 2b 66 56 75 IMfmR2gyPZFwDwzqLID9ujWc9Otb+fVu
14ce20 49 79 56 37 37 7a 47 48 63 69 7a 4e 33 30 30 51 79 4e 51 6c 69 42 4a 49 57 45 4e 69 65 0a 4a 30 IyV77zGHcizN300QyNQliBJIWENie.J0
14ce40 66 37 4f 79 48 6a 2b 4f 73 64 57 77 49 44 41 51 41 42 6f 34 47 77 4d 49 47 74 4d 41 38 47 41 31 f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1
14ce60 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 43 77 59 44 56 52 30 50 42 41 51 44 41 67 UdEwEB/wQFMAMBAf8wCwYDVR0PBAQDAg
14ce80 45 47 4d 42 30 47 41 31 55 64 0a 44 67 51 57 42 42 51 61 68 47 4b 38 53 45 77 7a 4a 51 54 55 37 EGMB0GA1Ud.DgQWBBQahGK8SEwzJQTU7
14cea0 74 44 32 41 38 51 5a 52 74 47 55 61 7a 42 75 42 67 4e 56 48 53 4d 45 5a 7a 42 6c 67 42 51 61 68 tD2A8QZRtGUazBuBgNVHSMEZzBlgBQah
14cec0 47 4b 38 53 45 77 7a 4a 51 54 55 37 74 44 32 41 38 51 5a 52 74 47 55 0a 61 36 46 4a 70 45 63 77 GK8SEwzJQTU7tD2A8QZRtGU.a6FJpEcw
14cee0 52 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 51 6b 30 78 47 54 41 58 42 67 4e 56 42 41 6f 54 RTELMAkGA1UEBhMCQk0xGTAXBgNVBAoT
14cf00 45 46 46 31 62 31 5a 68 5a 47 6c 7a 49 45 78 70 62 57 6c 30 5a 57 51 78 47 7a 41 5a 42 67 4e 56 EFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNV
14cf20 42 41 4d 54 0a 45 6c 46 31 62 31 5a 68 5a 47 6c 7a 49 46 4a 76 62 33 51 67 51 30 45 67 4d 6f 49 BAMT.ElF1b1ZhZGlzIFJvb3QgQ0EgMoI
14cf40 43 42 51 6b 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 49 42 41 44 34 CBQkwDQYJKoZIhvcNAQEFBQADggIBAD4
14cf60 4b 46 6b 32 66 42 6c 75 6f 72 6e 46 64 4c 77 55 76 0a 5a 2b 59 54 52 59 50 45 4e 76 62 7a 77 43 KFk2fBluornFdLwUv.Z+YTRYPENvbzwC
14cf80 59 4d 44 62 56 48 5a 46 33 34 74 48 4c 4a 52 71 55 44 47 43 64 56 69 58 68 39 64 75 71 57 4e 49 YMDbVHZF34tHLJRqUDGCdViXh9duqWNI
14cfa0 41 58 49 4e 7a 6e 67 2f 69 4e 2f 41 65 34 32 6c 39 4e 4c 6d 65 79 68 50 33 5a 52 50 78 33 0a 55 AXINzng/iN/Ae42l9NLmeyhP3ZRPx3.U
14cfc0 49 48 6d 66 4c 54 4a 44 51 74 79 55 2f 68 32 42 77 64 42 52 35 59 4d 2b 2b 43 43 4a 70 4e 56 6a IHmfLTJDQtyU/h2BwdBR5YM++CCJpNVj
14cfe0 50 34 69 48 32 42 6c 66 46 2f 6e 4a 72 50 33 4d 70 43 59 55 4e 51 33 63 56 58 32 6b 69 46 34 39 P4iH2BlfF/nJrP3MpCYUNQ3cVX2kiF49
14d000 35 56 35 2b 76 67 74 4a 6f 64 6d 0a 56 6a 42 33 70 6a 64 34 4d 31 49 51 57 4b 34 2f 59 59 37 79 5V5+vgtJodm.VjB3pjd4M1IQWK4/YY7y
14d020 61 72 48 76 47 48 35 4b 57 57 50 4b 6a 61 4a 57 31 61 63 76 76 46 59 66 7a 7a 6e 42 34 76 73 4b arHvGH5KWWPKjaJW1acvvFYfzznB4vsK
14d040 71 42 55 73 66 55 31 36 59 38 5a 73 6c 30 51 38 30 6d 2f 44 53 68 63 4b 0a 2b 4a 44 53 56 36 49 qBUsfU16Y8Zsl0Q80m/DShcK.+JDSV6I
14d060 5a 55 61 55 74 6c 30 48 61 42 30 2b 70 55 4e 71 51 6a 5a 52 47 34 54 37 77 6c 50 30 51 41 44 6a ZUaUtl0HaB0+pUNqQjZRG4T7wlP0QADj
14d080 31 4f 2b 68 41 34 62 52 75 56 68 6f 67 7a 47 39 59 6a 65 30 75 52 59 2f 57 36 5a 4d 2f 35 37 45 1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57E
14d0a0 73 33 7a 72 57 0a 49 6f 7a 63 68 4c 73 69 62 39 44 34 35 4d 59 35 36 51 53 49 50 4d 4f 36 36 31 s3zrW.IozchLsib9D45MY56QSIPMO661
14d0c0 56 36 62 59 43 5a 4a 50 56 73 41 66 76 34 6c 37 43 55 57 2b 76 39 30 6d 2f 78 64 32 67 4e 4e 57 V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNW
14d0e0 51 6a 72 4c 68 56 6f 51 50 52 54 55 49 5a 33 50 68 31 0a 57 56 61 6a 2b 61 68 4a 65 66 69 76 44 QjrLhVoQPRTUIZ3Ph1.WVaj+ahJefivD
14d100 72 6b 52 6f 48 79 33 61 75 30 30 30 4c 59 6d 59 6a 67 61 68 77 7a 34 36 50 30 75 30 35 42 2f 42 rkRoHy3au000LYmYjgahwz46P0u05B/B
14d120 35 45 71 48 64 5a 2b 58 49 57 44 6d 62 41 34 43 44 2f 70 58 76 6b 31 42 2b 54 4a 59 6d 35 58 0a 5EqHdZ+XIWDmbA4CD/pXvk1B+TJYm5X.
14d140 66 36 64 51 6c 66 65 36 79 4a 76 6d 6a 71 49 42 78 64 5a 6d 76 33 6c 68 38 7a 77 63 34 62 6d 43 f6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmC
14d160 58 46 32 67 77 2b 6e 59 53 4c 30 5a 6f 68 45 55 47 57 36 79 68 68 74 6f 50 6b 67 33 47 6f 69 33 XF2gw+nYSL0ZohEUGW6yhhtoPkg3Goi3
14d180 58 5a 5a 65 6e 4d 66 76 4a 32 49 49 0a 34 70 45 5a 58 4e 4c 78 49 64 32 36 46 30 4b 43 6c 33 47 XZZenMfvJ2II.4pEZXNLxId26F0KCl3G
14d1a0 42 55 7a 47 70 6e 2f 5a 39 59 72 39 79 34 61 4f 54 48 63 79 4b 4a 6c 6f 4a 4f 4e 44 4f 31 77 32 BUzGpn/Z9Yr9y4aOTHcyKJloJONDO1w2
14d1c0 41 46 72 52 34 70 54 71 48 54 49 32 4b 70 64 56 47 6c 2f 49 73 45 4c 6d 38 0a 56 43 4c 41 41 56 AFrR4pTqHTI2KpdVGl/IsELm8.VCLAAV
14d1e0 42 70 51 35 37 30 73 75 39 74 2b 4f 7a 61 38 65 4f 78 37 39 2b 52 6a 31 51 71 43 79 58 42 4a 68 BpQ570su9t+Oza8eOx79+Rj1QqCyXBJh
14d200 6e 45 55 68 41 46 5a 64 57 43 45 4f 72 43 4d 63 30 75 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 nEUhAFZdWCEOrCMc0u.-----END.CERT
14d220 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 51 75 6f 56 61 64 69 73 20 52 6f 6f 74 20 43 41 20 33 IFICATE-----..QuoVadis.Root.CA.3
14d240 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 .==================.-----BEGIN.C
14d260 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 47 6e 54 43 43 42 49 57 67 41 77 49 42 ERTIFICATE-----.MIIGnTCCBIWgAwIB
14d280 41 67 49 43 42 63 59 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 52 54 45 4c AgICBcYwDQYJKoZIhvcNAQEFBQAwRTEL
14d2a0 4d 41 6b 47 41 31 55 45 42 68 4d 43 51 6b 30 78 47 54 41 58 42 67 4e 56 42 41 6f 54 0a 45 46 46 MAkGA1UEBhMCQk0xGTAXBgNVBAoT.EFF
14d2c0 31 62 31 5a 68 5a 47 6c 7a 49 45 78 70 62 57 6c 30 5a 57 51 78 47 7a 41 5a 42 67 4e 56 42 41 4d 1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAM
14d2e0 54 45 6c 46 31 62 31 5a 68 5a 47 6c 7a 49 46 4a 76 62 33 51 67 51 30 45 67 4d 7a 41 65 46 77 30 TElF1b1ZhZGlzIFJvb3QgQ0EgMzAeFw0
14d300 77 4e 6a 45 78 4d 6a 51 78 0a 4f 54 45 78 4d 6a 4e 61 46 77 30 7a 4d 54 45 78 4d 6a 51 78 4f 54 wNjExMjQx.OTExMjNaFw0zMTExMjQxOT
14d320 41 32 4e 44 52 61 4d 45 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 4a 4e 4d 52 6b 77 46 77 A2NDRaMEUxCzAJBgNVBAYTAkJNMRkwFw
14d340 59 44 56 51 51 4b 45 78 42 52 64 57 39 57 59 57 52 70 63 79 42 4d 0a 61 57 31 70 64 47 56 6b 4d YDVQQKExBRdW9WYWRpcyBM.aW1pdGVkM
14d360 52 73 77 47 51 59 44 56 51 51 44 45 78 4a 52 64 57 39 57 59 57 52 70 63 79 42 53 62 32 39 30 49 RswGQYDVQQDExJRdW9WYWRpcyBSb290I
14d380 45 4e 42 49 44 4d 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 ENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA
14d3a0 34 49 43 0a 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 44 4d 56 30 49 57 56 4a 7a 6d 6d 4e 50 54 4IC.DwAwggIKAoICAQDMV0IWVJzmmNPT
14d3c0 54 65 37 2b 37 63 65 66 51 7a 6c 4b 5a 62 50 6f 46 6f 67 30 32 77 31 5a 6b 58 54 50 6b 72 67 45 Te7+7cefQzlKZbPoFog02w1ZkXTPkrgE
14d3e0 51 4b 30 43 53 7a 47 72 76 49 32 52 61 4e 67 67 0a 44 68 6f 42 34 68 70 37 54 68 64 64 34 6f 71 QK0CSzGrvI2RaNgg.DhoB4hp7Thdd4oq
14d400 33 50 35 6b 61 7a 65 74 68 71 38 4a 6c 70 68 2b 33 74 37 32 33 6a 2f 7a 39 63 49 38 4c 6f 47 65 3P5kazethq8Jlph+3t723j/z9cI8LoGe
14d420 2b 41 61 4a 5a 7a 33 48 6d 44 79 6c 32 2f 37 46 57 65 55 55 72 48 35 35 36 56 4f 69 6a 0a 4b 54 +AaJZz3HmDyl2/7FWeUUrH556VOij.KT
14d440 56 6f 70 41 46 50 44 36 51 75 4e 2b 38 62 76 2b 4f 50 45 4b 68 79 71 31 68 58 35 31 53 47 79 4d VopAFPD6QuN+8bv+OPEKhyq1hX51SGyM
14d460 6e 7a 57 39 6f 73 32 6c 32 4f 62 6a 79 6a 50 74 72 37 67 75 58 64 38 6c 79 79 42 54 4e 76 69 6a nzW9os2l2ObjyjPtr7guXd8lyyBTNvij
14d480 62 4f 30 42 4e 4f 2f 37 39 4b 0a 44 44 52 4d 70 73 4d 68 76 56 41 45 56 65 75 78 75 35 33 37 52 bO0BNO/79K.DDRMpsMhvVAEVeuxu537R
14d4a0 52 35 6b 46 64 35 56 41 59 77 43 64 72 58 4c 6f 54 39 43 61 62 77 76 76 57 68 44 46 6c 61 4a 4b R5kFd5VAYwCdrXLoT9CabwvvWhDFlaJK
14d4c0 6a 64 68 6b 66 32 6d 72 6b 37 41 79 78 52 6c 6c 44 64 4c 6b 67 62 76 0a 42 4e 44 49 6e 49 6a 62 jdhkf2mrk7AyxRllDdLkgbv.BNDInIjb
14d4e0 43 33 75 42 72 37 45 39 4b 73 52 6c 4f 6e 69 32 37 74 79 41 73 64 4c 54 6d 5a 77 36 37 6d 74 61 C3uBr7E9KsRlOni27tyAsdLTmZw67mta
14d500 61 37 4f 4e 74 39 58 4f 6e 4d 4b 2b 70 55 73 76 46 72 47 65 61 44 73 47 62 36 35 39 6e 2f 6a 65 a7ONt9XOnMK+pUsvFrGeaDsGb659n/je
14d520 37 4d 77 70 0a 70 35 69 6a 4a 55 4d 76 37 2f 46 66 4a 75 47 49 54 66 68 65 62 74 66 5a 46 47 34 7Mwp.p5ijJUMv7/FfJuGITfhebtfZFG4
14d540 5a 4d 32 6d 6e 4f 34 53 4a 6b 38 52 54 56 52 4f 68 55 58 68 41 2b 4c 6a 4a 6f 75 35 37 75 6c 4a ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJ
14d560 43 67 35 34 55 37 51 56 53 57 6c 6c 57 70 35 66 38 0a 6e 54 38 4b 4b 64 6a 63 54 35 45 4f 45 37 Cg54U7QVSWllWp5f8.nT8KKdjcT5EOE7
14d580 7a 65 6c 61 54 66 69 35 6d 2b 72 4a 73 7a 69 4f 2b 31 67 61 38 62 78 69 4a 54 79 50 62 48 37 70 zelaTfi5m+rJsziO+1ga8bxiJTyPbH7p
14d5a0 63 55 73 4d 56 38 65 46 4c 49 38 4d 35 75 64 32 43 45 70 75 6b 71 64 69 44 74 57 41 45 58 0a 4d cUsMV8eFLI8M5ud2CEpukqdiDtWAEX.M
14d5c0 4a 50 70 47 6f 76 67 63 32 50 5a 61 70 4b 55 53 55 36 30 72 55 71 46 78 4b 4d 69 4d 50 77 4a 37 JPpGovgc2PZapKUSU60rUqFxKMiMPwJ7
14d5e0 57 67 69 63 36 61 49 44 46 55 68 57 4d 58 68 4f 70 38 71 33 63 72 68 6b 4f 44 5a 63 36 74 73 67 Wgic6aIDFUhWMXhOp8q3crhkODZc6tsg
14d600 4c 6a 6f 43 32 53 54 6f 4a 79 4d 0a 47 66 2b 7a 30 67 7a 73 6b 53 61 48 69 72 4f 69 34 58 43 50 LjoC2SToJyM.Gf+z0gzskSaHirOi4XCP
14d620 4c 41 72 6c 7a 57 31 6f 55 65 76 61 50 77 56 2f 69 7a 4c 6d 45 31 78 72 2f 6c 39 41 34 69 4c 49 LArlzW1oUevaPwV/izLmE1xr/l9A4iLI
14d640 74 4c 52 6b 54 39 61 36 66 55 67 2b 71 47 6b 4d 31 37 75 47 63 63 6c 7a 0a 75 44 38 37 6e 53 56 tLRkT9a6fUg+qGkM17uGcclz.uD87nSV
14d660 4c 32 76 39 41 36 77 49 44 41 51 41 42 6f 34 49 42 6c 54 43 43 41 5a 45 77 44 77 59 44 56 52 30 L2v9A6wIDAQABo4IBlTCCAZEwDwYDVR0
14d680 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 43 42 34 51 59 44 56 52 30 67 42 49 48 5a 4d 49 48 TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIH
14d6a0 57 4d 49 48 54 0a 42 67 6b 72 42 67 45 45 41 62 35 59 41 41 4d 77 67 63 55 77 67 5a 4d 47 43 43 WMIHT.BgkrBgEEAb5YAAMwgcUwgZMGCC
14d6c0 73 47 41 51 55 46 42 77 49 43 4d 49 47 47 47 6f 47 44 51 57 35 35 49 48 56 7a 5a 53 42 76 5a 69 sGAQUFBwICMIGGGoGDQW55IHVzZSBvZi
14d6e0 42 30 61 47 6c 7a 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 0a 59 58 52 6c 49 47 4e 76 62 6e 4e 30 61 B0aGlzIENlcnRpZmlj.YXRlIGNvbnN0a
14d700 58 52 31 64 47 56 7a 49 47 46 6a 59 32 56 77 64 47 46 75 59 32 55 67 62 32 59 67 64 47 68 6c 49 XR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlI
14d720 46 46 31 62 31 5a 68 5a 47 6c 7a 49 46 4a 76 62 33 51 67 51 30 45 67 4d 79 42 44 5a 58 4a 30 0a FF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0.
14d740 61 57 5a 70 59 32 46 30 5a 53 42 51 62 32 78 70 59 33 6b 67 4c 79 42 44 5a 58 4a 30 61 57 5a 70 aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZp
14d760 59 32 46 30 61 57 39 75 49 46 42 79 59 57 4e 30 61 57 4e 6c 49 46 4e 30 59 58 52 6c 62 57 56 75 Y2F0aW9uIFByYWN0aWNlIFN0YXRlbWVu
14d780 64 43 34 77 4c 51 59 49 4b 77 59 42 0a 42 51 55 48 41 67 45 57 49 57 68 30 64 48 41 36 4c 79 39 dC4wLQYIKwYB.BQUHAgEWIWh0dHA6Ly9
14d7a0 33 64 33 63 75 63 58 56 76 64 6d 46 6b 61 58 4e 6e 62 47 39 69 59 57 77 75 59 32 39 74 4c 32 4e 3d3cucXVvdmFkaXNnbG9iYWwuY29tL2N
14d7c0 77 63 7a 41 4c 42 67 4e 56 48 51 38 45 42 41 4d 43 41 51 59 77 48 51 59 44 0a 56 52 30 4f 42 42 wczALBgNVHQ8EBAMCAQYwHQYD.VR0OBB
14d7e0 59 45 46 50 4c 41 45 2b 43 43 51 7a 37 37 37 69 39 6e 4d 70 59 31 58 4e 75 34 79 77 4c 51 4d 47 YEFPLAE+CCQz777i9nMpY1XNu4ywLQMG
14d800 34 47 41 31 55 64 49 77 52 6e 4d 47 57 41 46 50 4c 41 45 2b 43 43 51 7a 37 37 37 69 39 6e 4d 70 4GA1UdIwRnMGWAFPLAE+CCQz777i9nMp
14d820 59 31 58 4e 75 34 0a 79 77 4c 51 6f 55 6d 6b 52 7a 42 46 4d 51 73 77 43 51 59 44 56 51 51 47 45 Y1XNu4.ywLQoUmkRzBFMQswCQYDVQQGE
14d840 77 4a 43 54 54 45 5a 4d 42 63 47 41 31 55 45 43 68 4d 51 55 58 56 76 56 6d 46 6b 61 58 4d 67 54 wJCTTEZMBcGA1UEChMQUXVvVmFkaXMgT
14d860 47 6c 74 61 58 52 6c 5a 44 45 62 4d 42 6b 47 41 31 55 45 0a 41 78 4d 53 55 58 56 76 56 6d 46 6b GltaXRlZDEbMBkGA1UE.AxMSUXVvVmFk
14d880 61 58 4d 67 55 6d 39 76 64 43 42 44 51 53 41 7a 67 67 49 46 78 6a 41 4e 42 67 6b 71 68 6b 69 47 aXMgUm9vdCBDQSAzggIFxjANBgkqhkiG
14d8a0 39 77 30 42 41 51 55 46 41 41 4f 43 41 67 45 41 54 36 32 67 4c 45 7a 36 77 50 4a 76 39 32 5a 56 9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZV
14d8c0 0a 71 79 4d 30 37 75 63 70 32 73 4e 62 74 72 43 44 32 64 44 51 34 69 48 37 38 32 43 6e 4f 31 31 .qyM07ucp2sNbtrCD2dDQ4iH782CnO11
14d8e0 67 55 79 65 69 6d 2f 59 49 49 69 72 6e 76 36 42 79 35 5a 77 6b 61 6a 47 78 6b 48 6f 6e 32 34 51 gUyeim/YIIirnv6By5ZwkajGxkHon24Q
14d900 52 69 53 65 6d 64 31 6f 34 31 37 2b 73 0a 68 76 7a 75 58 59 4f 38 42 73 62 52 64 32 73 50 62 53 RiSemd1o417+s.hvzuXYO8BsbRd2sPbS
14d920 51 76 53 33 70 73 70 77 65 57 79 75 4f 45 6e 36 32 49 69 78 32 72 46 6f 31 62 5a 68 66 5a 46 76 QvS3pspweWyuOEn62Iix2rFo1bZhfZFv
14d940 53 4c 67 4e 4c 64 2b 4c 4a 32 77 2f 77 34 45 36 6f 4d 33 6b 4a 70 4b 32 37 7a 0a 50 4f 75 41 4a SLgNLd+LJ2w/w4E6oM3kJpK27z.POuAJ
14d960 39 76 31 70 6b 51 4e 6e 31 70 56 57 51 76 56 44 56 4a 49 78 61 36 66 38 69 2b 41 78 65 6f 79 55 9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyU
14d980 44 55 53 6c 79 37 42 34 66 2f 78 49 34 68 52 4f 4a 2f 79 5a 6c 5a 32 35 77 39 52 6c 36 56 53 44 DUSly7B4f/xI4hROJ/yZlZ25w9Rl6VSD
14d9a0 45 31 4a 55 5a 55 32 0a 50 62 2b 69 53 77 77 51 48 59 61 5a 54 4b 72 7a 63 68 47 54 35 4f 72 32 E1JUZU2.Pb+iSwwQHYaZTKrzchGT5Or2
14d9c0 6d 39 71 6f 58 61 64 4e 74 35 34 43 72 6e 4d 41 79 4e 6f 6a 41 2b 6a 35 36 68 6c 30 59 67 43 55 m9qoXadNt54CrnMAyNojA+j56hl0YgCU
14d9e0 79 79 49 67 76 70 53 6e 57 62 57 43 61 72 36 5a 65 58 71 70 0a 38 6b 6f 6b 55 76 64 30 2f 62 70 yyIgvpSnWbWCar6ZeXqp.8kokUvd0/bp
14da00 4f 35 71 67 64 41 6d 36 78 44 59 42 45 77 61 37 54 49 7a 64 66 75 34 56 38 4b 35 49 75 36 48 36 O5qgdAm6xDYBEwa7TIzdfu4V8K5Iu6H6
14da20 6c 69 39 32 5a 34 62 38 6e 62 79 31 64 71 6e 75 48 2f 67 72 64 53 2f 79 4f 39 53 62 6b 62 6e 42 li92Z4b8nby1dqnuH/grdS/yO9SbkbnB
14da40 43 0a 62 6a 50 73 4d 5a 35 37 6b 38 48 6b 79 57 6b 61 50 63 42 72 54 69 4a 74 37 71 74 59 54 63 C.bjPsMZ57k8HkyWkaPcBrTiJt7qtYTc
14da60 62 51 51 63 45 72 36 6b 38 53 68 31 37 72 52 64 68 73 39 5a 67 43 30 36 44 59 56 59 6f 47 6d 52 bQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmR
14da80 6d 69 6f 48 66 52 4d 4a 36 73 7a 48 58 75 0a 67 2f 57 77 59 6a 6e 50 62 46 66 69 54 4e 4b 52 43 mioHfRMJ6szHXu.g/WwYjnPbFfiTNKRC
14daa0 77 35 31 4b 42 75 61 76 2f 30 61 51 2f 48 4b 64 2f 73 37 6a 32 47 34 61 53 67 57 51 67 52 65 63 w51KBuav/0aQ/HKd/s7j2G4aSgWQgRec
14dac0 43 6f 63 49 64 69 50 34 62 30 6a 57 79 31 30 51 4a 4c 5a 59 78 6b 4e 63 39 31 70 0a 76 47 4a 48 CocIdiP4b0jWy10QJLZYxkNc91p.vGJH
14dae0 76 4f 42 30 4b 37 4c 72 66 62 35 42 47 37 58 41 52 73 57 68 49 73 74 66 54 73 45 6f 6b 74 34 59 vOB0K7Lrfb5BG7XARsWhIstfTsEokt4Y
14db00 75 74 55 71 4b 4c 73 52 69 78 65 54 6d 4a 6c 67 6c 46 77 6a 7a 31 6f 6e 6c 31 34 4c 42 51 61 54 utUqKLsRixeTmJlglFwjz1onl14LBQaT
14db20 4e 78 34 37 61 54 62 72 0a 71 5a 35 68 48 59 38 79 32 6f 34 4d 31 6e 51 2b 65 77 6b 6b 32 67 46 Nx47aTbr.qZ5hHY8y2o4M1nQ+ewkk2gF
14db40 33 52 38 51 37 7a 54 53 4d 6d 66 58 4b 34 53 56 68 4d 37 4a 5a 47 2b 4a 75 31 7a 64 58 74 67 32 3R8Q7zTSMmfXK4SVhM7JZG+Ju1zdXtg2
14db60 70 45 74 6f 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a pEto=.-----END.CERTIFICATE-----.
14db80 0a 53 65 63 75 72 69 74 79 20 43 6f 6d 6d 75 6e 69 63 61 74 69 6f 6e 20 52 6f 6f 74 20 43 41 0a .Security.Communication.Root.CA.
14dba0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d ==============================.-
14dbc0 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 57 ----BEGIN.CERTIFICATE-----.MIIDW
14dbe0 6a 43 43 41 6b 4b 67 41 77 49 42 41 67 49 42 41 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 jCCAkKgAwIBAgIBADANBgkqhkiG9w0BA
14dc00 51 55 46 41 44 42 51 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4b 55 44 45 59 4d 42 59 47 41 QUFADBQMQswCQYDVQQGEwJKUDEYMBYGA
14dc20 31 55 45 43 68 4d 50 0a 55 30 56 44 54 30 30 67 56 48 4a 31 63 33 51 75 62 6d 56 30 4d 53 63 77 1UEChMP.U0VDT00gVHJ1c3QubmV0MScw
14dc40 4a 51 59 44 56 51 51 4c 45 78 35 54 5a 57 4e 31 63 6d 6c 30 65 53 42 44 62 32 31 74 64 57 35 70 JQYDVQQLEx5TZWN1cml0eSBDb21tdW5p
14dc60 59 32 46 30 61 57 39 75 49 46 4a 76 62 33 52 44 51 54 45 77 0a 48 68 63 4e 4d 44 4d 77 4f 54 4d Y2F0aW9uIFJvb3RDQTEw.HhcNMDMwOTM
14dc80 77 4d 44 51 79 4d 44 51 35 57 68 63 4e 4d 6a 4d 77 4f 54 4d 77 4d 44 51 79 4d 44 51 35 57 6a 42 wMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5WjB
14dca0 51 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4b 55 44 45 59 4d 42 59 47 41 31 55 45 43 68 4d QMQswCQYDVQQGEwJKUDEYMBYGA1UEChM
14dcc0 50 0a 55 30 56 44 54 30 30 67 56 48 4a 31 63 33 51 75 62 6d 56 30 4d 53 63 77 4a 51 59 44 56 51 P.U0VDT00gVHJ1c3QubmV0MScwJQYDVQ
14dce0 51 4c 45 78 35 54 5a 57 4e 31 63 6d 6c 30 65 53 42 44 62 32 31 74 64 57 35 70 59 32 46 30 61 57 QLEx5TZWN1cml0eSBDb21tdW5pY2F0aW
14dd00 39 75 49 46 4a 76 62 33 52 44 51 54 45 77 0a 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 9uIFJvb3RDQTEw.ggEiMA0GCSqGSIb3D
14dd20 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 7a 73 2f 35 2f 30 QEBAQUAA4IBDwAwggEKAoIBAQCzs/5/0
14dd40 32 32 78 37 78 5a 38 56 36 55 4d 62 58 61 4b 4c 30 75 2f 5a 50 74 4d 37 6f 72 77 0a 38 79 6c 38 22x7xZ8V6UMbXaKL0u/ZPtM7orw.8yl8
14dd60 39 66 2f 75 4b 75 44 70 36 62 70 62 5a 43 4b 61 6d 6d 38 73 4f 69 5a 70 55 51 57 5a 4a 74 7a 56 9f/uKuDp6bpbZCKamm8sOiZpUQWZJtzV
14dd80 48 47 70 78 78 70 70 39 48 70 33 64 66 47 7a 47 6a 47 64 6e 53 6a 37 34 63 62 41 5a 4a 36 6b 4a HGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJ
14dda0 44 4b 61 56 76 30 75 4d 0a 44 50 70 56 6d 44 76 59 36 43 4b 68 53 33 45 34 65 61 79 58 6b 6d 6d DKaVv0uM.DPpVmDvY6CKhS3E4eayXkmm
14ddc0 7a 69 58 37 71 49 57 67 47 6d 42 53 57 68 39 4a 68 4e 72 78 74 4a 31 61 65 56 2b 37 41 77 46 62 ziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb
14dde0 39 4d 73 2b 6b 32 59 37 43 49 39 65 4e 71 50 50 59 4a 61 79 58 0a 35 48 41 34 39 4c 59 36 74 4a 9Ms+k2Y7CI9eNqPPYJayX.5HA49LY6tJ
14de00 30 37 6c 79 5a 44 6f 36 47 38 53 56 6c 79 54 43 4d 77 68 77 46 59 39 6b 36 2b 48 47 68 57 5a 71 07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq
14de20 2f 4e 51 56 33 49 73 30 30 71 56 55 61 72 48 39 6f 65 34 6b 41 39 32 38 31 39 75 5a 4b 41 6e 44 /NQV3Is00qVUarH9oe4kA92819uZKAnD
14de40 66 64 0a 44 4a 5a 6b 6e 64 77 69 39 32 53 4c 33 32 48 65 46 5a 52 53 46 61 42 39 55 73 6c 4c 71 fd.DJZkndwi92SL32HeFZRSFaB9UslLq
14de60 43 48 4a 78 72 48 74 79 38 4f 56 59 4e 45 50 38 4b 74 77 2b 4e 2f 4c 54 58 37 73 31 76 71 72 32 CHJxrHty8OVYNEP8Ktw+N/LTX7s1vqr2
14de80 62 31 2f 56 50 4b 6c 36 58 6e 36 32 64 5a 32 0a 4a 43 68 7a 41 67 4d 42 41 41 47 6a 50 7a 41 39 b1/VPKl6Xn62dZ2.JChzAgMBAAGjPzA9
14dea0 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 53 67 63 30 6d 5a 61 4e 79 46 57 32 58 6a 6d 79 67 76 MB0GA1UdDgQWBBSgc0mZaNyFW2Xjmygv
14dec0 56 35 2b 39 4d 37 77 48 53 44 41 4c 42 67 4e 56 48 51 38 45 42 41 4d 43 41 51 59 77 0a 44 77 59 V5+9M7wHSDALBgNVHQ8EBAMCAQYw.DwY
14dee0 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 DVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0
14df00 42 41 51 55 46 41 41 4f 43 41 51 45 41 61 45 43 70 71 4c 76 6b 54 31 31 35 73 77 57 31 46 37 4e BAQUFAAOCAQEAaECpqLvkT115swW1F7N
14df20 67 45 2b 76 47 6b 6c 33 67 0a 30 64 4e 71 2f 76 75 2b 6d 32 32 2f 78 77 56 74 57 53 44 45 48 50 gE+vGkl3g.0dNq/vu+m22/xwVtWSDEHP
14df40 43 33 32 6f 52 59 41 6d 50 36 53 42 62 76 54 36 55 4c 39 30 71 59 38 6a 2b 65 47 36 31 48 61 32 C32oRYAmP6SBbvT6UL90qY8j+eG61Ha2
14df60 50 4f 43 45 66 72 55 6a 39 34 6e 4b 39 4e 72 76 6a 56 54 38 2b 61 0a 6d 43 6f 51 51 54 6c 53 78 POCEfrUj94nK9NrvjVT8+a.mCoQQTlSx
14df80 4e 33 5a 6d 77 37 76 6b 77 47 75 73 69 37 4b 61 45 49 6b 51 6d 79 77 73 7a 6f 2b 7a 65 6e 61 53 N3Zmw7vkwGusi7KaEIkQmywszo+zenaS
14dfa0 4d 51 56 79 2b 6e 35 42 77 2b 53 55 45 6d 4b 33 54 47 58 58 38 6e 70 4e 36 6f 37 57 57 57 58 6c MQVy+n5Bw+SUEmK3TGXX8npN6o7WWWXl
14dfc0 44 4c 4a 0a 73 35 38 2b 4f 6d 4a 59 78 55 6d 74 59 67 35 78 70 54 4b 71 4c 38 61 4a 64 6b 4e 41 DLJ.s58+OmJYxUmtYg5xpTKqL8aJdkNA
14dfe0 45 78 4e 6e 50 61 4a 55 4a 52 44 4c 38 54 72 79 32 66 72 62 53 56 61 37 70 76 36 6e 51 54 58 44 ExNnPaJUJRDL8Try2frbSVa7pv6nQTXD
14e000 34 49 68 68 79 59 6a 48 33 7a 59 51 49 70 68 5a 0a 36 72 42 4b 2b 31 59 57 63 32 36 73 54 66 63 4IhhyYjH3zYQIphZ.6rBK+1YWc26sTfc
14e020 69 6f 55 2b 74 48 58 6f 74 52 53 66 6c 4d 4d 46 65 38 74 6f 54 79 79 56 43 55 5a 56 48 41 34 78 ioU+tHXotRSflMMFe8toTyyVCUZVHA4x
14e040 73 49 63 78 30 51 75 31 54 2f 7a 4f 4c 6a 77 39 58 41 52 59 76 7a 36 62 75 79 58 41 69 0a 46 4c sIcx0Qu1T/zOLjw9XARYvz6buyXAi.FL
14e060 33 39 76 6d 77 4c 41 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 39vmwLAw==.-----END.CERTIFICATE-
14e080 2d 2d 2d 2d 0a 0a 53 6f 6e 65 72 61 20 43 6c 61 73 73 20 32 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d ----..Sonera.Class.2.Root.CA.===
14e0a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 ===================.-----BEGIN.C
14e0c0 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 49 44 43 43 41 67 69 67 41 77 49 42 ERTIFICATE-----.MIIDIDCCAgigAwIB
14e0e0 41 67 49 42 48 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 41 35 4d 51 73 77 AgIBHTANBgkqhkiG9w0BAQUFADA5MQsw
14e100 43 51 59 44 56 51 51 47 45 77 4a 47 53 54 45 50 4d 41 30 47 41 31 55 45 43 68 4d 47 0a 55 32 39 CQYDVQQGEwJGSTEPMA0GA1UEChMG.U29
14e120 75 5a 58 4a 68 4d 52 6b 77 46 77 59 44 56 51 51 44 45 78 42 54 62 32 35 6c 63 6d 45 67 51 32 78 uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2x
14e140 68 63 33 4d 79 49 45 4e 42 4d 42 34 58 44 54 41 78 4d 44 51 77 4e 6a 41 33 4d 6a 6b 30 4d 46 6f hc3MyIENBMB4XDTAxMDQwNjA3Mjk0MFo
14e160 58 44 54 49 78 4d 44 51 77 0a 4e 6a 41 33 4d 6a 6b 30 4d 46 6f 77 4f 54 45 4c 4d 41 6b 47 41 31 XDTIxMDQw.NjA3Mjk0MFowOTELMAkGA1
14e180 55 45 42 68 4d 43 52 6b 6b 78 44 7a 41 4e 42 67 4e 56 42 41 6f 54 42 6c 4e 76 62 6d 56 79 59 54 UEBhMCRkkxDzANBgNVBAoTBlNvbmVyYT
14e1a0 45 5a 4d 42 63 47 41 31 55 45 41 78 4d 51 55 32 39 75 5a 58 4a 68 0a 49 45 4e 73 59 58 4e 7a 4d EZMBcGA1UEAxMQU29uZXJh.IENsYXNzM
14e1c0 69 42 44 51 54 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 iBDQTCCASIwDQYJKoZIhvcNAQEBBQADg
14e1e0 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4a 41 58 53 6a 57 64 79 76 41 4e 6c 73 64 45 2b gEPADCCAQoCggEBAJAXSjWdyvANlsdE+
14e200 68 59 33 0a 2f 45 69 39 76 58 2b 41 4c 54 55 37 34 57 2b 6f 5a 36 6d 2f 41 78 78 4e 6a 47 38 79 hY3./Ei9vX+ALTU74W+oZ6m/AxxNjG8y
14e220 52 39 56 42 61 4b 51 54 42 4d 45 31 44 4a 71 45 51 2f 78 63 48 66 2b 4a 73 2b 67 58 47 4d 32 52 R9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2R
14e240 58 2f 75 4a 34 2b 71 2f 54 6c 31 38 47 79 62 54 0a 64 58 6e 74 35 6f 54 6a 56 2b 57 74 4b 63 54 X/uJ4+q/Tl18GybT.dXnt5oTjV+WtKcT
14e260 30 4f 69 6a 6e 70 58 75 45 4e 6d 6d 7a 2f 56 35 32 76 61 4d 74 6d 64 4f 51 54 69 4d 6f 66 52 68 0OijnpXuENmmz/V52vaMtmdOQTiMofRh
14e280 6a 38 56 51 37 4a 70 31 32 57 35 64 43 73 76 2b 75 38 45 37 73 33 54 6d 56 54 6f 4d 47 0a 66 2b j8VQ7Jp12W5dCsv+u8E7s3TmVToMG.f+
14e2a0 64 4a 51 4d 6a 46 41 62 4a 55 57 6d 59 64 50 66 7a 35 36 54 77 4b 6e 6f 47 34 63 50 41 42 69 2b dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+
14e2c0 51 6a 56 48 7a 49 72 76 69 51 48 67 43 57 63 74 52 55 7a 32 45 6a 76 4f 72 37 6e 51 4b 56 30 62 QjVHzIrviQHgCWctRUz2EjvOr7nQKV0b
14e2e0 61 35 63 54 70 70 43 44 38 50 0a 74 4f 46 43 78 34 6a 31 50 35 69 6f 70 37 6f 63 34 48 46 78 37 a5cTppCD8P.tOFCx4j1P5iop7oc4HFx7
14e300 31 68 58 67 56 42 36 58 47 74 30 52 67 36 44 41 35 6a 44 6a 71 68 75 38 6e 59 79 62 69 65 44 77 1hXgVB6XGt0Rg6DA5jDjqhu8nYybieDw
14e320 6e 50 7a 33 42 6a 6f 74 4a 50 71 64 55 52 72 42 47 41 67 63 56 65 48 0a 6e 66 4f 2b 6f 4a 41 6a nPz3BjotJPqdURrBGAgcVeH.nfO+oJAj
14e340 50 59 6f 6b 34 64 6f 68 32 38 4d 43 41 77 45 41 41 61 4d 7a 4d 44 45 77 44 77 59 44 56 52 30 54 PYok4doh28MCAwEAAaMzMDEwDwYDVR0T
14e360 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 52 42 67 4e 56 48 51 34 45 43 67 51 49 53 71 43 71 AQH/BAUwAwEB/zARBgNVHQ4ECgQISqCq
14e380 57 49 54 54 0a 58 6a 77 77 43 77 59 44 56 52 30 50 42 41 51 44 41 67 45 47 4d 41 30 47 43 53 71 WITT.XjwwCwYDVR0PBAQDAgEGMA0GCSq
14e3a0 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 42 41 51 42 61 7a 6f 66 35 46 6e 49 56 56 30 73 GSIb3DQEBBQUAA4IBAQBazof5FnIVV0s
14e3c0 64 32 5a 76 6e 6f 69 59 77 37 4a 4e 6e 33 39 59 74 0a 30 6a 53 76 39 7a 69 6c 7a 71 73 57 75 61 d2ZvnoiYw7JNn39Yt.0jSv9zilzqsWua
14e3e0 73 76 66 44 58 4c 72 4e 41 50 74 45 77 72 2f 49 44 76 61 34 79 52 58 7a 5a 32 39 39 75 7a 47 78 svfDXLrNAPtEwr/IDva4yRXzZ299uzGx
14e400 6e 71 39 4c 49 52 2f 57 46 78 52 4c 38 6f 73 7a 6f 64 76 37 4e 44 36 4a 2b 2f 33 44 45 49 0a 63 nq9LIR/WFxRL8oszodv7ND6J+/3DEI.c
14e420 62 43 64 6a 64 59 30 52 7a 4b 51 78 6d 55 6b 39 36 42 4b 66 41 52 7a 6a 7a 6c 76 46 34 78 79 74 bCdjdY0RzKQxmUk96BKfARzjzlvF4xyt
14e440 62 31 4c 79 48 72 34 65 34 50 44 4b 45 36 63 43 65 70 6e 50 37 4a 6e 42 42 76 44 46 4e 72 34 35 b1LyHr4e4PDKE6cCepnP7JnBBvDFNr45
14e460 30 6b 6b 6b 64 41 64 61 76 70 68 0a 4f 65 39 72 35 79 46 31 42 67 66 59 45 72 51 68 49 48 42 43 0kkkdAdavph.Oe9r5yF1BgfYErQhIHBC
14e480 63 59 48 61 50 4a 6f 32 76 71 5a 62 44 57 70 73 6d 68 2b 52 65 2f 6e 35 37 30 4b 36 54 6b 36 65 cYHaPJo2vqZbDWpsmh+Re/n570K6Tk6e
14e4a0 7a 41 79 4e 6c 4e 7a 5a 52 5a 78 65 37 45 4a 51 59 36 37 30 58 63 53 78 0a 45 74 7a 4b 4f 36 67 zAyNlNzZRZxe7EJQY670XcSx.EtzKO6g
14e4c0 75 6e 52 52 61 42 58 57 33 37 4e 64 6a 34 72 6f 31 74 67 51 49 6b 65 6a 61 6e 5a 7a 32 5a 72 55 unRRaBXW37Ndj4ro1tgQIkejanZz2ZrU
14e4e0 59 72 41 71 6d 56 43 59 30 4d 39 49 62 77 64 52 2f 47 6a 71 4f 43 36 6f 79 62 74 76 38 54 79 57 YrAqmVCY0M9IbwdR/GjqOC6oybtv8TyW
14e500 66 32 54 4c 48 0a 6c 6c 70 77 72 4e 39 4d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 f2TLH.llpwrN9M.-----END.CERTIFIC
14e520 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 74 61 61 74 20 64 65 72 20 4e 65 64 65 72 6c 61 6e 64 65 6e 20 ATE-----..Staat.der.Nederlanden.
14e540 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d Root.CA.========================
14e560 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d =====.-----BEGIN.CERTIFICATE----
14e580 2d 0a 4d 49 49 44 75 6a 43 43 41 71 4b 67 41 77 49 42 41 67 49 45 41 4a 69 57 69 6a 41 4e 42 67 -.MIIDujCCAqKgAwIBAgIEAJiWijANBg
14e5a0 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 56 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 kqhkiG9w0BAQUFADBVMQswCQYDVQQGEw
14e5c0 4a 4f 54 44 45 65 4d 42 77 47 41 31 55 45 0a 43 68 4d 56 55 33 52 68 59 58 51 67 5a 47 56 79 49 JOTDEeMBwGA1UE.ChMVU3RhYXQgZGVyI
14e5e0 45 35 6c 5a 47 56 79 62 47 46 75 5a 47 56 75 4d 53 59 77 4a 41 59 44 56 51 51 44 45 78 31 54 64 E5lZGVybGFuZGVuMSYwJAYDVQQDEx1Td
14e600 47 46 68 64 43 42 6b 5a 58 49 67 54 6d 56 6b 5a 58 4a 73 59 57 35 6b 5a 57 34 67 0a 55 6d 39 76 GFhdCBkZXIgTmVkZXJsYW5kZW4g.Um9v
14e620 64 43 42 44 51 54 41 65 46 77 30 77 4d 6a 45 79 4d 54 63 77 4f 54 49 7a 4e 44 6c 61 46 77 30 78 dCBDQTAeFw0wMjEyMTcwOTIzNDlaFw0x
14e640 4e 54 45 79 4d 54 59 77 4f 54 45 31 4d 7a 68 61 4d 46 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 NTEyMTYwOTE1MzhaMFUxCzAJBgNVBAYT
14e660 41 6b 35 4d 4d 52 34 77 0a 48 41 59 44 56 51 51 4b 45 78 56 54 64 47 46 68 64 43 42 6b 5a 58 49 Ak5MMR4w.HAYDVQQKExVTdGFhdCBkZXI
14e680 67 54 6d 56 6b 5a 58 4a 73 59 57 35 6b 5a 57 34 78 4a 6a 41 6b 42 67 4e 56 42 41 4d 54 48 56 4e gTmVkZXJsYW5kZW4xJjAkBgNVBAMTHVN
14e6a0 30 59 57 46 30 49 47 52 6c 63 69 42 4f 5a 57 52 6c 63 6d 78 68 0a 62 6d 52 6c 62 69 42 53 62 32 0YWF0IGRlciBOZWRlcmxh.bmRlbiBSb2
14e6c0 39 30 49 45 4e 42 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 90IENBMIIBIjANBgkqhkiG9w0BAQEFAA
14e6e0 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 6d 4e 4b 31 55 52 46 36 67 61 59 55 6d 48 OCAQ8AMIIBCgKCAQEAmNK1URF6gaYUmH
14e700 46 74 0a 76 73 7a 6e 45 78 76 57 4a 77 35 36 73 32 6f 59 48 4c 5a 68 57 74 56 68 43 62 2f 65 6b Ft.vsznExvWJw56s2oYHLZhWtVhCb/ek
14e720 42 50 48 5a 2b 37 64 38 39 72 46 44 42 4b 65 4e 56 55 2b 4c 43 65 49 51 47 76 33 33 4e 30 69 59 BPHZ+7d89rFDBKeNVU+LCeIQGv33N0iY
14e740 66 58 43 78 77 37 31 39 74 56 32 55 30 32 50 0a 6a 4c 77 59 64 6a 65 46 6e 65 6a 4b 53 63 66 53 fXCxw719tV2U02P.jLwYdjeFnejKScfS
14e760 54 35 67 54 43 61 49 2b 49 6f 69 63 66 39 62 79 45 47 57 30 37 6c 38 59 31 52 66 6a 2b 4d 58 39 T5gTCaI+Ioicf9byEGW07l8Y1Rfj+MX9
14e780 34 70 32 69 37 31 4d 4f 68 58 65 69 44 2b 45 77 52 2b 34 41 35 7a 4e 39 52 47 63 61 0a 43 31 48 4p2i71MOhXeiD+EwR+4A5zN9RGca.C1H
14e7a0 6f 69 36 43 65 55 4a 68 6f 4e 46 49 66 4c 6d 30 42 38 6d 42 46 38 6a 48 72 71 54 46 6f 4b 62 74 oi6CeUJhoNFIfLm0B8mBF8jHrqTFoKbt
14e7c0 36 51 5a 37 47 47 58 2b 55 74 46 45 35 41 33 2b 79 33 71 63 79 6d 37 52 48 6a 6d 2b 30 53 71 37 6QZ7GGX+UtFE5A3+y3qcym7RHjm+0Sq7
14e7e0 6c 72 37 48 63 73 42 74 68 0a 76 4a 6c 79 33 75 53 4a 74 33 6f 6d 58 64 6f 7a 53 56 74 53 6e 41 lr7HcsBth.vJly3uSJt3omXdozSVtSnA
14e800 37 31 69 71 33 44 75 44 33 6f 42 6d 72 43 31 53 6f 4c 62 48 75 45 76 56 59 46 79 34 5a 6c 6b 75 71iq3DuD3oBmrC1SoLbHuEvVYFy4Zlku
14e820 78 45 4b 37 43 4f 75 64 78 77 43 30 62 61 72 62 78 6a 69 44 6e 36 0a 32 32 72 2b 49 2f 71 38 35 xEK7COudxwC0barbxjiDn6.22r+I/q85
14e840 45 6a 30 5a 79 74 71 45 52 41 68 53 51 49 44 41 51 41 42 6f 34 47 52 4d 49 47 4f 4d 41 77 47 41 Ej0ZytqERAhSQIDAQABo4GRMIGOMAwGA
14e860 31 55 64 45 77 51 46 4d 41 4d 42 41 66 38 77 54 77 59 44 56 52 30 67 42 45 67 77 52 6a 42 45 42 1UdEwQFMAMBAf8wTwYDVR0gBEgwRjBEB
14e880 67 52 56 0a 48 53 41 41 4d 44 77 77 4f 67 59 49 4b 77 59 42 42 51 55 48 41 67 45 57 4c 6d 68 30 gRV.HSAAMDwwOgYIKwYBBQUHAgEWLmh0
14e8a0 64 48 41 36 4c 79 39 33 64 33 63 75 63 47 74 70 62 33 5a 6c 63 6d 68 6c 61 57 51 75 62 6d 77 76 dHA6Ly93d3cucGtpb3ZlcmhlaWQubmwv
14e8c0 63 47 39 73 61 57 4e 70 5a 58 4d 76 63 6d 39 76 0a 64 43 31 77 62 32 78 70 59 33 6b 77 44 67 59 cG9saWNpZXMvcm9v.dC1wb2xpY3kwDgY
14e8e0 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 53 DVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS
14e900 6f 66 65 75 38 59 36 52 30 45 33 51 41 37 4a 62 67 30 7a 54 42 4c 4c 39 73 2b 44 41 4e 0a 42 67 ofeu8Y6R0E3QA7Jbg0zTBLL9s+DAN.Bg
14e920 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 42 59 53 48 56 58 51 32 59 63 kqhkiG9w0BAQUFAAOCAQEABYSHVXQ2Yc
14e940 47 37 30 64 54 47 46 61 67 54 74 4a 2b 6b 2f 72 76 75 46 62 51 76 42 67 77 70 38 71 69 53 70 47 G70dTGFagTtJ+k/rvuFbQvBgwp8qiSpG
14e960 45 4e 2f 4b 74 63 43 46 74 52 0a 45 79 74 4e 77 69 70 68 79 50 67 4a 57 50 77 74 41 72 49 35 66 EN/KtcCFtR.EytNwiphyPgJWPwtArI5f
14e980 5a 6c 6d 67 62 39 75 58 4a 56 46 49 47 7a 6d 65 61 66 52 32 42 77 70 2f 4d 49 67 4a 31 48 49 38 Zlmgb9uXJVFIGzmeafR2Bwp/MIgJ1HI8
14e9a0 58 78 64 4e 47 64 70 68 52 45 77 78 67 44 53 31 2f 50 54 66 4c 62 77 0a 4d 56 63 6f 45 6f 4a 7a XxdNGdphREwxgDS1/PTfLbw.MVcoEoJz
14e9c0 36 54 4d 76 70 6c 57 30 43 35 47 55 52 35 7a 36 75 33 70 43 4d 75 69 75 66 69 33 49 76 4b 77 55 6TMvplW0C5GUR5z6u3pCMuiufi3IvKwU
14e9e0 76 39 6b 50 32 56 76 38 77 66 6c 36 6c 65 46 39 66 70 62 38 63 62 44 43 54 4d 6a 66 52 54 54 4a v9kP2Vv8wfl6leF9fpb8cbDCTMjfRTTJ
14ea00 7a 67 33 79 0a 6e 47 51 49 30 44 76 44 4b 63 57 79 37 5a 41 45 77 62 45 70 6b 63 55 77 62 38 47 zg3y.nGQI0DvDKcWy7ZAEwbEpkcUwb8G
14ea20 70 63 6a 50 4d 2f 6c 30 57 46 79 77 52 61 65 64 2b 2f 73 57 44 43 4e 2b 38 33 43 49 36 4c 69 42 pcjPM/l0WFywRaed+/sWDCN+83CI6LiB
14ea40 70 49 7a 6c 57 59 47 65 51 69 79 35 32 4f 66 73 52 0a 69 4a 66 32 66 4c 31 4c 75 43 41 57 5a 77 pIzlWYGeQiy52OfsR.iJf2fL1LuCAWZw
14ea60 57 4e 34 6a 76 42 63 6a 2b 55 6c 54 66 48 58 62 6d 65 32 4a 4f 68 46 34 2f 2f 44 47 59 56 77 53 WN4jvBcj+UlTfHXbme2JOhF4//DGYVwS
14ea80 52 38 4d 6e 77 44 48 54 75 68 57 45 55 79 6b 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 R8MnwDHTuhWEUykw==.-----END.CERT
14eaa0 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 55 54 4e 20 44 41 54 41 43 6f 72 70 20 53 47 43 20 52 IFICATE-----..UTN.DATACorp.SGC.R
14eac0 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a oot.CA.========================.
14eae0 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 -----BEGIN.CERTIFICATE-----.MIIE
14eb00 58 6a 43 43 41 30 61 67 41 77 49 42 41 67 49 51 52 4c 34 4d 69 31 41 41 49 62 51 52 30 79 70 6f XjCCA0agAwIBAgIQRL4Mi1AAIbQR0ypo
14eb20 42 71 6d 74 61 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 6b 7a 45 4c BqmtaTANBgkqhkiG9w0BAQUFADCBkzEL
14eb40 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 56 56 4d 78 43 7a 41 4a 42 67 4e 56 42 41 67 54 41 6c 56 MAkGA1UE.BhMCVVMxCzAJBgNVBAgTAlV
14eb60 55 4d 52 63 77 46 51 59 44 56 51 51 48 45 77 35 54 59 57 78 30 49 45 78 68 61 32 55 67 51 32 6c UMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l
14eb80 30 65 54 45 65 4d 42 77 47 41 31 55 45 43 68 4d 56 56 47 68 6c 0a 49 46 56 54 52 56 4a 55 55 6c 0eTEeMBwGA1UEChMVVGhl.IFVTRVJUUl
14eba0 56 54 56 43 42 4f 5a 58 52 33 62 33 4a 72 4d 53 45 77 48 77 59 44 56 51 51 4c 45 78 68 6f 64 48 VTVCBOZXR3b3JrMSEwHwYDVQQLExhodH
14ebc0 52 77 4f 69 38 76 64 33 64 33 4c 6e 56 7a 5a 58 4a 30 63 6e 56 7a 64 43 35 6a 62 32 30 78 47 7a RwOi8vd3d3LnVzZXJ0cnVzdC5jb20xGz
14ebe0 41 5a 0a 42 67 4e 56 42 41 4d 54 45 6c 56 55 54 69 41 74 49 45 52 42 56 45 46 44 62 33 4a 77 49 AZ.BgNVBAMTElVUTiAtIERBVEFDb3JwI
14ec00 46 4e 48 51 7a 41 65 46 77 30 35 4f 54 41 32 4d 6a 51 78 4f 44 55 33 4d 6a 46 61 46 77 30 78 4f FNHQzAeFw05OTA2MjQxODU3MjFaFw0xO
14ec20 54 41 32 4d 6a 51 78 4f 54 41 32 4d 7a 42 61 0a 4d 49 47 54 4d 51 73 77 43 51 59 44 56 51 51 47 TA2MjQxOTA2MzBa.MIGTMQswCQYDVQQG
14ec40 45 77 4a 56 55 7a 45 4c 4d 41 6b 47 41 31 55 45 43 42 4d 43 56 56 51 78 46 7a 41 56 42 67 4e 56 EwJVUzELMAkGA1UECBMCVVQxFzAVBgNV
14ec60 42 41 63 54 44 6c 4e 68 62 48 51 67 54 47 46 72 5a 53 42 44 61 58 52 35 4d 52 34 77 0a 48 41 59 BAcTDlNhbHQgTGFrZSBDaXR5MR4w.HAY
14ec80 44 56 51 51 4b 45 78 56 55 61 47 55 67 56 56 4e 46 55 6c 52 53 56 56 4e 55 49 45 35 6c 64 48 64 DVQQKExVUaGUgVVNFUlRSVVNUIE5ldHd
14eca0 76 63 6d 73 78 49 54 41 66 42 67 4e 56 42 41 73 54 47 47 68 30 64 48 41 36 4c 79 39 33 64 33 63 vcmsxITAfBgNVBAsTGGh0dHA6Ly93d3c
14ecc0 75 64 58 4e 6c 63 6e 52 79 0a 64 58 4e 30 4c 6d 4e 76 62 54 45 62 4d 42 6b 47 41 31 55 45 41 78 udXNlcnRy.dXN0LmNvbTEbMBkGA1UEAx
14ece0 4d 53 56 56 52 4f 49 43 30 67 52 45 46 55 51 55 4e 76 63 6e 41 67 55 30 64 44 4d 49 49 42 49 6a MSVVROIC0gREFUQUNvcnAgU0dDMIIBIj
14ed00 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 0a 41 51 38 41 4d 49 49 42 43 ANBgkqhkiG9w0BAQEFAAOC.AQ8AMIIBC
14ed20 67 4b 43 41 51 45 41 33 2b 35 59 45 4b 49 72 62 6c 58 45 6a 72 38 75 52 67 6e 6e 34 41 67 50 4c gKCAQEA3+5YEKIrblXEjr8uRgnn4AgPL
14ed40 69 74 36 45 35 51 62 76 66 61 32 67 49 35 6c 42 5a 4d 41 48 72 79 76 34 67 2b 4f 47 51 30 53 52 it6E5Qbvfa2gI5lBZMAHryv4g+OGQ0SR
14ed60 2b 79 73 0a 72 61 50 36 4c 6e 44 34 33 6d 37 37 56 6b 49 56 6e 69 35 63 37 79 50 65 49 62 6b 46 +ys.raP6LnD43m77VkIVni5c7yPeIbkF
14ed80 64 69 63 5a 44 30 2f 57 77 35 79 30 76 70 51 5a 59 2f 4b 6d 45 51 72 72 55 30 69 63 76 76 49 70 dicZD0/Ww5y0vpQZY/KmEQrrU0icvvIp
14eda0 4f 78 62 6f 47 71 42 4d 70 73 6e 30 47 46 6c 6f 0a 77 48 44 79 55 77 44 41 58 6c 43 43 70 56 5a OxboGqBMpsn0GFlo.wHDyUwDAXlCCpVZ
14edc0 76 4e 76 6c 4b 34 45 53 47 6f 45 31 4f 31 6b 64 75 53 55 72 4c 5a 39 65 6d 78 41 57 35 6a 68 37 vNvlK4ESGoE1O1kduSUrLZ9emxAW5jh7
14ede0 30 2f 50 2f 4e 35 7a 62 67 6e 41 56 73 73 6a 4d 69 46 64 43 30 34 4d 77 58 77 4c 4c 41 0a 39 50 0/P/N5zbgnAVssjMiFdC04MwXwLLA.9P
14ee00 34 79 50 79 6b 71 6c 58 76 59 38 71 64 4f 44 31 52 38 6f 51 32 41 73 77 6b 44 77 66 39 63 33 56 4yPykqlXvY8qdOD1R8oQ2AswkDwf9c3V
14ee20 36 61 50 72 79 75 76 45 65 4b 61 71 35 78 79 68 2b 78 4b 72 68 66 51 67 55 4c 37 45 59 77 30 58 6aPryuvEeKaq5xyh+xKrhfQgUL7EYw0X
14ee40 49 4c 79 75 6c 57 62 66 58 76 0a 33 33 69 2b 59 62 71 79 70 61 34 45 54 4c 79 6f 72 47 6b 56 6c ILyulWbfXv.33i+Ybqypa4ETLyorGkVl
14ee60 37 33 76 36 37 53 4d 76 7a 58 34 31 4d 50 52 4b 41 35 63 4f 70 39 77 47 44 4d 67 64 38 53 69 72 73v67SMvzX41MPRKA5cOp9wGDMgd8Sir
14ee80 77 49 44 41 51 41 42 6f 34 47 72 4d 49 47 6f 4d 41 73 47 41 31 55 64 0a 44 77 51 45 41 77 49 42 wIDAQABo4GrMIGoMAsGA1Ud.DwQEAwIB
14eea0 78 6a 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 30 47 41 31 55 64 xjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud
14eec0 44 67 51 57 42 42 52 54 4d 74 47 7a 7a 33 2f 36 34 50 47 67 58 59 56 4f 6b 74 4b 65 52 52 32 30 DgQWBBRTMtGzz3/64PGgXYVOktKeRR20
14eee0 54 7a 41 39 0a 42 67 4e 56 48 52 38 45 4e 6a 41 30 4d 44 4b 67 4d 4b 41 75 68 69 78 6f 64 48 52 TzA9.BgNVHR8ENjA0MDKgMKAuhixodHR
14ef00 77 4f 69 38 76 59 33 4a 73 4c 6e 56 7a 5a 58 4a 30 63 6e 56 7a 64 43 35 6a 62 32 30 76 56 56 52 wOi8vY3JsLnVzZXJ0cnVzdC5jb20vVVR
14ef20 4f 4c 55 52 42 56 45 46 44 62 33 4a 77 55 30 64 44 0a 4c 6d 4e 79 62 44 41 71 42 67 4e 56 48 53 OLURBVEFDb3JwU0dD.LmNybDAqBgNVHS
14ef40 55 45 49 7a 41 68 42 67 67 72 42 67 45 46 42 51 63 44 41 51 59 4b 4b 77 59 42 42 41 47 43 4e 77 UEIzAhBggrBgEFBQcDAQYKKwYBBAGCNw
14ef60 6f 44 41 77 59 4a 59 49 5a 49 41 59 62 34 51 67 51 42 4d 41 30 47 43 53 71 47 53 49 62 33 0a 44 oDAwYJYIZIAYb4QgQBMA0GCSqGSIb3.D
14ef80 51 45 42 42 51 55 41 41 34 49 42 41 51 41 6e 4e 5a 63 41 69 6f 73 6f 76 63 59 7a 4d 42 34 70 2f QEBBQUAA4IBAQAnNZcAiosovcYzMB4p/
14efa0 4f 4c 33 31 5a 6a 55 51 4c 74 67 79 72 2b 72 46 79 77 4a 4e 6e 39 51 2b 6b 48 63 72 70 59 36 43 OL31ZjUQLtgyr+rFywJNn9Q+kHcrpY6C
14efc0 69 4d 2b 69 56 6e 4a 6f 77 66 74 0a 47 7a 65 74 2f 48 79 2b 55 55 6c 61 33 6a 6f 4b 56 41 67 57 iM+iVnJowft.Gzet/Hy+UUla3joKVAgW
14efe0 52 63 4b 5a 73 59 66 4e 6a 47 6a 67 61 51 50 70 78 45 36 59 73 6a 75 4d 46 72 4d 4f 6f 41 79 59 RcKZsYfNjGjgaQPpxE6YsjuMFrMOoAyY
14f000 55 4a 75 54 71 58 41 4a 79 43 79 6a 6a 39 38 43 35 4f 42 78 4f 76 47 30 0a 49 33 4b 67 71 67 48 UJuTqXAJyCyjj98C5OBxOvG0.I3KgqgH
14f020 66 33 35 67 2b 46 46 43 67 4d 53 61 39 4b 4f 6c 61 4d 43 5a 31 2b 58 74 67 48 49 33 7a 7a 56 41 f35g+FFCgMSa9KOlaMCZ1+XtgHI3zzVA
14f040 6d 62 51 51 6e 6d 74 2f 56 44 55 56 48 4b 57 73 73 35 6e 62 5a 71 53 6c 39 4d 74 33 4a 4e 6a 79 mbQQnmt/VDUVHKWss5nbZqSl9Mt3JNjy
14f060 39 72 6a 58 78 0a 45 5a 34 64 75 35 41 2f 45 6b 64 4f 6a 74 64 2b 44 32 4a 7a 48 56 49 6d 4f 42 9rjXx.EZ4du5A/EkdOjtd+D2JzHVImOB
14f080 77 59 53 66 30 77 64 4a 72 45 35 53 49 76 32 4d 43 4e 37 5a 46 36 54 41 43 50 63 6e 39 64 32 74 wYSf0wdJrE5SIv2MCN7ZF6TACPcn9d2t
14f0a0 30 62 69 30 56 72 35 39 31 70 6c 36 6a 46 56 6b 77 50 0a 44 50 61 66 65 70 45 33 39 70 65 43 34 0bi0Vr591pl6jFVkwP.DPafepE39peC4
14f0c0 4e 31 78 61 66 39 32 50 32 42 4e 50 4d 2f 33 6d 66 6e 47 56 2f 54 4a 56 54 6c 34 75 69 78 35 79 N1xaf92P2BNPM/3mfnGV/TJVTl4uix5y
14f0e0 61 61 49 4b 2f 51 49 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d aaIK/QI.-----END.CERTIFICATE----
14f100 2d 0a 0a 55 54 4e 20 55 53 45 52 46 69 72 73 74 20 48 61 72 64 77 61 72 65 20 52 6f 6f 74 20 43 -..UTN.USERFirst.Hardware.Root.C
14f120 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d A.==============================
14f140 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 .-----BEGIN.CERTIFICATE-----.MII
14f160 45 64 44 43 43 41 31 79 67 41 77 49 42 41 67 49 51 52 4c 34 4d 69 31 41 41 4a 4c 51 52 30 7a 59 EdDCCA1ygAwIBAgIQRL4Mi1AAJLQR0zY
14f180 71 2f 6d 55 4b 2f 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 6c 7a 45 q/mUK/TANBgkqhkiG9w0BAQUFADCBlzE
14f1a0 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 56 56 4d 78 43 7a 41 4a 42 67 4e 56 42 41 67 54 41 6c LMAkGA1UE.BhMCVVMxCzAJBgNVBAgTAl
14f1c0 56 55 4d 52 63 77 46 51 59 44 56 51 51 48 45 77 35 54 59 57 78 30 49 45 78 68 61 32 55 67 51 32 VUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2
14f1e0 6c 30 65 54 45 65 4d 42 77 47 41 31 55 45 43 68 4d 56 56 47 68 6c 0a 49 46 56 54 52 56 4a 55 55 l0eTEeMBwGA1UEChMVVGhl.IFVTRVJUU
14f200 6c 56 54 56 43 42 4f 5a 58 52 33 62 33 4a 72 4d 53 45 77 48 77 59 44 56 51 51 4c 45 78 68 6f 64 lVTVCBOZXR3b3JrMSEwHwYDVQQLExhod
14f220 48 52 77 4f 69 38 76 64 33 64 33 4c 6e 56 7a 5a 58 4a 30 63 6e 56 7a 64 43 35 6a 62 32 30 78 48 HRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xH
14f240 7a 41 64 0a 42 67 4e 56 42 41 4d 54 46 6c 56 55 54 69 31 56 55 30 56 53 52 6d 6c 79 63 33 51 74 zAd.BgNVBAMTFlVUTi1VU0VSRmlyc3Qt
14f260 53 47 46 79 5a 48 64 68 63 6d 55 77 48 68 63 4e 4f 54 6b 77 4e 7a 41 35 4d 54 67 78 4d 44 51 79 SGFyZHdhcmUwHhcNOTkwNzA5MTgxMDQy
14f280 57 68 63 4e 4d 54 6b 77 4e 7a 41 35 4d 54 67 78 0a 4f 54 49 79 57 6a 43 42 6c 7a 45 4c 4d 41 6b WhcNMTkwNzA5MTgx.OTIyWjCBlzELMAk
14f2a0 47 41 31 55 45 42 68 4d 43 56 56 4d 78 43 7a 41 4a 42 67 4e 56 42 41 67 54 41 6c 56 55 4d 52 63 GA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRc
14f2c0 77 46 51 59 44 56 51 51 48 45 77 35 54 59 57 78 30 49 45 78 68 61 32 55 67 51 32 6c 30 0a 65 54 wFQYDVQQHEw5TYWx0IExha2UgQ2l0.eT
14f2e0 45 65 4d 42 77 47 41 31 55 45 43 68 4d 56 56 47 68 6c 49 46 56 54 52 56 4a 55 55 6c 56 54 56 43 EeMBwGA1UEChMVVGhlIFVTRVJUUlVTVC
14f300 42 4f 5a 58 52 33 62 33 4a 72 4d 53 45 77 48 77 59 44 56 51 51 4c 45 78 68 6f 64 48 52 77 4f 69 BOZXR3b3JrMSEwHwYDVQQLExhodHRwOi
14f320 38 76 64 33 64 33 4c 6e 56 7a 0a 5a 58 4a 30 63 6e 56 7a 64 43 35 6a 62 32 30 78 48 7a 41 64 42 8vd3d3LnVz.ZXJ0cnVzdC5jb20xHzAdB
14f340 67 4e 56 42 41 4d 54 46 6c 56 55 54 69 31 56 55 30 56 53 52 6d 6c 79 63 33 51 74 53 47 46 79 5a gNVBAMTFlVUTi1VU0VSRmlyc3QtSGFyZ
14f360 48 64 68 63 6d 55 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 0a 44 51 45 42 41 51 55 41 HdhcmUwggEiMA0GCSqGSIb3.DQEBAQUA
14f380 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 78 39 38 4d 34 50 37 53 6f 66 38 38 35 A4IBDwAwggEKAoIBAQCx98M4P7Sof885
14f3a0 67 6c 46 6e 30 47 32 66 30 76 39 59 38 2b 65 66 4b 2b 77 4e 69 56 53 5a 75 54 69 5a 46 76 66 67 glFn0G2f0v9Y8+efK+wNiVSZuTiZFvfg
14f3c0 49 58 6c 49 0a 77 72 74 68 64 42 4b 57 48 54 78 71 63 74 55 38 45 47 63 36 4f 65 30 72 45 38 31 IXlI.wrthdBKWHTxqctU8EGc6Oe0rE81
14f3e0 6d 36 35 55 4a 4d 36 52 73 6c 37 48 6f 78 75 7a 42 64 58 6d 63 52 6c 36 4e 71 39 42 71 2f 62 6b m65UJM6Rsl7HoxuzBdXmcRl6Nq9Bq/bk
14f400 71 56 52 63 51 56 4c 4d 5a 38 4a 72 32 38 62 46 64 0a 74 71 64 74 2b 2b 42 78 46 32 75 69 69 50 qVRcQVLMZ8Jr28bFd.tqdt++BxF2uiiP
14f420 73 41 33 2f 34 61 4d 58 63 4d 6d 67 46 36 73 54 4c 6a 4b 77 45 48 4f 47 37 44 70 56 34 6a 76 45 sA3/4aMXcMmgF6sTLjKwEHOG7DpV4jvE
14f440 57 62 65 31 44 42 79 54 43 50 32 2b 55 72 65 74 4e 62 2b 7a 4e 41 48 71 44 56 6d 42 65 38 0a 69 Wbe1DByTCP2+UretNb+zNAHqDVmBe8.i
14f460 34 66 44 69 64 4e 64 6f 49 36 79 71 71 72 32 6a 6d 6d 49 42 73 58 36 69 53 48 7a 43 4a 31 70 4c 4fDidNdoI6yqqr2jmmIBsX6iSHzCJ1pL
14f480 67 6b 7a 6d 79 6b 4e 52 67 2b 4d 7a 45 6b 30 73 47 6c 52 76 66 6b 47 7a 57 69 74 5a 6b 79 38 50 gkzmykNRg+MzEk0sGlRvfkGzWitZky8P
14f4a0 71 78 68 76 51 71 49 44 73 6a 66 0a 50 65 35 38 42 45 79 64 43 6c 35 72 6b 64 62 75 78 2b 30 6f qxhvQqIDsjf.Pe58BEydCl5rkdbux+0o
14f4c0 6a 61 74 4e 68 34 6c 7a 30 47 36 6b 30 42 34 57 69 78 54 68 64 6b 51 44 66 32 4f 73 35 4d 31 4a jatNh4lz0G6k0B4WixThdkQDf2Os5M1J
14f4e0 6e 4d 57 53 39 4b 73 79 6f 55 68 62 41 67 4d 42 41 41 47 6a 67 62 6b 77 0a 67 62 59 77 43 77 59 nMWS9KsyoUhbAgMBAAGjgbkw.gbYwCwY
14f500 44 56 52 30 50 42 41 51 44 41 67 48 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d DVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAM
14f520 42 41 66 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4b 46 79 58 79 59 62 4b 4a 68 44 6c 56 30 BAf8wHQYDVR0OBBYEFKFyXyYbKJhDlV0
14f540 48 4e 39 57 46 0a 6c 70 31 4c 30 73 4e 46 4d 45 51 47 41 31 55 64 48 77 51 39 4d 44 73 77 4f 61 HN9WF.lp1L0sNFMEQGA1UdHwQ9MDswOa
14f560 41 33 6f 44 57 47 4d 32 68 30 64 48 41 36 4c 79 39 6a 63 6d 77 75 64 58 4e 6c 63 6e 52 79 64 58 A3oDWGM2h0dHA6Ly9jcmwudXNlcnRydX
14f580 4e 30 4c 6d 4e 76 62 53 39 56 56 45 34 74 56 56 4e 46 0a 55 6b 5a 70 63 6e 4e 30 4c 55 68 68 63 N0LmNvbS9VVE4tVVNF.UkZpcnN0LUhhc
14f5a0 6d 52 33 59 58 4a 6c 4c 6d 4e 79 62 44 41 78 42 67 4e 56 48 53 55 45 4b 6a 41 6f 42 67 67 72 42 mR3YXJlLmNybDAxBgNVHSUEKjAoBggrB
14f5c0 67 45 46 42 51 63 44 41 51 59 49 4b 77 59 42 42 51 55 48 41 77 55 47 43 43 73 47 41 51 55 46 0a gEFBQcDAQYIKwYBBQUHAwUGCCsGAQUF.
14f5e0 42 77 4d 47 42 67 67 72 42 67 45 46 42 51 63 44 42 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 BwMGBggrBgEFBQcDBzANBgkqhkiG9w0B
14f600 41 51 55 46 41 41 4f 43 41 51 45 41 52 78 6b 50 33 6e 54 47 6d 5a 65 76 2f 4b 30 6f 58 6e 57 4f AQUFAAOCAQEARxkP3nTGmZev/K0oXnWO
14f620 36 79 31 6e 37 6b 35 37 4b 39 63 4d 0a 2f 2f 62 65 79 31 57 69 43 75 46 4d 56 47 57 54 59 47 75 6y1n7k57K9cM.//bey1WiCuFMVGWTYGu
14f640 66 45 70 79 74 58 6f 4d 73 36 31 71 75 77 4f 51 74 39 41 42 6a 48 62 6a 41 62 50 4c 50 53 62 74 fEpytXoMs61quwOQt9ABjHbjAbPLPSbt
14f660 4e 6b 32 38 47 70 67 6f 69 73 6b 6c 69 43 45 37 2f 79 4d 67 55 73 6f 67 57 0a 58 65 63 42 35 42 Nk28GpgoiskliCE7/yMgUsogW.XecB5B
14f680 4b 56 35 55 55 30 73 34 74 70 76 63 2b 30 68 59 39 31 55 5a 35 39 4f 6a 67 36 46 45 67 53 78 76 KV5UU0s4tpvc+0hY91UZ59Ojg6FEgSxv
14f6a0 75 6e 4f 78 71 4e 44 59 4a 41 42 2b 67 45 43 4a 43 68 69 63 73 5a 55 4e 2f 4b 48 41 47 38 48 51 unOxqNDYJAB+gECJChicsZUN/KHAG8HQ
14f6c0 51 5a 65 78 42 32 0a 6c 7a 76 75 6b 4a 44 4b 78 41 34 66 46 6d 35 31 37 7a 50 34 30 32 39 62 48 QZexB2.lzvukJDKxA4fFm517zP4029bH
14f6e0 70 62 6a 34 48 52 33 64 48 75 4b 6f 6d 34 74 33 58 62 57 4f 54 43 43 38 4b 75 63 55 76 49 71 78 pbj4HR3dHuKom4t3XbWOTCC8KucUvIqx
14f700 36 39 4a 58 6e 37 48 61 4f 57 43 67 63 68 71 4a 2f 6b 6e 0a 69 43 72 56 57 46 43 56 48 2f 41 37 69JXn7HaOWCgchqJ/kn.iCrVWFCVH/A7
14f720 48 46 65 37 66 52 51 35 59 69 75 61 79 5a 53 53 4b 71 4d 69 44 50 2b 4a 4a 6e 31 66 49 79 74 48 HFe7fRQ5YiuayZSSKqMiDP+JJn1fIytH
14f740 31 78 55 64 71 57 71 65 55 51 30 71 55 5a 36 42 2b 64 51 37 58 6e 41 53 66 78 41 79 6e 42 36 37 1xUdqWqeUQ0qUZ6B+dQ7XnASfxAynB67
14f760 0a 6e 66 68 6d 71 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d .nfhmqA==.-----END.CERTIFICATE--
14f780 2d 2d 2d 0a 0a 43 61 6d 65 72 66 69 72 6d 61 20 43 68 61 6d 62 65 72 73 20 6f 66 20 43 6f 6d 6d ---..Camerfirma.Chambers.of.Comm
14f7a0 65 72 63 65 20 52 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d erce.Root.======================
14f7c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 ==============.-----BEGIN.CERTIF
14f7e0 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 76 54 43 43 41 36 57 67 41 77 49 42 41 67 49 42 41 ICATE-----.MIIEvTCCA6WgAwIBAgIBA
14f800 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 2f 4d 51 73 77 43 51 59 44 56 DANBgkqhkiG9w0BAQUFADB/MQswCQYDV
14f820 51 51 47 45 77 4a 46 56 54 45 6e 4d 43 55 47 41 31 55 45 43 68 4d 65 0a 51 55 4d 67 51 32 46 74 QQGEwJFVTEnMCUGA1UEChMe.QUMgQ2Ft
14f840 5a 58 4a 6d 61 58 4a 74 59 53 42 54 51 53 42 44 53 55 59 67 51 54 67 79 4e 7a 51 7a 4d 6a 67 33 ZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3
14f860 4d 53 4d 77 49 51 59 44 56 51 51 4c 45 78 70 6f 64 48 52 77 4f 69 38 76 64 33 64 33 4c 6d 4e 6f MSMwIQYDVQQLExpodHRwOi8vd3d3LmNo
14f880 59 57 31 69 0a 5a 58 4a 7a 61 57 64 75 4c 6d 39 79 5a 7a 45 69 4d 43 41 47 41 31 55 45 41 78 4d YW1i.ZXJzaWduLm9yZzEiMCAGA1UEAxM
14f8a0 5a 51 32 68 68 62 57 4a 6c 63 6e 4d 67 62 32 59 67 51 32 39 74 62 57 56 79 59 32 55 67 55 6d 39 ZQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9
14f8c0 76 64 44 41 65 46 77 30 77 4d 7a 41 35 4d 7a 41 78 0a 4e 6a 45 7a 4e 44 4e 61 46 77 30 7a 4e 7a vdDAeFw0wMzA5MzAx.NjEzNDNaFw0zNz
14f8e0 41 35 4d 7a 41 78 4e 6a 45 7a 4e 44 52 61 4d 48 38 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b A5MzAxNjEzNDRaMH8xCzAJBgNVBAYTAk
14f900 56 56 4d 53 63 77 4a 51 59 44 56 51 51 4b 45 78 35 42 51 79 42 44 59 57 31 6c 63 6d 5a 70 0a 63 VVMScwJQYDVQQKEx5BQyBDYW1lcmZp.c
14f920 6d 31 68 49 46 4e 42 49 45 4e 4a 52 69 42 42 4f 44 49 33 4e 44 4d 79 4f 44 63 78 49 7a 41 68 42 m1hIFNBIENJRiBBODI3NDMyODcxIzAhB
14f940 67 4e 56 42 41 73 54 47 6d 68 30 64 48 41 36 4c 79 39 33 64 33 63 75 59 32 68 68 62 57 4a 6c 63 gNVBAsTGmh0dHA6Ly93d3cuY2hhbWJlc
14f960 6e 4e 70 5a 32 34 75 62 33 4a 6e 0a 4d 53 49 77 49 41 59 44 56 51 51 44 45 78 6c 44 61 47 46 74 nNpZ24ub3Jn.MSIwIAYDVQQDExlDaGFt
14f980 59 6d 56 79 63 79 42 76 5a 69 42 44 62 32 31 74 5a 58 4a 6a 5a 53 42 53 62 32 39 30 4d 49 49 42 YmVycyBvZiBDb21tZXJjZSBSb290MIIB
14f9a0 49 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 0a 41 51 30 41 4d 49 49 IDANBgkqhkiG9w0BAQEFAAOC.AQ0AMII
14f9c0 42 43 41 4b 43 41 51 45 41 74 7a 5a 56 35 61 56 64 47 44 44 67 32 6f 6c 55 6b 66 7a 49 78 31 4c BCAKCAQEAtzZV5aVdGDDg2olUkfzIx1L
14f9e0 34 4c 31 44 5a 37 37 46 31 63 32 56 48 66 52 74 62 75 6e 58 46 2f 4b 47 49 4a 50 6f 76 37 63 6f 4L1DZ77F1c2VHfRtbunXF/KGIJPov7co
14fa00 49 53 6a 6c 55 0a 78 46 46 36 74 64 70 67 36 6a 67 38 67 62 4c 4c 38 62 76 5a 6b 53 4d 2f 53 41 ISjlU.xFF6tdpg6jg8gbLL8bvZkSM/SA
14fa20 46 77 64 61 6b 46 4b 71 30 66 63 66 50 4a 56 44 30 64 42 6d 70 41 50 72 4d 4d 68 65 35 63 47 33 FwdakFKq0fcfPJVD0dBmpAPrMMhe5cG3
14fa40 6e 43 59 73 53 34 4e 6f 34 31 58 51 45 4d 49 77 52 48 0a 4e 61 71 62 59 45 36 67 5a 6a 33 4c 4a nCYsS4No41XQEMIwRH.NaqbYE6gZj3LJ
14fa60 67 71 63 51 4b 48 30 58 5a 69 2f 63 61 75 6c 41 47 67 71 37 59 4e 36 44 36 49 55 74 64 51 69 73 gqcQKH0XZi/caulAGgq7YN6D6IUtdQis
14fa80 34 43 77 50 41 78 61 55 57 6b 74 57 42 69 50 37 5a 6d 65 38 61 37 69 6c 65 62 32 52 36 6a 57 0a 4CwPAxaUWktWBiP7Zme8a7ileb2R6jW.
14faa0 44 41 2b 77 57 46 6a 62 77 32 59 33 6e 70 75 52 56 44 4d 33 30 70 51 63 61 6b 6a 4a 79 66 4b 6c DA+wWFjbw2Y3npuRVDM30pQcakjJyfKl
14fac0 32 71 55 4d 49 2f 63 6a 44 70 77 79 56 56 35 78 6e 49 51 46 55 5a 6f 74 2f 65 5a 4f 4b 6a 52 61 2qUMI/cjDpwyVV5xnIQFUZot/eZOKjRa
14fae0 33 73 70 41 4e 32 63 4d 56 43 46 56 0a 64 39 6f 4b 44 4d 79 58 72 6f 44 63 6c 44 5a 4b 39 44 37 3spAN2cMVCFV.d9oKDMyXroDclDZK9D7
14fb00 4f 4e 68 4d 65 55 2b 53 73 54 6a 6f 46 37 4e 75 75 63 70 77 34 69 39 41 35 4f 34 6b 4b 50 6e 66 ONhMeU+SsTjoF7Nuucpw4i9A5O4kKPnf
14fb20 2b 64 51 49 42 41 36 4f 43 41 55 51 77 67 67 46 41 4d 42 49 47 41 31 55 64 0a 45 77 45 42 2f 77 +dQIBA6OCAUQwggFAMBIGA1Ud.EwEB/w
14fb40 51 49 4d 41 59 42 41 66 38 43 41 51 77 77 50 41 59 44 56 52 30 66 42 44 55 77 4d 7a 41 78 6f 43 QIMAYBAf8CAQwwPAYDVR0fBDUwMzAxoC
14fb60 2b 67 4c 59 59 72 61 48 52 30 63 44 6f 76 4c 32 4e 79 62 43 35 6a 61 47 46 74 59 6d 56 79 63 32 +gLYYraHR0cDovL2NybC5jaGFtYmVyc2
14fb80 6c 6e 62 69 35 76 0a 63 6d 63 76 59 32 68 68 62 57 4a 6c 63 6e 4e 79 62 32 39 30 4c 6d 4e 79 62 lnbi5v.cmcvY2hhbWJlcnNyb290LmNyb
14fba0 44 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 34 35 54 31 73 55 33 70 32 36 45 70 57 31 65 4c 54 DAdBgNVHQ4EFgQU45T1sU3p26EpW1eLT
14fbc0 58 59 47 64 75 48 52 6f 6f 6f 77 44 67 59 44 56 52 30 50 0a 41 51 48 2f 42 41 51 44 41 67 45 47 XYGduHRooowDgYDVR0P.AQH/BAQDAgEG
14fbe0 4d 42 45 47 43 57 43 47 53 41 47 47 2b 45 49 42 41 51 51 45 41 77 49 41 42 7a 41 6e 42 67 4e 56 MBEGCWCGSAGG+EIBAQQEAwIABzAnBgNV
14fc00 48 52 45 45 49 44 41 65 67 52 78 6a 61 47 46 74 59 6d 56 79 63 33 4a 76 62 33 52 41 59 32 68 68 HREEIDAegRxjaGFtYmVyc3Jvb3RAY2hh
14fc20 0a 62 57 4a 6c 63 6e 4e 70 5a 32 34 75 62 33 4a 6e 4d 43 63 47 41 31 55 64 45 67 51 67 4d 42 36 .bWJlcnNpZ24ub3JnMCcGA1UdEgQgMB6
14fc40 42 48 47 4e 6f 59 57 31 69 5a 58 4a 7a 63 6d 39 76 64 45 42 6a 61 47 46 74 59 6d 56 79 63 32 6c BHGNoYW1iZXJzcm9vdEBjaGFtYmVyc2l
14fc60 6e 62 69 35 76 63 6d 63 77 57 41 59 44 0a 56 52 30 67 42 46 45 77 54 7a 42 4e 42 67 73 72 42 67 nbi5vcmcwWAYD.VR0gBFEwTzBNBgsrBg
14fc80 45 45 41 59 47 48 4c 67 6f 44 41 54 41 2b 4d 44 77 47 43 43 73 47 41 51 55 46 42 77 49 42 46 6a EEAYGHLgoDATA+MDwGCCsGAQUFBwIBFj
14fca0 42 6f 64 48 52 77 4f 69 38 76 59 33 42 7a 4c 6d 4e 6f 59 57 31 69 5a 58 4a 7a 0a 61 57 64 75 4c BodHRwOi8vY3BzLmNoYW1iZXJz.aWduL
14fcc0 6d 39 79 5a 79 39 6a 63 48 4d 76 59 32 68 68 62 57 4a 6c 63 6e 4e 79 62 32 39 30 4c 6d 68 30 62 m9yZy9jcHMvY2hhbWJlcnNyb290Lmh0b
14fce0 57 77 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 41 78 42 6c WwwDQYJKoZIhvcNAQEFBQADggEBAAxBl
14fd00 38 49 61 68 73 41 69 0a 66 4a 2f 37 6b 50 4d 61 30 51 4f 78 37 78 50 35 49 56 38 45 6e 4e 72 4a 8IahsAi.fJ/7kPMa0QOx7xP5IV8EnNrJ
14fd20 70 59 30 6e 62 4a 61 48 6b 62 35 42 6b 41 46 79 6b 2b 63 65 66 56 2f 32 69 63 5a 64 70 30 41 4a pY0nbJaHkb5BkAFyk+cefV/2icZdp0AJ
14fd40 50 61 78 4a 52 55 58 63 4c 6f 30 77 61 4c 49 4a 75 76 76 44 0a 4c 38 79 36 43 39 38 2f 64 33 74 PaxJRUXcLo0waLIJuvvD.L8y6C98/d3t
14fd60 47 66 54 6f 53 4a 49 36 57 6a 7a 77 46 43 6d 2f 53 6c 43 67 64 62 51 7a 41 4c 6f 67 69 31 64 6a GfToSJI6WjzwFCm/SlCgdbQzALogi1dj
14fd80 50 48 52 50 48 38 45 6a 58 31 77 57 6e 7a 38 64 48 6e 6a 73 38 4e 4d 69 41 54 39 51 55 75 2f 77 PHRPH8EjX1wWnz8dHnjs8NMiAT9QUu/w
14fda0 4e 0a 55 50 66 36 73 2b 78 43 58 36 6e 64 62 63 6a 30 64 63 39 37 77 58 49 6d 73 51 45 63 58 43 N.UPf6s+xCX6ndbcj0dc97wXImsQEcXC
14fdc0 7a 39 65 6b 36 30 41 63 55 46 56 37 6e 6e 50 4b 6f 46 32 59 6a 70 42 30 5a 42 7a 75 39 42 67 61 z9ek60AcUFV7nnPKoF2YjpB0ZBzu9Bga
14fde0 35 59 33 34 4f 69 72 73 72 58 64 78 2f 6e 0a 41 44 79 64 62 34 37 6b 4d 67 6b 64 54 58 67 30 65 5Y34OirsrXdx/n.ADydb47kMgkdTXg0e
14fe00 44 51 38 6c 4a 73 6d 37 55 39 78 78 68 6c 36 76 53 41 69 53 46 72 2b 53 33 30 44 74 2b 64 59 76 DQ8lJsm7U9xxhl6vSAiSFr+S30Dt+dYv
14fe20 73 59 79 54 6e 51 65 61 4e 32 6f 61 46 75 7a 50 75 35 69 66 64 6d 41 36 41 70 31 0a 65 72 66 75 sYyTnQeaN2oaFuzPu5ifdmA6Ap1.erfu
14fe40 74 47 57 61 49 5a 44 67 71 74 43 59 76 44 69 31 63 7a 79 4c 2b 4e 77 3d 0a 2d 2d 2d 2d 2d 45 4e tGWaIZDgqtCYvDi1czyL+Nw=.-----EN
14fe60 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 61 6d 65 72 66 69 72 6d 61 20 47 D.CERTIFICATE-----..Camerfirma.G
14fe80 6c 6f 62 61 6c 20 43 68 61 6d 62 65 72 73 69 67 6e 20 52 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d lobal.Chambersign.Root.=========
14fea0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 =========================.-----B
14fec0 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 78 54 43 43 41 36 EGIN.CERTIFICATE-----.MIIExTCCA6
14fee0 32 67 41 77 49 42 41 67 49 42 41 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 2gAwIBAgIBADANBgkqhkiG9w0BAQUFAD
14ff00 42 39 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 56 54 45 6e 4d 43 55 47 41 31 55 45 43 68 B9MQswCQYDVQQGEwJFVTEnMCUGA1UECh
14ff20 4d 65 0a 51 55 4d 67 51 32 46 74 5a 58 4a 6d 61 58 4a 74 59 53 42 54 51 53 42 44 53 55 59 67 51 Me.QUMgQ2FtZXJmaXJtYSBTQSBDSUYgQ
14ff40 54 67 79 4e 7a 51 7a 4d 6a 67 33 4d 53 4d 77 49 51 59 44 56 51 51 4c 45 78 70 6f 64 48 52 77 4f TgyNzQzMjg3MSMwIQYDVQQLExpodHRwO
14ff60 69 38 76 64 33 64 33 4c 6d 4e 6f 59 57 31 69 0a 5a 58 4a 7a 61 57 64 75 4c 6d 39 79 5a 7a 45 67 i8vd3d3LmNoYW1i.ZXJzaWduLm9yZzEg
14ff80 4d 42 34 47 41 31 55 45 41 78 4d 58 52 32 78 76 59 6d 46 73 49 45 4e 6f 59 57 31 69 5a 58 4a 7a MB4GA1UEAxMXR2xvYmFsIENoYW1iZXJz
14ffa0 61 57 64 75 49 46 4a 76 62 33 51 77 48 68 63 4e 4d 44 4d 77 4f 54 4d 77 4d 54 59 78 0a 4e 44 45 aWduIFJvb3QwHhcNMDMwOTMwMTYx.NDE
14ffc0 34 57 68 63 4e 4d 7a 63 77 4f 54 4d 77 4d 54 59 78 4e 44 45 34 57 6a 42 39 4d 51 73 77 43 51 59 4WhcNMzcwOTMwMTYxNDE4WjB9MQswCQY
14ffe0 44 56 51 51 47 45 77 4a 46 56 54 45 6e 4d 43 55 47 41 31 55 45 43 68 4d 65 51 55 4d 67 51 32 46 DVQQGEwJFVTEnMCUGA1UEChMeQUMgQ2F
150000 74 5a 58 4a 6d 61 58 4a 74 0a 59 53 42 54 51 53 42 44 53 55 59 67 51 54 67 79 4e 7a 51 7a 4d 6a tZXJmaXJt.YSBTQSBDSUYgQTgyNzQzMj
150020 67 33 4d 53 4d 77 49 51 59 44 56 51 51 4c 45 78 70 6f 64 48 52 77 4f 69 38 76 64 33 64 33 4c 6d g3MSMwIQYDVQQLExpodHRwOi8vd3d3Lm
150040 4e 6f 59 57 31 69 5a 58 4a 7a 61 57 64 75 4c 6d 39 79 5a 7a 45 67 0a 4d 42 34 47 41 31 55 45 41 NoYW1iZXJzaWduLm9yZzEg.MB4GA1UEA
150060 78 4d 58 52 32 78 76 59 6d 46 73 49 45 4e 6f 59 57 31 69 5a 58 4a 7a 61 57 64 75 49 46 4a 76 62 xMXR2xvYmFsIENoYW1iZXJzaWduIFJvb
150080 33 51 77 67 67 45 67 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 3QwggEgMA0GCSqGSIb3DQEBAQUAA4IBD
1500a0 51 41 77 0a 67 67 45 49 41 6f 49 42 41 51 43 69 63 4b 4c 51 6e 30 4b 75 57 78 66 48 32 48 33 50 QAw.ggEIAoIBAQCicKLQn0KuWxfH2H3P
1500c0 46 49 50 38 54 38 6d 68 74 78 4f 76 69 74 65 65 50 67 51 4b 6b 6f 74 67 56 76 71 30 4d 69 2b 49 FIP8T8mhtxOviteePgQKkotgVvq0Mi+I
1500e0 54 61 46 67 43 50 53 33 43 55 36 67 53 53 39 4a 0a 31 74 50 66 6e 5a 64 61 6e 35 51 45 63 4f 77 TaFgCPS3CU6gSS9J.1tPfnZdan5QEcOw
150100 2f 57 64 6d 33 7a 47 61 4c 6d 46 49 6f 43 51 4c 66 78 53 2b 45 6a 58 71 58 64 37 2f 73 51 4a 30 /Wdm3zGaLmFIoCQLfxS+EjXqXd7/sQJ0
150120 6c 63 71 75 31 50 7a 4b 59 2b 37 65 33 2f 48 4b 45 35 54 57 48 2b 56 58 36 6f 78 38 4f 0a 62 79 lcqu1PzKY+7e3/HKE5TWH+VX6ox8O.by
150140 34 6f 33 57 6d 67 32 55 49 51 78 76 69 31 52 4d 4c 51 51 33 2f 62 76 4f 53 69 50 47 70 56 65 41 4o3Wmg2UIQxvi1RMLQQ3/bvOSiPGpVeA
150160 70 33 71 64 6a 71 47 54 4b 33 4c 2f 35 63 50 78 76 75 73 5a 6a 73 79 71 31 36 61 55 58 6a 6c 67 p3qdjqGTK3L/5cPxvusZjsyq16aUXjlg
150180 39 56 39 75 62 74 64 65 70 6c 0a 36 44 4a 57 6b 30 61 4a 71 43 57 4b 5a 51 62 75 61 37 39 35 42 9V9ubtdepl.6DJWk0aJqCWKZQbua795B
1501a0 39 44 78 74 36 2f 74 4c 45 32 53 75 38 43 6f 58 36 64 6e 66 51 54 79 46 51 68 77 72 4a 4c 57 66 9Dxt6/tLE2Su8CoX6dnfQTyFQhwrJLWf
1501c0 51 54 53 4d 2f 74 4d 74 67 73 4c 2b 78 72 4a 78 49 30 44 71 58 35 63 0a 38 6c 43 72 45 71 57 68 QTSM/tMtgsL+xrJxI0DqX5c.8lCrEqWh
1501e0 7a 30 68 51 70 65 2f 53 79 42 6f 54 2b 72 42 2f 73 59 49 63 64 32 6f 50 58 39 77 4c 6c 59 2f 76 z0hQpe/SyBoT+rB/sYIcd2oPX9wLlY/v
150200 51 33 37 6d 52 51 6b 6c 41 67 45 44 6f 34 49 42 55 44 43 43 41 55 77 77 45 67 59 44 56 52 30 54 Q37mRQklAgEDo4IBUDCCAUwwEgYDVR0T
150220 41 51 48 2f 0a 42 41 67 77 42 67 45 42 2f 77 49 42 44 44 41 2f 42 67 4e 56 48 52 38 45 4f 44 41 AQH/.BAgwBgEB/wIBDDA/BgNVHR8EODA
150240 32 4d 44 53 67 4d 71 41 77 68 69 35 6f 64 48 52 77 4f 69 38 76 59 33 4a 73 4c 6d 4e 6f 59 57 31 2MDSgMqAwhi5odHRwOi8vY3JsLmNoYW1
150260 69 5a 58 4a 7a 61 57 64 75 4c 6d 39 79 5a 79 39 6a 0a 61 47 46 74 59 6d 56 79 63 32 6c 6e 62 6e iZXJzaWduLm9yZy9j.aGFtYmVyc2lnbn
150280 4a 76 62 33 51 75 59 33 4a 73 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 52 44 6e 44 61 66 73 4a Jvb3QuY3JsMB0GA1UdDgQWBBRDnDafsJ
1502a0 34 77 54 63 62 4f 58 36 30 51 71 2b 55 44 70 66 71 70 46 44 41 4f 42 67 4e 56 48 51 38 42 0a 41 4wTcbOX60Qq+UDpfqpFDAOBgNVHQ8B.A
1502c0 66 38 45 42 41 4d 43 41 51 59 77 45 51 59 4a 59 49 5a 49 41 59 62 34 51 67 45 42 42 41 51 44 41 f8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDA
1502e0 67 41 48 4d 43 6f 47 41 31 55 64 45 51 51 6a 4d 43 47 42 48 32 4e 6f 59 57 31 69 5a 58 4a 7a 61 gAHMCoGA1UdEQQjMCGBH2NoYW1iZXJza
150300 57 64 75 63 6d 39 76 64 45 42 6a 0a 61 47 46 74 59 6d 56 79 63 32 6c 6e 62 69 35 76 63 6d 63 77 Wducm9vdEBj.aGFtYmVyc2lnbi5vcmcw
150320 4b 67 59 44 56 52 30 53 42 43 4d 77 49 59 45 66 59 32 68 68 62 57 4a 6c 63 6e 4e 70 5a 32 35 79 KgYDVR0SBCMwIYEfY2hhbWJlcnNpZ25y
150340 62 32 39 30 51 47 4e 6f 59 57 31 69 5a 58 4a 7a 61 57 64 75 4c 6d 39 79 0a 5a 7a 42 62 42 67 4e b290QGNoYW1iZXJzaWduLm9y.ZzBbBgN
150360 56 48 53 41 45 56 44 42 53 4d 46 41 47 43 79 73 47 41 51 51 42 67 59 63 75 43 67 45 42 4d 45 45 VHSAEVDBSMFAGCysGAQQBgYcuCgEBMEE
150380 77 50 77 59 49 4b 77 59 42 42 51 55 48 41 67 45 57 4d 32 68 30 64 48 41 36 4c 79 39 6a 63 48 4d wPwYIKwYBBQUHAgEWM2h0dHA6Ly9jcHM
1503a0 75 59 32 68 68 0a 62 57 4a 6c 63 6e 4e 70 5a 32 34 75 62 33 4a 6e 4c 32 4e 77 63 79 39 6a 61 47 uY2hh.bWJlcnNpZ24ub3JnL2Nwcy9jaG
1503c0 46 74 59 6d 56 79 63 32 6c 6e 62 6e 4a 76 62 33 51 75 61 48 52 74 62 44 41 4e 42 67 6b 71 68 6b FtYmVyc2lnbnJvb3QuaHRtbDANBgkqhk
1503e0 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 0a 50 44 74 77 6b 66 6b 45 56 43 65 52 34 iG9w0BAQUFAAOCAQEA.PDtwkfkEVCeR4
150400 65 33 74 2f 6d 68 2f 59 56 33 6c 51 57 56 50 4d 76 45 59 42 5a 52 71 48 4e 34 66 63 4e 73 2b 65 e3t/mh/YV3lQWVPMvEYBZRqHN4fcNs+e
150420 7a 49 43 4e 4c 55 4d 62 4b 47 4b 66 4b 58 30 6a 2f 2f 55 32 4b 30 58 31 53 30 45 30 54 39 59 0a zICNLUMbKGKfKX0j//U2K0X1S0E0T9Y.
150440 67 4f 4b 42 57 59 69 2b 77 4f 4e 47 6b 79 54 2b 6b 4c 30 6d 6f 6a 41 74 36 4a 63 6d 56 7a 57 4a gOKBWYi+wONGkyT+kL0mojAt6JcmVzWJ
150460 64 4a 59 59 39 68 58 69 72 79 51 5a 56 67 49 43 73 72 6f 50 46 4f 72 47 69 6d 62 42 68 6b 56 56 dJYY9hXiryQZVgICsroPFOrGimbBhkVV
150480 69 37 36 53 76 70 79 6b 42 4d 64 4a 0a 50 4a 37 6f 4b 58 71 4a 31 2f 36 76 2f 32 6a 31 70 52 65 i76SvpykBMdJ.PJ7oKXqJ1/6v/2j1pRe
1504a0 51 76 61 79 5a 7a 4b 57 47 56 77 6c 6e 52 74 76 57 46 73 4a 47 38 65 53 70 55 50 57 50 30 5a 49 QvayZzKWGVwlnRtvWFsJG8eSpUPWP0ZI
1504c0 56 30 31 38 2b 78 67 42 4a 4f 6d 35 59 73 74 48 52 4a 77 30 6c 79 44 4c 34 0a 49 42 48 4e 66 54 V018+xgBJOm5YstHRJw0lyDL4.IBHNfT
1504e0 49 7a 53 4a 52 55 54 4e 33 63 65 63 51 77 6e 2b 75 4f 75 46 57 31 31 34 68 63 78 57 6f 6b 50 62 IzSJRUTN3cecQwn+uOuFW114hcxWokPb
150500 4c 54 42 51 4e 52 78 67 66 76 7a 42 52 79 64 44 31 75 63 73 34 59 4b 49 78 4b 6f 48 66 6c 43 53 LTBQNRxgfvzBRydD1ucs4YKIxKoHflCS
150520 74 46 52 45 65 73 0a 74 32 64 2f 41 59 6f 46 57 70 4f 2b 6f 63 48 2f 2b 4f 63 4f 5a 36 52 48 53 tFREes.t2d/AYoFWpO+ocH/+OcOZ6RHS
150540 58 5a 64 64 5a 41 61 39 53 61 50 38 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 XZddZAa9SaP8A==.-----END.CERTIFI
150560 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 4e 65 74 4c 6f 63 6b 20 4e 6f 74 61 72 79 20 28 43 6c 61 73 73 CATE-----..NetLock.Notary.(Class
150580 20 41 29 20 52 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .A).Root.=======================
1505a0 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d ======.-----BEGIN.CERTIFICATE---
1505c0 2d 2d 0a 4d 49 49 47 66 54 43 43 42 57 57 67 41 77 49 42 41 67 49 43 41 51 4d 77 44 51 59 4a 4b --.MIIGfTCCBWWgAwIBAgICAQMwDQYJK
1505e0 6f 5a 49 68 76 63 4e 41 51 45 45 42 51 41 77 67 61 38 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 oZIhvcNAQEEBQAwga8xCzAJBgNVBAYTA
150600 6b 68 56 4d 52 41 77 44 67 59 44 56 51 51 49 0a 45 77 64 49 64 57 35 6e 59 58 4a 35 4d 52 45 77 khVMRAwDgYDVQQI.EwdIdW5nYXJ5MREw
150620 44 77 59 44 56 51 51 48 45 77 68 43 64 57 52 68 63 47 56 7a 64 44 45 6e 4d 43 55 47 41 31 55 45 DwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UE
150640 43 68 4d 65 54 6d 56 30 54 47 39 6a 61 79 42 49 59 57 78 76 65 6d 46 30 59 6d 6c 36 0a 64 47 39 ChMeTmV0TG9jayBIYWxvemF0Yml6.dG9
150660 75 63 32 46 6e 61 53 42 4c 5a 6e 51 75 4d 52 6f 77 47 41 59 44 56 51 51 4c 45 78 46 55 59 57 35 uc2FnaSBLZnQuMRowGAYDVQQLExFUYW5
150680 31 63 32 6c 30 64 6d 46 75 65 57 74 70 59 57 52 76 61 7a 45 32 4d 44 51 47 41 31 55 45 41 78 4d 1c2l0dmFueWtpYWRvazE2MDQGA1UEAxM
1506a0 74 54 6d 56 30 54 47 39 6a 0a 61 79 42 4c 62 33 70 71 5a 57 64 35 65 6d 39 70 49 43 68 44 62 47 tTmV0TG9j.ayBLb3pqZWd5em9pIChDbG
1506c0 46 7a 63 79 42 42 4b 53 42 55 59 57 35 31 63 32 6c 30 64 6d 46 75 65 57 74 70 59 57 52 76 4d 42 FzcyBBKSBUYW51c2l0dmFueWtpYWRvMB
1506e0 34 58 44 54 6b 35 4d 44 49 79 4e 44 49 7a 4d 54 51 30 4e 31 6f 58 0a 44 54 45 35 4d 44 49 78 4f 4XDTk5MDIyNDIzMTQ0N1oX.DTE5MDIxO
150700 54 49 7a 4d 54 51 30 4e 31 6f 77 67 61 38 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 68 56 4d TIzMTQ0N1owga8xCzAJBgNVBAYTAkhVM
150720 52 41 77 44 67 59 44 56 51 51 49 45 77 64 49 64 57 35 6e 59 58 4a 35 4d 52 45 77 44 77 59 44 56 RAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDV
150740 51 51 48 0a 45 77 68 43 64 57 52 68 63 47 56 7a 64 44 45 6e 4d 43 55 47 41 31 55 45 43 68 4d 65 QQH.EwhCdWRhcGVzdDEnMCUGA1UEChMe
150760 54 6d 56 30 54 47 39 6a 61 79 42 49 59 57 78 76 65 6d 46 30 59 6d 6c 36 64 47 39 75 63 32 46 6e TmV0TG9jayBIYWxvemF0Yml6dG9uc2Fn
150780 61 53 42 4c 5a 6e 51 75 4d 52 6f 77 47 41 59 44 0a 56 51 51 4c 45 78 46 55 59 57 35 31 63 32 6c aSBLZnQuMRowGAYD.VQQLExFUYW51c2l
1507a0 30 64 6d 46 75 65 57 74 70 59 57 52 76 61 7a 45 32 4d 44 51 47 41 31 55 45 41 78 4d 74 54 6d 56 0dmFueWtpYWRvazE2MDQGA1UEAxMtTmV
1507c0 30 54 47 39 6a 61 79 42 4c 62 33 70 71 5a 57 64 35 65 6d 39 70 49 43 68 44 62 47 46 7a 0a 63 79 0TG9jayBLb3pqZWd5em9pIChDbGFz.cy
1507e0 42 42 4b 53 42 55 59 57 35 31 63 32 6c 30 64 6d 46 75 65 57 74 70 59 57 52 76 4d 49 49 42 49 6a BBKSBUYW51c2l0dmFueWtpYWRvMIIBIj
150800 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 ANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCg
150820 4b 43 41 51 45 41 76 48 53 4d 0a 44 37 74 4d 39 44 63 65 71 51 57 43 32 4f 62 68 62 48 44 71 65 KCAQEAvHSM.D7tM9DceqQWC2ObhbHDqe
150840 4c 56 75 30 54 68 45 44 61 69 44 7a 6c 33 53 31 74 57 42 78 64 52 4c 35 31 75 55 63 43 62 62 4f LVu0ThEDaiDzl3S1tWBxdRL51uUcCbbO
150860 35 31 71 54 47 4c 33 63 66 4e 6b 31 6d 45 37 50 65 74 7a 6f 7a 66 5a 0a 7a 2b 71 4d 6b 6a 76 4e 51qTGL3cfNk1mE7PetzozfZ.z+qMkjvN
150880 39 77 66 63 5a 6e 53 58 39 45 55 69 33 66 52 63 34 4c 39 74 38 37 35 6c 4d 2b 51 56 4f 72 2f 62 9wfcZnSX9EUi3fRc4L9t875lM+QVOr/b
1508a0 6d 4a 42 56 4f 4d 54 74 70 6c 56 6a 43 37 42 34 42 50 54 6a 62 73 45 2f 6a 76 78 52 65 42 2b 53 mJBVOMTtplVjC7B4BPTjbsE/jvxReB+S
1508c0 6e 6f 50 43 0a 2f 74 6d 77 71 63 6d 38 57 67 44 2f 71 61 69 59 64 50 76 32 4c 44 34 56 4f 51 32 noPC./tmwqcm8WgD/qaiYdPv2LD4VOQ2
1508e0 32 42 46 57 6f 44 70 67 67 51 72 4f 78 4a 61 31 2b 6d 6d 39 64 55 37 47 72 44 50 7a 72 34 50 4e 2BFWoDpggQrOxJa1+mm9dU7GrDPzr4PN
150900 36 73 36 69 7a 2f 30 62 32 59 36 4c 59 4f 70 68 37 0a 74 71 79 46 2f 37 41 6c 54 33 52 6a 35 78 6s6iz/0b2Y6LYOph7.tqyF/7AlT3Rj5x
150920 4d 48 70 51 71 50 42 66 66 41 5a 47 39 2b 70 79 65 41 6c 74 37 55 4c 6f 5a 67 78 32 73 72 58 6e MHpQqPBffAZG9+pyeAlt7ULoZgx2srXn
150940 4e 37 46 2b 65 52 50 32 51 4d 32 45 73 69 4e 43 75 62 4d 76 4a 49 48 35 2b 68 43 6f 52 36 0a 34 N7F+eRP2QM2EsiNCubMvJIH5+hCoR6.4
150960 73 4b 74 6c 7a 32 4f 31 63 48 35 56 71 4e 51 36 63 61 30 2b 70 69 69 37 70 58 6d 4b 67 4f 4d 33 sKtlz2O1cH5VqNQ6ca0+pii7pXmKgOM3
150980 77 49 44 41 51 41 42 6f 34 49 43 6e 7a 43 43 41 70 73 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 wIDAQABo4ICnzCCApswDgYDVR0PAQH/B
1509a0 41 51 44 41 67 41 47 4d 42 49 47 0a 41 31 55 64 45 77 45 42 2f 77 51 49 4d 41 59 42 41 66 38 43 AQDAgAGMBIG.A1UdEwEB/wQIMAYBAf8C
1509c0 41 51 51 77 45 51 59 4a 59 49 5a 49 41 59 62 34 51 67 45 42 42 41 51 44 41 67 41 48 4d 49 49 43 AQQwEQYJYIZIAYb4QgEBBAQDAgAHMIIC
1509e0 59 41 59 4a 59 49 5a 49 41 59 62 34 51 67 45 4e 42 49 49 43 55 52 61 43 0a 41 6b 31 47 53 55 64 YAYJYIZIAYb4QgENBIICURaC.Ak1GSUd
150a00 5a 52 55 78 46 54 53 45 67 52 58 70 6c 62 69 42 30 59 57 35 31 63 32 6c 30 64 6d 46 75 65 53 42 ZRUxFTSEgRXplbiB0YW51c2l0dmFueSB
150a20 68 49 45 35 6c 64 45 78 76 59 32 73 67 53 32 5a 30 4c 69 42 42 62 48 52 68 62 47 46 75 62 33 4d hIE5ldExvY2sgS2Z0LiBBbHRhbGFub3M
150a40 67 55 33 70 76 0a 62 47 64 68 62 48 52 68 64 47 46 7a 61 53 42 47 5a 57 78 30 5a 58 52 6c 62 47 gU3pv.bGdhbHRhdGFzaSBGZWx0ZXRlbG
150a60 56 70 59 6d 56 75 49 47 78 6c 61 58 4a 30 49 47 56 73 61 6d 46 79 59 58 4e 76 61 79 42 68 62 47 VpYmVuIGxlaXJ0IGVsamFyYXNvayBhbG
150a80 46 77 61 6d 46 75 49 47 74 6c 63 33 70 31 62 48 51 75 0a 49 45 45 67 61 47 6c 30 5a 57 78 6c 63 FwamFuIGtlc3p1bHQu.IEEgaGl0ZWxlc
150aa0 32 6c 30 5a 58 4d 67 5a 6d 39 73 65 57 46 74 59 58 52 68 64 43 42 68 49 45 35 6c 64 45 78 76 59 2l0ZXMgZm9seWFtYXRhdCBhIE5ldExvY
150ac0 32 73 67 53 32 5a 30 4c 69 42 30 5a 58 4a 74 5a 57 74 6d 5a 57 78 6c 62 47 39 7a 63 32 56 6e 0a 2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2Vn.
150ae0 4c 57 4a 70 65 6e 52 76 63 32 6c 30 59 58 4e 68 49 48 5a 6c 5a 47 6b 75 49 45 45 67 5a 47 6c 6e LWJpenRvc2l0YXNhIHZlZGkuIEEgZGln
150b00 61 58 52 68 62 47 6c 7a 49 47 46 73 59 57 6c 79 59 58 4d 67 5a 57 78 6d 62 32 64 68 5a 47 46 7a aXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFz
150b20 59 57 35 68 61 79 42 6d 5a 57 78 30 0a 5a 58 52 6c 62 47 55 67 59 58 6f 67 5a 57 78 76 61 58 4a YW5hayBmZWx0.ZXRlbGUgYXogZWxvaXJ
150b40 30 49 47 56 73 62 47 56 75 62 33 4a 36 5a 58 4e 70 49 47 56 73 61 6d 46 79 59 58 4d 67 62 57 56 0IGVsbGVub3J6ZXNpIGVsamFyYXMgbWV
150b60 6e 64 47 56 30 5a 57 78 6c 4c 69 42 42 65 69 42 6c 62 47 70 68 63 6d 46 7a 0a 49 47 78 6c 61 58 ndGV0ZWxlLiBBeiBlbGphcmFz.IGxlaX
150b80 4a 68 63 32 45 67 62 57 56 6e 64 47 46 73 59 57 78 6f 59 58 52 76 49 47 45 67 54 6d 56 30 54 47 Jhc2EgbWVndGFsYWxoYXRvIGEgTmV0TG
150ba0 39 6a 61 79 42 4c 5a 6e 51 75 49 45 6c 75 64 47 56 79 62 6d 56 30 49 47 68 76 62 6d 78 68 63 47 9jayBLZnQuIEludGVybmV0IGhvbmxhcG
150bc0 70 68 62 69 42 68 0a 49 47 68 30 64 48 42 7a 4f 69 38 76 64 33 64 33 4c 6d 35 6c 64 47 78 76 59 phbiBh.IGh0dHBzOi8vd3d3Lm5ldGxvY
150be0 32 73 75 62 6d 56 30 4c 32 52 76 59 33 4d 67 59 32 6c 74 5a 57 34 67 64 6d 46 6e 65 53 42 72 5a 2submV0L2RvY3MgY2ltZW4gdmFneSBrZ
150c00 58 4a 6f 5a 58 52 76 49 47 46 36 49 47 56 73 62 47 56 75 0a 62 33 4a 36 5a 58 4e 41 62 6d 56 30 XJoZXRvIGF6IGVsbGVu.b3J6ZXNAbmV0
150c20 62 47 39 6a 61 79 35 75 5a 58 51 67 5a 53 31 74 59 57 6c 73 49 47 4e 70 62 57 56 75 4c 69 42 4a bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJ
150c40 54 56 42 50 55 6c 52 42 54 6c 51 68 49 46 52 6f 5a 53 42 70 63 33 4e 31 59 57 35 6a 5a 53 42 68 TVBPUlRBTlQhIFRoZSBpc3N1YW5jZSBh
150c60 0a 62 6d 51 67 64 47 68 6c 49 48 56 7a 5a 53 42 76 5a 69 42 30 61 47 6c 7a 49 47 4e 6c 63 6e 52 .bmQgdGhlIHVzZSBvZiB0aGlzIGNlcnR
150c80 70 5a 6d 6c 6a 59 58 52 6c 49 47 6c 7a 49 48 4e 31 59 6d 70 6c 59 33 51 67 64 47 38 67 64 47 68 pZmljYXRlIGlzIHN1YmplY3QgdG8gdGh
150ca0 6c 49 45 35 6c 64 45 78 76 59 32 73 67 0a 51 31 42 54 49 47 46 32 59 57 6c 73 59 57 4a 73 5a 53 lIE5ldExvY2sg.Q1BTIGF2YWlsYWJsZS
150cc0 42 68 64 43 42 6f 64 48 52 77 63 7a 6f 76 4c 33 64 33 64 79 35 75 5a 58 52 73 62 32 4e 72 4c 6d BhdCBodHRwczovL3d3dy5uZXRsb2NrLm
150ce0 35 6c 64 43 39 6b 62 32 4e 7a 49 47 39 79 49 47 4a 35 49 47 55 74 62 57 46 70 0a 62 43 42 68 64 5ldC9kb2NzIG9yIGJ5IGUtbWFp.bCBhd
150d00 43 42 6a 63 48 4e 41 62 6d 56 30 62 47 39 6a 61 79 35 75 5a 58 51 75 4d 41 30 47 43 53 71 47 53 CBjcHNAbmV0bG9jay5uZXQuMA0GCSqGS
150d20 49 62 33 44 51 45 42 42 41 55 41 41 34 49 42 41 51 42 49 4a 45 62 33 75 6c 5a 76 2b 73 67 6f 41 Ib3DQEBBAUAA4IBAQBIJEb3ulZv+sgoA
150d40 30 42 4f 35 54 45 35 0a 61 79 5a 72 55 33 2f 62 33 39 2f 7a 63 54 30 6d 77 42 51 4f 78 6d 64 37 0BO5TE5.ayZrU3/b39/zcT0mwBQOxmd7
150d60 49 36 67 4d 63 39 30 42 75 38 62 4b 62 6a 63 35 56 64 58 48 6a 46 59 67 44 69 67 4b 44 74 49 71 I6gMc90Bu8bKbjc5VdXHjFYgDigKDtIq
150d80 70 4c 42 4a 55 73 59 34 42 2f 36 2b 43 67 6d 4d 30 5a 6a 50 0a 79 74 6f 55 4d 61 46 50 30 6a 6e pLBJUsY4B/6+CgmM0ZjP.ytoUMaFP0jn
150da0 38 44 78 45 73 51 38 50 64 71 35 50 48 56 54 35 48 66 42 67 61 41 4e 7a 7a 65 39 6a 79 66 31 4a 8DxEsQ8Pdq5PHVT5HfBgaANzze9jyf1J
150dc0 73 49 50 51 4c 58 32 6c 53 39 4f 37 34 73 69 6c 67 36 2b 4e 4a 4d 53 45 4e 31 72 55 51 51 65 4a sIPQLX2lS9O74silg6+NJMSEN1rUQQeJ
150de0 42 0a 43 57 7a 69 47 70 70 57 53 33 63 43 39 71 43 62 6d 69 65 48 36 46 55 70 63 63 4b 51 6e 30 B.CWziGppWS3cC9qCbmieH6FUpccKQn0
150e00 56 34 47 75 45 56 5a 44 33 51 44 74 69 67 64 70 2b 75 78 64 41 75 36 74 59 50 56 75 78 6b 66 31 V4GuEVZD3QDtigdp+uxdAu6tYPVuxkf1
150e20 71 62 46 46 67 42 4a 33 34 54 55 4d 64 72 0a 4b 75 5a 6f 50 4c 39 63 6f 41 6f 62 34 51 35 36 36 qbFFgBJ34TUMdr.KuZoPL9coAob4Q566
150e40 65 4b 41 77 2b 6e 70 39 76 31 73 45 5a 37 51 35 53 67 6e 4b 31 51 79 51 68 53 43 64 65 5a 4b 38 eKAw+np9v1sEZ7Q5SgnK1QyQhSCdeZK8
150e60 43 74 6d 64 57 4f 4d 6f 76 73 45 50 6f 4d 4f 6d 7a 62 77 47 4f 51 6d 49 4d 4f 4d 0a 38 43 67 48 CtmdWOMovsEPoMOmzbwGOQmIMOM.8CgH
150e80 72 54 77 58 5a 6f 69 31 2f 62 61 49 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 rTwXZoi1/baI.-----END.CERTIFICAT
150ea0 45 2d 2d 2d 2d 2d 0a 0a 58 52 61 6d 70 20 47 6c 6f 62 61 6c 20 43 41 20 52 6f 6f 74 0a 3d 3d 3d E-----..XRamp.Global.CA.Root.===
150ec0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 =================.-----BEGIN.CER
150ee0 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 4d 44 43 43 41 78 69 67 41 77 49 42 41 67 TIFICATE-----.MIIEMDCCAxigAwIBAg
150f00 49 51 55 4a 52 73 37 42 6a 71 31 5a 78 4e 31 5a 66 76 64 59 2b 67 72 54 41 4e 42 67 6b 71 68 6b IQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhk
150f20 69 47 39 77 30 42 41 51 55 46 41 44 43 42 67 6a 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 56 iG9w0BAQUFADCBgjELMAkGA1UE.BhMCV
150f40 56 4d 78 48 6a 41 63 42 67 4e 56 42 41 73 54 46 58 64 33 64 79 35 34 63 6d 46 74 63 48 4e 6c 59 VMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY
150f60 33 56 79 61 58 52 35 4c 6d 4e 76 62 54 45 6b 4d 43 49 47 41 31 55 45 43 68 4d 62 57 46 4a 68 62 3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhb
150f80 58 41 67 55 32 56 6a 0a 64 58 4a 70 64 48 6b 67 55 32 56 79 64 6d 6c 6a 5a 58 4d 67 53 57 35 6a XAgU2Vj.dXJpdHkgU2VydmljZXMgSW5j
150fa0 4d 53 30 77 4b 77 59 44 56 51 51 44 45 79 52 59 55 6d 46 74 63 43 42 48 62 47 39 69 59 57 77 67 MS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwg
150fc0 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 0a 64 58 52 6f 62 33 4a 70 64 48 6b Q2VydGlmaWNhdGlvbiBB.dXRob3JpdHk
150fe0 77 48 68 63 4e 4d 44 51 78 4d 54 41 78 4d 54 63 78 4e 44 41 30 57 68 63 4e 4d 7a 55 77 4d 54 41 wHhcNMDQxMTAxMTcxNDA0WhcNMzUwMTA
151000 78 4d 44 55 7a 4e 7a 45 35 57 6a 43 42 67 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d xMDUzNzE5WjCBgjELMAkGA1UEBhMCVVM
151020 78 0a 48 6a 41 63 42 67 4e 56 42 41 73 54 46 58 64 33 64 79 35 34 63 6d 46 74 63 48 4e 6c 59 33 x.HjAcBgNVBAsTFXd3dy54cmFtcHNlY3
151040 56 79 61 58 52 35 4c 6d 4e 76 62 54 45 6b 4d 43 49 47 41 31 55 45 43 68 4d 62 57 46 4a 68 62 58 VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbX
151060 41 67 55 32 56 6a 64 58 4a 70 64 48 6b 67 0a 55 32 56 79 64 6d 6c 6a 5a 58 4d 67 53 57 35 6a 4d AgU2VjdXJpdHkg.U2VydmljZXMgSW5jM
151080 53 30 77 4b 77 59 44 56 51 51 44 45 79 52 59 55 6d 46 74 63 43 42 48 62 47 39 69 59 57 77 67 51 S0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ
1510a0 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 0a 64 48 6b 77 2VydGlmaWNhdGlvbiBBdXRob3Jp.dHkw
1510c0 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
1510e0 67 67 45 4b 41 6f 49 42 41 51 43 59 4a 42 36 39 46 62 53 36 33 38 65 4d 70 53 65 32 4f 41 74 70 ggEKAoIBAQCYJB69FbS638eMpSe2OAtp
151100 38 37 5a 4f 71 43 77 75 0a 49 52 31 63 52 4e 38 68 58 58 34 6a 64 50 35 65 66 72 52 4b 74 36 61 87ZOqCwu.IR1cRN8hXX4jdP5efrRKt6a
151120 74 48 36 37 67 42 68 62 69 6d 31 76 5a 5a 33 52 72 58 59 43 50 4b 5a 32 47 47 39 6d 63 44 5a 68 tH67gBhbim1vZZ3RrXYCPKZ2GG9mcDZh
151140 74 64 68 41 6f 57 4f 52 6c 73 48 39 4b 6d 48 6d 66 34 4d 4d 78 0a 66 6f 41 72 74 59 7a 41 51 44 tdhAoWORlsH9KmHmf4MMx.foArtYzAQD
151160 73 52 68 74 44 4c 6f 6f 59 32 59 4b 54 56 4d 49 4a 74 32 57 37 51 44 78 49 45 4d 35 64 66 54 32 sRhtDLooY2YKTVMIJt2W7QDxIEM5dfT2
151180 46 61 38 4f 54 35 6b 61 76 6e 48 54 75 38 36 4d 2f 30 61 79 30 30 66 4f 4a 49 59 52 79 4f 38 32 Fa8OT5kavnHTu86M/0ay00fOJIYRyO82
1511a0 46 45 0a 7a 47 2b 67 53 71 6d 55 73 45 33 61 35 36 6b 30 65 6e 49 34 71 45 48 4d 50 4a 51 52 66 FE.zG+gSqmUsE3a56k0enI4qEHMPJQRf
1511c0 65 76 49 70 6f 79 33 68 73 76 4b 4d 7a 76 5a 50 54 65 4c 2b 33 6f 2b 68 69 7a 6e 63 39 63 4b 56 evIpoy3hsvKMzvZPTeL+3o+hiznc9cKV
1511e0 36 78 6b 6d 78 6e 72 39 41 38 45 43 49 71 73 0a 41 78 63 5a 5a 50 52 61 4a 53 4b 4e 4e 43 79 79 6xkmxnr9A8ECIqs.AxcZZPRaJSKNNCyy
151200 39 6d 67 64 45 6d 33 54 69 68 34 55 32 73 53 50 70 75 49 6a 68 64 56 36 44 62 31 71 34 4f 6e 73 9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons
151220 37 42 65 37 51 68 74 6e 71 69 58 74 52 59 4d 68 2f 4d 48 4a 66 4e 56 69 50 76 72 79 0a 78 53 33 7Be7QhtnqiXtRYMh/MHJfNViPvry.xS3
151240 54 2f 64 52 6c 41 67 4d 42 41 41 47 6a 67 5a 38 77 67 5a 77 77 45 77 59 4a 4b 77 59 42 42 41 47 T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAG
151260 43 4e 78 51 43 42 41 59 65 42 41 42 44 41 45 45 77 43 77 59 44 56 52 30 50 42 41 51 44 41 67 47 CNxQCBAYeBABDAEEwCwYDVR0PBAQDAgG
151280 47 4d 41 38 47 41 31 55 64 0a 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 GMA8GA1Ud.EwEB/wQFMAMBAf8wHQYDVR
1512a0 30 4f 42 42 59 45 46 4d 5a 50 6f 6a 30 47 59 34 51 4a 6e 4d 35 69 35 41 53 73 6a 56 79 31 36 62 0OBBYEFMZPoj0GY4QJnM5i5ASsjVy16b
1512c0 59 62 4d 44 59 47 41 31 55 64 48 77 51 76 4d 43 30 77 4b 36 41 70 0a 6f 43 65 47 4a 57 68 30 64 YbMDYGA1UdHwQvMC0wK6Ap.oCeGJWh0d
1512e0 48 41 36 4c 79 39 6a 63 6d 77 75 65 48 4a 68 62 58 42 7a 5a 57 4e 31 63 6d 6c 30 65 53 35 6a 62 HA6Ly9jcmwueHJhbXBzZWN1cml0eS5jb
151300 32 30 76 57 45 64 44 51 53 35 6a 63 6d 77 77 45 41 59 4a 4b 77 59 42 42 41 47 43 4e 78 55 42 42 20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBB
151320 41 4d 43 0a 41 51 45 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 AMC.AQEwDQYJKoZIhvcNAQEFBQADggEB
151340 41 4a 45 56 4f 51 4d 42 47 32 66 37 53 68 7a 35 43 6d 42 62 6f 64 70 4e 6c 32 4c 35 4a 46 4d 6e AJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn
151360 31 34 4a 6b 54 70 41 75 77 30 6b 62 4b 35 72 63 0a 2f 4b 68 34 5a 7a 58 78 48 66 41 52 76 62 64 14JkTpAuw0kbK5rc./Kh4ZzXxHfARvbd
151380 49 34 78 44 32 44 64 38 2f 30 73 6d 32 71 6c 57 6b 53 4c 6f 43 32 39 35 5a 4c 68 56 62 4f 35 30 I4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50
1513a0 57 66 55 66 58 4e 2b 70 66 54 58 59 53 4e 72 73 66 31 36 47 42 42 45 59 67 6f 79 78 74 0a 71 5a WfUfXN+pfTXYSNrsf16GBBEYgoyxt.qZ
1513c0 34 42 66 6a 38 70 7a 67 43 54 33 2f 33 4a 6b 6e 4f 4a 69 57 53 65 35 79 76 6b 48 4a 45 73 30 72 4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0r
1513e0 6e 4f 66 63 35 76 4d 5a 6e 54 35 72 37 53 48 70 44 77 43 52 52 35 58 43 4f 72 54 64 4c 61 49 52 nOfc5vMZnT5r7SHpDwCRR5XCOrTdLaIR
151400 39 4e 6d 58 6d 64 34 63 38 6e 0a 6e 78 43 62 48 49 67 4e 73 49 70 6b 51 54 47 34 44 6d 79 51 4a 9NmXmd4c8n.nxCbHIgNsIpkQTG4DmyQJ
151420 4b 53 62 58 48 47 50 75 72 74 2b 48 42 76 62 61 6f 41 50 49 62 7a 70 32 36 61 33 51 50 53 79 69 KSbXHGPurt+HBvbaoAPIbzp26a3QPSyi
151440 36 6d 78 35 4f 2b 61 47 74 41 39 61 5a 6e 75 71 43 69 6a 34 54 79 7a 0a 38 4c 49 52 6e 4d 39 38 6mx5O+aGtA9aZnuqCij4Tyz.8LIRnM98
151460 51 4f 62 64 35 30 4e 39 6f 74 67 36 74 61 6d 4e 38 6a 53 5a 78 4e 51 51 34 51 62 39 43 59 51 51 QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQ
151480 4f 2b 37 45 54 50 54 73 4a 33 78 43 77 6e 52 38 67 6f 6f 4a 79 62 51 44 4a 62 77 3d 0a 2d 2d 2d O+7ETPTsJ3xCwnR8gooJybQDJbw=.---
1514a0 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 6f 20 44 61 64 64 79 --END.CERTIFICATE-----..Go.Daddy
1514c0 20 43 6c 61 73 73 20 32 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a .Class.2.CA.===================.
1514e0 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 -----BEGIN.CERTIFICATE-----.MIIE
151500 41 44 43 43 41 75 69 67 41 77 49 42 41 67 49 42 41 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 ADCCAuigAwIBAgIBADANBgkqhkiG9w0B
151520 41 51 55 46 41 44 42 6a 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 68 4d 42 38 47 AQUFADBjMQswCQYDVQQGEwJVUzEhMB8G
151540 41 31 55 45 43 68 4d 59 0a 56 47 68 6c 49 45 64 76 49 45 52 68 5a 47 52 35 49 45 64 79 62 33 56 A1UEChMY.VGhlIEdvIERhZGR5IEdyb3V
151560 77 4c 43 42 4a 62 6d 4d 75 4d 54 45 77 4c 77 59 44 56 51 51 4c 45 79 68 48 62 79 42 45 59 57 52 wLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWR
151580 6b 65 53 42 44 62 47 46 7a 63 79 41 79 49 45 4e 6c 63 6e 52 70 0a 5a 6d 6c 6a 59 58 52 70 62 32 keSBDbGFzcyAyIENlcnRp.ZmljYXRpb2
1515a0 34 67 51 58 56 30 61 47 39 79 61 58 52 35 4d 42 34 58 44 54 41 30 4d 44 59 79 4f 54 45 33 4d 44 4gQXV0aG9yaXR5MB4XDTA0MDYyOTE3MD
1515c0 59 79 4d 46 6f 58 44 54 4d 30 4d 44 59 79 4f 54 45 33 4d 44 59 79 4d 46 6f 77 59 7a 45 4c 4d 41 YyMFoXDTM0MDYyOTE3MDYyMFowYzELMA
1515e0 6b 47 0a 41 31 55 45 42 68 4d 43 56 56 4d 78 49 54 41 66 42 67 4e 56 42 41 6f 54 47 46 52 6f 5a kG.A1UEBhMCVVMxITAfBgNVBAoTGFRoZ
151600 53 42 48 62 79 42 45 59 57 52 6b 65 53 42 48 63 6d 39 31 63 43 77 67 53 57 35 6a 4c 6a 45 78 4d SBHbyBEYWRkeSBHcm91cCwgSW5jLjExM
151620 43 38 47 41 31 55 45 43 78 4d 6f 52 32 38 67 0a 52 47 46 6b 5a 48 6b 67 51 32 78 68 63 33 4d 67 C8GA1UECxMoR28g.RGFkZHkgQ2xhc3Mg
151640 4d 69 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0
151660 65 54 43 43 41 53 41 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 0a 67 67 45 eTCCASAwDQYJKoZIhvcNAQEBBQAD.ggE
151680 4e 41 44 43 43 41 51 67 43 67 67 45 42 41 4e 36 64 31 2b 70 58 47 45 6d 68 57 2b 76 58 58 30 69 NADCCAQgCggEBAN6d1+pXGEmhW+vXX0i
1516a0 47 36 72 37 64 2f 2b 54 76 5a 78 7a 30 5a 57 69 7a 56 33 47 67 58 6e 65 37 37 5a 74 4a 36 58 43 G6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XC
1516c0 41 50 56 59 59 59 77 68 76 0a 32 76 4c 4d 30 44 39 2f 41 6c 51 69 56 42 44 59 73 6f 48 55 77 48 APVYYYwhv.2vLM0D9/AlQiVBDYsoHUwH
1516e0 55 39 53 33 2f 48 64 38 4d 2b 65 4b 73 61 41 37 55 67 61 79 39 71 4b 37 48 46 69 48 37 45 75 78 U9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux
151700 36 77 77 64 68 46 4a 32 2b 71 4e 31 6a 33 68 79 62 58 32 43 33 32 0a 71 52 65 33 48 33 49 32 54 6wwdhFJ2+qN1j3hybX2C32.qRe3H3I2T
151720 71 59 58 50 32 57 59 6b 74 73 71 62 6c 32 69 2f 6f 6a 67 43 39 35 2f 35 59 30 56 34 65 76 4c 4f qYXP2WYktsqbl2i/ojgC95/5Y0V4evLO
151740 74 58 69 45 71 49 54 4c 64 69 4f 72 31 38 53 50 61 41 49 42 51 69 32 58 4b 56 6c 4f 41 52 46 6d tXiEqITLdiOr18SPaAIBQi2XKVlOARFm
151760 52 36 6a 0a 59 47 42 30 78 55 47 6c 63 6d 49 62 59 73 55 66 62 31 38 61 51 72 34 43 55 57 57 6f R6j.YGB0xUGlcmIbYsUfb18aQr4CUWWo
151780 72 69 4d 59 61 76 78 34 41 36 6c 4e 66 34 44 44 2b 71 74 61 2f 4b 46 41 70 4d 6f 5a 46 76 36 79 riMYavx4A6lNf4DD+qta/KFApMoZFv6y
1517a0 79 4f 39 65 63 77 33 75 64 37 32 61 39 6e 6d 59 0a 76 4c 45 48 5a 36 49 56 44 64 32 67 57 4d 5a yO9ecw3ud72a9nmY.vLEHZ6IVDd2gWMZ
1517c0 45 65 77 6f 2b 59 69 68 66 75 6b 45 48 55 31 6a 50 45 58 34 34 64 4d 58 34 2f 37 56 70 6b 49 2b Eewo+YihfukEHU1jPEX44dMX4/7VpkI+
1517e0 45 64 4f 71 58 47 36 38 43 41 51 4f 6a 67 63 41 77 67 62 30 77 48 51 59 44 56 52 30 4f 0a 42 42 EdOqXG68CAQOjgcAwgb0wHQYDVR0O.BB
151800 59 45 46 4e 4c 45 73 4e 4b 52 31 45 77 52 63 62 4e 68 79 7a 32 68 2f 74 32 6f 61 74 54 6a 4d 49 YEFNLEsNKR1EwRcbNhyz2h/t2oatTjMI
151820 47 4e 42 67 4e 56 48 53 4d 45 67 59 55 77 67 59 4b 41 46 4e 4c 45 73 4e 4b 52 31 45 77 52 63 62 GNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcb
151840 4e 68 79 7a 32 68 2f 74 32 6f 0a 61 74 54 6a 6f 57 65 6b 5a 54 42 6a 4d 51 73 77 43 51 59 44 56 Nhyz2h/t2o.atTjoWekZTBjMQswCQYDV
151860 51 51 47 45 77 4a 56 55 7a 45 68 4d 42 38 47 41 31 55 45 43 68 4d 59 56 47 68 6c 49 45 64 76 49 QQGEwJVUzEhMB8GA1UEChMYVGhlIEdvI
151880 45 52 68 5a 47 52 35 49 45 64 79 62 33 56 77 4c 43 42 4a 62 6d 4d 75 0a 4d 54 45 77 4c 77 59 44 ERhZGR5IEdyb3VwLCBJbmMu.MTEwLwYD
1518a0 56 51 51 4c 45 79 68 48 62 79 42 45 59 57 52 6b 65 53 42 44 62 47 46 7a 63 79 41 79 49 45 4e 6c VQQLEyhHbyBEYWRkeSBDbGFzcyAyIENl
1518c0 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 67 67 45 41 cnRpZmljYXRpb24gQXV0aG9yaXR5ggEA
1518e0 4d 41 77 47 0a 41 31 55 64 45 77 51 46 4d 41 4d 42 41 66 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 MAwG.A1UdEwQFMAMBAf8wDQYJKoZIhvc
151900 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 44 4a 4c 38 37 4c 4b 50 70 48 38 45 73 61 68 42 34 79 NAQEFBQADggEBADJL87LKPpH8EsahB4y
151920 4f 64 36 41 7a 42 68 52 63 6b 42 34 59 39 77 69 6d 0a 50 51 6f 5a 2b 59 65 41 45 57 35 70 35 4a Od6AzBhRckB4Y9wim.PQoZ+YeAEW5p5J
151940 59 58 4d 50 38 30 6b 57 4e 79 4f 4f 37 4d 48 41 47 6a 48 5a 51 6f 70 44 48 32 65 73 52 55 31 2f YXMP80kWNyOO7MHAGjHZQopDH2esRU1/
151960 62 6c 4d 56 67 44 6f 73 7a 4f 59 74 75 55 52 58 4f 31 76 30 58 4a 4a 4c 58 56 67 67 4b 74 0a 49 blMVgDoszOYtuURXO1v0XJJLXVggKt.I
151980 33 6c 70 6a 62 69 32 54 63 37 50 54 4d 6f 7a 49 2b 67 63 69 4b 71 64 69 30 46 75 46 73 6b 67 35 3lpjbi2Tc7PTMozI+gciKqdi0FuFskg5
1519a0 59 6d 65 7a 54 76 61 63 50 64 2b 6d 53 59 67 46 46 51 6c 71 32 35 7a 68 65 61 62 49 5a 30 4b 62 YmezTvacPd+mSYgFFQlq25zheabIZ0Kb
1519c0 49 49 4f 71 50 6a 43 44 50 6f 51 0a 48 6d 79 57 37 34 63 4e 78 41 39 68 69 36 33 75 67 79 75 56 IIOqPjCDPoQ.HmyW74cNxA9hi63ugyuV
1519e0 2b 49 36 53 68 48 49 35 36 79 44 71 67 2b 32 44 7a 5a 64 75 43 4c 7a 72 54 69 61 32 63 79 76 6b +I6ShHI56yDqg+2DzZduCLzrTia2cyvk
151a00 30 2f 5a 4d 2f 69 5a 78 34 6d 45 52 64 45 72 2f 56 78 71 48 44 33 56 49 0a 4c 73 39 52 61 52 65 0/ZM/iZx4mERdEr/VxqHD3VI.Ls9RaRe
151a20 67 41 68 4a 68 6c 64 58 52 51 4c 49 51 54 4f 37 45 72 42 42 44 70 71 57 65 43 74 57 56 59 70 6f gAhJhldXRQLIQTO7ErBBDpqWeCtWVYpo
151a40 4e 7a 34 69 43 78 54 49 4d 35 43 75 66 52 65 59 4e 6e 79 69 63 73 62 6b 71 57 6c 65 74 4e 77 2b Nz4iCxTIM5CufReYNnyicsbkqWletNw+
151a60 76 48 58 2f 62 0a 76 5a 38 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d vHX/b.vZ8=.-----END.CERTIFICATE-
151a80 2d 2d 2d 2d 0a 0a 53 74 61 72 66 69 65 6c 64 20 43 6c 61 73 73 20 32 20 43 41 0a 3d 3d 3d 3d 3d ----..Starfield.Class.2.CA.=====
151aa0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 ===============.-----BEGIN.CERTI
151ac0 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 44 7a 43 43 41 76 65 67 41 77 49 42 41 67 49 42 FICATE-----.MIIEDzCCAvegAwIBAgIB
151ae0 41 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 6f 4d 51 73 77 43 51 59 44 ADANBgkqhkiG9w0BAQUFADBoMQswCQYD
151b00 56 51 51 47 45 77 4a 56 55 7a 45 6c 4d 43 4d 47 41 31 55 45 43 68 4d 63 0a 55 33 52 68 63 6d 5a VQQGEwJVUzElMCMGA1UEChMc.U3RhcmZ
151b20 70 5a 57 78 6b 49 46 52 6c 59 32 68 75 62 32 78 76 5a 32 6c 6c 63 79 77 67 53 57 35 6a 4c 6a 45 pZWxkIFRlY2hub2xvZ2llcywgSW5jLjE
151b40 79 4d 44 41 47 41 31 55 45 43 78 4d 70 55 33 52 68 63 6d 5a 70 5a 57 78 6b 49 45 4e 73 59 58 4e yMDAGA1UECxMpU3RhcmZpZWxkIENsYXN
151b60 7a 49 44 49 67 0a 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 zIDIg.Q2VydGlmaWNhdGlvbiBBdXRob3
151b80 4a 70 64 48 6b 77 48 68 63 4e 4d 44 51 77 4e 6a 49 35 4d 54 63 7a 4f 54 45 32 57 68 63 4e 4d 7a JpdHkwHhcNMDQwNjI5MTczOTE2WhcNMz
151ba0 51 77 4e 6a 49 35 4d 54 63 7a 4f 54 45 32 57 6a 42 6f 0a 4d 51 73 77 43 51 59 44 56 51 51 47 45 QwNjI5MTczOTE2WjBo.MQswCQYDVQQGE
151bc0 77 4a 56 55 7a 45 6c 4d 43 4d 47 41 31 55 45 43 68 4d 63 55 33 52 68 63 6d 5a 70 5a 57 78 6b 49 wJVUzElMCMGA1UEChMcU3RhcmZpZWxkI
151be0 46 52 6c 59 32 68 75 62 32 78 76 5a 32 6c 6c 63 79 77 67 53 57 35 6a 4c 6a 45 79 4d 44 41 47 0a FRlY2hub2xvZ2llcywgSW5jLjEyMDAG.
151c00 41 31 55 45 43 78 4d 70 55 33 52 68 63 6d 5a 70 5a 57 78 6b 49 45 4e 73 59 58 4e 7a 49 44 49 67 A1UECxMpU3RhcmZpZWxkIENsYXNzIDIg
151c20 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkw
151c40 67 67 45 67 4d 41 30 47 43 53 71 47 0a 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 51 41 ggEgMA0GCSqG.SIb3DQEBAQUAA4IBDQA
151c60 77 67 67 45 49 41 6f 49 42 41 51 43 33 4d 73 6a 2b 36 58 47 6d 42 49 57 74 44 42 46 6b 33 38 35 wggEIAoIBAQC3Msj+6XGmBIWtDBFk385
151c80 4e 37 38 67 44 47 49 63 2f 6f 61 76 37 50 4b 61 66 38 4d 4f 68 32 74 54 59 0a 62 69 74 54 6b 50 N78gDGIc/oav7PKaf8MOh2tTY.bitTkP
151ca0 73 6b 70 44 36 45 38 4a 37 6f 58 2b 7a 6c 4a 30 54 31 4b 4b 59 2f 65 39 37 67 4b 76 44 49 72 31 skpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1
151cc0 4d 76 6e 73 6f 46 41 5a 4d 65 6a 32 59 63 4f 61 64 4e 2b 6c 71 32 63 77 51 6c 5a 75 74 33 66 2b MvnsoFAZMej2YcOadN+lq2cwQlZut3f+
151ce0 64 5a 78 6b 71 5a 0a 4a 52 52 55 36 79 62 48 38 33 38 5a 31 54 42 77 6a 36 2b 77 52 69 72 2f 72 dZxkqZ.JRRU6ybH838Z1TBwj6+wRir/r
151d00 65 73 70 37 64 65 66 71 67 53 48 6f 39 54 35 69 61 55 30 58 39 74 44 6b 59 49 32 32 57 59 38 73 esp7defqgSHo9T5iaU0X9tDkYI22WY8s
151d20 62 69 35 67 76 32 63 4f 6a 34 51 79 44 76 76 42 6d 56 6d 0a 65 70 73 5a 47 44 33 2f 63 56 45 38 bi5gv2cOj4QyDvvBmVm.epsZGD3/cVE8
151d40 4d 43 35 66 76 6a 31 33 63 37 4a 64 42 6d 7a 44 49 31 61 61 4b 34 55 6d 6b 68 79 6e 41 72 50 6b MC5fvj13c7JdBmzDI1aaK4UmkhynArPk
151d60 50 77 32 76 43 48 6d 43 75 44 59 39 36 70 7a 54 4e 62 4f 38 61 63 72 31 7a 4a 33 6f 2f 57 53 4e Pw2vCHmCuDY96pzTNbO8acr1zJ3o/WSN
151d80 0a 46 34 41 7a 62 6c 35 4b 58 5a 6e 4a 48 6f 65 30 6e 52 72 41 31 57 34 54 4e 53 4e 65 33 35 74 .F4Azbl5KXZnJHoe0nRrA1W4TNSNe35t
151da0 66 50 65 2f 57 39 33 62 43 36 6a 36 37 65 41 30 63 51 6d 64 72 42 4e 6a 34 31 74 70 76 69 2f 4a fPe/W93bC6j67eA0cQmdrBNj41tpvi/J
151dc0 45 6f 41 47 72 41 67 45 44 6f 34 48 46 0a 4d 49 48 43 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 EoAGrAgEDo4HF.MIHCMB0GA1UdDgQWBB
151de0 53 2f 58 37 66 52 7a 74 30 66 68 76 52 62 56 61 7a 63 31 78 44 43 44 71 6d 49 35 7a 43 42 6b 67 S/X7fRzt0fhvRbVazc1xDCDqmI5zCBkg
151e00 59 44 56 52 30 6a 42 49 47 4b 4d 49 47 48 67 42 53 2f 58 37 66 52 7a 74 30 66 0a 68 76 52 62 56 YDVR0jBIGKMIGHgBS/X7fRzt0f.hvRbV
151e20 61 7a 63 31 78 44 43 44 71 6d 49 35 36 46 73 70 47 6f 77 61 44 45 4c 4d 41 6b 47 41 31 55 45 42 azc1xDCDqmI56FspGowaDELMAkGA1UEB
151e40 68 4d 43 56 56 4d 78 4a 54 41 6a 42 67 4e 56 42 41 6f 54 48 46 4e 30 59 58 4a 6d 61 57 56 73 5a hMCVVMxJTAjBgNVBAoTHFN0YXJmaWVsZ
151e60 43 42 55 5a 57 4e 6f 0a 62 6d 39 73 62 32 64 70 5a 58 4d 73 49 45 6c 75 59 79 34 78 4d 6a 41 77 CBUZWNo.bm9sb2dpZXMsIEluYy4xMjAw
151e80 42 67 4e 56 42 41 73 54 4b 56 4e 30 59 58 4a 6d 61 57 56 73 5a 43 42 44 62 47 46 7a 63 79 41 79 BgNVBAsTKVN0YXJmaWVsZCBDbGFzcyAy
151ea0 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 0a 51 58 56 30 61 47 39 79 61 58 52 IENlcnRpZmljYXRpb24g.QXV0aG9yaXR
151ec0 35 67 67 45 41 4d 41 77 47 41 31 55 64 45 77 51 46 4d 41 4d 42 41 66 38 77 44 51 59 4a 4b 6f 5a 5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZ
151ee0 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 41 57 64 50 34 69 64 30 63 6b 61 56 61 47 IhvcNAQEFBQADggEBAAWdP4id0ckaVaG
151f00 73 0a 61 66 50 7a 57 64 71 62 41 59 63 61 54 31 65 70 6f 58 6b 4a 4b 74 76 33 4c 37 49 65 7a 4d s.afPzWdqbAYcaT1epoXkJKtv3L7IezM
151f20 64 65 61 74 69 44 68 36 47 58 37 30 6b 31 50 6e 63 47 51 56 68 69 76 34 35 59 75 41 70 6e 50 2b deatiDh6GX70k1PncGQVhiv45YuApnP+
151f40 79 7a 33 53 46 6d 48 38 6c 55 2b 6e 4c 4d 0a 50 55 78 41 32 49 47 76 64 35 36 44 65 72 75 69 78 yz3SFmH8lU+nLM.PUxA2IGvd56Deruix
151f60 2f 55 30 46 34 37 5a 45 55 44 30 2f 43 77 71 54 52 56 2f 70 32 4a 64 4c 69 58 54 41 41 73 67 47 /U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgG
151f80 68 31 6f 2b 52 65 34 39 4c 32 4c 37 53 68 5a 33 55 30 57 69 78 65 44 79 4c 4a 6c 0a 78 79 31 36 h1o+Re49L2L7ShZ3U0WixeDyLJl.xy16
151fa0 70 61 71 38 55 34 5a 74 33 56 65 6b 79 76 67 67 51 51 74 6f 38 50 54 37 64 4c 35 57 58 58 70 35 paq8U4Zt3VekyvggQQto8PT7dL5WXXp5
151fc0 39 66 6b 64 68 65 4d 74 6c 62 37 31 63 5a 42 44 7a 49 30 66 6d 67 41 4b 68 79 6e 70 56 53 4a 59 9fkdheMtlb71cZBDzI0fmgAKhynpVSJY
151fe0 41 43 50 71 34 78 4a 44 0a 4b 56 74 48 43 4e 32 4d 51 57 70 6c 42 71 6a 6c 49 61 70 42 74 4a 55 ACPq4xJD.KVtHCN2MQWplBqjlIapBtJU
152000 68 6c 62 6c 39 30 54 53 72 45 39 61 74 76 4e 7a 69 50 54 6e 4e 76 54 35 31 63 4b 45 59 57 51 50 hlbl90TSrE9atvNziPTnNvT51cKEYWQP
152020 4a 49 72 53 50 6e 4e 56 65 4b 74 65 6c 74 74 51 4b 62 66 69 33 0a 51 42 46 47 6d 68 39 35 44 6d JIrSPnNVeKtelttQKbfi3.QBFGmh95Dm
152040 4b 2f 44 35 66 73 34 43 38 66 46 35 51 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 K/D5fs4C8fF5Q=.-----END.CERTIFIC
152060 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 74 61 72 74 43 6f 6d 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e ATE-----..StartCom.Certification
152080 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .Authority.=====================
1520a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 ===========.-----BEGIN.CERTIFICA
1520c0 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 48 79 54 43 43 42 62 47 67 41 77 49 42 41 67 49 42 41 54 41 4e TE-----.MIIHyTCCBbGgAwIBAgIBATAN
1520e0 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 39 4d 51 73 77 43 51 59 44 56 51 51 47 BgkqhkiG9w0BAQUFADB9MQswCQYDVQQG
152100 45 77 4a 4a 54 44 45 57 4d 42 51 47 41 31 55 45 43 68 4d 4e 0a 55 33 52 68 63 6e 52 44 62 32 30 EwJJTDEWMBQGA1UEChMN.U3RhcnRDb20
152120 67 54 48 52 6b 4c 6a 45 72 4d 43 6b 47 41 31 55 45 43 78 4d 69 55 32 56 6a 64 58 4a 6c 49 45 52 gTHRkLjErMCkGA1UECxMiU2VjdXJlIER
152140 70 5a 32 6c 30 59 57 77 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 55 67 55 32 6c 6e 62 6d 6c pZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbml
152160 75 0a 5a 7a 45 70 4d 43 63 47 41 31 55 45 41 78 4d 67 55 33 52 68 63 6e 52 44 62 32 30 67 51 32 u.ZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2
152180 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 48 68 VydGlmaWNhdGlvbiBBdXRob3JpdHkwHh
1521a0 63 4e 4d 44 59 77 4f 54 45 33 4d 54 6b 30 0a 4e 6a 4d 32 57 68 63 4e 4d 7a 59 77 4f 54 45 33 4d cNMDYwOTE3MTk0.NjM2WhcNMzYwOTE3M
1521c0 54 6b 30 4e 6a 4d 32 57 6a 42 39 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4a 54 44 45 57 4d Tk0NjM2WjB9MQswCQYDVQQGEwJJTDEWM
1521e0 42 51 47 41 31 55 45 43 68 4d 4e 55 33 52 68 63 6e 52 44 62 32 30 67 54 48 52 6b 0a 4c 6a 45 72 BQGA1UEChMNU3RhcnRDb20gTHRk.LjEr
152200 4d 43 6b 47 41 31 55 45 43 78 4d 69 55 32 56 6a 64 58 4a 6c 49 45 52 70 5a 32 6c 30 59 57 77 67 MCkGA1UECxMiU2VjdXJlIERpZ2l0YWwg
152220 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 55 67 55 32 6c 6e 62 6d 6c 75 5a 7a 45 70 4d 43 63 47 Q2VydGlmaWNhdGUgU2lnbmluZzEpMCcG
152240 41 31 55 45 41 78 4d 67 0a 55 33 52 68 63 6e 52 44 62 32 30 67 51 32 56 79 64 47 6c 6d 61 57 4e A1UEAxMg.U3RhcnRDb20gQ2VydGlmaWN
152260 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 67 67 49 69 4d 41 30 47 43 53 71 hdGlvbiBBdXRob3JpdHkwggIiMA0GCSq
152280 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 0a 67 67 49 4b 41 6f 49 43 41 51 GSIb3DQEBAQUAA4ICDwAw.ggIKAoICAQ
1522a0 44 42 69 4e 73 4a 76 47 78 47 66 48 69 66 6c 58 75 31 4d 35 44 79 63 6d 4c 57 77 54 59 67 49 69 DBiNsJvGxGfHiflXu1M5DycmLWwTYgIi
1522c0 52 65 7a 75 6c 33 38 6b 4d 4b 6f 67 5a 6b 70 4d 79 4f 4e 76 67 34 35 69 50 77 62 6d 32 78 50 4e Rezul38kMKogZkpMyONvg45iPwbm2xPN
1522e0 31 79 0a 6f 34 55 63 6f 64 4d 39 74 44 4d 72 30 79 2b 76 2f 75 71 77 51 56 6c 6e 74 73 51 47 66 1y.o4UcodM9tDMr0y+v/uqwQVlntsQGf
152300 51 71 65 64 49 58 57 65 55 79 41 4e 33 72 66 4f 51 56 53 57 66 66 30 47 30 5a 44 70 4e 4b 46 68 QqedIXWeUyAN3rfOQVSWff0G0ZDpNKFh
152320 64 4c 44 63 66 4e 31 59 6a 53 36 4c 49 70 2f 0a 48 6f 2f 75 37 54 54 51 45 63 65 57 7a 56 49 39 dLDcfN1YjS6LIp/.Ho/u7TTQEceWzVI9
152340 75 6a 50 57 33 55 33 65 43 7a 74 4b 53 35 2f 43 4a 69 2f 36 74 52 59 63 63 6a 56 33 79 6a 78 64 ujPW3U3eCztKS5/CJi/6tRYccjV3yjxd
152360 35 73 72 68 4a 6f 73 61 4e 6e 5a 63 41 64 74 30 46 43 58 2b 37 62 57 67 69 41 2f 64 0a 65 4d 6f 5srhJosaNnZcAdt0FCX+7bWgiA/d.eMo
152380 74 48 77 65 58 4d 41 45 74 63 6e 6e 36 52 74 59 54 4b 71 69 35 70 71 75 44 53 52 33 6c 38 75 2f tHweXMAEtcnn6RtYTKqi5pquDSR3l8u/
1523a0 64 35 41 47 4f 47 41 71 50 59 31 4d 57 68 57 4b 70 44 68 6b 36 7a 4c 56 6d 70 73 4a 72 64 41 66 d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAf
1523c0 6b 4b 2b 46 32 50 72 52 74 0a 32 50 5a 45 34 58 4e 69 48 7a 76 45 76 71 42 54 56 69 56 73 55 51 kK+F2PrRt.2PZE4XNiHzvEvqBTViVsUQ
1523e0 6e 33 71 71 76 4b 76 33 62 39 62 5a 76 7a 6e 64 75 2f 50 57 61 38 44 46 61 71 72 35 68 49 6c 54 n3qqvKv3b9bZvzndu/PWa8DFaqr5hIlT
152400 70 4c 33 36 64 59 55 4e 6b 34 64 61 6c 62 36 6b 4d 4d 41 76 2b 5a 0a 36 2b 68 73 54 58 42 62 4b pL36dYUNk4dalb6kMMAv+Z.6+hsTXBbK
152420 57 57 63 33 61 70 64 7a 4b 38 42 4d 65 77 4d 36 39 4b 4e 36 4f 71 63 65 2b 5a 75 39 79 64 6d 44 WWc3apdzK8BMewM69KN6Oqce+Zu9ydmD
152440 42 70 49 31 32 35 43 34 7a 2f 65 49 54 35 37 34 51 31 77 2b 32 4f 71 71 47 77 61 56 4c 52 63 4a BpI125C4z/eIT574Q1w+2OqqGwaVLRcJ
152460 58 72 4a 0a 6f 73 6d 4c 46 71 61 37 4c 48 34 58 58 67 56 4e 57 47 34 53 48 51 48 75 45 68 41 4e XrJ.osmLFqa7LH4XXgVNWG4SHQHuEhAN
152480 78 6a 4a 2f 47 50 2f 38 39 50 72 4e 62 70 48 6f 4e 6b 6d 2b 47 6b 68 70 69 38 4b 57 54 52 6f 53 xjJ/GP/89PrNbpHoNkm+Gkhpi8KWTRoS
1524a0 73 6d 6b 58 77 51 71 51 31 76 70 35 49 6b 69 2f 0a 75 6e 74 70 2b 48 44 48 2b 6e 6f 33 32 4e 67 smkXwQqQ1vp5Iki/.untp+HDH+no32Ng
1524c0 4e 30 6e 5a 50 56 2f 2b 51 74 2b 4f 52 30 74 33 76 77 6d 43 33 5a 7a 72 64 2f 71 71 63 38 4e 53 N0nZPV/+Qt+OR0t3vwmC3Zzrd/qqc8NS
1524e0 4c 66 33 49 69 7a 73 61 66 6c 37 62 34 72 34 71 67 45 4b 6a 5a 2b 78 6a 47 74 72 56 63 0a 55 6a Lf3Iizsafl7b4r4qgEKjZ+xjGtrVc.Uj
152500 79 4a 74 68 6b 71 63 77 45 4b 44 77 4f 7a 45 6d 44 79 65 69 2b 42 32 36 4e 75 2f 79 59 77 6c 2f yJthkqcwEKDwOzEmDyei+B26Nu/yYwl/
152520 57 4c 33 59 6c 58 74 71 30 39 73 36 38 72 78 62 64 32 41 76 43 6c 31 69 75 61 68 68 51 71 63 76 WL3YlXtq09s68rxbd2AvCl1iuahhQqcv
152540 62 6a 4d 34 78 64 43 55 73 54 0a 33 37 75 4d 64 42 4e 53 53 77 49 44 41 51 41 42 6f 34 49 43 55 bjM4xdCUsT.37uMdBNSSwIDAQABo4ICU
152560 6a 43 43 41 6b 34 77 44 41 59 44 56 52 30 54 42 41 55 77 41 77 45 42 2f 7a 41 4c 42 67 4e 56 48 jCCAk4wDAYDVR0TBAUwAwEB/zALBgNVH
152580 51 38 45 42 41 4d 43 41 61 34 77 48 51 59 44 56 52 30 4f 42 42 59 45 0a 46 45 34 4c 37 78 71 6b Q8EBAMCAa4wHQYDVR0OBBYE.FE4L7xqk
1525a0 51 46 75 6c 46 32 6d 48 4d 4d 6f 30 61 45 50 51 51 61 37 79 4d 47 51 47 41 31 55 64 48 77 52 64 QFulF2mHMMo0aEPQQa7yMGQGA1UdHwRd
1525c0 4d 46 73 77 4c 4b 41 71 6f 43 69 47 4a 6d 68 30 64 48 41 36 4c 79 39 6a 5a 58 4a 30 4c 6e 4e 30 MFswLKAqoCiGJmh0dHA6Ly9jZXJ0LnN0
1525e0 59 58 4a 30 0a 59 32 39 74 4c 6d 39 79 5a 79 39 7a 5a 6e 4e 6a 59 53 31 6a 63 6d 77 75 59 33 4a YXJ0.Y29tLm9yZy9zZnNjYS1jcmwuY3J
152600 73 4d 43 75 67 4b 61 41 6e 68 69 56 6f 64 48 52 77 4f 69 38 76 59 33 4a 73 4c 6e 4e 30 59 58 4a sMCugKaAnhiVodHRwOi8vY3JsLnN0YXJ
152620 30 59 32 39 74 4c 6d 39 79 5a 79 39 7a 5a 6e 4e 6a 0a 59 53 31 6a 63 6d 77 75 59 33 4a 73 4d 49 0Y29tLm9yZy9zZnNj.YS1jcmwuY3JsMI
152640 49 42 58 51 59 44 56 52 30 67 42 49 49 42 56 44 43 43 41 56 41 77 67 67 46 4d 42 67 73 72 42 67 IBXQYDVR0gBIIBVDCCAVAwggFMBgsrBg
152660 45 45 41 59 47 31 4e 77 45 42 41 54 43 43 41 54 73 77 4c 77 59 49 4b 77 59 42 42 51 55 48 0a 41 EEAYG1NwEBATCCATswLwYIKwYBBQUH.A
152680 67 45 57 49 32 68 30 64 48 41 36 4c 79 39 6a 5a 58 4a 30 4c 6e 4e 30 59 58 4a 30 59 32 39 74 4c gEWI2h0dHA6Ly9jZXJ0LnN0YXJ0Y29tL
1526a0 6d 39 79 5a 79 39 77 62 32 78 70 59 33 6b 75 63 47 52 6d 4d 44 55 47 43 43 73 47 41 51 55 46 42 m9yZy9wb2xpY3kucGRmMDUGCCsGAQUFB
1526c0 77 49 42 46 69 6c 6f 64 48 52 77 0a 4f 69 38 76 59 32 56 79 64 43 35 7a 64 47 46 79 64 47 4e 76 wIBFilodHRw.Oi8vY2VydC5zdGFydGNv
1526e0 62 53 35 76 63 6d 63 76 61 57 35 30 5a 58 4a 74 5a 57 52 70 59 58 52 6c 4c 6e 42 6b 5a 6a 43 42 bS5vcmcvaW50ZXJtZWRpYXRlLnBkZjCB
152700 30 41 59 49 4b 77 59 42 42 51 55 48 41 67 49 77 67 63 4d 77 4a 78 59 67 0a 55 33 52 68 63 6e 51 0AYIKwYBBQUHAgIwgcMwJxYg.U3RhcnQ
152720 67 51 32 39 74 62 57 56 79 59 32 6c 68 62 43 41 6f 55 33 52 68 63 6e 52 44 62 32 30 70 49 45 78 gQ29tbWVyY2lhbCAoU3RhcnRDb20pIEx
152740 30 5a 43 34 77 41 77 49 42 41 52 71 42 6c 30 78 70 62 57 6c 30 5a 57 51 67 54 47 6c 68 59 6d 6c 0ZC4wAwIBARqBl0xpbWl0ZWQgTGlhYml
152760 73 61 58 52 35 0a 4c 43 42 79 5a 57 46 6b 49 48 52 6f 5a 53 42 7a 5a 57 4e 30 61 57 39 75 49 43 saXR5.LCByZWFkIHRoZSBzZWN0aW9uIC
152780 70 4d 5a 57 64 68 62 43 42 4d 61 57 31 70 64 47 46 30 61 57 39 75 63 79 6f 67 62 32 59 67 64 47 pMZWdhbCBMaW1pdGF0aW9ucyogb2YgdG
1527a0 68 6c 49 46 4e 30 59 58 4a 30 51 32 39 74 49 45 4e 6c 0a 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 hlIFN0YXJ0Q29tIENl.cnRpZmljYXRpb
1527c0 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 49 46 42 76 62 47 6c 6a 65 53 42 68 64 6d 46 70 62 24gQXV0aG9yaXR5IFBvbGljeSBhdmFpb
1527e0 47 46 69 62 47 55 67 59 58 51 67 61 48 52 30 63 44 6f 76 4c 32 4e 6c 63 6e 51 75 63 33 52 68 0a GFibGUgYXQgaHR0cDovL2NlcnQuc3Rh.
152800 63 6e 52 6a 62 32 30 75 62 33 4a 6e 4c 33 42 76 62 47 6c 6a 65 53 35 77 5a 47 59 77 45 51 59 4a cnRjb20ub3JnL3BvbGljeS5wZGYwEQYJ
152820 59 49 5a 49 41 59 62 34 51 67 45 42 42 41 51 44 41 67 41 48 4d 44 67 47 43 57 43 47 53 41 47 47 YIZIAYb4QgEBBAQDAgAHMDgGCWCGSAGG
152840 2b 45 49 42 44 51 51 72 46 69 6c 54 0a 64 47 46 79 64 45 4e 76 62 53 42 47 63 6d 56 6c 49 46 4e +EIBDQQrFilT.dGFydENvbSBGcmVlIFN
152860 54 54 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c TTCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml
152880 30 65 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 0a 41 67 45 41 46 6d 0eTANBgkqhkiG9w0BAQUFAAOC.AgEAFm
1528a0 79 5a 39 47 59 4d 4e 50 58 51 68 56 35 39 43 75 7a 61 45 45 34 34 48 46 37 66 70 69 55 46 53 35 yZ9GYMNPXQhV59CuzaEE44HF7fpiUFS5
1528c0 45 79 77 65 67 37 38 54 33 64 52 41 6c 62 42 30 6d 4b 4b 63 74 6d 41 72 65 78 6d 76 63 6c 6d 41 Eyweg78T3dRAlbB0mKKctmArexmvclmA
1528e0 6b 38 6a 68 76 68 0a 33 54 61 48 4b 30 75 37 61 4e 4d 35 5a 6a 32 67 4a 73 66 79 4f 5a 45 64 55 k8jhvh.3TaHK0u7aNM5Zj2gJsfyOZEdU
152900 61 75 43 65 33 37 56 7a 6c 72 6b 34 67 4e 58 63 47 6d 58 43 50 6c 65 57 4b 59 4b 33 34 77 47 6d auCe37Vzlrk4gNXcGmXCPleWKYK34wGm
152920 6b 55 57 46 6a 67 4b 58 6c 66 32 59 73 64 36 41 67 58 6d 0a 76 42 36 31 38 70 37 30 71 53 6d 44 kUWFjgKXlf2Ysd6AgXm.vB618p70qSmD
152940 2b 4c 49 55 34 32 34 6f 68 30 54 44 6b 42 72 65 4f 4b 6b 38 72 45 4e 4e 5a 45 58 4f 33 53 69 70 +LIU424oh0TDkBreOKk8rENNZEXO3Sip
152960 58 50 4a 7a 65 77 54 34 46 2b 69 72 73 66 4d 75 58 47 52 75 63 7a 45 36 45 72 69 38 73 78 48 6b XPJzewT4F+irsfMuXGRuczE6Eri8sxHk
152980 0a 66 59 2b 42 55 5a 6f 37 6a 59 6e 30 54 5a 4e 6d 65 7a 77 44 37 64 4f 61 48 5a 72 7a 5a 56 44 .fY+BUZo7jYn0TZNmezwD7dOaHZrzZVD
1529a0 31 6f 4e 42 31 6e 79 2b 76 38 4f 71 43 51 35 6a 34 61 5a 79 4a 65 63 52 44 6a 6b 5a 79 34 32 51 1oNB1ny+v8OqCQ5j4aZyJecRDjkZy42Q
1529c0 32 45 71 2f 33 4a 52 34 34 69 5a 42 33 0a 66 73 4e 72 61 72 6e 44 79 30 52 4c 72 48 69 51 69 2b 2Eq/3JR44iZB3.fsNrarnDy0RLrHiQi+
1529e0 66 48 4c 42 35 4c 45 55 54 49 4e 46 49 6e 7a 51 70 64 6e 34 58 42 69 64 55 61 65 50 4b 56 45 46 fHLB5LEUTINFInzQpdn4XBidUaePKVEF
152a00 4d 79 33 59 43 45 5a 6e 58 5a 74 57 67 6f 2b 32 45 75 76 6f 53 6f 4f 4d 43 5a 0a 45 6f 61 6c 48 My3YCEZnXZtWgo+2EuvoSoOMCZ.EoalH
152a20 6d 64 6b 72 51 59 75 4c 36 6c 77 68 63 65 57 44 33 79 4a 5a 66 57 4f 51 31 51 4f 71 39 32 6c 67 mdkrQYuL6lwhceWD3yJZfWOQ1QOq92lg
152a40 44 6d 55 59 4d 41 30 79 5a 5a 77 4c 4b 4d 53 39 52 39 49 65 37 30 63 66 6d 75 33 6e 5a 44 30 49 DmUYMA0yZZwLKMS9R9Ie70cfmu3nZD0I
152a60 6a 75 75 2b 50 77 71 0a 79 76 71 43 55 71 44 76 72 30 74 56 6b 2b 76 42 74 66 41 69 69 36 77 30 juu+Pwq.yvqCUqDvr0tVk+vBtfAii6w0
152a80 54 69 59 69 42 4b 47 48 4c 48 56 4b 74 2b 56 39 45 39 65 34 44 47 54 41 4e 74 4c 4a 4c 34 59 53 TiYiBKGHLHVKt+V9E9e4DGTANtLJL4YS
152aa0 6a 43 4d 4a 77 52 75 43 4f 33 4e 4a 6f 32 70 58 68 35 54 6c 0a 31 6e 6a 46 6d 55 4e 6a 34 30 33 jCMJwRuCO3NJo2pXh5Tl.1njFmUNj403
152ac0 67 64 79 33 68 5a 5a 6c 79 61 51 51 61 52 77 6e 6d 44 77 46 57 4a 50 73 66 76 77 35 35 71 56 67 gdy3hZZlyaQQaRwnmDwFWJPsfvw55qVg
152ae0 75 75 63 51 4a 41 58 36 56 75 6d 30 41 42 6a 36 79 36 6b 6f 51 4f 64 6a 51 4b 2f 57 2f 37 48 57 uucQJAX6Vum0ABj6y6koQOdjQK/W/7HW
152b00 2f 0a 6c 77 4c 46 43 52 73 49 33 46 55 33 34 6f 48 37 4e 34 52 44 59 69 44 4b 35 31 5a 4c 5a 65 /.lwLFCRsI3FU34oH7N4RDYiDK51ZLZe
152b20 72 2b 62 4d 45 6b 6b 79 53 68 4e 4f 73 46 2f 35 6f 69 72 70 74 39 50 2f 46 6c 55 51 71 6d 4d 47 r+bMEkkyShNOsF/5oirpt9P/FlUQqmMG
152b40 71 7a 39 49 67 63 67 41 33 38 63 6f 72 6f 0a 67 31 34 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 qz9IgcgA38coro.g14=.-----END.CER
152b60 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 61 69 77 61 6e 20 47 52 43 41 0a 3d 3d 3d 3d 3d TIFICATE-----..Taiwan.GRCA.=====
152b80 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d ======.-----BEGIN.CERTIFICATE---
152ba0 2d 2d 0a 4d 49 49 46 63 6a 43 43 41 31 71 67 41 77 49 42 41 67 49 51 48 35 31 5a 57 74 63 76 77 --.MIIFcjCCA1qgAwIBAgIQH51ZWtcvw
152bc0 67 5a 45 70 59 41 49 61 65 4e 65 39 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 gZEpYAIaeNe9jANBgkqhkiG9w0BAQUFA
152be0 44 41 2f 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 55 56 7a 45 77 4d 43 34 47 41 31 55 45 DA/MQswCQYDVQQG.EwJUVzEwMC4GA1UE
152c00 43 67 77 6e 52 32 39 32 5a 58 4a 75 62 57 56 75 64 43 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 CgwnR292ZXJubWVudCBSb290IENlcnRp
152c20 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 4d 42 34 58 0a 44 54 41 ZmljYXRpb24gQXV0aG9yaXR5MB4X.DTA
152c40 79 4d 54 49 77 4e 54 45 7a 4d 6a 4d 7a 4d 31 6f 58 44 54 4d 79 4d 54 49 77 4e 54 45 7a 4d 6a 4d yMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjM
152c60 7a 4d 31 6f 77 50 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 46 63 78 4d 44 41 75 42 67 4e zM1owPzELMAkGA1UEBhMCVFcxMDAuBgN
152c80 56 42 41 6f 4d 4a 30 64 76 0a 64 6d 56 79 62 6d 31 6c 62 6e 51 67 55 6d 39 76 64 43 42 44 5a 58 VBAoMJ0dv.dmVybm1lbnQgUm9vdCBDZX
152ca0 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 54 43 43 41 69 J0aWZpY2F0aW9uIEF1dGhvcml0eTCCAi
152cc0 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 0a 67 67 49 50 41 44 43 43 41 IwDQYJKoZIhvcNAQEBBQAD.ggIPADCCA
152ce0 67 6f 43 67 67 49 42 41 4a 6f 6c 75 4f 7a 4d 6f 6e 57 6f 65 2f 66 4f 57 31 6d 4b 79 64 47 47 45 goCggIBAJoluOzMonWoe/fOW1mKydGGE
152d00 67 68 55 37 4a 7a 79 35 30 62 32 69 50 4e 38 36 61 58 66 54 45 63 32 70 42 73 42 48 48 38 65 56 ghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV
152d20 34 71 4e 0a 77 38 58 52 49 65 50 61 4a 44 39 49 4b 2f 75 66 4c 71 47 55 35 79 77 63 6b 39 47 2f 4qN.w8XRIePaJD9IK/ufLqGU5ywck9G/
152d40 47 77 47 48 55 35 6e 4f 70 2f 55 4b 49 58 5a 33 2f 36 6d 33 78 6e 4f 55 54 30 62 33 45 45 6b 33 GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3
152d60 2b 71 68 5a 53 56 31 71 67 51 64 57 38 6f 72 35 0a 42 74 44 33 63 43 4a 4e 74 4c 64 42 75 54 4b +qhZSV1qgQdW8or5.BtD3cCJNtLdBuTK
152d80 34 73 66 43 78 77 35 77 2f 63 50 31 54 33 59 47 71 32 47 4e 34 39 74 68 54 62 71 47 73 61 6f 51 4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQ
152da0 6b 63 6c 53 47 78 74 4b 79 79 68 77 4f 65 59 48 57 74 58 42 69 43 41 45 75 54 6b 38 4f 0a 31 52 kclSGxtKyyhwOeYHWtXBiCAEuTk8O.1R
152dc0 47 76 71 61 2f 6c 6d 72 2f 63 7a 49 64 74 4a 75 54 4a 56 36 4c 37 6c 76 6e 4d 34 54 39 54 6a 47 Gvqa/lmr/czIdtJuTJV6L7lvnM4T9TjG
152de0 78 4d 66 70 74 54 43 41 74 73 46 2f 74 6e 79 4d 4b 74 73 63 32 41 74 4a 66 63 64 67 45 57 46 65 xMfptTCAtsF/tnyMKtsc2AtJfcdgEWFe
152e00 6c 71 31 36 54 68 65 45 66 4f 0a 68 74 58 37 4d 66 50 36 4d 62 34 30 71 69 6a 37 63 45 77 64 53 lq16TheEfO.htX7MfP6Mb40qij7cEwdS
152e20 63 65 76 4c 4a 31 74 5a 71 61 32 6a 57 52 2b 74 53 42 71 6e 54 75 42 74 6f 39 41 41 47 64 4c 69 cevLJ1tZqa2jWR+tSBqnTuBto9AAGdLi
152e40 59 61 34 7a 47 58 2b 46 56 50 70 42 4d 48 57 58 78 31 45 31 77 6f 76 0a 4a 35 70 47 66 61 45 4e Ya4zGX+FVPpBMHWXx1E1wov.J5pGfaEN
152e60 64 61 31 55 68 68 58 63 53 54 76 78 6c 73 34 50 6d 36 44 73 6f 33 70 64 76 74 55 71 64 55 4c 6c da1UhhXcSTvxls4Pm6Dso3pdvtUqdULl
152e80 65 39 36 6c 74 71 71 76 4b 4b 79 73 6b 4b 77 34 74 39 56 6f 4e 53 5a 36 33 50 63 37 38 2f 31 46 e96ltqqvKKyskKw4t9VoNSZ63Pc78/1F
152ea0 6d 39 47 37 0a 51 33 68 75 62 2f 46 43 56 47 71 59 38 41 32 74 6c 2b 6c 53 58 75 6e 56 61 6e 4c m9G7.Q3hub/FCVGqY8A2tl+lSXunVanL
152ec0 65 61 76 63 62 59 42 54 30 70 65 53 32 63 57 65 71 48 2b 72 69 54 63 46 43 51 50 35 6e 52 68 63 eavcbYBT0peS2cWeqH+riTcFCQP5nRhc
152ee0 34 4c 30 63 2f 63 5a 79 75 35 53 48 4b 59 53 31 74 0a 42 36 69 45 66 43 33 75 55 53 58 78 59 35 4L0c/cZyu5SHKYS1t.B6iEfC3uUSXxY5
152f00 43 65 2f 65 46 58 69 47 76 76 69 69 4e 74 73 65 61 39 50 36 33 52 50 5a 59 4c 68 59 33 4e 61 79 Ce/eFXiGvviiNtsea9P63RPZYLhY3Nay
152f20 65 37 74 77 57 62 37 4c 75 52 71 51 6f 48 45 67 4b 58 54 69 43 51 38 50 38 4e 48 75 4a 42 0a 4f e7twWb7LuRqQoHEgKXTiCQ8P8NHuJB.O
152f40 39 4e 41 4f 75 65 4e 58 64 70 6d 35 41 4b 77 42 31 4b 59 58 41 36 4f 4d 35 7a 43 70 70 58 37 56 9NAOueNXdpm5AKwB1KYXA6OM5zCppX7V
152f60 52 6c 75 54 49 36 75 53 77 2b 39 77 54 68 4e 58 6f 2b 45 48 57 62 4e 78 57 43 57 74 46 4a 61 42 RluTI6uSw+9wThNXo+EHWbNxWCWtFJaB
152f80 59 6d 4f 6c 58 71 59 77 5a 45 38 0a 6c 53 4f 79 44 76 52 35 74 4d 6c 38 77 55 6f 68 41 67 4d 42 YmOlXqYwZE8.lSOyDvR5tMl8wUohAgMB
152fa0 41 41 47 6a 61 6a 42 6f 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 54 4d 7a 4f 2f 4d 4b 57 43 6b AAGjajBoMB0GA1UdDgQWBBTMzO/MKWCk
152fc0 4f 37 47 53 74 6a 7a 36 4d 6d 4b 50 72 43 55 56 4f 7a 41 4d 42 67 4e 56 0a 48 52 4d 45 42 54 41 O7GStjz6MmKPrCUVOzAMBgNV.HRMEBTA
152fe0 44 41 51 48 2f 4d 44 6b 47 42 47 63 71 42 77 41 45 4d 54 41 76 4d 43 30 43 41 51 41 77 43 51 59 DAQH/MDkGBGcqBwAEMTAvMC0CAQAwCQY
153000 46 4b 77 34 44 41 68 6f 46 41 44 41 48 42 67 56 6e 4b 67 4d 41 41 41 51 55 41 35 76 77 49 68 50 FKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP
153020 2f 6c 53 67 32 0a 30 39 79 65 77 44 4c 37 4d 54 71 4b 55 57 55 77 44 51 59 4a 4b 6f 5a 49 68 76 /lSg2.09yewDL7MTqKUWUwDQYJKoZIhv
153040 63 4e 41 51 45 46 42 51 41 44 67 67 49 42 41 45 43 41 53 76 6f 6d 79 63 35 65 4d 4e 31 50 68 6e cNAQEFBQADggIBAECASvomyc5eMN1Phn
153060 52 32 57 50 57 75 73 34 4d 7a 65 4b 52 36 64 42 63 5a 0a 54 75 6c 53 74 62 6e 67 43 6e 52 69 71 R2WPWus4MzeKR6dBcZ.TulStbngCnRiq
153080 6d 6a 4b 65 4b 42 4d 6d 6f 34 73 49 79 37 56 61 68 49 6b 76 39 52 6f 30 34 72 51 32 4a 79 66 74 mjKeKBMmo4sIy7VahIkv9Ro04rQ2Jyft
1530a0 42 38 4d 33 6a 68 2b 56 7a 6a 38 6a 65 4a 50 58 67 79 66 71 7a 76 53 2f 33 57 58 79 36 54 6a 0a B8M3jh+Vzj8jeJPXgyfqzvS/3WXy6Tj.
1530c0 5a 77 6a 2f 35 63 41 57 74 55 67 42 66 65 6e 35 43 76 38 62 35 57 70 70 76 33 67 68 71 4d 4b 6e Zwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKn
1530e0 49 36 6d 47 71 33 5a 57 36 41 34 4d 39 68 50 64 4b 6d 61 4b 5a 45 6b 39 47 68 69 48 6b 41 53 66 I6mGq3ZW6A4M9hPdKmaKZEk9GhiHkASf
153100 51 6c 4b 33 54 38 76 2b 52 30 46 32 0a 4e 65 2f 2f 41 48 59 32 52 54 4b 62 78 6b 61 46 58 65 49 QlK3T8v+R0F2.Ne//AHY2RTKbxkaFXeI
153120 6b 73 42 37 6a 53 4a 61 59 56 30 65 55 56 58 6f 50 51 62 46 45 4a 50 50 42 2f 68 70 72 76 34 6a ksB7jSJaYV0eUVXoPQbFEJPPB/hprv4j
153140 39 77 61 62 61 6b 32 42 65 67 55 71 5a 49 4a 78 49 5a 68 6d 31 41 48 6c 55 0a 44 37 67 73 4c 30 9wabak2BegUqZIJxIZhm1AHlU.D7gsL0
153160 75 38 71 56 31 62 59 48 2b 4d 68 36 58 67 55 6d 4d 71 76 74 67 37 68 55 41 56 2f 68 36 32 5a 54 u8qV1bYH+Mh6XgUmMqvtg7hUAV/h62ZT
153180 2f 46 53 39 70 2b 74 58 6f 31 4b 61 4d 75 65 70 68 67 49 71 50 30 66 53 64 4f 4c 65 71 30 64 44 /FS9p+tXo1KaMuephgIqP0fSdOLeq0dD
1531a0 7a 70 44 36 51 7a 0a 44 78 41 52 76 42 4d 42 31 75 55 4f 30 37 2b 31 45 71 4c 68 52 53 50 41 7a zpD6Qz.DxARvBMB1uUO07+1EqLhRSPAz
1531c0 41 68 75 59 62 65 4a 71 34 50 6a 4a 42 37 6d 58 51 66 6e 48 79 41 2b 7a 32 66 49 35 36 77 77 62 AhuYbeJq4PjJB7mXQfnHyA+z2fI56wwb
1531e0 53 64 4c 61 47 35 4c 4b 6c 77 43 43 44 54 62 2b 48 62 6b 0a 5a 36 4d 6d 6e 44 2b 69 4d 73 4a 4b SdLaG5LKlwCCDTb+Hbk.Z6MmnD+iMsJK
153200 78 59 45 59 4d 52 42 57 71 6f 54 76 4c 51 72 2f 75 42 39 33 30 72 2b 6c 57 4b 42 69 35 4e 64 4c xYEYMRBWqoTvLQr/uB930r+lWKBi5NdL
153220 6b 58 57 4e 69 59 43 59 66 6d 33 4c 55 30 35 65 72 2f 61 79 6c 34 57 58 75 64 70 56 42 72 6b 6b kXWNiYCYfm3LU05er/ayl4WXudpVBrkk
153240 0a 37 74 66 47 4f 42 35 6a 47 78 49 37 6c 65 46 59 72 50 4c 66 68 4e 56 66 6d 53 38 4e 56 56 76 .7tfGOB5jGxI7leFYrPLfhNVfmS8NVVv
153260 6d 4f 4e 73 75 50 33 4c 70 53 49 58 4c 75 79 6b 54 6a 78 34 34 56 62 6e 7a 73 73 51 77 6d 53 4e mONsuP3LpSIXLuykTjx44VbnzssQwmSN
153280 4f 58 66 4a 49 6f 52 49 4d 33 42 4b 51 0a 43 5a 42 55 6b 51 4d 38 52 2b 58 56 79 57 58 67 74 30 OXfJIoRIM3BKQ.CZBUkQM8R+XVyWXgt0
1532a0 74 39 37 45 66 54 73 77 73 2b 72 5a 37 51 64 41 41 4f 36 37 31 52 72 63 44 65 4c 4d 44 44 61 76 t97EfTsws+rZ7QdAAO671RrcDeLMDDav
1532c0 37 76 33 41 75 6e 2b 6b 62 66 59 4e 75 63 70 6c 6c 51 64 53 4e 70 63 35 4f 79 0a 2b 66 77 43 30 7v3Aun+kbfYNucpllQdSNpc5Oy.+fwC0
1532e0 30 66 6d 63 63 34 51 41 75 34 6e 6a 49 54 2f 72 45 55 4e 45 31 79 44 4d 75 41 6c 70 59 59 73 66 0fmcc4QAu4njIT/rEUNE1yDMuAlpYYsf
153300 50 51 53 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 PQS.-----END.CERTIFICATE-----..S
153320 77 69 73 73 63 6f 6d 20 52 6f 6f 74 20 43 41 20 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d wisscom.Root.CA.1.==============
153340 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d ====.-----BEGIN.CERTIFICATE-----
153360 0a 4d 49 49 46 32 54 43 43 41 38 47 67 41 77 49 42 41 67 49 51 58 41 75 46 58 41 76 6e 57 55 48 .MIIF2TCCA8GgAwIBAgIQXAuFXAvnWUH
153380 66 56 38 77 2f 66 35 32 6f 4e 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 fV8w/f52oNjANBgkqhkiG9w0BAQUFADB
1533a0 6b 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 6a 61 44 45 52 4d 41 38 47 41 31 55 45 43 68 kMQswCQYDVQQG.EwJjaDERMA8GA1UECh
1533c0 4d 49 55 33 64 70 63 33 4e 6a 62 32 30 78 4a 54 41 6a 42 67 4e 56 42 41 73 54 48 45 52 70 5a 32 MIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2
1533e0 6c 30 59 57 77 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 55 67 55 32 56 79 0a 64 6d 6c 6a 5a l0YWwgQ2VydGlmaWNhdGUgU2Vy.dmljZ
153400 58 4d 78 47 7a 41 5a 42 67 4e 56 42 41 4d 54 45 6c 4e 33 61 58 4e 7a 59 32 39 74 49 46 4a 76 62 XMxGzAZBgNVBAMTElN3aXNzY29tIFJvb
153420 33 51 67 51 30 45 67 4d 54 41 65 46 77 30 77 4e 54 41 34 4d 54 67 78 4d 6a 41 32 4d 6a 42 61 46 3QgQ0EgMTAeFw0wNTA4MTgxMjA2MjBaF
153440 77 30 79 4e 54 41 34 0a 4d 54 67 79 4d 6a 41 32 4d 6a 42 61 4d 47 51 78 43 7a 41 4a 42 67 4e 56 w0yNTA4.MTgyMjA2MjBaMGQxCzAJBgNV
153460 42 41 59 54 41 6d 4e 6f 4d 52 45 77 44 77 59 44 56 51 51 4b 45 77 68 54 64 32 6c 7a 63 32 4e 76 BAYTAmNoMREwDwYDVQQKEwhTd2lzc2Nv
153480 62 54 45 6c 4d 43 4d 47 41 31 55 45 43 78 4d 63 52 47 6c 6e 0a 61 58 52 68 62 43 42 44 5a 58 4a bTElMCMGA1UECxMcRGln.aXRhbCBDZXJ
1534a0 30 61 57 5a 70 59 32 46 30 5a 53 42 54 5a 58 4a 32 61 57 4e 6c 63 7a 45 62 4d 42 6b 47 41 31 55 0aWZpY2F0ZSBTZXJ2aWNlczEbMBkGA1U
1534c0 45 41 78 4d 53 55 33 64 70 63 33 4e 6a 62 32 30 67 55 6d 39 76 64 43 42 44 51 53 41 78 4d 49 49 EAxMSU3dpc3Njb20gUm9vdCBDQSAxMII
1534e0 43 0a 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 C.IjANBgkqhkiG9w0BAQEFAAOCAg8AMI
153500 49 43 43 67 4b 43 41 67 45 41 30 4c 6d 77 71 41 7a 5a 75 7a 38 68 2b 42 76 56 4d 35 4f 41 46 6d ICCgKCAgEA0LmwqAzZuz8h+BvVM5OAFm
153520 55 67 64 62 49 39 6d 32 42 74 52 73 69 4d 0a 4d 57 38 58 77 2f 71 61 62 46 62 74 50 4d 57 52 56 UgdbI9m2BtRsiM.MW8Xw/qabFbtPMWRV
153540 38 50 4e 71 35 5a 4a 6b 43 6f 5a 53 78 36 6a 62 56 66 64 38 53 74 69 4b 48 56 46 58 71 72 57 57 8PNq5ZJkCoZSx6jbVfd8StiKHVFXqrWW
153560 2f 6f 4c 4a 64 69 68 46 76 6b 63 78 43 37 6d 6c 53 70 6e 7a 4e 41 70 62 6a 79 46 0a 4e 44 68 68 /oLJdihFvkcxC7mlSpnzNApbjyF.NDhh
153580 53 62 45 41 6e 39 59 36 63 56 39 4e 62 63 35 66 75 61 6e 6b 69 58 39 71 55 76 72 4b 6d 2f 4c 63 SbEAn9Y6cV9Nbc5fuankiX9qUvrKm/Lc
1535a0 71 66 6d 64 6d 55 63 2f 54 69 6c 66 74 4b 61 4e 58 58 73 4c 6d 52 45 44 41 2f 37 6e 32 39 75 6a qfmdmUc/TilftKaNXXsLmREDA/7n29uj
1535c0 2f 78 32 6c 7a 5a 41 65 0a 41 52 38 31 73 48 38 41 32 35 42 76 78 6e 35 37 30 65 35 36 65 71 65 /x2lzZAe.AR81sH8A25Bvxn570e56eqe
1535e0 71 44 46 64 76 70 47 33 46 45 7a 75 77 70 64 6e 74 4d 68 79 30 58 6d 65 4c 56 4e 78 7a 68 2b 58 qDFdvpG3FEzuwpdntMhy0XmeLVNxzh+X
153600 54 46 33 78 6d 55 48 4a 64 31 42 70 59 77 64 6e 50 32 49 6b 43 0a 62 36 64 4a 74 44 5a 64 30 4b TF3xmUHJd1BpYwdnP2IkC.b6dJtDZd0K
153620 54 65 42 79 79 32 64 62 63 6f 6b 64 61 58 76 69 6a 31 6d 42 37 71 57 79 62 4a 76 62 43 58 63 39 TeByy2dbcokdaXvij1mB7qWybJvbCXc9
153640 71 75 6b 53 62 72 61 4d 48 35 4f 52 58 57 5a 30 73 4b 62 55 2f 4c 7a 37 44 6b 51 6e 47 4d 55 33 qukSbraMH5ORXWZ0sKbU/Lz7DkQnGMU3
153660 6e 6e 0a 37 75 48 62 48 61 42 75 48 59 77 61 64 7a 56 63 46 68 34 72 55 78 38 30 69 39 46 73 2f nn.7uHbHaBuHYwadzVcFh4rUx80i9Fs/
153680 50 4a 6e 42 33 72 31 72 65 33 57 6d 71 75 68 73 55 76 68 7a 44 64 66 2f 58 2f 4e 54 61 36 34 48 PJnB3r1re3WmquhsUvhzDdf/X/NTa64H
1536a0 35 78 44 2b 53 70 59 56 55 4e 46 76 4a 62 4e 0a 63 41 37 38 79 65 4e 6d 75 6b 36 4e 4f 34 48 4c 5xD+SpYVUNFvJbN.cA78yeNmuk6NO4HL
1536c0 46 57 52 37 75 5a 54 6f 58 54 4e 53 68 58 45 75 54 34 36 69 42 68 46 52 79 65 50 4c 6f 57 34 78 FWR7uZToXTNShXEuT46iBhFRyePLoW4x
1536e0 43 47 51 4d 77 74 49 38 39 54 62 6f 31 39 41 4f 65 43 4d 67 6b 63 6b 6b 4b 6d 55 70 0a 57 79 4c CGQMwtI89Tbo19AOeCMgkckkKmUp.WyL
153700 33 49 63 36 44 58 71 54 7a 33 6b 76 54 61 49 39 47 64 56 79 44 43 57 34 70 61 38 52 77 6a 50 57 3Ic6DXqTz3kvTaI9GdVyDCW4pa8RwjPW
153720 64 31 79 41 76 2f 30 62 53 4b 7a 6a 43 4c 33 55 63 50 58 37 61 70 65 38 65 59 49 56 70 51 74 50 d1yAv/0bSKzjCL3UcPX7ape8eYIVpQtP
153740 4d 2b 47 50 2b 48 6b 4d 35 0a 68 61 61 32 59 30 45 51 73 33 4d 65 76 4e 50 36 79 6e 30 57 52 2b M+GP+HkM5.haa2Y0EQs3MevNP6yn0WR+
153760 4b 6e 31 64 43 6a 69 67 6f 49 6c 6d 4a 57 62 6a 54 62 32 51 4b 35 4d 48 58 6a 42 4e 4c 6e 6a 38 Kn1dCjigoIlmJWbjTb2QK5MHXjBNLnj8
153780 4b 77 45 55 41 4b 72 4e 56 78 41 6d 4b 4c 4d 62 37 64 78 69 4e 59 0a 4d 55 4a 44 4c 58 54 35 78 KwEUAKrNVxAmKLMb7dxiNY.MUJDLXT5x
1537a0 70 36 6d 69 67 2f 70 2f 72 2b 44 35 6b 4e 58 4a 4c 72 76 52 6a 53 71 31 78 49 42 4f 4f 30 43 41 p6mig/p/r+D5kNXJLrvRjSq1xIBOO0CA
1537c0 77 45 41 41 61 4f 42 68 6a 43 42 67 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 wEAAaOBhjCBgzAOBgNVHQ8BAf8EBAMCA
1537e0 59 59 77 0a 48 51 59 44 56 52 30 68 42 42 59 77 46 44 41 53 42 67 64 67 68 58 51 42 55 77 41 42 YYw.HQYDVR0hBBYwFDASBgdghXQBUwAB
153800 42 67 64 67 68 58 51 42 55 77 41 42 4d 42 49 47 41 31 55 64 45 77 45 42 2f 77 51 49 4d 41 59 42 BgdghXQBUwABMBIGA1UdEwEB/wQIMAYB
153820 41 66 38 43 41 51 63 77 48 77 59 44 56 52 30 6a 0a 42 42 67 77 46 6f 41 55 41 79 55 76 33 6d 2b Af8CAQcwHwYDVR0j.BBgwFoAUAyUv3m+
153840 43 41 54 70 63 4c 4e 77 72 6f 57 6d 31 5a 39 53 4d 30 2f 30 77 48 51 59 44 56 52 30 4f 42 42 59 CATpcLNwroWm1Z9SM0/0wHQYDVR0OBBY
153860 45 46 41 4d 6c 4c 39 35 76 67 67 45 36 58 43 7a 63 4b 36 46 70 74 57 66 55 6a 4e 50 39 0a 4d 41 EFAMlL95vggE6XCzcK6FptWfUjNP9.MA
153880 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 43 41 51 41 31 45 4d 76 73 70 67 0GCSqGSIb3DQEBBQUAA4ICAQA1EMvspg
1538a0 51 4e 44 51 2f 4e 77 4e 75 72 71 50 4b 49 6c 77 7a 66 6b 79 39 4e 66 45 42 57 4d 58 72 72 70 41 QNDQ/NwNurqPKIlwzfky9NfEBWMXrrpA
1538c0 39 67 7a 58 72 7a 76 73 4d 6e 0a 6a 67 4d 2b 70 4e 30 53 37 33 34 65 64 41 59 38 50 7a 48 79 48 9gzXrzvsMn.jgM+pN0S734edAY8PzHyH
1538e0 48 75 52 4d 53 47 30 38 4e 42 73 6c 39 54 70 6c 37 49 6b 56 68 35 57 77 7a 57 39 69 41 55 50 57 HuRMSG08NBsl9Tpl7IkVh5WwzW9iAUPW
153900 78 41 61 5a 4f 48 48 67 6a 44 35 4d 71 32 65 55 43 7a 6e 65 41 58 51 0a 4d 62 46 61 6d 49 70 31 xAaZOHHgjD5Mq2eUCzneAXQ.MbFamIp1
153920 54 70 42 63 61 68 51 71 34 46 4a 48 67 6d 44 6d 48 74 71 42 73 66 73 55 43 31 72 78 6e 39 4b 56 TpBcahQq4FJHgmDmHtqBsfsUC1rxn9KV
153940 75 6a 37 51 47 39 59 56 48 61 4f 2b 68 74 58 62 44 38 42 4a 5a 4c 73 75 55 42 6c 4c 30 69 54 34 uj7QG9YVHaO+htXbD8BJZLsuUBlL0iT4
153960 33 52 34 48 0a 56 74 41 34 6f 4a 56 77 49 48 61 4d 31 39 30 65 33 70 39 78 78 43 50 76 67 78 4e 3R4H.VtA4oJVwIHaM190e3p9xxCPvgxN
153980 63 6f 79 51 56 54 53 6c 41 50 47 72 45 71 64 69 33 70 6b 53 6c 44 66 54 67 6e 58 63 65 51 48 41 coyQVTSlAPGrEqdi3pkSlDfTgnXceQHA
1539a0 6d 2f 4e 72 5a 4e 75 52 35 35 4c 55 2f 76 4a 74 6c 0a 76 72 73 52 6c 73 2f 62 78 69 67 35 4f 67 m/NrZNuR55LU/vJtl.vrsRls/bxig5Og
1539c0 6a 4f 52 31 74 54 57 73 57 5a 2f 6c 32 70 33 65 39 4d 31 4d 61 6c 72 51 4c 6d 6a 41 63 53 48 6d jOR1tTWsWZ/l2p3e9M1MalrQLmjAcSHm
1539e0 38 44 30 57 2b 67 6f 2f 4d 70 76 52 4c 48 55 4b 4b 77 66 34 69 70 6d 58 65 61 73 63 43 6c 0a 4f 8D0W+go/MpvRLHUKKwf4ipmXeascCl.O
153a00 53 35 63 66 47 6e 69 4c 4c 44 71 4e 32 71 6b 34 56 72 68 39 56 44 6c 67 2b 2b 6c 75 79 71 49 35 S5cfGniLLDqN2qk4Vrh9VDlg++luyqI5
153a20 34 7a 62 2f 57 31 65 6c 78 6d 6f 66 6d 5a 31 61 33 48 71 76 37 48 48 62 36 44 30 6a 71 54 73 4e 4zb/W1elxmofmZ1a3Hqv7HHb6D0jqTsN
153a40 46 46 62 6a 43 59 44 63 4b 46 33 0a 31 51 45 53 56 77 41 31 32 79 50 65 44 6f 6f 6f 6d 66 32 78 FFbjCYDcKF3.1QESVwA12yPeDooomf2x
153a60 45 47 39 4c 2f 7a 67 74 59 45 34 73 6e 4f 74 6e 74 61 31 4a 37 6b 73 66 72 4b 2f 37 44 5a 42 61 EG9L/zgtYE4snOtnta1J7ksfrK/7DZBa
153a80 5a 6d 42 77 58 61 72 4e 65 4e 51 6b 37 73 68 42 6f 4a 4d 42 6b 70 78 71 0a 6e 76 79 35 4a 4d 57 ZmBwXarNeNQk7shBoJMBkpxq.nvy5JMW
153aa0 7a 46 59 4a 2b 76 71 36 56 4b 2b 75 78 77 4e 72 6a 41 57 41 4c 58 6d 6d 73 68 46 5a 68 76 6e 45 zFYJ+vq6VK+uxwNrjAWALXmmshFZhvnE
153ac0 58 2f 68 30 54 44 2f 37 47 68 30 58 70 2f 6a 4b 67 47 67 30 54 70 4a 52 56 63 61 55 57 69 37 72 X/h0TD/7Gh0Xp/jKgGg0TpJRVcaUWi7r
153ae0 4b 69 62 43 79 0a 78 2f 79 50 32 46 53 31 6b 32 4b 64 7a 73 39 5a 2b 7a 30 59 7a 69 72 4c 4e 52 KibCy.x/yP2FS1k2Kdzs9Z+z0YzirLNR
153b00 57 43 58 66 39 55 49 6c 74 78 55 76 75 33 79 66 35 67 6d 77 42 42 5a 50 43 71 4b 75 79 32 51 6b WCXf9UIltxUvu3yf5gmwBBZPCqKuy2Qk
153b20 50 4f 69 57 61 42 79 49 75 66 4f 56 51 44 4a 64 4d 57 0a 4e 59 36 45 30 46 2f 36 4d 42 72 31 6d POiWaByIufOVQDJdMW.NY6E0F/6MBr1m
153b40 6d 7a 30 44 6c 50 35 4f 6c 76 52 48 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 mz0DlP5OlvRHA==.-----END.CERTIFI
153b60 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 44 69 67 69 43 65 72 74 20 41 73 73 75 72 65 64 20 49 44 20 52 CATE-----..DigiCert.Assured.ID.R
153b80 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d oot.CA.=========================
153ba0 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d ==.-----BEGIN.CERTIFICATE-----.M
153bc0 49 49 44 74 7a 43 43 41 70 2b 67 41 77 49 42 41 67 49 51 44 4f 66 67 35 52 66 59 52 76 36 50 35 IIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5
153be0 57 44 38 47 2f 41 77 4f 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 6c 4d WD8G/AwOTANBgkqhkiG9w0BAQUFADBlM
153c00 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 56 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d QswCQYDVQQG.EwJVUzEVMBMGA1UEChMM
153c20 52 47 6c 6e 61 55 4e 6c 63 6e 51 67 53 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 45 78 42 33 RGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
153c40 64 33 63 75 5a 47 6c 6e 61 57 4e 6c 63 6e 51 75 59 32 39 74 4d 53 51 77 0a 49 67 59 44 56 51 51 d3cuZGlnaWNlcnQuY29tMSQw.IgYDVQQ
153c60 44 45 78 74 45 61 57 64 70 51 32 56 79 64 43 42 42 63 33 4e 31 63 6d 56 6b 49 45 6c 45 49 46 4a DExtEaWdpQ2VydCBBc3N1cmVkIElEIFJ
153c80 76 62 33 51 67 51 30 45 77 48 68 63 4e 4d 44 59 78 4d 54 45 77 4d 44 41 77 4d 44 41 77 57 68 63 vb3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhc
153ca0 4e 4d 7a 45 78 0a 4d 54 45 77 4d 44 41 77 4d 44 41 77 57 6a 42 6c 4d 51 73 77 43 51 59 44 56 51 NMzEx.MTEwMDAwMDAwWjBlMQswCQYDVQ
153cc0 51 47 45 77 4a 56 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 6e QGEwJVUzEVMBMGA1UEChMMRGlnaUNlcn
153ce0 51 67 53 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 0a 45 78 42 33 64 33 63 75 5a 47 6c 6e 61 QgSW5jMRkwFwYDVQQL.ExB3d3cuZGlna
153d00 57 4e 6c 63 6e 51 75 59 32 39 74 4d 53 51 77 49 67 59 44 56 51 51 44 45 78 74 45 61 57 64 70 51 WNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ
153d20 32 56 79 64 43 42 42 63 33 4e 31 63 6d 56 6b 49 45 6c 45 49 46 4a 76 62 33 51 67 51 30 45 77 0a 2VydCBBc3N1cmVkIElEIFJvb3QgQ0Ew.
153d40 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
153d60 67 67 45 4b 41 6f 49 42 41 51 43 74 44 68 58 4f 35 45 4f 41 58 4c 47 48 38 37 64 67 2b 58 45 53 ggEKAoIBAQCtDhXO5EOAXLGH87dg+XES
153d80 70 61 37 63 4a 70 53 49 71 76 54 4f 0a 39 53 41 35 4b 46 68 67 44 50 69 41 32 71 6b 56 6c 54 4a pa7cJpSIqvTO.9SA5KFhgDPiA2qkVlTJ
153da0 68 50 4c 57 78 4b 49 53 4b 69 74 79 66 43 67 79 44 46 33 71 50 6b 4b 79 4b 35 33 6c 54 58 44 47 hPLWxKISKityfCgyDF3qPkKyK53lTXDG
153dc0 45 4b 76 59 50 6d 44 49 32 64 73 7a 65 33 54 79 6f 6f 75 39 71 2b 79 48 79 0a 55 6d 48 66 6e 79 EKvYPmDI2dsze3Tyoou9q+yHy.UmHfny
153de0 44 58 48 2b 4b 78 32 66 34 59 5a 4e 49 53 57 31 2f 35 57 42 67 31 76 45 66 4e 6f 54 62 35 61 33 DXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3
153e00 2f 55 73 44 67 2b 77 52 76 44 6a 44 50 5a 32 43 38 59 2f 69 67 50 73 36 65 44 31 73 4e 75 52 4d /UsDg+wRvDjDPZ2C8Y/igPs6eD1sNuRM
153e20 42 68 4e 5a 59 57 0a 2f 6c 6d 63 69 33 5a 74 31 2f 47 69 53 77 30 72 2f 77 74 79 32 70 35 67 30 BhNZYW./lmci3Zt1/GiSw0r/wty2p5g0
153e40 49 36 51 4e 63 5a 34 56 59 63 67 6f 63 2f 6c 62 51 72 49 53 58 77 78 6d 44 4e 73 49 75 6d 48 30 I6QNcZ4VYcgoc/lbQrISXwxmDNsIumH0
153e60 44 4a 61 6f 72 6f 54 67 68 48 74 4f 52 65 64 6d 54 70 79 0a 6f 65 62 36 70 4e 6e 56 46 7a 46 31 DJaoroTghHtORedmTpy.oeb6pNnVFzF1
153e80 72 6f 56 39 49 71 34 2f 41 55 61 47 39 69 68 35 79 4c 48 61 35 46 63 58 78 48 34 63 44 72 43 30 roV9Iq4/AUaG9ih5yLHa5FcXxH4cDrC0
153ea0 6b 71 5a 57 73 37 32 79 6c 2b 32 71 70 2f 43 33 78 61 67 2f 6c 52 62 51 2f 36 47 57 36 77 68 66 kqZWs72yl+2qp/C3xag/lRbQ/6GW6whf
153ec0 0a 47 48 64 50 41 67 4d 42 41 41 47 6a 59 7a 42 68 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 .GHdPAgMBAAGjYzBhMA4GA1UdDwEB/wQ
153ee0 45 41 77 49 42 68 6a 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 30 EAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0
153f00 47 41 31 55 64 44 67 51 57 42 42 52 46 0a 36 36 4b 76 39 4a 4c 4c 67 6a 45 74 55 59 75 6e 70 79 GA1UdDgQWBBRF.66Kv9JLLgjEtUYunpy
153f20 47 64 38 32 33 49 44 7a 41 66 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 52 46 36 36 4b 76 39 4a Gd823IDzAfBgNVHSMEGDAWgBRF66Kv9J
153f40 4c 4c 67 6a 45 74 55 59 75 6e 70 79 47 64 38 32 33 49 44 7a 41 4e 42 67 6b 71 0a 68 6b 69 47 39 LLgjEtUYunpyGd823IDzANBgkq.hkiG9
153f60 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 6f 67 36 38 33 2b 4c 74 38 4f 4e 79 63 33 70 6b 6c w0BAQUFAAOCAQEAog683+Lt8ONyc3pkl
153f80 4c 2f 33 63 6d 62 59 4d 75 52 43 64 57 4b 75 68 2b 76 79 31 64 6e 65 56 72 4f 66 7a 4d 34 55 4b L/3cmbYMuRCdWKuh+vy1dneVrOfzM4UK
153fa0 4c 6b 4e 6c 32 42 63 0a 45 6b 78 59 35 4e 4d 39 67 30 6c 46 57 4a 63 31 61 52 71 6f 52 2b 70 57 LkNl2Bc.EkxY5NM9g0lFWJc1aRqoR+pW
153fc0 78 6e 6d 72 45 74 68 6e 67 59 54 66 66 77 6b 38 6c 4f 61 34 4a 69 77 67 76 54 32 7a 4b 49 6e 33 xnmrEthngYTffwk8lOa4JiwgvT2zKIn3
153fe0 58 2f 38 69 34 70 65 45 48 2b 6c 6c 37 34 66 67 33 38 46 6e 0a 53 62 4e 64 36 37 49 4a 4b 75 73 X/8i4peEH+ll74fg38Fn.SbNd67IJKus
154000 6d 37 58 69 2b 66 54 38 72 38 37 63 6d 4e 57 31 66 69 51 47 32 53 56 75 66 41 51 57 62 71 7a 30 m7Xi+fT8r87cmNW1fiQG2SVufAQWbqz0
154020 6c 77 63 79 32 66 38 4c 78 62 34 62 47 2b 6d 52 6f 36 34 45 74 6c 4f 74 43 74 2f 71 4d 48 74 31 lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1
154040 69 0a 38 62 35 51 5a 37 64 73 76 66 50 78 48 32 73 4d 4e 67 63 57 66 7a 64 38 71 56 74 74 65 76 i.8b5QZ7dsvfPxH2sMNgcWfzd8qVttev
154060 45 53 52 6d 43 44 31 79 63 45 76 6b 76 4f 6c 37 37 44 5a 79 70 6f 45 64 2b 41 35 77 77 7a 5a 72 ESRmCD1ycEvkvOl77DZypoEd+A5wwzZr
154080 38 54 44 52 52 75 38 33 38 66 59 78 41 65 0a 2b 6f 30 62 4a 57 31 73 6a 36 57 33 59 51 47 78 30 8TDRRu838fYxAe.+o0bJW1sj6W3YQGx0
1540a0 71 4d 6d 6f 52 42 78 6e 61 33 69 77 2f 6e 44 6d 56 47 33 4b 77 63 49 7a 69 37 6d 55 4c 4b 6e 2b qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+
1540c0 67 70 46 4c 36 4c 77 38 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 gpFL6Lw8g==.-----END.CERTIFICATE
1540e0 2d 2d 2d 2d 2d 0a 0a 44 69 67 69 43 65 72 74 20 47 6c 6f 62 61 6c 20 52 6f 6f 74 20 43 41 0a 3d -----..DigiCert.Global.Root.CA.=
154100 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 ======================.-----BEGI
154120 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 72 7a 43 43 41 70 65 67 41 N.CERTIFICATE-----.MIIDrzCCApegA
154140 77 49 42 41 67 49 51 43 44 76 67 56 70 42 43 52 72 47 68 64 57 72 4a 57 5a 48 48 53 6a 41 4e 42 wIBAgIQCDvgVpBCRrGhdWrJWZHHSjANB
154160 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 68 4d 51 73 77 43 51 59 44 56 51 51 47 0a gkqhkiG9w0BAQUFADBhMQswCQYDVQQG.
154180 45 77 4a 56 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 6e 51 67 EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQg
1541a0 53 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 45 78 42 33 64 33 63 75 5a 47 6c 6e 61 57 4e 6c SW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
1541c0 63 6e 51 75 59 32 39 74 4d 53 41 77 0a 48 67 59 44 56 51 51 44 45 78 64 45 61 57 64 70 51 32 56 cnQuY29tMSAw.HgYDVQQDExdEaWdpQ2V
1541e0 79 64 43 42 48 62 47 39 69 59 57 77 67 55 6d 39 76 64 43 42 44 51 54 41 65 46 77 30 77 4e 6a 45 ydCBHbG9iYWwgUm9vdCBDQTAeFw0wNjE
154200 78 4d 54 41 77 4d 44 41 77 4d 44 42 61 46 77 30 7a 4d 54 45 78 4d 54 41 77 0a 4d 44 41 77 4d 44 xMTAwMDAwMDBaFw0zMTExMTAw.MDAwMD
154220 42 61 4d 47 45 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 56 54 4d 52 55 77 45 77 59 44 56 51 BaMGExCzAJBgNVBAYTAlVTMRUwEwYDVQ
154240 51 4b 45 77 78 45 61 57 64 70 51 32 56 79 64 43 42 4a 62 6d 4d 78 47 54 41 58 42 67 4e 56 42 41 QKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBA
154260 73 54 45 48 64 33 0a 64 79 35 6b 61 57 64 70 59 32 56 79 64 43 35 6a 62 32 30 78 49 44 41 65 42 sTEHd3.dy5kaWdpY2VydC5jb20xIDAeB
154280 67 4e 56 42 41 4d 54 46 30 52 70 5a 32 6c 44 5a 58 4a 30 49 45 64 73 62 32 4a 68 62 43 42 53 62 gNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb
1542a0 32 39 30 49 45 4e 42 4d 49 49 42 49 6a 41 4e 42 67 6b 71 0a 68 6b 69 47 39 77 30 42 41 51 45 46 290IENBMIIBIjANBgkq.hkiG9w0BAQEF
1542c0 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 34 6a 76 68 45 58 4c 65 71 4b 54 54 AAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTT
1542e0 6f 31 65 71 55 4b 4b 50 43 33 65 51 79 61 4b 6c 37 68 4c 4f 6c 6c 73 42 43 53 44 4d 41 5a 4f 6e o1eqUKKPC3eQyaKl7hLOllsBCSDMAZOn
154300 0a 54 6a 43 33 55 2f 64 44 78 47 6b 41 56 35 33 69 6a 53 4c 64 68 77 5a 41 41 49 45 4a 7a 73 34 .TjC3U/dDxGkAV53ijSLdhwZAAIEJzs4
154320 62 67 37 2f 66 7a 54 74 78 52 75 4c 57 5a 73 63 46 73 33 59 6e 46 6f 39 37 6e 68 36 56 66 65 36 bg7/fzTtxRuLWZscFs3YnFo97nh6Vfe6
154340 33 53 4b 4d 49 32 74 61 76 65 67 77 35 0a 42 6d 56 2f 53 6c 30 66 76 42 66 34 71 37 37 75 4b 4e 3SKMI2tavegw5.BmV/Sl0fvBf4q77uKN
154360 64 30 66 33 70 34 6d 56 6d 46 61 47 35 63 49 7a 4a 4c 76 30 37 41 36 46 70 74 34 33 43 2f 64 78 d0f3p4mVmFaG5cIzJLv07A6Fpt43C/dx
154380 43 2f 2f 41 48 32 68 64 6d 6f 52 42 42 59 4d 71 6c 31 47 4e 58 52 6f 72 35 48 0a 34 69 64 71 39 C//AH2hdmoRBBYMql1GNXRor5H.4idq9
1543a0 4a 6f 7a 2b 45 6b 49 59 49 76 55 58 37 51 36 68 4c 2b 68 71 6b 70 4d 66 54 37 50 54 31 39 73 64 Joz+EkIYIvUX7Q6hL+hqkpMfT7PT19sd
1543c0 6c 36 67 53 7a 65 52 6e 74 77 69 35 6d 33 4f 46 42 71 4f 61 73 76 2b 7a 62 4d 55 5a 42 66 48 57 l6gSzeRntwi5m3OFBqOasv+zbMUZBfHW
1543e0 79 6d 65 4d 72 2f 79 0a 37 76 72 54 43 30 4c 55 71 37 64 42 4d 74 6f 4d 31 4f 2f 34 67 64 57 37 ymeMr/y.7vrTC0LUq7dBMtoM1O/4gdW7
154400 6a 56 67 2f 74 52 76 6f 53 53 69 69 63 4e 6f 78 42 4e 33 33 73 68 62 79 54 41 70 4f 42 36 6a 74 jVg/tRvoSSiicNoxBN33shbyTApOB6jt
154420 53 6a 31 65 74 58 2b 6a 6b 4d 4f 76 4a 77 49 44 41 51 41 42 0a 6f 32 4d 77 59 54 41 4f 42 67 4e Sj1etX+jkMOvJwIDAQAB.o2MwYTAOBgN
154440 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 59 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 VHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAU
154460 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 41 39 35 51 4e 56 62 52 54 4c 74 wAwEB/zAdBgNVHQ4EFgQUA95QNVbRTLt
154480 6d 0a 38 4b 50 69 47 78 76 44 6c 37 49 39 30 56 55 77 48 77 59 44 56 52 30 6a 42 42 67 77 46 6f m.8KPiGxvDl7I90VUwHwYDVR0jBBgwFo
1544a0 41 55 41 39 35 51 4e 56 62 52 54 4c 74 6d 38 4b 50 69 47 78 76 44 6c 37 49 39 30 56 55 77 44 51 AUA95QNVbRTLtm8KPiGxvDl7I90VUwDQ
1544c0 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 0a 42 51 41 44 67 67 45 42 41 4d 75 63 4e 36 70 49 45 YJKoZIhvcNAQEF.BQADggEBAMucN6pIE
1544e0 78 49 4b 2b 74 31 45 6e 45 39 53 73 50 54 66 72 67 54 31 65 58 6b 49 6f 79 51 59 2f 45 73 72 68 xIK+t1EnE9SsPTfrgT1eXkIoyQY/Esrh
154500 4d 41 74 75 64 58 48 2f 76 54 42 48 31 6a 4c 75 47 32 63 65 6e 54 6e 6d 43 6d 72 0a 45 62 58 6a MAtudXH/vTBH1jLuG2cenTnmCmr.EbXj
154520 63 4b 43 68 7a 55 79 49 6d 5a 4f 4d 6b 58 44 69 71 77 38 63 76 70 4f 70 2f 32 50 56 35 41 64 67 cKChzUyImZOMkXDiqw8cvpOp/2PV5Adg
154540 30 36 4f 2f 6e 56 73 4a 38 64 57 4f 34 31 50 30 6a 6d 50 36 50 36 66 62 74 47 62 66 59 6d 62 57 06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW
154560 30 57 35 42 6a 66 49 74 0a 74 65 70 33 53 70 2b 64 57 4f 49 72 57 63 42 41 49 2b 30 74 4b 49 4a 0W5BjfIt.tep3Sp+dWOIrWcBAI+0tKIJ
154580 46 50 6e 6c 55 6b 69 61 59 34 49 42 49 71 44 66 76 38 4e 5a 35 59 42 62 65 72 4f 67 4f 7a 57 36 FPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6
1545a0 73 52 42 63 34 4c 30 6e 61 34 55 55 2b 4b 72 6b 32 55 38 38 36 0a 55 41 62 33 4c 75 6a 45 56 30 sRBc4L0na4UU+Krk2U886.UAb3LujEV0
1545c0 6c 73 59 53 45 59 31 51 53 74 65 44 77 73 4f 6f 42 72 70 2b 75 76 46 52 54 70 32 49 6e 42 75 54 lsYSEY1QSteDwsOoBrp+uvFRTp2InBuT
1545e0 68 73 34 70 46 73 69 76 39 6b 75 58 63 6c 56 7a 44 41 47 79 53 6a 34 64 7a 70 33 30 64 38 74 62 hs4pFsiv9kuXclVzDAGySj4dzp30d8tb
154600 51 6b 0a 43 41 55 77 37 43 32 39 43 37 39 46 76 31 43 35 71 66 50 72 6d 41 45 53 72 63 69 49 78 Qk.CAUw7C29C79Fv1C5qfPrmAESrciIx
154620 70 67 30 58 34 30 4b 50 4d 62 70 31 5a 57 56 62 64 34 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 pg0X40KPMbp1ZWVbd4=.-----END.CER
154640 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 44 69 67 69 43 65 72 74 20 48 69 67 68 20 41 73 73 TIFICATE-----..DigiCert.High.Ass
154660 75 72 61 6e 63 65 20 45 56 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d urance.EV.Root.CA.==============
154680 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 ====================.-----BEGIN.
1546a0 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 78 54 43 43 41 71 32 67 41 77 49 CERTIFICATE-----.MIIDxTCCAq2gAwI
1546c0 42 41 67 49 51 41 71 78 63 4a 6d 6f 4c 51 4a 75 50 43 33 6e 79 72 6b 59 6c 64 7a 41 4e 42 67 6b BAgIQAqxcJmoLQJuPC3nyrkYldzANBgk
1546e0 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 73 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 qhkiG9w0BAQUFADBsMQswCQYDVQQG.Ew
154700 4a 56 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 6e 51 67 53 57 JVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW
154720 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 45 78 42 33 64 33 63 75 5a 47 6c 6e 61 57 4e 6c 63 6e 5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcn
154740 51 75 59 32 39 74 4d 53 73 77 0a 4b 51 59 44 56 51 51 44 45 79 4a 45 61 57 64 70 51 32 56 79 64 QuY29tMSsw.KQYDVQQDEyJEaWdpQ2Vyd
154760 43 42 49 61 57 64 6f 49 45 46 7a 63 33 56 79 59 57 35 6a 5a 53 42 46 56 69 42 53 62 32 39 30 49 CBIaWdoIEFzc3VyYW5jZSBFViBSb290I
154780 45 4e 42 4d 42 34 58 44 54 41 32 4d 54 45 78 4d 44 41 77 4d 44 41 77 0a 4d 46 6f 58 44 54 4d 78 ENBMB4XDTA2MTExMDAwMDAw.MFoXDTMx
1547a0 4d 54 45 78 4d 44 41 77 4d 44 41 77 4d 46 6f 77 62 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 MTExMDAwMDAwMFowbDELMAkGA1UEBhMC
1547c0 56 56 4d 78 46 54 41 54 42 67 4e 56 42 41 6f 54 44 45 52 70 5a 32 6c 44 5a 58 4a 30 49 45 6c 75 VVMxFTATBgNVBAoTDERpZ2lDZXJ0IElu
1547e0 59 7a 45 5a 0a 4d 42 63 47 41 31 55 45 43 78 4d 51 64 33 64 33 4c 6d 52 70 5a 32 6c 6a 5a 58 4a YzEZ.MBcGA1UECxMQd3d3LmRpZ2ljZXJ
154800 30 4c 6d 4e 76 62 54 45 72 4d 43 6b 47 41 31 55 45 41 78 4d 69 52 47 6c 6e 61 55 4e 6c 63 6e 51 0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQ
154820 67 53 47 6c 6e 61 43 42 42 63 33 4e 31 63 6d 46 75 0a 59 32 55 67 52 56 59 67 55 6d 39 76 64 43 gSGlnaCBBc3N1cmFu.Y2UgRVYgUm9vdC
154840 42 44 51 54 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 BDQTCCASIwDQYJKoZIhvcNAQEBBQADgg
154860 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4d 62 4d 35 58 50 6d 2b 39 53 37 35 53 30 74 0a 4d EPADCCAQoCggEBAMbM5XPm+9S75S0t.M
154880 71 62 66 35 59 45 2f 79 63 30 6c 53 62 5a 78 4b 73 50 56 6c 44 52 6e 6f 67 6f 63 73 46 39 70 70 qbf5YE/yc0lSbZxKsPVlDRnogocsF9pp
1548a0 6b 43 78 78 4c 65 79 6a 39 43 59 70 4b 6c 42 57 54 72 54 33 4a 54 57 50 4e 74 30 4f 4b 52 4b 7a kCxxLeyj9CYpKlBWTrT3JTWPNt0OKRKz
1548c0 45 30 6c 67 76 64 4b 70 56 4d 53 0a 4f 4f 37 7a 53 57 31 78 6b 58 35 6a 74 71 75 6d 58 38 4f 6b E0lgvdKpVMS.OO7zSW1xkX5jtqumX8Ok
1548e0 68 50 68 50 59 6c 47 2b 2b 4d 58 73 32 7a 69 53 34 77 62 6c 43 4a 45 4d 78 43 68 42 56 66 76 4c hPhPYlG++MXs2ziS4wblCJEMxChBVfvL
154900 57 6f 6b 56 66 6e 48 6f 4e 62 39 4e 63 67 6b 39 76 6a 6f 34 55 46 74 33 0a 4d 52 75 4e 73 38 63 WokVfnHoNb9Ncgk9vjo4UFt3.MRuNs8c
154920 6b 52 5a 71 6e 72 47 30 41 46 46 6f 45 74 37 6f 54 36 31 45 4b 6d 45 46 42 49 6b 35 6c 59 59 65 kRZqnrG0AFFoEt7oT61EKmEFBIk5lYYe
154940 42 51 56 43 6d 65 56 79 4a 33 68 6c 4b 56 39 55 75 35 6c 30 63 55 79 78 2b 6d 4d 30 61 42 68 61 BQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBha
154960 6b 61 48 50 51 0a 4e 41 51 54 58 4b 46 78 30 31 70 38 56 64 74 65 5a 4f 45 33 68 7a 42 57 42 4f kaHPQ.NAQTXKFx01p8VdteZOE3hzBWBO
154980 55 52 74 43 6d 41 45 76 46 35 4f 59 69 69 41 68 46 38 4a 32 61 33 69 4c 64 34 38 73 6f 4b 71 44 URtCmAEvF5OYiiAhF8J2a3iLd48soKqD
1549a0 69 72 43 6d 54 43 76 32 5a 64 6c 59 54 42 6f 53 55 65 0a 68 31 30 61 55 41 73 67 45 73 78 42 75 irCmTCv2ZdlYTBoSUe.h10aUAsgEsxBu
1549c0 32 34 4c 55 54 69 34 53 38 73 43 41 77 45 41 41 61 4e 6a 4d 47 45 77 44 67 59 44 56 52 30 50 41 24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PA
1549e0 51 48 2f 42 41 51 44 41 67 47 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 0a QH/BAQDAgGGMA8GA1UdEwEB/wQFMAMB.
154a00 41 66 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4c 45 2b 77 32 6b 44 2b 4c 39 48 41 64 53 59 Af8wHQYDVR0OBBYEFLE+w2kD+L9HAdSY
154a20 4a 68 6f 49 41 75 39 6a 5a 43 76 44 4d 42 38 47 41 31 55 64 49 77 51 59 4d 42 61 41 46 4c 45 2b JhoIAu9jZCvDMB8GA1UdIwQYMBaAFLE+
154a40 77 32 6b 44 2b 4c 39 48 41 64 53 59 0a 4a 68 6f 49 41 75 39 6a 5a 43 76 44 4d 41 30 47 43 53 71 w2kD+L9HAdSY.JhoIAu9jZCvDMA0GCSq
154a60 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 42 41 51 41 63 47 67 61 58 33 4e 65 63 6e 7a 79 GSIb3DQEBBQUAA4IBAQAcGgaX3Necnzy
154a80 49 5a 67 59 49 56 79 48 62 49 55 66 34 4b 6d 65 71 76 78 67 79 64 6b 41 51 0a 56 38 47 4b 38 33 IZgYIVyHbIUf4KmeqvxgydkAQ.V8GK83
154aa0 72 5a 45 57 57 4f 4e 66 71 65 2f 45 57 31 6e 74 6c 4d 4d 55 75 34 6b 65 68 44 4c 49 36 7a 65 4d rZEWWONfqe/EW1ntlMMUu4kehDLI6zeM
154ac0 37 62 34 31 4e 35 63 64 62 6c 49 5a 51 42 32 6c 57 48 6d 69 52 6b 39 6f 70 6d 7a 4e 36 63 4e 38 7b41N5cdblIZQB2lWHmiRk9opmzN6cN8
154ae0 32 6f 4e 4c 46 70 0a 6d 79 50 49 6e 6e 67 69 4b 33 42 44 34 31 56 48 4d 57 45 5a 37 31 6a 46 68 2oNLFp.myPInngiK3BD41VHMWEZ71jFh
154b00 53 39 4f 4d 50 61 67 4d 52 59 6a 79 4f 66 69 5a 52 59 7a 79 37 38 61 47 36 41 39 2b 4d 70 65 69 S9OMPagMRYjyOfiZRYzy78aG6A9+Mpei
154b20 7a 47 4c 59 41 69 4a 4c 51 77 47 58 46 4b 33 78 50 6b 4b 0a 6d 4e 45 56 58 35 38 53 76 6e 77 32 zGLYAiJLQwGXFK3xPkK.mNEVX58Svnw2
154b40 59 7a 69 39 52 4b 52 2f 35 43 59 72 43 73 53 58 61 51 33 70 6a 4f 4c 41 45 46 65 34 79 48 59 53 Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYS
154b60 6b 56 58 79 53 47 6e 59 76 43 6f 43 57 77 39 45 31 43 41 78 32 2f 53 36 63 43 5a 64 6b 47 43 65 kVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe
154b80 0a 76 45 73 58 43 53 2b 30 79 78 35 44 61 4d 6b 48 4a 38 48 53 58 50 66 71 49 62 6c 6f 45 70 77 .vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw
154ba0 38 6e 4c 2b 65 2f 49 42 63 6d 32 50 4e 37 45 65 71 4a 53 64 6e 6f 44 66 7a 41 49 4a 39 56 4e 65 8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNe
154bc0 70 2b 4f 6b 75 45 36 4e 33 36 42 39 4b 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 p+OkuE6N36B9K.-----END.CERTIFICA
154be0 54 45 2d 2d 2d 2d 2d 0a 0a 43 65 72 74 70 6c 75 73 20 43 6c 61 73 73 20 32 20 50 72 69 6d 61 72 TE-----..Certplus.Class.2.Primar
154c00 79 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d y.CA.===========================
154c20 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 .-----BEGIN.CERTIFICATE-----.MII
154c40 44 6b 6a 43 43 41 6e 71 67 41 77 49 42 41 67 49 52 41 49 57 39 53 2f 50 59 32 75 4e 70 39 70 54 DkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pT
154c60 58 58 38 4f 6c 52 43 4d 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 50 54 45 XX8OlRCMwDQYJKoZIhvcNAQEFBQAwPTE
154c80 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 52 6c 49 78 45 54 41 50 42 67 4e 56 42 41 6f 54 43 45 LMAkGA1UE.BhMCRlIxETAPBgNVBAoTCE
154ca0 4e 6c 63 6e 52 77 62 48 56 7a 4d 52 73 77 47 51 59 44 56 51 51 44 45 78 4a 44 62 47 46 7a 63 79 NlcnRwbHVzMRswGQYDVQQDExJDbGFzcy
154cc0 41 79 49 46 42 79 61 57 31 68 63 6e 6b 67 51 30 45 77 48 68 63 4e 0a 4f 54 6b 77 4e 7a 41 33 4d AyIFByaW1hcnkgQ0EwHhcN.OTkwNzA3M
154ce0 54 63 77 4e 54 41 77 57 68 63 4e 4d 54 6b 77 4e 7a 41 32 4d 6a 4d 31 4f 54 55 35 57 6a 41 39 4d TcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9M
154d00 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 47 55 6a 45 52 4d 41 38 47 41 31 55 45 43 68 4d 49 51 QswCQYDVQQGEwJGUjERMA8GA1UEChMIQ
154d20 32 56 79 0a 64 48 42 73 64 58 4d 78 47 7a 41 5a 42 67 4e 56 42 41 4d 54 45 6b 4e 73 59 58 4e 7a 2Vy.dHBsdXMxGzAZBgNVBAMTEkNsYXNz
154d40 49 44 49 67 55 48 4a 70 62 57 46 79 65 53 42 44 51 54 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 IDIgUHJpbWFyeSBDQTCCASIwDQYJKoZI
154d60 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 0a 41 44 43 43 41 51 6f 43 67 67 45 42 41 4e 78 hvcNAQEBBQADggEP.ADCCAQoCggEBANx
154d80 51 6c 74 41 53 2b 44 58 53 43 48 68 36 74 6c 4a 77 2f 57 2f 75 7a 37 6b 52 79 31 31 33 34 65 7a QltAS+DXSCHh6tlJw/W/uz7kRy1134ez
154da0 70 66 67 53 4e 31 73 78 76 63 30 4e 58 59 4b 77 7a 43 6b 54 73 41 31 38 63 67 43 53 52 0a 35 61 pfgSN1sxvc0NXYKwzCkTsA18cgCSR.5a
154dc0 69 52 56 68 4b 43 39 2b 41 72 39 4e 75 75 59 53 36 4a 45 49 31 72 62 4c 71 7a 41 72 33 56 4e 73 iRVhKC9+Ar9NuuYS6JEI1rbLqzAr3VNs
154de0 56 49 4e 79 50 69 38 46 6f 33 55 6a 4d 58 45 75 4c 52 59 45 32 2b 4c 30 45 52 34 2f 59 58 4a 51 VINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQ
154e00 79 4c 6b 63 41 62 6d 58 75 5a 0a 56 67 32 76 37 74 4b 38 52 31 66 6a 65 55 6c 37 4e 49 6b 6e 4a yLkcAbmXuZ.Vg2v7tK8R1fjeUl7NIknJ
154e20 49 54 65 73 65 7a 70 57 45 37 2b 54 74 39 61 76 6b 47 74 72 41 6a 46 47 41 37 76 30 6c 50 75 62 ITesezpWE7+Tt9avkGtrAjFGA7v0lPub
154e40 4e 43 64 45 67 45 54 6a 64 79 41 59 76 65 56 71 55 53 49 53 6e 46 4f 0a 59 46 57 65 32 79 4d 5a NCdEgETjdyAYveVqUSISnFO.YFWe2yMZ
154e60 65 56 59 48 44 44 39 6a 43 31 79 77 34 72 35 2b 46 66 79 55 4d 31 68 42 4f 48 54 45 34 59 2b 4c eVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L
154e80 33 79 61 73 48 37 57 4c 4f 37 64 44 57 57 75 77 4a 4b 5a 74 6b 49 76 45 63 75 70 64 4d 35 69 33 3yasH7WLO7dDWWuwJKZtkIvEcupdM5i3
154ea0 79 39 35 65 0a 65 2b 2b 55 38 52 73 2b 79 73 6b 68 77 63 57 59 41 71 71 69 39 6c 74 33 6d 2f 56 y95e.e++U8Rs+yskhwcWYAqqi9lt3m/V
154ec0 2b 6c 6c 55 30 48 47 64 70 77 50 46 43 34 30 65 73 2f 43 67 63 5a 6c 55 43 41 77 45 41 41 61 4f +llU0HGdpwPFC40es/CgcZlUCAwEAAaO
154ee0 42 6a 44 43 42 69 54 41 50 42 67 4e 56 48 52 4d 45 0a 43 44 41 47 41 51 48 2f 41 67 45 4b 4d 41 BjDCBiTAPBgNVHRME.CDAGAQH/AgEKMA
154f00 73 47 41 31 55 64 44 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 34 33 sGA1UdDwQEAwIBBjAdBgNVHQ4EFgQU43
154f20 4d 74 33 38 73 4f 4b 41 7a 65 33 62 4f 6b 79 6e 6d 34 6a 72 76 6f 4d 49 6b 77 45 51 59 4a 0a 59 Mt38sOKAze3bOkynm4jrvoMIkwEQYJ.Y
154f40 49 5a 49 41 59 62 34 51 67 45 42 42 41 51 44 41 67 45 47 4d 44 63 47 41 31 55 64 48 77 51 77 4d IZIAYb4QgEBBAQDAgEGMDcGA1UdHwQwM
154f60 43 34 77 4c 4b 41 71 6f 43 69 47 4a 6d 68 30 64 48 41 36 4c 79 39 33 64 33 63 75 59 32 56 79 64 C4wLKAqoCiGJmh0dHA6Ly93d3cuY2Vyd
154f80 48 42 73 64 58 4d 75 59 32 39 74 0a 4c 30 4e 53 54 43 39 6a 62 47 46 7a 63 7a 49 75 59 33 4a 73 HBsdXMuY29t.L0NSTC9jbGFzczIuY3Js
154fa0 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 42 41 51 43 6e 56 4d 2b 49 MA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+I
154fc0 52 42 6e 4c 33 39 52 2f 41 4e 39 57 4d 32 4b 31 39 31 45 42 6b 4f 76 44 0a 50 39 47 49 52 4f 6b RBnL39R/AN9WM2K191EBkOvD.P9GIROk
154fe0 6b 58 65 2f 6e 46 4c 30 67 74 35 6f 38 41 50 35 74 6e 39 75 51 33 4e 66 30 59 74 61 4c 63 46 33 kXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3
155000 6e 35 51 52 49 71 57 68 38 79 66 46 43 38 32 78 2f 78 58 70 38 48 56 47 49 75 74 49 4b 50 69 64 n5QRIqWh8yfFC82x/xXp8HVGIutIKPid
155020 64 33 69 31 52 0a 54 74 4d 54 5a 47 6e 6b 4c 75 50 54 35 35 73 4a 6d 61 62 67 6c 5a 76 4f 47 74 d3i1R.TtMTZGnkLuPT55sJmabglZvOGt
155040 64 2f 76 6a 7a 4f 55 72 4d 52 46 63 45 50 46 38 30 44 75 35 77 6c 46 62 71 69 64 6f 6e 38 42 76 d/vjzOUrMRFcEPF80Du5wlFbqidon8Bv
155060 45 59 30 4a 4e 4c 44 6e 79 43 74 36 58 30 39 6c 2f 2b 0a 37 55 43 6d 6e 59 52 30 4f 62 6e 63 48 EY0JNLDnyCt6X09l/+.7UCmnYR0ObncH
155080 6f 55 57 32 69 6b 62 68 69 4d 41 79 62 75 4a 66 6d 36 41 69 42 34 76 46 4c 51 44 4a 4b 67 79 62 oUW2ikbhiMAybuJfm6AiB4vFLQDJKgyb
1550a0 77 4f 61 52 79 77 77 76 6c 62 47 70 30 49 43 63 42 76 71 51 4e 69 36 42 51 4e 77 42 36 53 57 0a wOaRywwvlbGp0ICcBvqQNi6BQNwB6SW.
1550c0 2f 2f 31 49 4d 77 72 68 33 4b 57 42 6b 4a 74 4e 33 58 33 6e 35 37 4c 4e 58 4d 68 71 6c 66 69 6c //1IMwrh3KWBkJtN3X3n57LNXMhqlfil
1550e0 39 6f 33 45 58 58 67 49 76 6e 73 47 31 6b 6e 50 47 54 5a 51 49 79 34 49 35 70 34 46 54 55 63 59 9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY
155100 31 52 62 70 73 64 61 32 45 4e 57 37 0a 6c 37 2b 69 6a 72 52 55 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 1Rbpsda2ENW7.l7+ijrRU.-----END.C
155120 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 44 53 54 20 52 6f 6f 74 20 43 41 20 58 33 0a ERTIFICATE-----..DST.Root.CA.X3.
155140 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 ==============.-----BEGIN.CERTIF
155160 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 53 6a 43 43 41 6a 4b 67 41 77 49 42 41 67 49 51 52 ICATE-----.MIIDSjCCAjKgAwIBAgIQR
155180 4b 2b 77 67 4e 61 6a 4a 37 71 4a 4d 44 6d 47 4c 76 68 41 61 7a 41 4e 42 67 6b 71 68 6b 69 47 39 K+wgNajJ7qJMDmGLvhAazANBgkqhkiG9
1551a0 77 30 42 41 51 55 46 41 44 41 2f 4d 53 51 77 49 67 59 44 56 51 51 4b 0a 45 78 74 45 61 57 64 70 w0BAQUFADA/MSQwIgYDVQQK.ExtEaWdp
1551c0 64 47 46 73 49 46 4e 70 5a 32 35 68 64 48 56 79 5a 53 42 55 63 6e 56 7a 64 43 42 44 62 79 34 78 dGFsIFNpZ25hdHVyZSBUcnVzdCBDby4x
1551e0 46 7a 41 56 42 67 4e 56 42 41 4d 54 44 6b 52 54 56 43 42 53 62 32 39 30 49 45 4e 42 49 46 67 7a FzAVBgNVBAMTDkRTVCBSb290IENBIFgz
155200 4d 42 34 58 0a 44 54 41 77 4d 44 6b 7a 4d 44 49 78 4d 54 49 78 4f 56 6f 58 44 54 49 78 4d 44 6b MB4X.DTAwMDkzMDIxMTIxOVoXDTIxMDk
155220 7a 4d 44 45 30 4d 44 45 78 4e 56 6f 77 50 7a 45 6b 4d 43 49 47 41 31 55 45 43 68 4d 62 52 47 6c zMDE0MDExNVowPzEkMCIGA1UEChMbRGl
155240 6e 61 58 52 68 62 43 42 54 61 57 64 75 59 58 52 31 0a 63 6d 55 67 56 48 4a 31 63 33 51 67 51 32 naXRhbCBTaWduYXR1.cmUgVHJ1c3QgQ2
155260 38 75 4d 52 63 77 46 51 59 44 56 51 51 44 45 77 35 45 55 31 51 67 55 6d 39 76 64 43 42 44 51 53 8uMRcwFQYDVQQDEw5EU1QgUm9vdCBDQS
155280 42 59 4d 7a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 0a 67 BYMzCCASIwDQYJKoZIhvcNAQEBBQAD.g
1552a0 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4e 2b 76 36 5a 64 51 43 49 4e 58 74 4d 78 69 5a gEPADCCAQoCggEBAN+v6ZdQCINXtMxiZ
1552c0 66 61 51 67 75 7a 48 30 79 78 72 4d 4d 70 62 37 4e 6e 44 66 63 64 41 77 52 67 55 69 2b 44 6f 4d faQguzH0yxrMMpb7NnDfcdAwRgUi+DoM
1552e0 33 5a 4a 4b 75 4d 2f 49 55 6d 54 0a 72 45 34 4f 72 7a 35 49 79 32 58 75 2f 4e 4d 68 44 32 58 53 3ZJKuM/IUmT.rE4Orz5Iy2Xu/NMhD2XS
155300 4b 74 6b 79 6a 34 7a 6c 39 33 65 77 45 6e 75 31 6c 63 43 4a 6f 36 6d 36 37 58 4d 75 65 67 77 47 Ktkyj4zl93ewEnu1lcCJo6m67XMuegwG
155320 4d 6f 4f 69 66 6f 6f 55 4d 4d 30 52 6f 4f 45 71 4f 4c 6c 35 43 6a 48 39 0a 55 4c 32 41 5a 64 2b MoOifooUMM0RoOEqOLl5CjH9.UL2AZd+
155340 33 55 57 4f 44 79 4f 4b 49 59 65 70 4c 59 59 48 73 55 6d 75 35 6f 75 4a 4c 47 69 69 66 53 4b 4f 3UWODyOKIYepLYYHsUmu5ouJLGiifSKO
155360 65 44 4e 6f 4a 6a 6a 34 58 4c 68 37 64 49 4e 39 62 78 69 71 4b 71 79 36 39 63 4b 33 46 43 78 6f eDNoJjj4XLh7dIN9bxiqKqy69cK3FCxo
155380 6c 6b 48 52 79 0a 78 58 74 71 71 7a 54 57 4d 49 6e 2f 35 57 67 54 65 31 51 4c 79 4e 61 75 37 46 lkHRy.xXtqqzTWMIn/5WgTe1QLyNau7F
1553a0 71 63 6b 68 34 39 5a 4c 4f 4d 78 74 2b 2f 79 55 46 77 37 42 5a 79 31 53 62 73 4f 46 55 35 51 39 qckh49ZLOMxt+/yUFw7BZy1SbsOFU5Q9
1553c0 44 38 2f 52 68 63 51 50 47 58 36 39 57 61 6d 34 30 64 0a 75 74 6f 6c 75 63 62 59 33 38 45 56 41 D8/RhcQPGX69Wam40d.utolucbY38EVA
1553e0 6a 71 72 32 6d 37 78 50 69 37 31 58 41 69 63 50 4e 61 44 61 65 51 51 6d 78 6b 71 74 69 6c 58 34 jqr2m7xPi71XAicPNaDaeQQmxkqtilX4
155400 2b 55 39 6d 35 2f 77 41 6c 30 43 41 77 45 41 41 61 4e 43 4d 45 41 77 44 77 59 44 56 52 30 54 0a +U9m5/wAl0CAwEAAaNCMEAwDwYDVR0T.
155420 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC
155440 41 51 59 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4d 53 6e 73 61 52 37 4c 48 48 36 32 2b 46 4c AQYwHQYDVR0OBBYEFMSnsaR7LHH62+FL
155460 6b 48 58 2f 78 42 56 67 68 59 6b 51 0a 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 kHX/xBVghYkQ.MA0GCSqGSIb3DQEBBQU
155480 41 41 34 49 42 41 51 43 6a 47 69 79 62 46 77 42 63 71 52 37 75 4b 47 59 33 4f 72 2b 44 78 7a 39 AA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9
1554a0 4c 77 77 6d 67 6c 53 42 64 34 39 6c 5a 52 4e 49 2b 44 54 36 39 69 6b 75 67 0a 64 42 2f 4f 45 49 LwwmglSBd49lZRNI+DT69ikug.dB/OEI
1554c0 4b 63 64 42 6f 64 66 70 67 61 33 63 73 54 53 37 4d 67 52 4f 53 52 36 63 7a 38 66 61 58 62 61 75 KcdBodfpga3csTS7MgROSR6cz8faXbau
1554e0 58 2b 35 76 33 67 54 74 32 33 41 44 71 31 63 45 6d 76 38 75 58 72 41 76 48 52 41 6f 73 5a 79 35 X+5v3gTt23ADq1cEmv8uXrAvHRAosZy5
155500 51 36 58 6b 6a 45 0a 47 42 35 59 47 56 38 65 41 6c 72 77 44 50 47 78 72 61 6e 63 57 59 61 4c 62 Q6XkjE.GB5YGV8eAlrwDPGxrancWYaLb
155520 75 6d 52 39 59 62 4b 2b 72 6c 6d 4d 36 70 5a 57 38 37 69 70 78 5a 7a 52 38 73 72 7a 4a 6d 77 4e umR9YbK+rlmM6pZW87ipxZzR8srzJmwN
155540 30 6a 50 34 31 5a 4c 39 63 38 50 44 48 49 79 68 38 62 77 0a 52 4c 74 54 63 6d 31 44 39 53 5a 49 0jP41ZL9c8PDHIyh8bw.RLtTcm1D9SZI
155560 6d 6c 4a 6e 74 31 69 72 2f 6d 64 32 63 58 6a 62 44 61 4a 57 46 42 4d 35 4a 44 47 46 6f 71 67 43 mlJnt1ir/md2cXjbDaJWFBM5JDGFoqgC
155580 57 6a 42 48 34 64 31 51 42 37 77 43 43 5a 41 41 36 32 52 6a 59 4a 73 57 76 49 6a 4a 45 75 62 53 WjBH4d1QB7wCCZAA62RjYJsWvIjJEubS
1555a0 0a 66 5a 47 4c 2b 54 30 79 6a 57 57 30 36 58 79 78 56 33 62 71 78 62 59 6f 4f 62 38 56 5a 52 7a .fZGL+T0yjWW06XyxV3bqxbYoOb8VZRz
1555c0 49 39 6e 65 57 61 67 71 4e 64 77 76 59 6b 51 73 45 6a 67 66 62 4b 62 59 4b 37 70 32 43 4e 54 55 I9neWagqNdwvYkQsEjgfbKbYK7p2CNTU
1555e0 51 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 44 53 54 Q.-----END.CERTIFICATE-----..DST
155600 20 41 43 45 53 20 43 41 20 58 36 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d .ACES.CA.X6.==============.-----
155620 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 43 54 43 43 41 BEGIN.CERTIFICATE-----.MIIECTCCA
155640 76 47 67 41 77 49 42 41 67 49 51 44 56 36 5a 43 74 61 64 74 33 6a 73 32 41 64 57 4f 34 59 56 32 vGgAwIBAgIQDV6ZCtadt3js2AdWO4YV2
155660 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 62 4d 51 73 77 43 51 59 44 56 TANBgkqhkiG9w0BAQUFADBbMQswCQYDV
155680 51 51 47 0a 45 77 4a 56 55 7a 45 67 4d 42 34 47 41 31 55 45 43 68 4d 58 52 47 6c 6e 61 58 52 68 QQG.EwJVUzEgMB4GA1UEChMXRGlnaXRh
1556a0 62 43 42 54 61 57 64 75 59 58 52 31 63 6d 55 67 56 48 4a 31 63 33 51 78 45 54 41 50 42 67 4e 56 bCBTaWduYXR1cmUgVHJ1c3QxETAPBgNV
1556c0 42 41 73 54 43 45 52 54 56 43 42 42 51 30 56 54 0a 4d 52 63 77 46 51 59 44 56 51 51 44 45 77 35 BAsTCERTVCBBQ0VT.MRcwFQYDVQQDEw5
1556e0 45 55 31 51 67 51 55 4e 46 55 79 42 44 51 53 42 59 4e 6a 41 65 46 77 30 77 4d 7a 45 78 4d 6a 41 EU1QgQUNFUyBDQSBYNjAeFw0wMzExMjA
155700 79 4d 54 45 35 4e 54 68 61 46 77 30 78 4e 7a 45 78 4d 6a 41 79 4d 54 45 35 4e 54 68 61 0a 4d 46 yMTE5NThaFw0xNzExMjAyMTE5NTha.MF
155720 73 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 56 54 4d 53 41 77 48 67 59 44 56 51 51 4b 45 78 sxCzAJBgNVBAYTAlVTMSAwHgYDVQQKEx
155740 64 45 61 57 64 70 64 47 46 73 49 46 4e 70 5a 32 35 68 64 48 56 79 5a 53 42 55 63 6e 56 7a 64 44 dEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdD
155760 45 52 4d 41 38 47 41 31 55 45 0a 43 78 4d 49 52 46 4e 55 49 45 46 44 52 56 4d 78 46 7a 41 56 42 ERMA8GA1UE.CxMIRFNUIEFDRVMxFzAVB
155780 67 4e 56 42 41 4d 54 44 6b 52 54 56 43 42 42 51 30 56 54 49 45 4e 42 49 46 67 32 4d 49 49 42 49 gNVBAMTDkRTVCBBQ0VTIENBIFg2MIIBI
1557a0 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 0a 41 51 38 41 4d 49 49 42 jANBgkqhkiG9w0BAQEFAAOC.AQ8AMIIB
1557c0 43 67 4b 43 41 51 45 41 75 54 33 31 4c 4d 6d 55 33 48 57 4b 6c 56 31 6a 36 49 52 33 64 6d 61 35 CgKCAQEAuT31LMmU3HWKlV1j6IR3dma5
1557e0 57 5a 46 63 52 74 32 53 50 70 2f 35 44 67 4f 30 50 57 47 53 76 53 4d 6d 74 57 50 75 6b 74 4b 65 WZFcRt2SPp/5DgO0PWGSvSMmtWPuktKe
155800 31 6a 7a 49 0a 44 5a 42 66 5a 49 47 78 71 41 67 4e 54 4e 6a 35 30 77 55 6f 55 72 51 42 4a 63 57 1jzI.DZBfZIGxqAgNTNj50wUoUrQBJcW
155820 56 48 41 78 2b 50 68 43 45 64 63 2f 42 47 5a 46 6a 7a 2b 69 6f 6b 59 69 35 51 31 4b 37 67 4c 46 VHAx+PhCEdc/BGZFjz+iokYi5Q1K7gLF
155840 56 69 59 73 78 2b 74 43 33 64 72 35 42 50 54 43 61 0a 70 43 49 6c 46 33 50 6f 48 75 4c 54 72 43 ViYsx+tC3dr5BPTCa.pCIlF3PoHuLTrC
155860 71 39 57 7a 67 68 31 53 70 4c 31 31 56 39 34 7a 70 56 76 64 64 74 61 77 4a 58 61 2b 5a 48 66 41 q9Wzgh1SpL11V94zpVvddtawJXa+ZHfA
155880 6a 49 67 72 72 65 70 34 63 39 6f 57 32 34 4d 46 62 43 73 77 4b 42 58 79 33 31 34 70 6f 77 0a 47 jIgrrep4c9oW24MFbCswKBXy314pow.G
1558a0 43 69 34 5a 74 50 4c 41 5a 5a 76 36 6f 70 46 56 64 62 67 6e 66 39 6e 4b 78 63 43 70 6b 34 61 61 Ci4ZtPLAZZv6opFVdbgnf9nKxcCpk4aa
1558c0 68 45 4c 66 72 64 37 35 35 6a 57 6a 48 5a 76 77 54 76 62 55 4a 4e 2b 35 64 43 4f 48 7a 65 34 76 hELfrd755jWjHZvwTvbUJN+5dCOHze4v
1558e0 62 72 47 6e 32 7a 70 66 44 50 79 0a 4d 6a 77 6d 52 2f 6f 6e 4a 41 4c 4a 66 68 31 62 69 45 49 54 brGn2zpfDPy.MjwmR/onJALJfh1biEIT
155900 61 6a 56 38 66 54 58 70 4c 6d 61 52 63 70 50 56 4d 69 62 45 64 50 56 54 6f 37 4e 64 6d 76 59 4a ajV8fTXpLmaRcpPVMibEdPVTo7NdmvYJ
155920 79 77 49 44 41 51 41 42 6f 34 48 49 4d 49 48 46 4d 41 38 47 41 31 55 64 0a 45 77 45 42 2f 77 51 ywIDAQABo4HIMIHFMA8GA1Ud.EwEB/wQ
155940 46 4d 41 4d 42 41 66 38 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 48 47 4d 42 38 FMAMBAf8wDgYDVR0PAQH/BAQDAgHGMB8
155960 47 41 31 55 64 45 51 51 59 4d 42 61 42 46 48 42 72 61 53 31 76 63 48 4e 41 64 48 4a 31 63 33 52 GA1UdEQQYMBaBFHBraS1vcHNAdHJ1c3R
155980 6b 63 33 51 75 0a 59 32 39 74 4d 47 49 47 41 31 55 64 49 41 52 62 4d 46 6b 77 56 77 59 4b 59 49 kc3Qu.Y29tMGIGA1UdIARbMFkwVwYKYI
1559a0 5a 49 41 57 55 44 41 67 45 42 41 54 42 4a 4d 45 63 47 43 43 73 47 41 51 55 46 42 77 49 42 46 6a ZIAWUDAgEBATBJMEcGCCsGAQUFBwIBFj
1559c0 74 6f 64 48 52 77 4f 69 38 76 64 33 64 33 4c 6e 52 79 0a 64 58 4e 30 5a 48 4e 30 4c 6d 4e 76 62 todHRwOi8vd3d3LnRy.dXN0ZHN0LmNvb
1559e0 53 39 6a 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 58 4d 76 63 47 39 73 61 57 4e 35 4c 30 46 44 52 S9jZXJ0aWZpY2F0ZXMvcG9saWN5L0FDR
155a00 56 4d 74 61 57 35 6b 5a 58 67 75 61 48 52 74 62 44 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 0a VMtaW5kZXguaHRtbDAdBgNVHQ4EFgQU.
155a20 43 58 49 47 54 68 68 44 44 2b 58 57 7a 4d 4e 71 69 7a 46 37 65 49 2b 6f 67 37 67 77 44 51 59 4a CXIGThhDD+XWzMNqizF7eI+og7gwDQYJ
155a40 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 4b 50 59 6a 74 61 79 32 38 34 46 KoZIhvcNAQEFBQADggEBAKPYjtay284F
155a60 35 7a 4c 4e 41 64 4d 45 41 2b 56 32 0a 35 46 59 72 6e 4a 6d 51 36 41 67 77 62 4e 39 39 50 65 37 5zLNAdMEA+V2.5FYrnJmQ6AgwbN99Pe7
155a80 6c 76 37 55 6b 51 49 52 4a 34 64 45 6f 72 73 54 43 4f 6c 4d 77 69 50 48 31 64 32 35 52 79 76 72 lv7UkQIRJ4dEorsTCOlMwiPH1d25Ryvr
155aa0 2f 6d 61 38 6b 58 78 75 67 2f 66 4b 73 68 4d 72 66 71 66 42 66 42 43 36 74 0a 46 72 38 68 6c 78 /ma8kXxug/fKshMrfqfBfBC6t.Fr8hlx
155ac0 43 42 50 65 50 2f 68 34 30 79 33 4a 54 6c 52 34 70 65 61 68 50 4a 6c 4a 55 39 30 75 37 49 4e 4a CBPeP/h40y3JTlR4peahPJlJU90u7INJ
155ae0 58 51 67 4e 53 74 4d 67 69 41 56 44 7a 67 76 56 4a 54 31 31 4a 38 73 6d 6b 2f 66 33 72 50 61 6e XQgNStMgiAVDzgvVJT11J8smk/f3rPan
155b00 54 4b 2b 67 51 71 0a 6e 45 78 61 42 71 58 70 49 4b 31 46 5a 67 39 70 38 64 32 2f 36 65 4d 79 69 TK+gQq.nExaBqXpIK1FZg9p8d2/6eMyi
155b20 2f 72 67 77 59 5a 4e 63 6a 77 75 32 4a 4e 34 43 69 72 34 32 4e 49 6e 50 52 6d 4a 58 31 70 37 69 /rgwYZNcjwu2JN4Cir42NInPRmJX1p7i
155b40 6a 76 4d 44 4e 70 52 72 73 63 4c 39 79 75 77 4e 77 58 73 0a 76 46 63 6a 34 6a 6a 53 6d 32 6a 7a jvMDNpRrscL9yuwNwXs.vFcj4jjSm2jz
155b60 56 68 4b 49 54 30 4a 38 75 44 48 45 74 64 76 6b 79 43 45 30 36 55 67 52 4e 65 37 36 78 35 4a 58 VhKIT0J8uDHEtdvkyCE06UgRNe76x5JX
155b80 78 5a 38 30 35 4d 66 32 39 77 34 4c 54 4a 78 6f 65 48 74 78 4d 63 66 72 48 75 42 6e 51 66 4f 33 xZ805Mf29w4LTJxoeHtxMcfrHuBnQfO3
155ba0 0a 6f 4b 66 4e 35 58 6f 7a 4e 6d 72 36 6d 69 73 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 .oKfN5XozNmr6mis=.-----END.CERTI
155bc0 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 55 52 4b 54 52 55 53 54 20 43 65 72 74 69 66 69 63 61 FICATE-----..TURKTRUST.Certifica
155be0 74 65 20 53 65 72 76 69 63 65 73 20 50 72 6f 76 69 64 65 72 20 52 6f 6f 74 20 32 0a 3d 3d 3d 3d te.Services.Provider.Root.2.====
155c00 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
155c20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 ==========.-----BEGIN.CERTIFICAT
155c40 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 50 44 43 43 41 79 53 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 E-----.MIIEPDCCAySgAwIBAgIBATANB
155c60 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 76 6a 45 2f 4d 44 30 47 41 31 55 45 41 gkqhkiG9w0BAQUFADCBvjE/MD0GA1UEA
155c80 77 77 32 56 4d 4f 63 55 6b 74 55 55 6c 56 54 56 43 42 46 0a 62 47 56 72 64 48 4a 76 62 6d 6c 72 ww2VMOcUktUUlVTVCBF.bGVrdHJvbmlr
155ca0 49 46 4e 6c 63 6e 52 70 5a 6d 6c 72 59 53 42 49 61 58 70 74 5a 58 51 67 55 32 48 45 6e 32 78 68 IFNlcnRpZmlrYSBIaXptZXQgU2HEn2xh
155cc0 65 63 53 78 59 38 53 78 63 38 53 78 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 55 55 6a 45 50 ecSxY8Sxc8SxMQswCQYDVQQGEwJUUjEP
155ce0 0a 4d 41 30 47 41 31 55 45 42 77 77 47 51 57 35 72 59 58 4a 68 4d 56 30 77 57 77 59 44 56 51 51 .MA0GA1UEBwwGQW5rYXJhMV0wWwYDVQQ
155d00 4b 44 46 52 55 77 35 78 53 53 31 52 53 56 56 4e 55 49 45 4a 70 62 47 64 70 49 4d 53 77 62 47 56 KDFRUw5xSS1RSVVNUIEJpbGdpIMSwbGV
155d20 30 61 63 57 66 61 57 30 67 64 6d 55 67 0a 51 6d 6c 73 61 63 57 66 61 57 30 67 52 38 4f 38 64 6d 0acWfaW0gdmUg.QmlsacWfaW0gR8O8dm
155d40 56 75 62 47 6e 45 6e 32 6b 67 53 47 6c 36 62 57 56 30 62 47 56 79 61 53 42 42 4c 73 57 65 4c 69 VubGnEn2kgSGl6bWV0bGVyaSBBLsWeLi
155d60 41 6f 59 79 6b 67 53 32 46 7a 78 4c 46 74 49 44 49 77 4d 44 55 77 48 68 63 4e 0a 4d 44 55 78 4d AoYykgS2FzxLFtIDIwMDUwHhcN.MDUxM
155d80 54 41 33 4d 54 41 77 4e 7a 55 33 57 68 63 4e 4d 54 55 77 4f 54 45 32 4d 54 41 77 4e 7a 55 33 57 TA3MTAwNzU3WhcNMTUwOTE2MTAwNzU3W
155da0 6a 43 42 76 6a 45 2f 4d 44 30 47 41 31 55 45 41 77 77 32 56 4d 4f 63 55 6b 74 55 55 6c 56 54 56 jCBvjE/MD0GA1UEAww2VMOcUktUUlVTV
155dc0 43 42 46 62 47 56 72 0a 64 48 4a 76 62 6d 6c 72 49 46 4e 6c 63 6e 52 70 5a 6d 6c 72 59 53 42 49 CBFbGVr.dHJvbmlrIFNlcnRpZmlrYSBI
155de0 61 58 70 74 5a 58 51 67 55 32 48 45 6e 32 78 68 65 63 53 78 59 38 53 78 63 38 53 78 4d 51 73 77 aXptZXQgU2HEn2xhecSxY8Sxc8SxMQsw
155e00 43 51 59 44 56 51 51 47 45 77 4a 55 55 6a 45 50 4d 41 30 47 0a 41 31 55 45 42 77 77 47 51 57 35 CQYDVQQGEwJUUjEPMA0G.A1UEBwwGQW5
155e20 72 59 58 4a 68 4d 56 30 77 57 77 59 44 56 51 51 4b 44 46 52 55 77 35 78 53 53 31 52 53 56 56 4e rYXJhMV0wWwYDVQQKDFRUw5xSS1RSVVN
155e40 55 49 45 4a 70 62 47 64 70 49 4d 53 77 62 47 56 30 61 63 57 66 61 57 30 67 64 6d 55 67 51 6d 6c UIEJpbGdpIMSwbGV0acWfaW0gdmUgQml
155e60 73 0a 61 63 57 66 61 57 30 67 52 38 4f 38 64 6d 56 75 62 47 6e 45 6e 32 6b 67 53 47 6c 36 62 57 s.acWfaW0gR8O8dmVubGnEn2kgSGl6bW
155e80 56 30 62 47 56 79 61 53 42 42 4c 73 57 65 4c 69 41 6f 59 79 6b 67 53 32 46 7a 78 4c 46 74 49 44 V0bGVyaSBBLsWeLiAoYykgS2FzxLFtID
155ea0 49 77 4d 44 55 77 67 67 45 69 4d 41 30 47 0a 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 IwMDUwggEiMA0G.CSqGSIb3DQEBAQUAA
155ec0 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 70 4e 6e 37 44 6b 55 4e 4d 77 78 6d 59 43 4IBDwAwggEKAoIBAQCpNn7DkUNMwxmYC
155ee0 4d 6a 48 57 48 74 50 46 6f 79 6c 7a 6b 6b 42 48 33 4d 4f 72 48 55 54 70 76 71 65 0a 4c 43 44 65 MjHWHtPFoylzkkBH3MOrHUTpvqe.LCDe
155f00 32 4a 41 4f 43 74 46 70 30 69 66 37 71 6e 65 66 4a 31 49 6c 34 73 74 64 32 4e 69 44 55 42 64 39 2JAOCtFp0if7qnefJ1Il4std2NiDUBd9
155f20 69 72 57 43 50 77 53 4f 74 4e 58 77 53 61 64 6b 74 78 34 75 58 79 43 63 55 48 56 50 72 2b 47 31 irWCPwSOtNXwSadktx4uXyCcUHVPr+G1
155f40 51 52 54 30 6d 4a 4b 49 0a 78 2b 58 6c 5a 45 64 68 52 33 6e 39 77 46 48 78 77 5a 6e 6e 33 4d 35 QRT0mJKI.x+XlZEdhR3n9wFHxwZnn3M5
155f60 71 2b 36 2b 31 41 54 44 63 52 68 7a 76 69 75 79 56 37 39 7a 2f 72 78 41 63 36 35 33 59 73 4b 70 q+6+1ATDcRhzviuyV79z/rxAc653YsKp
155f80 71 68 52 67 4e 46 38 6b 2b 76 2f 47 62 30 41 6d 4a 51 76 32 67 0a 51 72 53 64 69 56 46 56 4b 63 qhRgNF8k+v/Gb0AmJQv2g.QrSdiVFVKc
155fa0 38 62 63 4c 79 45 56 4b 33 42 45 78 2b 59 39 43 35 32 59 49 74 64 50 35 71 74 79 67 79 2f 70 31 8bcLyEVK3BEx+Y9C52YItdP5qtygy/p1
155fc0 5a 62 6a 33 65 34 31 5a 35 35 53 5a 49 2f 34 50 47 58 4a 48 70 73 6d 78 63 50 62 65 39 54 6d 4a Zbj3e41Z55SZI/4PGXJHpsmxcPbe9TmJ
155fe0 45 72 0a 35 41 2b 2b 57 58 6b 48 65 4c 75 58 6c 66 53 66 61 64 52 59 68 77 71 70 34 38 79 32 57 Er.5A++WXkHeLuXlfSfadRYhwqp48y2W
156000 42 6d 66 4a 69 47 78 78 46 6d 4e 73 6b 46 31 77 4b 31 70 7a 70 77 41 43 50 49 32 2f 7a 37 77 6f BmfJiGxxFmNskF1wK1pzpwACPI2/z7wo
156020 51 38 61 72 42 54 39 70 6d 41 50 41 67 4d 42 0a 41 41 47 6a 51 7a 42 42 4d 42 30 47 41 31 55 64 Q8arBT9pmAPAgMB.AAGjQzBBMB0GA1Ud
156040 44 67 51 57 42 42 54 5a 4e 37 4e 4f 42 66 33 5a 7a 35 38 53 46 71 36 32 69 53 2f 72 4a 54 71 49 DgQWBBTZN7NOBf3Zz58SFq62iS/rJTqI
156060 48 44 41 50 42 67 4e 56 48 51 38 42 41 66 38 45 42 51 4d 44 42 77 59 41 4d 41 38 47 0a 41 31 55 HDAPBgNVHQ8BAf8EBQMDBwYAMA8G.A1U
156080 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 dEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQE
1560a0 46 42 51 41 44 67 67 45 42 41 48 4a 67 6c 72 66 4a 33 4e 67 70 58 69 4f 46 58 37 4b 7a 4c 58 62 FBQADggEBAHJglrfJ3NgpXiOFX7KzLXb
1560c0 37 69 4e 63 58 2f 6e 74 74 0a 52 62 6a 32 68 57 79 66 49 76 77 71 45 43 4c 73 71 72 6b 77 39 71 7iNcX/ntt.Rbj2hWyfIvwqECLsqrkw9q
1560e0 74 59 31 6a 6b 51 4d 5a 6b 70 41 4c 32 4a 5a 6b 48 37 64 4e 36 52 77 52 67 4c 6e 37 56 68 79 35 tY1jkQMZkpAL2JZkH7dN6RwRgLn7Vhy5
156100 30 36 76 76 57 6f 6c 4b 4d 69 56 57 34 58 53 66 2f 53 4b 66 45 34 0a 4a 6c 33 76 70 61 6f 36 2b 06vvWolKMiVW4XSf/SKfE4.Jl3vpao6+
156120 58 46 37 35 74 70 59 48 64 4e 30 77 67 48 36 50 6d 6c 59 58 36 33 4c 61 4c 34 55 4c 70 74 73 77 XF75tpYHdN0wgH6PmlYX63LaL4ULptsw
156140 4c 62 63 6f 43 62 36 64 78 72 69 4a 4e 6f 61 4e 2b 42 6e 72 64 46 7a 67 77 32 6c 47 68 31 75 45 LbcoCb6dxriJNoaN+BnrdFzgw2lGh1uE
156160 70 4a 2b 0a 68 47 49 41 46 37 32 38 4a 52 68 58 38 74 65 70 62 31 6d 49 76 44 53 33 4c 6f 56 34 pJ+.hGIAF728JRhX8tepb1mIvDS3LoV4
156180 6e 5a 62 63 46 4d 4d 73 69 6c 4b 62 6c 6f 78 53 5a 6a 32 47 46 6f 74 48 75 46 45 4a 6a 4f 70 39 nZbcFMMsilKbloxSZj2GFotHuFEJjOp9
1561a0 7a 59 68 79 73 32 41 7a 73 66 41 4b 52 4f 38 50 0a 39 51 6b 33 69 43 51 4f 4c 47 73 67 4f 71 4c zYhys2AzsfAKRO8P.9Qk3iCQOLGsgOqL
1561c0 36 45 66 4a 41 4e 5a 78 45 61 47 4d 37 72 44 4e 76 59 37 77 73 75 2f 4c 53 79 33 5a 39 66 59 6a 6EfJANZxEaGM7rDNvY7wsu/LSy3Z9fYj
1561e0 59 48 63 67 46 48 57 36 38 6c 4b 6c 6d 6a 48 64 78 78 2f 71 52 2b 69 39 52 6e 75 6b 35 0a 55 72 YHcgFHW68lKlmjHdxx/qR+i9Rnuk5.Ur
156200 62 6e 42 45 49 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d bnBEI=.-----END.CERTIFICATE-----
156220 0a 0a 53 77 69 73 73 53 69 67 6e 20 47 6f 6c 64 20 43 41 20 2d 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d ..SwissSign.Gold.CA.-.G2.=======
156240 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 ===============.-----BEGIN.CERTI
156260 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 75 6a 43 43 41 36 4b 67 41 77 49 42 41 67 49 4a FICATE-----.MIIFujCCA6KgAwIBAgIJ
156280 41 4c 74 41 48 45 50 31 58 6b 2b 77 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 ALtAHEP1Xk+wMA0GCSqGSIb3DQEBBQUA
1562a0 4d 45 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 4e 49 4d 52 55 77 0a 45 77 59 44 56 51 51 MEUxCzAJBgNVBAYTAkNIMRUw.EwYDVQQ
1562c0 4b 45 77 78 54 64 32 6c 7a 63 31 4e 70 5a 32 34 67 51 55 63 78 48 7a 41 64 42 67 4e 56 42 41 4d KEwxTd2lzc1NpZ24gQUcxHzAdBgNVBAM
1562e0 54 46 6c 4e 33 61 58 4e 7a 55 32 6c 6e 62 69 42 48 62 32 78 6b 49 45 4e 42 49 43 30 67 52 7a 49 TFlN3aXNzU2lnbiBHb2xkIENBIC0gRzI
156300 77 48 68 63 4e 0a 4d 44 59 78 4d 44 49 31 4d 44 67 7a 4d 44 4d 31 57 68 63 4e 4d 7a 59 78 4d 44 wHhcN.MDYxMDI1MDgzMDM1WhcNMzYxMD
156320 49 31 4d 44 67 7a 4d 44 4d 31 57 6a 42 46 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 44 53 44 I1MDgzMDM1WjBFMQswCQYDVQQGEwJDSD
156340 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 55 33 64 70 0a 63 33 4e 54 61 57 64 75 49 45 46 48 4d EVMBMGA1UEChMMU3dp.c3NTaWduIEFHM
156360 52 38 77 48 51 59 44 56 51 51 44 45 78 5a 54 64 32 6c 7a 63 31 4e 70 5a 32 34 67 52 32 39 73 5a R8wHQYDVQQDExZTd2lzc1NpZ24gR29sZ
156380 43 42 44 51 53 41 74 49 45 63 79 4d 49 49 43 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 0a CBDQSAtIEcyMIICIjANBgkqhkiG9w0B.
1563a0 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 45 41 72 2b 54 75 66 6f 73 6b AQEFAAOCAg8AMIICCgKCAgEAr+Tufosk
1563c0 44 68 4a 75 71 56 41 74 46 6b 51 37 6b 70 4a 63 79 72 68 64 68 4a 4a 43 45 79 71 38 5a 56 65 43 DhJuqVAtFkQ7kpJcyrhdhJJCEyq8ZVeC
1563e0 51 44 35 58 4a 4d 31 51 69 79 55 71 0a 74 32 2f 38 37 36 4c 51 77 42 38 43 4a 45 6f 54 6c 6f 38 QD5XJM1QiyUq.t2/876LQwB8CJEoTlo8
156400 6a 45 2b 59 6f 57 41 43 6a 52 38 63 47 70 34 51 6a 4b 37 75 39 6c 69 74 2f 56 63 79 4c 77 56 63 jE+YoWACjR8cGp4QjK7u9lit/VcyLwVc
156420 66 44 6d 4a 6c 44 39 30 39 56 6f 70 7a 32 71 35 2b 62 62 71 42 48 48 35 43 0a 6a 43 41 31 32 55 fDmJlD909Vopz2q5+bbqBHH5C.jCA12U
156440 4e 4e 68 50 71 45 32 31 49 73 38 77 34 6e 64 77 74 72 76 78 45 76 63 6e 69 66 4c 74 67 2b 35 68 NNhPqE21Is8w4ndwtrvxEvcnifLtg+5h
156460 67 33 57 69 70 79 2b 64 70 69 6b 4a 4b 56 79 68 2b 63 36 62 4d 38 4b 38 76 7a 41 52 4f 2f 57 73 g3Wipy+dpikJKVyh+c6bM8K8vzARO/Ws
156480 2f 42 74 51 70 67 0a 76 64 32 31 6d 57 52 54 75 4b 43 57 73 32 2f 69 4a 6e 65 52 6a 4f 42 69 45 /BtQpg.vd21mWRTuKCWs2/iJneRjOBiE
1564a0 41 4b 66 4e 41 2b 6b 31 5a 49 7a 55 64 36 2b 6a 62 71 45 65 6d 41 38 61 74 75 66 4b 2b 7a 65 33 AKfNA+k1ZIzUd6+jbqEemA8atufK+ze3
1564c0 67 45 2f 62 6b 33 6c 55 49 62 4c 74 4b 2f 74 52 45 44 46 0a 79 6c 71 4d 32 74 49 72 66 4b 6a 75 gE/bk3lUIbLtK/tREDF.ylqM2tIrfKju
1564e0 76 71 62 6c 43 71 6f 4f 70 64 38 46 55 72 64 56 78 79 4a 64 4d 6d 71 58 6c 32 4d 54 32 38 6e 62 vqblCqoOpd8FUrdVxyJdMmqXl2MT28nb
156500 65 54 5a 37 68 54 70 4b 78 56 4b 4a 2b 53 54 6e 6e 58 65 70 67 76 39 56 48 4b 56 78 61 53 76 52 eTZ7hTpKxVKJ+STnnXepgv9VHKVxaSvR
156520 0a 41 69 54 79 73 79 62 55 61 39 6f 45 56 65 58 42 43 73 64 74 4d 44 65 51 4b 75 53 65 46 44 4e .AiTysybUa9oEVeXBCsdtMDeQKuSeFDN
156540 65 46 68 64 56 78 56 75 31 79 7a 53 4a 6b 76 47 64 4a 6f 2b 68 42 39 54 47 73 6e 68 51 32 77 77 eFhdVxVu1yzSJkvGdJo+hB9TGsnhQ2ww
156560 4d 43 33 77 4c 6a 45 48 58 75 65 6e 64 0a 6a 49 6a 33 6f 30 32 79 4d 73 7a 59 46 39 72 4e 74 38 MC3wLjEHXuend.jIj3o02yMszYF9rNt8
156580 35 6d 6e 64 54 39 58 76 2b 39 6c 7a 34 70 64 65 64 2b 70 32 4a 59 72 79 55 30 70 55 48 48 50 62 5mndT9Xv+9lz4pded+p2JYryU0pUHHPb
1565a0 77 4e 55 4d 6f 44 41 77 38 49 57 68 2b 56 63 33 68 69 76 36 39 79 46 47 6b 4f 0a 70 65 55 44 44 wNUMoDAw8IWh+Vc3hiv69yFGkO.peUDD
1565c0 6e 69 4f 4a 69 68 43 38 41 63 4c 59 69 41 51 5a 7a 6c 47 2b 71 6b 44 7a 41 51 34 65 6d 62 76 49 niOJihC8AcLYiAQZzlG+qkDzAQ4embvI
1565e0 49 4f 31 6a 45 70 57 6a 70 45 41 2f 49 35 63 67 74 36 49 6f 4d 50 69 61 47 35 39 6a 65 38 38 33 IO1jEpWjpEA/I5cgt6IoMPiaG59je883
156600 57 58 30 58 61 78 52 0a 37 79 53 41 72 71 70 57 6c 32 2f 35 72 58 33 61 59 54 2b 59 64 7a 79 6c WX0XaxR.7ySArqpWl2/5rX3aYT+Ydzyl
156620 6b 62 59 63 6a 43 62 61 5a 61 49 4a 62 63 48 69 56 4f 4f 35 79 6b 78 4d 67 49 39 33 65 32 43 61 kbYcjCbaZaIJbcHiVOO5ykxMgI93e2Ca
156640 48 74 2b 32 38 6b 67 65 44 72 70 4f 56 47 32 59 34 4f 47 69 0a 47 71 4a 33 55 4d 2f 45 59 35 4c Ht+28kgeDrpOVG2Y4OGi.GqJ3UM/EY5L
156660 73 52 78 6d 64 36 2b 5a 72 7a 73 45 43 41 77 45 41 41 61 4f 42 72 44 43 42 71 54 41 4f 42 67 4e sRxmd6+ZrzsECAwEAAaOBrDCBqTAOBgN
156680 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 VHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAU
1566a0 77 0a 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 57 79 56 37 6c 71 52 6c 55 58 w.AwEB/zAdBgNVHQ4EFgQUWyV7lqRlUX
1566c0 36 34 4f 66 50 41 65 47 5a 65 36 44 72 6e 38 4f 34 77 48 77 59 44 56 52 30 6a 42 42 67 77 46 6f 64OfPAeGZe6Drn8O4wHwYDVR0jBBgwFo
1566e0 41 55 57 79 56 37 6c 71 52 6c 55 58 36 34 0a 4f 66 50 41 65 47 5a 65 36 44 72 6e 38 4f 34 77 52 AUWyV7lqRlUX64.OfPAeGZe6Drn8O4wR
156700 67 59 44 56 52 30 67 42 44 38 77 50 54 41 37 42 67 6c 67 68 58 51 42 57 51 45 43 41 51 45 77 4c gYDVR0gBD8wPTA7BglghXQBWQECAQEwL
156720 6a 41 73 42 67 67 72 42 67 45 46 42 51 63 43 41 52 59 67 61 48 52 30 63 44 6f 76 0a 4c 33 4a 6c jAsBggrBgEFBQcCARYgaHR0cDov.L3Jl
156740 63 47 39 7a 61 58 52 76 63 6e 6b 75 63 33 64 70 63 33 4e 7a 61 57 64 75 4c 6d 4e 76 62 53 38 77 cG9zaXRvcnkuc3dpc3NzaWduLmNvbS8w
156760 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 49 42 41 43 65 36 34 35 52 38 DQYJKoZIhvcNAQEFBQADggIBACe645R8
156780 38 61 37 41 33 68 66 6d 0a 35 64 6a 56 39 56 53 77 67 2f 53 37 7a 56 34 46 65 30 2b 66 64 57 61 8a7A3hfm.5djV9VSwg/S7zV4Fe0+fdWa
1567a0 76 50 4f 68 57 66 76 78 79 65 44 67 44 32 53 74 69 47 77 43 35 2b 4f 6c 67 7a 63 7a 4f 55 59 72 vPOhWfvxyeDgD2StiGwC5+OlgzczOUYr
1567c0 48 55 44 46 75 34 55 70 2b 47 43 39 70 57 62 59 39 5a 49 45 72 0a 34 34 4f 45 35 69 4b 48 6a 6e HUDFu4Up+GC9pWbY9ZIEr.44OE5iKHjn
1567e0 33 67 37 67 4b 5a 59 62 67 65 39 4c 67 72 69 42 49 57 68 4d 49 78 6b 7a 69 57 4d 61 61 35 4f 31 3g7gKZYbge9LgriBIWhMIxkziWMaa5O1
156800 4d 2f 77 79 53 54 56 6c 74 70 6b 75 7a 46 77 62 73 34 41 4f 50 73 46 36 6d 34 33 4d 64 38 41 59 M/wySTVltpkuzFwbs4AOPsF6m43Md8AY
156820 4f 66 0a 4d 6b 65 36 55 69 49 30 48 54 4a 36 43 56 61 6e 66 43 55 32 71 54 31 4c 32 73 43 43 62 Of.Mke6UiI0HTJ6CVanfCU2qT1L2sCCb
156840 77 71 37 45 73 69 48 53 79 63 52 2b 52 34 74 78 35 4d 2f 6e 74 74 66 4a 6d 74 53 32 53 36 4b 38 wq7EsiHSycR+R4tx5M/nttfJmtS2S6K8
156860 52 54 47 52 49 30 56 71 62 65 2f 76 64 36 6d 0a 47 75 36 75 4c 66 74 49 64 78 66 2b 75 2b 79 76 RTGRI0Vqbe/vd6m.Gu6uLftIdxf+u+yv
156880 47 50 55 71 55 66 41 35 68 4a 65 56 62 47 34 62 77 79 76 45 64 47 42 35 4a 62 41 4b 4a 39 2f 66 GPUqUfA5hJeVbG4bwyvEdGB5JbAKJ9/f
1568a0 58 74 49 35 7a 30 56 39 51 6b 76 66 73 79 77 65 78 63 5a 64 79 6c 55 36 6f 4a 78 70 0a 6d 6f 2f XtI5z0V9QkvfsywexcZdylU6oJxp.mo/
1568c0 61 37 37 4b 77 50 4a 2b 48 62 42 49 72 5a 58 41 56 55 6a 45 61 4a 4d 39 76 4d 53 4e 51 48 34 78 a77KwPJ+HbBIrZXAVUjEaJM9vMSNQH4x
1568e0 50 6a 79 50 44 64 45 46 6a 48 46 57 6f 46 4e 30 2b 34 46 46 51 7a 2f 45 62 4d 46 59 4f 6b 72 43 PjyPDdEFjHFWoFN0+4FFQz/EbMFYOkrC
156900 43 68 64 69 44 79 79 4a 6b 0a 76 43 32 34 4a 64 56 55 6f 72 67 47 36 71 32 53 70 43 53 67 77 59 ChdiDyyJk.vC24JdVUorgG6q2SpCSgwY
156920 61 31 53 68 4e 71 52 38 38 75 43 31 61 56 56 4d 76 4f 6d 74 74 71 74 4b 61 79 32 30 45 49 68 69 a1ShNqR88uC1aVVMvOmttqtKay20EIhi
156940 64 33 39 32 71 67 51 6d 77 4c 4f 4d 37 58 64 56 41 79 6b 73 4c 66 0a 4b 7a 41 69 53 4e 44 56 51 d392qgQmwLOM7XdVAyksLf.KzAiSNDVQ
156960 54 67 6c 58 61 54 70 58 5a 2f 47 6c 48 58 51 52 66 30 77 6c 30 4f 50 6b 4b 73 4b 78 34 5a 7a 59 TglXaTpXZ/GlHXQRf0wl0OPkKsKx4ZzY
156980 45 70 70 4c 64 36 6c 65 4e 63 47 32 6d 71 65 53 7a 35 33 4f 69 41 54 49 67 48 51 76 32 69 65 59 EppLd6leNcG2mqeSz53OiATIgHQv2ieY
1569a0 32 42 72 0a 4e 55 30 4c 62 62 71 68 50 63 43 54 34 48 38 6a 73 31 57 74 63 69 56 4f 52 76 6e 53 2Br.NU0LbbqhPcCT4H8js1WtciVORvnS
1569c0 46 75 2b 77 5a 4d 45 42 6e 75 6e 4b 6f 47 71 59 44 73 2f 59 59 50 49 76 53 62 6a 6b 51 75 45 34 Fu+wZMEBnunKoGqYDs/YYPIvSbjkQuE4
1569e0 4e 52 62 30 79 47 35 50 39 34 46 57 36 4c 71 6a 0a 76 69 4f 76 72 76 31 76 41 2b 41 43 4f 7a 42 NRb0yG5P94FW6Lqj.viOvrv1vA+ACOzB
156a00 32 2b 68 74 74 51 63 38 42 73 65 6d 34 79 57 62 30 32 79 62 7a 4f 71 52 30 38 6b 6b 6b 57 38 6d 2+httQc8Bsem4yWb02ybzOqR08kkkW8m
156a20 77 30 46 66 42 2b 6a 35 36 34 5a 66 4a 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 w0FfB+j564ZfJ.-----END.CERTIFICA
156a40 54 45 2d 2d 2d 2d 2d 0a 0a 53 77 69 73 73 53 69 67 6e 20 53 69 6c 76 65 72 20 43 41 20 2d 20 47 TE-----..SwissSign.Silver.CA.-.G
156a60 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 2.========================.-----
156a80 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 76 54 43 43 41 BEGIN.CERTIFICATE-----.MIIFvTCCA
156aa0 36 57 67 41 77 49 42 41 67 49 49 54 78 76 55 4c 31 53 37 4c 30 73 77 44 51 59 4a 4b 6f 5a 49 68 6WgAwIBAgIITxvUL1S7L0swDQYJKoZIh
156ac0 76 63 4e 41 51 45 46 42 51 41 77 52 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 51 30 67 78 46 vcNAQEFBQAwRzELMAkGA1UEBhMCQ0gxF
156ae0 54 41 54 0a 42 67 4e 56 42 41 6f 54 44 46 4e 33 61 58 4e 7a 55 32 6c 6e 62 69 42 42 52 7a 45 68 TAT.BgNVBAoTDFN3aXNzU2lnbiBBRzEh
156b00 4d 42 38 47 41 31 55 45 41 78 4d 59 55 33 64 70 63 33 4e 54 61 57 64 75 49 46 4e 70 62 48 5a 6c MB8GA1UEAxMYU3dpc3NTaWduIFNpbHZl
156b20 63 69 42 44 51 53 41 74 49 45 63 79 4d 42 34 58 0a 44 54 41 32 4d 54 41 79 4e 54 41 34 4d 7a 49 ciBDQSAtIEcyMB4X.DTA2MTAyNTA4MzI
156b40 30 4e 6c 6f 58 44 54 4d 32 4d 54 41 79 4e 54 41 34 4d 7a 49 30 4e 6c 6f 77 52 7a 45 4c 4d 41 6b 0NloXDTM2MTAyNTA4MzI0NlowRzELMAk
156b60 47 41 31 55 45 42 68 4d 43 51 30 67 78 46 54 41 54 42 67 4e 56 42 41 6f 54 44 46 4e 33 0a 61 58 GA1UEBhMCQ0gxFTATBgNVBAoTDFN3.aX
156b80 4e 7a 55 32 6c 6e 62 69 42 42 52 7a 45 68 4d 42 38 47 41 31 55 45 41 78 4d 59 55 33 64 70 63 33 NzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3
156ba0 4e 54 61 57 64 75 49 46 4e 70 62 48 5a 6c 63 69 42 44 51 53 41 74 49 45 63 79 4d 49 49 43 49 6a NTaWduIFNpbHZlciBDQSAtIEcyMIICIj
156bc0 41 4e 42 67 6b 71 68 6b 69 47 0a 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 ANBgkqhkiG.9w0BAQEFAAOCAg8AMIICC
156be0 67 4b 43 41 67 45 41 78 50 47 48 66 39 4e 34 4d 66 63 34 79 66 6a 44 6d 55 4f 38 78 2f 65 38 4e gKCAgEAxPGHf9N4Mfc4yfjDmUO8x/e8N
156c00 2b 64 4f 63 62 70 4c 6a 36 56 7a 48 56 78 75 6d 4b 34 44 56 36 34 34 0a 4e 30 4d 76 46 7a 30 66 +dOcbpLj6VzHVxumK4DV644.N0MvFz0f
156c20 79 4d 35 6f 45 4d 46 34 72 68 6b 44 4b 78 44 36 4c 48 6d 44 39 75 69 35 61 4c 6c 56 38 67 52 45 yM5oEMF4rhkDKxD6LHmD9ui5aLlV8gRE
156c40 70 7a 6e 35 2f 41 53 4c 48 76 47 69 54 53 66 35 59 58 75 36 74 2b 57 69 45 37 62 72 59 54 37 51 pzn5/ASLHvGiTSf5YXu6t+WiE7brYT7Q
156c60 62 4e 48 6d 0a 2b 2f 70 65 37 52 32 30 6e 71 41 31 57 36 47 53 79 2f 42 4a 6b 76 36 46 43 67 55 bNHm.+/pe7R20nqA1W6GSy/BJkv6FCgU
156c80 2b 35 74 6b 4c 34 6b 2b 37 33 4a 55 33 2f 4a 48 70 4d 6a 55 69 30 52 38 36 54 69 65 46 6e 62 41 +5tkL4k+73JU3/JHpMjUi0R86TieFnbA
156ca0 56 6c 44 4c 61 59 51 31 48 54 57 42 43 72 70 4a 48 0a 36 49 4e 61 55 46 6a 70 69 6f 75 35 58 61 VlDLaYQ1HTWBCrpJH.6INaUFjpiou5Xa
156cc0 48 63 33 5a 6c 4b 48 7a 5a 6e 75 30 6a 6b 67 37 59 33 36 30 67 36 72 77 39 6e 6a 78 63 48 36 41 Hc3ZlKHzZnu0jkg7Y360g6rw9njxcH6A
156ce0 54 4b 37 32 6f 78 68 39 54 41 74 76 6d 55 63 58 74 6e 5a 4c 69 32 6b 55 70 43 65 32 55 75 0a 4d TK72oxh9TAtvmUcXtnZLi2kUpCe2Uu.M
156d00 47 6f 4d 39 5a 44 75 6c 65 62 79 7a 59 4c 73 32 61 46 4b 37 50 61 79 53 2b 56 46 68 65 5a 74 65 GoM9ZDulebyzYLs2aFK7PayS+VFheZte
156d20 4a 4d 45 4c 70 79 43 62 54 61 70 78 44 46 6b 48 34 61 44 43 79 72 30 4e 51 70 34 79 56 58 50 51 JMELpyCbTapxDFkH4aDCyr0NQp4yVXPQ
156d40 62 42 48 36 54 43 66 6d 62 35 68 0a 71 41 61 45 75 53 68 36 58 7a 6a 5a 47 36 6b 34 73 49 4e 2f bBH6TCfmb5h.qAaEuSh6XzjZG6k4sIN/
156d60 63 38 48 44 4f 30 67 71 67 67 38 68 6d 37 6a 4d 71 44 58 44 68 42 75 44 73 7a 36 2b 70 4a 56 70 c8HDO0gqgg8hm7jMqDXDhBuDsz6+pJVp
156d80 41 54 71 4a 41 48 67 45 32 63 6e 30 6d 52 6d 72 56 6e 35 62 69 34 59 35 0a 46 5a 47 6b 45 43 77 ATqJAHgE2cn0mRmrVn5bi4Y5.FZGkECw
156da0 4a 4d 6f 42 67 73 35 50 41 4b 72 59 59 43 35 31 2b 6a 55 6e 79 45 45 70 2f 2b 64 56 47 4c 78 6d JMoBgs5PAKrYYC51+jUnyEEp/+dVGLxm
156dc0 53 6f 35 6d 6e 4a 71 79 37 6a 44 7a 6d 44 72 78 48 42 39 78 7a 55 66 46 77 5a 43 38 49 2b 62 52 So5mnJqy7jDzmDrxHB9xzUfFwZC8I+bR
156de0 48 48 54 42 73 0a 52 4f 6f 70 4e 34 57 53 61 47 61 38 67 7a 6a 2b 65 7a 6b 75 30 31 44 77 48 2f HHTBs.ROopN4WSaGa8gzj+ezku01DwH/
156e00 74 65 59 4c 61 70 70 76 6f 6e 51 66 47 62 47 48 4c 79 39 59 52 30 53 73 6c 6e 78 46 53 75 53 47 teYLappvonQfGbGHLy9YR0SslnxFSuSG
156e20 54 66 6a 4e 46 75 73 42 33 68 42 34 38 49 48 70 6d 63 0a 63 65 6c 4d 32 4b 58 33 52 78 49 66 64 TfjNFusB3hB48IHpmc.celM2KX3RxIfd
156e40 4e 46 52 6e 6f 62 7a 77 71 49 6a 51 41 74 7a 32 30 75 6d 35 33 4d 47 6a 4d 47 67 36 63 46 5a 72 NFRnobzwqIjQAtz20um53MGjMGg6cFZr
156e60 45 62 36 35 69 2f 34 7a 33 47 63 52 6d 32 35 78 42 57 4e 4f 48 6b 44 52 55 6a 76 78 46 33 58 0a Eb65i/4z3GcRm25xBWNOHkDRUjvxF3X.
156e80 43 4f 36 48 4f 53 4b 47 73 67 30 50 57 45 50 33 63 61 6c 49 4c 76 33 71 31 68 38 43 41 77 45 41 CO6HOSKGsg0PWEP3calILv3q1h8CAwEA
156ea0 41 61 4f 42 72 44 43 42 71 54 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 AaOBrDCBqTAOBgNVHQ8BAf8EBAMCAQYw
156ec0 44 77 59 44 56 52 30 54 41 51 48 2f 0a 42 41 55 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 DwYDVR0TAQH/.BAUwAwEB/zAdBgNVHQ4
156ee0 45 46 67 51 55 46 36 44 4e 77 65 52 42 74 6a 70 62 4f 38 74 46 6e 62 30 63 77 70 6a 36 68 6c 67 EFgQUF6DNweRBtjpbO8tFnb0cwpj6hlg
156f00 77 48 77 59 44 56 52 30 6a 42 42 67 77 46 6f 41 55 46 36 44 4e 77 65 52 42 0a 74 6a 70 62 4f 38 wHwYDVR0jBBgwFoAUF6DNweRB.tjpbO8
156f20 74 46 6e 62 30 63 77 70 6a 36 68 6c 67 77 52 67 59 44 56 52 30 67 42 44 38 77 50 54 41 37 42 67 tFnb0cwpj6hlgwRgYDVR0gBD8wPTA7Bg
156f40 6c 67 68 58 51 42 57 51 45 44 41 51 45 77 4c 6a 41 73 42 67 67 72 42 67 45 46 42 51 63 43 41 52 lghXQBWQEDAQEwLjAsBggrBgEFBQcCAR
156f60 59 67 61 48 52 30 0a 63 44 6f 76 4c 33 4a 6c 63 47 39 7a 61 58 52 76 63 6e 6b 75 63 33 64 70 63 YgaHR0.cDovL3JlcG9zaXRvcnkuc3dpc
156f80 33 4e 7a 61 57 64 75 4c 6d 4e 76 62 53 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFB
156fa0 51 41 44 67 67 49 42 41 48 50 47 67 65 41 6e 30 69 30 50 0a 34 4a 55 77 34 70 70 42 66 31 41 73 QADggIBAHPGgeAn0i0P.4JUw4ppBf1As
156fc0 58 31 39 69 59 61 6d 47 61 6d 6b 59 44 48 52 4a 31 6c 32 45 36 6b 46 53 47 47 39 59 72 56 42 57 X19iYamGamkYDHRJ1l2E6kFSGG9YrVBW
156fe0 49 47 72 47 76 53 68 70 57 4a 48 63 6b 52 45 31 71 54 6f 64 76 42 71 6c 59 4a 37 59 48 33 39 46 IGrGvShpWJHckRE1qTodvBqlYJ7YH39F
157000 0a 6b 57 6e 5a 66 72 74 34 63 73 45 47 44 79 72 4f 6a 34 56 77 59 61 79 67 7a 51 75 34 4f 53 6c .kWnZfrt4csEGDyrOj4VwYaygzQu4OSl
157020 57 68 44 4a 4f 68 72 73 39 78 43 72 5a 31 78 39 79 37 76 35 52 6f 53 4a 42 73 58 45 43 59 78 71 WhDJOhrs9xCrZ1x9y7v5RoSJBsXECYxq
157040 43 73 47 4b 72 58 6c 63 53 48 39 2f 4c 0a 33 58 57 67 77 46 31 35 6b 49 77 62 34 46 44 6d 33 6a CsGKrXlcSH9/L.3XWgwF15kIwb4FDm3j
157060 48 2b 6d 48 74 77 58 36 57 51 32 4b 33 34 41 72 5a 76 30 32 44 64 51 45 73 69 78 54 32 74 4f 6e H+mHtwX6WQ2K34ArZv02DdQEsixT2tOn
157080 71 66 47 68 70 48 6b 58 6b 7a 75 6f 4c 63 4d 6d 6b 44 6c 6d 34 66 53 2f 42 78 0a 2f 75 4e 6e 63 qfGhpHkXkzuoLcMmkDlm4fS/Bx./uNnc
1570a0 71 43 78 76 31 79 4c 35 50 71 5a 49 73 65 45 75 52 75 4e 49 35 63 2f 37 53 58 67 7a 32 57 37 39 qCxv1yL5PqZIseEuRuNI5c/7SXgz2W79
1570c0 57 45 45 37 39 30 65 73 6c 70 42 49 6c 71 68 6e 31 30 73 36 46 76 4a 62 61 6b 4d 44 48 69 71 59 WEE790eslpBIlqhn10s6FvJbakMDHiqY
1570e0 4d 5a 57 6a 77 46 61 0a 44 47 69 38 61 52 6c 35 78 42 39 2b 6c 77 57 2f 78 65 6b 6b 55 56 37 55 MZWjwFa.DGi8aRl5xB9+lwW/xekkUV7U
157100 31 55 74 54 37 64 6b 6a 57 6a 59 44 5a 61 50 42 41 36 31 42 4d 50 4e 47 47 34 57 51 72 32 57 31 1UtT7dkjWjYDZaPBA61BMPNGG4WQr2W1
157120 31 62 48 6b 46 6c 74 34 64 52 32 58 65 6d 31 5a 71 53 71 50 0a 65 39 37 44 68 34 6b 51 6d 55 6c 1bHkFlt4dR2Xem1ZqSqP.e97Dh4kQmUl
157140 7a 65 4d 67 39 76 56 45 31 64 43 72 56 38 58 35 70 47 79 71 37 4f 37 30 6c 75 4a 70 61 50 58 4a zeMg9vVE1dCrV8X5pGyq7O70luJpaPXJ
157160 68 6b 47 61 48 37 67 7a 57 54 64 51 52 64 41 74 71 2f 67 73 44 2f 4b 4e 56 56 34 6e 2b 53 73 75 hkGaH7gzWTdQRdAtq/gsD/KNVV4n+Ssu
157180 75 0a 57 78 63 46 79 50 4b 4e 49 7a 46 54 4f 4e 49 74 61 6a 2b 43 75 59 30 49 61 76 64 65 51 58 u.WxcFyPKNIzFTONItaj+CuY0IavdeQX
1571a0 52 75 77 78 46 2b 42 36 77 70 59 4a 45 2f 4f 4d 70 58 45 41 32 39 4d 43 2f 48 70 65 5a 42 6f 4e RuwxF+B6wpYJE/OMpXEA29MC/HpeZBoN
1571c0 71 75 42 59 65 61 6f 4b 52 6c 62 45 77 4a 0a 44 49 6d 36 75 4e 4f 35 77 4a 4f 4b 4d 50 71 4e 35 quBYeaoKRlbEwJ.DIm6uNO5wJOKMPqN5
1571e0 5a 70 72 46 51 46 4f 5a 36 72 61 59 6c 59 2b 68 41 68 6d 30 73 51 32 66 61 63 2b 45 50 79 49 34 ZprFQFOZ6raYlY+hAhm0sQ2fac+EPyI4
157200 4e 53 41 35 51 43 39 71 76 4e 4f 42 71 4e 36 61 76 6c 69 63 75 4d 4a 54 2b 75 62 0a 44 67 45 6a NSA5QC9qvNOBqN6avlicuMJT+ub.DgEj
157220 38 5a 2b 37 66 4e 7a 63 62 42 47 58 4a 62 4c 79 74 47 4d 55 30 67 59 71 5a 34 79 44 39 63 37 71 8Z+7fNzcbBGXJbLytGMU0gYqZ4yD9c7q
157240 42 39 69 61 61 68 37 73 35 41 71 37 4b 6b 7a 72 43 57 41 35 7a 73 70 69 32 43 35 75 0a 2d 2d 2d B9iaah7s5Aq7KkzrCWA5zspi2C5u.---
157260 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 65 6f 54 72 75 73 74 --END.CERTIFICATE-----..GeoTrust
157280 20 50 72 69 6d 61 72 79 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 .Primary.Certification.Authority
1572a0 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .===============================
1572c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 =========.-----BEGIN.CERTIFICATE
1572e0 2d 2d 2d 2d 2d 0a 4d 49 49 44 66 44 43 43 41 6d 53 67 41 77 49 42 41 67 49 51 47 4b 79 31 61 76 -----.MIIDfDCCAmSgAwIBAgIQGKy1av
157300 31 70 74 68 55 36 59 32 79 76 32 76 72 45 6f 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQ
157320 55 46 41 44 42 59 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 56 55 7a 45 57 4d 42 51 47 41 UFADBYMQswCQYDVQQG.EwJVUzEWMBQGA
157340 31 55 45 43 68 4d 4e 52 32 56 76 56 48 4a 31 63 33 51 67 53 57 35 6a 4c 6a 45 78 4d 43 38 47 41 1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA
157360 31 55 45 41 78 4d 6f 52 32 56 76 56 48 4a 31 63 33 51 67 55 48 4a 70 62 57 46 79 65 53 42 44 0a 1UEAxMoR2VvVHJ1c3QgUHJpbWFyeSBD.
157380 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 54 41 65 ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe
1573a0 46 77 30 77 4e 6a 45 78 4d 6a 63 77 4d 44 41 77 4d 44 42 61 46 77 30 7a 4e 6a 41 33 4d 54 59 79 Fw0wNjExMjcwMDAwMDBaFw0zNjA3MTYy
1573c0 4d 7a 55 35 4e 54 6c 61 4d 46 67 78 0a 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 56 54 4d 52 59 MzU5NTlaMFgx.CzAJBgNVBAYTAlVTMRY
1573e0 77 46 41 59 44 56 51 51 4b 45 77 31 48 5a 57 39 55 63 6e 56 7a 64 43 42 4a 62 6d 4d 75 4d 54 45 wFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTE
157400 77 4c 77 59 44 56 51 51 44 45 79 68 48 5a 57 39 55 63 6e 56 7a 64 43 42 51 0a 63 6d 6c 74 59 58 wLwYDVQQDEyhHZW9UcnVzdCBQ.cmltYX
157420 4a 35 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 J5IENlcnRpZmljYXRpb24gQXV0aG9yaX
157440 52 35 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 R5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ
157460 38 41 4d 49 49 42 0a 43 67 4b 43 41 51 45 41 76 72 67 56 65 2f 2f 55 66 48 31 6e 72 59 4e 6b 65 8AMIIB.CgKCAQEAvrgVe//UfH1nrYNke
157480 38 68 43 55 79 33 66 39 6f 51 49 49 47 48 57 41 56 6c 71 6e 45 51 52 72 2b 39 32 2f 5a 56 2b 7a 8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+z
1574a0 6d 45 77 75 33 71 44 58 77 4b 39 41 57 62 4b 37 68 57 4e 0a 62 36 45 77 6e 4c 32 68 68 5a 36 55 mEwu3qDXwK9AWbK7hWN.b6EwnL2hhZ6U
1574c0 4f 76 4e 57 69 41 41 78 7a 39 6a 75 61 70 59 43 32 65 30 44 6a 50 74 31 62 65 66 71 75 46 55 57 OvNWiAAxz9juapYC2e0DjPt1befquFUW
1574e0 42 52 61 61 39 4f 42 65 73 59 6a 41 5a 49 56 63 46 55 32 49 78 37 65 36 34 48 58 70 72 51 55 39 BRaa9OBesYjAZIVcFU2Ix7e64HXprQU9
157500 0a 6e 63 65 4a 53 4f 43 37 4b 4d 67 44 34 54 43 54 5a 46 35 53 77 46 6c 77 49 6a 56 58 69 49 72 .nceJSOC7KMgD4TCTZF5SwFlwIjVXiIr
157520 78 6c 51 71 44 31 37 77 78 63 77 45 30 37 65 39 47 63 65 42 72 41 71 67 31 63 6d 75 58 6d 32 62 xlQqD17wxcwE07e9GceBrAqg1cmuXm2b
157540 67 79 78 78 35 58 39 67 61 42 47 67 65 0a 52 77 4c 6d 6e 57 44 69 4e 70 63 42 33 38 34 31 6b 74 gyxx5X9gaBGge.RwLmnWDiNpcB3841kt
157560 2b 2b 5a 38 64 74 64 31 6b 37 6a 35 33 57 6b 42 57 55 76 45 49 30 45 4d 45 35 2b 62 45 6e 50 6e ++Z8dtd1k7j53WkBWUvEI0EME5+bEnPn
157580 37 57 69 6e 58 46 73 71 2b 57 30 36 4c 65 6d 2b 53 59 76 6e 33 68 36 59 47 74 0a 74 6d 2f 38 31 7WinXFsq+W06Lem+SYvn3h6YGt.tm/81
1575a0 77 37 61 34 44 53 77 44 52 70 33 35 2b 4d 49 6d 4f 39 59 2b 70 79 45 74 7a 61 76 77 74 2b 73 30 w7a4DSwDRp35+MImO9Y+pyEtzavwt+s0
1575c0 76 51 51 42 6e 42 78 4e 51 49 44 41 51 41 42 6f 30 49 77 51 44 41 50 42 67 4e 56 48 52 4d 42 41 vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBA
1575e0 66 38 45 42 54 41 44 0a 41 51 48 2f 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 f8EBTAD.AQH/MA4GA1UdDwEB/wQEAwIB
157600 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 4c 4e 56 51 51 5a 63 56 69 2f 43 50 4e 6d 46 62 BjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFb
157620 53 76 74 72 32 5a 6e 4a 4d 35 49 77 44 51 59 4a 4b 6f 5a 49 0a 68 76 63 4e 41 51 45 46 42 51 41 Svtr2ZnJM5IwDQYJKoZI.hvcNAQEFBQA
157640 44 67 67 45 42 41 46 70 77 66 79 7a 64 74 7a 52 50 39 59 5a 52 71 53 61 2b 53 37 69 71 38 58 45 DggEBAFpwfyzdtzRP9YZRqSa+S7iq8XE
157660 4e 33 47 48 48 6f 4f 6f 30 48 6e 70 33 44 77 51 31 36 43 65 50 62 4a 43 2f 6b 52 59 6b 52 6a 35 N3GHHoOo0Hnp3DwQ16CePbJC/kRYkRj5
157680 4b 0a 54 73 34 72 46 74 55 4c 55 68 33 38 48 32 65 69 41 6b 55 78 54 38 37 7a 2b 67 4f 6e 65 5a K.Ts4rFtULUh38H2eiAkUxT87z+gOneZ
1576a0 31 54 61 74 6e 61 59 7a 72 34 67 4e 66 54 6d 65 47 6c 34 62 37 55 56 58 47 59 4e 54 71 2b 6b 2b 1TatnaYzr4gNfTmeGl4b7UVXGYNTq+k+
1576c0 71 75 72 55 4b 79 6b 47 2f 67 2f 43 46 4e 0a 4e 57 4d 7a 69 55 6e 57 6d 30 37 4b 78 2b 64 4f 43 qurUKykG/g/CFN.NWMziUnWm07Kx+dOC
1576e0 51 44 33 32 73 66 76 6d 57 4b 5a 64 37 61 56 49 6c 36 4b 6f 4b 76 30 75 48 69 59 79 6a 67 5a 6d QD32sfvmWKZd7aVIl6KoKv0uHiYyjgZm
157700 63 6c 79 6e 6e 6a 4e 53 36 79 76 47 61 42 7a 45 69 33 38 77 6b 47 36 67 5a 48 61 0a 46 6c 6f 78 clynnjNS6yvGaBzEi38wkG6gZHa.Flox
157720 74 2f 6d 30 63 59 41 53 53 4a 6c 79 63 31 70 5a 55 38 46 6a 55 6a 50 74 70 38 6e 53 4f 51 4a 77 t/m0cYASSJlyc1pZU8FjUjPtp8nSOQJw
157740 2b 75 43 78 51 6d 59 70 71 70 74 52 37 54 42 55 49 68 52 66 32 61 73 64 77 65 53 55 38 50 6a 31 +uCxQmYpqptR7TBUIhRf2asdweSU8Pj1
157760 4b 2f 66 71 79 6e 68 47 0a 31 72 69 52 2f 61 59 4e 4b 78 6f 55 41 54 36 41 38 45 4b 67 6c 51 64 K/fqynhG.1riR/aYNKxoUAT6A8EKglQd
157780 65 62 63 33 4d 53 36 52 46 6a 61 73 53 36 4c 50 65 57 75 57 67 66 4f 67 50 49 68 31 61 36 56 6b ebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk
1577a0 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 74 68 61 =.-----END.CERTIFICATE-----..tha
1577c0 77 74 65 20 50 72 69 6d 61 72 79 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d wte.Primary.Root.CA.============
1577e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 ==========.-----BEGIN.CERTIFICAT
157800 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 49 44 43 43 41 77 69 67 41 77 49 42 41 67 49 51 4e 45 37 56 56 E-----.MIIEIDCCAwigAwIBAgIQNE7VV
157820 79 44 56 37 65 78 4a 39 43 2f 4f 4e 39 73 72 62 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 yDV7exJ9C/ON9srbTANBgkqhkiG9w0BA
157840 51 55 46 41 44 43 42 71 54 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 56 56 4d 78 46 54 41 54 QUFADCBqTELMAkGA1UE.BhMCVVMxFTAT
157860 42 67 4e 56 42 41 6f 54 44 48 52 6f 59 58 64 30 5a 53 77 67 53 57 35 6a 4c 6a 45 6f 4d 43 59 47 BgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYG
157880 41 31 55 45 43 78 4d 66 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 54 5a 58 4a 32 A1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2
1578a0 0a 61 57 4e 6c 63 79 42 45 61 58 5a 70 63 32 6c 76 62 6a 45 34 4d 44 59 47 41 31 55 45 43 78 4d .aWNlcyBEaXZpc2lvbjE4MDYGA1UECxM
1578c0 76 4b 47 4d 70 49 44 49 77 4d 44 59 67 64 47 68 68 64 33 52 6c 4c 43 42 4a 62 6d 4d 75 49 43 30 vKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0
1578e0 67 52 6d 39 79 49 47 46 31 64 47 68 76 0a 63 6d 6c 36 5a 57 51 67 64 58 4e 6c 49 47 39 75 62 48 gRm9yIGF1dGhv.cml6ZWQgdXNlIG9ubH
157900 6b 78 48 7a 41 64 42 67 4e 56 42 41 4d 54 46 6e 52 6f 59 58 64 30 5a 53 42 51 63 6d 6c 74 59 58 kxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYX
157920 4a 35 49 46 4a 76 62 33 51 67 51 30 45 77 48 68 63 4e 4d 44 59 78 4d 54 45 33 0a 4d 44 41 77 4d J5IFJvb3QgQ0EwHhcNMDYxMTE3.MDAwM
157940 44 41 77 57 68 63 4e 4d 7a 59 77 4e 7a 45 32 4d 6a 4d 31 4f 54 55 35 57 6a 43 42 71 54 45 4c 4d DAwWhcNMzYwNzE2MjM1OTU5WjCBqTELM
157960 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 54 41 54 42 67 4e 56 42 41 6f 54 44 48 52 6f 59 AkGA1UEBhMCVVMxFTATBgNVBAoTDHRoY
157980 58 64 30 5a 53 77 67 0a 53 57 35 6a 4c 6a 45 6f 4d 43 59 47 41 31 55 45 43 78 4d 66 51 32 56 79 Xd0ZSwg.SW5jLjEoMCYGA1UECxMfQ2Vy
1579a0 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 54 5a 58 4a 32 61 57 4e 6c 63 79 42 45 61 58 5a 70 dGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZp
1579c0 63 32 6c 76 62 6a 45 34 4d 44 59 47 41 31 55 45 43 78 4d 76 0a 4b 47 4d 70 49 44 49 77 4d 44 59 c2lvbjE4MDYGA1UECxMv.KGMpIDIwMDY
1579e0 67 64 47 68 68 64 33 52 6c 4c 43 42 4a 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 gdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGh
157a00 76 63 6d 6c 36 5a 57 51 67 64 58 4e 6c 49 47 39 75 62 48 6b 78 48 7a 41 64 42 67 4e 56 42 41 4d vcml6ZWQgdXNlIG9ubHkxHzAdBgNVBAM
157a20 54 0a 46 6e 52 6f 59 58 64 30 5a 53 42 51 63 6d 6c 74 59 58 4a 35 49 46 4a 76 62 33 51 67 51 30 T.FnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0
157a40 45 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDw
157a60 41 77 67 67 45 4b 41 6f 49 42 41 51 43 73 0a 6f 50 44 37 67 46 6e 55 6e 4d 65 6b 7a 35 32 68 57 AwggEKAoIBAQCs.oPD7gFnUnMekz52hW
157a80 58 4d 4a 45 45 55 4d 44 53 78 75 61 50 46 73 57 30 68 6f 53 56 6b 33 2f 41 73 7a 47 63 4a 33 66 XMJEEUMDSxuaPFsW0hoSVk3/AszGcJ3f
157aa0 38 77 51 4c 5a 55 30 48 4f 62 72 54 51 6d 6e 48 4e 4b 34 79 5a 63 32 41 72 65 4a 0a 31 43 52 66 8wQLZU0HObrTQmnHNK4yZc2AreJ.1CRf
157ac0 42 73 44 4d 52 4a 53 55 6a 51 4a 69 62 2b 74 61 33 52 47 4e 4b 4a 70 63 68 4a 41 51 65 67 32 39 BsDMRJSUjQJib+ta3RGNKJpchJAQeg29
157ae0 64 47 59 76 61 6a 69 67 34 74 56 55 52 4f 73 64 42 35 38 48 75 6d 2f 75 36 66 31 4f 43 79 6e 31 dGYvajig4tVUROsdB58Hum/u6f1OCyn1
157b00 50 6f 53 67 41 66 47 63 0a 71 2f 67 63 66 6f 6d 6b 36 4b 48 59 63 57 55 4e 6f 31 46 37 37 72 7a PoSgAfGc.q/gcfomk6KHYcWUNo1F77rz
157b20 53 49 6d 41 4e 75 56 75 64 33 37 72 38 55 56 73 4c 72 35 69 79 36 53 37 70 42 4f 68 69 68 39 34 SImANuVud37r8UVsLr5iy6S7pBOhih94
157b40 72 79 4e 64 4f 77 55 78 6b 48 74 33 50 68 31 69 36 53 6b 2f 4b 0a 61 41 63 64 48 4a 31 4b 78 74 ryNdOwUxkHt3Ph1i6Sk/K.aAcdHJ1Kxt
157b60 55 76 6b 63 78 38 63 58 49 63 78 63 42 6e 36 7a 4c 39 79 5a 4a 63 6c 4e 71 46 77 4a 75 2f 55 33 Uvkcx8cXIcxcBn6zL9yZJclNqFwJu/U3
157b80 30 72 43 66 53 4d 6e 5a 45 66 6c 32 70 53 79 39 34 4a 4e 71 52 33 32 48 75 48 55 45 54 56 50 6d 0rCfSMnZEfl2pSy94JNqR32HuHUETVPm
157ba0 34 70 0a 61 66 73 35 53 53 59 65 43 61 57 41 65 30 41 74 36 2b 67 6e 68 63 6e 2b 59 66 31 2b 35 4p.afs5SSYeCaWAe0At6+gnhcn+Yf1+5
157bc0 6e 79 58 48 64 57 64 41 67 4d 42 41 41 47 6a 51 6a 42 41 4d 41 38 47 41 31 55 64 45 77 45 42 2f nyXHdWdAgMBAAGjQjBAMA8GA1UdEwEB/
157be0 77 51 46 4d 41 4d 42 41 66 38 77 44 67 59 44 0a 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 wQFMAMBAf8wDgYD.VR0PAQH/BAQDAgEG
157c00 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 52 37 57 30 58 50 72 38 37 4c 65 76 30 78 6b 68 70 71 MB0GA1UdDgQWBBR7W0XPr87Lev0xkhpq
157c20 74 76 4e 47 36 31 64 49 55 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 0a 41 41 4f tvNG61dIUDANBgkqhkiG9w0BAQUF.AAO
157c40 43 41 51 45 41 65 52 48 41 53 37 4f 52 74 76 7a 77 36 57 66 55 44 57 35 46 76 6c 58 6f 6b 39 4c CAQEAeRHAS7ORtvzw6WfUDW5FvlXok9L
157c60 4f 41 7a 2f 74 32 69 57 77 48 56 66 4c 48 6a 70 32 6f 45 7a 73 55 48 62 6f 5a 48 49 4d 70 4b 6e OAz/t2iWwHVfLHjp2oEzsUHboZHIMpKn
157c80 78 75 49 76 57 31 6f 65 45 0a 75 7a 4c 6c 51 52 48 41 64 39 6d 7a 59 4a 33 72 47 39 58 52 62 6b xuIvW1oeE.uzLlQRHAd9mzYJ3rG9XRbk
157ca0 52 45 71 61 59 42 37 46 56 69 48 58 65 34 58 49 35 49 53 58 79 63 4f 31 63 52 72 4b 31 7a 4e 34 REqaYB7FViHXe4XI5ISXycO1cRrK1zN4
157cc0 34 76 65 46 79 51 61 45 66 5a 59 47 44 6d 2f 41 63 39 49 69 41 58 0a 78 50 63 57 36 63 54 59 63 4veFyQaEfZYGDm/Ac9IiAX.xPcW6cTYc
157ce0 76 6e 49 63 33 7a 66 46 69 38 56 71 54 37 39 61 69 65 32 6f 65 74 61 75 70 67 66 31 65 4e 4e 5a vnIc3zfFi8VqT79aie2oetaupgf1eNNZ
157d00 41 71 64 45 38 68 68 75 76 55 35 48 49 65 36 75 4c 31 37 49 6e 2f 32 2f 71 78 41 65 65 57 73 45 AqdE8hhuvU5HIe6uL17In/2/qxAeeWsE
157d20 47 38 39 0a 6a 78 74 35 64 6f 76 45 4e 37 4d 68 47 49 54 6c 4e 67 44 72 59 79 43 5a 75 65 6e 2b G89.jxt5dovEN7MhGITlNgDrYyCZuen+
157d40 4d 77 53 37 51 63 6a 42 41 76 6c 45 59 79 43 65 67 63 35 43 30 39 59 2f 4c 48 62 54 59 35 78 5a MwS7QcjBAvlEYyCegc5C09Y/LHbTY5xZ
157d60 33 59 2b 6d 34 51 36 67 4c 6b 48 33 4c 70 56 48 0a 7a 37 7a 39 4d 2f 50 32 43 32 46 2b 66 70 45 3Y+m4Q6gLkH3LpVH.z7z9M/P2C2F+fpE
157d80 72 67 55 66 43 4a 7a 44 75 70 78 42 64 4e 34 39 63 4f 53 76 6b 42 50 42 37 6a 56 61 4d 61 41 3d rgUfCJzDupxBdN49cOSvkBPB7jVaMaA=
157da0 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 56 65 72 =.-----END.CERTIFICATE-----..Ver
157dc0 69 53 69 67 6e 20 43 6c 61 73 73 20 33 20 50 75 62 6c 69 63 20 50 72 69 6d 61 72 79 20 43 65 72 iSign.Class.3.Public.Primary.Cer
157de0 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 20 2d 20 47 35 0a 3d 3d 3d 3d 3d 3d tification.Authority.-.G5.======
157e00 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
157e20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 ======================.-----BEGI
157e40 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 30 7a 43 43 41 37 75 67 41 N.CERTIFICATE-----.MIIE0zCCA7ugA
157e60 77 49 42 41 67 49 51 47 4e 72 52 6e 69 5a 39 36 4c 74 4b 49 56 6a 4e 7a 47 73 37 53 6a 41 4e 42 wIBAgIQGNrRniZ96LtKIVjNzGs7SjANB
157e80 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 79 6a 45 4c 4d 41 6b 47 41 31 55 45 0a gkqhkiG9w0BAQUFADCByjELMAkGA1UE.
157ea0 42 68 4d 43 56 56 4d 78 46 7a 41 56 42 67 4e 56 42 41 6f 54 44 6c 5a 6c 63 6d 6c 54 61 57 64 75 BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWdu
157ec0 4c 43 42 4a 62 6d 4d 75 4d 52 38 77 48 51 59 44 56 51 51 4c 45 78 5a 57 5a 58 4a 70 55 32 6c 6e LCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln
157ee0 62 69 42 55 63 6e 56 7a 64 43 42 4f 0a 5a 58 52 33 62 33 4a 72 4d 54 6f 77 4f 41 59 44 56 51 51 biBUcnVzdCBO.ZXR3b3JrMTowOAYDVQQ
157f00 4c 45 7a 45 6f 59 79 6b 67 4d 6a 41 77 4e 69 42 57 5a 58 4a 70 55 32 6c 6e 62 69 77 67 53 57 35 LEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5
157f20 6a 4c 69 41 74 49 45 5a 76 63 69 42 68 64 58 52 6f 62 33 4a 70 65 6d 56 6b 0a 49 48 56 7a 5a 53 jLiAtIEZvciBhdXRob3JpemVk.IHVzZS
157f40 42 76 62 6d 78 35 4d 55 55 77 51 77 59 44 56 51 51 44 45 7a 78 57 5a 58 4a 70 55 32 6c 6e 62 69 Bvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbi
157f60 42 44 62 47 46 7a 63 79 41 7a 49 46 42 31 59 6d 78 70 59 79 42 51 63 6d 6c 74 59 58 4a 35 49 45 BDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IE
157f80 4e 6c 63 6e 52 70 0a 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 49 NlcnRp.ZmljYXRpb24gQXV0aG9yaXR5I
157fa0 43 30 67 52 7a 55 77 48 68 63 4e 4d 44 59 78 4d 54 41 34 4d 44 41 77 4d 44 41 77 57 68 63 4e 4d C0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNM
157fc0 7a 59 77 4e 7a 45 32 4d 6a 4d 31 4f 54 55 35 57 6a 43 42 0a 79 6a 45 4c 4d 41 6b 47 41 31 55 45 zYwNzE2MjM1OTU5WjCB.yjELMAkGA1UE
157fe0 42 68 4d 43 56 56 4d 78 46 7a 41 56 42 67 4e 56 42 41 6f 54 44 6c 5a 6c 63 6d 6c 54 61 57 64 75 BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWdu
158000 4c 43 42 4a 62 6d 4d 75 4d 52 38 77 48 51 59 44 56 51 51 4c 45 78 5a 57 5a 58 4a 70 55 32 6c 6e LCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln
158020 0a 62 69 42 55 63 6e 56 7a 64 43 42 4f 5a 58 52 33 62 33 4a 72 4d 54 6f 77 4f 41 59 44 56 51 51 .biBUcnVzdCBOZXR3b3JrMTowOAYDVQQ
158040 4c 45 7a 45 6f 59 79 6b 67 4d 6a 41 77 4e 69 42 57 5a 58 4a 70 55 32 6c 6e 62 69 77 67 53 57 35 LEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5
158060 6a 4c 69 41 74 49 45 5a 76 63 69 42 68 0a 64 58 52 6f 62 33 4a 70 65 6d 56 6b 49 48 56 7a 5a 53 jLiAtIEZvciBh.dXRob3JpemVkIHVzZS
158080 42 76 62 6d 78 35 4d 55 55 77 51 77 59 44 56 51 51 44 45 7a 78 57 5a 58 4a 70 55 32 6c 6e 62 69 Bvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbi
1580a0 42 44 62 47 46 7a 63 79 41 7a 49 46 42 31 59 6d 78 70 59 79 42 51 63 6d 6c 74 0a 59 58 4a 35 49 BDbGFzcyAzIFB1YmxpYyBQcmlt.YXJ5I
1580c0 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 49 ENlcnRpZmljYXRpb24gQXV0aG9yaXR5I
1580e0 43 30 67 52 7a 55 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 C0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA
158100 34 49 42 44 77 41 77 0a 67 67 45 4b 41 6f 49 42 41 51 43 76 4a 41 67 49 4b 58 6f 31 6e 6d 41 4d 4IBDwAw.ggEKAoIBAQCvJAgIKXo1nmAM
158120 71 75 64 4c 4f 30 37 63 66 4c 77 38 52 52 79 37 4b 2b 44 2b 4b 51 4c 35 56 77 69 6a 5a 49 55 56 qudLO07cfLw8RRy7K+D+KQL5VwijZIUV
158140 4a 2f 58 78 72 63 67 78 69 56 30 69 36 43 71 71 70 6b 4b 7a 0a 6a 2f 69 35 56 62 65 78 74 30 75 J/XxrcgxiV0i6CqqpkKz.j/i5Vbext0u
158160 7a 2f 6f 39 2b 42 31 66 73 37 30 50 62 5a 6d 49 56 59 63 39 67 44 61 54 59 33 76 6a 67 77 32 49 z/o9+B1fs70PbZmIVYc9gDaTY3vjgw2I
158180 49 50 56 51 54 36 30 6e 4b 57 56 53 46 4a 75 55 72 6a 78 75 66 36 2f 57 68 6b 63 49 7a 53 64 68 IPVQT60nKWVSFJuUrjxuf6/WhkcIzSdh
1581a0 44 0a 59 32 70 53 53 39 4b 50 36 48 42 52 54 64 47 4a 61 58 76 48 63 50 61 7a 33 42 4a 30 32 33 D.Y2pSS9KP6HBRTdGJaXvHcPaz3BJ023
1581c0 74 64 53 31 62 54 6c 72 38 56 64 36 47 77 39 4b 49 6c 38 71 38 63 6b 6d 63 59 35 66 51 47 42 4f tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQGBO
1581e0 2b 51 75 65 51 41 35 4e 30 36 74 52 6e 2f 0a 41 72 72 30 50 4f 37 67 69 2b 73 33 69 2b 7a 30 31 +QueQA5N06tRn/.Arr0PO7gi+s3i+z01
158200 36 7a 79 39 76 41 39 72 39 31 31 6b 54 4d 5a 48 52 78 41 79 33 51 6b 47 53 47 54 32 52 54 2b 72 6zy9vA9r911kTMZHRxAy3QkGSGT2RT+r
158220 43 70 53 78 34 2f 56 42 45 6e 6b 6a 57 4e 48 69 44 78 70 67 38 76 2b 52 37 30 72 0a 66 6b 2f 46 CpSx4/VBEnkjWNHiDxpg8v+R70r.fk/F
158240 6c 61 34 4f 6e 64 54 52 51 38 42 6e 63 2b 4d 55 43 48 37 6c 50 35 39 7a 75 44 4d 4b 7a 31 30 2f la4OndTRQ8Bnc+MUCH7lP59zuDMKz10/
158260 4e 49 65 57 69 75 35 54 36 43 55 56 41 67 4d 42 41 41 47 6a 67 62 49 77 67 61 38 77 44 77 59 44 NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYD
158280 56 52 30 54 41 51 48 2f 0a 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 VR0TAQH/.BAUwAwEB/zAOBgNVHQ8BAf8
1582a0 45 42 41 4d 43 41 51 59 77 62 51 59 49 4b 77 59 42 42 51 55 48 41 51 77 45 59 54 42 66 6f 56 32 EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2
1582c0 67 57 7a 42 5a 4d 46 63 77 56 52 59 4a 61 57 31 68 5a 32 55 76 0a 5a 32 6c 6d 4d 43 45 77 48 7a gWzBZMFcwVRYJaW1hZ2Uv.Z2lmMCEwHz
1582e0 41 48 42 67 55 72 44 67 4d 43 47 67 51 55 6a 2b 58 54 47 6f 61 73 6a 59 35 72 77 38 2b 41 61 74 AHBgUrDgMCGgQUj+XTGoasjY5rw8+Aat
158300 52 49 47 43 78 37 47 53 34 77 4a 52 59 6a 61 48 52 30 63 44 6f 76 4c 32 78 76 5a 32 38 75 64 6d RIGCx7GS4wJRYjaHR0cDovL2xvZ28udm
158320 56 79 0a 61 58 4e 70 5a 32 34 75 59 32 39 74 4c 33 5a 7a 62 47 39 6e 62 79 35 6e 61 57 59 77 48 Vy.aXNpZ24uY29tL3ZzbG9nby5naWYwH
158340 51 59 44 56 52 30 4f 42 42 59 45 46 48 2f 54 5a 61 66 43 33 65 79 37 38 44 41 4a 38 30 4d 35 2b QYDVR0OBBYEFH/TZafC3ey78DAJ80M5+
158360 67 4b 76 4d 7a 45 7a 4d 41 30 47 43 53 71 47 0a 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 42 gKvMzEzMA0GCSqG.SIb3DQEBBQUAA4IB
158380 41 51 43 54 4a 45 6f 77 58 32 4c 50 32 42 71 59 4c 7a 33 71 33 4a 6b 74 76 58 66 32 70 58 6b 69 AQCTJEowX2LP2BqYLz3q3JktvXf2pXki
1583a0 4f 4f 7a 45 70 36 42 34 45 71 31 69 44 6b 56 77 5a 4d 58 6e 6c 32 59 74 6d 41 6c 2b 0a 58 36 2f OOzEp6B4Eq1iDkVwZMXnl2YtmAl+.X6/
1583c0 57 7a 43 68 6c 38 67 47 71 43 42 70 48 33 76 6e 35 66 4a 4a 61 43 47 6b 67 44 64 6b 2b 62 57 34 WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW4
1583e0 38 44 57 37 59 35 67 61 52 51 42 69 35 2b 4d 48 74 33 39 74 42 71 75 43 57 49 4d 6e 4e 5a 42 55 8DW7Y5gaRQBi5+MHt39tBquCWIMnNZBU
158400 34 67 63 6d 55 37 71 4b 45 0a 4b 51 73 54 62 34 37 62 44 4e 30 6c 41 74 75 6b 69 78 6c 45 30 6b 4gcmU7qKE.KQsTb47bDN0lAtukixlE0k
158420 46 36 42 57 6c 4b 57 45 39 67 79 6e 36 43 61 67 73 43 71 69 55 58 4f 62 58 62 66 2b 65 45 5a 53 F6BWlKWE9gyn6CagsCqiUXObXbf+eEZS
158440 71 56 69 72 32 47 33 6c 36 42 46 6f 4d 74 45 4d 7a 65 2f 61 69 43 0a 4b 6d 30 6f 48 77 30 4c 78 qVir2G3l6BFoMtEMze/aiC.Km0oHw0Lx
158460 4f 58 6e 47 69 59 5a 34 66 51 52 62 78 43 31 6c 66 7a 6e 51 67 55 79 32 38 36 64 55 56 34 6f 74 OXnGiYZ4fQRbxC1lfznQgUy286dUV4ot
158480 70 36 46 30 31 76 76 70 58 31 46 51 48 4b 4f 74 77 35 72 44 67 62 37 4d 7a 56 49 63 62 69 64 4a p6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ
1584a0 34 76 45 0a 5a 56 38 4e 68 6e 61 63 52 48 72 32 6c 56 7a 32 58 54 49 49 4d 36 52 55 74 68 67 2f 4vE.ZV8NhnacRHr2lVz2XTIIM6RUthg/
1584c0 61 46 7a 79 51 6b 71 46 4f 46 53 44 58 39 48 6f 4c 50 4b 73 45 64 61 6f 37 57 4e 71 0a 2d 2d 2d aFzyQkqFOFSDX9HoLPKsEdao7WNq.---
1584e0 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 65 63 75 72 65 54 72 --END.CERTIFICATE-----..SecureTr
158500 75 73 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e ust.CA.==============.-----BEGIN
158520 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 75 44 43 43 41 71 43 67 41 77 .CERTIFICATE-----.MIIDuDCCAqCgAw
158540 49 42 41 67 49 51 44 50 43 4f 58 41 67 57 70 61 31 43 66 2f 44 72 4a 78 68 5a 30 44 41 4e 42 67 IBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBg
158560 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 49 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 kqhkiG9w0BAQUFADBIMQswCQYDVQQG.E
158580 77 4a 56 55 7a 45 67 4d 42 34 47 41 31 55 45 43 68 4d 58 55 32 56 6a 64 58 4a 6c 56 48 4a 31 63 wJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c
1585a0 33 51 67 51 32 39 79 63 47 39 79 59 58 52 70 62 32 34 78 46 7a 41 56 42 67 4e 56 42 41 4d 54 44 3QgQ29ycG9yYXRpb24xFzAVBgNVBAMTD
1585c0 6c 4e 6c 59 33 56 79 5a 56 52 79 0a 64 58 4e 30 49 45 4e 42 4d 42 34 58 44 54 41 32 4d 54 45 77 lNlY3VyZVRy.dXN0IENBMB4XDTA2MTEw
1585e0 4e 7a 45 35 4d 7a 45 78 4f 46 6f 58 44 54 49 35 4d 54 49 7a 4d 54 45 35 4e 44 41 31 4e 56 6f 77 NzE5MzExOFoXDTI5MTIzMTE5NDA1NVow
158600 53 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 49 44 41 65 0a 42 67 4e 56 42 41 6f SDELMAkGA1UEBhMCVVMxIDAe.BgNVBAo
158620 54 46 31 4e 6c 59 33 56 79 5a 56 52 79 64 58 4e 30 49 45 4e 76 63 6e 42 76 63 6d 46 30 61 57 39 TF1NlY3VyZVRydXN0IENvcnBvcmF0aW9
158640 75 4d 52 63 77 46 51 59 44 56 51 51 44 45 77 35 54 5a 57 4e 31 63 6d 56 55 63 6e 56 7a 64 43 42 uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCB
158660 44 51 54 43 43 0a 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 DQTCC.ASIwDQYJKoZIhvcNAQEBBQADgg
158680 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4b 75 6b 67 65 57 56 7a 66 58 32 46 49 37 43 54 38 EPADCCAQoCggEBAKukgeWVzfX2FI7CT8
1586a0 72 55 34 6e 69 56 57 4a 78 42 34 51 32 5a 51 43 51 58 0a 4f 5a 45 7a 5a 75 6d 2b 34 59 4f 76 59 rU4niVWJxB4Q2ZQCQX.OZEzZum+4YOvY
1586c0 6c 79 4a 30 66 77 6b 57 32 47 7a 34 42 45 52 51 52 77 64 62 76 43 34 75 2f 6a 65 70 34 47 36 70 lyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6p
1586e0 6b 6a 47 6e 78 32 39 76 6f 36 70 51 54 36 34 6c 4f 30 70 47 74 53 4f 30 67 4d 64 41 2b 39 74 0a kjGnx29vo6pQT64lO0pGtSO0gMdA+9t.
158700 44 57 63 63 56 39 63 47 72 63 72 49 39 66 34 4f 72 32 59 6c 53 41 53 57 43 31 32 6a 75 68 62 44 DWccV9cGrcrI9f4Or2YlSASWC12juhbD
158720 43 45 2f 52 52 76 67 55 58 50 4c 49 58 67 47 5a 62 66 32 49 7a 49 61 6f 77 57 38 78 51 6d 78 53 CE/RRvgUXPLIXgGZbf2IzIaowW8xQmxS
158740 50 6d 6a 4c 38 78 6b 30 33 37 75 48 0a 47 46 61 41 4a 73 54 51 33 4d 42 76 33 39 36 67 77 70 45 PmjL8xk037uH.GFaAJsTQ3MBv396gwpE
158760 57 6f 47 51 52 53 30 53 38 48 76 62 6e 2b 6d 50 65 5a 71 78 32 70 48 47 6a 37 44 61 55 61 48 70 WoGQRS0S8Hvbn+mPeZqx2pHGj7DaUaHp
158780 33 70 4c 48 6e 44 69 2b 42 65 75 4b 31 63 6f 62 76 6f 6d 75 4c 38 41 2f 62 0a 30 31 6b 2f 75 6e 3pLHnDi+BeuK1cobvomuL8A/b.01k/un
1587a0 4b 38 52 43 53 63 34 33 4f 7a 39 36 39 58 4c 30 49 6d 6e 61 6c 30 75 67 42 53 38 6b 76 4e 55 33 K8RCSc43Oz969XL0Imnal0ugBS8kvNU3
1587c0 78 48 43 7a 61 46 44 6d 61 70 43 4a 63 57 4e 46 66 42 5a 76 65 41 34 2b 31 77 56 4d 65 54 34 43 xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C
1587e0 34 6f 46 56 6d 48 0a 75 72 73 43 41 77 45 41 41 61 4f 42 6e 54 43 42 6d 6a 41 54 42 67 6b 72 42 4oFVmH.ursCAwEAAaOBnTCBmjATBgkrB
158800 67 45 45 41 59 49 33 46 41 49 45 42 68 34 45 41 45 4d 41 51 54 41 4c 42 67 4e 56 48 51 38 45 42 gEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EB
158820 41 4d 43 41 59 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 0a 42 41 55 77 41 77 45 42 2f 7a 41 64 AMCAYYwDwYDVR0TAQH/.BAUwAwEB/zAd
158840 42 67 4e 56 48 51 34 45 46 67 51 55 51 6a 4b 32 46 76 6f 45 2f 66 35 64 53 33 72 44 2f 66 64 4d BgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdM
158860 51 42 31 61 51 36 38 77 4e 41 59 44 56 52 30 66 42 43 30 77 4b 7a 41 70 6f 43 65 67 4a 59 59 6a QB1aQ68wNAYDVR0fBC0wKzApoCegJYYj
158880 0a 61 48 52 30 63 44 6f 76 4c 32 4e 79 62 43 35 7a 5a 57 4e 31 63 6d 56 30 63 6e 56 7a 64 43 35 .aHR0cDovL2NybC5zZWN1cmV0cnVzdC5
1588a0 6a 62 32 30 76 55 31 52 44 51 53 35 6a 63 6d 77 77 45 41 59 4a 4b 77 59 42 42 41 47 43 4e 78 55 jb20vU1RDQS5jcmwwEAYJKwYBBAGCNxU
1588c0 42 42 41 4d 43 41 51 41 77 44 51 59 4a 0a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 BBAMCAQAwDQYJ.KoZIhvcNAQEFBQADgg
1588e0 45 42 41 44 44 74 54 30 72 68 57 44 70 53 63 6c 75 31 70 71 4e 6c 47 4b 61 37 55 54 74 33 36 5a EBADDtT0rhWDpSclu1pqNlGKa7UTt36Z
158900 33 71 30 35 39 63 34 45 56 6c 65 77 33 4b 57 2b 4a 77 55 4c 4b 55 42 52 53 75 0a 53 63 65 4e 51 3q059c4EVlew3KW+JwULKUBRSu.SceNQ
158920 51 63 53 63 35 52 2b 44 43 4d 68 2f 62 77 51 66 32 41 51 57 6e 4c 31 6d 41 36 73 37 4c 6c 2f 33 QcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/3
158940 58 70 76 58 64 4d 63 39 50 2b 49 42 57 6c 43 71 51 56 78 79 4c 65 73 4a 75 67 75 74 49 78 71 2f XpvXdMc9P+IBWlCqQVxyLesJugutIxq/
158960 33 48 63 75 4c 48 66 0a 6d 62 78 38 49 56 51 72 35 46 69 69 75 31 63 70 72 70 36 70 6f 78 6b 6d 3HcuLHf.mbx8IVQr5Fiiu1cprp6poxkm
158980 44 35 6b 75 43 4c 44 76 2f 57 6e 50 6d 52 6f 4a 6a 65 4f 6e 6e 79 76 4a 4e 6a 52 37 4a 4c 4e 34 D5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4
1589a0 54 4a 55 58 70 41 59 6d 48 72 5a 6b 55 6a 5a 66 59 47 66 5a 0a 6e 4d 55 46 64 41 76 6e 5a 79 50 TJUXpAYmHrZkUjZfYGfZ.nMUFdAvnZyP
1589c0 53 43 50 79 49 36 61 36 4c 66 2b 45 77 39 44 64 2b 2f 63 59 79 32 69 32 65 52 44 41 77 62 4f 34 SCPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4
1589e0 48 33 74 49 30 2f 4e 4c 2f 51 50 5a 4c 39 47 5a 47 42 6c 53 6d 38 6a 49 4b 59 79 59 77 61 35 76 H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5v
158a00 52 0a 33 49 74 48 75 75 47 35 31 57 4c 51 6f 71 44 30 5a 77 56 34 4b 57 4d 61 62 77 54 57 2b 4d R.3ItHuuG51WLQoqD0ZwV4KWMabwTW+M
158a20 5a 4d 6f 35 71 78 4e 37 53 4e 35 53 68 4c 48 5a 34 73 77 72 68 6f 76 4f 30 43 37 6a 45 3d 0a 2d ZMo5qxN7SN5ShLHZ4swrhovO0C7jE=.-
158a40 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 65 63 75 72 65 ----END.CERTIFICATE-----..Secure
158a60 20 47 6c 6f 62 61 6c 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d .Global.CA.================.----
158a80 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 76 44 43 43 -BEGIN.CERTIFICATE-----.MIIDvDCC
158aa0 41 71 53 67 41 77 49 42 41 67 49 51 42 31 59 69 70 4f 6a 55 69 6f 6c 4e 39 42 50 49 38 50 6a 71 AqSgAwIBAgIQB1YipOjUiolN9BPI8Pjq
158ac0 70 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 4b 4d 51 73 77 43 51 59 44 pTANBgkqhkiG9w0BAQUFADBKMQswCQYD
158ae0 56 51 51 47 0a 45 77 4a 56 55 7a 45 67 4d 42 34 47 41 31 55 45 43 68 4d 58 55 32 56 6a 64 58 4a VQQG.EwJVUzEgMB4GA1UEChMXU2VjdXJ
158b00 6c 56 48 4a 31 63 33 51 67 51 32 39 79 63 47 39 79 59 58 52 70 62 32 34 78 47 54 41 58 42 67 4e lVHJ1c3QgQ29ycG9yYXRpb24xGTAXBgN
158b20 56 42 41 4d 54 45 46 4e 6c 59 33 56 79 5a 53 42 48 0a 62 47 39 69 59 57 77 67 51 30 45 77 48 68 VBAMTEFNlY3VyZSBH.bG9iYWwgQ0EwHh
158b40 63 4e 4d 44 59 78 4d 54 41 33 4d 54 6b 30 4d 6a 49 34 57 68 63 4e 4d 6a 6b 78 4d 6a 4d 78 4d 54 cNMDYxMTA3MTk0MjI4WhcNMjkxMjMxMT
158b60 6b 31 4d 6a 41 32 57 6a 42 4b 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 67 0a 4d k1MjA2WjBKMQswCQYDVQQGEwJVUzEg.M
158b80 42 34 47 41 31 55 45 43 68 4d 58 55 32 56 6a 64 58 4a 6c 56 48 4a 31 63 33 51 67 51 32 39 79 63 B4GA1UEChMXU2VjdXJlVHJ1c3QgQ29yc
158ba0 47 39 79 59 58 52 70 62 32 34 78 47 54 41 58 42 67 4e 56 42 41 4d 54 45 46 4e 6c 59 33 56 79 5a G9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZ
158bc0 53 42 48 62 47 39 69 59 57 77 67 0a 51 30 45 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 SBHbG9iYWwg.Q0EwggEiMA0GCSqGSIb3
158be0 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 76 4e 53 37 59 DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7Y
158c00 72 47 78 56 61 51 5a 78 35 52 4e 6f 4a 4c 4e 50 32 4d 77 68 52 2f 6a 78 0a 59 44 69 4a 69 51 50 rGxVaQZx5RNoJLNP2MwhR/jx.YDiJiQP
158c20 70 76 65 70 65 52 6c 4d 4a 33 46 7a 31 57 75 6a 33 52 53 6f 43 36 7a 46 68 31 79 6b 7a 54 4d 37 pvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7
158c40 48 66 41 6f 33 66 67 2b 36 4d 70 6a 68 48 5a 65 76 6a 38 66 63 79 54 69 57 38 39 73 61 2f 46 48 HfAo3fg+6MpjhHZevj8fcyTiW89sa/FH
158c60 74 61 4d 62 51 0a 62 71 52 38 4a 4e 47 75 51 73 69 57 55 47 4d 75 34 50 35 31 2f 70 69 6e 58 30 taMbQ.bqR8JNGuQsiWUGMu4P51/pinX0
158c80 6b 75 6c 65 4d 35 4d 32 53 4f 48 71 52 66 6b 4e 4a 6e 50 4c 4c 5a 2f 6b 47 35 56 61 63 4a 6a 6e kuleM5M2SOHqRfkNJnPLLZ/kG5VacJjn
158ca0 49 46 48 6f 76 64 52 49 57 43 51 74 42 4a 77 42 31 67 0a 38 4e 45 58 4c 4a 58 72 39 71 58 42 6b IFHovdRIWCQtBJwB1g.8NEXLJXr9qXBk
158cc0 71 50 46 77 71 63 49 59 41 31 67 42 42 43 57 65 5a 34 57 4e 4f 61 70 74 76 6f 6c 52 54 6e 49 48 qPFwqcIYA1gBBCWeZ4WNOaptvolRTnIH
158ce0 6d 58 35 6b 2f 57 71 38 56 4c 63 6d 5a 67 39 70 59 59 61 44 44 55 7a 2b 6b 75 6c 42 41 59 56 0a mX5k/Wq8VLcmZg9pYYaDDUz+kulBAYV.
158d00 48 44 47 41 37 36 6f 59 61 38 4a 37 31 39 72 4f 2b 54 4d 67 31 66 57 39 61 6a 4d 74 67 51 54 37 HDGA76oYa8J719rO+TMg1fW9ajMtgQT7
158d20 73 46 7a 55 6e 4b 50 69 58 42 33 6a 71 55 4a 31 58 6e 76 55 64 2b 38 35 56 4c 72 4a 43 68 67 62 sFzUnKPiXB3jqUJ1XnvUd+85VLrJChgb
158d40 45 70 6c 4a 4c 34 68 4c 2f 56 42 69 0a 30 58 50 6e 6a 33 70 44 41 67 4d 42 41 41 47 6a 67 5a 30 EplJL4hL/VBi.0XPnj3pDAgMBAAGjgZ0
158d60 77 67 5a 6f 77 45 77 59 4a 4b 77 59 42 42 41 47 43 4e 78 51 43 42 41 59 65 42 41 42 44 41 45 45 wgZowEwYJKwYBBAGCNxQCBAYeBABDAEE
158d80 77 43 77 59 44 56 52 30 50 42 41 51 44 41 67 47 47 4d 41 38 47 41 31 55 64 0a 45 77 45 42 2f 77 wCwYDVR0PBAQDAgGGMA8GA1Ud.EwEB/w
158da0 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4b 39 45 42 4d 4a 42 66 6b QFMAMBAf8wHQYDVR0OBBYEFK9EBMJBfk
158dc0 69 44 32 30 34 35 41 75 7a 73 68 48 72 6d 7a 73 6d 6b 4d 44 51 47 41 31 55 64 48 77 51 74 4d 43 iD2045AuzshHrmzsmkMDQGA1UdHwQtMC
158de0 73 77 4b 61 41 6e 0a 6f 43 57 47 49 32 68 30 64 48 41 36 4c 79 39 6a 63 6d 77 75 63 32 56 6a 64 swKaAn.oCWGI2h0dHA6Ly9jcmwuc2Vjd
158e00 58 4a 6c 64 48 4a 31 63 33 51 75 59 32 39 74 4c 31 4e 48 51 30 45 75 59 33 4a 73 4d 42 41 47 43 XJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGC
158e20 53 73 47 41 51 51 42 67 6a 63 56 41 51 51 44 41 67 45 41 0a 4d 41 30 47 43 53 71 47 53 49 62 33 SsGAQQBgjcVAQQDAgEA.MA0GCSqGSIb3
158e40 44 51 45 42 42 51 55 41 41 34 49 42 41 51 42 6a 47 67 68 41 66 61 52 65 55 77 31 33 32 48 71 75 DQEBBQUAA4IBAQBjGghAfaReUw132Hqu
158e60 48 77 30 4c 55 52 59 44 37 78 68 38 79 4f 4f 76 61 6c 69 54 46 47 43 52 73 6f 54 63 69 45 36 2b Hw0LURYD7xh8yOOvaliTFGCRsoTciE6+
158e80 0a 4f 59 6f 36 38 2b 61 43 69 56 30 42 4e 37 4f 72 4a 4b 51 56 44 70 49 31 57 6b 70 45 58 6b 35 .OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5
158ea0 58 2b 6e 58 4f 48 30 6a 4f 5a 76 51 38 51 43 61 53 6d 47 77 62 37 69 52 47 44 42 65 7a 55 71 58 X+nXOH0jOZvQ8QCaSmGwb7iRGDBezUqX
158ec0 62 70 5a 47 52 7a 7a 66 54 62 2b 63 6e 0a 43 44 70 4f 47 52 38 36 70 31 68 63 46 38 39 35 50 34 bpZGRzzfTb+cn.CDpOGR86p1hcF895P4
158ee0 76 6b 70 39 4d 6d 49 35 30 6d 44 31 68 70 2f 45 64 2b 73 74 43 4e 69 35 4f 2f 4b 55 39 44 61 58 vkp9MmI50mD1hp/Ed+stCNi5O/KU9DaX
158f00 52 32 5a 30 76 50 42 34 7a 6d 41 76 65 31 34 62 52 44 74 55 73 74 46 4a 2f 35 0a 33 43 59 4e 76 R2Z0vPB4zmAve14bRDtUstFJ/5.3CYNv
158f20 36 5a 48 64 41 62 59 69 4e 45 36 4b 54 43 45 7a 74 49 35 67 47 49 62 71 4d 64 58 53 62 78 71 56 6ZHdAbYiNE6KTCEztI5gGIbqMdXSbxqV
158f40 56 46 6e 46 55 71 2b 4e 51 66 6b 31 58 57 59 4e 33 6b 77 46 4e 73 70 6e 57 7a 46 61 63 78 48 56 VFnFUq+NQfk1XWYN3kwFNspnWzFacxHV
158f60 61 49 77 39 38 78 63 0a 66 38 4c 44 6d 42 78 72 54 68 61 41 36 33 70 34 5a 55 57 69 41 42 71 76 aIw98xc.f8LDmBxrThaA63p4ZUWiABqv
158f80 44 41 31 56 5a 44 52 49 75 4a 4b 35 38 62 52 51 4b 66 4a 50 49 78 2f 61 62 4b 77 66 52 4f 48 64 DA1VZDRIuJK58bRQKfJPIx/abKwfROHd
158fa0 49 33 68 52 57 38 63 57 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d I3hRW8cW.-----END.CERTIFICATE---
158fc0 2d 2d 0a 0a 43 4f 4d 4f 44 4f 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 --..COMODO.Certification.Authori
158fe0 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ty.=============================
159000 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 =.-----BEGIN.CERTIFICATE-----.MI
159020 49 45 48 54 43 43 41 77 57 67 41 77 49 42 41 67 49 51 54 6f 45 74 69 6f 4a 6c 34 41 73 43 37 6a IEHTCCAwWgAwIBAgIQToEtioJl4AsC7j
159040 34 31 41 6b 62 6c 50 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 67 54 41AkblPTANBgkqhkiG9w0BAQUFADCBgT
159060 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 52 30 49 78 47 7a 41 5a 42 67 4e 56 42 41 67 54 45 ELMAkGA1UE.BhMCR0IxGzAZBgNVBAgTE
159080 6b 64 79 5a 57 46 30 5a 58 49 67 54 57 46 75 59 32 68 6c 63 33 52 6c 63 6a 45 51 4d 41 34 47 41 kdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA
1590a0 31 55 45 42 78 4d 48 55 32 46 73 5a 6d 39 79 5a 44 45 61 4d 42 67 47 0a 41 31 55 45 43 68 4d 52 1UEBxMHU2FsZm9yZDEaMBgG.A1UEChMR
1590c0 51 30 39 4e 54 30 52 50 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 4a 7a 41 6c 42 67 4e 56 Q09NT0RPIENBIExpbWl0ZWQxJzAlBgNV
1590e0 42 41 4d 54 48 6b 4e 50 54 55 39 45 54 79 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 BAMTHkNPTU9ETyBDZXJ0aWZpY2F0aW9u
159100 49 45 46 31 0a 64 47 68 76 63 6d 6c 30 65 54 41 65 46 77 30 77 4e 6a 45 79 4d 44 45 77 4d 44 41 IEF1.dGhvcml0eTAeFw0wNjEyMDEwMDA
159120 77 4d 44 42 61 46 77 30 79 4f 54 45 79 4d 7a 45 79 4d 7a 55 35 4e 54 6c 61 4d 49 47 42 4d 51 73 wMDBaFw0yOTEyMzEyMzU5NTlaMIGBMQs
159140 77 43 51 59 44 56 51 51 47 45 77 4a 48 51 6a 45 62 0a 4d 42 6b 47 41 31 55 45 43 42 4d 53 52 33 wCQYDVQQGEwJHQjEb.MBkGA1UECBMSR3
159160 4a 6c 59 58 52 6c 63 69 42 4e 59 57 35 6a 61 47 56 7a 64 47 56 79 4d 52 41 77 44 67 59 44 56 51 JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQ
159180 51 48 45 77 64 54 59 57 78 6d 62 33 4a 6b 4d 52 6f 77 47 41 59 44 56 51 51 4b 45 78 46 44 0a 54 QHEwdTYWxmb3JkMRowGAYDVQQKExFD.T
1591a0 30 31 50 52 45 38 67 51 30 45 67 54 47 6c 74 61 58 52 6c 5a 44 45 6e 4d 43 55 47 41 31 55 45 41 01PRE8gQ0EgTGltaXRlZDEnMCUGA1UEA
1591c0 78 4d 65 51 30 39 4e 54 30 52 50 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 xMeQ09NT0RPIENlcnRpZmljYXRpb24gQ
1591e0 58 56 30 61 47 39 79 61 58 52 35 0a 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 XV0aG9yaXR5.MIIBIjANBgkqhkiG9w0B
159200 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 30 45 43 4c 69 33 4c 6a AQEFAAOCAQ8AMIIBCgKCAQEA0ECLi3Lj
159220 6b 52 76 33 55 63 45 62 56 41 53 59 30 36 6d 2f 77 65 61 4b 58 54 75 48 0a 2b 37 75 49 7a 67 33 kRv3UcEbVASY06m/weaKXTuH.+7uIzg3
159240 6a 4c 7a 38 47 6c 76 43 69 4b 56 43 5a 72 74 73 37 6f 56 65 77 64 46 46 78 7a 65 31 43 6b 55 31 jLz8GlvCiKVCZrts7oVewdFFxze1CkU1
159260 42 2f 71 6e 49 32 47 71 47 64 30 53 37 57 57 61 58 55 46 36 30 31 43 78 77 52 4d 2f 61 4e 35 56 B/qnI2GqGd0S7WWaXUF601CxwRM/aN5V
159280 43 61 54 77 77 0a 78 48 47 7a 55 76 41 68 54 61 48 59 75 6a 6c 38 48 4a 36 6a 4a 4a 33 79 67 78 CaTww.xHGzUvAhTaHYujl8HJ6jJJ3ygx
1592a0 61 59 71 68 5a 38 51 35 73 56 57 37 65 75 4e 4a 48 2b 31 47 49 6d 47 45 61 61 50 2b 76 42 2b 66 aYqhZ8Q5sVW7euNJH+1GImGEaaP+vB+f
1592c0 47 51 56 2b 75 73 65 67 32 4c 32 33 49 77 61 6d 62 56 0a 34 45 61 6a 63 4e 78 6f 32 66 38 45 53 GQV+useg2L23IwambV.4EajcNxo2f8ES
1592e0 49 6c 33 33 72 58 70 2b 32 64 74 51 65 6d 38 4f 62 30 79 32 57 49 43 38 62 47 6f 50 57 34 33 6e Il33rXp+2dtQem8Ob0y2WIC8bGoPW43n
159300 4f 49 76 34 74 4f 69 4a 6f 76 47 75 46 56 44 69 4f 45 6a 50 71 58 53 4a 44 6c 71 52 36 73 41 0a OIv4tOiJovGuFVDiOEjPqXSJDlqR6sA.
159320 31 4b 47 7a 71 53 58 2b 44 54 2b 6e 48 62 72 54 55 63 45 4c 70 4e 71 73 4f 4f 39 56 55 43 51 46 1KGzqSX+DT+nHbrTUcELpNqsOO9VUCQF
159340 5a 55 61 54 4e 45 38 74 6a 61 33 47 31 43 45 5a 30 6f 37 4b 42 57 46 78 42 33 4e 48 35 59 6f 5a ZUaTNE8tja3G1CEZ0o7KBWFxB3NH5YoZ
159360 45 72 30 45 54 63 35 4f 6e 4b 56 49 0a 72 4c 73 6d 39 77 49 44 41 51 41 42 6f 34 47 4f 4d 49 47 Er0ETc5OnKVI.rLsm9wIDAQABo4GOMIG
159380 4c 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 51 4c 57 4f 57 4c 78 6b 77 56 4e 36 52 41 71 54 43 LMB0GA1UdDgQWBBQLWOWLxkwVN6RAqTC
1593a0 70 49 62 35 48 4e 6c 70 57 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 0a 42 41 4d 43 41 51 pIb5HNlpW/zAOBgNVHQ8BAf8E.BAMCAQ
1593c0 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 42 4a 42 67 4e 56 48 52 YwDwYDVR0TAQH/BAUwAwEB/zBJBgNVHR
1593e0 38 45 51 6a 42 41 4d 44 36 67 50 4b 41 36 68 6a 68 6f 64 48 52 77 4f 69 38 76 59 33 4a 73 4c 6d 8EQjBAMD6gPKA6hjhodHRwOi8vY3JsLm
159400 4e 76 62 57 39 6b 0a 62 32 4e 68 4c 6d 4e 76 62 53 39 44 54 30 31 50 52 45 39 44 5a 58 4a 30 61 NvbW9k.b2NhLmNvbS9DT01PRE9DZXJ0a
159420 57 5a 70 59 32 46 30 61 57 39 75 51 58 56 30 61 47 39 79 61 58 52 35 4c 6d 4e 79 62 44 41 4e 42 WZpY2F0aW9uQXV0aG9yaXR5LmNybDANB
159440 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 0a 41 51 45 41 50 70 69 65 6d 2f 59 62 gkqhkiG9w0BAQUFAAOC.AQEAPpiem/Yb
159460 36 64 63 35 74 33 69 75 48 58 49 59 53 64 4f 48 35 45 4f 43 36 7a 2f 4a 71 76 57 6f 74 65 39 56 6dc5t3iuHXIYSdOH5EOC6z/JqvWote9V
159480 66 43 46 53 5a 66 6e 56 44 65 46 73 39 44 36 4d 6b 33 4f 52 4c 67 4c 45 54 67 64 78 62 38 43 50 fCFSZfnVDeFs9D6Mk3ORLgLETgdxb8CP
1594a0 0a 4f 47 45 49 71 42 36 42 43 73 41 76 49 43 39 42 69 35 48 63 53 45 57 38 38 63 62 65 75 6e 5a .OGEIqB6BCsAvIC9Bi5HcSEW88cbeunZ
1594c0 72 4d 38 67 41 4c 54 46 47 54 4f 33 6e 6e 63 2b 49 6c 50 38 7a 77 46 62 6f 4a 49 59 6d 75 4e 67 rM8gALTFGTO3nnc+IlP8zwFboJIYmuNg
1594e0 34 4f 4e 38 71 61 39 30 53 7a 4d 63 2f 0a 52 78 64 4d 6f 73 49 47 6c 67 6e 57 32 2f 34 2f 50 45 4ON8qa90SzMc/.RxdMosIGlgnW2/4/PE
159500 5a 42 33 31 6a 69 56 67 38 38 4f 38 45 63 6b 7a 58 5a 4f 46 4b 73 37 73 6a 73 4c 6a 42 4f 6c 44 ZB31jiVg88O8EckzXZOFKs7sjsLjBOlD
159520 57 30 4a 42 39 4c 65 47 6e 61 38 67 49 34 7a 4a 56 53 6b 2f 42 77 4a 56 6d 63 0a 49 47 66 45 37 W0JB9LeGna8gI4zJVSk/BwJVmc.IGfE7
159540 76 6d 4c 56 32 48 30 6b 6e 5a 39 50 34 53 4e 56 62 66 6f 35 61 7a 56 38 66 55 5a 56 71 5a 61 2b vmLV2H0knZ9P4SNVbfo5azV8fUZVqZa+
159560 35 41 63 72 35 50 72 35 52 7a 55 5a 35 64 64 42 41 36 2b 43 34 4f 6d 46 34 4f 35 4d 42 4b 67 78 5Acr5Pr5RzUZ5ddBA6+C4OmF4O5MBKgx
159580 54 4d 56 42 62 6b 4e 0a 2b 38 63 46 64 75 50 59 53 6f 33 38 4e 42 65 6a 78 69 45 6f 76 6a 42 46 TMVBbkN.+8cFduPYSo38NBejxiEovjBF
1595a0 4d 52 37 48 65 4c 35 59 59 54 69 73 4f 2b 49 42 5a 51 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 MR7HeL5YYTisO+IBZQ==.-----END.CE
1595c0 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 4e 65 74 77 6f 72 6b 20 53 6f 6c 75 74 69 6f 6e RTIFICATE-----..Network.Solution
1595e0 73 20 43 65 72 74 69 66 69 63 61 74 65 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d s.Certificate.Authority.========
159600 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a ===============================.
159620 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 -----BEGIN.CERTIFICATE-----.MIID
159640 35 6a 43 43 41 73 36 67 41 77 49 42 41 67 49 51 56 38 73 7a 62 38 4a 63 46 75 5a 48 46 68 66 6a 5jCCAs6gAwIBAgIQV8szb8JcFuZHFhfj
159660 6b 44 46 6f 34 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 69 4d 51 73 77 kDFo4DANBgkqhkiG9w0BAQUFADBiMQsw
159680 43 51 59 44 56 51 51 47 0a 45 77 4a 56 55 7a 45 68 4d 42 38 47 41 31 55 45 43 68 4d 59 54 6d 56 CQYDVQQG.EwJVUzEhMB8GA1UEChMYTmV
1596a0 30 64 32 39 79 61 79 42 54 62 32 78 31 64 47 6c 76 62 6e 4d 67 54 43 35 4d 4c 6b 4d 75 4d 54 41 0d29yayBTb2x1dGlvbnMgTC5MLkMuMTA
1596c0 77 4c 67 59 44 56 51 51 44 45 79 64 4f 5a 58 52 33 62 33 4a 72 0a 49 46 4e 76 62 48 56 30 61 57 wLgYDVQQDEydOZXR3b3Jr.IFNvbHV0aW
1596e0 39 75 63 79 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 42 42 64 58 52 6f 62 33 4a 70 64 48 9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdH
159700 6b 77 48 68 63 4e 4d 44 59 78 4d 6a 41 78 4d 44 41 77 4d 44 41 77 57 68 63 4e 4d 6a 6b 78 4d 6a kwHhcNMDYxMjAxMDAwMDAwWhcNMjkxMj
159720 4d 78 0a 4d 6a 4d 31 4f 54 55 35 57 6a 42 69 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 Mx.MjM1OTU5WjBiMQswCQYDVQQGEwJVU
159740 7a 45 68 4d 42 38 47 41 31 55 45 43 68 4d 59 54 6d 56 30 64 32 39 79 61 79 42 54 62 32 78 31 64 zEhMB8GA1UEChMYTmV0d29yayBTb2x1d
159760 47 6c 76 62 6e 4d 67 54 43 35 4d 4c 6b 4d 75 0a 4d 54 41 77 4c 67 59 44 56 51 51 44 45 79 64 4f GlvbnMgTC5MLkMu.MTAwLgYDVQQDEydO
159780 5a 58 52 33 62 33 4a 72 49 46 4e 76 62 48 56 30 61 57 39 75 63 79 42 44 5a 58 4a 30 61 57 5a 70 ZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZp
1597a0 59 32 46 30 5a 53 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 67 67 45 69 4d 41 30 47 0a 43 53 71 Y2F0ZSBBdXRob3JpdHkwggEiMA0G.CSq
1597c0 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 44 GSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD
1597e0 6b 76 48 36 53 4d 47 33 47 32 49 34 72 43 37 78 47 7a 75 41 6e 6c 74 37 65 2b 66 6f 53 30 7a 77 kvH6SMG3G2I4rC7xGzuAnlt7e+foS0zw
159800 7a 63 37 4d 45 4c 37 78 78 0a 6a 4f 57 66 74 69 4a 67 50 6c 39 64 7a 67 6e 2f 67 67 77 62 6d 6c zc7MEL7xx.jOWftiJgPl9dzgn/ggwbml
159820 46 51 47 69 61 4a 33 64 56 68 58 52 6e 63 45 67 38 74 43 71 4a 44 58 52 66 51 4e 4a 49 67 36 6e FQGiaJ3dVhXRncEg8tCqJDXRfQNJIg6n
159840 50 50 4f 43 77 47 4a 67 6c 36 63 76 66 36 55 44 4c 34 77 70 50 54 0a 61 61 49 6a 7a 6b 47 78 7a PPOCwGJgl6cvf6UDL4wpPT.aaIjzkGxz
159860 4f 54 56 48 7a 62 52 69 6a 72 34 6a 47 50 69 46 46 6c 70 37 51 33 54 66 32 76 6f 75 41 50 6c 54 OTVHzbRijr4jGPiFFlp7Q3Tf2vouAPlT
159880 32 72 6c 6d 47 4e 70 53 41 57 2b 4c 76 38 7a 74 75 6d 58 57 57 6e 34 5a 78 6d 75 6b 32 47 57 52 2rlmGNpSAW+Lv8ztumXWWn4Zxmuk2GWR
1598a0 42 58 54 0a 63 72 41 2f 76 47 70 39 37 45 68 2f 6a 63 4f 72 71 6e 45 72 55 32 6c 42 55 7a 53 31 BXT.crA/vGp97Eh/jcOrqnErU2lBUzS1
1598c0 73 4c 6e 46 42 67 72 45 73 45 58 31 51 56 31 75 69 55 56 37 50 54 73 6d 6a 48 54 43 35 64 4c 52 sLnFBgrEsEX1QV1uiUV7PTsmjHTC5dLR
1598e0 66 62 49 52 31 50 74 59 4d 69 4b 61 67 4d 6e 63 0a 2f 51 7a 70 66 31 34 44 6c 38 34 37 41 42 53 fbIR1PtYMiKagMnc./Qzpf14Dl847ABS
159900 48 4a 33 41 34 71 59 35 75 73 79 64 32 6d 46 48 67 42 65 4d 68 71 78 72 56 68 53 49 38 4b 62 57 HJ3A4qY5usyd2mFHgBeMhqxrVhSI8KbW
159920 61 46 73 57 41 71 50 53 37 61 7a 43 50 4c 30 59 43 6f 72 45 4d 49 75 44 54 41 67 4d 42 0a 41 41 aFsWAqPS7azCPL0YCorEMIuDTAgMB.AA
159940 47 6a 67 5a 63 77 67 5a 51 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 43 45 77 79 66 73 41 31 30 GjgZcwgZQwHQYDVR0OBBYEFCEwyfsA10
159960 36 59 32 6f 65 71 4b 74 43 6e 4c 72 46 41 4d 61 64 4d 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 6Y2oeqKtCnLrFAMadMMA4GA1UdDwEB/w
159980 51 45 41 77 49 42 42 6a 41 50 0a 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d QEAwIBBjAP.BgNVHRMBAf8EBTADAQH/M
1599a0 46 49 47 41 31 55 64 48 77 52 4c 4d 45 6b 77 52 36 42 46 6f 45 4f 47 51 57 68 30 64 48 41 36 4c FIGA1UdHwRLMEkwR6BFoEOGQWh0dHA6L
1599c0 79 39 6a 63 6d 77 75 62 6d 56 30 63 32 39 73 63 33 4e 73 4c 6d 4e 76 0a 62 53 39 4f 5a 58 52 33 y9jcmwubmV0c29sc3NsLmNv.bS9OZXR3
1599e0 62 33 4a 72 55 32 39 73 64 58 52 70 62 32 35 7a 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 56 42 b3JrU29sdXRpb25zQ2VydGlmaWNhdGVB
159a00 64 58 52 6f 62 33 4a 70 64 48 6b 75 59 33 4a 73 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 dXRob3JpdHkuY3JsMA0GCSqGSIb3DQEB
159a20 42 51 55 41 0a 41 34 49 42 41 51 43 37 72 6b 76 6e 74 31 66 72 66 36 6f 74 74 33 4e 48 68 57 72 BQUA.A4IBAQC7rkvnt1frf6ott3NHhWr
159a40 42 35 4b 55 64 35 4f 63 38 36 66 52 5a 5a 58 65 31 65 6c 74 61 6a 53 55 32 34 48 71 58 4c 6a 6a B5KUd5Oc86fRZZXe1eltajSU24HqXLjj
159a60 41 56 32 43 44 6d 41 61 44 6e 37 6c 32 65 6d 35 51 0a 34 4c 71 49 4c 50 78 46 7a 42 69 77 6d 5a AV2CDmAaDn7l2em5Q.4LqILPxFzBiwmZ
159a80 56 52 44 75 77 64 75 49 6a 2f 68 31 41 63 67 73 4c 6a 34 44 4b 41 76 36 41 4c 52 38 6a 44 4d 65 VRDuwduIj/h1AcgsLj4DKAv6ALR8jDMe
159aa0 2b 5a 5a 7a 4b 41 54 78 63 68 65 51 78 70 58 4e 35 65 4e 4b 34 43 74 53 62 71 55 4e 39 2f 0a 47 +ZZzKATxcheQxpXN5eNK4CtSbqUN9/.G
159ac0 47 55 73 79 66 4a 6a 34 61 6b 48 2f 6e 78 78 48 32 73 7a 4a 47 6f 65 42 66 63 46 61 4d 42 71 45 GUsyfJj4akH/nxxH2szJGoeBfcFaMBqE
159ae0 73 73 75 58 6d 48 4c 72 69 6a 54 66 73 4b 30 5a 70 45 6d 58 7a 77 75 4a 46 2f 4c 57 41 2f 72 4b ssuXmHLrijTfsK0ZpEmXzwuJF/LWA/rK
159b00 4f 79 76 45 5a 62 7a 33 48 74 76 0a 77 4b 65 49 38 6c 4e 33 73 32 42 65 72 71 34 6f 32 6a 55 73 OyvEZbz3Htv.wKeI8lN3s2Berq4o2jUs
159b20 62 7a 52 46 30 79 62 68 33 75 78 62 54 79 64 72 46 6e 79 39 52 41 51 59 67 72 4f 4a 65 52 63 51 bzRF0ybh3uxbTydrFny9RAQYgrOJeRcQ
159b40 63 54 31 36 6f 68 5a 4f 39 51 48 4e 70 47 78 6c 61 4b 46 4a 64 6c 78 44 0a 79 64 69 38 4e 6d 64 cT16ohZO9QHNpGxlaKFJdlxD.ydi8Nmd
159b60 73 70 5a 53 31 31 4d 79 35 76 57 6f 31 56 69 48 65 32 4d 50 72 2b 38 75 6b 59 45 79 77 56 61 43 spZS11My5vWo1ViHe2MPr+8ukYEywVaC
159b80 67 65 31 65 79 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a ge1ey.-----END.CERTIFICATE-----.
159ba0 0a 57 65 6c 6c 73 53 65 63 75 72 65 20 50 75 62 6c 69 63 20 52 6f 6f 74 20 43 65 72 74 69 66 69 .WellsSecure.Public.Root.Certifi
159bc0 63 61 74 65 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d cate.Authority.=================
159be0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d ============================.---
159c00 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 76 54 43 --BEGIN.CERTIFICATE-----.MIIEvTC
159c20 43 41 36 57 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 CA6WgAwIBAgIBATANBgkqhkiG9w0BAQU
159c40 46 41 44 43 42 68 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 49 44 41 65 42 67 4e FADCBhTELMAkGA1UEBhMCVVMxIDAeBgN
159c60 56 42 41 6f 4d 0a 46 31 64 6c 62 47 78 7a 49 45 5a 68 63 6d 64 76 49 46 64 6c 62 47 78 7a 55 32 VBAoM.F1dlbGxzIEZhcmdvIFdlbGxzU2
159c80 56 6a 64 58 4a 6c 4d 52 77 77 47 67 59 44 56 51 51 4c 44 42 4e 58 5a 57 78 73 63 79 42 47 59 58 VjdXJlMRwwGgYDVQQLDBNXZWxscyBGYX
159ca0 4a 6e 62 79 42 43 59 57 35 72 49 45 35 42 4d 54 59 77 0a 4e 41 59 44 56 51 51 44 44 43 31 58 5a JnbyBCYW5rIE5BMTYw.NAYDVQQDDC1XZ
159cc0 57 78 73 63 31 4e 6c 59 33 56 79 5a 53 42 51 64 57 4a 73 61 57 4d 67 55 6d 39 76 64 43 42 44 5a Wxsc1NlY3VyZSBQdWJsaWMgUm9vdCBDZ
159ce0 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 48 68 63 4e 0a XJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcN.
159d00 4d 44 63 78 4d 6a 45 7a 4d 54 63 77 4e 7a 55 30 57 68 63 4e 4d 6a 49 78 4d 6a 45 30 4d 44 41 77 MDcxMjEzMTcwNzU0WhcNMjIxMjE0MDAw
159d20 4e 7a 55 30 57 6a 43 42 68 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 49 44 41 65 NzU0WjCBhTELMAkGA1UEBhMCVVMxIDAe
159d40 42 67 4e 56 42 41 6f 4d 46 31 64 6c 0a 62 47 78 7a 49 45 5a 68 63 6d 64 76 49 46 64 6c 62 47 78 BgNVBAoMF1dl.bGxzIEZhcmdvIFdlbGx
159d60 7a 55 32 56 6a 64 58 4a 6c 4d 52 77 77 47 67 59 44 56 51 51 4c 44 42 4e 58 5a 57 78 73 63 79 42 zU2VjdXJlMRwwGgYDVQQLDBNXZWxscyB
159d80 47 59 58 4a 6e 62 79 42 43 59 57 35 72 49 45 35 42 4d 54 59 77 4e 41 59 44 0a 56 51 51 44 44 43 GYXJnbyBCYW5rIE5BMTYwNAYD.VQQDDC
159da0 31 58 5a 57 78 73 63 31 4e 6c 59 33 56 79 5a 53 42 51 64 57 4a 73 61 57 4d 67 55 6d 39 76 64 43 1XZWxsc1NlY3VyZSBQdWJsaWMgUm9vdC
159dc0 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 67 67 BDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwgg
159de0 45 69 4d 41 30 47 0a 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 EiMA0G.CSqGSIb3DQEBAQUAA4IBDwAwg
159e00 67 45 4b 41 6f 49 42 41 51 44 75 62 37 53 39 65 65 4b 50 43 43 47 65 4f 41 52 42 4a 65 2b 72 57 gEKAoIBAQDub7S9eeKPCCGeOARBJe+rW
159e20 78 78 54 6b 71 78 74 6e 74 33 43 78 43 35 46 6c 41 4d 31 0a 69 47 64 30 56 2b 50 66 6a 4c 69 6e xxTkqxtnt3CxC5FlAM1.iGd0V+PfjLin
159e40 64 6f 38 37 39 36 6a 45 32 79 6c 6a 44 70 46 6f 4e 6f 71 58 6a 6f 70 78 61 41 6b 48 35 4f 6a 55 do8796jE2yljDpFoNoqXjopxaAkH5OjU
159e60 44 6b 2f 34 31 69 74 4d 70 42 62 35 37 30 4f 59 6a 37 4f 65 55 74 39 74 6b 54 6d 50 4f 4c 31 33 Dk/41itMpBb570OYj7OeUt9tkTmPOL13
159e80 0a 69 30 4e 6a 36 37 65 54 2f 44 42 4d 48 41 47 54 74 68 50 37 39 36 45 66 76 79 58 68 64 44 63 .i0Nj67eT/DBMHAGTthP796EfvyXhdDc
159ea0 73 48 71 52 65 50 47 6a 34 53 37 38 4e 75 52 34 75 4e 75 69 70 35 4b 66 34 44 38 75 43 64 58 77 sHqRePGj4S78NuR4uNuip5Kf4D8uCdXw
159ec0 31 4c 53 4c 57 77 72 38 4c 38 37 54 38 0a 62 4a 56 68 48 6c 66 58 42 49 45 79 67 31 4a 35 35 6f 1LSLWwr8L87T8.bJVhHlfXBIEyg1J55o
159ee0 4e 6a 7a 37 66 4c 59 34 73 52 34 72 31 65 36 2f 61 4e 37 5a 56 79 4b 4c 53 73 45 6d 4c 70 53 6a Njz7fLY4sR4r1e6/aN7ZVyKLSsEmLpSj
159f00 50 6d 67 7a 4b 75 42 58 57 56 76 59 53 56 32 79 70 63 6d 34 34 75 44 4c 69 42 0a 4b 30 48 6d 4f PmgzKuBXWVvYSV2ypcm44uDLiB.K0HmO
159f20 46 61 66 53 5a 74 73 64 76 71 4b 58 66 63 42 65 59 46 38 77 59 4e 41 42 66 35 78 2f 51 77 2f 7a FafSZtsdvqKXfcBeYF8wYNABf5x/Qw/z
159f40 45 35 67 43 51 35 6c 52 78 41 76 41 63 41 46 50 34 2f 34 73 30 48 76 57 6b 4a 2b 57 65 2f 53 6c E5gCQ5lRxAvAcAFP4/4s0HvWkJ+We/Sl
159f60 77 78 6c 41 67 4d 42 0a 41 41 47 6a 67 67 45 30 4d 49 49 42 4d 44 41 50 42 67 4e 56 48 52 4d 42 wxlAgMB.AAGjggE0MIIBMDAPBgNVHRMB
159f80 41 66 38 45 42 54 41 44 41 51 48 2f 4d 44 6b 47 41 31 55 64 48 77 51 79 4d 44 41 77 4c 71 41 73 Af8EBTADAQH/MDkGA1UdHwQyMDAwLqAs
159fa0 6f 43 71 47 4b 47 68 30 64 48 41 36 4c 79 39 6a 63 6d 77 75 0a 63 47 74 70 4c 6e 64 6c 62 47 78 oCqGKGh0dHA6Ly9jcmwu.cGtpLndlbGx
159fc0 7a 5a 6d 46 79 5a 32 38 75 59 32 39 74 4c 33 64 7a 63 48 4a 6a 59 53 35 6a 63 6d 77 77 44 67 59 zZmFyZ28uY29tL3dzcHJjYS5jcmwwDgY
159fe0 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 48 47 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 51 DVR0PAQH/BAQDAgHGMB0GA1UdDgQWBBQ
15a000 6d 0a 6c 52 6b 51 32 65 69 68 6c 35 48 2f 33 42 6e 5a 74 51 51 2b 30 6e 4d 4b 61 6a 43 42 73 67 m.lRkQ2eihl5H/3BnZtQQ+0nMKajCBsg
15a020 59 44 56 52 30 6a 42 49 47 71 4d 49 47 6e 67 42 51 6d 6c 52 6b 51 32 65 69 68 6c 35 48 2f 33 42 YDVR0jBIGqMIGngBQmlRkQ2eihl5H/3B
15a040 6e 5a 74 51 51 2b 30 6e 4d 4b 61 71 47 42 0a 69 36 53 42 69 44 43 42 68 54 45 4c 4d 41 6b 47 41 nZtQQ+0nMKaqGB.i6SBiDCBhTELMAkGA
15a060 31 55 45 42 68 4d 43 56 56 4d 78 49 44 41 65 42 67 4e 56 42 41 6f 4d 46 31 64 6c 62 47 78 7a 49 1UEBhMCVVMxIDAeBgNVBAoMF1dlbGxzI
15a080 45 5a 68 63 6d 64 76 49 46 64 6c 62 47 78 7a 55 32 56 6a 64 58 4a 6c 4d 52 77 77 0a 47 67 59 44 EZhcmdvIFdlbGxzU2VjdXJlMRww.GgYD
15a0a0 56 51 51 4c 44 42 4e 58 5a 57 78 73 63 79 42 47 59 58 4a 6e 62 79 42 43 59 57 35 72 49 45 35 42 VQQLDBNXZWxscyBGYXJnbyBCYW5rIE5B
15a0c0 4d 54 59 77 4e 41 59 44 56 51 51 44 44 43 31 58 5a 57 78 73 63 31 4e 6c 59 33 56 79 5a 53 42 51 MTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQ
15a0e0 64 57 4a 73 61 57 4d 67 0a 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 42 dWJsaWMg.Um9vdCBDZXJ0aWZpY2F0ZSB
15a100 42 64 58 52 6f 62 33 4a 70 64 48 6d 43 41 51 45 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 BdXRob3JpdHmCAQEwDQYJKoZIhvcNAQE
15a120 46 42 51 41 44 67 67 45 42 41 4c 6b 56 73 55 53 52 7a 43 50 49 0a 4b 30 31 33 34 2f 69 61 65 79 FBQADggEBALkVsUSRzCPI.K0134/iaey
15a140 63 4e 7a 58 4b 37 6d 51 44 4b 66 47 59 5a 55 4d 62 56 6d 4f 32 72 76 77 4e 61 35 55 33 6c 48 73 cNzXK7mQDKfGYZUMbVmO2rvwNa5U3lHs
15a160 68 50 63 5a 65 47 31 65 4d 64 2f 5a 44 4a 50 48 56 33 56 33 70 39 2b 4e 37 30 31 4e 58 33 6c 65 hPcZeG1eMd/ZDJPHV3V3p9+N701NX3le
15a180 5a 30 0a 62 68 30 38 72 6e 79 64 32 77 49 44 42 53 78 78 53 79 55 2b 42 2b 4e 65 6d 76 56 6d 46 Z0.bh08rnyd2wIDBSxxSyU+B+NemvVmF
15a1a0 79 6d 49 47 6a 69 66 7a 36 70 42 41 34 53 58 61 35 4d 34 65 73 6f 77 52 42 73 6b 52 44 50 51 35 ymIGjifz6pBA4SXa5M4esowRBskRDPQ5
15a1c0 4e 48 63 4b 44 6a 30 45 30 4d 31 4e 53 6c 6a 0a 71 48 79 69 74 61 30 34 70 4f 32 74 2f 63 61 61 NHcKDj0E0M1NSlj.qHyita04pO2t/caa
15a1e0 48 2f 2b 58 63 2f 37 37 73 7a 57 6e 6b 34 62 47 64 70 45 41 35 71 78 52 46 73 51 6e 4d 6c 7a 62 H/+Xc/77szWnk4bGdpEA5qxRFsQnMlzb
15a200 63 39 71 6c 6b 31 65 4f 50 6d 30 31 4a 67 68 5a 31 65 64 45 31 33 59 67 59 2b 65 73 0a 45 32 66 c9qlk1eOPm01JghZ1edE13YgY+es.E2f
15a220 44 62 62 46 77 52 6e 7a 56 6c 68 45 39 69 57 39 64 71 4b 48 72 6a 51 72 61 77 78 30 7a 62 4b 50 DbbFwRnzVlhE9iW9dqKHrjQrawx0zbKP
15a240 71 5a 78 6d 61 6d 58 39 4c 50 59 4e 52 4b 68 33 4b 4c 34 59 4d 6f 6e 34 51 4c 53 76 55 46 70 55 qZxmamX9LPYNRKh3KL4YMon4QLSvUFpU
15a260 4c 42 36 6f 75 46 4a 4a 4a 0a 74 79 6c 76 32 47 30 78 66 66 58 38 6f 52 41 48 68 38 34 76 57 64 LB6ouFJJJ.tylv2G0xffX8oRAHh84vWd
15a280 77 2b 57 4e 73 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d w+WNs=.-----END.CERTIFICATE-----
15a2a0 0a 0a 43 4f 4d 4f 44 4f 20 45 43 43 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f ..COMODO.ECC.Certification.Autho
15a2c0 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d rity.===========================
15a2e0 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d =======.-----BEGIN.CERTIFICATE--
15a300 2d 2d 2d 0a 4d 49 49 43 69 54 43 43 41 67 2b 67 41 77 49 42 41 67 49 51 48 30 65 76 71 6d 49 41 ---.MIICiTCCAg+gAwIBAgIQH0evqmIA
15a320 63 46 42 55 54 41 47 65 6d 32 4f 5a 4b 6a 41 4b 42 67 67 71 68 6b 6a 4f 50 51 51 44 41 7a 43 42 cFBUTAGem2OZKjAKBggqhkjOPQQDAzCB
15a340 68 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 0a 52 30 49 78 47 7a 41 5a 42 67 4e 56 42 41 67 hTELMAkGA1UEBhMC.R0IxGzAZBgNVBAg
15a360 54 45 6b 64 79 5a 57 46 30 5a 58 49 67 54 57 46 75 59 32 68 6c 63 33 52 6c 63 6a 45 51 4d 41 34 TEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4
15a380 47 41 31 55 45 42 78 4d 48 55 32 46 73 5a 6d 39 79 5a 44 45 61 4d 42 67 47 41 31 55 45 0a 43 68 GA1UEBxMHU2FsZm9yZDEaMBgGA1UE.Ch
15a3a0 4d 52 51 30 39 4e 54 30 52 50 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 4b 7a 41 70 42 67 MRQ09NT0RPIENBIExpbWl0ZWQxKzApBg
15a3c0 4e 56 42 41 4d 54 49 6b 4e 50 54 55 39 45 54 79 42 46 51 30 4d 67 51 32 56 79 64 47 6c 6d 61 57 NVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaW
15a3e0 4e 68 64 47 6c 76 62 69 42 42 0a 64 58 52 6f 62 33 4a 70 64 48 6b 77 48 68 63 4e 4d 44 67 77 4d NhdGlvbiBB.dXRob3JpdHkwHhcNMDgwM
15a400 7a 41 32 4d 44 41 77 4d 44 41 77 57 68 63 4e 4d 7a 67 77 4d 54 45 34 4d 6a 4d 31 4f 54 55 35 57 zA2MDAwMDAwWhcNMzgwMTE4MjM1OTU5W
15a420 6a 43 42 68 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 52 30 49 78 0a 47 7a 41 5a 42 67 4e 56 jCBhTELMAkGA1UEBhMCR0Ix.GzAZBgNV
15a440 42 41 67 54 45 6b 64 79 5a 57 46 30 5a 58 49 67 54 57 46 75 59 32 68 6c 63 33 52 6c 63 6a 45 51 BAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQ
15a460 4d 41 34 47 41 31 55 45 42 78 4d 48 55 32 46 73 5a 6d 39 79 5a 44 45 61 4d 42 67 47 41 31 55 45 MA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UE
15a480 43 68 4d 52 0a 51 30 39 4e 54 30 52 50 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 4b 7a 41 ChMR.Q09NT0RPIENBIExpbWl0ZWQxKzA
15a4a0 70 42 67 4e 56 42 41 4d 54 49 6b 4e 50 54 55 39 45 54 79 42 46 51 30 4d 67 51 32 56 79 64 47 6c pBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGl
15a4c0 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 0a 62 33 4a 70 64 48 6b 77 64 6a 41 51 42 67 maWNhdGlvbiBBdXRo.b3JpdHkwdjAQBg
15a4e0 63 71 68 6b 6a 4f 50 51 49 42 42 67 55 72 67 51 51 41 49 67 4e 69 41 41 51 44 52 33 73 76 64 63 cqhkjOPQIBBgUrgQQAIgNiAAQDR3svdc
15a500 6d 43 46 59 58 37 64 65 53 52 46 74 53 72 59 70 6e 31 50 6c 49 4c 42 73 35 42 41 48 2b 58 0a 34 mCFYX7deSRFtSrYpn1PlILBs5BAH+X.4
15a520 51 6f 6b 50 42 30 42 42 4f 34 39 30 6f 30 4a 6c 77 7a 67 64 65 54 36 2b 33 65 4b 4b 76 55 44 59 QokPB0BBO490o0JlwzgdeT6+3eKKvUDY
15a540 45 73 32 69 78 59 6a 46 71 30 4a 63 66 52 4b 39 43 68 51 74 50 36 49 48 47 34 2f 62 43 38 76 43 Es2ixYjFq0JcfRK9ChQtP6IHG4/bC8vC
15a560 56 6c 62 70 56 73 4c 4d 35 6e 69 0a 77 7a 32 4a 2b 57 6f 73 37 37 4c 54 42 75 6d 6a 51 6a 42 41 VlbpVsLM5ni.wz2J+Wos77LTBumjQjBA
15a580 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 52 31 63 61 63 5a 53 42 6d 38 6e 5a 33 71 51 55 66 66 MB0GA1UdDgQWBBR1cacZSBm8nZ3qQUff
15a5a0 6c 4d 52 49 64 35 6e 54 65 54 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 0a 42 41 4d 43 41 51 59 lMRId5nTeTAOBgNVHQ8BAf8E.BAMCAQY
15a5c0 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4b 42 67 67 71 68 6b 6a wDwYDVR0TAQH/BAUwAwEB/zAKBggqhkj
15a5e0 4f 50 51 51 44 41 77 4e 6f 41 44 42 6c 41 6a 45 41 37 77 4e 62 65 71 79 33 65 41 70 79 74 34 6a OPQQDAwNoADBlAjEA7wNbeqy3eApyt4j
15a600 66 2f 37 56 47 0a 46 41 6b 4b 2b 71 44 6d 66 51 6a 47 47 6f 65 39 47 4b 68 7a 76 53 62 4b 59 41 f/7VG.FAkK+qDmfQjGGoe9GKhzvSbKYA
15a620 79 64 7a 70 6d 66 7a 31 77 50 4d 4f 47 2b 46 44 48 71 41 6a 41 55 39 4a 4d 38 53 61 63 7a 65 70 ydzpmfz1wPMOG+FDHqAjAU9JM8Saczep
15a640 42 47 52 37 4e 6a 66 52 4f 62 54 72 64 76 47 44 65 41 0a 55 2f 37 64 49 4f 41 31 6d 6a 62 52 78 BGR7NjfRObTrdvGDeA.U/7dIOA1mjbRx
15a660 77 47 35 35 74 7a 64 38 2f 38 64 4c 44 6f 57 56 39 6d 53 4f 64 59 3d 0a 2d 2d 2d 2d 2d 45 4e 44 wG55tzd8/8dLDoWV9mSOdY=.-----END
15a680 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 49 47 43 2f 41 0a 3d 3d 3d 3d 3d 0a 2d .CERTIFICATE-----..IGC/A.=====.-
15a6a0 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 41 ----BEGIN.CERTIFICATE-----.MIIEA
15a6c0 6a 43 43 41 75 71 67 41 77 49 42 41 67 49 46 4f 52 46 46 45 4a 51 77 44 51 59 4a 4b 6f 5a 49 68 jCCAuqgAwIBAgIFORFFEJQwDQYJKoZIh
15a6e0 76 63 4e 41 51 45 46 42 51 41 77 67 59 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 5a 53 4d vcNAQEFBQAwgYUxCzAJBgNVBAYTAkZSM
15a700 51 38 77 44 51 59 44 0a 56 51 51 49 45 77 5a 47 63 6d 46 75 59 32 55 78 44 6a 41 4d 42 67 4e 56 Q8wDQYD.VQQIEwZGcmFuY2UxDjAMBgNV
15a720 42 41 63 54 42 56 42 68 63 6d 6c 7a 4d 52 41 77 44 67 59 44 56 51 51 4b 45 77 64 51 54 53 39 54 BAcTBVBhcmlzMRAwDgYDVQQKEwdQTS9T
15a740 52 30 52 4f 4d 51 34 77 44 41 59 44 56 51 51 4c 45 77 56 45 0a 51 31 4e 54 53 54 45 4f 4d 41 77 R0ROMQ4wDAYDVQQLEwVE.Q1NTSTEOMAw
15a760 47 41 31 55 45 41 78 4d 46 53 55 64 44 4c 30 45 78 49 7a 41 68 42 67 6b 71 68 6b 69 47 39 77 30 GA1UEAxMFSUdDL0ExIzAhBgkqhkiG9w0
15a780 42 43 51 45 57 46 47 6c 6e 59 32 46 41 63 32 64 6b 62 69 35 77 62 53 35 6e 62 33 56 32 4c 6d 5a BCQEWFGlnY2FAc2dkbi5wbS5nb3V2LmZ
15a7a0 79 0a 4d 42 34 58 44 54 41 79 4d 54 49 78 4d 7a 45 30 4d 6a 6b 79 4d 31 6f 58 44 54 49 77 4d 54 y.MB4XDTAyMTIxMzE0MjkyM1oXDTIwMT
15a7c0 41 78 4e 7a 45 30 4d 6a 6b 79 4d 6c 6f 77 67 59 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b AxNzE0MjkyMlowgYUxCzAJBgNVBAYTAk
15a7e0 5a 53 4d 51 38 77 44 51 59 44 56 51 51 49 0a 45 77 5a 47 63 6d 46 75 59 32 55 78 44 6a 41 4d 42 ZSMQ8wDQYDVQQI.EwZGcmFuY2UxDjAMB
15a800 67 4e 56 42 41 63 54 42 56 42 68 63 6d 6c 7a 4d 52 41 77 44 67 59 44 56 51 51 4b 45 77 64 51 54 gNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQT
15a820 53 39 54 52 30 52 4f 4d 51 34 77 44 41 59 44 56 51 51 4c 45 77 56 45 51 31 4e 54 0a 53 54 45 4f S9TR0ROMQ4wDAYDVQQLEwVEQ1NT.STEO
15a840 4d 41 77 47 41 31 55 45 41 78 4d 46 53 55 64 44 4c 30 45 78 49 7a 41 68 42 67 6b 71 68 6b 69 47 MAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG
15a860 39 77 30 42 43 51 45 57 46 47 6c 6e 59 32 46 41 63 32 64 6b 62 69 35 77 62 53 35 6e 62 33 56 32 9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2
15a880 4c 6d 5a 79 4d 49 49 42 0a 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f LmZyMIIB.IjANBgkqhkiG9w0BAQEFAAO
15a8a0 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 73 68 2f 52 30 47 4c 46 4d 7a 76 41 42 49 61 CAQ8AMIIBCgKCAQEAsh/R0GLFMzvABIa
15a8c0 49 73 39 7a 34 69 50 66 39 33 30 50 66 65 6f 32 61 53 56 7a 32 0a 54 71 72 4d 48 4c 6d 68 36 79 Is9z4iPf930Pfeo2aSVz2.TqrMHLmh6y
15a8e0 65 4a 38 6b 62 70 4f 30 70 78 31 52 32 4f 4c 63 2f 6d 72 61 74 6a 55 4d 64 55 43 32 34 53 79 5a eJ8kbpO0px1R2OLc/mratjUMdUC24SyZ
15a900 41 32 78 74 67 76 32 70 47 71 61 4d 56 79 2f 68 63 4b 73 68 64 2b 65 62 55 79 69 48 44 4b 63 4d A2xtgv2pGqaMVy/hcKshd+ebUyiHDKcM
15a920 43 57 0a 53 6f 37 6b 56 63 30 64 4a 35 53 2f 7a 6e 49 71 37 46 7a 35 63 79 44 2b 76 66 63 75 69 CW.So7kVc0dJ5S/znIq7Fz5cyD+vfcui
15a940 57 65 34 75 30 64 7a 45 76 66 52 4e 57 6b 36 38 67 71 35 72 76 39 47 51 6b 61 69 76 36 47 46 47 We4u0dzEvfRNWk68gq5rv9GQkaiv6GFG
15a960 76 6d 2f 35 50 39 4a 68 66 65 6a 63 49 59 79 0a 48 46 32 66 59 50 65 70 72 61 58 2f 7a 39 45 30 vm/5P9JhfejcIYy.HF2fYPepraX/z9E0
15a980 2b 58 31 62 46 38 62 63 31 67 34 6f 61 38 4c 64 38 66 55 7a 61 4a 31 4f 2f 49 64 38 4e 68 4c 57 +X1bF8bc1g4oa8Ld8fUzaJ1O/Id8NhLW
15a9a0 6f 34 44 6f 51 77 31 56 59 5a 54 71 5a 44 64 48 36 6e 66 4b 30 4c 4a 59 42 63 4e 64 0a 66 72 47 o4DoQw1VYZTqZDdH6nfK0LJYBcNd.frG
15a9c0 6f 52 70 41 78 56 73 35 77 4b 70 61 79 4d 4c 68 33 35 6e 6e 41 76 53 6b 37 2f 5a 52 33 54 4c 30 oRpAxVs5wKpayMLh35nnAvSk7/ZR3TL0
15a9e0 67 7a 55 45 6c 34 43 37 48 47 37 76 75 70 41 52 42 30 6c 32 74 45 6d 71 4b 6d 30 66 37 79 64 31 gzUEl4C7HG7vupARB0l2tEmqKm0f7yd1
15aa00 47 51 4f 47 64 50 44 50 51 0a 74 51 49 44 41 51 41 42 6f 33 63 77 64 54 41 50 42 67 4e 56 48 52 GQOGdPDPQ.tQIDAQABo3cwdTAPBgNVHR
15aa20 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 73 47 41 31 55 64 44 77 51 45 41 77 49 42 52 6a MBAf8EBTADAQH/MAsGA1UdDwQEAwIBRj
15aa40 41 56 42 67 4e 56 48 53 41 45 44 6a 41 4d 4d 41 6f 47 43 43 71 42 0a 65 67 46 35 41 51 45 42 4d AVBgNVHSAEDjAMMAoGCCqB.egF5AQEBM
15aa60 42 30 47 41 31 55 64 44 67 51 57 42 42 53 6a 42 53 38 59 59 46 44 43 69 51 72 64 4b 79 46 50 2f B0GA1UdDgQWBBSjBS8YYFDCiQrdKyFP/
15aa80 34 35 4f 71 44 41 78 4e 6a 41 66 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 53 6a 42 53 38 59 59 45OqDAxNjAfBgNVHSMEGDAWgBSjBS8YY
15aaa0 46 44 43 0a 69 51 72 64 4b 79 46 50 2f 34 35 4f 71 44 41 78 4e 6a 41 4e 42 67 6b 71 68 6b 69 47 FDC.iQrdKyFP/45OqDAxNjANBgkqhkiG
15aac0 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 42 64 77 6d 32 50 70 33 46 55 52 6f 2f 43 39 6d 9w0BAQUFAAOCAQEABdwm2Pp3FURo/C9m
15aae0 4f 6e 54 67 58 65 51 70 2f 77 59 48 45 34 52 4b 0a 71 38 39 74 6f 42 39 52 6c 50 68 4a 79 33 51 OnTgXeQp/wYHE4RK.q89toB9RlPhJy3Q
15ab00 32 46 4c 77 56 33 64 75 4a 4c 39 32 50 6f 46 31 38 39 52 4c 72 6e 35 34 34 70 45 66 4d 73 35 62 2FLwV3duJL92PoF189RLrn544pEfMs5b
15ab20 5a 76 70 77 6c 71 77 4e 2b 4d 77 2b 56 67 51 33 39 46 75 43 49 76 6a 66 77 62 46 33 51 0a 4d 5a ZvpwlqwN+Mw+VgQ39FuCIvjfwbF3Q.MZ
15ab40 73 79 4b 31 30 58 5a 5a 4f 59 59 4c 78 75 6a 37 47 6f 50 42 37 5a 48 50 4f 70 4a 6b 4c 35 5a 42 syK10XZZOYYLxuj7GoPB7ZHPOpJkL5ZB
15ab60 33 43 35 35 4c 32 39 42 35 61 71 68 6c 53 58 61 2f 6f 6f 76 64 67 6f 50 61 4e 38 49 6e 31 62 75 3C55L29B5aqhlSXa/oovdgoPaN8In1bu
15ab80 41 4b 42 51 47 56 79 59 73 67 0a 43 72 70 61 2f 4a 6f 73 50 4c 33 44 74 38 6c 64 65 43 55 46 50 AKBQGVyYsg.Crpa/JosPL3Dt8ldeCUFP
15aba0 31 59 55 6d 77 7a 61 2b 7a 70 49 2f 70 64 70 58 73 6f 51 68 76 64 4f 6c 67 51 49 54 65 79 77 76 1YUmwza+zpI/pdpXsoQhvdOlgQITeywv
15abc0 6c 33 63 4f 34 35 50 77 66 32 61 4e 6a 53 61 54 46 52 2b 46 77 4e 49 0a 6c 51 67 52 48 41 64 76 l3cO45Pwf2aNjSaTFR+FwNI.lQgRHAdv
15abe0 68 51 68 2b 58 55 33 45 6e 64 76 37 72 73 36 79 30 62 4f 34 67 32 77 64 73 72 4e 35 38 64 68 77 hQh+XU3Endv7rs6y0bO4g2wdsrN58dhw
15ac00 6d 58 37 77 45 77 4c 4f 58 74 31 52 30 39 38 32 67 61 45 62 65 43 39 78 73 2f 46 5a 54 45 59 59 mX7wEwLOXt1R0982gaEbeC9xs/FZTEYY
15ac20 4b 4b 75 46 0a 30 6d 42 57 57 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 KKuF.0mBWWg==.-----END.CERTIFICA
15ac40 54 45 2d 2d 2d 2d 2d 0a 0a 53 65 63 75 72 69 74 79 20 43 6f 6d 6d 75 6e 69 63 61 74 69 6f 6e 20 TE-----..Security.Communication.
15ac60 45 56 20 52 6f 6f 74 43 41 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d EV.RootCA1.=====================
15ac80 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 ============.-----BEGIN.CERTIFIC
15aca0 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 66 54 43 43 41 6d 57 67 41 77 49 42 41 67 49 42 41 44 41 ATE-----.MIIDfTCCAmWgAwIBAgIBADA
15acc0 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 67 4d 51 73 77 43 51 59 44 56 51 51 NBgkqhkiG9w0BAQUFADBgMQswCQYDVQQ
15ace0 47 45 77 4a 4b 55 44 45 6c 4d 43 4d 47 41 31 55 45 43 68 4d 63 0a 55 30 56 44 54 30 30 67 56 48 GEwJKUDElMCMGA1UEChMc.U0VDT00gVH
15ad00 4a 31 63 33 51 67 55 33 6c 7a 64 47 56 74 63 79 42 44 54 79 34 73 54 46 52 45 4c 6a 45 71 4d 43 J1c3QgU3lzdGVtcyBDTy4sTFRELjEqMC
15ad20 67 47 41 31 55 45 43 78 4d 68 55 32 56 6a 64 58 4a 70 64 48 6b 67 51 32 39 74 62 58 56 75 61 57 gGA1UECxMhU2VjdXJpdHkgQ29tbXVuaW
15ad40 4e 68 0a 64 47 6c 76 62 69 42 46 56 69 42 53 62 32 39 30 51 30 45 78 4d 42 34 58 44 54 41 33 4d Nh.dGlvbiBFViBSb290Q0ExMB4XDTA3M
15ad60 44 59 77 4e 6a 41 79 4d 54 49 7a 4d 6c 6f 58 44 54 4d 33 4d 44 59 77 4e 6a 41 79 4d 54 49 7a 4d DYwNjAyMTIzMloXDTM3MDYwNjAyMTIzM
15ad80 6c 6f 77 59 44 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 53 6c 41 78 4a 54 41 6a 42 67 4e 56 lowYDELMAkGA1UE.BhMCSlAxJTAjBgNV
15ada0 42 41 6f 54 48 46 4e 46 51 30 39 4e 49 46 52 79 64 58 4e 30 49 46 4e 35 63 33 52 6c 62 58 4d 67 BAoTHFNFQ09NIFRydXN0IFN5c3RlbXMg
15adc0 51 30 38 75 4c 45 78 55 52 43 34 78 4b 6a 41 6f 42 67 4e 56 42 41 73 54 49 56 4e 6c 0a 59 33 56 Q08uLExURC4xKjAoBgNVBAsTIVNl.Y3V
15ade0 79 61 58 52 35 49 45 4e 76 62 57 31 31 62 6d 6c 6a 59 58 52 70 62 32 34 67 52 56 59 67 55 6d 39 yaXR5IENvbW11bmljYXRpb24gRVYgUm9
15ae00 76 64 45 4e 42 4d 54 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 vdENBMTCCASIwDQYJKoZIhvcNAQEBBQA
15ae20 44 67 67 45 50 41 44 43 43 0a 41 51 6f 43 67 67 45 42 41 4c 78 2f 37 46 65 62 4a 4f 44 2b 6e 4c DggEPADCC.AQoCggEBALx/7FebJOD+nL
15ae40 70 43 65 61 6d 49 69 76 71 41 34 50 55 48 4b 55 50 71 6a 67 6f 30 4e 6f 30 63 2b 71 65 31 4f 58 pCeamIivqA4PUHKUPqjgo0No0c+qe1OX
15ae60 6a 2f 6c 33 58 33 4c 2b 53 71 61 77 53 45 52 4d 71 6d 34 6d 69 4f 0a 2f 56 56 51 59 67 2b 6b 63 j/l3X3L+SqawSERMqm4miO./VVQYg+kc
15ae80 51 37 4f 42 7a 67 74 51 6f 56 51 72 54 79 57 62 34 76 56 6f 67 37 50 33 6b 6d 4a 50 64 5a 6b 4c Q7OBzgtQoVQrTyWb4vVog7P3kmJPdZkL
15aea0 6a 6a 6c 48 6d 79 31 56 34 71 65 37 30 67 4f 7a 58 70 70 46 6f 64 45 74 5a 44 6b 42 70 32 75 6f jjlHmy1V4qe70gOzXppFodEtZDkBp2uo
15aec0 51 53 58 0a 57 48 6e 76 49 45 71 43 61 34 77 69 76 2b 77 66 44 2b 6d 45 63 65 33 78 44 75 53 34 QSX.WHnvIEqCa4wiv+wfD+mEce3xDuS4
15aee0 47 42 50 4d 56 6a 5a 64 30 5a 6f 65 55 57 73 35 62 6d 42 32 69 44 51 4c 38 37 50 52 73 4a 33 4b GBPMVjZd0ZoeUWs5bmB2iDQL87PRsJ3K
15af00 59 65 4a 6b 48 63 46 47 42 37 68 6a 33 52 34 7a 0a 5a 62 4f 4f 43 56 56 53 50 62 57 39 2f 77 66 YeJkHcFGB7hj3R4z.ZbOOCVVSPbW9/wf
15af20 72 72 57 46 56 47 43 79 70 61 5a 68 4b 71 6b 44 46 4d 78 52 6c 64 41 44 35 6b 64 36 76 41 30 6a rrWFVGCypaZhKqkDFMxRldAD5kd6vA0j
15af40 46 51 46 54 63 44 34 53 51 61 43 44 46 6b 70 62 63 4c 75 55 43 52 61 72 41 58 31 54 34 0a 62 65 FQFTcD4SQaCDFkpbcLuUCRarAX1T4.be
15af60 70 4a 7a 31 31 73 53 36 2f 76 6d 73 4a 57 58 4d 59 31 56 6b 4a 71 4d 46 2f 43 71 2f 62 69 50 54 pJz11sS6/vmsJWXMY1VkJqMF/Cq/biPT
15af80 2b 7a 79 52 47 50 4d 55 7a 58 6e 30 6b 43 41 77 45 41 41 61 4e 43 4d 45 41 77 48 51 59 44 56 52 +zyRGPMUzXn0kCAwEAAaNCMEAwHQYDVR
15afa0 30 4f 42 42 59 45 46 44 56 4b 0a 39 55 32 76 50 39 65 43 4f 4b 79 72 63 57 55 58 64 59 79 64 56 0OBBYEFDVK.9U2vP9eCOKyrcWUXdYydV
15afc0 5a 50 6d 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 50 42 67 4e 56 48 ZPmMA4GA1UdDwEB/wQEAwIBBjAPBgNVH
15afe0 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 30 47 43 53 71 47 0a 53 49 62 33 44 51 45 42 RMBAf8EBTADAQH/MA0GCSqG.SIb3DQEB
15b000 42 51 55 41 41 34 49 42 41 51 43 6f 68 2b 6e 73 2b 45 42 6e 58 63 50 42 5a 73 64 41 53 35 66 38 BQUAA4IBAQCoh+ns+EBnXcPBZsdAS5f8
15b020 68 78 4f 51 57 73 54 76 6f 4d 70 66 69 37 65 6e 74 2f 48 57 74 57 53 33 69 72 4f 34 47 38 7a 61 hxOQWsTvoMpfi7ent/HWtWS3irO4G8za
15b040 2b 36 78 6d 0a 69 45 48 4f 36 50 7a 6b 32 78 36 49 70 75 30 6e 55 42 73 43 4d 43 52 47 65 66 34 +6xm.iEHO6Pzk2x6Ipu0nUBsCMCRGef4
15b060 45 68 33 43 58 51 48 50 52 77 4d 46 58 47 5a 70 70 70 53 65 5a 71 35 31 69 68 50 5a 52 77 53 7a Eh3CXQHPRwMFXGZpppSeZq51ihPZRwSz
15b080 4a 49 78 58 59 4b 4c 65 72 4a 52 4f 31 52 75 47 47 0a 41 76 38 6d 6a 4d 53 49 6b 68 31 57 2f 68 JIxXYKLerJRO1RuGG.Av8mjMSIkh1W/h
15b0a0 6c 6e 38 6c 58 6b 67 4b 4e 72 6e 4b 74 33 34 56 46 78 44 53 44 62 45 4a 72 62 76 58 5a 35 42 33 ln8lXkgKNrnKt34VFxDSDbEJrbvXZ5B3
15b0c0 65 5a 4b 4b 32 61 58 74 71 78 54 30 51 73 4e 59 36 6c 6c 73 66 39 67 2f 42 59 78 6e 6e 57 0a 6d eZKK2aXtqxT0QsNY6llsf9g/BYxnnW.m
15b0e0 48 79 6f 6a 66 36 47 50 67 63 57 6b 75 46 37 35 78 33 73 4d 33 5a 2b 51 69 35 4b 68 66 6d 52 69 Hyojf6GPgcWkuF75x3sM3Z+Qi5KhfmRi
15b100 57 69 45 41 34 47 6c 6d 35 71 2b 34 7a 66 46 56 4b 74 57 4f 78 67 74 51 61 51 4d 2b 45 4c 62 6d WiEA4Glm5q+4zfFVKtWOxgtQaQM+ELbm
15b120 61 44 67 63 6d 2b 37 58 65 45 57 0a 54 31 4d 4b 5a 50 6c 4f 39 4c 39 4f 56 4c 31 34 62 49 6a 71 aDgcm+7XeEW.T1MKZPlO9L9OVL14bIjq
15b140 76 35 77 54 4a 4d 4a 77 61 61 4a 2f 44 38 67 38 72 51 6a 4a 73 4a 68 41 6f 79 72 6e 69 49 50 74 v5wTJMJwaaJ/D8g8rQjJsJhAoyrniIPt
15b160 64 34 39 30 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a d490.-----END.CERTIFICATE-----..
15b180 4f 49 53 54 45 20 57 49 53 65 4b 65 79 20 47 6c 6f 62 61 6c 20 52 6f 6f 74 20 47 41 20 43 41 0a OISTE.WISeKey.Global.Root.GA.CA.
15b1a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a ===============================.
15b1c0 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 -----BEGIN.CERTIFICATE-----.MIID
15b1e0 38 54 43 43 41 74 6d 67 41 77 49 42 41 67 49 51 51 54 31 79 78 2f 52 72 48 34 46 44 66 66 48 53 8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHS
15b200 4b 46 54 66 6d 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 69 6a 45 4c KFTfmjANBgkqhkiG9w0BAQUFADCBijEL
15b220 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 51 30 67 78 45 44 41 4f 42 67 4e 56 42 41 6f 54 42 31 64 MAkGA1UE.BhMCQ0gxEDAOBgNVBAoTB1d
15b240 4a 55 32 56 4c 5a 58 6b 78 47 7a 41 5a 42 67 4e 56 42 41 73 54 45 6b 4e 76 63 48 6c 79 61 57 64 JU2VLZXkxGzAZBgNVBAsTEkNvcHlyaWd
15b260 6f 64 43 41 6f 59 79 6b 67 4d 6a 41 77 4e 54 45 69 4d 43 41 47 0a 41 31 55 45 43 78 4d 5a 54 30 odCAoYykgMjAwNTEiMCAG.A1UECxMZT0
15b280 6c 54 56 45 55 67 52 6d 39 31 62 6d 52 68 64 47 6c 76 62 69 42 46 62 6d 52 76 63 6e 4e 6c 5a 44 lTVEUgRm91bmRhdGlvbiBFbmRvcnNlZD
15b2a0 45 6f 4d 43 59 47 41 31 55 45 41 78 4d 66 54 30 6c 54 56 45 55 67 56 30 6c 54 5a 55 74 6c 65 53 EoMCYGA1UEAxMfT0lTVEUgV0lTZUtleS
15b2c0 42 48 0a 62 47 39 69 59 57 77 67 55 6d 39 76 64 43 42 48 51 53 42 44 51 54 41 65 46 77 30 77 4e BH.bG9iYWwgUm9vdCBHQSBDQTAeFw0wN
15b2e0 54 45 79 4d 54 45 78 4e 6a 41 7a 4e 44 52 61 46 77 30 7a 4e 7a 45 79 4d 54 45 78 4e 6a 41 35 4e TEyMTExNjAzNDRaFw0zNzEyMTExNjA5N
15b300 54 46 61 4d 49 47 4b 4d 51 73 77 43 51 59 44 0a 56 51 51 47 45 77 4a 44 53 44 45 51 4d 41 34 47 TFaMIGKMQswCQYD.VQQGEwJDSDEQMA4G
15b320 41 31 55 45 43 68 4d 48 56 30 6c 54 5a 55 74 6c 65 54 45 62 4d 42 6b 47 41 31 55 45 43 78 4d 53 A1UEChMHV0lTZUtleTEbMBkGA1UECxMS
15b340 51 32 39 77 65 58 4a 70 5a 32 68 30 49 43 68 6a 4b 53 41 79 4d 44 41 31 4d 53 49 77 0a 49 41 59 Q29weXJpZ2h0IChjKSAyMDA1MSIw.IAY
15b360 44 56 51 51 4c 45 78 6c 50 53 56 4e 55 52 53 42 47 62 33 56 75 5a 47 46 30 61 57 39 75 49 45 56 DVQQLExlPSVNURSBGb3VuZGF0aW9uIEV
15b380 75 5a 47 39 79 63 32 56 6b 4d 53 67 77 4a 67 59 44 56 51 51 44 45 78 39 50 53 56 4e 55 52 53 42 uZG9yc2VkMSgwJgYDVQQDEx9PSVNURSB
15b3a0 58 53 56 4e 6c 53 32 56 35 0a 49 45 64 73 62 32 4a 68 62 43 42 53 62 32 39 30 49 45 64 42 49 45 XSVNlS2V5.IEdsb2JhbCBSb290IEdBIE
15b3c0 4e 42 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 NBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ
15b3e0 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 79 30 2b 7a 41 4a 73 39 0a 4e 74 33 35 30 55 6c 71 61 8AMIIBCgKCAQEAy0+zAJs9.Nt350Ulqa
15b400 78 42 4a 48 2b 7a 59 4b 37 4c 47 2b 44 4b 42 4b 55 4f 56 54 4a 6f 5a 49 79 45 56 52 64 37 6a 79 xBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jy
15b420 42 78 52 56 56 75 75 6b 2b 67 33 2f 79 74 72 36 64 54 71 76 69 72 64 71 46 45 72 31 32 62 44 59 BxRVVuuk+g3/ytr6dTqvirdqFEr12bDY
15b440 56 78 67 0a 41 73 6a 31 7a 6e 4a 37 4f 37 6a 79 54 6d 55 49 6d 73 32 6b 61 68 6e 42 41 62 74 7a Vxg.Asj1znJ7O7jyTmUIms2kahnBAbtz
15b460 70 74 66 32 77 39 33 4e 76 4b 53 4c 74 5a 6c 68 75 41 47 69 6f 39 52 4e 31 41 55 39 6b 61 33 34 ptf2w93NvKSLtZlhuAGio9RN1AU9ka34
15b480 74 41 68 78 5a 4b 39 77 38 52 78 72 66 76 62 44 0a 64 35 30 6b 63 33 76 6b 44 49 7a 68 32 54 62 tAhxZK9w8RxrfvbD.d50kc3vkDIzh2Tb
15b4a0 68 6d 59 73 46 6d 51 76 74 52 54 45 4a 79 73 49 41 32 2f 64 79 6f 4a 61 71 6c 59 66 51 6a 73 65 hmYsFmQvtRTEJysIA2/dyoJaqlYfQjse
15b4c0 32 59 58 4d 4e 64 6d 61 4d 33 42 75 30 59 36 4b 66 66 35 4d 54 4d 50 47 68 4a 39 76 5a 0a 2f 79 2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ./y
15b4e0 78 56 69 4a 47 67 34 45 38 48 73 43 68 57 6a 42 67 62 6c 30 53 4f 69 64 33 67 46 32 37 6e 4b 75 xViJGg4E8HsChWjBgbl0SOid3gF27nKu
15b500 2b 50 4f 51 6f 78 68 49 4c 59 51 42 52 4a 4c 6e 70 42 35 4b 66 2b 34 32 54 4d 77 56 6c 78 53 79 +POQoxhILYQBRJLnpB5Kf+42TMwVlxSy
15b520 77 68 70 31 74 39 34 42 33 52 0a 4c 6f 47 62 77 39 68 6f 39 37 32 57 47 36 78 77 73 52 59 55 43 whp1t94B3R.LoGbw9ho972WG6xwsRYUC
15b540 39 74 67 75 53 59 42 42 51 49 44 41 51 41 42 6f 31 45 77 54 7a 41 4c 42 67 4e 56 48 51 38 45 42 9tguSYBBQIDAQABo1EwTzALBgNVHQ8EB
15b560 41 4d 43 41 59 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 0a 41 77 45 42 2f 7a 41 64 AMCAYYwDwYDVR0TAQH/BAUw.AwEB/zAd
15b580 42 67 4e 56 48 51 34 45 46 67 51 55 73 77 4e 2b 72 6a 61 38 73 48 6e 52 33 4a 51 6d 74 68 47 2b BgNVHQ4EFgQUswN+rja8sHnR3JQmthG+
15b5a0 49 62 4a 70 68 70 51 77 45 41 59 4a 4b 77 59 42 42 41 47 43 4e 78 55 42 42 41 4d 43 41 51 41 77 IbJphpQwEAYJKwYBBAGCNxUBBAMCAQAw
15b5c0 44 51 59 4a 0a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 45 75 68 2f 77 75 DQYJ.KoZIhvcNAQEFBQADggEBAEuh/wu
15b5e0 48 62 72 50 35 77 55 4f 78 53 50 4d 6f 77 42 30 75 79 51 6c 42 2b 70 51 41 48 4b 53 6b 71 30 6c HbrP5wUOxSPMowB0uyQlB+pQAHKSkq0l
15b600 50 6a 7a 30 65 37 30 31 76 76 62 79 6b 39 76 49 6d 0a 4d 4d 6b 51 79 68 32 49 2b 33 51 5a 48 34 Pjz0e701vvbyk9vIm.MMkQyh2I+3QZH4
15b620 56 46 76 62 42 73 55 66 6b 32 66 74 76 31 54 44 49 36 51 55 39 62 52 38 2f 6f 43 79 32 32 78 42 VFvbBsUfk2ftv1TDI6QU9bR8/oCy22xB
15b640 6d 64 64 4d 56 48 78 6a 74 71 44 36 77 55 32 7a 7a 30 63 35 79 70 42 64 38 41 33 48 52 34 0a 2b mddMVHxjtqD6wU2zz0c5ypBd8A3HR4.+
15b660 76 67 31 59 46 6b 43 45 78 68 38 76 50 74 4e 73 43 42 74 51 37 74 67 4d 48 70 6e 4d 31 7a 46 6d vg1YFkCExh8vPtNsCBtQ7tgMHpnM1zFm
15b680 64 48 34 4c 54 6c 53 63 2f 75 4d 71 70 63 6c 58 48 4c 5a 43 42 36 72 54 6a 7a 6a 67 54 47 66 41 dH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA
15b6a0 36 62 37 77 50 34 70 69 46 58 61 0a 68 4e 56 51 41 37 62 69 68 4b 4f 6d 4e 71 6f 52 4f 67 48 68 6b7wP4piFXa.hNVQA7bihKOmNqoROgHh
15b6c0 47 45 76 57 52 47 69 7a 50 66 6c 54 64 49 53 7a 52 70 46 47 6c 67 43 33 67 43 79 32 34 65 4d 51 GEvWRGizPflTdISzRpFGlgC3gCy24eMQ
15b6e0 34 74 75 69 35 79 69 50 41 5a 5a 69 46 6a 34 41 34 78 79 6c 4e 6f 45 59 0a 6f 6b 78 53 64 73 41 4tui5yiPAZZiFj4A4xylNoEY.okxSdsA
15b700 52 6f 32 37 6d 48 62 72 6a 57 72 34 32 55 38 55 2b 64 59 2b 47 61 53 6c 59 55 37 57 63 75 32 2b Ro27mHbrjWr42U8U+dY+GaSlYU7Wcu2+
15b720 66 58 4d 55 59 37 4e 30 76 34 5a 6a 4a 2f 4c 37 66 43 67 30 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 fXMUY7N0v4ZjJ/L7fCg0=.-----END.C
15b740 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 4d 69 63 72 6f 73 65 63 20 65 2d 53 7a 69 67 ERTIFICATE-----..Microsec.e-Szig
15b760 6e 6f 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d no.Root.CA.=====================
15b780 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d ====.-----BEGIN.CERTIFICATE-----
15b7a0 0a 4d 49 49 48 71 44 43 43 42 70 43 67 41 77 49 42 41 67 49 52 41 4d 79 34 35 37 39 4f 4b 52 72 .MIIHqDCCBpCgAwIBAgIRAMy4579OKRr
15b7c0 39 6f 74 78 6d 70 52 77 73 44 78 45 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 9otxmpRwsDxEwDQYJKoZIhvcNAQEFBQA
15b7e0 77 63 6a 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 53 46 55 78 45 54 41 50 42 67 4e 56 42 41 wcjELMAkGA1UE.BhMCSFUxETAPBgNVBA
15b800 63 54 43 45 4a 31 5a 47 46 77 5a 58 4e 30 4d 52 59 77 46 41 59 44 56 51 51 4b 45 77 31 4e 61 57 cTCEJ1ZGFwZXN0MRYwFAYDVQQKEw1NaW
15b820 4e 79 62 33 4e 6c 59 79 42 4d 64 47 51 75 4d 52 51 77 45 67 59 44 56 51 51 4c 0a 45 77 74 6c 4c Nyb3NlYyBMdGQuMRQwEgYDVQQL.EwtlL
15b840 56 4e 36 61 57 64 75 62 79 42 44 51 54 45 69 4d 43 41 47 41 31 55 45 41 78 4d 5a 54 57 6c 6a 63 VN6aWdubyBDQTEiMCAGA1UEAxMZTWljc
15b860 6d 39 7a 5a 57 4d 67 5a 53 31 54 65 6d 6c 6e 62 6d 38 67 55 6d 39 76 64 43 42 44 51 54 41 65 46 m9zZWMgZS1Temlnbm8gUm9vdCBDQTAeF
15b880 77 30 77 4e 54 41 30 0a 4d 44 59 78 4d 6a 49 34 4e 44 52 61 46 77 30 78 4e 7a 41 30 4d 44 59 78 w0wNTA0.MDYxMjI4NDRaFw0xNzA0MDYx
15b8a0 4d 6a 49 34 4e 44 52 61 4d 48 49 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 68 56 4d 52 45 77 MjI4NDRaMHIxCzAJBgNVBAYTAkhVMREw
15b8c0 44 77 59 44 56 51 51 48 45 77 68 43 64 57 52 68 63 47 56 7a 0a 64 44 45 57 4d 42 51 47 41 31 55 DwYDVQQHEwhCdWRhcGVz.dDEWMBQGA1U
15b8e0 45 43 68 4d 4e 54 57 6c 6a 63 6d 39 7a 5a 57 4d 67 54 48 52 6b 4c 6a 45 55 4d 42 49 47 41 31 55 EChMNTWljcm9zZWMgTHRkLjEUMBIGA1U
15b900 45 43 78 4d 4c 5a 53 31 54 65 6d 6c 6e 62 6d 38 67 51 30 45 78 49 6a 41 67 42 67 4e 56 42 41 4d ECxMLZS1Temlnbm8gQ0ExIjAgBgNVBAM
15b920 54 0a 47 55 31 70 59 33 4a 76 63 32 56 6a 49 47 55 74 55 33 70 70 5a 32 35 76 49 46 4a 76 62 33 T.GU1pY3Jvc2VjIGUtU3ppZ25vIFJvb3
15b940 51 67 51 30 45 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4
15b960 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 0a 41 51 44 74 79 41 44 56 67 58 76 4e 4f 41 42 48 7a IBDwAwggEKAoIB.AQDtyADVgXvNOABHz
15b980 4e 75 45 77 53 46 70 4c 48 53 51 44 43 48 5a 55 34 66 74 50 6b 4e 45 55 36 2b 72 2b 49 43 62 50 NuEwSFpLHSQDCHZU4ftPkNEU6+r+ICbP
15b9a0 48 69 4e 31 49 32 75 75 4f 2f 54 45 64 79 42 35 73 38 37 6c 6f 7a 57 62 78 58 47 0a 64 33 36 68 HiN1I2uuO/TEdyB5s87lozWbxXG.d36h
15b9c0 4c 2b 42 66 6b 72 59 6e 31 33 61 61 48 55 4d 38 36 74 6e 73 4c 2b 34 35 38 32 70 6e 53 34 75 43 L+BfkrYn13aaHUM86tnsL+4582pnS4uC
15b9e0 7a 79 4c 34 5a 56 58 2b 4c 4d 73 76 66 55 68 36 50 58 58 35 71 71 41 6e 75 33 6a 43 42 73 70 52 zyL4ZVX+LMsvfUh6PXX5qqAnu3jCBspR
15ba00 77 6e 35 6d 53 36 2f 4e 0a 6f 71 64 4e 41 6f 49 2f 67 71 79 46 78 75 45 50 6b 45 65 5a 6c 41 70 wn5mS6/N.oqdNAoI/gqyFxuEPkEeZlAp
15ba20 78 63 70 4d 71 79 61 62 41 76 6a 78 57 54 48 4f 53 4a 2f 46 72 74 66 58 39 2f 44 41 46 59 4a 4c xcpMqyabAvjxWTHOSJ/FrtfX9/DAFYJL
15ba40 47 36 35 5a 2b 41 5a 48 43 61 62 45 65 48 58 74 54 52 62 6a 63 0a 51 52 2f 4a 69 33 48 57 56 42 G65Z+AZHCabEeHXtTRbjc.QR/Ji3HWVB
15ba60 54 6a 69 31 52 34 50 37 37 30 59 6a 74 62 39 61 50 73 31 5a 4a 30 34 6e 51 77 37 77 48 62 34 64 Tji1R4P770Yjtb9aPs1ZJ04nQw7wHb4d
15ba80 53 72 6d 5a 73 71 61 2f 69 39 70 68 79 47 49 30 4a 66 37 45 6e 65 6d 6f 74 62 39 48 49 36 51 4d SrmZsqa/i9phyGI0Jf7Enemotb9HI6QM
15baa0 56 4a 0a 50 71 57 2b 6a 71 70 78 36 32 7a 36 39 52 72 6b 61 76 31 37 66 56 56 41 37 31 68 75 35 VJ.PqW+jqpx62z69Rrkav17fVVA71hu5
15bac0 74 6e 56 76 43 53 72 77 65 2b 33 41 67 4d 42 41 41 47 6a 67 67 51 33 4d 49 49 45 4d 7a 42 6e 42 tnVvCSrwe+3AgMBAAGjggQ3MIIEMzBnB
15bae0 67 67 72 42 67 45 46 42 51 63 42 41 51 52 62 0a 4d 46 6b 77 4b 41 59 49 4b 77 59 42 42 51 55 48 ggrBgEFBQcBAQRb.MFkwKAYIKwYBBQUH
15bb00 4d 41 47 47 48 47 68 30 64 48 42 7a 4f 69 38 76 63 6d 4e 68 4c 6d 55 74 63 33 70 70 5a 32 35 76 MAGGHGh0dHBzOi8vcmNhLmUtc3ppZ25v
15bb20 4c 6d 68 31 4c 32 39 6a 63 33 41 77 4c 51 59 49 4b 77 59 42 42 51 55 48 4d 41 4b 47 0a 49 57 68 Lmh1L29jc3AwLQYIKwYBBQUHMAKG.IWh
15bb40 30 64 48 41 36 4c 79 39 33 64 33 63 75 5a 53 31 7a 65 6d 6c 6e 62 6d 38 75 61 48 55 76 55 6d 39 0dHA6Ly93d3cuZS1zemlnbm8uaHUvUm9
15bb60 76 64 45 4e 42 4c 6d 4e 79 64 44 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 vdENBLmNydDAPBgNVHRMBAf8EBTADAQH
15bb80 2f 4d 49 49 42 63 77 59 44 0a 56 52 30 67 42 49 49 42 61 6a 43 43 41 57 59 77 67 67 46 69 42 67 /MIIBcwYD.VR0gBIIBajCCAWYwggFiBg
15bba0 77 72 42 67 45 45 41 59 47 6f 47 41 49 42 41 51 45 77 67 67 46 51 4d 43 67 47 43 43 73 47 41 51 wrBgEEAYGoGAIBAQEwggFQMCgGCCsGAQ
15bbc0 55 46 42 77 49 42 46 68 78 6f 64 48 52 77 4f 69 38 76 64 33 64 33 0a 4c 6d 55 74 63 33 70 70 5a UFBwIBFhxodHRwOi8vd3d3.LmUtc3ppZ
15bbe0 32 35 76 4c 6d 68 31 4c 31 4e 61 55 31 6f 76 4d 49 49 42 49 67 59 49 4b 77 59 42 42 51 55 48 41 25vLmh1L1NaU1ovMIIBIgYIKwYBBQUHA
15bc00 67 49 77 67 67 45 55 48 6f 49 42 45 41 42 42 41 43 41 41 64 41 42 68 41 47 34 41 2b 67 42 7a 41 gIwggEUHoIBEABBACAAdABhAG4A+gBzA
15bc20 4f 30 41 0a 64 41 42 32 41 4f 45 41 62 67 42 35 41 43 41 41 36 51 42 79 41 48 51 41 5a 51 42 73 O0A.dAB2AOEAbgB5ACAA6QByAHQAZQBs
15bc40 41 47 30 41 5a 51 42 36 41 4f 6b 41 63 77 44 70 41 47 67 41 5a 51 42 36 41 43 41 41 36 51 42 7a AG0AZQB6AOkAcwDpAGgAZQB6ACAA6QBz
15bc60 41 43 41 41 5a 51 42 73 41 47 59 41 62 77 42 6e 0a 41 47 45 41 5a 41 44 68 41 48 4d 41 34 51 42 ACAAZQBsAGYAbwBn.AGEAZADhAHMA4QB
15bc80 6f 41 47 38 41 65 67 41 67 41 47 45 41 49 41 42 54 41 48 6f 41 62 77 42 73 41 47 63 41 34 51 42 oAG8AegAgAGEAIABTAHoAbwBsAGcA4QB
15bca0 73 41 48 51 41 59 51 42 30 41 50 4d 41 49 41 42 54 41 48 6f 41 62 77 42 73 41 47 63 41 0a 34 51 sAHQAYQB0APMAIABTAHoAbwBsAGcA.4Q
15bcc0 42 73 41 48 51 41 59 51 42 30 41 4f 45 41 63 77 42 70 41 43 41 41 55 77 42 36 41 47 45 41 59 67 BsAHQAYQB0AOEAcwBpACAAUwB6AGEAYg
15bce0 44 68 41 47 77 41 65 51 42 36 41 47 45 41 64 41 42 68 41 43 41 41 63 77 42 36 41 47 55 41 63 67 DhAGwAeQB6AGEAdABhACAAcwB6AGUAcg
15bd00 42 70 41 47 34 41 64 41 41 67 0a 41 47 73 41 5a 51 42 73 41 47 77 41 49 41 42 6c 41 47 77 41 61 BpAG4AdAAg.AGsAZQBsAGwAIABlAGwAa
15bd20 67 44 68 41 48 49 41 62 67 42 70 41 44 6f 41 49 41 42 6f 41 48 51 41 64 41 42 77 41 44 6f 41 4c gDhAHIAbgBpADoAIABoAHQAdABwADoAL
15bd40 77 41 76 41 48 63 41 64 77 42 33 41 43 34 41 5a 51 41 74 41 48 4d 41 0a 65 67 42 70 41 47 63 41 wAvAHcAdwB3AC4AZQAtAHMA.egBpAGcA
15bd60 62 67 42 76 41 43 34 41 61 41 42 31 41 43 38 41 55 77 42 61 41 46 4d 41 57 67 41 76 4d 49 48 49 bgBvAC4AaAB1AC8AUwBaAFMAWgAvMIHI
15bd80 42 67 4e 56 48 52 38 45 67 63 41 77 67 62 30 77 67 62 71 67 67 62 65 67 67 62 53 47 49 57 68 30 BgNVHR8EgcAwgb0wgbqggbeggbSGIWh0
15bda0 64 48 41 36 0a 4c 79 39 33 64 33 63 75 5a 53 31 7a 65 6d 6c 6e 62 6d 38 75 61 48 55 76 55 6d 39 dHA6.Ly93d3cuZS1zemlnbm8uaHUvUm9
15bdc0 76 64 45 4e 42 4c 6d 4e 79 62 49 61 42 6a 6d 78 6b 59 58 41 36 4c 79 39 73 5a 47 46 77 4c 6d 55 vdENBLmNybIaBjmxkYXA6Ly9sZGFwLmU
15bde0 74 63 33 70 70 5a 32 35 76 4c 6d 68 31 4c 30 4e 4f 0a 50 55 31 70 59 33 4a 76 63 32 56 6a 4a 54 tc3ppZ25vLmh1L0NO.PU1pY3Jvc2VjJT
15be00 49 77 5a 53 31 54 65 6d 6c 6e 62 6d 38 6c 4d 6a 42 53 62 32 39 30 4a 54 49 77 51 30 45 73 54 31 IwZS1Temlnbm8lMjBSb290JTIwQ0EsT1
15be20 55 39 5a 53 31 54 65 6d 6c 6e 62 6d 38 6c 4d 6a 42 44 51 53 78 50 50 55 31 70 59 33 4a 76 0a 63 U9ZS1Temlnbm8lMjBDQSxPPU1pY3Jv.c
15be40 32 56 6a 4a 54 49 77 54 48 52 6b 4c 69 78 4d 50 55 4a 31 5a 47 46 77 5a 58 4e 30 4c 45 4d 39 53 2VjJTIwTHRkLixMPUJ1ZGFwZXN0LEM9S
15be60 46 55 2f 59 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 56 53 5a 58 5a 76 59 32 46 30 61 57 39 75 54 FU/Y2VydGlmaWNhdGVSZXZvY2F0aW9uT
15be80 47 6c 7a 64 44 74 69 61 57 35 68 0a 63 6e 6b 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 GlzdDtiaW5h.cnkwDgYDVR0PAQH/BAQD
15bea0 41 67 45 47 4d 49 47 57 42 67 4e 56 48 52 45 45 67 59 34 77 67 59 75 42 45 47 6c 75 5a 6d 39 41 AgEGMIGWBgNVHREEgY4wgYuBEGluZm9A
15bec0 5a 53 31 7a 65 6d 6c 6e 62 6d 38 75 61 48 57 6b 64 7a 42 31 4d 53 4d 77 0a 49 51 59 44 56 51 51 ZS1zemlnbm8uaHWkdzB1MSMw.IQYDVQQ
15bee0 44 44 42 70 4e 61 57 4e 79 62 33 4e 6c 59 79 42 6c 4c 56 4e 36 61 57 64 75 77 37 4d 67 55 6d 39 DDBpNaWNyb3NlYyBlLVN6aWduw7MgUm9
15bf00 76 64 43 42 44 51 54 45 57 4d 42 51 47 41 31 55 45 43 77 77 4e 5a 53 31 54 65 6d 6c 6e 62 73 4f vdCBDQTEWMBQGA1UECwwNZS1TemlnbsO
15bf20 7a 49 45 68 54 0a 57 6a 45 57 4d 42 51 47 41 31 55 45 43 68 4d 4e 54 57 6c 6a 63 6d 39 7a 5a 57 zIEhT.WjEWMBQGA1UEChMNTWljcm9zZW
15bf40 4d 67 53 32 5a 30 4c 6a 45 52 4d 41 38 47 41 31 55 45 42 78 4d 49 51 6e 56 6b 59 58 42 6c 63 33 MgS2Z0LjERMA8GA1UEBxMIQnVkYXBlc3
15bf60 51 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 68 56 0a 4d 49 47 73 42 67 4e 56 48 53 4d 45 67 QxCzAJBgNVBAYTAkhV.MIGsBgNVHSMEg
15bf80 61 51 77 67 61 47 41 46 4d 65 67 53 58 55 57 59 59 54 62 4d 55 75 45 30 76 45 33 51 4a 44 76 54 aQwgaGAFMegSXUWYYTbMUuE0vE3QJDvT
15bfa0 74 7a 33 6f 58 61 6b 64 44 42 79 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 49 56 54 45 52 0a tz3oXakdDByMQswCQYDVQQGEwJIVTER.
15bfc0 4d 41 38 47 41 31 55 45 42 78 4d 49 51 6e 56 6b 59 58 42 6c 63 33 51 78 46 6a 41 55 42 67 4e 56 MA8GA1UEBxMIQnVkYXBlc3QxFjAUBgNV
15bfe0 42 41 6f 54 44 55 31 70 59 33 4a 76 63 32 56 6a 49 45 78 30 5a 43 34 78 46 44 41 53 42 67 4e 56 BAoTDU1pY3Jvc2VjIEx0ZC4xFDASBgNV
15c000 42 41 73 54 43 32 55 74 55 33 70 70 0a 5a 32 35 76 49 45 4e 42 4d 53 49 77 49 41 59 44 56 51 51 BAsTC2UtU3pp.Z25vIENBMSIwIAYDVQQ
15c020 44 45 78 6c 4e 61 57 4e 79 62 33 4e 6c 59 79 42 6c 4c 56 4e 36 61 57 64 75 62 79 42 53 62 32 39 DExlNaWNyb3NlYyBlLVN6aWdubyBSb29
15c040 30 49 45 4e 42 67 68 45 41 7a 4c 6a 6e 76 30 34 70 47 76 32 69 33 47 61 6c 0a 48 43 77 50 45 54 0IENBghEAzLjnv04pGv2i3Gal.HCwPET
15c060 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 78 36 42 4a 64 52 5a 68 68 4e 73 78 53 34 54 53 38 54 AdBgNVHQ4EFgQUx6BJdRZhhNsxS4TS8T
15c080 64 41 6b 4f 39 4f 33 50 63 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 dAkO9O3PcwDQYJKoZIhvcNAQEFBQADgg
15c0a0 45 42 41 4e 4d 54 0a 6e 47 5a 6a 57 53 37 4b 58 48 41 4d 2f 49 4f 38 56 62 48 30 6a 67 64 73 5a EBANMT.nGZjWS7KXHAM/IO8VbH0jgdsZ
15c0c0 69 66 4f 77 54 73 67 71 52 79 37 52 6c 52 77 37 6c 72 4d 6f 48 66 71 61 45 51 6e 36 2f 49 70 33 ifOwTsgqRy7RlRw7lrMoHfqaEQn6/Ip3
15c0e0 58 65 70 31 66 76 6a 31 4b 63 45 78 4a 57 34 43 2b 46 45 0a 61 47 41 48 51 7a 41 78 51 6d 48 6c Xep1fvj1KcExJW4C+FE.aGAHQzAxQmHl
15c100 37 74 6e 6c 4a 4e 55 62 33 2b 46 4b 47 36 71 66 78 31 2f 34 65 68 48 71 45 35 4d 41 79 6f 70 59 7tnlJNUb3+FKG6qfx1/4ehHqE5MAyopY
15c120 73 65 37 74 44 6b 32 30 31 36 67 32 4a 6e 7a 67 4f 73 48 56 56 34 4c 78 64 62 62 39 69 56 2f 61 se7tDk2016g2JnzgOsHVV4Lxdbb9iV/a
15c140 0a 38 36 67 34 6e 7a 55 47 43 4d 34 69 6c 62 37 4e 31 66 79 2b 57 39 35 35 61 39 78 36 71 57 56 .86g4nzUGCM4ilb7N1fy+W955a9x6qWV
15c160 6d 76 72 45 6c 57 6c 2f 74 66 74 4f 73 52 6d 31 4d 39 44 4b 48 74 43 41 45 34 47 78 34 73 48 66 mvrElWl/tftOsRm1M9DKHtCAE4Gx4sHf
15c180 52 68 55 5a 4c 70 68 4b 33 64 65 68 4b 0a 79 56 5a 73 31 35 4b 72 6e 66 56 4a 4f 4e 4a 50 55 2b RhUZLphK3dehK.yVZs15KrnfVJONJPU+
15c1a0 4e 56 6b 42 48 62 6d 4a 62 47 53 66 49 2b 39 4a 38 62 34 50 65 49 33 43 56 69 6d 55 54 59 63 37 NVkBHbmJbGSfI+9J8b4PeI3CVimUTYc7
15c1c0 38 2f 4d 50 4d 4d 4e 7a 37 55 77 69 69 41 63 37 45 42 74 35 31 61 6c 68 51 42 0a 53 36 6b 52 6e 8/MPMMNz7UwiiAc7EBt51alhQB.S6kRn
15c1e0 53 6c 71 4c 74 42 64 67 63 44 50 73 69 42 44 78 77 50 67 4e 30 35 64 43 74 78 5a 49 43 55 3d 0a SlqLtBdgcDPsiBDxwPgN05dCtxZICU=.
15c200 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 65 72 74 69 -----END.CERTIFICATE-----..Certi
15c220 67 6e 61 0a 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 gna.========.-----BEGIN.CERTIFIC
15c240 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 71 44 43 43 41 70 43 67 41 77 49 42 41 67 49 4a 41 50 37 ATE-----.MIIDqDCCApCgAwIBAgIJAP7
15c260 63 34 77 45 50 79 55 6a 2f 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 4d 44 51 c4wEPyUj/MA0GCSqGSIb3DQEBBQUAMDQ
15c280 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 5a 53 4d 52 49 77 0a 45 41 59 44 56 51 51 4b 44 41 xCzAJBgNVBAYTAkZSMRIw.EAYDVQQKDA
15c2a0 6c 45 61 47 6c 74 65 57 39 30 61 58 4d 78 45 54 41 50 42 67 4e 56 42 41 4d 4d 43 45 4e 6c 63 6e lEaGlteW90aXMxETAPBgNVBAMMCENlcn
15c2c0 52 70 5a 32 35 68 4d 42 34 58 44 54 41 33 4d 44 59 79 4f 54 45 31 4d 54 4d 77 4e 56 6f 58 44 54 RpZ25hMB4XDTA3MDYyOTE1MTMwNVoXDT
15c2e0 49 33 0a 4d 44 59 79 4f 54 45 31 4d 54 4d 77 4e 56 6f 77 4e 44 45 4c 4d 41 6b 47 41 31 55 45 42 I3.MDYyOTE1MTMwNVowNDELMAkGA1UEB
15c300 68 4d 43 52 6c 49 78 45 6a 41 51 42 67 4e 56 42 41 6f 4d 43 55 52 6f 61 57 31 35 62 33 52 70 63 hMCRlIxEjAQBgNVBAoMCURoaW15b3Rpc
15c320 7a 45 52 4d 41 38 47 41 31 55 45 41 77 77 49 0a 51 32 56 79 64 47 6c 6e 62 6d 45 77 67 67 45 69 zERMA8GA1UEAwwI.Q2VydGlnbmEwggEi
15c340 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
15c360 41 6f 49 42 41 51 44 49 61 50 48 4a 31 74 61 7a 4e 48 55 6d 67 68 37 73 74 4c 37 71 0a 58 4f 45 AoIBAQDIaPHJ1tazNHUmgh7stL7q.XOE
15c380 6d 37 52 46 48 59 65 47 69 66 42 5a 34 51 43 48 6b 59 4a 35 61 79 47 50 68 78 4c 47 57 6b 76 38 m7RFHYeGifBZ4QCHkYJ5ayGPhxLGWkv8
15c3a0 59 62 57 6b 6a 34 53 74 69 39 39 33 69 4e 69 2b 52 42 37 6c 49 7a 77 37 73 65 62 59 73 35 7a 52 YbWkj4Sti993iNi+RB7lIzw7sebYs5zR
15c3c0 4c 63 41 67 6c 6f 7a 79 48 0a 47 78 6e 79 67 51 63 50 4f 4a 41 5a 30 78 48 2b 68 72 54 79 30 56 LcAglozyH.GxnygQcPOJAZ0xH+hrTy0V
15c3e0 34 65 48 70 62 4e 67 47 7a 4f 4f 7a 47 54 74 76 4b 67 30 4b 6d 56 45 6e 32 6c 6d 73 78 72 79 49 4eHpbNgGzOOzGTtvKg0KmVEn2lmsxryI
15c400 52 57 69 6a 4f 70 35 79 49 56 55 78 62 77 7a 42 66 73 56 31 2f 70 0a 6f 67 71 59 43 64 37 6a 58 RWijOp5yIVUxbwzBfsV1/p.ogqYCd7jX
15c420 35 78 76 33 45 6a 6a 68 51 73 56 57 71 61 36 6e 36 78 49 34 77 6d 79 39 2f 51 79 33 6c 34 30 76 5xv3EjjhQsVWqa6n6xI4wmy9/Qy3l40v
15c440 68 78 34 58 55 4a 62 7a 67 34 69 6a 30 32 51 31 33 30 79 47 4c 4d 4c 4c 47 71 2f 6a 6a 38 55 45 hx4XUJbzg4ij02Q130yGLMLLGq/jj8UE
15c460 59 6b 67 0a 44 6e 63 55 74 54 32 55 43 49 66 33 4a 52 37 56 73 6d 41 41 37 47 38 71 4b 43 56 75 Ykg.DncUtT2UCIf3JR7VsmAA7G8qKCVu
15c480 4b 6a 34 59 59 78 63 6c 50 7a 35 45 49 42 62 32 4a 73 67 6c 72 67 56 4b 74 4f 64 6a 4c 50 4f 4d Kj4YYxclPz5EIBb2JsglrgVKtOdjLPOM
15c4a0 46 6c 4e 2b 58 50 73 52 47 67 6a 42 52 6d 4b 66 0a 49 72 6a 78 77 6f 31 70 33 50 6f 36 57 41 62 FlN+XPsRGgjBRmKf.Irjxwo1p3Po6WAb
15c4c0 66 41 67 4d 42 41 41 47 6a 67 62 77 77 67 62 6b 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 fAgMBAAGjgbwwgbkwDwYDVR0TAQH/BAU
15c4e0 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 47 75 33 2b 51 54 6d 51 0a 74 43 wAwEB/zAdBgNVHQ4EFgQUGu3+QTmQ.tC
15c500 52 5a 76 67 48 79 55 74 56 46 39 6c 6f 35 33 42 45 77 5a 41 59 44 56 52 30 6a 42 46 30 77 57 34 RZvgHyUtVF9lo53BEwZAYDVR0jBF0wW4
15c520 41 55 47 75 33 2b 51 54 6d 51 74 43 52 5a 76 67 48 79 55 74 56 46 39 6c 6f 35 33 42 47 68 4f 4b AUGu3+QTmQtCRZvgHyUtVF9lo53BGhOK
15c540 51 32 4d 44 51 78 43 7a 41 4a 0a 42 67 4e 56 42 41 59 54 41 6b 5a 53 4d 52 49 77 45 41 59 44 56 Q2MDQxCzAJ.BgNVBAYTAkZSMRIwEAYDV
15c560 51 51 4b 44 41 6c 45 61 47 6c 74 65 57 39 30 61 58 4d 78 45 54 41 50 42 67 4e 56 42 41 4d 4d 43 QQKDAlEaGlteW90aXMxETAPBgNVBAMMC
15c580 45 4e 6c 63 6e 52 70 5a 32 35 68 67 67 6b 41 2f 74 7a 6a 41 51 2f 4a 0a 53 50 38 77 44 67 59 44 ENlcnRpZ25hggkA/tzjAQ/J.SP8wDgYD
15c5a0 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 42 45 47 43 57 43 47 53 41 47 47 2b 45 49 42 VR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIB
15c5c0 41 51 51 45 41 77 49 41 42 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 AQQEAwIABzANBgkqhkiG9w0BAQUFAAOC
15c5e0 41 51 45 41 0a 68 51 4d 65 6b 6e 48 32 51 71 2f 68 6f 32 47 65 36 2f 50 41 44 2f 4b 6c 31 4e 71 AQEA.hQMeknH2Qq/ho2Ge6/PAD/Kl1Nq
15c600 56 35 74 61 2b 61 44 59 39 66 6d 34 66 54 49 72 76 30 51 38 68 62 56 36 6c 55 6d 50 4f 45 76 6a V5ta+aDY9fm4fTIrv0Q8hbV6lUmPOEvj
15c620 76 4b 74 70 76 36 7a 66 2b 45 77 4c 48 79 7a 73 2b 0a 49 6d 76 61 59 53 35 2f 31 48 49 39 33 54 vKtpv6zf+EwLHyzs+.ImvaYS5/1HI93T
15c640 44 68 48 6b 78 41 47 59 77 50 31 35 7a 52 67 7a 42 37 6d 46 6e 63 66 63 61 35 44 43 6c 4d 6f 54 DhHkxAGYwP15zRgzB7mFncfca5DClMoT
15c660 4f 69 36 32 63 36 5a 59 54 54 6c 75 4c 74 64 6b 56 77 6a 37 55 72 33 76 6b 6a 31 6b 6c 75 0a 50 Oi62c6ZYTTluLtdkVwj7Ur3vkj1klu.P
15c680 42 53 31 78 70 38 31 48 6c 44 51 77 59 39 71 63 45 51 43 59 73 75 75 48 57 68 42 70 36 70 58 36 BS1xp81HlDQwY9qcEQCYsuuHWhBp6pX6
15c6a0 46 4f 71 42 39 49 47 39 74 55 55 42 67 75 52 41 33 55 73 62 48 4b 31 59 5a 57 61 44 59 75 35 44 FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5D
15c6c0 65 66 31 33 31 54 4e 33 75 62 59 0a 31 67 6b 49 6c 32 50 6c 77 53 36 77 74 30 51 6d 77 43 62 41 ef131TN3ubY.1gkIl2PlwS6wt0QmwCbA
15c6e0 72 31 55 77 6e 6a 76 56 4e 69 6f 5a 42 50 52 63 48 76 2f 50 4c 4c 66 2f 30 50 32 48 51 42 48 56 r1UwnjvVNioZBPRcHv/PLLf/0P2HQBHV
15c700 45 53 4f 37 53 4d 41 68 71 61 51 6f 4c 66 30 56 2b 4c 42 4f 4b 2f 51 77 0a 57 79 48 38 45 5a 45 ESO7SMAhqaQoLf0V+LBOK/Qw.WyH8EZE
15c720 30 76 6b 48 76 65 35 32 58 64 66 2b 58 6c 63 43 57 57 43 2f 71 75 30 62 58 75 2b 54 5a 4c 67 3d 0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg=
15c740 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 44 65 75 =.-----END.CERTIFICATE-----..Deu
15c760 74 73 63 68 65 20 54 65 6c 65 6b 6f 6d 20 52 6f 6f 74 20 43 41 20 32 0a 3d 3d 3d 3d 3d 3d 3d 3d tsche.Telekom.Root.CA.2.========
15c780 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 ==================.-----BEGIN.CE
15c7a0 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 6e 7a 43 43 41 6f 65 67 41 77 49 42 41 RTIFICATE-----.MIIDnzCCAoegAwIBA
15c7c0 67 49 42 4a 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 78 4d 51 73 77 43 gIBJjANBgkqhkiG9w0BAQUFADBxMQswC
15c7e0 51 59 44 56 51 51 47 45 77 4a 45 52 54 45 63 4d 42 6f 47 41 31 55 45 43 68 4d 54 0a 52 47 56 31 QYDVQQGEwJERTEcMBoGA1UEChMT.RGV1
15c800 64 48 4e 6a 61 47 55 67 56 47 56 73 5a 57 74 76 62 53 42 42 52 7a 45 66 4d 42 30 47 41 31 55 45 dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UE
15c820 43 78 4d 57 56 43 31 55 5a 57 78 6c 55 32 56 6a 49 46 52 79 64 58 4e 30 49 45 4e 6c 62 6e 52 6c CxMWVC1UZWxlU2VjIFRydXN0IENlbnRl
15c840 63 6a 45 6a 4d 43 45 47 0a 41 31 55 45 41 78 4d 61 52 47 56 31 64 48 4e 6a 61 47 55 67 56 47 56 cjEjMCEG.A1UEAxMaRGV1dHNjaGUgVGV
15c860 73 5a 57 74 76 62 53 42 53 62 32 39 30 49 45 4e 42 49 44 49 77 48 68 63 4e 4f 54 6b 77 4e 7a 41 sZWtvbSBSb290IENBIDIwHhcNOTkwNzA
15c880 35 4d 54 49 78 4d 54 41 77 57 68 63 4e 4d 54 6b 77 4e 7a 41 35 0a 4d 6a 4d 31 4f 54 41 77 57 6a 5MTIxMTAwWhcNMTkwNzA5.MjM1OTAwWj
15c8a0 42 78 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 45 52 54 45 63 4d 42 6f 47 41 31 55 45 43 68 BxMQswCQYDVQQGEwJERTEcMBoGA1UECh
15c8c0 4d 54 52 47 56 31 64 48 4e 6a 61 47 55 67 56 47 56 73 5a 57 74 76 62 53 42 42 52 7a 45 66 4d 42 MTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB
15c8e0 30 47 0a 41 31 55 45 43 78 4d 57 56 43 31 55 5a 57 78 6c 55 32 56 6a 49 46 52 79 64 58 4e 30 49 0G.A1UECxMWVC1UZWxlU2VjIFRydXN0I
15c900 45 4e 6c 62 6e 52 6c 63 6a 45 6a 4d 43 45 47 41 31 55 45 41 78 4d 61 52 47 56 31 64 48 4e 6a 61 ENlbnRlcjEjMCEGA1UEAxMaRGV1dHNja
15c920 47 55 67 56 47 56 73 5a 57 74 76 62 53 42 53 0a 62 32 39 30 49 45 4e 42 49 44 49 77 67 67 45 69 GUgVGVsZWtvbSBS.b290IENBIDIwggEi
15c940 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
15c960 41 6f 49 42 41 51 43 72 43 36 4d 31 34 49 73 70 46 4c 45 55 68 61 38 38 45 4f 51 35 0a 62 7a 56 AoIBAQCrC6M14IspFLEUha88EOQ5.bzV
15c980 64 53 71 37 64 36 6d 47 4e 6c 55 6e 30 62 32 53 6a 47 6d 42 6d 70 4b 6c 41 49 6f 54 5a 31 4b 58 dSq7d6mGNlUn0b2SjGmBmpKlAIoTZ1KX
15c9a0 6c 65 4a 4d 4f 61 41 47 74 75 55 31 63 4f 73 37 54 75 4b 68 43 51 4e 2f 50 6f 37 71 43 57 57 71 leJMOaAGtuU1cOs7TuKhCQN/Po7qCWWq
15c9c0 53 47 36 77 63 6d 74 6f 49 0a 4b 79 55 6e 2b 57 6b 6a 52 2f 48 67 36 79 78 36 6d 2f 55 54 41 74 SG6wcmtoI.KyUn+WkjR/Hg6yx6m/UTAt
15c9e0 42 2b 4e 48 7a 43 6e 6a 77 41 57 61 76 31 32 67 7a 31 4d 6a 77 72 72 46 44 61 31 73 50 65 67 35 B+NHzCnjwAWav12gz1MjwrrFDa1sPeg5
15ca00 54 4b 71 41 79 5a 4d 67 34 49 53 46 5a 62 61 76 76 61 34 56 68 59 0a 41 55 6c 66 63 6b 45 38 46 TKqAyZMg4ISFZbavva4VhY.AUlfckE8F
15ca20 51 59 42 6a 6c 32 74 71 72 69 54 74 4d 32 65 36 36 66 6f 61 69 31 53 4e 4e 73 36 37 31 78 31 55 QYBjl2tqriTtM2e66foai1SNNs671x1U
15ca40 64 72 62 38 7a 48 35 37 6e 47 59 4d 73 52 55 46 55 51 4d 2b 5a 74 56 37 61 33 66 47 41 69 67 6f drb8zH57nGYMsRUFUQM+ZtV7a3fGAigo
15ca60 34 61 4b 0a 53 65 35 54 42 59 38 5a 54 4e 58 65 57 48 6d 62 30 6d 6f 63 51 71 76 46 31 61 66 50 4aK.Se5TBY8ZTNXeWHmb0mocQqvF1afP
15ca80 61 41 2b 57 35 4f 46 68 6d 48 5a 68 79 4a 46 38 31 6a 34 41 34 70 46 51 68 2b 47 64 43 75 61 74 aA+W5OFhmHZhyJF81j4A4pFQh+GdCuat
15caa0 6c 39 49 64 78 6a 70 39 79 37 7a 61 41 7a 54 56 0a 6a 6c 73 42 39 57 6f 48 74 78 61 32 62 6b 70 l9Idxjp9y7zaAzTV.jlsB9WoHtxa2bkp
15cac0 2f 41 67 4d 42 41 41 47 6a 51 6a 42 41 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 51 78 77 33 6b /AgMBAAGjQjBAMB0GA1UdDgQWBBQxw3k
15cae0 62 75 76 56 54 31 78 66 67 69 58 6f 74 46 32 77 4b 73 79 75 64 4d 7a 41 50 42 67 4e 56 0a 48 52 buvVT1xfgiXotF2wKsyudMzAPBgNV.HR
15cb00 4d 45 43 44 41 47 41 51 48 2f 41 67 45 46 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 MECDAGAQH/AgEFMA4GA1UdDwEB/wQEAw
15cb20 49 42 42 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 6c 47 IBBjANBgkqhkiG9w0BAQUFAAOCAQEAlG
15cb40 52 5a 72 54 6c 6b 35 79 6e 72 0a 45 2f 35 61 77 34 73 54 56 38 67 45 4a 50 42 30 64 38 42 67 34 RZrTlk5ynr.E/5aw4sTV8gEJPB0d8Bg4
15cb60 32 66 37 36 59 6d 6d 67 37 2b 57 67 6e 78 75 31 4d 4d 39 37 35 36 41 62 72 73 70 74 4a 68 36 73 2f76Ymmg7+Wgnxu1MM9756AbrsptJh6s
15cb80 54 74 55 36 7a 6b 58 52 33 34 61 6a 67 76 38 48 7a 46 5a 4d 51 53 79 0a 7a 68 66 7a 4c 4d 64 69 TtU6zkXR34ajgv8HzFZMQSy.zhfzLMdi
15cba0 4e 6c 58 69 49 74 69 4a 56 62 53 59 53 4b 70 6b 2b 74 59 63 4e 74 68 45 65 46 70 61 49 7a 70 58 NlXiItiJVbSYSKpk+tYcNthEeFpaIzpX
15cbc0 6c 2f 56 36 4d 45 2b 75 6e 32 70 4d 53 79 75 4f 6f 41 50 6a 50 75 43 70 31 4e 4a 37 30 72 4f 6f l/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo
15cbe0 34 6e 49 38 0a 72 5a 37 2f 67 46 6e 6b 6d 30 57 30 39 6a 75 77 7a 54 6b 5a 6d 44 4c 6c 36 69 46 4nI8.rZ7/gFnkm0W09juwzTkZmDLl6iF
15cc00 68 6b 4f 51 78 49 59 34 30 73 66 63 76 4e 55 71 46 45 4e 72 6e 69 6a 63 68 76 6c 6c 6a 34 50 4b hkOQxIY40sfcvNUqFENrnijchvllj4PK
15cc20 46 69 44 46 54 31 46 51 55 68 58 42 35 39 43 34 47 0a 64 79 64 31 4c 78 2b 34 69 76 6e 2b 78 62 FiDFT1FQUhXB59C4G.dyd1Lx+4ivn+xb
15cc40 72 59 4e 75 53 44 37 4f 64 6c 74 37 39 6a 57 76 4e 47 72 34 47 55 4e 39 52 42 6a 4e 59 6a 31 68 rYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h
15cc60 37 50 39 57 67 62 52 47 4f 69 57 72 71 6e 4e 56 6d 68 35 58 41 46 6d 77 34 6a 56 35 6d 55 0a 43 7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU.C
15cc80 6d 32 36 4f 57 4d 6f 68 70 4c 7a 47 49 54 59 2b 39 48 50 42 56 5a 6b 56 77 3d 3d 0a 2d 2d 2d 2d m26OWMohpLzGITY+9HPBVZkVw==.----
15cca0 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 79 62 65 72 74 72 75 73 -END.CERTIFICATE-----..Cybertrus
15ccc0 74 20 47 6c 6f 62 61 6c 20 52 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d t.Global.Root.==================
15cce0 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d ====.-----BEGIN.CERTIFICATE-----
15cd00 0a 4d 49 49 44 6f 54 43 43 41 6f 6d 67 41 77 49 42 41 67 49 4c 42 41 41 41 41 41 41 42 44 34 57 .MIIDoTCCAomgAwIBAgILBAAAAAABD4W
15cd20 71 4c 55 67 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 4f 7a 45 59 4d 42 59 qLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBY
15cd40 47 41 31 55 45 43 68 4d 50 51 33 6c 69 0a 5a 58 4a 30 63 6e 56 7a 64 43 77 67 53 57 35 6a 4d 52 GA1UEChMPQ3li.ZXJ0cnVzdCwgSW5jMR
15cd60 38 77 48 51 59 44 56 51 51 44 45 78 5a 44 65 57 4a 6c 63 6e 52 79 64 58 4e 30 49 45 64 73 62 32 8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2
15cd80 4a 68 62 43 42 53 62 32 39 30 4d 42 34 58 44 54 41 32 4d 54 49 78 4e 54 41 34 0a 4d 44 41 77 4d JhbCBSb290MB4XDTA2MTIxNTA4.MDAwM
15cda0 46 6f 58 44 54 49 78 4d 54 49 78 4e 54 41 34 4d 44 41 77 4d 46 6f 77 4f 7a 45 59 4d 42 59 47 41 FoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA
15cdc0 31 55 45 43 68 4d 50 51 33 6c 69 5a 58 4a 30 63 6e 56 7a 64 43 77 67 53 57 35 6a 4d 52 38 77 48 1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wH
15cde0 51 59 44 56 51 51 44 0a 45 78 5a 44 65 57 4a 6c 63 6e 52 79 64 58 4e 30 49 45 64 73 62 32 4a 68 QYDVQQD.ExZDeWJlcnRydXN0IEdsb2Jh
15ce00 62 43 42 53 62 32 39 30 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 bCBSb290MIIBIjANBgkqhkiG9w0BAQEF
15ce20 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 0a 2b 4d 69 38 76 52 52 51 5a 68 50 AAOCAQ8AMIIBCgKCAQEA.+Mi8vRRQZhP
15ce40 2f 38 4e 4e 35 37 43 50 79 74 78 72 48 6a 6f 58 78 45 6e 4f 6d 47 61 6f 51 32 35 79 69 5a 58 52 /8NN57CPytxrHjoXxEnOmGaoQ25yiZXR
15ce60 61 64 7a 35 52 66 56 62 32 33 43 4f 32 31 4f 31 66 57 4c 45 33 54 64 56 4a 44 6d 37 31 61 6f 66 adz5RfVb23CO21O1fWLE3TdVJDm71aof
15ce80 57 0a 30 6f 7a 53 4a 38 62 69 2f 7a 61 66 6d 47 57 67 45 30 37 47 4b 6d 53 62 31 5a 41 53 7a 78 W.0ozSJ8bi/zafmGWgE07GKmSb1ZASzx
15cea0 51 47 39 44 76 6a 31 43 69 2b 36 41 37 34 71 30 35 49 6c 47 32 4f 6c 54 45 51 58 4f 32 69 4c 62 QG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb
15cec0 33 56 4f 6d 32 79 48 4c 74 67 77 45 5a 4c 0a 41 66 56 4a 72 6e 35 47 69 74 42 30 6a 61 45 4d 41 3VOm2yHLtgwEZL.AfVJrn5GitB0jaEMA
15cee0 73 37 75 2f 4f 65 50 75 47 74 6d 38 33 39 45 41 4c 39 6d 4a 52 51 72 33 52 41 77 48 51 65 57 50 s7u/OePuGtm839EAL9mJRQr3RAwHQeWP
15cf00 30 33 32 61 37 69 50 74 33 73 4d 70 54 6a 72 33 6b 66 62 31 56 30 35 2f 49 69 6e 0a 38 39 63 71 032a7iPt3sMpTjr3kfb1V05/Iin.89cq
15cf20 64 50 48 6f 57 71 49 37 6e 31 43 36 70 6f 78 46 4e 63 4a 51 5a 5a 58 63 59 34 4c 76 33 62 39 33 dPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93
15cf40 54 5a 78 69 79 57 4e 7a 46 74 41 70 44 30 6d 70 53 50 43 7a 71 72 64 73 78 61 63 77 4f 55 42 64 TZxiyWNzFtApD0mpSPCzqrdsxacwOUBd
15cf60 72 73 54 69 58 53 5a 54 0a 38 4d 34 63 49 77 68 68 71 4a 51 5a 75 67 52 69 51 4f 77 66 4f 48 42 rsTiXSZT.8M4cIwhhqJQZugRiQOwfOHB
15cf80 33 45 67 5a 78 70 7a 41 59 58 53 55 6e 70 51 49 44 41 51 41 42 6f 34 47 6c 4d 49 47 69 4d 41 34 3EgZxpzAYXSUnpQIDAQABo4GlMIGiMA4
15cfa0 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 50 0a 42 67 4e 56 48 52 4d 42 41 66 GA1UdDwEB/wQEAwIBBjAP.BgNVHRMBAf
15cfc0 38 45 42 54 41 44 41 51 48 2f 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 53 32 43 48 73 4e 65 73 8EBTADAQH/MB0GA1UdDgQWBBS2CHsNes
15cfe0 79 73 49 45 79 47 56 6a 4a 65 7a 36 74 75 68 53 31 77 56 7a 41 2f 42 67 4e 56 48 52 38 45 4f 44 ysIEyGVjJez6tuhS1wVzA/BgNVHR8EOD
15d000 41 32 0a 4d 44 53 67 4d 71 41 77 68 69 35 6f 64 48 52 77 4f 69 38 76 64 33 64 33 4d 69 35 77 64 A2.MDSgMqAwhi5odHRwOi8vd3d3Mi5wd
15d020 57 4a 73 61 57 4d 74 64 48 4a 31 63 33 51 75 59 32 39 74 4c 32 4e 79 62 43 39 6a 64 43 39 6a 64 WJsaWMtdHJ1c3QuY29tL2NybC9jdC9jd
15d040 48 4a 76 62 33 51 75 59 33 4a 73 4d 42 38 47 0a 41 31 55 64 49 77 51 59 4d 42 61 41 46 4c 59 49 HJvb3QuY3JsMB8G.A1UdIwQYMBaAFLYI
15d060 65 77 31 36 7a 4b 77 67 54 49 5a 57 4d 6c 37 50 71 32 36 46 4c 58 42 58 4d 41 30 47 43 53 71 47 ew16zKwgTIZWMl7Pq26FLXBXMA0GCSqG
15d080 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 42 41 51 42 57 37 77 6f 6a 6f 46 52 4f 0a 6c 5a 66 SIb3DQEBBQUAA4IBAQBW7wojoFRO.lZf
15d0a0 4a 2b 49 6e 61 52 63 48 55 6f 77 41 6c 39 42 38 54 71 37 65 6a 68 56 68 70 77 6a 43 74 32 42 57 J+InaRcHUowAl9B8Tq7ejhVhpwjCt2BW
15d0c0 4b 4c 65 50 4a 7a 59 46 61 2b 48 4d 6a 57 71 64 38 42 66 50 39 49 6a 73 4f 30 51 62 45 32 7a 5a KLePJzYFa+HMjWqd8BfP9IjsO0QbE2zZ
15d0e0 4d 63 77 53 4f 35 62 41 69 0a 35 4d 58 7a 4c 71 58 5a 49 2b 4f 34 54 6b 6f 67 70 32 34 43 4a 4a McwSO5bAi.5MXzLqXZI+O4Tkogp24CJJ
15d100 38 69 59 47 64 37 69 78 31 79 43 63 55 78 58 4f 6c 35 6e 34 42 48 50 61 32 68 43 77 63 55 50 55 8iYGd7ix1yCcUxXOl5n4BHPa2hCwcUPU
15d120 66 2f 41 32 6b 61 44 41 74 45 35 32 4d 6c 70 33 2b 79 79 62 68 32 0a 68 4f 30 6a 39 6e 30 48 71 f/A2kaDAtE52Mlp3+yybh2.hO0j9n0Hq
15d140 30 56 2b 30 39 2b 7a 76 2b 6d 4b 74 73 32 6f 6f 6d 63 72 55 74 57 33 5a 66 41 35 54 47 4f 67 6b 0V+09+zv+mKts2oomcrUtW3ZfA5TGOgk
15d160 58 6d 54 55 67 39 55 33 59 4f 37 6e 39 47 50 70 31 4e 7a 77 38 76 2f 4d 4f 78 38 42 4c 6a 59 52 XmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYR
15d180 42 2b 54 0a 58 33 45 4a 49 72 64 75 50 75 6f 63 41 30 36 64 47 69 42 68 2b 34 45 33 37 46 37 38 B+T.X3EJIrduPuocA06dGiBh+4E37F78
15d1a0 43 6b 57 72 31 2b 63 58 56 64 43 67 36 6d 43 62 70 76 62 6a 6a 46 73 70 77 67 5a 67 46 4a 30 74 CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0t
15d1c0 6c 30 79 70 6b 78 57 64 59 63 51 42 58 30 6a 57 0a 57 4c 31 57 4d 52 4a 4f 45 63 67 68 34 4c 4d l0ypkxWdYcQBX0jW.WL1WMRJOEcgh4LM
15d1e0 52 6b 57 58 62 74 4b 61 49 4f 4d 35 56 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 RkWXbtKaIOM5V.-----END.CERTIFICA
15d200 54 45 2d 2d 2d 2d 2d 0a 0a 65 50 4b 49 20 52 6f 6f 74 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e TE-----..ePKI.Root.Certification
15d220 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .Authority.=====================
15d240 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 ============.-----BEGIN.CERTIFIC
15d260 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 73 44 43 43 41 35 69 67 41 77 49 42 41 67 49 51 46 63 69 ATE-----.MIIFsDCCA5igAwIBAgIQFci
15d280 39 5a 55 64 63 72 37 69 58 41 46 37 6b 42 74 4b 38 6e 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0
15d2a0 42 41 51 55 46 41 44 42 65 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 55 56 7a 45 6a 4d 43 BAQUFADBeMQswCQYDVQQG.EwJUVzEjMC
15d2c0 45 47 41 31 55 45 43 67 77 61 51 32 68 31 62 6d 64 6f 64 32 45 67 56 47 56 73 5a 57 4e 76 62 53 EGA1UECgwaQ2h1bmdod2EgVGVsZWNvbS
15d2e0 42 44 62 79 34 73 49 45 78 30 5a 43 34 78 4b 6a 41 6f 42 67 4e 56 42 41 73 4d 49 57 56 51 53 30 BDby4sIEx0ZC4xKjAoBgNVBAsMIWVQS0
15d300 6b 67 0a 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 46 31 64 kg.Um9vdCBDZXJ0aWZpY2F0aW9uIEF1d
15d320 47 68 76 63 6d 6c 30 65 54 41 65 46 77 30 77 4e 44 45 79 4d 6a 41 77 4d 6a 4d 78 4d 6a 64 61 46 Ghvcml0eTAeFw0wNDEyMjAwMjMxMjdaF
15d340 77 30 7a 4e 44 45 79 4d 6a 41 77 4d 6a 4d 78 0a 4d 6a 64 61 4d 46 34 78 43 7a 41 4a 42 67 4e 56 w0zNDEyMjAwMjMx.MjdaMF4xCzAJBgNV
15d360 42 41 59 54 41 6c 52 58 4d 53 4d 77 49 51 59 44 56 51 51 4b 44 42 70 44 61 48 56 75 5a 32 68 33 BAYTAlRXMSMwIQYDVQQKDBpDaHVuZ2h3
15d380 59 53 42 55 5a 57 78 6c 59 32 39 74 49 45 4e 76 4c 69 77 67 54 48 52 6b 4c 6a 45 71 0a 4d 43 67 YSBUZWxlY29tIENvLiwgTHRkLjEq.MCg
15d3a0 47 41 31 55 45 43 77 77 68 5a 56 42 4c 53 53 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d 6c GA1UECwwhZVBLSSBSb290IENlcnRpZml
15d3c0 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 4d 49 49 43 49 6a 41 4e 42 67 6b jYXRpb24gQXV0aG9yaXR5MIICIjANBgk
15d3e0 71 68 6b 69 47 39 77 30 42 0a 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 qhkiG9w0B.AQEFAAOCAg8AMIICCgKCAg
15d400 45 41 34 53 55 50 37 6f 33 62 69 44 4e 31 5a 38 32 74 48 33 30 36 54 6d 32 64 30 79 38 55 38 32 EA4SUP7o3biDN1Z82tH306Tm2d0y8U82
15d420 4e 30 79 77 45 68 61 6a 66 71 68 46 41 48 53 79 5a 62 43 55 4e 73 0a 49 5a 35 71 79 4e 55 44 39 N0ywEhajfqhFAHSyZbCUNs.IZ5qyNUD9
15d440 57 42 70 6a 38 7a 77 49 75 51 66 35 2f 64 71 49 6a 47 33 4c 42 58 79 34 50 34 41 61 6b 50 2f 68 WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h
15d460 32 58 47 74 52 72 42 70 30 78 74 49 6e 41 68 69 6a 48 79 6c 33 53 4a 43 52 49 6d 48 4a 37 4b 32 2XGtRrBp0xtInAhijHyl3SJCRImHJ7K2
15d480 52 4b 69 0a 6c 54 7a 61 36 57 65 2f 43 4b 42 6b 34 39 5a 43 74 30 58 76 6c 2f 54 32 39 64 65 31 RKi.lTza6We/CKBk49ZCt0Xvl/T29de1
15d4a0 53 68 55 43 57 48 32 59 57 45 74 67 76 4d 33 58 44 5a 6f 54 4d 31 50 52 59 66 6c 36 31 64 64 34 ShUCWH2YWEtgvM3XDZoTM1PRYfl61dd4
15d4c0 73 35 6f 7a 39 77 43 47 7a 68 31 4e 6c 44 69 76 0a 71 4f 78 34 55 58 43 4b 58 42 43 44 55 53 48 s5oz9wCGzh1NlDiv.qOx4UXCKXBCDUSH
15d4e0 33 45 54 30 30 68 6c 37 6c 53 4d 32 58 67 59 49 31 54 42 6e 73 5a 66 5a 72 78 51 57 68 37 6b 63 3ET00hl7lSM2XgYI1TBnsZfZrxQWh7kc
15d500 54 31 72 4d 68 4a 35 51 51 43 74 6b 6b 4f 37 71 2b 52 42 4e 47 4d 44 2b 58 50 4e 6a 58 0a 31 32 T1rMhJ5QQCtkkO7q+RBNGMD+XPNjX.12
15d520 72 75 4f 7a 6a 6a 4b 39 53 58 44 72 6b 62 35 77 64 4a 66 7a 63 71 2b 58 64 34 7a 31 54 74 57 30 ruOzjjK9SXDrkb5wdJfzcq+Xd4z1TtW0
15d540 61 64 6f 34 41 4f 6b 55 50 42 31 6c 74 66 46 4c 71 66 70 6f 30 6b 52 30 42 5a 76 33 49 34 73 6a ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sj
15d560 5a 73 4e 2f 2b 5a 30 56 30 4f 0a 57 51 71 72 61 66 66 41 73 67 52 46 65 6c 51 41 72 72 35 54 39 ZsN/+Z0V0O.WQqraffAsgRFelQArr5T9
15d580 72 58 6e 34 66 67 38 6f 7a 48 53 71 66 34 68 55 6d 54 46 70 6d 66 77 64 51 63 47 6c 42 53 42 56 rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBV
15d5a0 63 59 6e 35 41 47 50 46 38 46 71 63 64 65 2b 53 2f 75 55 57 48 31 2b 0a 45 54 4f 78 51 76 64 69 cYn5AGPF8Fqcde+S/uUWH1+.ETOxQvdi
15d5c0 62 42 6a 57 7a 77 6c 6f 50 6e 39 73 39 68 36 50 59 71 32 6c 59 39 73 4a 70 78 38 69 51 6b 45 65 bBjWzwloPn9s9h6PYq2lY9sJpx8iQkEe
15d5e0 62 35 6d 4b 50 74 66 35 50 30 42 36 65 62 43 6c 41 5a 4c 53 6e 54 30 49 46 61 55 51 41 53 32 7a b5mKPtf5P0B6ebClAZLSnT0IFaUQAS2z
15d600 4d 6e 61 6f 0a 6c 51 32 7a 65 70 72 37 42 78 42 34 45 57 2f 68 6a 38 65 36 44 79 55 61 64 43 72 Mnao.lQ2zepr7BxB4EW/hj8e6DyUadCr
15d620 6c 48 4a 68 42 6d 64 38 68 68 2b 69 56 42 6d 6f 4b 73 32 70 48 64 6d 58 32 4f 73 2b 50 59 68 63 lHJhBmd8hh+iVBmoKs2pHdmX2Os+PYhc
15d640 5a 65 77 6f 6f 7a 52 72 53 67 78 34 68 78 79 79 2f 0a 76 76 39 68 61 4c 64 6e 47 37 74 34 54 59 ZewoozRrSgx4hxyy/.vv9haLdnG7t4TY
15d660 33 4f 5a 2b 58 6b 77 59 36 33 49 32 62 69 6e 5a 42 31 4e 4a 69 70 4e 69 75 4b 6d 70 53 35 6e 65 3OZ+XkwY63I2binZB1NJipNiuKmpS5ne
15d680 7a 4d 69 72 48 34 4a 59 6c 63 57 72 59 76 6a 42 39 74 65 53 53 6e 55 6d 6a 44 68 44 58 69 0a 5a zMirH4JYlcWrYvjB9teSSnUmjDhDXi.Z
15d6a0 6f 31 6a 44 69 56 4e 31 52 6d 79 35 6e 6b 33 70 79 4b 64 56 44 45 43 41 77 45 41 41 61 4e 71 4d o1jDiVN1Rmy5nk3pyKdVDECAwEAAaNqM
15d6c0 47 67 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 42 34 4d 39 37 5a 6e 38 75 47 53 4a 67 6c 46 77 GgwHQYDVR0OBBYEFB4M97Zn8uGSJglFw
15d6e0 46 55 35 4c 6e 63 2f 51 6b 71 69 0a 4d 41 77 47 41 31 55 64 45 77 51 46 4d 41 4d 42 41 66 38 77 FU5Lnc/Qkqi.MAwGA1UdEwQFMAMBAf8w
15d700 4f 51 59 45 5a 79 6f 48 41 41 51 78 4d 43 38 77 4c 51 49 42 41 44 41 4a 42 67 55 72 44 67 4d 43 OQYEZyoHAAQxMC8wLQIBADAJBgUrDgMC
15d720 47 67 55 41 4d 41 63 47 42 57 63 71 41 77 41 41 42 42 52 46 73 4d 4c 48 0a 43 6c 5a 38 37 6c 74 GgUAMAcGBWcqAwAABBRFsMLH.ClZ87lt
15d740 34 44 4a 58 35 47 46 50 42 70 68 7a 59 45 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 4DJX5GFPBphzYEDANBgkqhkiG9w0BAQU
15d760 46 41 41 4f 43 41 67 45 41 43 62 4f 44 55 31 6b 42 50 70 56 4a 75 66 47 42 75 76 6c 32 49 43 4f FAAOCAgEACbODU1kBPpVJufGBuvl2ICO
15d780 31 4a 32 42 30 0a 31 47 71 5a 4e 46 35 73 41 46 50 5a 6e 2f 4b 6d 73 53 51 48 52 47 6f 71 78 71 1J2B0.1GqZNF5sAFPZn/KmsSQHRGoqxq
15d7a0 57 4f 65 42 4c 6f 52 39 6c 59 47 78 4d 71 58 6e 6d 62 6e 77 6f 71 5a 36 59 6c 50 77 5a 70 56 6e WOeBLoR9lYGxMqXnmbnwoqZ6YlPwZpVn
15d7c0 50 44 69 6d 5a 49 2b 79 6d 42 56 33 51 47 79 70 7a 71 0a 4b 4f 67 34 5a 79 59 72 38 64 57 31 50 PDimZI+ymBV3QGypzq.KOg4ZyYr8dW1P
15d7e0 32 57 54 2b 44 5a 64 6a 6f 32 4e 51 43 43 48 47 65 72 76 4a 38 41 39 74 44 6b 50 4a 58 74 6f 55 2WT+DZdjo2NQCCHGervJ8A9tDkPJXtoU
15d800 48 52 56 6e 41 78 5a 66 56 6f 39 51 5a 51 6c 55 67 6a 67 52 79 77 56 4d 52 6e 56 76 77 64 56 0a HRVnAxZfVo9QZQlUgjgRywVMRnVvwdV.
15d820 78 72 73 53 74 5a 66 30 58 34 4f 46 75 6e 48 42 32 57 79 42 45 58 59 4b 43 72 43 2f 67 70 66 33 xrsStZf0X4OFunHB2WyBEXYKCrC/gpf3
15d840 36 6a 33 36 2b 75 77 74 71 53 69 55 4f 31 62 64 30 6c 45 75 72 73 43 39 43 42 57 4d 64 31 49 30 6j36+uwtqSiUO1bd0lEursC9CBWMd1I0
15d860 6c 74 61 62 72 4e 4d 64 6a 6d 45 50 0a 4e 58 75 62 72 6a 6c 70 43 32 4a 67 51 43 41 32 6a 36 2f ltabrNMdjmEP.NXubrjlpC2JgQCA2j6/
15d880 37 4e 75 34 74 43 45 6f 64 75 4c 2b 62 58 50 6a 71 70 52 75 67 63 36 62 59 2b 47 37 67 4d 77 52 7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwR
15d8a0 66 61 4b 6f 6e 68 2b 33 5a 77 5a 43 63 37 62 33 6a 61 6a 57 76 59 39 2b 72 0a 47 4e 6d 36 35 75 faKonh+3ZwZCc7b3jajWvY9+r.GNm65u
15d8c0 6c 4b 36 6c 43 4b 44 32 47 54 48 75 49 74 47 65 49 77 6c 44 57 53 58 51 36 32 42 36 38 5a 67 49 lK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI
15d8e0 39 48 6b 46 46 4c 4c 6b 33 64 68 65 4c 53 43 6c 49 4b 46 35 72 38 47 72 42 51 41 75 55 42 6f 32 9HkFFLLk3dheLSClIKF5r8GrBQAuUBo2
15d900 4d 33 49 55 78 45 0a 78 4a 74 52 6d 52 45 4f 63 35 77 47 6a 31 51 75 70 79 68 65 52 44 6d 48 56 M3IUxE.xJtRmREOc5wGj1QupyheRDmHV
15d920 69 30 33 76 59 56 45 6c 4f 45 4d 53 79 79 63 77 35 4b 46 4e 47 48 4c 44 37 69 62 53 6b 4e 53 2f i03vYVElOEMSyycw5KFNGHLD7ibSkNS/
15d940 6a 51 36 66 62 6a 70 4b 64 78 32 71 63 67 77 2b 42 52 78 0a 67 4d 59 65 4e 6b 68 30 49 6b 46 63 jQ6fbjpKdx2qcgw+BRx.gMYeNkh0IkFc
15d960 68 34 4c 6f 47 48 47 4c 51 59 6c 45 35 33 35 59 57 36 69 34 6a 52 50 70 70 32 7a 44 52 2b 32 7a h4LoGHGLQYlE535YW6i4jRPpp2zDR+2z
15d980 47 70 31 69 72 6f 32 43 36 70 53 65 33 56 6b 51 77 36 33 64 34 6b 33 6a 4d 64 58 48 37 4f 6a 79 Gp1iro2C6pSe3VkQw63d4k3jMdXH7Ojy
15d9a0 0a 73 50 36 53 48 68 59 4b 47 76 7a 5a 38 2f 67 6e 74 73 6d 2b 48 62 52 73 5a 4a 42 2f 39 4f 54 .sP6SHhYKGvzZ8/gntsm+HbRsZJB/9OT
15d9c0 45 57 39 63 33 72 6b 49 4f 33 61 51 61 62 33 79 49 56 4d 55 57 62 75 46 36 61 43 37 34 4f 72 38 EW9c3rkIO3aQab3yIVMUWbuF6aC74Or8
15d9e0 4e 70 44 79 4a 4f 33 69 6e 54 6d 4f 44 0a 42 43 45 49 5a 34 33 79 67 6b 6e 51 57 2f 32 78 7a 51 NpDyJO3inTmOD.BCEIZ43ygknQW/2xzQ
15da00 2b 44 68 4e 51 2b 49 49 58 33 53 6a 30 72 6e 50 30 71 43 67 6c 4e 36 6f 48 34 45 5a 77 3d 0a 2d +DhNQ+IIX3Sj0rnP0qCglN6oH4EZw=.-
15da20 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 5c 78 63 33 5c ----END.CERTIFICATE-----..T\xc3\
15da40 78 39 63 5c 78 34 32 5c 78 43 34 5c 78 42 30 54 41 4b 20 55 45 4b 41 45 20 4b 5c 78 43 33 5c 78 x9c\x42\xC4\xB0TAK.UEKAE.K\xC3\x
15da60 42 36 6b 20 53 65 72 74 69 66 69 6b 61 20 48 69 7a 6d 65 74 20 53 61 5c 78 43 34 5c 78 39 46 6c B6k.Sertifika.Hizmet.Sa\xC4\x9Fl
15da80 61 79 5c 78 63 34 5c 78 62 31 5c 78 36 33 5c 78 63 34 5c 78 62 31 73 5c 78 63 34 5c 78 62 31 20 ay\xc4\xb1\x63\xc4\xb1s\xc4\xb1.
15daa0 2d 20 53 5c 78 43 33 5c 78 42 43 72 5c 78 43 33 5c 78 42 43 6d 20 33 0a 3d 3d 3d 3d 3d 3d 3d 3d -.S\xC3\xBCr\xC3\xBCm.3.========
15dac0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
15dae0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
15db00 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
15db20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e =====================.-----BEGIN
15db40 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 46 7a 43 43 41 2f 2b 67 41 77 .CERTIFICATE-----.MIIFFzCCA/+gAw
15db60 49 42 41 67 49 42 45 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 43 41 53 IBAgIBETANBgkqhkiG9w0BAQUFADCCAS
15db80 73 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 52 53 4d 52 67 77 46 67 59 44 56 51 51 48 0a 44 sxCzAJBgNVBAYTAlRSMRgwFgYDVQQH.D
15dba0 41 39 48 5a 57 4a 36 5a 53 41 74 49 45 74 76 59 32 46 6c 62 47 6b 78 52 7a 42 46 42 67 4e 56 42 A9HZWJ6ZSAtIEtvY2FlbGkxRzBFBgNVB
15dbc0 41 6f 4d 50 6c 54 44 76 48 4a 72 61 58 6c 6c 49 45 4a 70 62 47 6c 74 63 32 56 73 49 48 5a 6c 49 AoMPlTDvHJraXllIEJpbGltc2VsIHZlI
15dbe0 46 52 6c 61 32 35 76 62 47 39 71 0a 61 57 73 67 51 58 4a 68 78 5a 39 30 78 4c 46 79 62 57 45 67 FRla25vbG9q.aWsgQXJhxZ90xLFybWEg
15dc00 53 33 56 79 64 57 31 31 49 43 30 67 56 4d 4f 63 51 73 53 77 56 45 46 4c 4d 55 67 77 52 67 59 44 S3VydW11IC0gVMOcQsSwVEFLMUgwRgYD
15dc20 56 51 51 4c 44 44 39 56 62 48 56 7a 59 57 77 67 52 57 78 6c 61 33 52 79 0a 62 32 35 70 61 79 42 VQQLDD9VbHVzYWwgRWxla3Ry.b25payB
15dc40 32 5a 53 42 4c 63 6d 6c 77 64 47 39 73 62 32 70 70 49 45 46 79 59 63 57 66 64 4d 53 78 63 6d 31 2ZSBLcmlwdG9sb2ppIEFyYcWfdMSxcm1
15dc60 68 49 45 56 75 63 33 52 70 64 4d 4f 38 63 38 4f 38 49 43 30 67 56 55 56 4c 51 55 55 78 49 7a 41 hIEVuc3RpdMO8c8O8IC0gVUVLQUUxIzA
15dc80 68 42 67 4e 56 0a 42 41 73 4d 47 6b 74 68 62 58 55 67 55 32 56 79 64 47 6c 6d 61 57 74 68 63 33 hBgNV.BAsMGkthbXUgU2VydGlmaWthc3
15dca0 6c 76 62 69 42 4e 5a 58 4a 72 5a 58 70 70 4d 55 6f 77 53 41 59 44 56 51 51 44 44 45 46 55 77 35 lvbiBNZXJrZXppMUowSAYDVQQDDEFUw5
15dcc0 78 43 78 4c 42 55 51 55 73 67 56 55 56 4c 51 55 55 67 0a 53 38 4f 32 61 79 42 54 5a 58 4a 30 61 xCxLBUQUsgVUVLQUUg.S8O2ayBTZXJ0a
15dce0 57 5a 70 61 32 45 67 53 47 6c 36 62 57 56 30 49 46 4e 68 78 4a 39 73 59 58 6e 45 73 57 50 45 73 WZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEs
15dd00 58 50 45 73 53 41 74 49 46 50 44 76 48 4c 44 76 47 30 67 4d 7a 41 65 46 77 30 77 4e 7a 41 34 0a XPEsSAtIFPDvHLDvG0gMzAeFw0wNzA4.
15dd20 4d 6a 51 78 4d 54 4d 33 4d 44 64 61 46 77 30 78 4e 7a 41 34 4d 6a 45 78 4d 54 4d 33 4d 44 64 61 MjQxMTM3MDdaFw0xNzA4MjExMTM3MDda
15dd40 4d 49 49 42 4b 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 46 49 78 47 44 41 57 42 67 4e 56 MIIBKzELMAkGA1UEBhMCVFIxGDAWBgNV
15dd60 42 41 63 4d 44 30 64 6c 59 6e 70 6c 0a 49 43 30 67 53 32 39 6a 59 57 56 73 61 54 46 48 4d 45 55 BAcMD0dlYnpl.IC0gS29jYWVsaTFHMEU
15dd80 47 41 31 55 45 43 67 77 2b 56 4d 4f 38 63 6d 74 70 65 57 55 67 51 6d 6c 73 61 57 31 7a 5a 57 77 GA1UECgw+VMO8cmtpeWUgQmlsaW1zZWw
15dda0 67 64 6d 55 67 56 47 56 72 62 6d 39 73 62 32 70 70 61 79 42 42 63 6d 48 46 0a 6e 33 54 45 73 58 gdmUgVGVrbm9sb2ppayBBcmHF.n3TEsX
15ddc0 4a 74 59 53 42 4c 64 58 4a 31 62 58 55 67 4c 53 42 55 77 35 78 43 78 4c 42 55 51 55 73 78 53 44 JtYSBLdXJ1bXUgLSBUw5xCxLBUQUsxSD
15dde0 42 47 42 67 4e 56 42 41 73 4d 50 31 56 73 64 58 4e 68 62 43 42 46 62 47 56 72 64 48 4a 76 62 6d BGBgNVBAsMP1VsdXNhbCBFbGVrdHJvbm
15de00 6c 72 49 48 5a 6c 0a 49 45 74 79 61 58 42 30 62 32 78 76 61 6d 6b 67 51 58 4a 68 78 5a 39 30 78 lrIHZl.IEtyaXB0b2xvamkgQXJhxZ90x
15de20 4c 46 79 62 57 45 67 52 57 35 7a 64 47 6c 30 77 37 78 7a 77 37 77 67 4c 53 42 56 52 55 74 42 52 LFybWEgRW5zdGl0w7xzw7wgLSBVRUtBR
15de40 54 45 6a 4d 43 45 47 41 31 55 45 43 77 77 61 53 32 46 74 0a 64 53 42 54 5a 58 4a 30 61 57 5a 70 TEjMCEGA1UECwwaS2Ft.dSBTZXJ0aWZp
15de60 61 32 46 7a 65 57 39 75 49 45 31 6c 63 6d 74 6c 65 6d 6b 78 53 6a 42 49 42 67 4e 56 42 41 4d 4d a2FzeW9uIE1lcmtlemkxSjBIBgNVBAMM
15de80 51 56 54 44 6e 45 4c 45 73 46 52 42 53 79 42 56 52 55 74 42 52 53 42 4c 77 37 5a 72 49 46 4e 6c QVTDnELEsFRBSyBVRUtBRSBLw7ZrIFNl
15dea0 0a 63 6e 52 70 5a 6d 6c 72 59 53 42 49 61 58 70 74 5a 58 51 67 55 32 48 45 6e 32 78 68 65 63 53 .cnRpZmlrYSBIaXptZXQgU2HEn2xhecS
15dec0 78 59 38 53 78 63 38 53 78 49 43 30 67 55 38 4f 38 63 73 4f 38 62 53 41 7a 4d 49 49 42 49 6a 41 xY8Sxc8SxIC0gU8O8csO8bSAzMIIBIjA
15dee0 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 0a 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 NBgkqhkiG9w0B.AQEFAAOCAQ8AMIIBCg
15df00 4b 43 41 51 45 41 69 6d 31 4c 2f 78 43 49 4f 73 50 32 66 70 54 6f 36 69 42 6b 63 4b 34 68 67 62 KCAQEAim1L/xCIOsP2fpTo6iBkcK4hgb
15df20 34 36 65 7a 7a 62 38 52 31 53 66 31 6e 36 38 79 4a 4d 6c 61 43 51 76 45 68 4f 0a 45 61 76 37 74 46ezzb8R1Sf1n68yJMlaCQvEhO.Eav7t
15df40 37 57 4e 65 6f 4d 6f 6a 43 5a 47 32 45 36 56 51 49 64 68 6e 38 57 65 62 59 47 48 56 32 79 4b 4f 7WNeoMojCZG2E6VQIdhn8WebYGHV2yKO
15df60 37 52 6d 36 73 78 41 2f 4f 4f 71 62 4c 4c 4c 41 64 73 79 76 39 4c 72 68 63 2b 68 44 56 58 44 57 7Rm6sxA/OOqbLLLAdsyv9Lrhc+hDVXDW
15df80 7a 68 58 63 4c 68 31 0a 78 6e 6e 52 46 44 44 74 47 31 68 62 61 2b 38 31 38 71 45 68 54 73 58 4f zhXcLh1.xnnRFDDtG1hba+818qEhTsXO
15dfa0 66 4a 6c 66 62 4c 6d 34 49 70 4e 51 70 38 31 4d 63 47 71 2b 61 67 56 2f 45 35 77 72 48 75 72 2b fJlfbLm4IpNQp81McGq+agV/E5wrHur+
15dfc0 52 38 34 45 70 57 2b 73 6b 79 35 38 4b 35 2b 65 65 52 4f 52 0a 36 4f 71 65 79 6a 68 31 6a 6d 4b R84EpW+sky58K5+eeROR.6Oqeyjh1jmK
15dfe0 77 6c 5a 4d 71 35 64 2f 70 58 70 64 75 49 46 39 66 68 48 70 45 4f 52 6c 41 48 4c 70 56 4b 2f 73 wlZMq5d/pXpduIF9fhHpEORlAHLpVK/s
15e000 77 73 6f 48 76 68 4f 50 63 37 4a 67 34 4f 51 4f 46 43 4b 6c 55 41 77 55 70 38 4d 6d 50 69 2b 6f wsoHvhOPc7Jg4OQOFCKlUAwUp8MmPi+o
15e020 4c 0a 68 6d 55 5a 45 64 50 70 43 53 50 65 61 4a 4d 44 79 54 59 63 49 57 37 4f 6a 47 62 78 6d 54 L.hmUZEdPpCSPeaJMDyTYcIW7OjGbxmT
15e040 44 59 31 37 50 44 48 66 69 42 4c 71 69 39 67 67 74 6d 2f 6f 4c 4c 34 65 41 61 67 73 4e 41 67 51 DY17PDHfiBLqi9ggtm/oLL4eAagsNAgQ
15e060 49 44 41 51 41 42 6f 30 49 77 51 44 41 64 0a 42 67 4e 56 48 51 34 45 46 67 51 55 76 59 69 48 79 IDAQABo0IwQDAd.BgNVHQ4EFgQUvYiHy
15e080 59 2f 32 70 41 6f 4c 71 75 76 46 2f 70 45 6a 6e 61 74 4b 69 6a 49 77 44 67 59 44 56 52 30 50 41 Y/2pAoLquvF/pEjnatKijIwDgYDVR0PA
15e0a0 51 48 2f 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 0a 4d 41 4d 42 QH/BAQDAgEGMA8GA1UdEwEB/wQF.MAMB
15e0c0 41 66 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 42 31 38 Af8wDQYJKoZIhvcNAQEFBQADggEBAB18
15e0e0 2b 6b 6d 50 4e 4f 6d 33 4a 70 49 57 6d 67 56 30 35 30 76 51 62 54 6c 73 77 79 62 32 7a 72 67 78 +kmPNOm3JpIWmgV050vQbTlswyb2zrgx
15e100 76 4d 54 66 76 43 72 34 0a 4e 35 45 59 33 41 54 49 5a 4a 6b 72 47 47 32 41 41 31 6e 4a 72 76 68 vMTfvCr4.N5EY3ATIZJkrGG2AA1nJrvh
15e120 59 30 44 37 74 77 79 4f 66 61 54 79 47 4f 42 79 65 37 39 6f 6e 65 4e 47 45 4e 33 47 4b 50 45 73 Y0D7twyOfaTyGOBye79oneNGEN3GKPEs
15e140 35 7a 33 35 46 42 74 59 74 32 49 70 4e 65 42 4c 57 72 63 4c 54 0a 79 39 4c 51 51 66 4d 6d 4e 6b 5z35FBtYt2IpNeBLWrcLT.y9LQQfMmNk
15e160 71 62 6c 57 77 4d 37 75 58 52 51 79 64 6d 77 59 6a 33 65 72 4d 67 62 4f 71 77 61 53 76 48 49 4f qblWwM7uXRQydmwYj3erMgbOqwaSvHIO
15e180 67 4d 41 38 52 42 42 5a 6e 69 50 2b 52 72 2b 4b 43 47 67 63 65 45 78 68 2f 56 53 34 45 53 73 68 gMA8RBBZniP+Rr+KCGgceExh/VS4ESsh
15e1a0 59 68 0a 4c 42 4f 68 67 4c 4a 65 44 45 6f 54 6e 69 44 59 59 6b 43 72 6b 4f 70 6b 53 69 2b 73 44 Yh.LBOhgLJeDEoTniDYYkCrkOpkSi+sD
15e1c0 51 45 53 65 55 57 6f 4c 34 63 5a 61 4d 6a 69 68 63 63 77 73 6e 58 35 4f 44 2b 79 77 4a 4f 30 61 QESeUWoL4cZaMjihccwsnX5OD+ywJO0a
15e1e0 2b 49 44 52 4d 35 6e 6f 4e 2b 4a 31 71 32 4d 0a 64 71 4d 54 77 35 52 68 4b 32 76 5a 62 4d 45 48 +IDRM5noN+J1q2M.dqMTw5RhK2vZbMEH
15e200 43 69 49 48 68 57 79 46 4a 45 61 70 76 6a 2b 4c 65 49 53 43 66 69 51 4d 6e 66 32 42 4e 2b 4d 6c CiIHhWyFJEapvj+LeISCfiQMnf2BN+Ml
15e220 71 4f 30 32 54 70 55 73 79 5a 79 51 32 75 79 70 51 6a 79 74 74 67 49 3d 0a 2d 2d 2d 2d 2d 45 4e qO02TpUsyZyQ2uypQjyttgI=.-----EN
15e240 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 42 75 79 70 61 73 73 20 43 6c 61 73 D.CERTIFICATE-----..Buypass.Clas
15e260 73 20 32 20 43 41 20 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d s.2.CA.1.====================.--
15e280 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 55 7a ---BEGIN.CERTIFICATE-----.MIIDUz
15e2a0 43 43 41 6a 75 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 CCAjugAwIBAgIBATANBgkqhkiG9w0BAQ
15e2c0 55 46 41 44 42 4c 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4f 54 7a 45 64 4d 42 73 47 41 31 UFADBLMQswCQYDVQQGEwJOTzEdMBsGA1
15e2e0 55 45 43 67 77 55 0a 51 6e 56 35 63 47 46 7a 63 79 42 42 55 79 30 35 4f 44 4d 78 4e 6a 4d 7a 4d UECgwU.QnV5cGFzcyBBUy05ODMxNjMzM
15e300 6a 63 78 48 54 41 62 42 67 4e 56 42 41 4d 4d 46 45 4a 31 65 58 42 68 63 33 4d 67 51 32 78 68 63 jcxHTAbBgNVBAMMFEJ1eXBhc3MgQ2xhc
15e320 33 4d 67 4d 69 42 44 51 53 41 78 4d 42 34 58 44 54 41 32 0a 4d 54 41 78 4d 7a 45 77 4d 6a 55 77 3MgMiBDQSAxMB4XDTA2.MTAxMzEwMjUw
15e340 4f 56 6f 58 44 54 45 32 4d 54 41 78 4d 7a 45 77 4d 6a 55 77 4f 56 6f 77 53 7a 45 4c 4d 41 6b 47 OVoXDTE2MTAxMzEwMjUwOVowSzELMAkG
15e360 41 31 55 45 42 68 4d 43 54 6b 38 78 48 54 41 62 42 67 4e 56 42 41 6f 4d 46 45 4a 31 65 58 42 68 A1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBh
15e380 0a 63 33 4d 67 51 56 4d 74 4f 54 67 7a 4d 54 59 7a 4d 7a 49 33 4d 52 30 77 47 77 59 44 56 51 51 .c3MgQVMtOTgzMTYzMzI3MR0wGwYDVQQ
15e3a0 44 44 42 52 43 64 58 6c 77 59 58 4e 7a 49 45 4e 73 59 58 4e 7a 49 44 49 67 51 30 45 67 4d 54 43 DDBRCdXlwYXNzIENsYXNzIDIgQ0EgMTC
15e3c0 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 0a 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 CASIwDQYJKoZI.hvcNAQEBBQADggEPAD
15e3e0 43 43 41 51 6f 43 67 67 45 42 41 49 73 38 42 30 58 59 39 74 2f 6d 78 38 71 36 6a 55 50 46 52 34 CCAQoCggEBAIs8B0XY9t/mx8q6jUPFR4
15e400 32 77 57 73 45 34 32 35 4b 45 48 4b 38 54 31 41 39 76 4e 6b 59 67 78 43 37 4d 0a 63 58 41 30 6f 2wWsE425KEHK8T1A9vNkYgxC7M.cXA0o
15e420 6a 54 54 4e 79 37 59 33 54 70 33 4c 38 44 72 4b 65 68 63 30 72 57 70 6b 54 53 48 49 6c 6e 2b 7a jTTNy7Y3Tp3L8DrKehc0rWpkTSHIln+z
15e440 4e 76 6e 6d 61 2b 57 77 61 6a 48 51 4e 32 6c 46 59 78 75 79 48 79 58 41 38 76 6d 49 50 4c 58 6c Nvnma+WwajHQN2lFYxuyHyXA8vmIPLXl
15e460 31 38 78 6f 53 38 33 0a 30 72 37 75 76 71 6d 74 71 45 79 65 49 57 5a 44 4f 36 69 38 38 77 6d 6a 18xoS83.0r7uvqmtqEyeIWZDO6i88wmj
15e480 4f 4e 56 5a 4a 4d 48 43 52 33 61 78 69 46 79 43 4f 37 73 72 70 67 54 58 6a 41 65 50 7a 64 56 42 ONVZJMHCR3axiFyCO7srpgTXjAePzdVB
15e4a0 48 66 43 75 75 43 6b 73 6c 46 4a 67 4e 4a 51 37 32 75 41 34 0a 30 5a 30 7a 50 68 58 30 6b 7a 4c HfCuuCkslFJgNJQ72uA4.0Z0zPhX0kzL
15e4c0 46 41 4e 71 31 4b 57 59 4f 4f 6e 67 50 49 56 4a 66 41 75 57 53 65 79 58 54 6b 68 34 76 46 5a 32 FANq1KWYOOngPIVJfAuWSeyXTkh4vFZ2
15e4e0 42 35 4a 32 4f 36 4f 2b 4a 7a 68 52 4d 56 42 30 63 67 52 4a 4e 63 4b 69 2b 45 41 55 58 66 68 2f B5J2O6O+JzhRMVB0cgRJNcKi+EAUXfh/
15e500 52 0a 75 46 64 56 37 63 32 37 55 73 4b 77 48 6e 6a 43 54 54 5a 6f 79 31 59 6d 77 56 4c 42 76 58 R.uFdV7c27UsKwHnjCTTZoy1YmwVLBvX
15e520 62 33 57 4e 56 79 66 68 39 45 64 72 73 41 69 52 30 57 6e 56 45 31 37 30 33 43 56 75 39 72 34 49 b3WNVyfh9EdrsAiR0WnVE1703CVu9r4I
15e540 77 37 44 65 6b 43 41 77 45 41 41 61 4e 43 0a 4d 45 41 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 w7DekCAwEAAaNC.MEAwDwYDVR0TAQH/B
15e560 41 55 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 50 34 32 61 57 59 76 38 65 AUwAwEB/zAdBgNVHQ4EFgQUP42aWYv8e
15e580 33 75 63 6f 36 38 34 73 44 6e 74 6b 48 47 41 31 73 67 77 44 67 59 44 56 52 30 50 0a 41 51 48 2f 3uco684sDntkHGA1sgwDgYDVR0P.AQH/
15e5a0 42 41 51 44 41 67 45 47 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 42 BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IB
15e5c0 41 51 41 56 47 6e 34 54 69 72 6e 6f 42 36 4e 4c 4a 7a 4b 79 51 4a 48 79 49 64 46 6b 68 62 35 6a AQAVGn4TirnoB6NLJzKyQJHyIdFkhb5j
15e5e0 61 74 4c 50 67 63 49 56 0a 31 58 70 2b 44 43 6d 73 4e 78 34 63 66 48 5a 53 6c 64 71 31 66 79 4f atLPgcIV.1Xp+DCmsNx4cfHZSldq1fyO
15e600 68 4b 58 64 6c 79 54 4b 64 71 43 35 57 71 32 42 32 7a 68 61 30 6a 58 39 34 77 4e 57 5a 55 59 4e hKXdlyTKdqC5Wq2B2zha0jX94wNWZUYN
15e620 2f 58 74 6d 2b 44 4b 68 51 37 53 4c 48 72 51 56 4d 64 76 76 74 0a 37 68 35 48 5a 50 62 33 4a 33 /Xtm+DKhQ7SLHrQVMdvvt.7h5HZPb3J3
15e640 31 63 4b 41 39 46 78 56 78 69 58 71 61 61 6b 5a 47 33 55 78 63 75 33 4b 31 67 6e 5a 5a 6b 4f 62 1cKA9FxVxiXqaakZG3Uxcu3K1gnZZkOb
15e660 31 6e 61 4c 4b 75 42 63 74 4e 35 31 38 66 56 34 62 56 49 4a 77 6f 2b 32 38 54 4f 50 58 32 45 5a 1naLKuBctN518fV4bVIJwo+28TOPX2EZ
15e680 4c 32 0a 66 5a 6c 65 48 77 7a 6f 71 30 51 6b 4b 58 4a 41 50 54 5a 53 72 34 78 59 6b 48 50 42 37 L2.fZleHwzoq0QkKXJAPTZSr4xYkHPB7
15e6a0 47 45 73 65 61 48 73 68 37 55 2f 32 6b 33 5a 49 51 41 77 33 70 44 61 44 74 4d 61 53 4b 6b 2b 68 GEseaHsh7U/2k3ZIQAw3pDaDtMaSKk+h
15e6c0 51 73 55 69 34 79 38 51 5a 35 71 39 77 35 77 0a 77 44 58 33 4f 61 4a 64 5a 74 42 37 57 5a 2b 6f QsUi4y8QZ5q9w5w.wDX3OaJdZtB7WZ+o
15e6e0 52 78 4b 61 4a 79 4f 6b 4c 59 34 6e 67 35 49 67 6f 64 63 56 66 2f 45 75 47 4f 37 30 53 48 38 76 RxKaJyOkLY4ng5IgodcVf/EuGO70SH8v
15e700 66 2f 47 68 47 4c 57 68 43 35 53 67 59 69 41 79 6e 42 33 32 31 4f 2b 2f 54 49 68 6f 0a 2d 2d 2d f/GhGLWhC5SgYiAynB321O+/TIho.---
15e720 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 45 42 47 20 45 6c 65 6b --END.CERTIFICATE-----..EBG.Elek
15e740 74 72 6f 6e 69 6b 20 53 65 72 74 69 66 69 6b 61 20 48 69 7a 6d 65 74 20 53 61 5c 78 43 34 5c 78 tronik.Sertifika.Hizmet.Sa\xC4\x
15e760 39 46 6c 61 79 5c 78 63 34 5c 78 62 31 5c 78 36 33 5c 78 63 34 5c 78 62 31 73 5c 78 63 34 5c 78 9Flay\xc4\xb1\x63\xc4\xb1s\xc4\x
15e780 62 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d b1.=============================
15e7a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
15e7c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 =============.-----BEGIN.CERTIFI
15e7e0 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 35 7a 43 43 41 38 2b 67 41 77 49 42 41 67 49 49 54 4b CATE-----.MIIF5zCCA8+gAwIBAgIITK
15e800 39 7a 51 68 79 4f 64 41 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 67 59 9zQhyOdAIwDQYJKoZIhvcNAQEFBQAwgY
15e820 41 78 4f 44 41 32 42 67 4e 56 42 41 4d 4d 4c 30 56 43 52 79 42 46 0a 62 47 56 72 64 48 4a 76 62 AxODA2BgNVBAMML0VCRyBF.bGVrdHJvb
15e840 6d 6c 72 49 46 4e 6c 63 6e 52 70 5a 6d 6c 72 59 53 42 49 61 58 70 74 5a 58 51 67 55 32 48 45 6e mlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn
15e860 32 78 68 65 63 53 78 59 38 53 78 63 38 53 78 4d 54 63 77 4e 51 59 44 56 51 51 4b 44 43 35 46 51 2xhecSxY8Sxc8SxMTcwNQYDVQQKDC5FQ
15e880 6b 63 67 0a 51 6d 6c 73 61 63 57 66 61 57 30 67 56 47 56 72 62 6d 39 73 62 32 70 70 62 47 56 79 kcg.QmlsacWfaW0gVGVrbm9sb2ppbGVy
15e8a0 61 53 42 32 5a 53 42 49 61 58 70 74 5a 58 52 73 5a 58 4a 70 49 45 45 75 78 5a 34 75 4d 51 73 77 aSB2ZSBIaXptZXRsZXJpIEEuxZ4uMQsw
15e8c0 43 51 59 44 56 51 51 47 45 77 4a 55 55 6a 41 65 0a 46 77 30 77 4e 6a 41 34 4d 54 63 77 4d 44 49 CQYDVQQGEwJUUjAe.Fw0wNjA4MTcwMDI
15e8e0 78 4d 44 6c 61 46 77 30 78 4e 6a 41 34 4d 54 51 77 4d 44 4d 78 4d 44 6c 61 4d 49 47 41 4d 54 67 xMDlaFw0xNjA4MTQwMDMxMDlaMIGAMTg
15e900 77 4e 67 59 44 56 51 51 44 44 43 39 46 51 6b 63 67 52 57 78 6c 61 33 52 79 62 32 35 70 0a 61 79 wNgYDVQQDDC9FQkcgRWxla3Ryb25p.ay
15e920 42 54 5a 58 4a 30 61 57 5a 70 61 32 45 67 53 47 6c 36 62 57 56 30 49 46 4e 68 78 4a 39 73 59 58 BTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYX
15e940 6e 45 73 57 50 45 73 58 50 45 73 54 45 33 4d 44 55 47 41 31 55 45 43 67 77 75 52 55 4a 48 49 45 nEsWPEsXPEsTE3MDUGA1UECgwuRUJHIE
15e960 4a 70 62 47 6e 46 6e 32 6c 74 0a 49 46 52 6c 61 32 35 76 62 47 39 71 61 57 78 6c 63 6d 6b 67 64 JpbGnFn2lt.IFRla25vbG9qaWxlcmkgd
15e980 6d 55 67 53 47 6c 36 62 57 56 30 62 47 56 79 61 53 42 42 4c 73 57 65 4c 6a 45 4c 4d 41 6b 47 41 mUgSGl6bWV0bGVyaSBBLsWeLjELMAkGA
15e9a0 31 55 45 42 68 4d 43 56 46 49 77 67 67 49 69 4d 41 30 47 43 53 71 47 0a 53 49 62 33 44 51 45 42 1UEBhMCVFIwggIiMA0GCSqG.SIb3DQEB
15e9c0 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 44 75 6f 49 52 68 30 44 70 71 AQUAA4ICDwAwggIKAoICAQDuoIRh0Dpq
15e9e0 5a 68 41 79 32 44 45 34 66 36 65 6e 35 66 32 68 34 66 75 58 64 37 68 78 6c 75 67 54 6c 6b 61 44 ZhAy2DE4f6en5f2h4fuXd7hxlugTlkaD
15ea00 54 37 62 79 0a 58 33 4a 57 62 68 4e 67 70 51 47 52 34 6c 76 46 7a 56 63 66 64 32 4e 52 2f 79 38 T7by.X3JWbhNgpQGR4lvFzVcfd2NR/y8
15ea20 39 32 37 6b 2f 71 71 6b 31 35 33 6e 51 39 64 41 6b 74 69 48 71 36 79 4f 55 2f 69 6d 2f 2b 34 6d 927k/qqk153nQ9dAktiHq6yOU/im/+4m
15ea40 52 44 47 53 61 42 55 6f 72 7a 41 7a 75 38 54 32 62 0a 67 6d 6d 6b 54 50 69 61 62 2b 63 69 32 68 RDGSaBUorzAzu8T2b.gmmkTPiab+ci2h
15ea60 43 36 58 35 4c 38 47 43 63 4b 71 4b 70 45 2b 69 34 73 74 50 74 47 6d 67 67 44 67 33 4b 72 69 4f C6X5L8GCcKqKpE+i4stPtGmggDg3KriO
15ea80 52 71 63 73 6e 6c 5a 52 39 75 4b 67 2b 64 73 2b 67 37 35 41 78 75 65 74 70 58 2f 64 66 72 0a 65 RqcsnlZR9uKg+ds+g75AxuetpX/dfr.e
15eaa0 59 74 65 49 41 62 54 64 67 74 73 41 70 57 6a 6c 75 54 4c 64 6c 48 52 4b 4a 32 68 47 76 78 45 6f YteIAbTdgtsApWjluTLdlHRKJ2hGvxEo
15eac0 6b 33 4d 65 6e 61 6f 44 54 32 2f 46 30 38 69 69 46 44 39 72 72 62 73 6b 46 42 4b 57 35 2b 56 51 k3MenaoDT2/F08iiFD9rrbskFBKW5+VQ
15eae0 61 72 4b 44 37 4a 4b 2f 6f 43 5a 0a 54 71 4e 47 46 61 76 34 63 30 4a 71 77 6d 5a 32 73 51 6f 6d arKD7JK/oCZ.TqNGFav4c0JqwmZ2sQom
15eb00 46 64 32 54 6b 75 7a 62 71 56 39 55 49 6c 4b 52 63 46 30 54 36 6b 6a 73 62 67 4e 73 32 64 31 73 Fd2TkuzbqV9UIlKRcF0T6kjsbgNs2d1s
15eb20 2f 4f 73 4e 41 2f 2b 6d 67 78 4b 62 38 61 6d 54 44 38 55 6d 54 44 47 79 0a 59 35 6c 68 63 75 63 /OsNA/+mgxKb8amTD8UmTDGy.Y5lhcuc
15eb40 71 5a 4a 6e 53 75 4f 6c 31 34 6e 79 70 71 5a 6f 61 71 73 4e 57 32 78 43 61 50 49 4e 53 74 6e 75 qZJnSuOl14nypqZoaqsNW2xCaPINStnu
15eb60 57 74 36 79 48 64 36 69 35 38 6d 63 4c 6c 45 4f 7a 72 7a 35 7a 2b 6b 49 32 73 53 58 46 43 6a 45 Wt6yHd6i58mcLlEOzrz5z+kI2sSXFCjE
15eb80 6d 4e 31 5a 6e 0a 75 71 4d 4c 66 64 62 33 69 63 31 6e 6f 62 63 36 48 6d 5a 50 39 71 42 56 46 43 mN1Zn.uqMLfdb3ic1nobc6HmZP9qBVFC
15eba0 56 4d 4c 44 4d 4e 70 6b 47 4d 76 51 51 78 61 68 42 79 43 70 30 4f 4c 6e 61 39 58 76 4e 52 69 59 VMLDMNpkGMvQQxahByCp0OLna9XvNRiY
15ebc0 75 6f 50 31 56 7a 76 39 73 36 78 69 51 46 6c 70 4a 49 0a 71 6b 75 4e 4b 67 50 6c 56 35 45 51 39 uoP1Vzv9s6xiQFlpJI.qkuNKgPlV5EQ9
15ebe0 47 6f 6f 46 57 35 48 64 34 52 63 55 58 53 66 47 65 6e 6d 48 6d 4d 57 4f 65 4d 52 46 65 4e 59 47 GooFW5Hd4RcUXSfGenmHmMWOeMRFeNYG
15ec00 6b 53 39 79 38 52 73 5a 74 65 45 42 74 38 77 39 44 65 69 51 79 4a 35 30 68 42 73 33 37 76 6d 0a kS9y8RsZteEBt8w9DeiQyJ50hBs37vm.
15ec20 45 78 48 38 6e 59 51 4b 45 33 76 77 4f 39 44 38 6f 77 72 58 69 65 71 57 66 6f 31 49 68 52 35 6b ExH8nYQKE3vwO9D8owrXieqWfo1IhR5k
15ec40 58 39 74 55 6f 71 7a 56 65 67 4a 35 61 39 4b 4b 38 47 66 61 5a 58 49 4e 46 48 44 6b 36 59 35 34 X9tUoqzVegJ5a9KK8GfaZXINFHDk6Y54
15ec60 6a 7a 4a 30 66 46 66 79 31 74 62 30 0a 4e 6f 6b 62 2b 43 6c 73 69 37 6e 32 6c 39 47 6b 4c 71 71 jzJ0fFfy1tb0.Nokb+Clsi7n2l9GkLqq
15ec80 2b 43 78 6e 43 52 65 6c 77 58 51 49 44 41 4a 33 5a 6f 32 4d 77 59 54 41 50 42 67 4e 56 48 52 4d +CxnCRelwXQIDAJ3Zo2MwYTAPBgNVHRM
15eca0 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 34 47 41 31 55 64 44 77 45 42 0a 2f 77 51 45 41 77 BAf8EBTADAQH/MA4GA1UdDwEB./wQEAw
15ecc0 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 35 38 37 47 54 2f 77 57 5a 35 62 36 53 71 IBBjAdBgNVHQ4EFgQU587GT/wWZ5b6Sq
15ece0 4d 48 77 51 53 6e 79 32 72 65 32 6b 63 77 48 77 59 44 56 52 30 6a 42 42 67 77 46 6f 41 55 35 38 MHwQSny2re2kcwHwYDVR0jBBgwFoAU58
15ed00 37 47 54 2f 77 57 0a 5a 35 62 36 53 71 4d 48 77 51 53 6e 79 32 72 65 32 6b 63 77 44 51 59 4a 4b 7GT/wW.Z5b6SqMHwQSny2re2kcwDQYJK
15ed20 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 49 42 41 4a 75 59 6d 6c 32 2b 38 79 67 6a 64 oZIhvcNAQEFBQADggIBAJuYml2+8ygjd
15ed40 73 5a 73 39 33 2f 6d 51 4a 37 41 4e 74 79 56 44 52 32 74 0a 46 63 55 32 32 4e 55 35 37 2f 49 65 sZs93/mQJ7ANtyVDR2t.FcU22NU57/Ie
15ed60 49 6c 36 7a 67 72 52 64 75 30 77 61 79 70 49 4e 33 30 63 6b 48 72 4d 6b 32 70 47 49 36 59 4e 77 Il6zgrRdu0waypIN30ckHrMk2pGI6YNw
15ed80 33 5a 50 58 36 62 71 7a 33 78 5a 61 50 74 37 67 79 50 76 54 2f 57 77 70 2b 42 56 47 6f 47 67 6d 3ZPX6bqz3xZaPt7gyPvT/Wwp+BVGoGgm
15eda0 0a 7a 4a 4e 53 72 6f 49 42 6b 35 44 4b 64 38 70 4e 53 65 2f 69 57 74 6b 71 76 54 44 4f 54 4c 4b .zJNSroIBk5DKd8pNSe/iWtkqvTDOTLK
15edc0 42 74 6a 44 4f 57 55 2f 61 57 52 31 71 65 71 52 46 73 49 49 6d 67 59 5a 32 39 66 55 51 41 4c 6a BtjDOWU/aWR1qeqRFsIImgYZ29fUQALj
15ede0 75 73 77 6e 6f 54 34 63 43 42 36 34 6b 0a 58 50 42 66 72 41 6f 77 7a 49 70 41 6f 48 4d 45 77 66 uswnoT4cCB64k.XPBfrAowzIpAoHMEwf
15ee00 75 4a 4a 50 61 61 48 46 79 33 50 41 70 6e 4e 67 55 49 4d 62 4f 76 32 41 46 6f 4b 75 42 34 6a 33 uJJPaaHFy3PApnNgUIMbOv2AFoKuB4j3
15ee20 54 65 75 46 47 6b 6a 47 77 67 50 61 4c 37 73 39 51 4a 2f 58 76 43 67 4b 71 54 0a 62 43 6d 59 49 TeuFGkjGwgPaL7s9QJ/XvCgKqT.bCmYI
15ee40 61 69 37 46 76 4f 70 45 6c 39 30 74 59 65 59 38 70 55 6d 33 7a 54 76 69 6c 4f 52 69 46 30 61 6c ai7FvOpEl90tYeY8pUm3zTvilORiF0al
15ee60 4b 4d 2f 66 43 4c 34 31 34 69 36 70 6f 79 57 71 44 31 53 4e 47 4b 66 41 42 35 55 56 55 4a 6e 78 KM/fCL414i6poyWqD1SNGKfAB5UVUJnx
15ee80 6b 31 47 6a 37 73 55 0a 52 54 30 4b 6c 68 61 4f 45 4b 47 58 6d 64 58 54 4d 49 58 4d 33 72 52 79 k1Gj7sU.RT0KlhaOEKGXmdXTMIXM3rRy
15eea0 74 37 79 4b 50 42 67 70 61 50 33 63 63 51 66 75 4a 44 6c 71 2b 75 32 6c 72 44 67 76 2b 52 34 51 t7yKPBgpaP3ccQfuJDlq+u2lrDgv+R4Q
15eec0 44 67 5a 78 47 68 42 4d 2f 6e 56 2b 2f 78 35 58 4f 55 4c 4b 0a 31 2b 45 56 6f 56 5a 56 57 52 76 DgZxGhBM/nV+/x5XOULK.1+EVoVZVWRv
15eee0 52 6f 36 38 52 32 45 37 44 70 53 76 76 6b 4c 2f 41 37 49 49 54 57 34 33 57 63 69 79 54 54 6f 39 Ro68R2E7DpSvvkL/A7IITW43WciyTTo9
15ef00 71 4b 64 2b 46 50 4e 4d 4e 34 4b 49 59 45 73 78 56 4c 30 65 33 70 35 73 43 2f 6b 48 32 69 45 78 qKd+FPNMN4KIYEsxVL0e3p5sC/kH2iEx
15ef20 74 0a 32 71 6b 42 52 34 4e 6b 4a 32 49 51 67 74 59 53 65 31 34 44 48 7a 53 70 79 5a 48 2b 72 31 t.2qkBR4NkJ2IQgtYSe14DHzSpyZH+r1
15ef40 31 74 68 69 65 33 49 36 70 31 47 4d 6f 67 35 37 41 50 31 34 6b 4f 70 6d 63 69 59 2f 53 44 51 53 1thie3I6p1GMog57AP14kOpmciY/SDQS
15ef60 73 47 53 37 74 59 31 64 48 58 74 37 6b 51 0a 59 39 69 4a 53 72 53 71 33 52 5a 6a 39 57 36 2b 59 sGS7tY1dHXt7kQ.Y9iJSrSq3RZj9W6+Y
15ef80 4b 48 34 37 65 6a 57 6b 45 38 61 78 73 57 67 4b 64 4f 6e 49 61 6a 31 57 6a 7a 33 78 30 6d 69 49 KH47ejWkE8axsWgKdOnIaj1Wjz3x0miI
15efa0 5a 70 4b 6c 56 49 67 6c 6e 4b 61 5a 73 76 33 30 6f 5a 44 66 43 4b 2b 6c 76 6d 39 0a 41 61 68 48 ZpKlVIglnKaZsv30oZDfCK+lvm9.AahH
15efc0 33 65 55 37 51 50 6c 31 4b 35 73 72 52 6d 53 47 6a 52 37 30 6a 2f 73 48 64 39 44 71 53 61 49 63 3eU7QPl1K5srRmSGjR70j/sHd9DqSaIc
15efe0 6a 56 49 55 70 67 71 54 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d jVIUpgqT.-----END.CERTIFICATE---
15f000 2d 2d 0a 0a 63 65 72 74 53 49 47 4e 20 52 4f 4f 54 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d --..certSIGN.ROOT.CA.===========
15f020 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d =====.-----BEGIN.CERTIFICATE----
15f040 2d 0a 4d 49 49 44 4f 44 43 43 41 69 43 67 41 77 49 42 41 67 49 47 49 41 59 46 46 6e 41 43 4d 41 -.MIIDODCCAiCgAwIBAgIGIAYFFnACMA
15f060 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 4d 44 73 78 43 7a 41 4a 42 67 4e 56 42 41 0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBA
15f080 59 54 41 6c 4a 50 4d 52 45 77 44 77 59 44 0a 56 51 51 4b 45 77 68 6a 5a 58 4a 30 55 30 6c 48 54 YTAlJPMREwDwYD.VQQKEwhjZXJ0U0lHT
15f0a0 6a 45 5a 4d 42 63 47 41 31 55 45 43 78 4d 51 59 32 56 79 64 46 4e 4a 52 30 34 67 55 6b 39 50 56 jEZMBcGA1UECxMQY2VydFNJR04gUk9PV
15f0c0 43 42 44 51 54 41 65 46 77 30 77 4e 6a 41 33 4d 44 51 78 4e 7a 49 77 4d 44 52 61 0a 46 77 30 7a CBDQTAeFw0wNjA3MDQxNzIwMDRa.Fw0z
15f0e0 4d 54 41 33 4d 44 51 78 4e 7a 49 77 4d 44 52 61 4d 44 73 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 MTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYT
15f100 41 6c 4a 50 4d 52 45 77 44 77 59 44 56 51 51 4b 45 77 68 6a 5a 58 4a 30 55 30 6c 48 54 6a 45 5a AlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZ
15f120 4d 42 63 47 41 31 55 45 0a 43 78 4d 51 59 32 56 79 64 46 4e 4a 52 30 34 67 55 6b 39 50 56 43 42 MBcGA1UE.CxMQY2VydFNJR04gUk9PVCB
15f140 44 51 54 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 DQTCCASIwDQYJKoZIhvcNAQEBBQADggE
15f160 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4c 63 7a 75 58 37 49 0a 4a 55 71 4f 74 64 75 30 4b 42 PADCCAQoCggEBALczuX7I.JUqOtdu0KB
15f180 75 71 56 35 44 6f 30 53 4c 54 5a 4c 72 54 6b 2b 6a 55 72 49 5a 68 51 47 70 67 56 32 68 55 68 45 uqV5Do0SLTZLrTk+jUrIZhQGpgV2hUhE
15f1a0 32 38 61 6c 51 43 42 66 2f 66 6d 35 6f 71 72 6c 30 48 6a 30 72 44 4b 48 2f 76 2b 79 76 36 65 66 28alQCBf/fm5oqrl0Hj0rDKH/v+yv6ef
15f1c0 48 48 0a 72 66 41 51 55 79 53 51 69 32 62 4a 71 49 69 72 72 31 71 6a 41 4f 6d 2b 75 6b 62 75 57 HH.rfAQUySQi2bJqIirr1qjAOm+ukbuW
15f1e0 33 4e 37 4c 42 65 43 67 56 35 69 4c 4b 45 43 5a 62 4f 39 78 53 73 41 66 73 54 38 41 7a 4e 58 44 3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXD
15f200 65 33 69 2b 73 35 64 52 64 59 34 7a 54 57 32 0a 73 73 48 51 6e 49 46 4b 71 75 53 79 41 56 77 64 e3i+s5dRdY4zTW2.ssHQnIFKquSyAVwd
15f220 6a 31 2b 5a 78 4c 47 74 32 34 67 68 36 35 41 49 67 6f 44 7a 4d 4b 4e 44 35 70 43 43 72 6c 55 6f j1+ZxLGt24gh65AIgoDzMKND5pCCrlUo
15f240 53 65 31 62 31 36 6b 51 4f 41 37 2b 6a 30 78 62 6d 30 62 71 51 66 57 77 43 48 54 44 0a 30 49 67 Se1b16kQOA7+j0xbm0bqQfWwCHTD.0Ig
15f260 7a 74 6e 7a 58 64 4e 2f 63 68 4e 46 44 44 6e 55 35 6f 53 56 41 4b 4f 70 34 79 77 34 73 4c 6a 6d ztnzXdN/chNFDDnU5oSVAKOp4yw4sLjm
15f280 64 6a 49 74 75 46 68 77 76 4a 6f 49 51 34 75 4e 6c 6c 41 6f 45 77 46 37 33 58 56 76 34 45 4f 4c djItuFhwvJoIQ4uNllAoEwF73XVv4EOL
15f2a0 51 75 6e 70 4c 2b 39 34 33 0a 41 41 41 61 57 79 6a 6a 30 70 78 7a 50 6a 4b 48 6d 4b 48 4a 55 53 QunpL+943.AAAaWyjj0pxzPjKHmKHJUS
15f2c0 2f 58 33 71 77 7a 73 30 38 43 41 77 45 41 41 61 4e 43 4d 45 41 77 44 77 59 44 56 52 30 54 41 51 /X3qwzs08CAwEAAaNCMEAwDwYDVR0TAQ
15f2e0 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 0a 41 66 38 45 42 41 4d 43 41 H/BAUwAwEB/zAOBgNVHQ8B.Af8EBAMCA
15f300 63 59 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4f 43 4d 6d 39 73 6c 53 62 50 78 66 49 62 57 73 cYwHQYDVR0OBBYEFOCMm9slSbPxfIbWs
15f320 6b 4b 48 43 39 42 72 6f 4e 6e 6b 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 41 kKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA
15f340 34 49 42 0a 41 51 41 2b 30 68 79 4a 4c 6a 58 38 2b 48 58 64 35 6e 39 6c 69 50 52 79 54 4d 6b 73 4IB.AQA+0hyJLjX8+HXd5n9liPRyTMks
15f360 31 7a 4a 4f 38 39 30 5a 65 55 65 39 6a 6a 74 62 6b 77 39 51 53 53 51 54 61 78 51 47 63 75 38 4a 1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J
15f380 30 36 47 68 34 30 43 45 79 65 63 59 4d 6e 51 38 0a 53 47 34 50 6e 30 76 55 39 78 37 54 6b 34 5a 06Gh40CEyecYMnQ8.SG4Pn0vU9x7Tk4Z
15f3a0 6b 56 4a 64 6a 63 6c 44 56 56 63 2f 36 49 4a 4d 43 6f 70 76 44 49 35 4e 4f 46 6c 56 32 6f 48 42 kVJdjclDVVc/6IJMCopvDI5NOFlV2oHB
15f3c0 35 62 63 30 68 48 38 38 76 4c 62 77 5a 34 34 67 78 2b 46 6b 61 67 51 6e 49 6c 36 5a 30 0a 78 32 5bc0hH88vLbwZ44gx+FkagQnIl6Z0.x2
15f3e0 44 45 57 38 78 58 6a 72 4a 31 2f 52 73 43 43 64 74 5a 62 33 4b 54 61 66 63 78 51 64 61 49 4f 4c DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL
15f400 2b 48 73 72 30 57 65 66 6d 71 35 4c 36 49 4a 64 31 68 4a 79 4d 63 74 54 45 48 42 44 61 30 47 70 +Hsr0Wefmq5L6IJd1hJyMctTEHBDa0Gp
15f420 43 39 6f 48 52 78 55 49 6c 74 0a 76 42 54 6a 44 34 61 75 38 61 73 2b 78 36 41 4a 7a 4b 4e 49 30 C9oHRxUIlt.vBTjD4au8as+x6AJzKNI0
15f440 65 44 62 5a 4f 65 53 74 63 2b 76 63 6b 4e 77 69 2f 6e 44 68 44 77 54 71 6e 36 53 6d 31 64 54 6b eDbZOeStc+vckNwi/nDhDwTqn6Sm1dTk
15f460 2f 70 77 77 70 45 4f 4d 66 6d 62 5a 31 33 70 6c 6a 68 65 58 37 4e 7a 0a 54 6f 67 56 5a 39 36 65 /pwwpEOMfmbZ13pljheX7Nz.TogVZ96e
15f480 64 68 42 69 49 4c 35 56 61 5a 56 44 41 44 6c 4e 39 75 36 77 57 6b 35 4a 52 46 52 59 58 30 4b 44 dhBiIL5VaZVDADlN9u6wWk5JRFRYX0KD
15f4a0 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 4e 4e 49 .-----END.CERTIFICATE-----..CNNI
15f4c0 43 20 52 4f 4f 54 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 C.ROOT.==========.-----BEGIN.CER
15f4e0 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 56 54 43 43 41 6a 32 67 41 77 49 42 41 67 TIFICATE-----.MIIDVTCCAj2gAwIBAg
15f500 49 45 53 54 4d 41 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 41 79 4d 51 IESTMAATANBgkqhkiG9w0BAQUFADAyMQ
15f520 73 77 43 51 59 44 56 51 51 47 45 77 4a 44 54 6a 45 4f 4d 41 77 47 41 31 55 45 0a 43 68 4d 46 51 swCQYDVQQGEwJDTjEOMAwGA1UE.ChMFQ
15f540 30 35 4f 53 55 4d 78 45 7a 41 52 42 67 4e 56 42 41 4d 54 43 6b 4e 4f 54 6b 6c 44 49 46 4a 50 54 05OSUMxEzARBgNVBAMTCkNOTklDIFJPT
15f560 31 51 77 48 68 63 4e 4d 44 63 77 4e 44 45 32 4d 44 63 77 4f 54 45 30 57 68 63 4e 4d 6a 63 77 4e 1QwHhcNMDcwNDE2MDcwOTE0WhcNMjcwN
15f580 44 45 32 4d 44 63 77 0a 4f 54 45 30 57 6a 41 79 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 44 DE2MDcw.OTE0WjAyMQswCQYDVQQGEwJD
15f5a0 54 6a 45 4f 4d 41 77 47 41 31 55 45 43 68 4d 46 51 30 35 4f 53 55 4d 78 45 7a 41 52 42 67 4e 56 TjEOMAwGA1UEChMFQ05OSUMxEzARBgNV
15f5c0 42 41 4d 54 43 6b 4e 4f 54 6b 6c 44 49 46 4a 50 54 31 51 77 0a 67 67 45 69 4d 41 30 47 43 53 71 BAMTCkNOTklDIFJPT1Qw.ggEiMA0GCSq
15f5e0 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 44 GSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD
15f600 54 4e 66 63 2f 63 33 65 74 36 46 74 7a 46 38 4c 52 62 2b 31 56 76 47 37 71 36 4b 52 35 73 6d 7a TNfc/c3et6FtzF8LRb+1VvG7q6KR5smz
15f620 44 0a 6f 2b 2f 68 6e 37 45 37 53 49 58 31 6d 6c 77 68 49 68 41 73 78 59 4c 4f 32 75 4f 61 62 6a D.o+/hn7E7SIX1mlwhIhAsxYLO2uOabj
15f640 66 68 68 79 7a 63 75 51 78 61 75 6f 68 56 33 2f 32 71 32 78 38 78 36 67 48 78 33 7a 6b 42 77 52 fhhyzcuQxauohV3/2q2x8x6gHx3zkBwR
15f660 50 39 53 46 49 68 78 46 58 66 32 74 69 7a 0a 56 48 61 36 64 4c 47 33 66 64 66 41 36 50 5a 5a 78 P9SFIhxFXf2tiz.VHa6dLG3fdfA6PZZx
15f680 55 33 49 76 61 30 66 46 4e 72 66 57 45 51 6c 4d 68 6b 71 78 33 35 2b 6a 71 34 34 73 44 42 37 52 U3Iva0fFNrfWEQlMhkqx35+jq44sDB7R
15f6a0 33 49 4a 4d 66 41 77 32 38 4d 62 64 69 6d 37 61 58 5a 4f 56 2f 6b 62 5a 4b 4b 54 0a 56 72 64 76 3IJMfAw28Mbdim7aXZOV/kbZKKT.Vrdv
15f6c0 6d 57 37 62 43 67 53 63 45 65 4f 41 48 38 74 6a 6c 42 41 4b 71 65 46 6b 67 6a 48 35 6a 43 66 74 mW7bCgScEeOAH8tjlBAKqeFkgjH5jCft
15f6e0 70 70 6b 41 39 6e 43 54 47 50 69 68 4e 49 61 6a 33 58 72 43 47 48 6e 32 65 6d 55 31 7a 35 44 72 ppkA9nCTGPihNIaj3XrCGHn2emU1z5Dr
15f700 76 54 4f 54 6e 31 4f 72 0a 63 7a 76 6d 6d 7a 51 67 4c 78 33 76 71 52 31 6a 47 71 43 41 32 77 4d vTOTn1Or.czvmmzQgLx3vqR1jGqCA2wM
15f720 76 2b 53 59 61 68 74 4b 4e 75 36 6d 2b 55 6a 71 48 5a 30 67 4e 76 37 53 67 32 43 61 2b 49 31 39 v+SYahtKNu6m+UjqHZ0gNv7Sg2Ca+I19
15f740 7a 4e 33 38 6d 35 70 49 45 6f 33 2f 50 49 4b 65 33 38 7a 72 4b 0a 79 35 6e 4c 41 67 4d 42 41 41 zN38m5pIEo3/PIKe38zrK.y5nLAgMBAA
15f760 47 6a 63 7a 42 78 4d 42 45 47 43 57 43 47 53 41 47 47 2b 45 49 42 41 51 51 45 41 77 49 41 42 7a GjczBxMBEGCWCGSAGG+EIBAQQEAwIABz
15f780 41 66 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 52 6c 38 6a 47 74 4b 76 66 33 33 56 4b 57 43 73 AfBgNVHSMEGDAWgBRl8jGtKvf33VKWCs
15f7a0 63 43 0a 77 51 37 76 70 74 55 37 45 54 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 cC.wQ7vptU7ETAPBgNVHRMBAf8EBTADA
15f7c0 51 48 2f 4d 41 73 47 41 31 55 64 44 77 51 45 41 77 49 42 2f 6a 41 64 42 67 4e 56 48 51 34 45 46 QH/MAsGA1UdDwQEAwIB/jAdBgNVHQ4EF
15f7e0 67 51 55 5a 66 49 78 72 53 72 33 39 39 31 53 0a 6c 67 72 48 41 73 45 4f 37 36 62 56 4f 78 45 77 gQUZfIxrSr3991S.lgrHAsEO76bVOxEw
15f800 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 45 73 31 37 73 7a 6b DQYJKoZIhvcNAQEFBQADggEBAEs17szk
15f820 72 72 2f 44 62 71 32 66 6c 54 74 4c 50 31 73 65 33 31 63 70 6f 6c 6e 4b 4f 4f 4b 35 0a 47 76 2b rr/Dbq2flTtLP1se31cpolnKOOK5.Gv+
15f840 65 35 6d 34 79 33 52 36 75 36 6a 57 33 39 5a 4f 52 54 74 70 43 34 63 4d 58 59 46 44 79 30 56 77 e5m4y3R6u6jW39ZORTtpC4cMXYFDy0Vw
15f860 6d 75 59 4b 33 36 6d 33 6b 6e 49 54 6e 41 33 6b 58 72 35 67 39 6c 4e 76 48 75 67 44 6e 75 4c 38 muYK36m3knITnA3kXr5g9lNvHugDnuL8
15f880 42 56 38 46 33 52 54 49 4d 0a 4f 2f 47 30 48 41 69 77 2f 56 47 67 6f 64 32 61 48 52 4d 32 6d 6d BV8F3RTIM.O/G0HAiw/VGgod2aHRM2mm
15f8a0 32 33 78 7a 79 35 34 63 58 5a 46 2f 71 44 31 54 30 56 6f 44 79 37 48 67 76 69 79 4a 41 2f 71 49 23xzy54cXZF/qD1T0VoDy7HgviyJA/qI
15f8c0 59 4d 2f 50 6d 4c 58 6f 58 4c 54 31 74 4c 59 68 46 48 78 55 56 38 0a 42 53 39 42 73 5a 34 51 61 YM/PmLXoXLT1tLYhFHxUV8.BS9BsZ4Qa
15f8e0 52 75 5a 6c 75 42 56 65 66 74 4f 68 70 6d 34 6c 4e 71 47 4f 47 71 54 6f 2b 66 4c 62 75 58 66 36 RuZluBVeftOhpm4lNqGOGqTo+fLbuXf6
15f900 69 46 56 69 5a 78 39 66 58 2b 59 39 51 43 4a 37 75 4f 45 77 46 79 57 74 63 56 47 36 6b 62 67 68 iFViZx9fX+Y9QCJ7uOEwFyWtcVG6kbgh
15f920 56 57 32 0a 47 38 6b 53 31 73 48 4e 7a 59 44 7a 41 67 45 38 79 47 6e 4c 52 55 68 6a 32 4a 54 51 VW2.G8kS1sHNzYDzAgE8yGnLRUhj2JTQ
15f940 37 49 55 4f 4f 30 34 52 5a 66 53 43 6a 4b 59 39 72 69 34 69 6c 41 6e 49 58 4f 6f 38 67 56 30 57 7IUOO04RZfSCjKY9ri4ilAnIXOo8gV0W
15f960 4b 67 4f 58 46 6c 55 4a 32 34 70 42 67 70 35 6d 0a 6d 78 45 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 KgOXFlUJ24pBgp5m.mxE=.-----END.C
15f980 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 41 70 70 6c 69 63 61 74 69 6f 6e 43 41 20 2d ERTIFICATE-----..ApplicationCA.-
15f9a0 20 4a 61 70 61 6e 65 73 65 20 47 6f 76 65 72 6e 6d 65 6e 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .Japanese.Government.===========
15f9c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 ========================.-----BE
15f9e0 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 6f 44 43 43 41 6f 69 GIN.CERTIFICATE-----.MIIDoDCCAoi
15fa00 67 41 77 49 42 41 67 49 42 4d 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 gAwIBAgIBMTANBgkqhkiG9w0BAQUFADB
15fa20 44 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4b 55 44 45 63 4d 42 6f 47 41 31 55 45 43 68 4d DMQswCQYDVQQGEwJKUDEcMBoGA1UEChM
15fa40 54 0a 53 6d 46 77 59 57 35 6c 63 32 55 67 52 32 39 32 5a 58 4a 75 62 57 56 75 64 44 45 57 4d 42 T.SmFwYW5lc2UgR292ZXJubWVudDEWMB
15fa60 51 47 41 31 55 45 43 78 4d 4e 51 58 42 77 62 47 6c 6a 59 58 52 70 62 32 35 44 51 54 41 65 46 77 QGA1UECxMNQXBwbGljYXRpb25DQTAeFw
15fa80 30 77 4e 7a 45 79 4d 54 49 78 4e 54 41 77 0a 4d 44 42 61 46 77 30 78 4e 7a 45 79 4d 54 49 78 4e 0wNzEyMTIxNTAw.MDBaFw0xNzEyMTIxN
15faa0 54 41 77 4d 44 42 61 4d 45 4d 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 70 51 4d 52 77 77 47 TAwMDBaMEMxCzAJBgNVBAYTAkpQMRwwG
15fac0 67 59 44 56 51 51 4b 45 78 4e 4b 59 58 42 68 62 6d 56 7a 5a 53 42 48 62 33 5a 6c 0a 63 6d 35 74 gYDVQQKExNKYXBhbmVzZSBHb3Zl.cm5t
15fae0 5a 57 35 30 4d 52 59 77 46 41 59 44 56 51 51 4c 45 77 31 42 63 48 42 73 61 57 4e 68 64 47 6c 76 ZW50MRYwFAYDVQQLEw1BcHBsaWNhdGlv
15fb00 62 6b 4e 42 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 bkNBMIIBIjANBgkqhkiG9w0BAQEFAAOC
15fb20 41 51 38 41 4d 49 49 42 0a 43 67 4b 43 41 51 45 41 70 32 33 67 64 45 36 48 6a 36 55 47 33 6d 69 AQ8AMIIB.CgKCAQEAp23gdE6Hj6UG3mi
15fb40 69 32 34 61 5a 53 32 51 4e 63 66 41 4b 42 5a 75 4f 71 75 48 4d 4c 74 4a 71 4f 38 46 36 74 4a 64 i24aZS2QNcfAKBZuOquHMLtJqO8F6tJd
15fb60 68 6a 59 71 2b 78 70 71 63 42 72 53 47 55 65 51 33 44 6e 52 34 0a 66 6c 2b 4b 66 35 53 6b 31 30 hjYq+xpqcBrSGUeQ3DnR4.fl+Kf5Sk10
15fb80 63 49 2f 56 42 61 56 75 52 6f 72 43 68 7a 6f 48 76 70 66 78 69 53 51 45 38 74 6e 66 57 75 52 45 cI/VBaVuRorChzoHvpfxiSQE8tnfWuRE
15fba0 68 7a 4e 67 61 65 5a 43 77 37 4e 43 50 62 58 43 62 6b 63 58 6d 50 31 47 35 35 49 72 6d 54 77 63 hzNgaeZCw7NCPbXCbkcXmP1G55IrmTwc
15fbc0 72 4e 0a 77 56 62 74 69 47 72 58 6f 44 6b 68 42 46 63 73 6f 76 57 38 52 30 46 50 58 6a 51 69 6c rN.wVbtiGrXoDkhBFcsovW8R0FPXjQil
15fbe0 62 55 66 4b 57 31 65 53 76 4e 4e 63 72 35 42 56 69 43 48 2f 4f 6c 51 52 39 63 77 46 4f 35 63 6a bUfKW1eSvNNcr5BViCH/OlQR9cwFO5cj
15fc00 46 57 36 57 59 32 48 2f 43 50 65 6b 39 41 45 0a 6a 50 33 76 62 62 33 51 65 73 6d 6c 4f 6d 70 79 FW6WY2H/CPek9AE.jP3vbb3QesmlOmpy
15fc20 4d 38 5a 4b 44 51 55 58 4b 69 31 37 73 61 66 59 31 76 43 2b 39 44 2f 71 44 69 68 74 51 57 45 6a M8ZKDQUXKi17safY1vC+9D/qDihtQWEj
15fc40 64 6e 6a 44 75 47 57 6b 38 31 71 75 7a 4d 4b 71 32 65 64 59 33 72 5a 2b 6e 59 56 75 0a 6e 79 6f dnjDuGWk81quzMKq2edY3rZ+nYVu.nyo
15fc60 4b 62 35 38 44 4b 54 43 58 4b 42 32 38 74 38 39 55 4b 55 35 52 4d 66 6b 6e 74 69 67 6d 2f 71 4a Kb58DKTCXKB28t89UKU5RMfkntigm/qJ
15fc80 6a 35 6b 45 57 38 44 4f 59 52 77 49 44 41 51 41 42 6f 34 47 65 4d 49 47 62 4d 42 30 47 41 31 55 j5kEW8DOYRwIDAQABo4GeMIGbMB0GA1U
15fca0 64 44 67 51 57 42 42 52 55 0a 57 73 73 6d 50 33 48 4d 6c 45 59 4e 6c 6c 50 71 61 30 6a 51 6b 2f dDgQWBBRU.WssmP3HMlEYNllPqa0jQk/
15fcc0 35 43 64 54 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 57 51 59 44 56 52 5CdTAOBgNVHQ8BAf8EBAMCAQYwWQYDVR
15fce0 30 52 42 46 49 77 55 4b 52 4f 4d 45 77 78 43 7a 41 4a 42 67 4e 56 0a 42 41 59 54 41 6b 70 51 4d 0RBFIwUKROMEwxCzAJBgNV.BAYTAkpQM
15fd00 52 67 77 46 67 59 44 56 51 51 4b 44 41 2f 6d 6c 36 58 6d 6e 4b 7a 6c 6d 37 33 6d 6c 4c 2f 6c 75 RgwFgYDVQQKDA/ml6XmnKzlm73mlL/lu
15fd20 70 77 78 49 7a 41 68 42 67 4e 56 42 41 73 4d 47 75 4f 43 6f 75 4f 44 6c 2b 4f 44 71 75 4f 43 73 pwxIzAhBgNVBAsMGuOCouODl+ODquOCs
15fd40 65 4f 44 0a 76 4f 4f 43 74 2b 4f 44 70 2b 4f 44 73 30 4e 42 4d 41 38 47 41 31 55 64 45 77 45 42 eOD.vOOCt+ODp+ODs0NBMA8GA1UdEwEB
15fd60 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 /wQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
15fd80 67 67 45 42 41 44 6c 71 52 48 5a 33 4f 44 72 73 0a 6f 32 64 47 44 2f 6d 4c 42 71 6a 37 61 70 41 ggEBADlqRHZ3ODrs.o2dGD/mLBqj7apA
15fda0 78 7a 6e 37 73 32 74 47 4a 66 48 72 72 4c 67 79 39 6d 54 4c 6e 73 43 54 57 77 2f 2f 31 73 6f 67 xzn7s2tGJfHrrLgy9mTLnsCTWw//1sog
15fdc0 4a 68 79 7a 6a 56 4f 47 6a 70 72 49 49 43 38 43 46 71 4d 6a 53 6e 48 48 32 48 5a 39 67 0a 2f 44 JhyzjVOGjprIIC8CFqMjSnHH2HZ9g./D
15fde0 67 7a 45 2b 47 65 33 41 74 66 32 68 5a 51 4b 58 73 76 63 4a 45 50 6d 62 6f 30 4e 49 32 56 64 4d gzE+Ge3Atf2hZQKXsvcJEPmbo0NI2VdM
15fe00 56 2b 65 4b 6c 6d 58 62 33 4b 49 58 64 43 45 4b 78 6d 4a 6a 33 65 6b 61 76 39 46 66 42 76 37 57 V+eKlmXb3KIXdCEKxmJj3ekav9FfBv7W
15fe20 78 66 45 50 6a 7a 46 76 59 44 0a 69 6f 2b 6e 45 68 45 4d 79 2f 30 2f 65 63 47 63 2f 57 4c 75 6f xfEPjzFvYD.io+nEhEMy/0/ecGc/WLuo
15fe40 38 39 55 44 4e 45 72 58 78 63 2b 34 7a 36 2f 77 43 73 2b 43 5a 76 2b 69 4b 5a 2b 74 4a 49 58 2f 89UDNErXxc+4z6/wCs+CZv+iKZ+tJIX/
15fe60 43 4f 55 67 62 31 75 70 38 57 4d 77 75 73 52 52 64 76 34 51 63 6d 57 0a 64 75 70 77 58 33 6b 53 COUgb1up8WMwusRRdv4QcmW.dupwX3kS
15fe80 61 2b 53 6a 42 31 6f 46 37 79 64 4a 7a 79 47 66 69 6b 77 4a 63 47 61 70 4a 73 45 72 45 55 34 7a a+SjB1oF7ydJzyGfikwJcGapJsErEU4z
15fea0 30 67 37 38 31 6d 7a 53 44 6a 4a 6b 61 50 2b 74 42 58 68 66 41 78 32 6f 34 35 43 73 4a 4f 41 50 0g781mzSDjJkaP+tBXhfAx2o45CsJOAP
15fec0 51 4b 64 4c 0a 72 6f 73 6f 74 34 4c 4b 47 41 66 6d 74 31 74 30 36 53 41 5a 66 37 49 62 69 56 51 QKdL.rosot4LKGAfmt1t06SAZf7IbiVQ
15fee0 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 65 6f =.-----END.CERTIFICATE-----..Geo
15ff00 54 72 75 73 74 20 50 72 69 6d 61 72 79 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 Trust.Primary.Certification.Auth
15ff20 6f 72 69 74 79 20 2d 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ority.-.G3.=====================
15ff40 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 ========================.-----BE
15ff60 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 2f 6a 43 43 41 75 61 GIN.CERTIFICATE-----.MIID/jCCAua
15ff80 67 41 77 49 42 41 67 49 51 46 61 78 75 6c 42 6d 79 65 55 74 42 39 69 65 70 77 78 67 50 48 7a 41 gAwIBAgIQFaxulBmyeUtB9iepwxgPHzA
15ffa0 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 43 42 6d 44 45 4c 4d 41 6b 47 41 31 55 NBgkqhkiG9w0BAQsFADCBmDELMAkGA1U
15ffc0 45 0a 42 68 4d 43 56 56 4d 78 46 6a 41 55 42 67 4e 56 42 41 6f 54 44 55 64 6c 62 31 52 79 64 58 E.BhMCVVMxFjAUBgNVBAoTDUdlb1RydX
15ffe0 4e 30 49 45 6c 75 59 79 34 78 4f 54 41 33 42 67 4e 56 42 41 73 54 4d 43 68 6a 4b 53 41 79 4d 44 N0IEluYy4xOTA3BgNVBAsTMChjKSAyMD
160000 41 34 49 45 64 6c 62 31 52 79 64 58 4e 30 0a 49 45 6c 75 59 79 34 67 4c 53 42 47 62 33 49 67 59 A4IEdlb1RydXN0.IEluYy4gLSBGb3IgY
160020 58 56 30 61 47 39 79 61 58 70 6c 5a 43 42 31 63 32 55 67 62 32 35 73 65 54 45 32 4d 44 51 47 41 XV0aG9yaXplZCB1c2Ugb25seTE2MDQGA
160040 31 55 45 41 78 4d 74 52 32 56 76 56 48 4a 31 63 33 51 67 55 48 4a 70 62 57 46 79 0a 65 53 42 44 1UEAxMtR2VvVHJ1c3QgUHJpbWFy.eSBD
160060 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 53 41 74 ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAt
160080 49 45 63 7a 4d 42 34 58 44 54 41 34 4d 44 51 77 4d 6a 41 77 4d 44 41 77 4d 46 6f 58 44 54 4d 33 IEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3
1600a0 4d 54 49 77 4d 54 49 7a 0a 4e 54 6b 31 4f 56 6f 77 67 5a 67 78 43 7a 41 4a 42 67 4e 56 42 41 59 MTIwMTIz.NTk1OVowgZgxCzAJBgNVBAY
1600c0 54 41 6c 56 54 4d 52 59 77 46 41 59 44 56 51 51 4b 45 77 31 48 5a 57 39 55 63 6e 56 7a 64 43 42 TAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCB
1600e0 4a 62 6d 4d 75 4d 54 6b 77 4e 77 59 44 56 51 51 4c 45 7a 41 6f 0a 59 79 6b 67 4d 6a 41 77 4f 43 JbmMuMTkwNwYDVQQLEzAo.YykgMjAwOC
160100 42 48 5a 57 39 55 63 6e 56 7a 64 43 42 4a 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 BHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dG
160120 68 76 63 6d 6c 36 5a 57 51 67 64 58 4e 6c 49 47 39 75 62 48 6b 78 4e 6a 41 30 42 67 4e 56 42 41 hvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBA
160140 4d 54 0a 4c 55 64 6c 62 31 52 79 64 58 4e 30 49 46 42 79 61 57 31 68 63 6e 6b 67 51 32 56 79 64 MT.LUdlb1RydXN0IFByaW1hcnkgQ2Vyd
160160 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 67 4c 53 42 48 4d GlmaWNhdGlvbiBBdXRob3JpdHkgLSBHM
160180 7a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 0a 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 zCCASIwDQYJKoZI.hvcNAQEBBQADggEP
1601a0 41 44 43 43 41 51 6f 43 67 67 45 42 41 4e 7a 69 58 6d 4a 59 48 54 4e 58 4f 54 49 7a 2b 75 76 4c ADCCAQoCggEBANziXmJYHTNXOTIz+uvL
1601c0 68 34 79 6e 31 45 72 64 42 6f 6a 71 5a 49 34 78 6d 4b 55 34 6b 42 36 59 7a 79 35 6a 0a 4b 2f 42 h4yn1ErdBojqZI4xmKU4kB6Yzy5j.K/B
1601e0 47 76 45 53 79 69 61 48 41 4b 41 78 4a 63 43 47 56 6e 32 54 41 70 70 4d 53 41 6d 55 6d 68 73 61 GvESyiaHAKAxJcCGVn2TAppMSAmUmhsa
160200 6c 69 66 44 36 31 34 53 67 63 4b 39 50 47 70 63 2f 42 6b 54 56 79 65 74 79 45 48 33 6b 4d 53 6a lifD614SgcK9PGpc/BkTVyetyEH3kMSj
160220 37 48 47 48 6d 4b 41 64 45 0a 63 35 49 69 61 61 63 44 69 47 79 64 59 38 68 53 32 70 67 6e 35 77 7HGHmKAdE.c5IiaacDiGydY8hS2pgn5w
160240 68 4d 63 44 36 30 79 52 4c 42 78 57 65 44 58 54 50 7a 41 78 48 73 61 74 42 54 34 74 47 36 4e 6d hMcD60yRLBxWeDXTPzAxHsatBT4tG6Nm
160260 43 55 67 4c 74 68 59 32 78 62 46 33 37 66 51 4a 51 65 71 77 33 43 0a 49 53 68 77 69 50 2f 57 4a CUgLthY2xbF37fQJQeqw3C.IShwiP/WJ
160280 6d 78 73 59 41 51 6c 54 6c 56 2b 66 65 2b 2f 6c 45 6a 65 74 78 33 64 63 49 30 46 58 34 69 6c 6d mxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm
1602a0 2f 4c 43 37 75 72 52 51 45 46 74 59 6a 67 64 56 67 62 46 41 30 64 52 49 42 6e 38 65 78 41 4c 44 /LC7urRQEFtYjgdVgbFA0dRIBn8exALD
1602c0 6d 4b 75 0a 64 6c 57 2f 58 33 65 2b 50 6b 6b 42 55 7a 32 59 4a 51 4e 32 4a 46 6f 64 74 4e 75 4a mKu.dlW/X3e+PkkBUz2YJQN2JFodtNuJ
1602e0 36 6e 6e 6c 74 72 4d 37 50 37 70 4d 4b 45 46 2f 42 71 78 71 6a 73 48 51 39 67 55 64 66 65 5a 43 6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZC
160300 68 75 4f 6c 31 55 63 43 41 77 45 41 41 61 4e 43 0a 4d 45 41 77 44 77 59 44 56 52 30 54 41 51 48 huOl1UcCAwEAAaNC.MEAwDwYDVR0TAQH
160320 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 /BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQY
160340 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4d 52 35 79 6f 36 68 54 67 4d 64 48 4e 78 72 0a 32 7a wHQYDVR0OBBYEFMR5yo6hTgMdHNxr.2z
160360 46 62 6c 44 34 2f 4d 48 38 74 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 FblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4
160380 49 42 41 51 41 74 78 52 50 50 56 6f 42 37 65 6e 69 39 6e 36 34 73 6d 65 66 76 32 74 2b 55 58 67 IBAQAtxRPPVoB7eni9n64smefv2t+UXg
1603a0 6c 70 70 2b 64 75 61 49 79 39 0a 63 72 35 48 71 51 36 58 45 72 68 4b 38 57 54 54 4f 64 38 6c 4e lpp+duaIy9.cr5HqQ6XErhK8WTTOd8lN
1603c0 4e 54 42 7a 55 36 42 38 41 38 45 78 43 53 7a 4e 4a 62 47 70 71 6f 77 33 32 68 68 63 39 66 35 6a NTBzU6B8A8ExCSzNJbGpqow32hhc9f5j
1603e0 6f 57 4a 37 77 35 65 6c 53 68 4b 4b 69 65 50 45 49 34 75 66 49 62 45 0a 41 70 37 61 44 48 64 6c oWJ7w5elShKKiePEI4ufIbE.Ap7aDHdl
160400 44 6b 51 4e 6b 76 33 39 73 78 59 32 2b 68 45 4e 48 59 77 4f 42 34 6c 71 4b 56 62 33 63 76 54 64 DkQNkv39sxY2+hENHYwOB4lqKVb3cvTd
160420 46 5a 78 33 4e 57 5a 58 71 78 4e 54 32 49 37 42 51 4d 58 58 45 78 5a 61 63 73 65 33 61 51 48 45 FZx3NWZXqxNT2I7BQMXXExZacse3aQHE
160440 65 72 47 44 0a 41 57 68 39 6a 55 47 68 6c 42 6a 42 4a 56 7a 38 38 50 36 44 41 6f 64 38 44 51 33 erGD.AWh9jUGhlBjBJVz88P6DAod8DQ3
160460 50 4c 67 68 63 53 6b 41 4e 50 75 79 42 59 65 59 6b 32 38 72 67 44 69 30 48 73 6a 35 57 33 49 33 PLghcSkANPuyBYeYk28rgDi0Hsj5W3I3
160480 31 51 59 55 48 53 4a 73 4d 43 38 74 4a 50 33 33 73 0a 74 2f 33 4c 6a 57 65 4a 47 71 76 74 75 78 1QYUHSJsMC8tJP33s.t/3LjWeJGqvtux
1604a0 36 6a 41 41 67 49 46 79 71 43 58 44 46 64 52 6f 6f 74 44 34 61 62 64 4e 6c 46 2b 39 52 41 73 58 6jAAgIFyqCXDFdRootD4abdNlF+9RAsX
1604c0 71 71 61 43 32 47 73 70 6b 69 34 63 45 72 78 35 7a 34 38 31 2b 6f 67 68 4c 72 47 52 45 74 0a 2d qqaC2Gspki4cErx5z481+oghLrGREt.-
1604e0 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 74 68 61 77 74 65 ----END.CERTIFICATE-----..thawte
160500 20 50 72 69 6d 61 72 79 20 52 6f 6f 74 20 43 41 20 2d 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .Primary.Root.CA.-.G2.==========
160520 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 =================.-----BEGIN.CER
160540 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 43 69 44 43 43 41 67 32 67 41 77 49 42 41 67 TIFICATE-----.MIICiDCCAg2gAwIBAg
160560 49 51 4e 66 77 6d 58 4e 6d 45 54 38 6b 39 4a 6a 31 58 6d 36 37 58 56 6a 41 4b 42 67 67 71 68 6b IQNfwmXNmET8k9Jj1Xm67XVjAKBggqhk
160580 6a 4f 50 51 51 44 41 7a 43 42 68 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 0a 56 56 4d 78 46 jOPQQDAzCBhDELMAkGA1UEBhMC.VVMxF
1605a0 54 41 54 42 67 4e 56 42 41 6f 54 44 48 52 6f 59 58 64 30 5a 53 77 67 53 57 35 6a 4c 6a 45 34 4d TATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4M
1605c0 44 59 47 41 31 55 45 43 78 4d 76 4b 47 4d 70 49 44 49 77 4d 44 63 67 64 47 68 68 64 33 52 6c 4c DYGA1UECxMvKGMpIDIwMDcgdGhhd3RlL
1605e0 43 42 4a 62 6d 4d 75 0a 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 76 63 6d 6c 36 5a 57 51 67 CBJbmMu.IC0gRm9yIGF1dGhvcml6ZWQg
160600 64 58 4e 6c 49 47 39 75 62 48 6b 78 4a 44 41 69 42 67 4e 56 42 41 4d 54 47 33 52 6f 59 58 64 30 dXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0
160620 5a 53 42 51 63 6d 6c 74 59 58 4a 35 49 46 4a 76 62 33 51 67 0a 51 30 45 67 4c 53 42 48 4d 6a 41 ZSBQcmltYXJ5IFJvb3Qg.Q0EgLSBHMjA
160640 65 46 77 30 77 4e 7a 45 78 4d 44 55 77 4d 44 41 77 4d 44 42 61 46 77 30 7a 4f 44 41 78 4d 54 67 eFw0wNzExMDUwMDAwMDBaFw0zODAxMTg
160660 79 4d 7a 55 35 4e 54 6c 61 4d 49 47 45 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 yMzU5NTlaMIGEMQswCQYDVQQGEwJVUzE
160680 56 0a 4d 42 4d 47 41 31 55 45 43 68 4d 4d 64 47 68 68 64 33 52 6c 4c 43 42 4a 62 6d 4d 75 4d 54 V.MBMGA1UEChMMdGhhd3RlLCBJbmMuMT
1606a0 67 77 4e 67 59 44 56 51 51 4c 45 79 38 6f 59 79 6b 67 4d 6a 41 77 4e 79 42 30 61 47 46 33 64 47 gwNgYDVQQLEy8oYykgMjAwNyB0aGF3dG
1606c0 55 73 49 45 6c 75 59 79 34 67 4c 53 42 47 0a 62 33 49 67 59 58 56 30 61 47 39 79 61 58 70 6c 5a UsIEluYy4gLSBG.b3IgYXV0aG9yaXplZ
1606e0 43 42 31 63 32 55 67 62 32 35 73 65 54 45 6b 4d 43 49 47 41 31 55 45 41 78 4d 62 64 47 68 68 64 CB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd
160700 33 52 6c 49 46 42 79 61 57 31 68 63 6e 6b 67 55 6d 39 76 64 43 42 44 51 53 41 74 0a 49 45 63 79 3RlIFByaW1hcnkgUm9vdCBDQSAt.IEcy
160720 4d 48 59 77 45 41 59 48 4b 6f 5a 49 7a 6a 30 43 41 51 59 46 4b 34 45 45 41 43 49 44 59 67 41 45 MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE
160740 6f 74 57 63 67 6e 75 56 6e 66 46 53 65 49 66 2b 69 68 61 2f 42 65 62 66 6f 77 4a 50 44 51 66 47 otWcgnuVnfFSeIf+iha/BebfowJPDQfG
160760 41 46 47 36 44 41 4a 53 0a 4c 53 4b 6b 51 6a 6e 45 2f 6f 2f 71 79 63 47 2b 31 45 33 2f 6e 33 71 AFG6DAJS.LSKkQjnE/o/qycG+1E3/n3q
160780 65 34 72 46 38 6d 71 32 6e 68 67 6c 7a 68 39 48 6e 6d 75 4e 36 70 61 70 75 2b 37 71 7a 63 4d 42 e4rF8mq2nhglzh9HnmuN6papu+7qzcMB
1607a0 6e 69 4b 49 31 31 4b 4f 61 73 66 32 74 77 75 38 78 2b 71 69 35 0a 38 2f 73 49 78 70 48 52 2b 79 niKI11KOasf2twu8x+qi5.8/sIxpHR+y
1607c0 6d 56 6f 30 49 77 51 44 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 mVo0IwQDAPBgNVHRMBAf8EBTADAQH/MA
1607e0 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFg
160800 51 55 0a 6d 74 67 41 4d 41 44 6e 61 33 2b 46 47 4f 36 4c 74 73 36 4b 44 50 67 52 34 62 73 77 43 QU.mtgAMADna3+FGO6Lts6KDPgR4bswC
160820 67 59 49 4b 6f 5a 49 7a 6a 30 45 41 77 4d 44 61 51 41 77 5a 67 49 78 41 4e 33 34 34 46 64 48 57 gYIKoZIzj0EAwMDaQAwZgIxAN344FdHW
160840 36 66 6d 43 73 4f 39 39 59 43 4b 6c 7a 55 4e 0a 47 34 6b 38 56 49 5a 33 4b 4d 71 68 39 48 6e 65 6fmCsO99YCKlzUN.G4k8VIZ3KMqh9Hne
160860 74 65 59 34 73 50 42 6c 63 49 78 2f 41 6c 54 43 76 2f 2f 59 6f 54 37 5a 7a 77 49 78 41 4d 53 4e teY4sPBlcIx/AlTCv//YoT7ZzwIxAMSN
160880 6c 50 7a 63 55 39 4c 63 6e 58 67 57 48 78 55 7a 49 31 4e 53 34 31 6f 78 58 5a 33 4b 0a 72 72 30 lPzcU9LcnXgWHxUzI1NS41oxXZ3K.rr0
1608a0 54 4b 55 51 4e 4a 31 75 6f 35 32 69 63 45 76 64 59 50 79 35 79 41 6c 65 6a 6a 36 45 55 4c 67 3d TKUQNJ1uo52icEvdYPy5yAlejj6EULg=
1608c0 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 74 68 61 =.-----END.CERTIFICATE-----..tha
1608e0 77 74 65 20 50 72 69 6d 61 72 79 20 52 6f 6f 74 20 43 41 20 2d 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d wte.Primary.Root.CA.-.G3.=======
160900 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 ====================.-----BEGIN.
160920 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 4b 6a 43 43 41 78 4b 67 41 77 49 CERTIFICATE-----.MIIEKjCCAxKgAwI
160940 42 41 67 49 51 59 41 47 58 74 30 61 6e 36 72 53 30 6d 74 5a 4c 4c 2f 65 51 2b 7a 41 4e 42 67 6b BAgIQYAGXt0an6rS0mtZLL/eQ+zANBgk
160960 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 43 42 72 6a 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 qhkiG9w0BAQsFADCBrjELMAkGA1UE.Bh
160980 4d 43 56 56 4d 78 46 54 41 54 42 67 4e 56 42 41 6f 54 44 48 52 6f 59 58 64 30 5a 53 77 67 53 57 MCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW
1609a0 35 6a 4c 6a 45 6f 4d 43 59 47 41 31 55 45 43 78 4d 66 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdG
1609c0 6c 76 62 69 42 54 5a 58 4a 32 0a 61 57 4e 6c 63 79 42 45 61 58 5a 70 63 32 6c 76 62 6a 45 34 4d lvbiBTZXJ2.aWNlcyBEaXZpc2lvbjE4M
1609e0 44 59 47 41 31 55 45 43 78 4d 76 4b 47 4d 70 49 44 49 77 4d 44 67 67 64 47 68 68 64 33 52 6c 4c DYGA1UECxMvKGMpIDIwMDggdGhhd3RlL
160a00 43 42 4a 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 76 0a 63 6d 6c 36 5a 57 51 67 CBJbmMuIC0gRm9yIGF1dGhv.cml6ZWQg
160a20 64 58 4e 6c 49 47 39 75 62 48 6b 78 4a 44 41 69 42 67 4e 56 42 41 4d 54 47 33 52 6f 59 58 64 30 dXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0
160a40 5a 53 42 51 63 6d 6c 74 59 58 4a 35 49 46 4a 76 62 33 51 67 51 30 45 67 4c 53 42 48 4d 7a 41 65 ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAe
160a60 46 77 30 77 0a 4f 44 41 30 4d 44 49 77 4d 44 41 77 4d 44 42 61 46 77 30 7a 4e 7a 45 79 4d 44 45 Fw0w.ODA0MDIwMDAwMDBaFw0zNzEyMDE
160a80 79 4d 7a 55 35 4e 54 6c 61 4d 49 47 75 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 yMzU5NTlaMIGuMQswCQYDVQQGEwJVUzE
160aa0 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 64 47 68 68 0a 64 33 52 6c 4c 43 42 4a 62 6d 4d 75 4d 53 VMBMGA1UEChMMdGhh.d3RlLCBJbmMuMS
160ac0 67 77 4a 67 59 44 56 51 51 4c 45 78 39 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 46 gwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIF
160ae0 4e 6c 63 6e 5a 70 59 32 56 7a 49 45 52 70 64 6d 6c 7a 61 57 39 75 4d 54 67 77 4e 67 59 44 0a 56 NlcnZpY2VzIERpdmlzaW9uMTgwNgYD.V
160b00 51 51 4c 45 79 38 6f 59 79 6b 67 4d 6a 41 77 4f 43 42 30 61 47 46 33 64 47 55 73 49 45 6c 75 59 QQLEy8oYykgMjAwOCB0aGF3dGUsIEluY
160b20 79 34 67 4c 53 42 47 62 33 49 67 59 58 56 30 61 47 39 79 61 58 70 6c 5a 43 42 31 63 32 55 67 62 y4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb
160b40 32 35 73 65 54 45 6b 4d 43 49 47 0a 41 31 55 45 41 78 4d 62 64 47 68 68 64 33 52 6c 49 46 42 79 25seTEkMCIG.A1UEAxMbdGhhd3RlIFBy
160b60 61 57 31 68 63 6e 6b 67 55 6d 39 76 64 43 42 44 51 53 41 74 49 45 63 7a 4d 49 49 42 49 6a 41 4e aW1hcnkgUm9vdCBDQSAtIEczMIIBIjAN
160b80 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 0a 4d 49 49 42 43 67 4b BgkqhkiG9w0BAQEFAAOCAQ8A.MIIBCgK
160ba0 43 41 51 45 41 73 72 38 6e 4c 50 76 62 32 46 76 64 65 48 73 62 6e 6e 64 6d 67 63 73 2b 76 48 79 CAQEAsr8nLPvb2FvdeHsbnndmgcs+vHy
160bc0 75 38 36 59 6e 6d 6a 53 6a 61 44 46 78 4f 44 4e 69 35 50 4e 78 5a 6e 6d 78 71 57 57 6a 70 59 76 u86YnmjSjaDFxODNi5PNxZnmxqWWjpYv
160be0 56 6a 32 41 74 0a 50 30 4c 4d 71 6d 73 79 77 43 50 4c 4c 45 48 64 35 4e 2f 38 59 5a 7a 69 63 37 Vj2At.P0LMqmsywCPLLEHd5N/8YZzic7
160c00 49 69 6c 52 46 44 47 46 2f 45 74 68 39 58 62 41 6f 46 57 43 4c 49 4e 6b 77 36 66 4b 58 52 7a 34 IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4
160c20 61 76 69 4b 64 45 41 68 4e 30 63 58 4d 4b 51 6c 6b 43 0a 2b 42 73 55 61 30 4c 66 62 31 2b 36 61 aviKdEAhN0cXMKQlkC.+BsUa0Lfb1+6a
160c40 34 4b 69 6e 56 76 6e 53 72 30 65 41 58 4c 62 53 33 54 6f 4f 33 39 2f 66 52 38 45 74 43 61 62 34 4KinVvnSr0eAXLbS3ToO39/fR8EtCab4
160c60 4c 52 61 72 45 63 39 56 62 6a 58 73 43 5a 53 4b 41 45 78 51 47 62 59 32 53 53 39 39 69 72 59 0a LRarEc9VbjXsCZSKAExQGbY2SS99irY.
160c80 37 43 46 4a 58 4a 76 32 65 75 6c 2f 56 54 56 2b 6c 6d 75 4e 6b 35 4d 6e 79 35 4b 37 36 71 78 41 7CFJXJv2eul/VTV+lmuNk5Mny5K76qxA
160ca0 77 4a 2f 43 2b 49 44 50 58 66 52 61 33 4d 35 30 68 71 59 2b 62 41 74 54 79 72 32 53 7a 68 6b 47 wJ/C+IDPXfRa3M50hqY+bAtTyr2SzhkG
160cc0 63 75 59 4d 58 44 68 70 78 77 54 57 0a 76 47 7a 4f 57 2f 62 33 61 4a 7a 63 4a 52 56 49 69 4b 48 cuYMXDhpxwTW.vGzOW/b3aJzcJRVIiKH
160ce0 70 71 66 69 59 6e 4f 44 7a 31 54 45 6f 59 52 46 73 5a 35 61 4e 4f 5a 6e 4c 77 6b 55 6b 4f 51 49 pqfiYnODz1TEoYRFsZ5aNOZnLwkUkOQI
160d00 44 41 51 41 42 6f 30 49 77 51 44 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 0a 42 54 41 44 41 51 DAQABo0IwQDAPBgNVHRMBAf8E.BTADAQ
160d20 48 2f 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 H/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ
160d40 34 45 46 67 51 55 72 57 79 71 6c 47 43 63 37 65 54 2f 2b 6a 34 4b 64 43 74 6a 41 2f 65 32 57 62 4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb
160d60 38 77 44 51 59 4a 0a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 44 67 67 45 42 41 42 70 41 32 8wDQYJ.KoZIhvcNAQELBQADggEBABpA2
160d80 4a 56 6c 72 41 6d 53 69 63 59 35 39 42 44 6c 71 51 35 6d 55 31 31 34 33 76 6f 6b 6b 62 76 6e 52 JVlrAmSicY59BDlqQ5mU1143vokkbvnR
160da0 46 48 66 78 68 59 30 43 75 39 71 52 46 48 71 4b 77 65 4b 0a 41 33 72 44 36 7a 38 4b 4c 46 49 57 FHfxhY0Cu9qRFHqKweK.A3rD6z8KLFIW
160dc0 6f 43 74 44 75 53 57 51 50 33 43 70 4d 79 56 74 52 52 6f 6f 4f 79 66 50 71 73 4d 70 51 68 76 66 oCtDuSWQP3CpMyVtRRooOyfPqsMpQhvf
160de0 4f 30 7a 41 4d 7a 52 62 51 59 69 2f 61 79 74 6c 72 79 6a 76 73 76 58 44 71 6d 62 4f 65 31 62 75 O0zAMzRbQYi/aytlryjvsvXDqmbOe1bu
160e00 0a 74 38 6a 4c 5a 38 48 4a 6e 42 6f 59 75 4d 54 44 53 51 50 78 59 41 35 51 7a 55 62 46 38 33 64 .t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d
160e20 35 39 37 59 56 34 44 6a 62 78 79 38 6f 6f 41 77 2f 64 79 5a 30 32 53 55 53 32 6a 48 61 47 68 37 597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7
160e40 63 4b 55 47 52 49 6a 78 70 70 37 73 43 0a 38 72 5a 63 4a 77 4f 4a 39 41 62 71 6d 2b 52 79 67 75 cKUGRIjxpp7sC.8rZcJwOJ9Abqm+Rygu
160e60 4f 68 43 63 48 70 41 42 6e 54 50 74 52 77 61 37 70 78 70 71 70 59 72 76 53 37 36 57 79 32 37 34 OhCcHpABnTPtRwa7pxpqpYrvS76Wy274
160e80 66 4d 6d 37 76 2f 4f 65 5a 57 59 64 4d 4b 70 38 52 63 54 47 42 37 42 58 63 6d 0a 65 72 2f 59 42 fMm7v/OeZWYdMKp8RcTGB7BXcm.er/YB
160ea0 31 49 73 59 76 64 77 59 39 6b 35 76 47 38 63 77 6e 6e 63 64 69 6d 76 7a 73 55 73 5a 41 52 65 69 1IsYvdwY9k5vG8cwnncdimvzsUsZARei
160ec0 44 5a 75 4d 64 52 41 47 6d 49 30 4e 6a 38 31 41 61 36 73 59 36 41 3d 0a 2d 2d 2d 2d 2d 45 4e 44 DZuMdRAGmI0Nj81Aa6sY6A=.-----END
160ee0 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 65 6f 54 72 75 73 74 20 50 72 69 6d .CERTIFICATE-----..GeoTrust.Prim
160f00 61 72 79 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 20 2d 20 47 32 ary.Certification.Authority.-.G2
160f20 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .===============================
160f40 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 ==============.-----BEGIN.CERTIF
160f60 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 43 72 6a 43 43 41 6a 57 67 41 77 49 42 41 67 49 51 50 ICATE-----.MIICrjCCAjWgAwIBAgIQP
160f80 4c 4c 30 53 41 6f 41 34 76 37 72 4a 44 74 65 59 44 37 44 61 7a 41 4b 42 67 67 71 68 6b 6a 4f 50 LL0SAoA4v7rJDteYD7DazAKBggqhkjOP
160fa0 51 51 44 41 7a 43 42 6d 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 0a 56 56 4d 78 46 6a 41 55 QQDAzCBmDELMAkGA1UEBhMC.VVMxFjAU
160fc0 42 67 4e 56 42 41 6f 54 44 55 64 6c 62 31 52 79 64 58 4e 30 49 45 6c 75 59 79 34 78 4f 54 41 33 BgNVBAoTDUdlb1RydXN0IEluYy4xOTA3
160fe0 42 67 4e 56 42 41 73 54 4d 43 68 6a 4b 53 41 79 4d 44 41 33 49 45 64 6c 62 31 52 79 64 58 4e 30 BgNVBAsTMChjKSAyMDA3IEdlb1RydXN0
161000 49 45 6c 75 0a 59 79 34 67 4c 53 42 47 62 33 49 67 59 58 56 30 61 47 39 79 61 58 70 6c 5a 43 42 IElu.Yy4gLSBGb3IgYXV0aG9yaXplZCB
161020 31 63 32 55 67 62 32 35 73 65 54 45 32 4d 44 51 47 41 31 55 45 41 78 4d 74 52 32 56 76 56 48 4a 1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ
161040 31 63 33 51 67 55 48 4a 70 62 57 46 79 65 53 42 44 0a 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 1c3QgUHJpbWFyeSBD.ZXJ0aWZpY2F0aW
161060 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 53 41 74 49 45 63 79 4d 42 34 58 44 54 41 33 4d 54 9uIEF1dGhvcml0eSAtIEcyMB4XDTA3MT
161080 45 77 4e 54 41 77 4d 44 41 77 4d 46 6f 58 44 54 4d 34 4d 44 45 78 4f 44 49 7a 4e 54 6b 31 0a 4f EwNTAwMDAwMFoXDTM4MDExODIzNTk1.O
1610a0 56 6f 77 67 5a 67 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 56 54 4d 52 59 77 46 41 59 44 56 VowgZgxCzAJBgNVBAYTAlVTMRYwFAYDV
1610c0 51 51 4b 45 77 31 48 5a 57 39 55 63 6e 56 7a 64 43 42 4a 62 6d 4d 75 4d 54 6b 77 4e 77 59 44 56 QQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDV
1610e0 51 51 4c 45 7a 41 6f 59 79 6b 67 0a 4d 6a 41 77 4e 79 42 48 5a 57 39 55 63 6e 56 7a 64 43 42 4a QQLEzAoYykg.MjAwNyBHZW9UcnVzdCBJ
161100 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 76 63 6d 6c 36 5a 57 51 67 64 58 4e 6c bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl
161120 49 47 39 75 62 48 6b 78 4e 6a 41 30 42 67 4e 56 42 41 4d 54 4c 55 64 6c 0a 62 31 52 79 64 58 4e IG9ubHkxNjA0BgNVBAMTLUdl.b1RydXN
161140 30 49 46 42 79 61 57 31 68 63 6e 6b 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiB
161160 42 64 58 52 6f 62 33 4a 70 64 48 6b 67 4c 53 42 48 4d 6a 42 32 4d 42 41 47 42 79 71 47 53 4d 34 BdXRob3JpdHkgLSBHMjB2MBAGByqGSM4
161180 39 41 67 45 47 0a 42 53 75 42 42 41 41 69 41 32 49 41 42 42 57 78 36 50 30 44 46 55 50 6c 72 4f 9AgEG.BSuBBAAiA2IABBWx6P0DFUPlrO
1611a0 75 48 4e 78 46 69 37 39 4b 44 4e 6c 4a 39 52 56 63 4c 53 6f 31 37 56 44 73 36 62 6c 38 56 41 73 uHNxFi79KDNlJ9RVcLSo17VDs6bl8VAs
1611c0 42 51 70 73 38 6c 4c 33 33 4b 53 4c 6a 48 55 47 4d 63 0a 4b 69 45 49 66 4a 6f 32 32 41 76 2b 30 BQps8lL33KSLjHUGMc.KiEIfJo22Av+0
1611e0 53 62 46 57 44 45 77 4b 43 58 7a 58 56 32 6a 75 4c 61 6c 74 4a 4c 74 62 43 79 66 36 39 31 44 69 SbFWDEwKCXzXV2juLaltJLtbCyf691Di
161200 61 49 38 53 30 69 52 48 56 44 73 4a 74 2f 57 59 43 36 39 49 61 4e 43 4d 45 41 77 44 77 59 44 0a aI8S0iRHVDsJt/WYC69IaNCMEAwDwYD.
161220 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8E
161240 42 41 4d 43 41 51 59 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 42 56 66 4e 56 64 52 56 66 73 6c BAMCAQYwHQYDVR0OBBYEFBVfNVdRVfsl
161260 73 71 30 44 61 66 77 42 6f 2f 71 2b 0a 45 56 58 56 4d 41 6f 47 43 43 71 47 53 4d 34 39 42 41 4d sq0DafwBo/q+.EVXVMAoGCCqGSM49BAM
161280 44 41 32 63 41 4d 47 51 43 4d 47 53 57 57 61 62 6f 43 64 36 4c 75 76 70 61 69 49 6a 77 48 35 48 DA2cAMGQCMGSWWaboCd6LuvpaiIjwH5H
1612a0 54 52 71 6a 79 53 6b 77 43 59 2f 74 73 58 7a 6a 62 4c 6b 47 54 71 51 37 6d 0a 6e 64 77 78 48 4c TRqjySkwCY/tsXzjbLkGTqQ7m.ndwxHL
1612c0 4b 67 70 78 67 63 65 65 48 48 4e 67 49 77 4f 6c 61 76 6d 6e 52 73 39 76 75 44 34 44 50 54 43 46 KgpxgceeHHNgIwOlavmnRs9vuD4DPTCF
1612e0 2b 68 6e 4d 4a 62 6e 30 62 57 74 73 75 52 42 6d 4f 69 42 75 63 7a 72 44 36 6f 67 52 4c 51 79 37 +hnMJbn0bWtsuRBmOiBuczrD6ogRLQy7
161300 72 51 6b 67 75 32 0a 6e 70 61 71 42 41 2b 4b 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 rQkgu2.npaqBA+K.-----END.CERTIFI
161320 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 56 65 72 69 53 69 67 6e 20 55 6e 69 76 65 72 73 61 6c 20 52 6f CATE-----..VeriSign.Universal.Ro
161340 6f 74 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d ot.Certification.Authority.=====
161360 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
161380 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 ==========.-----BEGIN.CERTIFICAT
1613a0 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 75 54 43 43 41 36 47 67 41 77 49 42 41 67 49 51 51 42 72 45 5a E-----.MIIEuTCCA6GgAwIBAgIQQBrEZ
1613c0 43 47 7a 45 79 45 44 44 72 76 6b 45 68 72 46 48 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 CGzEyEDDrvkEhrFHTANBgkqhkiG9w0BA
1613e0 51 73 46 41 44 43 42 76 54 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 56 56 4d 78 46 7a 41 56 QsFADCBvTELMAkGA1UE.BhMCVVMxFzAV
161400 42 67 4e 56 42 41 6f 54 44 6c 5a 6c 63 6d 6c 54 61 57 64 75 4c 43 42 4a 62 6d 4d 75 4d 52 38 77 BgNVBAoTDlZlcmlTaWduLCBJbmMuMR8w
161420 48 51 59 44 56 51 51 4c 45 78 5a 57 5a 58 4a 70 55 32 6c 6e 62 69 42 55 63 6e 56 7a 64 43 42 4f HQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO
161440 0a 5a 58 52 33 62 33 4a 72 4d 54 6f 77 4f 41 59 44 56 51 51 4c 45 7a 45 6f 59 79 6b 67 4d 6a 41 .ZXR3b3JrMTowOAYDVQQLEzEoYykgMjA
161460 77 4f 43 42 57 5a 58 4a 70 55 32 6c 6e 62 69 77 67 53 57 35 6a 4c 69 41 74 49 45 5a 76 63 69 42 wOCBWZXJpU2lnbiwgSW5jLiAtIEZvciB
161480 68 64 58 52 6f 62 33 4a 70 65 6d 56 6b 0a 49 48 56 7a 5a 53 42 76 62 6d 78 35 4d 54 67 77 4e 67 hdXRob3JpemVk.IHVzZSBvbmx5MTgwNg
1614a0 59 44 56 51 51 44 45 79 39 57 5a 58 4a 70 55 32 6c 6e 62 69 42 56 62 6d 6c 32 5a 58 4a 7a 59 57 YDVQQDEy9WZXJpU2lnbiBVbml2ZXJzYW
1614c0 77 67 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 0a 49 45 46 31 64 wgUm9vdCBDZXJ0aWZpY2F0aW9u.IEF1d
1614e0 47 68 76 63 6d 6c 30 65 54 41 65 46 77 30 77 4f 44 41 30 4d 44 49 77 4d 44 41 77 4d 44 42 61 46 Ghvcml0eTAeFw0wODA0MDIwMDAwMDBaF
161500 77 30 7a 4e 7a 45 79 4d 44 45 79 4d 7a 55 35 4e 54 6c 61 4d 49 47 39 4d 51 73 77 43 51 59 44 56 w0zNzEyMDEyMzU5NTlaMIG9MQswCQYDV
161520 51 51 47 45 77 4a 56 0a 55 7a 45 58 4d 42 55 47 41 31 55 45 43 68 4d 4f 56 6d 56 79 61 56 4e 70 QQGEwJV.UzEXMBUGA1UEChMOVmVyaVNp
161540 5a 32 34 73 49 45 6c 75 59 79 34 78 48 7a 41 64 42 67 4e 56 42 41 73 54 46 6c 5a 6c 63 6d 6c 54 Z24sIEluYy4xHzAdBgNVBAsTFlZlcmlT
161560 61 57 64 75 49 46 52 79 64 58 4e 30 49 45 35 6c 64 48 64 76 0a 63 6d 73 78 4f 6a 41 34 42 67 4e aWduIFRydXN0IE5ldHdv.cmsxOjA4BgN
161580 56 42 41 73 54 4d 53 68 6a 4b 53 41 79 4d 44 41 34 49 46 5a 6c 63 6d 6c 54 61 57 64 75 4c 43 42 VBAsTMShjKSAyMDA4IFZlcmlTaWduLCB
1615a0 4a 62 6d 4d 75 49 43 30 67 52 6d 39 79 49 47 46 31 64 47 68 76 63 6d 6c 36 5a 57 51 67 64 58 4e JbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXN
1615c0 6c 0a 49 47 39 75 62 48 6b 78 4f 44 41 32 42 67 4e 56 42 41 4d 54 4c 31 5a 6c 63 6d 6c 54 61 57 l.IG9ubHkxODA2BgNVBAMTL1ZlcmlTaW
1615e0 64 75 49 46 56 75 61 58 5a 6c 63 6e 4e 68 62 43 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d duIFVuaXZlcnNhbCBSb290IENlcnRpZm
161600 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 0a 61 47 39 79 61 58 52 35 4d 49 49 42 49 6a 41 4e 42 ljYXRpb24gQXV0.aG9yaXR5MIIBIjANB
161620 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 gkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCA
161640 51 45 41 78 32 45 33 58 72 45 42 4e 4e 74 69 31 78 57 62 2f 31 68 61 6a 43 4d 6a 0a 31 6d 43 4f QEAx2E3XrEBNNti1xWb/1hajCMj.1mCO
161660 6b 64 65 51 6d 49 4e 36 35 6c 67 5a 4f 49 7a 46 39 75 56 6b 68 62 53 69 63 66 76 74 76 62 6e 61 kdeQmIN65lgZOIzF9uVkhbSicfvtvbna
161680 7a 55 30 41 74 4d 67 74 63 36 58 48 61 58 47 56 48 7a 6b 38 73 6b 51 48 6e 4f 67 4f 2b 6b 31 4b zU0AtMgtc6XHaXGVHzk8skQHnOgO+k1K
1616a0 78 43 48 66 4b 57 47 50 0a 4d 69 4a 68 67 73 57 48 48 32 36 4d 66 46 38 57 49 46 46 45 30 58 42 xCHfKWGP.MiJhgsWHH26MfF8WIFFE0XB
1616c0 50 56 2b 72 6a 48 4f 50 4d 65 65 35 59 32 41 37 43 73 30 57 54 77 43 7a 6e 6d 68 63 72 65 77 41 PV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA
1616e0 33 65 6b 45 7a 65 4f 45 7a 34 76 4d 51 47 6e 2b 48 4c 4c 37 32 0a 39 66 64 43 34 75 57 2f 68 32 3ekEzeOEz4vMQGn+HLL72.9fdC4uW/h2
161700 4b 4a 58 77 42 4c 33 38 58 64 35 48 56 45 4d 6b 45 36 48 6e 46 75 61 63 73 4c 64 55 59 49 30 63 KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0c
161720 72 53 4b 35 58 51 7a 2f 75 35 51 47 74 6b 6a 46 64 4e 2f 42 4d 52 65 59 54 74 58 6c 54 32 4e 4a rSK5XQz/u5QGtkjFdN/BMReYTtXlT2NJ
161740 38 49 0a 41 66 4d 51 4a 51 59 58 53 74 72 78 48 58 70 6d 61 35 68 67 5a 71 54 5a 37 39 49 75 67 8I.AfMQJQYXStrxHXpma5hgZqTZ79Iug
161760 76 48 77 37 77 6e 71 52 4d 6b 56 61 75 49 44 62 6a 50 54 72 4a 39 56 41 4d 66 32 43 47 71 55 75 vHw7wnqRMkVauIDbjPTrJ9VAMf2CGqUu
161780 56 2f 63 34 44 50 78 68 47 44 35 57 79 63 52 0a 74 50 77 57 38 72 74 57 61 6f 41 6c 6a 51 49 44 V/c4DPxhGD5WycR.tPwW8rtWaoAljQID
1617a0 41 51 41 42 6f 34 47 79 4d 49 47 76 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 AQABo4GyMIGvMA8GA1UdEwEB/wQFMAMB
1617c0 41 66 38 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 47 30 47 0a 43 43 73 Af8wDgYDVR0PAQH/BAQDAgEGMG0G.CCs
1617e0 47 41 51 55 46 42 77 45 4d 42 47 45 77 58 36 46 64 6f 46 73 77 57 54 42 58 4d 46 55 57 43 57 6c GAQUFBwEMBGEwX6FdoFswWTBXMFUWCWl
161800 74 59 57 64 6c 4c 32 64 70 5a 6a 41 68 4d 42 38 77 42 77 59 46 4b 77 34 44 41 68 6f 45 46 49 2f tYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/
161820 6c 30 78 71 47 72 49 32 4f 0a 61 38 50 50 67 47 72 55 53 42 67 73 65 78 6b 75 4d 43 55 57 49 32 l0xqGrI2O.a8PPgGrUSBgsexkuMCUWI2
161840 68 30 64 48 41 36 4c 79 39 73 62 32 64 76 4c 6e 5a 6c 63 6d 6c 7a 61 57 64 75 4c 6d 4e 76 62 53 h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS
161860 39 32 63 32 78 76 5a 32 38 75 5a 32 6c 6d 4d 42 30 47 41 31 55 64 0a 44 67 51 57 42 42 53 32 64 92c2xvZ28uZ2lmMB0GA1Ud.DgQWBBS2d
161880 2f 70 70 53 45 65 66 55 78 4c 56 77 75 6f 48 4d 6e 59 48 30 5a 63 48 47 54 41 4e 42 67 6b 71 68 /ppSEefUxLVwuoHMnYH0ZcHGTANBgkqh
1618a0 6b 69 47 39 77 30 42 41 51 73 46 41 41 4f 43 41 51 45 41 53 76 6a 34 73 41 50 6d 4c 47 64 37 35 kiG9w0BAQsFAAOCAQEASvj4sAPmLGd75
1618c0 4a 52 33 0a 59 38 78 75 54 50 6c 39 44 67 33 63 79 4c 6b 31 75 58 42 50 59 2f 6f 6b 2b 6d 79 44 JR3.Y8xuTPl9Dg3cyLk1uXBPY/ok+myD
1618e0 6a 45 65 64 4f 32 50 7a 6d 76 6c 32 4d 70 57 52 73 58 65 38 72 4a 71 2b 73 65 51 78 49 63 61 42 jEedO2Pzmvl2MpWRsXe8rJq+seQxIcaB
161900 6c 56 5a 61 44 72 48 43 31 4c 47 6d 57 61 7a 78 0a 59 38 75 34 54 42 31 5a 6b 45 72 76 6b 42 59 lVZaDrHC1LGmWazx.Y8u4TB1ZkErvkBY
161920 6f 48 31 71 75 45 50 75 42 55 44 67 4d 62 4d 7a 78 50 63 50 31 59 2b 4f 7a 34 79 48 4a 4a 44 6e oH1quEPuBUDgMbMzxPcP1Y+Oz4yHJJDn
161940 70 2f 52 56 6d 52 76 51 62 45 64 42 4e 63 36 4e 39 52 76 6b 39 37 61 68 66 59 74 54 78 0a 50 2f p/RVmRvQbEdBNc6N9Rvk97ahfYtTx.P/
161960 6a 67 64 46 63 72 47 4a 32 42 74 4d 51 6f 32 70 53 58 70 58 44 72 72 42 32 2b 42 78 48 77 31 64 jgdFcrGJ2BtMQo2pSXpXDrrB2+BxHw1d
161980 76 64 35 59 7a 77 31 54 4b 77 67 2b 5a 58 34 6f 2b 2f 76 71 47 71 76 7a 30 64 74 64 51 34 36 74 vd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46t
1619a0 65 77 58 44 70 50 61 6a 2b 50 0a 77 47 5a 73 59 36 72 70 32 61 51 57 39 49 48 52 6c 52 51 4f 66 ewXDpPaj+P.wGZsY6rp2aQW9IHRlRQOf
1619c0 63 32 56 4e 4e 6e 53 6a 33 42 7a 67 58 75 63 66 72 32 59 59 64 68 46 68 35 69 51 78 65 75 47 4d c2VNNnSj3BzgXucfr2YYdhFh5iQxeuGM
1619e0 4d 59 31 76 2f 44 2f 77 31 57 49 67 30 76 76 42 5a 49 47 63 66 4b 34 0a 6d 4a 4f 33 37 4d 32 43 MY1v/D/w1WIg0vvBZIGcfK4.mJO37M2C
161a00 59 66 45 34 35 6b 2b 58 6d 43 70 61 6a 51 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 YfE45k+XmCpajQ==.-----END.CERTIF
161a20 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 56 65 72 69 53 69 67 6e 20 43 6c 61 73 73 20 33 20 50 75 62 ICATE-----..VeriSign.Class.3.Pub
161a40 6c 69 63 20 50 72 69 6d 61 72 79 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 lic.Primary.Certification.Author
161a60 69 74 79 20 2d 20 47 34 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ity.-.G4.=======================
161a80 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
161aa0 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d =====.-----BEGIN.CERTIFICATE----
161ac0 2d 0a 4d 49 49 44 68 44 43 43 41 77 71 67 41 77 49 42 41 67 49 51 4c 34 44 2b 49 34 77 4f 49 67 -.MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg
161ae0 39 49 5a 78 49 6f 6b 59 65 73 73 7a 41 4b 42 67 67 71 68 6b 6a 4f 50 51 51 44 41 7a 43 42 79 6a 9IZxIokYesszAKBggqhkjOPQQDAzCByj
161b00 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 0a 56 56 4d 78 46 7a 41 56 42 67 4e 56 42 41 6f 54 44 ELMAkGA1UEBhMC.VVMxFzAVBgNVBAoTD
161b20 6c 5a 6c 63 6d 6c 54 61 57 64 75 4c 43 42 4a 62 6d 4d 75 4d 52 38 77 48 51 59 44 56 51 51 4c 45 lZlcmlTaWduLCBJbmMuMR8wHQYDVQQLE
161b40 78 5a 57 5a 58 4a 70 55 32 6c 6e 62 69 42 55 63 6e 56 7a 64 43 42 4f 5a 58 52 33 0a 62 33 4a 72 xZWZXJpU2lnbiBUcnVzdCBOZXR3.b3Jr
161b60 4d 54 6f 77 4f 41 59 44 56 51 51 4c 45 7a 45 6f 59 79 6b 67 4d 6a 41 77 4e 79 42 57 5a 58 4a 70 MTowOAYDVQQLEzEoYykgMjAwNyBWZXJp
161b80 55 32 6c 6e 62 69 77 67 53 57 35 6a 4c 69 41 74 49 45 5a 76 63 69 42 68 64 58 52 6f 62 33 4a 70 U2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp
161ba0 65 6d 56 6b 49 48 56 7a 0a 5a 53 42 76 62 6d 78 35 4d 55 55 77 51 77 59 44 56 51 51 44 45 7a 78 emVkIHVz.ZSBvbmx5MUUwQwYDVQQDEzx
161bc0 57 5a 58 4a 70 55 32 6c 6e 62 69 42 44 62 47 46 7a 63 79 41 7a 49 46 42 31 59 6d 78 70 59 79 42 WZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyB
161be0 51 63 6d 6c 74 59 58 4a 35 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 0a 59 58 52 70 62 32 34 67 51 58 QcmltYXJ5IENlcnRpZmlj.YXRpb24gQX
161c00 56 30 61 47 39 79 61 58 52 35 49 43 30 67 52 7a 51 77 48 68 63 4e 4d 44 63 78 4d 54 41 31 4d 44 V0aG9yaXR5IC0gRzQwHhcNMDcxMTA1MD
161c20 41 77 4d 44 41 77 57 68 63 4e 4d 7a 67 77 4d 54 45 34 4d 6a 4d 31 4f 54 55 35 57 6a 43 42 79 6a AwMDAwWhcNMzgwMTE4MjM1OTU5WjCByj
161c40 45 4c 0a 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 7a 41 56 42 67 4e 56 42 41 6f 54 44 EL.MAkGA1UEBhMCVVMxFzAVBgNVBAoTD
161c60 6c 5a 6c 63 6d 6c 54 61 57 64 75 4c 43 42 4a 62 6d 4d 75 4d 52 38 77 48 51 59 44 56 51 51 4c 45 lZlcmlTaWduLCBJbmMuMR8wHQYDVQQLE
161c80 78 5a 57 5a 58 4a 70 55 32 6c 6e 62 69 42 55 0a 63 6e 56 7a 64 43 42 4f 5a 58 52 33 62 33 4a 72 xZWZXJpU2lnbiBU.cnVzdCBOZXR3b3Jr
161ca0 4d 54 6f 77 4f 41 59 44 56 51 51 4c 45 7a 45 6f 59 79 6b 67 4d 6a 41 77 4e 79 42 57 5a 58 4a 70 MTowOAYDVQQLEzEoYykgMjAwNyBWZXJp
161cc0 55 32 6c 6e 62 69 77 67 53 57 35 6a 4c 69 41 74 49 45 5a 76 63 69 42 68 64 58 52 6f 0a 62 33 4a U2lnbiwgSW5jLiAtIEZvciBhdXRo.b3J
161ce0 70 65 6d 56 6b 49 48 56 7a 5a 53 42 76 62 6d 78 35 4d 55 55 77 51 77 59 44 56 51 51 44 45 7a 78 pemVkIHVzZSBvbmx5MUUwQwYDVQQDEzx
161d00 57 5a 58 4a 70 55 32 6c 6e 62 69 42 44 62 47 46 7a 63 79 41 7a 49 46 42 31 59 6d 78 70 59 79 42 WZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyB
161d20 51 63 6d 6c 74 59 58 4a 35 0a 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 QcmltYXJ5.IENlcnRpZmljYXRpb24gQX
161d40 56 30 61 47 39 79 61 58 52 35 49 43 30 67 52 7a 51 77 64 6a 41 51 42 67 63 71 68 6b 6a 4f 50 51 V0aG9yaXR5IC0gRzQwdjAQBgcqhkjOPQ
161d60 49 42 42 67 55 72 67 51 51 41 49 67 4e 69 41 41 53 6e 56 6e 70 38 0a 55 74 70 6b 6d 77 34 74 58 IBBgUrgQQAIgNiAASnVnp8.Utpkmw4tX
161d80 4e 68 65 72 4a 49 39 2f 67 48 6d 47 55 6f 39 46 41 4e 4c 2b 6d 41 6e 49 4e 6d 44 69 57 6e 36 56 NherJI9/gHmGUo9FANL+mAnINmDiWn6V
161da0 4d 61 61 47 46 35 56 4b 6d 54 65 42 76 61 4e 53 6a 75 74 45 44 78 6c 50 5a 43 49 42 49 6e 67 4d MaaGF5VKmTeBvaNSjutEDxlPZCIBIngM
161dc0 47 47 7a 0a 72 6c 30 42 70 33 76 65 66 4c 4b 2b 79 6d 56 68 41 49 61 75 32 6f 39 37 30 49 6d 74 GGz.rl0Bp3vefLK+ymVhAIau2o970Imt
161de0 54 52 31 5a 6d 6b 47 78 76 45 65 41 33 4a 35 69 77 2f 6d 6a 67 62 49 77 67 61 38 77 44 77 59 44 TR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYD
161e00 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 0a 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 VR0TAQH/BAUwAwEB./zAOBgNVHQ8BAf8
161e20 45 42 41 4d 43 41 51 59 77 62 51 59 49 4b 77 59 42 42 51 55 48 41 51 77 45 59 54 42 66 6f 56 32 EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2
161e40 67 57 7a 42 5a 4d 46 63 77 56 52 59 4a 61 57 31 68 5a 32 55 76 5a 32 6c 6d 4d 43 45 77 0a 48 7a gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEw.Hz
161e60 41 48 42 67 55 72 44 67 4d 43 47 67 51 55 6a 2b 58 54 47 6f 61 73 6a 59 35 72 77 38 2b 41 61 74 AHBgUrDgMCGgQUj+XTGoasjY5rw8+Aat
161e80 52 49 47 43 78 37 47 53 34 77 4a 52 59 6a 61 48 52 30 63 44 6f 76 4c 32 78 76 5a 32 38 75 64 6d RIGCx7GS4wJRYjaHR0cDovL2xvZ28udm
161ea0 56 79 61 58 4e 70 5a 32 34 75 0a 59 32 39 74 4c 33 5a 7a 62 47 39 6e 62 79 35 6e 61 57 59 77 48 VyaXNpZ24u.Y29tL3ZzbG9nby5naWYwH
161ec0 51 59 44 56 52 30 4f 42 42 59 45 46 4c 4d 57 6b 66 33 75 70 6d 37 6b 74 53 35 4a 6a 34 64 34 67 QYDVR0OBBYEFLMWkf3upm7ktS5Jj4d4g
161ee0 59 44 73 35 62 47 31 4d 41 6f 47 43 43 71 47 53 4d 34 39 42 41 4d 44 0a 41 32 67 41 4d 47 55 43 YDs5bG1MAoGCCqGSM49BAMD.A2gAMGUC
161f00 4d 47 59 68 44 42 67 6d 59 46 6f 34 65 31 5a 43 34 4b 66 38 4e 6f 52 52 6b 53 41 73 64 6b 31 44 MGYhDBgmYFo4e1ZC4Kf8NoRRkSAsdk1D
161f20 50 63 51 64 68 43 50 51 72 4e 5a 38 4e 51 62 4f 7a 57 6d 39 6b 41 33 62 62 45 68 43 48 51 36 71 PcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6q
161f40 51 67 49 78 0a 41 4a 77 39 53 44 6b 6a 4f 56 67 61 46 52 4a 5a 61 70 37 76 31 56 6d 79 48 56 49 QgIx.AJw9SDkjOVgaFRJZap7v1VmyHVI
161f60 73 6d 58 48 4e 78 79 6e 66 47 79 70 68 65 33 48 52 33 76 50 41 35 51 30 36 53 71 6f 74 70 39 69 smXHNxynfGyphe3HR3vPA5Q06Sqotp9i
161f80 47 4b 74 30 75 45 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d GKt0uEA==.-----END.CERTIFICATE--
161fa0 2d 2d 2d 0a 0a 4e 65 74 4c 6f 63 6b 20 41 72 61 6e 79 20 28 43 6c 61 73 73 20 47 6f 6c 64 29 20 ---..NetLock.Arany.(Class.Gold).
161fc0 46 c5 91 74 61 6e c3 ba 73 c3 ad 74 76 c3 a1 6e 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d F..tan..s..tv..ny.==============
161fe0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d ==============================.-
162000 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 46 ----BEGIN.CERTIFICATE-----.MIIEF
162020 54 43 43 41 76 32 67 41 77 49 42 41 67 49 47 53 55 45 73 35 41 41 51 4d 41 30 47 43 53 71 47 53 TCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGS
162040 49 62 33 44 51 45 42 43 77 55 41 4d 49 47 6e 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 49 56 Ib3DQEBCwUAMIGnMQswCQYDVQQGEwJIV
162060 54 45 52 4d 41 38 47 0a 41 31 55 45 42 77 77 49 51 6e 56 6b 59 58 42 6c 63 33 51 78 46 54 41 54 TERMA8G.A1UEBwwIQnVkYXBlc3QxFTAT
162080 42 67 4e 56 42 41 6f 4d 44 45 35 6c 64 45 78 76 59 32 73 67 53 32 5a 30 4c 6a 45 33 4d 44 55 47 BgNVBAoMDE5ldExvY2sgS2Z0LjE3MDUG
1620a0 41 31 55 45 43 77 77 75 56 47 46 75 77 37 70 7a 77 36 31 30 0a 64 73 4f 68 62 6e 6c 72 61 57 46 A1UECwwuVGFuw7pzw610.dsOhbnlraWF
1620c0 6b 77 37 4e 72 49 43 68 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 46 4e 6c 63 6e 5a kw7NrIChDZXJ0aWZpY2F0aW9uIFNlcnZ
1620e0 70 59 32 56 7a 4b 54 45 31 4d 44 4d 47 41 31 55 45 41 77 77 73 54 6d 56 30 54 47 39 6a 61 79 42 pY2VzKTE1MDMGA1UEAwwsTmV0TG9jayB
162100 42 0a 63 6d 46 75 65 53 41 6f 51 32 78 68 63 33 4d 67 52 32 39 73 5a 43 6b 67 52 73 57 52 64 47 B.cmFueSAoQ2xhc3MgR29sZCkgRsWRdG
162120 46 75 77 37 70 7a 77 36 31 30 64 73 4f 68 62 6e 6b 77 48 68 63 4e 4d 44 67 78 4d 6a 45 78 4d 54 Fuw7pzw610dsOhbnkwHhcNMDgxMjExMT
162140 55 77 4f 44 49 78 57 68 63 4e 4d 6a 67 78 0a 4d 6a 41 32 4d 54 55 77 4f 44 49 78 57 6a 43 42 70 UwODIxWhcNMjgx.MjA2MTUwODIxWjCBp
162160 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 53 46 55 78 45 54 41 50 42 67 4e 56 42 41 63 4d 43 zELMAkGA1UEBhMCSFUxETAPBgNVBAcMC
162180 45 4a 31 5a 47 46 77 5a 58 4e 30 4d 52 55 77 45 77 59 44 56 51 51 4b 44 41 78 4f 0a 5a 58 52 4d EJ1ZGFwZXN0MRUwEwYDVQQKDAxO.ZXRM
1621a0 62 32 4e 72 49 45 74 6d 64 43 34 78 4e 7a 41 31 42 67 4e 56 42 41 73 4d 4c 6c 52 68 62 73 4f 36 b2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6
1621c0 63 38 4f 74 64 48 62 44 6f 57 35 35 61 32 6c 68 5a 4d 4f 7a 61 79 41 6f 51 32 56 79 64 47 6c 6d c8OtdHbDoW55a2lhZMOzayAoQ2VydGlm
1621e0 61 57 4e 68 64 47 6c 76 0a 62 69 42 54 5a 58 4a 32 61 57 4e 6c 63 79 6b 78 4e 54 41 7a 42 67 4e aWNhdGlv.biBTZXJ2aWNlcykxNTAzBgN
162200 56 42 41 4d 4d 4c 45 35 6c 64 45 78 76 59 32 73 67 51 58 4a 68 62 6e 6b 67 4b 45 4e 73 59 58 4e VBAMMLE5ldExvY2sgQXJhbnkgKENsYXN
162220 7a 49 45 64 76 62 47 51 70 49 45 62 46 6b 58 52 68 62 73 4f 36 0a 63 38 4f 74 64 48 62 44 6f 57 zIEdvbGQpIEbFkXRhbsO6.c8OtdHbDoW
162240 35 35 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ
162260 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 78 43 52 65 63 37 35 4c 62 52 54 44 6f 66 54 6a 6c 35 8AMIIBCgKCAQEAxCRec75LbRTDofTjl5
162280 42 75 0a 30 6a 42 46 48 6a 7a 75 5a 39 6c 6b 34 42 71 4b 66 38 6f 77 79 6f 50 6a 49 4d 48 6a 39 Bu.0jBFHjzuZ9lk4BqKf8owyoPjIMHj9
1622a0 44 72 54 6c 46 38 61 66 46 74 74 76 7a 42 50 68 43 66 32 6e 78 39 4a 76 4d 61 5a 43 70 44 79 44 DrTlF8afFttvzBPhCf2nx9JvMaZCpDyD
1622c0 2f 56 2f 51 34 51 33 59 31 47 4c 65 71 56 77 0a 2f 48 70 59 7a 59 36 62 37 63 4e 47 62 49 52 77 /V/Q4Q3Y1GLeqVw./HpYzY6b7cNGbIRw
1622e0 58 64 72 7a 41 5a 41 6a 2f 45 34 77 71 58 37 68 4a 32 50 6e 37 57 51 38 6f 4c 6a 4a 4d 32 50 2b XdrzAZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+
162300 46 70 44 2f 73 4c 6a 39 31 36 6a 41 77 4a 52 44 43 37 62 56 57 61 61 65 56 74 41 6b 0a 48 33 42 FpD/sLj916jAwJRDC7bVWaaeVtAk.H3B
162320 35 72 39 73 35 56 41 31 6c 64 64 6b 56 51 5a 51 42 72 31 37 73 39 6f 33 78 2f 36 31 6b 2f 69 43 5r9s5VA1lddkVQZQBr17s9o3x/61k/iC
162340 61 31 31 7a 72 2f 71 59 66 43 47 53 6a 69 33 5a 56 72 52 34 37 4b 47 41 75 68 79 58 6f 71 71 38 a11zr/qYfCGSji3ZVrR47KGAuhyXoqq8
162360 66 78 6d 52 47 49 4c 64 77 0a 66 7a 7a 65 53 4e 75 57 55 37 63 35 64 2b 51 61 34 73 63 57 68 48 fxmRGILdw.fzzeSNuWU7c5d+Qa4scWhH
162380 61 58 57 79 2b 37 47 52 57 46 2b 47 6d 46 39 5a 6d 6e 71 66 49 30 70 36 6d 32 70 67 50 38 62 34 aXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4
1623a0 59 39 56 48 78 32 42 4a 74 72 2b 55 42 64 41 44 54 48 4c 70 6c 31 0a 6e 65 57 49 41 36 70 4e 2b Y9VHx2BJtr+UBdADTHLpl1.neWIA6pN+
1623c0 41 50 53 51 6e 62 41 47 77 49 44 41 4b 69 4c 6f 30 55 77 51 7a 41 53 42 67 4e 56 48 52 4d 42 41 APSQnbAGwIDAKiLo0UwQzASBgNVHRMBA
1623e0 66 38 45 43 44 41 47 41 51 48 2f 41 67 45 45 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 f8ECDAGAQH/AgEEMA4GA1UdDwEB/wQEA
162400 77 49 42 0a 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 7a 50 70 6e 6b 2f 43 32 75 4e 43 6c wIB.BjAdBgNVHQ4EFgQUzPpnk/C2uNCl
162420 77 42 37 7a 55 2f 32 4d 55 39 2b 44 31 35 59 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c wB7zU/2MU9+D15YwDQYJKoZIhvcNAQEL
162440 42 51 41 44 67 67 45 42 41 4b 74 2f 37 68 77 57 0a 71 5a 77 38 55 51 43 67 77 42 45 49 42 61 65 BQADggEBAKt/7hwW.qZw8UQCgwBEIBae
162460 5a 35 6d 38 42 69 46 52 68 62 76 47 35 47 4b 31 4b 72 66 36 42 51 43 4f 55 4c 2f 74 31 66 43 38 Z5m8BiFRhbvG5GK1Krf6BQCOUL/t1fC8
162480 6f 53 32 49 6b 67 59 49 4c 39 57 48 78 48 47 36 34 59 54 6a 72 67 66 70 69 6f 54 74 61 0a 59 74 oS2IkgYIL9WHxHG64YTjrgfpioTta.Yt
1624a0 4f 55 5a 63 54 68 35 6d 32 43 2b 43 38 6c 63 4c 49 68 4a 73 46 79 55 52 2b 4d 4c 4d 4f 45 6b 4d OUZcTh5m2C+C8lcLIhJsFyUR+MLMOEkM
1624c0 4e 61 6a 37 72 50 39 4b 64 6c 70 65 75 59 30 66 73 46 73 6b 5a 31 46 53 4e 71 62 34 56 6a 4d 49 Naj7rP9KdlpeuY0fsFskZ1FSNqb4VjMI
1624e0 44 77 31 5a 34 66 4b 52 7a 43 0a 62 4c 42 51 57 56 32 51 57 7a 75 6f 44 54 44 50 76 33 31 2f 7a Dw1Z4fKRzC.bLBQWV2QWzuoDTDPv31/z
162500 76 47 64 67 37 33 4a 52 6d 34 67 70 76 6c 68 55 62 6f 68 4c 33 75 2b 70 52 56 6a 6f 64 53 56 68 vGdg73JRm4gpvlhUbohL3u+pRVjodSVh
162520 2f 47 65 75 66 4f 4a 38 7a 32 46 75 4c 6a 62 76 72 57 35 4b 66 6e 61 0a 4e 77 55 41 53 5a 51 44 /GeufOJ8z2FuLjbvrW5Kfna.NwUASZQD
162540 68 45 54 6e 76 30 4d 78 7a 33 57 4c 4a 64 48 30 70 6d 54 31 6b 76 61 72 42 65 73 39 36 61 55 4c hETnv0Mxz3WLJdH0pmT1kvarBes96aUL
162560 4e 6d 4c 61 7a 41 5a 66 4e 6f 75 32 58 6a 47 34 4b 76 74 65 39 6e 48 66 52 43 61 65 78 4f 59 4e NmLazAZfNou2XjG4Kvte9nHfRCaexOYN
162580 6b 62 51 75 0a 64 5a 57 41 55 57 70 4c 4d 4b 61 77 59 71 47 54 38 5a 76 59 7a 73 52 6a 64 54 39 kbQu.dZWAUWpLMKawYqGT8ZvYzsRjdT9
1625a0 5a 52 37 45 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a ZR7E=.-----END.CERTIFICATE-----.
1625c0 0a 53 74 61 61 74 20 64 65 72 20 4e 65 64 65 72 6c 61 6e 64 65 6e 20 52 6f 6f 74 20 43 41 20 2d .Staat.der.Nederlanden.Root.CA.-
1625e0 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .G2.============================
162600 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d ======.-----BEGIN.CERTIFICATE---
162620 2d 2d 0a 4d 49 49 46 79 6a 43 43 41 37 4b 67 41 77 49 42 41 67 49 45 41 4a 69 57 6a 44 41 4e 42 --.MIIFyjCCA7KgAwIBAgIEAJiWjDANB
162640 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 61 4d 51 73 77 43 51 59 44 56 51 51 47 45 gkqhkiG9w0BAQsFADBaMQswCQYDVQQGE
162660 77 4a 4f 54 44 45 65 4d 42 77 47 41 31 55 45 0a 43 67 77 56 55 33 52 68 59 58 51 67 5a 47 56 79 wJOTDEeMBwGA1UE.CgwVU3RhYXQgZGVy
162680 49 45 35 6c 5a 47 56 79 62 47 46 75 5a 47 56 75 4d 53 73 77 4b 51 59 44 56 51 51 44 44 43 4a 54 IE5lZGVybGFuZGVuMSswKQYDVQQDDCJT
1626a0 64 47 46 68 64 43 42 6b 5a 58 49 67 54 6d 56 6b 5a 58 4a 73 59 57 35 6b 5a 57 34 67 0a 55 6d 39 dGFhdCBkZXIgTmVkZXJsYW5kZW4g.Um9
1626c0 76 64 43 42 44 51 53 41 74 49 45 63 79 4d 42 34 58 44 54 41 34 4d 44 4d 79 4e 6a 45 78 4d 54 67 vdCBDQSAtIEcyMB4XDTA4MDMyNjExMTg
1626e0 78 4e 31 6f 58 44 54 49 77 4d 44 4d 79 4e 54 45 78 4d 44 4d 78 4d 46 6f 77 57 6a 45 4c 4d 41 6b xN1oXDTIwMDMyNTExMDMxMFowWjELMAk
162700 47 41 31 55 45 42 68 4d 43 0a 54 6b 77 78 48 6a 41 63 42 67 4e 56 42 41 6f 4d 46 56 4e 30 59 57 GA1UEBhMC.TkwxHjAcBgNVBAoMFVN0YW
162720 46 30 49 47 52 6c 63 69 42 4f 5a 57 52 6c 63 6d 78 68 62 6d 52 6c 62 6a 45 72 4d 43 6b 47 41 31 F0IGRlciBOZWRlcmxhbmRlbjErMCkGA1
162740 55 45 41 77 77 69 55 33 52 68 59 58 51 67 5a 47 56 79 49 45 35 6c 0a 5a 47 56 79 62 47 46 75 5a UEAwwiU3RhYXQgZGVyIE5l.ZGVybGFuZ
162760 47 56 75 49 46 4a 76 62 33 51 67 51 30 45 67 4c 53 42 48 4d 6a 43 43 41 69 49 77 44 51 59 4a 4b GVuIFJvb3QgQ0EgLSBHMjCCAiIwDQYJK
162780 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 49 50 41 44 43 43 41 67 6f 43 67 67 49 42 41 oZIhvcNAQEBBQADggIPADCCAgoCggIBA
1627a0 4d 56 5a 0a 35 32 39 31 71 6a 35 4c 6e 4c 57 34 72 4a 34 4c 35 50 6e 5a 79 71 74 64 6a 37 55 35 MVZ.5291qj5LnLW4rJ4L5PnZyqtdj7U5
1627c0 45 49 4c 58 72 31 48 67 4f 2b 45 41 53 47 72 50 32 75 45 47 51 78 47 5a 71 68 51 6c 45 71 30 69 EILXr1HgO+EASGrP2uEGQxGZqhQlEq0i
1627e0 36 41 42 74 51 38 53 70 75 4f 55 66 69 55 74 6e 0a 76 57 46 49 37 2f 33 53 34 47 43 49 35 62 6b 6ABtQ8SpuOUfiUtn.vWFI7/3S4GCI5bk
162800 59 59 43 6a 44 64 79 75 74 73 44 65 71 4e 39 35 6b 57 53 70 47 56 2b 52 4c 75 66 67 33 66 4e 55 YYCjDdyutsDeqN95kWSpGV+RLufg3fNU
162820 32 35 34 44 42 74 76 50 55 5a 35 75 57 36 4d 37 58 78 67 70 54 30 47 74 4a 6c 76 4f 6a 0a 43 77 254DBtvPUZ5uW6M7XxgpT0GtJlvOj.Cw
162840 56 33 53 50 63 6c 35 58 43 73 4d 42 51 67 4a 65 4e 2f 64 56 72 6c 53 50 68 4f 65 77 4d 48 42 50 V3SPcl5XCsMBQgJeN/dVrlSPhOewMHBP
162860 71 43 59 59 64 75 38 44 76 45 70 4d 66 51 39 58 51 2b 70 56 30 61 43 50 4b 62 4a 64 4c 32 72 41 qCYYdu8DvEpMfQ9XQ+pV0aCPKbJdL2rA
162880 51 6d 50 6c 55 36 59 69 69 6c 0a 65 37 49 77 72 2f 67 33 77 74 47 36 31 6a 6a 39 39 4f 39 4a 4d QmPlU6Yiil.e7Iwr/g3wtG61jj99O9JM
1628a0 44 65 5a 4a 69 46 49 68 51 47 70 35 52 62 6e 33 4a 42 56 33 77 2f 6f 4f 4d 32 5a 4e 79 46 50 58 DeZJiFIhQGp5Rbn3JBV3w/oOM2ZNyFPX
1628c0 66 55 69 62 32 72 46 45 68 5a 67 46 31 58 79 5a 57 61 6d 70 7a 43 52 0a 4f 4d 45 34 48 59 59 45 fUib2rFEhZgF1XyZWampzCR.OME4HYYE
1628e0 68 4c 6f 61 4a 58 68 65 6e 61 2f 4d 55 47 44 57 45 34 64 53 37 57 4d 66 62 57 56 39 77 68 55 59 hLoaJXhena/MUGDWE4dS7WMfbWV9whUY
162900 64 4d 72 68 66 6d 51 70 6a 48 4c 59 46 68 4e 39 43 30 6c 4b 38 53 67 62 49 48 52 72 78 54 33 64 dMrhfmQpjHLYFhN9C0lK8SgbIHRrxT3d
162920 73 4b 70 49 0a 43 54 30 75 67 70 54 4e 47 6d 58 5a 4b 34 69 61 6d 62 77 59 66 70 2f 75 66 57 5a sKpI.CT0ugpTNGmXZK4iambwYfp/ufWZ
162940 38 50 72 32 55 75 49 48 4f 7a 5a 67 77 65 4d 46 76 5a 39 43 2b 58 2b 42 6f 37 64 37 69 73 63 6b 8Pr2UuIHOzZgweMFvZ9C+X+Bo7d7isck
162960 73 57 58 69 53 71 74 38 72 59 47 50 79 35 56 36 35 0a 34 38 72 36 66 31 43 47 50 71 49 30 47 41 sWXiSqt8rYGPy5V65.48r6f1CGPqI0GA
162980 77 4a 61 43 67 52 48 4f 54 68 75 56 77 2b 52 37 6f 79 50 78 6a 4d 57 34 54 31 38 32 74 30 78 48 wJaCgRHOThuVw+R7oyPxjMW4T182t0xH
1629a0 4a 30 34 65 4f 4c 6f 45 71 39 6a 57 59 76 36 71 30 31 32 69 44 54 69 49 4a 68 38 42 49 69 0a 74 J04eOLoEq9jWYv6q012iDTiIJh8BIi.t
1629c0 72 7a 51 31 61 54 73 72 31 53 49 4a 53 51 38 70 32 32 78 63 69 6b 2f 50 6c 65 6d 66 31 57 76 62 rzQ1aTsr1SIJSQ8p22xcik/Plemf1Wvb
1629e0 69 62 47 2f 75 66 4d 51 46 78 52 52 49 45 4b 65 4e 35 4b 7a 6c 57 2f 48 64 58 5a 74 31 62 76 38 ibG/ufMQFxRRIEKeN5KzlW/HdXZt1bv8
162a00 48 62 2f 43 33 6d 31 72 37 33 37 0a 71 57 6d 52 52 70 64 6f 67 42 51 32 48 62 4e 2f 75 79 6d 59 Hb/C3m1r737.qWmRRpdogBQ2HbN/uymY
162a20 4e 71 55 67 2b 6f 4a 67 59 6a 4f 6b 37 4e 61 36 42 36 64 75 78 63 38 55 70 75 66 57 6b 6a 54 59 NqUg+oJgYjOk7Na6B6duxc8UpufWkjTY
162a40 67 66 58 38 48 56 32 71 58 42 37 32 6f 30 30 37 75 50 63 35 41 67 4d 42 0a 41 41 47 6a 67 5a 63 gfX8HV2qXB72o007uPc5AgMB.AAGjgZc
162a60 77 67 5a 51 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 42 53 42 67 4e wgZQwDwYDVR0TAQH/BAUwAwEB/zBSBgN
162a80 56 48 53 41 45 53 7a 42 4a 4d 45 63 47 42 46 55 64 49 41 41 77 50 7a 41 39 42 67 67 72 42 67 45 VHSAESzBJMEcGBFUdIAAwPzA9BggrBgE
162aa0 46 42 51 63 43 0a 41 52 59 78 61 48 52 30 63 44 6f 76 4c 33 64 33 64 79 35 77 61 32 6c 76 64 6d FBQcC.ARYxaHR0cDovL3d3dy5wa2lvdm
162ac0 56 79 61 47 56 70 5a 43 35 75 62 43 39 77 62 32 78 70 59 32 6c 6c 63 79 39 79 62 32 39 30 4c 58 VyaGVpZC5ubC9wb2xpY2llcy9yb290LX
162ae0 42 76 62 47 6c 6a 65 53 31 48 4d 6a 41 4f 42 67 4e 56 0a 48 51 38 42 41 66 38 45 42 41 4d 43 41 BvbGljeS1HMjAOBgNV.HQ8BAf8EBAMCA
162b00 51 59 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4a 46 6f 4d 6f 63 56 48 59 6e 69 74 66 47 73 4e QYwHQYDVR0OBBYEFJFoMocVHYnitfGsN
162b20 69 67 30 6a 51 74 38 59 6f 6a 72 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 0a ig0jQt8YojrMA0GCSqGSIb3DQEBCwUA.
162b40 41 34 49 43 41 51 43 6f 51 55 70 6e 4b 70 4b 42 67 6c 42 75 34 64 66 59 73 7a 6b 37 38 77 49 56 A4ICAQCoQUpnKpKBglBu4dfYszk78wIV
162b60 43 56 42 52 37 79 32 39 4a 48 75 49 68 6a 76 35 74 4c 79 53 43 5a 61 35 39 73 43 72 49 32 41 47 CVBR7y29JHuIhjv5tLySCZa59sCrI2AG
162b80 65 59 77 52 54 6c 48 53 65 59 41 7a 0a 2b 35 31 49 76 75 78 42 51 34 45 66 66 6b 64 41 48 4f 56 eYwRTlHSeYAz.+51IvuxBQ4EffkdAHOV
162ba0 36 43 4d 71 71 69 33 57 74 46 4d 54 43 36 47 59 38 67 67 65 6e 35 69 65 43 57 78 6a 6d 44 32 37 6CMqqi3WtFMTC6GY8ggen5ieCWxjmD27
162bc0 5a 55 44 36 4b 51 68 67 70 78 72 52 57 2f 46 59 51 6f 41 55 58 76 51 77 6a 0a 66 2f 53 54 37 5a ZUD6KQhgpxrRW/FYQoAUXvQwj.f/ST7Z
162be0 77 61 55 62 37 64 52 55 47 2f 6b 53 53 30 48 34 7a 70 58 38 39 37 49 5a 6d 66 6c 5a 38 35 4f 6b waUb7dRUG/kSS0H4zpX897IZmflZ85Ok
162c00 59 63 62 50 6e 4e 65 35 79 51 7a 53 69 70 78 36 6c 56 75 36 78 69 4e 47 49 31 45 30 73 55 4f 6c YcbPnNe5yQzSipx6lVu6xiNGI1E0sUOl
162c20 57 44 75 59 61 4e 0a 6b 71 62 47 39 41 63 6c 56 4d 77 57 56 78 4a 4b 67 6e 6a 49 46 4e 6b 58 67 WDuYaN.kqbG9AclVMwWVxJKgnjIFNkXg
162c40 69 59 74 58 53 41 66 65 61 37 2b 31 48 41 57 46 70 57 44 32 44 55 35 2f 31 4a 64 64 52 77 57 78 iYtXSAfea7+1HAWFpWD2DU5/1JddRwWx
162c60 52 4e 56 7a 30 66 4d 64 57 56 53 53 74 37 77 73 4b 66 6b 0a 43 70 59 4c 2b 36 33 43 34 69 57 45 RNVz0fMdWVSSt7wsKfk.CpYL+63C4iWE
162c80 73 74 33 6b 76 58 35 5a 62 4a 76 77 38 4e 6a 6e 79 76 4c 70 6c 7a 68 2b 69 62 37 4d 2b 7a 6b 58 st3kvX5ZbJvw8NjnyvLplzh+ib7M+zkX
162ca0 59 54 39 79 32 7a 71 52 32 47 55 42 47 52 32 74 55 4b 52 58 43 6e 78 4c 76 4a 78 78 63 79 70 46 YT9y2zqR2GUBGR2tUKRXCnxLvJxxcypF
162cc0 0a 55 52 6d 46 7a 49 37 39 52 36 64 30 6c 52 32 6f 30 61 39 4f 46 37 46 70 4a 73 4b 71 65 46 64 .URmFzI79R6d0lR2o0a9OF7FpJsKqeFd
162ce0 62 78 55 32 6e 35 5a 34 46 46 35 54 4b 73 6c 2b 67 53 52 69 4e 4e 4f 6b 6d 62 45 67 65 71 6d 69 bxU2n5Z4FF5TKsl+gSRiNNOkmbEgeqmi
162d00 53 42 65 47 43 63 31 71 62 33 41 64 62 0a 43 47 31 39 6e 64 65 4e 49 64 6e 38 46 43 43 71 77 6b SBeGCc1qb3Adb.CG19ndeNIdn8FCCqwk
162d20 58 66 50 2b 63 41 73 6c 48 6b 77 76 67 46 75 58 6b 61 6a 44 54 7a 6e 6c 76 6b 4e 31 74 72 53 74 XfP+cAslHkwvgFuXkajDTznlvkN1trSt
162d40 38 73 56 34 70 41 57 6a 61 36 33 58 56 45 43 44 64 43 63 41 7a 2b 33 46 34 68 0a 6f 4b 4f 4b 77 8sV4pAWja63XVECDdCcAz+3F4h.oKOKw
162d60 4a 43 63 61 4e 70 51 35 6b 55 51 52 33 69 32 54 74 4a 6c 79 63 4d 33 33 2b 46 43 59 37 42 58 4e JCcaNpQ5kUQR3i2TtJlycM33+FCY7BXN
162d80 30 55 74 65 34 71 63 76 77 58 71 5a 56 55 7a 39 7a 6b 51 78 53 67 71 49 58 6f 62 69 73 51 6b 2b 0Ute4qcvwXqZVUz9zkQxSgqIXobisQk+
162da0 54 38 56 79 4a 6f 56 0a 49 50 56 56 59 70 62 74 62 5a 4e 51 76 4f 53 71 65 4b 33 5a 79 77 70 6c T8VyJoV.IPVVYpbtbZNQvOSqeK3Zywpl
162dc0 68 36 5a 6d 77 63 53 42 6f 33 63 36 57 42 34 4c 37 6f 4f 4c 6e 52 37 53 55 71 54 4d 48 57 2b 77 h6ZmwcSBo3c6WB4L7oOLnR7SUqTMHW+w
162de0 6d 47 32 55 4d 62 58 34 63 51 72 63 75 66 78 39 4d 6d 44 6d 0a 36 36 2b 4b 41 51 3d 3d 0a 2d 2d mG2UMbX4cQrcufx9MmDm.66+KAQ==.--
162e00 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 41 20 44 69 73 69 ---END.CERTIFICATE-----..CA.Disi
162e20 67 0a 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 g.========.-----BEGIN.CERTIFICAT
162e40 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 44 7a 43 43 41 76 65 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 E-----.MIIEDzCCAvegAwIBAgIBATANB
162e60 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 4b 4d 51 73 77 43 51 59 44 56 51 51 47 45 gkqhkiG9w0BAQUFADBKMQswCQYDVQQGE
162e80 77 4a 54 53 7a 45 54 4d 42 45 47 41 31 55 45 42 78 4d 4b 0a 51 6e 4a 68 64 47 6c 7a 62 47 46 32 wJTSzETMBEGA1UEBxMK.QnJhdGlzbGF2
162ea0 59 54 45 54 4d 42 45 47 41 31 55 45 43 68 4d 4b 52 47 6c 7a 61 57 63 67 59 53 35 7a 4c 6a 45 52 YTETMBEGA1UEChMKRGlzaWcgYS5zLjER
162ec0 4d 41 38 47 41 31 55 45 41 78 4d 49 51 30 45 67 52 47 6c 7a 61 57 63 77 48 68 63 4e 4d 44 59 77 MA8GA1UEAxMIQ0EgRGlzaWcwHhcNMDYw
162ee0 0a 4d 7a 49 79 4d 44 45 7a 4f 54 4d 30 57 68 63 4e 4d 54 59 77 4d 7a 49 79 4d 44 45 7a 4f 54 4d .MzIyMDEzOTM0WhcNMTYwMzIyMDEzOTM
162f00 30 57 6a 42 4b 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 54 53 7a 45 54 4d 42 45 47 41 31 55 0WjBKMQswCQYDVQQGEwJTSzETMBEGA1U
162f20 45 42 78 4d 4b 51 6e 4a 68 64 47 6c 7a 0a 62 47 46 32 59 54 45 54 4d 42 45 47 41 31 55 45 43 68 EBxMKQnJhdGlz.bGF2YTETMBEGA1UECh
162f40 4d 4b 52 47 6c 7a 61 57 63 67 59 53 35 7a 4c 6a 45 52 4d 41 38 47 41 31 55 45 41 78 4d 49 51 30 MKRGlzaWcgYS5zLjERMA8GA1UEAxMIQ0
162f60 45 67 52 47 6c 7a 61 57 63 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 0a 44 51 45 42 41 EgRGlzaWcwggEiMA0GCSqGSIb3.DQEBA
162f80 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 53 39 6a 48 42 66 59 6a 39 6d QUAA4IBDwAwggEKAoIBAQCS9jHBfYj9m
162fa0 51 47 70 32 48 76 79 63 58 58 78 4d 63 62 7a 64 57 62 36 55 53 68 47 68 4a 64 34 4e 4c 78 73 2f QGp2HvycXXxMcbzdWb6UShGhJd4NLxs/
162fc0 4c 78 46 57 59 67 6d 0a 47 45 72 45 4e 78 2b 68 53 6b 53 39 34 33 45 45 39 55 51 58 34 6a 2f 38 LxFWYgm.GErENx+hSkS943EE9UQX4j/8
162fe0 53 46 68 76 58 4a 35 36 43 62 70 52 4e 79 49 6a 5a 6b 4d 68 73 44 78 6b 6f 76 68 71 46 51 34 2f SFhvXJ56CbpRNyIjZkMhsDxkovhqFQ4/
163000 36 31 48 68 56 4b 6e 64 42 70 6e 58 6d 6a 78 55 69 7a 6b 44 0a 50 77 2f 46 7a 73 62 72 67 33 49 61HhVKndBpnXmjxUizkD.Pw/Fzsbrg3I
163020 43 71 42 39 78 38 79 33 34 64 51 6a 62 59 6b 7a 6f 2b 73 37 35 35 32 6f 66 74 6d 73 31 67 72 72 CqB9x8y34dQjbYkzo+s7552oftms1grr
163040 69 6a 78 61 53 66 51 55 4d 62 45 59 44 58 63 44 74 61 62 38 36 77 59 71 67 36 49 37 5a 75 55 55 ijxaSfQUMbEYDXcDtab86wYqg6I7ZuUU
163060 6f 0a 68 77 6a 73 74 4d 6f 56 76 6f 4c 64 74 55 53 4c 4c 61 32 47 44 47 68 69 62 59 56 57 38 71 o.hwjstMoVvoLdtUSLLa2GDGhibYVW8q
163080 77 55 59 7a 72 47 30 5a 6d 73 4e 48 68 57 53 38 2b 32 72 54 2b 4d 69 74 63 45 35 65 4e 34 54 50 wUYzrG0ZmsNHhWS8+2rT+MitcE5eN4TP
1630a0 57 47 71 76 57 50 2b 6a 31 73 63 61 4d 74 0a 79 6d 66 72 61 48 74 75 4d 36 6b 4d 67 69 69 6f 54 WGqvWP+j1scaMt.ymfraHtuM6kMgiioT
1630c0 47 6f 68 51 42 55 67 44 43 5a 62 67 38 4b 70 46 68 58 41 4a 49 4a 64 4b 78 61 74 79 6d 50 32 64 GohQBUgDCZbg8KpFhXAJIJdKxatymP2d
1630e0 41 43 77 33 30 50 45 45 47 42 57 5a 32 4e 46 41 67 4d 42 41 41 47 6a 67 66 38 77 0a 67 66 77 77 ACw30PEEGBWZ2NFAgMBAAGjgf8w.gfww
163100 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 45 DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E
163120 46 67 51 55 6a 62 4a 4a 61 4a 31 79 43 43 57 35 77 43 66 31 55 4a 4e 57 53 45 5a 78 2b 59 38 77 FgQUjbJJaJ1yCCW5wCf1UJNWSEZx+Y8w
163140 44 67 59 44 56 52 30 50 0a 41 51 48 2f 42 41 51 44 41 67 45 47 4d 44 59 47 41 31 55 64 45 51 51 DgYDVR0P.AQH/BAQDAgEGMDYGA1UdEQQ
163160 76 4d 43 32 42 45 32 4e 68 62 33 42 6c 63 6d 46 30 62 33 4a 41 5a 47 6c 7a 61 57 63 75 63 32 75 vMC2BE2Nhb3BlcmF0b3JAZGlzaWcuc2u
163180 47 46 6d 68 30 64 48 41 36 4c 79 39 33 64 33 63 75 5a 47 6c 7a 0a 61 57 63 75 63 32 73 76 59 32 GFmh0dHA6Ly93d3cuZGlz.aWcuc2svY2
1631a0 45 77 5a 67 59 44 56 52 30 66 42 46 38 77 58 54 41 74 6f 43 75 67 4b 59 59 6e 61 48 52 30 63 44 EwZgYDVR0fBF8wXTAtoCugKYYnaHR0cD
1631c0 6f 76 4c 33 64 33 64 79 35 6b 61 58 4e 70 5a 79 35 7a 61 79 39 6a 59 53 39 6a 63 6d 77 76 59 32 ovL3d3dy5kaXNpZy5zay9jYS9jcmwvY2
1631e0 46 66 0a 5a 47 6c 7a 61 57 63 75 59 33 4a 73 4d 43 79 67 4b 71 41 6f 68 69 5a 6f 64 48 52 77 4f Ff.ZGlzaWcuY3JsMCygKqAohiZodHRwO
163200 69 38 76 59 32 45 75 5a 47 6c 7a 61 57 63 75 63 32 73 76 59 32 45 76 59 33 4a 73 4c 32 4e 68 58 i8vY2EuZGlzaWcuc2svY2EvY3JsL2NhX
163220 32 52 70 63 32 6c 6e 4c 6d 4e 79 62 44 41 61 0a 42 67 4e 56 48 53 41 45 45 7a 41 52 4d 41 38 47 2Rpc2lnLmNybDAa.BgNVHSAEEzARMA8G
163240 44 53 75 42 48 70 47 54 35 67 6f 41 41 41 41 42 41 51 45 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e DSuBHpGT5goAAAABAQEwDQYJKoZIhvcN
163260 41 51 45 46 42 51 41 44 67 67 45 42 41 46 30 30 64 47 46 4d 72 7a 76 59 2f 35 39 74 0a 57 44 59 AQEFBQADggEBAF00dGFMrzvY/59t.WDY
163280 63 50 51 75 42 44 52 49 72 52 68 43 41 2f 65 63 38 4a 39 42 36 79 4b 6d 32 66 6e 51 77 4d 36 4d cPQuBDRIrRhCA/ec8J9B6yKm2fnQwM6M
1632a0 36 69 6e 74 30 77 48 6c 35 51 70 4e 74 2f 37 45 70 46 49 4b 72 49 59 77 76 46 2f 6b 2f 4a 69 2f 6int0wHl5QpNt/7EpFIKrIYwvF/k/Ji/
1632c0 31 57 63 62 76 67 41 61 33 0a 6d 6b 6b 70 37 4d 35 2b 63 54 78 71 45 45 48 41 39 74 4f 61 73 6e 1WcbvgAa3.mkkp7M5+cTxqEEHA9tOasn
1632e0 78 61 6b 5a 7a 41 72 46 76 49 54 56 37 33 34 56 50 2f 51 33 66 38 6e 6b 74 6e 62 4e 66 7a 67 39 xakZzArFvITV734VP/Q3f8nktnbNfzg9
163300 47 67 34 48 38 6c 33 37 69 59 43 35 6f 79 4f 47 77 77 6f 50 50 2f 0a 43 42 55 7a 39 31 42 4b 65 Gg4H8l37iYC5oyOGwwoPP/.CBUz91BKe
163320 7a 36 6a 50 69 43 70 33 43 39 57 67 41 72 74 51 56 43 77 79 66 54 73 73 75 4d 6d 52 41 41 4f 62 z6jPiCp3C9WgArtQVCwyfTssuMmRAAOb
163340 35 34 47 76 43 4b 57 55 33 42 6c 78 46 41 4b 52 6d 75 6b 4c 79 65 42 45 69 63 54 58 78 43 68 64 54GvCKWU3BlxFAKRmukLyeBEicTXxChd
163360 73 36 4b 0a 65 7a 66 71 77 7a 6c 68 41 35 57 59 4f 75 64 73 69 43 55 49 2f 48 6c 6f 44 59 64 39 s6K.ezfqwzlhA5WYOudsiCUI/HloDYd9
163380 59 76 69 30 58 2f 76 46 32 45 79 39 57 4c 77 2f 51 31 76 55 48 67 46 4e 50 47 4f 2b 49 2b 2b 4d Yvi0X/vF2Ey9WLw/Q1vUHgFNPGO+I++M
1633a0 7a 56 70 51 75 47 68 55 2b 51 71 5a 4d 78 45 41 0a 34 5a 37 43 52 6e 65 43 39 56 6b 47 6a 43 46 zVpQuGhU+QqZMxEA.4Z7CRneC9VkGjCF
1633c0 4d 68 77 6e 4e 35 61 67 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d MhwnN5ag=.-----END.CERTIFICATE--
1633e0 2d 2d 2d 0a 0a 4a 75 75 72 2d 53 4b 0a 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 ---..Juur-SK.=======.-----BEGIN.
163400 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 35 6a 43 43 41 38 36 67 41 77 49 CERTIFICATE-----.MIIE5jCCA86gAwI
163420 42 41 67 49 45 4f 34 35 4c 2f 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 BAgIEO45L/DANBgkqhkiG9w0BAQUFADB
163440 64 4d 52 67 77 46 67 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 6b 42 46 67 6c 77 61 32 6c 41 0a 63 32 dMRgwFgYJKoZIhvcNAQkBFglwa2lA.c2
163460 73 75 5a 57 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 56 46 4d 53 49 77 49 41 59 44 56 51 suZWUxCzAJBgNVBAYTAkVFMSIwIAYDVQ
163480 51 4b 45 78 6c 42 55 79 42 54 5a 58 4a 30 61 57 5a 70 64 48 4e 6c 5a 58 4a 70 62 57 6c 7a 61 32 QKExlBUyBTZXJ0aWZpdHNlZXJpbWlza2
1634a0 56 7a 61 33 56 7a 4d 52 41 77 0a 44 67 59 44 56 51 51 44 45 77 64 4b 64 58 56 79 4c 56 4e 4c 4d Vza3VzMRAw.DgYDVQQDEwdKdXVyLVNLM
1634c0 42 34 58 44 54 41 78 4d 44 67 7a 4d 44 45 30 4d 6a 4d 77 4d 56 6f 58 44 54 45 32 4d 44 67 79 4e B4XDTAxMDgzMDE0MjMwMVoXDTE2MDgyN
1634e0 6a 45 30 4d 6a 4d 77 4d 56 6f 77 58 54 45 59 4d 42 59 47 43 53 71 47 0a 53 49 62 33 44 51 45 4a jE0MjMwMVowXTEYMBYGCSqG.SIb3DQEJ
163500 41 52 59 4a 63 47 74 70 51 48 4e 72 4c 6d 56 6c 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 ARYJcGtpQHNrLmVlMQswCQYDVQQGEwJF
163520 52 54 45 69 4d 43 41 47 41 31 55 45 43 68 4d 5a 51 56 4d 67 55 32 56 79 64 47 6c 6d 61 58 52 7a RTEiMCAGA1UEChMZQVMgU2VydGlmaXRz
163540 5a 57 56 79 0a 61 57 31 70 63 32 74 6c 63 32 74 31 63 7a 45 51 4d 41 34 47 41 31 55 45 41 78 4d ZWVy.aW1pc2tlc2t1czEQMA4GA1UEAxM
163560 48 53 6e 56 31 63 69 31 54 53 7a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 HSnV1ci1TSzCCASIwDQYJKoZIhvcNAQE
163580 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 0a 67 67 45 42 41 49 46 78 4e 6a 34 7a 42 39 BBQADggEPADCCAQoC.ggEBAIFxNj4zB9
1635a0 62 6a 4d 49 30 54 66 6e 63 79 52 73 76 50 47 62 4a 67 4d 55 61 58 68 76 53 59 52 71 54 43 5a 55 bjMI0TfncyRsvPGbJgMUaXhvSYRqTCZU
1635c0 58 50 30 30 42 38 34 31 6f 69 71 42 42 34 4d 38 79 49 73 64 4f 42 53 76 5a 69 46 33 74 66 0a 54 XP00B841oiqBB4M8yIsdOBSvZiF3tf.T
1635e0 51 6f 75 30 4d 2b 4c 49 2b 35 50 41 6b 36 37 36 77 37 4b 76 52 68 6a 36 49 41 63 6a 65 45 63 6a Qou0M+LI+5PAk676w7KvRhj6IAcjeEcj
163600 54 33 67 2f 31 74 66 36 6d 54 6c 6c 2b 67 2f 6d 58 38 4d 43 67 6b 7a 41 42 70 54 70 79 48 68 4f T3g/1tf6mTll+g/mX8MCgkzABpTpyHhO
163620 45 76 57 67 78 75 74 72 32 54 43 0a 2b 52 78 36 6a 47 5a 49 54 57 59 66 47 41 72 69 50 72 73 66 EvWgxutr2TC.+Rx6jGZITWYfGAriPrsf
163640 42 32 57 54 68 62 6b 61 73 4c 6e 45 2b 77 30 52 39 76 58 57 2b 52 76 48 4c 43 75 33 47 46 48 2b B2WThbkasLnE+w0R9vXW+RvHLCu3GFH+
163660 34 48 76 32 71 45 69 76 62 44 74 50 4c 2b 2f 34 30 55 63 65 4a 6c 66 77 0a 55 52 30 7a 6c 76 2f 4Hv2qEivbDtPL+/40UceJlfw.UR0zlv/
163680 76 57 54 33 61 54 64 45 56 4e 4d 66 71 50 78 5a 49 65 35 45 63 67 45 4d 50 50 62 67 46 50 74 47 vWT3aTdEVNMfqPxZIe5EcgEMPPbgFPtG
1636a0 7a 6c 63 33 59 79 67 2f 43 51 32 66 62 74 35 50 67 49 6f 49 75 76 76 56 6f 4b 49 4f 35 77 54 74 zlc3Yyg/CQ2fbt5PgIoIuvvVoKIO5wTt
1636c0 70 65 79 44 61 0a 54 70 78 74 34 62 72 4e 6a 33 70 73 73 41 6b 69 31 34 73 4c 32 78 7a 56 57 69 peyDa.Tpxt4brNj3pssAki14sL2xzVWi
1636e0 5a 62 44 63 44 71 35 57 44 51 6e 2f 34 31 33 7a 38 43 41 77 45 41 41 61 4f 43 41 61 77 77 67 67 ZbDcDq5WDQn/413z8CAwEAAaOCAawwgg
163700 47 6f 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 0a 4d 41 4d 42 41 66 38 77 67 67 45 57 42 GoMA8GA1UdEwEB/wQF.MAMBAf8wggEWB
163720 67 4e 56 48 53 41 45 67 67 45 4e 4d 49 49 42 43 54 43 43 41 51 55 47 43 69 73 47 41 51 51 42 7a gNVHSAEggENMIIBCTCCAQUGCisGAQQBz
163740 68 38 42 41 51 45 77 67 66 59 77 67 64 41 47 43 43 73 47 41 51 55 46 42 77 49 43 4d 49 48 44 0a h8BAQEwgfYwgdAGCCsGAQUFBwICMIHD.
163760 48 6f 48 41 41 46 4d 41 5a 51 42 6c 41 43 41 41 63 77 42 6c 41 48 49 41 64 41 42 70 41 47 59 41 HoHAAFMAZQBlACAAcwBlAHIAdABpAGYA
163780 61 51 42 72 41 47 45 41 59 51 42 30 41 43 41 41 62 77 42 75 41 43 41 41 64 67 44 6b 41 47 77 41 aQBrAGEAYQB0ACAAbwBuACAAdgDkAGwA
1637a0 61 67 42 68 41 48 4d 41 64 41 42 68 0a 41 48 51 41 64 51 42 6b 41 43 41 41 51 51 42 54 41 43 30 agBhAHMAdABh.AHQAdQBkACAAQQBTAC0
1637c0 41 61 51 42 7a 41 43 41 41 55 77 42 6c 41 48 49 41 64 41 42 70 41 47 59 41 61 51 42 30 41 48 4d AaQBzACAAUwBlAHIAdABpAGYAaQB0AHM
1637e0 41 5a 51 42 6c 41 48 49 41 61 51 42 74 41 47 6b 41 63 77 42 72 41 47 55 41 0a 63 77 42 72 41 48 AZQBlAHIAaQBtAGkAcwBrAGUA.cwBrAH
163800 55 41 63 77 41 67 41 47 45 41 62 41 42 68 41 47 30 41 4c 51 42 54 41 45 73 41 49 41 42 7a 41 47 UAcwAgAGEAbABhAG0ALQBTAEsAIABzAG
163820 55 41 63 67 42 30 41 47 6b 41 5a 67 42 70 41 47 73 41 59 51 42 68 41 48 51 41 61 51 42 6b 41 47 UAcgB0AGkAZgBpAGsAYQBhAHQAaQBkAG
163840 55 41 49 41 42 72 0a 41 47 6b 41 62 67 42 75 41 47 6b 41 64 41 42 68 41 47 30 41 61 51 42 7a 41 UAIABr.AGkAbgBuAGkAdABhAG0AaQBzA
163860 47 55 41 61 77 42 7a 4d 43 45 47 43 43 73 47 41 51 55 46 42 77 49 42 46 68 56 6f 64 48 52 77 4f GUAawBzMCEGCCsGAQUFBwIBFhVodHRwO
163880 69 38 76 64 33 64 33 4c 6e 4e 72 4c 6d 56 6c 4c 32 4e 77 0a 63 79 38 77 4b 77 59 44 56 52 30 66 i8vd3d3LnNrLmVlL2Nw.cy8wKwYDVR0f
1638a0 42 43 51 77 49 6a 41 67 6f 42 36 67 48 49 59 61 61 48 52 30 63 44 6f 76 4c 33 64 33 64 79 35 7a BCQwIjAgoB6gHIYaaHR0cDovL3d3dy5z
1638c0 61 79 35 6c 5a 53 39 71 64 58 56 79 4c 32 4e 79 62 43 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 ay5lZS9qdXVyL2NybC8wHQYDVR0OBBYE
1638e0 0a 46 41 53 71 65 6b 65 6a 35 49 6d 76 47 73 38 4b 51 4b 63 59 50 32 2f 76 36 58 32 2b 4d 42 38 .FASqekej5ImvGs8KQKcYP2/v6X2+MB8
163900 47 41 31 55 64 49 77 51 59 4d 42 61 41 46 41 53 71 65 6b 65 6a 35 49 6d 76 47 73 38 4b 51 4b 63 GA1UdIwQYMBaAFASqekej5ImvGs8KQKc
163920 59 50 32 2f 76 36 58 32 2b 4d 41 34 47 0a 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 35 6a YP2/v6X2+MA4G.A1UdDwEB/wQEAwIB5j
163940 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 65 38 45 59 6c 46 ANBgkqhkiG9w0BAQUFAAOCAQEAe8EYlF
163960 4f 69 43 66 50 2b 4a 6d 65 61 55 4f 54 44 42 53 38 72 4e 58 69 52 54 48 79 6f 0a 45 52 46 35 54 OiCfP+JmeaUOTDBS8rNXiRTHyo.ERF5T
163980 45 6c 5a 72 4d 6a 33 68 57 56 63 52 72 73 37 45 4b 41 43 72 38 31 50 74 63 77 32 4b 75 78 64 2f ElZrMj3hWVcRrs7EKACr81Ptcw2Kuxd/
1639a0 75 2b 67 6b 63 6d 32 6b 32 39 38 67 46 54 73 78 77 68 77 44 59 37 37 67 75 77 71 59 48 68 70 4e u+gkcm2k298gFTsxwhwDY77guwqYHhpN
1639c0 6a 62 52 78 5a 79 4c 0a 61 62 56 41 79 4a 52 6c 64 2f 4a 58 49 57 59 37 7a 6f 56 41 74 6a 4e 6a jbRxZyL.abVAyJRld/JXIWY7zoVAtjNj
1639e0 47 72 39 35 48 76 78 63 48 64 4d 64 6b 78 75 4c 44 46 32 46 76 5a 6b 77 4d 68 67 4a 6b 56 4c 70 Gr95HvxcHdMdkxuLDF2FvZkwMhgJkVLp
163a00 66 4b 47 36 2f 32 53 53 6d 75 7a 2b 4e 65 36 4d 4c 36 37 38 0a 49 49 62 73 53 74 34 62 65 44 49 fKG6/2SSmuz+Ne6ML678.IIbsSt4beDI
163a20 33 70 6f 48 53 6e 61 39 61 45 68 62 4b 6d 56 76 38 62 32 30 4f 78 61 41 65 68 73 6d 52 30 46 79 3poHSna9aEhbKmVv8b20OxaAehsmR0Fy
163a40 59 67 6c 39 6a 44 49 70 61 71 39 69 56 70 73 7a 4c 69 74 61 2f 5a 45 75 4f 79 6f 71 79 73 4f 6b Ygl9jDIpaq9iVpszLita/ZEuOyoqysOk
163a60 68 0a 4d 70 36 71 71 49 57 59 4e 49 45 35 49 54 75 6f 4f 6c 49 79 50 66 5a 72 4e 34 59 47 57 68 h.Mp6qqIWYNIE5ITuoOlIyPfZrN4YGWh
163a80 57 59 33 50 41 52 5a 76 34 30 49 4c 63 44 39 45 45 51 66 54 6d 45 65 5a 5a 79 59 37 61 57 41 75 WY3PARZv40ILcD9EEQfTmEeZZyY7aWAu
163aa0 56 72 75 61 30 5a 54 62 76 47 52 4e 73 32 0a 79 79 71 63 6a 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 Vrua0ZTbvGRNs2.yyqcjg==.-----END
163ac0 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 48 6f 6e 67 6b 6f 6e 67 20 50 6f 73 74 .CERTIFICATE-----..Hongkong.Post
163ae0 20 52 6f 6f 74 20 43 41 20 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .Root.CA.1.=====================
163b00 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d ==.-----BEGIN.CERTIFICATE-----.M
163b20 49 49 44 4d 44 43 43 41 68 69 67 41 77 49 42 41 67 49 43 41 2b 67 77 44 51 59 4a 4b 6f 5a 49 68 IIDMDCCAhigAwIBAgICA+gwDQYJKoZIh
163b40 76 63 4e 41 51 45 46 42 51 41 77 52 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 53 45 73 78 46 vcNAQEFBQAwRzELMAkGA1UEBhMCSEsxF
163b60 6a 41 55 42 67 4e 56 42 41 6f 54 0a 44 55 68 76 62 6d 64 72 62 32 35 6e 49 46 42 76 63 33 51 78 jAUBgNVBAoT.DUhvbmdrb25nIFBvc3Qx
163b80 49 44 41 65 42 67 4e 56 42 41 4d 54 46 30 68 76 62 6d 64 72 62 32 35 6e 49 46 42 76 63 33 51 67 IDAeBgNVBAMTF0hvbmdrb25nIFBvc3Qg
163ba0 55 6d 39 76 64 43 42 44 51 53 41 78 4d 42 34 58 44 54 41 7a 4d 44 55 78 0a 4e 54 41 31 4d 54 4d Um9vdCBDQSAxMB4XDTAzMDUx.NTA1MTM
163bc0 78 4e 46 6f 58 44 54 49 7a 4d 44 55 78 4e 54 41 30 4e 54 49 79 4f 56 6f 77 52 7a 45 4c 4d 41 6b xNFoXDTIzMDUxNTA0NTIyOVowRzELMAk
163be0 47 41 31 55 45 42 68 4d 43 53 45 73 78 46 6a 41 55 42 67 4e 56 42 41 6f 54 44 55 68 76 62 6d 64 GA1UEBhMCSEsxFjAUBgNVBAoTDUhvbmd
163c00 72 62 32 35 6e 0a 49 46 42 76 63 33 51 78 49 44 41 65 42 67 4e 56 42 41 4d 54 46 30 68 76 62 6d rb25n.IFBvc3QxIDAeBgNVBAMTF0hvbm
163c20 64 72 62 32 35 6e 49 46 42 76 63 33 51 67 55 6d 39 76 64 43 42 44 51 53 41 78 4d 49 49 42 49 6a drb25nIFBvc3QgUm9vdCBDQSAxMIIBIj
163c40 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 0a 41 41 4f 43 41 51 38 41 4d 49 49 42 43 ANBgkqhkiG9w0BAQEF.AAOCAQ8AMIIBC
163c60 67 4b 43 41 51 45 41 72 50 38 34 74 75 6c 6d 41 6b 6e 6a 6f 72 54 68 6b 50 6c 41 6a 33 6e 35 34 gKCAQEArP84tulmAknjorThkPlAj3n54
163c80 72 31 35 2f 67 4b 39 37 69 53 53 48 53 4c 32 32 6f 56 79 61 66 37 58 50 77 6e 55 33 5a 47 31 0a r15/gK97iSSHSL22oVyaf7XPwnU3ZG1.
163ca0 41 70 7a 51 6a 56 72 68 56 63 4e 51 68 72 6b 70 4a 73 4c 6a 32 61 44 78 61 51 4d 6f 49 49 42 46 ApzQjVrhVcNQhrkpJsLj2aDxaQMoIIBF
163cc0 49 69 31 57 70 7a 74 55 6c 56 59 69 57 52 38 6f 33 78 38 67 50 57 32 69 4e 72 34 6a 6f 4c 46 75 Ii1WpztUlVYiWR8o3x8gPW2iNr4joLFu
163ce0 74 62 45 6e 50 7a 6c 54 43 65 71 72 0a 61 75 68 30 73 73 4a 6c 58 49 36 2f 66 4d 4e 34 68 4d 32 tbEnPzlTCeqr.auh0ssJlXI6/fMN4hM2
163d00 65 46 76 7a 31 4c 6b 38 67 4b 67 69 66 64 2f 50 46 48 73 53 61 55 6d 59 65 53 46 37 6a 45 41 61 eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAa
163d20 50 49 70 6a 68 5a 59 34 62 58 53 4e 6d 4f 37 69 6c 4d 6c 48 49 68 71 71 68 0a 71 5a 35 2f 64 70 PIpjhZY4bXSNmO7ilMlHIhqqh.qZ5/dp
163d40 54 43 70 6d 79 33 51 66 44 56 79 41 59 34 35 74 51 4d 34 76 4d 37 54 47 31 51 6a 4d 53 44 4a 38 TCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8
163d60 45 54 68 46 6b 39 6e 6e 56 30 74 74 67 43 58 6a 71 51 65 73 42 43 4e 6e 4c 73 61 6b 33 63 37 38 EThFk9nnV0ttgCXjqQesBCNnLsak3c78
163d80 51 41 33 78 4d 59 0a 56 31 38 6d 65 4d 6a 57 43 6e 6c 33 76 2f 65 76 74 33 61 35 70 51 75 45 46 QA3xMY.V18meMjWCnl3v/evt3a5pQuEF
163da0 31 30 51 36 6d 2f 68 71 35 55 52 58 32 30 38 6f 31 78 4e 67 31 76 79 73 78 6d 4b 67 49 73 4c 68 10Q6m/hq5URX208o1xNg1vysxmKgIsLh
163dc0 77 49 44 41 51 41 42 6f 79 59 77 4a 44 41 53 42 67 4e 56 0a 48 52 4d 42 41 66 38 45 43 44 41 47 wIDAQABoyYwJDASBgNV.HRMBAf8ECDAG
163de0 41 51 48 2f 41 67 45 44 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 78 6a 41 4e AQH/AgEDMA4GA1UdDwEB/wQEAwIBxjAN
163e00 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 44 6b 62 56 50 4b 37 69 BgkqhkiG9w0BAQUFAAOCAQEADkbVPK7i
163e20 0a 68 39 6c 65 67 59 73 43 6d 45 45 49 6a 45 79 38 32 74 76 75 4a 78 75 43 35 32 70 46 37 42 61 .h9legYsCmEEIjEy82tvuJxuC52pF7Ba
163e40 4c 54 34 57 67 38 37 4a 77 76 56 71 57 75 73 70 75 62 65 35 47 69 32 37 6e 4b 69 36 57 73 78 6b LT4Wg87JwvVqWuspube5Gi27nKi6Wsxk
163e60 7a 36 37 53 66 71 4c 49 33 37 70 69 6f 0a 6c 37 59 75 74 6d 63 6e 31 4b 5a 4a 2f 52 79 54 5a 58 z67SfqLI37pio.l7Yutmcn1KZJ/RyTZX
163e80 61 65 51 69 2f 63 49 6d 79 61 54 2f 4a 61 46 54 6d 78 63 64 63 72 55 65 68 74 48 4a 6a 41 32 53 aeQi/cImyaT/JaFTmxcdcrUehtHJjA2S
163ea0 72 30 6f 59 4a 37 31 63 6c 42 6f 69 4d 42 64 44 68 56 69 77 2b 35 4c 6d 65 69 0a 49 41 51 33 32 r0oYJ71clBoiMBdDhViw+5Lmei.IAQ32
163ec0 70 77 4c 30 78 63 68 34 49 2b 58 65 54 52 76 68 45 67 43 49 44 4d 62 35 6a 52 45 6e 35 46 77 39 pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9
163ee0 49 42 65 68 45 50 43 4b 64 4a 73 45 68 54 6b 59 59 32 73 45 4a 43 65 68 46 43 37 38 4a 5a 76 52 IBehEPCKdJsEhTkYY2sEJCehFC78JZvR
163f00 5a 2b 4b 38 38 70 73 0a 54 2f 6f 52 4f 68 55 56 52 73 50 4e 48 34 4e 62 4c 55 45 53 37 56 42 6e Z+K88ps.T/oROhUVRsPNH4NbLUES7VBn
163f20 51 52 4d 39 49 61 75 55 69 71 70 4f 66 4d 47 78 2b 36 66 57 74 53 63 76 6c 36 74 75 34 42 33 69 QRM9IauUiqpOfMGx+6fWtScvl6tu4B3i
163f40 30 52 77 73 48 30 54 69 2f 4c 36 52 6f 5a 7a 37 31 69 6c 54 0a 63 34 61 66 55 39 68 44 44 6c 33 0RwsH0Ti/L6RoZz71ilT.c4afU9hDDl3
163f60 57 59 34 4a 78 48 59 42 30 79 76 62 69 41 6d 76 5a 57 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 WY4JxHYB0yvbiAmvZWg==.-----END.C
163f80 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 65 63 75 72 65 53 69 67 6e 20 52 6f 6f 74 ERTIFICATE-----..SecureSign.Root
163fa0 43 41 31 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 CA11.===================.-----BE
163fc0 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 62 54 43 43 41 6c 57 GIN.CERTIFICATE-----.MIIDbTCCAlW
163fe0 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 gAwIBAgIBATANBgkqhkiG9w0BAQUFADB
164000 59 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4b 55 44 45 72 4d 43 6b 47 41 31 55 45 43 68 4d YMQswCQYDVQQGEwJKUDErMCkGA1UEChM
164020 69 0a 53 6d 46 77 59 57 34 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 54 5a 58 i.SmFwYW4gQ2VydGlmaWNhdGlvbiBTZX
164040 4a 32 61 57 4e 6c 63 79 77 67 53 57 35 6a 4c 6a 45 63 4d 42 6f 47 41 31 55 45 41 78 4d 54 55 32 J2aWNlcywgSW5jLjEcMBoGA1UEAxMTU2
164060 56 6a 64 58 4a 6c 55 32 6c 6e 62 69 42 53 0a 62 32 39 30 51 30 45 78 4d 54 41 65 46 77 30 77 4f VjdXJlU2lnbiBS.b290Q0ExMTAeFw0wO
164080 54 41 30 4d 44 67 77 4e 44 55 32 4e 44 64 61 46 77 30 79 4f 54 41 30 4d 44 67 77 4e 44 55 32 4e TA0MDgwNDU2NDdaFw0yOTA0MDgwNDU2N
1640a0 44 64 61 4d 46 67 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 70 51 4d 53 73 77 0a 4b 51 59 44 DdaMFgxCzAJBgNVBAYTAkpQMSsw.KQYD
1640c0 56 51 51 4b 45 79 4a 4b 59 58 42 68 62 69 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 VQQKEyJKYXBhbiBDZXJ0aWZpY2F0aW9u
1640e0 49 46 4e 6c 63 6e 5a 70 59 32 56 7a 4c 43 42 4a 62 6d 4d 75 4d 52 77 77 47 67 59 44 56 51 51 44 IFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQD
164100 45 78 4e 54 5a 57 4e 31 0a 63 6d 56 54 61 57 64 75 49 46 4a 76 62 33 52 44 51 54 45 78 4d 49 49 ExNTZWN1.cmVTaWduIFJvb3RDQTExMII
164120 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 BIjANBgkqhkiG9w0BAQEFAAOCAQ8AMII
164140 42 43 67 4b 43 41 51 45 41 2f 58 65 71 70 52 79 51 42 54 76 4c 0a 54 4a 73 7a 69 31 6f 55 52 61 BCgKCAQEA/XeqpRyQBTvL.TJszi1oURa
164160 54 6e 6b 42 62 52 33 31 66 53 49 52 43 6b 46 2f 33 66 72 4e 59 66 70 2b 54 62 66 50 66 73 33 37 TnkBbR31fSIRCkF/3frNYfp+TbfPfs37
164180 67 44 32 70 52 59 2f 56 31 79 66 49 77 2f 58 77 46 6e 64 42 57 57 34 77 49 38 68 39 75 75 79 77 gD2pRY/V1yfIw/XwFndBWW4wI8h9uuyw
1641a0 47 4f 0a 77 76 4e 6d 78 6f 56 46 39 41 4c 47 4f 72 56 69 73 71 2f 36 6e 4c 2b 6b 35 74 53 41 4d GO.wvNmxoVF9ALGOrVisq/6nL+k5tSAM
1641c0 4a 6a 7a 44 62 61 54 6a 36 6e 55 32 44 62 79 73 50 79 4b 79 69 79 68 46 54 4f 56 4d 64 72 41 47 JjzDbaTj6nU2DbysPyKyiyhFTOVMdrAG
1641e0 2f 4c 75 59 70 6d 47 59 7a 2b 2f 33 5a 4d 71 0a 67 36 68 32 75 52 4d 66 74 38 35 4f 51 6f 57 50 /LuYpmGYz+/3ZMq.g6h2uRMft85OQoWP
164200 49 75 63 75 47 76 4b 56 43 62 49 46 74 55 52 4f 64 36 45 67 76 61 6e 79 54 67 70 39 55 4b 33 31 IucuGvKVCbIFtUROd6EgvanyTgp9UK31
164220 42 51 31 46 54 30 5a 78 2f 53 67 2b 55 2f 73 45 32 43 33 58 5a 52 31 4b 47 2f 72 50 0a 4f 37 41 BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rP.O7A
164240 78 6d 6a 56 75 79 49 73 47 30 77 43 52 38 70 51 49 5a 55 79 78 4e 41 59 41 65 6f 6e 69 38 4d 63 xmjVuyIsG0wCR8pQIZUyxNAYAeoni8Mc
164260 44 57 63 2f 56 31 75 69 6e 4d 72 50 6d 6d 45 43 47 78 63 30 6e 45 6f 76 4d 65 38 36 33 45 54 78 DWc/V1uinMrPmmECGxc0nEovMe863ETx
164280 69 59 41 63 6a 50 69 74 41 0a 62 70 53 41 43 57 32 32 73 32 39 33 62 7a 55 49 55 50 73 43 68 38 iYAcjPitA.bpSACW22s293bzUIUPsCh8
1642a0 55 2b 69 51 49 44 41 51 41 42 6f 30 49 77 51 44 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 57 2f U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/
1642c0 68 4e 54 37 4b 6c 68 74 51 36 30 76 46 6a 6d 71 43 2b 43 66 5a 58 0a 74 39 34 77 44 67 59 44 56 hNT7KlhtQ60vFjmqC+CfZX.t94wDgYDV
1642e0 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d R0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFM
164300 41 4d 42 41 66 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 AMBAf8wDQYJKoZIhvcNAQEFBQADggEBA
164320 4b 43 68 0a 4f 42 5a 6d 4c 71 64 57 48 79 47 63 42 76 6f 64 37 62 6b 69 78 54 67 6d 32 45 35 50 KCh.OBZmLqdWHyGcBvod7bkixTgm2E5P
164340 37 4b 4e 2f 65 64 35 47 49 61 47 48 64 34 38 48 43 4a 71 79 70 4d 57 76 44 7a 4b 59 43 33 78 6d 7KN/ed5GIaGHd48HCJqypMWvDzKYC3xm
164360 4b 62 61 62 66 53 56 53 53 55 4f 72 54 43 34 72 0a 62 6e 70 77 72 78 59 4f 34 77 4a 73 2b 30 4c KbabfSVSSUOrTC4r.bnpwrxYO4wJs+0L
164380 6d 47 4a 31 46 32 46 58 49 36 44 76 64 35 2b 48 30 4c 67 73 63 4e 46 78 73 57 45 72 37 6a 49 68 mGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIh
1643a0 51 58 35 55 63 76 2b 32 72 49 72 56 6c 73 34 57 36 6e 67 2b 34 72 65 56 36 47 34 70 51 0a 4f 68 QX5Ucv+2rIrVls4W6ng+4reV6G4pQ.Oh
1643c0 32 39 44 62 78 37 56 46 41 4c 75 55 4b 76 56 61 41 59 67 61 31 6c 6d 65 2b 2b 35 4a 79 2f 78 49 29Dbx7VFALuUKvVaAYga1lme++5Jy/xI
1643e0 57 72 51 62 4a 55 62 39 77 6c 7a 65 31 34 34 6f 34 4d 6a 51 6c 4a 33 57 4e 37 57 6d 6d 57 41 69 WrQbJUb9wlze144o4MjQlJ3WN7WmmWAi
164400 47 6f 76 56 4a 5a 36 58 30 31 0a 79 38 68 53 79 6e 2b 42 2f 74 6c 72 30 2f 63 52 37 53 58 66 2b GovVJZ6X01.y8hSyn+B/tlr0/cR7SXf+
164420 4f 66 35 70 50 70 79 6c 34 52 54 44 61 58 51 4d 68 68 52 64 6c 6b 55 62 41 2f 72 37 46 2b 41 6a Of5pPpyl4RTDaXQMhhRdlkUbA/r7F+Aj
164440 48 56 44 67 38 4f 46 6d 50 39 4d 6e 69 30 4e 35 48 65 44 6b 30 36 31 0a 6c 67 65 4c 4b 42 4f 62 HVDg8OFmP9Mni0N5HeDk061.lgeLKBOb
164460 6a 42 6d 4e 51 53 64 4a 51 4f 37 65 35 69 4e 45 4f 64 79 68 49 74 61 36 41 2f 49 3d 0a 2d 2d 2d jBmNQSdJQO7e5iNEOdyhIta6A/I=.---
164480 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 41 43 45 44 49 43 4f 4d --END.CERTIFICATE-----..ACEDICOM
1644a0 20 52 6f 6f 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 .Root.=============.-----BEGIN.C
1644c0 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 74 54 43 43 41 35 32 67 41 77 49 42 ERTIFICATE-----.MIIFtTCCA52gAwIB
1644e0 41 67 49 49 59 59 33 48 68 6a 73 42 67 67 55 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 AgIIYY3HhjsBggUwDQYJKoZIhvcNAQEF
164500 42 51 41 77 52 44 45 57 4d 42 51 47 41 31 55 45 41 77 77 4e 51 55 4e 46 52 45 6c 44 0a 54 30 30 BQAwRDEWMBQGA1UEAwwNQUNFRElD.T00
164520 67 55 6d 39 76 64 44 45 4d 4d 41 6f 47 41 31 55 45 43 77 77 44 55 45 74 4a 4d 51 38 77 44 51 59 gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQY
164540 44 56 51 51 4b 44 41 5a 46 52 45 6c 44 54 30 30 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 56 DVQQKDAZFRElDT00xCzAJBgNVBAYTAkV
164560 54 4d 42 34 58 44 54 41 34 0a 4d 44 51 78 4f 44 45 32 4d 6a 51 79 4d 6c 6f 58 44 54 49 34 4d 44 TMB4XDTA4.MDQxODE2MjQyMloXDTI4MD
164580 51 78 4d 7a 45 32 4d 6a 51 79 4d 6c 6f 77 52 44 45 57 4d 42 51 47 41 31 55 45 41 77 77 4e 51 55 QxMzE2MjQyMlowRDEWMBQGA1UEAwwNQU
1645a0 4e 46 52 45 6c 44 54 30 30 67 55 6d 39 76 64 44 45 4d 4d 41 6f 47 0a 41 31 55 45 43 77 77 44 55 NFRElDT00gUm9vdDEMMAoG.A1UECwwDU
1645c0 45 74 4a 4d 51 38 77 44 51 59 44 56 51 51 4b 44 41 5a 46 52 45 6c 44 54 30 30 78 43 7a 41 4a 42 EtJMQ8wDQYDVQQKDAZFRElDT00xCzAJB
1645e0 67 4e 56 42 41 59 54 41 6b 56 54 4d 49 49 43 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 gNVBAYTAkVTMIICIjANBgkqhkiG9w0BA
164600 51 45 46 0a 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 45 41 2f 35 4b 56 34 57 67 47 QEF.AAOCAg8AMIICCgKCAgEA/5KV4WgG
164620 64 72 51 73 79 46 68 49 79 76 32 41 56 43 6c 56 59 79 54 2f 6b 47 57 62 45 48 56 37 77 32 72 62 drQsyFhIyv2AVClVYyT/kGWbEHV7w2rb
164640 59 67 49 42 38 68 69 47 74 58 78 61 4f 4c 48 6b 0a 57 4c 6e 37 30 39 67 74 6e 37 30 79 4e 37 38 YgIB8hiGtXxaOLHk.WLn709gtn70yN78
164660 73 46 57 32 2b 74 66 51 68 30 68 4f 52 32 51 65 74 41 51 58 57 38 37 31 33 7a 6c 39 43 67 51 72 sFW2+tfQh0hOR2QetAQXW8713zl9CgQr
164680 35 61 75 4f 44 41 4b 67 72 4c 6c 55 54 59 34 48 4b 52 78 78 37 58 42 5a 58 65 68 75 44 0a 59 41 5auODAKgrLlUTY4HKRxx7XBZXehuD.YA
1646a0 51 36 50 6d 58 44 7a 51 48 65 33 71 54 57 44 4c 71 4f 33 74 6b 45 37 68 64 57 49 70 75 50 59 2f Q6PmXDzQHe3qTWDLqO3tkE7hdWIpuPY/
1646c0 31 4e 46 67 75 33 65 33 65 4d 2b 53 57 31 30 57 32 5a 45 69 35 50 47 72 6a 6d 36 67 53 53 72 6a 1NFgu3e3eM+SW10W2ZEi5PGrjm6gSSrj
1646e0 30 52 75 56 46 43 50 59 65 77 0a 4d 59 57 76 65 56 71 63 2f 75 64 4f 58 70 4a 50 51 2f 79 72 4f 0RuVFCPYew.MYWveVqc/udOXpJPQ/yrO
164700 71 32 6c 45 69 5a 6d 75 65 49 4d 31 35 6a 4f 31 46 69 6c 6c 55 41 4b 74 30 53 64 45 33 51 72 77 q2lEiZmueIM15jO1FillUAKt0SdE3Qrw
164720 71 58 72 49 68 57 59 45 4e 69 4c 78 51 53 66 48 59 39 67 35 51 59 62 0a 6d 38 2b 35 65 61 41 39 qXrIhWYENiLxQSfHY9g5QYb.m8+5eaA9
164740 6f 69 4d 2f 51 6a 39 72 2b 68 77 44 65 7a 43 4e 7a 6d 7a 41 76 2b 59 62 58 37 39 6e 75 49 51 5a oiM/Qj9r+hwDezCNzmzAv+YbX79nuIQZ
164760 31 52 58 76 65 38 75 51 4e 6a 46 69 79 62 77 43 71 30 5a 66 6d 2f 34 61 61 4a 51 30 50 5a 43 4f 1RXve8uQNjFiybwCq0Zfm/4aaJQ0PZCO
164780 72 66 62 6b 0a 48 51 6c 2f 53 6f 67 34 50 37 35 6e 2f 54 53 57 39 52 32 38 4d 48 54 4c 4f 4f 37 rfbk.HQl/Sog4P75n/TSW9R28MHTLOO7
1647a0 56 62 4b 76 55 2f 50 51 41 74 77 42 62 68 54 49 57 64 6a 50 70 32 4b 4f 5a 6e 51 55 41 71 68 62 VbKvU/PQAtwBbhTIWdjPp2KOZnQUAqhb
1647c0 6d 38 34 46 39 62 33 32 71 68 6d 32 74 46 58 54 54 0a 78 4b 4a 78 71 76 51 55 66 65 63 79 75 42 m84F9b32qhm2tFXTT.xKJxqvQUfecyuB
1647e0 2b 38 31 66 46 4f 76 57 38 58 41 6a 6e 58 44 70 56 43 4f 73 63 41 50 75 6b 6d 59 78 48 71 43 39 +81fFOvW8XAjnXDpVCOscAPukmYxHqC9
164800 46 4b 2f 78 69 64 73 74 64 37 4c 7a 72 5a 6c 76 76 6f 48 70 4b 75 45 31 58 49 32 53 66 32 0a 33 FK/xidstd7LzrZlvvoHpKuE1XI2Sf2.3
164820 45 67 62 73 43 54 42 68 65 4e 33 6e 5a 71 6b 38 77 77 52 48 51 33 49 74 42 54 75 74 59 4a 58 43 EgbsCTBheN3nZqk8wwRHQ3ItBTutYJXC
164840 62 38 67 57 48 38 76 49 69 50 59 63 4d 74 35 62 4d 6c 4c 38 71 6b 71 79 50 79 48 4b 39 63 61 55 b8gWH8vIiPYcMt5bMlL8qkqyPyHK9caU
164860 50 67 6e 36 43 39 44 34 7a 71 39 0a 32 46 64 78 2f 63 36 6d 55 6c 76 35 33 55 33 74 35 66 5a 76 Pgn6C9D4zq9.2Fdx/c6mUlv53U3t5fZv
164880 69 65 32 37 6b 35 78 32 49 58 58 77 6b 6b 77 70 39 79 2b 63 41 53 37 2b 55 45 61 65 5a 41 77 55 ie27k5x2IXXwkkwp9y+cAS7+UEaeZAwU
1648a0 73 77 64 62 78 63 4a 7a 62 50 45 48 58 45 55 6b 46 44 57 75 67 2f 46 71 0a 54 59 6c 36 2b 72 50 swdbxcJzbPEHXEUkFDWug/Fq.TYl6+rP
1648c0 59 4c 57 62 77 4e 6f 66 31 4b 31 4d 43 41 77 45 41 41 61 4f 42 71 6a 43 42 70 7a 41 50 42 67 4e YLWbwNof1K1MCAwEAAaOBqjCBpzAPBgN
1648e0 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 38 47 41 31 55 64 49 77 51 59 4d 42 61 VHRMBAf8EBTADAQH/MB8GA1UdIwQYMBa
164900 41 46 4b 61 7a 0a 34 53 73 72 53 62 62 58 63 36 47 71 6c 50 55 42 35 33 4e 6c 54 4b 78 51 4d 41 AFKaz.4SsrSbbXc6GqlPUB53NlTKxQMA
164920 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 68 6a 41 64 42 67 4e 56 48 51 34 45 46 67 4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFg
164940 51 55 70 72 50 68 4b 79 74 4a 74 74 64 7a 6f 61 71 55 0a 39 51 48 6e 63 32 56 4d 72 46 41 77 52 QUprPhKytJttdzoaqU.9QHnc2VMrFAwR
164960 41 59 44 56 52 30 67 42 44 30 77 4f 7a 41 35 42 67 52 56 48 53 41 41 4d 44 45 77 4c 77 59 49 4b AYDVR0gBD0wOzA5BgRVHSAAMDEwLwYIK
164980 77 59 42 42 51 55 48 41 67 45 57 49 32 68 30 64 48 41 36 4c 79 39 68 59 32 56 6b 61 57 4e 76 0a wYBBQUHAgEWI2h0dHA6Ly9hY2VkaWNv.
1649a0 62 53 35 6c 5a 47 6c 6a 62 32 31 6e 63 6d 39 31 63 43 35 6a 62 32 30 76 5a 47 39 6a 4d 41 30 47 bS5lZGljb21ncm91cC5jb20vZG9jMA0G
1649c0 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 43 41 51 44 4f 4c 41 74 53 55 57 49 6d CSqGSIb3DQEBBQUAA4ICAQDOLAtSUWIm
1649e0 66 51 77 6e 67 34 2f 46 39 74 71 67 0a 61 48 74 50 6b 6c 37 71 70 48 4d 79 45 56 4e 45 73 6b 54 fQwng4/F9tqg.aHtPkl7qpHMyEVNEskT
164a00 4c 6e 65 77 50 65 55 4b 7a 45 4b 62 48 44 5a 33 4c 74 76 6f 2f 4f 6e 7a 71 76 34 68 54 47 7a 7a LnewPeUKzEKbHDZ3Ltvo/Onzqv4hTGzz
164a20 33 67 76 6f 46 4e 54 50 68 4e 61 68 58 77 4f 66 39 6a 55 38 2f 6b 7a 4a 50 0a 65 47 59 44 64 77 3gvoFNTPhNahXwOf9jU8/kzJP.eGYDdw
164a40 64 59 36 5a 58 49 66 6a 37 51 65 51 43 4d 38 68 74 52 4d 35 75 38 6c 4f 6b 36 65 32 35 53 4c 54 dY6ZXIfj7QeQCM8htRM5u8lOk6e25SLT
164a60 4b 65 49 36 52 46 2b 37 59 75 45 37 43 4c 47 4c 48 64 7a 74 55 64 70 30 4a 2f 56 62 37 37 57 37 KeI6RF+7YuE7CLGLHdztUdp0J/Vb77W7
164a80 74 48 31 50 77 6b 0a 7a 51 53 75 6c 67 55 56 31 71 7a 4f 4d 50 50 4b 43 38 57 36 34 69 4c 67 70 tH1Pwk.zQSulgUV1qzOMPPKC8W64iLgp
164aa0 71 30 69 35 41 4c 75 64 42 46 2f 54 50 39 34 48 54 58 61 35 67 49 30 36 78 67 53 59 58 63 47 43 q0i5ALudBF/TP94HTXa5gI06xgSYXcGC
164ac0 52 5a 6a 36 68 69 74 6f 6f 63 66 38 73 65 41 43 51 6c 31 0a 54 68 43 6f 6a 7a 32 47 75 48 55 52 RZj6hitoocf8seACQl1.ThCojz2GuHUR
164ae0 77 43 52 69 69 70 5a 37 53 6b 58 70 37 46 6e 46 76 6d 75 44 35 75 48 6f 72 4c 55 77 48 76 34 46 wCRiipZ7SkXp7FnFvmuD5uHorLUwHv4F
164b00 42 34 44 35 34 53 4d 4e 55 49 38 46 6d 50 38 73 58 2b 67 37 74 71 33 50 67 62 55 68 68 38 6f 49 B4D54SMNUI8FmP8sX+g7tq3PgbUhh8oI
164b20 0a 4b 69 4d 6e 4d 43 41 72 7a 2b 32 55 57 36 79 79 65 74 4c 48 4b 4b 47 4b 43 35 74 4e 53 69 78 .KiMnMCArz+2UW6yyetLHKKGKC5tNSix
164b40 74 68 54 38 4a 63 6a 78 6e 34 74 6e 63 42 37 72 72 5a 58 74 61 41 57 50 57 6b 46 74 50 46 32 59 thT8Jcjxn4tncB7rrZXtaAWPWkFtPF2Y
164b60 39 66 77 73 5a 6f 35 4e 6a 45 46 49 71 0a 6e 78 51 57 57 4f 4c 63 70 66 53 68 46 6f 73 4f 6b 59 9fwsZo5NjEFIq.nxQWWOLcpfShFosOkY
164b80 75 42 79 70 74 5a 2b 74 68 72 6b 51 64 6c 56 56 39 53 48 36 38 36 2b 35 44 64 61 61 56 62 6e 47 uByptZ+thrkQdlVV9SH686+5DdaaVbnG
164ba0 30 4f 4c 4c 62 36 7a 71 79 6c 66 44 4a 4b 5a 30 44 63 4d 44 51 6a 33 64 63 45 0a 49 32 62 77 2f 0OLLb6zqylfDJKZ0DcMDQj3dcE.I2bw/
164bc0 46 57 41 70 2f 74 6d 47 59 49 31 5a 32 4a 77 4f 56 35 76 78 2b 71 51 51 45 51 49 48 72 69 79 31 FWAp/tmGYI1Z2JwOV5vx+qQQEQIHriy1
164be0 74 76 75 57 61 63 4e 47 48 6b 30 76 46 51 59 58 6c 50 4b 4e 46 48 74 52 51 72 6d 6a 73 65 43 4e tvuWacNGHk0vFQYXlPKNFHtRQrmjseCN
164c00 6a 36 6e 4f 47 4f 70 0a 4d 43 77 58 45 47 43 53 6e 31 57 48 45 6c 6b 51 77 67 39 6e 61 52 48 4d j6nOGOp.MCwXEGCSn1WHElkQwg9naRHM
164c20 54 68 35 2b 53 70 71 74 72 30 43 6f 64 61 78 57 6b 48 53 34 6f 4a 79 6c 65 57 2f 63 36 52 72 49 Th5+Spqtr0CodaxWkHS4oJyleW/c6RrI
164c40 61 51 58 70 75 76 6f 44 73 33 7a 6b 34 45 37 43 7a 70 33 6f 0a 74 6b 59 4e 62 6e 35 58 4f 6d 65 aQXpuvoDs3zk4E7Czp3o.tkYNbn5XOme
164c60 55 77 73 73 66 6e 48 64 4b 5a 30 35 70 68 6b 4f 54 4f 50 75 32 32 30 2b 44 6b 64 52 67 66 6b 73 UwssfnHdKZ05phkOTOPu220+DkdRgfks
164c80 2b 4b 7a 67 48 56 5a 68 65 70 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 +KzgHVZhepA==.-----END.CERTIFICA
164ca0 54 45 2d 2d 2d 2d 2d 0a 0a 4d 69 63 72 6f 73 65 63 20 65 2d 53 7a 69 67 6e 6f 20 52 6f 6f 74 20 TE-----..Microsec.e-Szigno.Root.
164cc0 43 41 20 32 30 30 39 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d CA.2009.========================
164ce0 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d ======.-----BEGIN.CERTIFICATE---
164d00 2d 2d 0a 4d 49 49 45 43 6a 43 43 41 76 4b 67 41 77 49 42 41 67 49 4a 41 4d 4a 2b 51 77 52 4f 52 --.MIIECjCCAvKgAwIBAgIJAMJ+QwROR
164d20 7a 38 5a 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 4d 49 47 43 4d 51 73 77 43 z8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswC
164d40 51 59 44 56 51 51 47 45 77 4a 49 56 54 45 52 0a 4d 41 38 47 41 31 55 45 42 77 77 49 51 6e 56 6b QYDVQQGEwJIVTER.MA8GA1UEBwwIQnVk
164d60 59 58 42 6c 63 33 51 78 46 6a 41 55 42 67 4e 56 42 41 6f 4d 44 55 31 70 59 33 4a 76 63 32 56 6a YXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2Vj
164d80 49 45 78 30 5a 43 34 78 4a 7a 41 6c 42 67 4e 56 42 41 4d 4d 48 6b 31 70 59 33 4a 76 0a 63 32 56 IEx0ZC4xJzAlBgNVBAMMHk1pY3Jv.c2V
164da0 6a 49 47 55 74 55 33 70 70 5a 32 35 76 49 46 4a 76 62 33 51 67 51 30 45 67 4d 6a 41 77 4f 54 45 jIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTE
164dc0 66 4d 42 30 47 43 53 71 47 53 49 62 33 44 51 45 4a 41 52 59 51 61 57 35 6d 62 30 42 6c 4c 58 4e fMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN
164de0 36 61 57 64 75 62 79 35 6f 0a 64 54 41 65 46 77 30 77 4f 54 41 32 4d 54 59 78 4d 54 4d 77 4d 54 6aWduby5o.dTAeFw0wOTA2MTYxMTMwMT
164e00 68 61 46 77 30 79 4f 54 45 79 4d 7a 41 78 4d 54 4d 77 4d 54 68 61 4d 49 47 43 4d 51 73 77 43 51 haFw0yOTEyMzAxMTMwMThaMIGCMQswCQ
164e20 59 44 56 51 51 47 45 77 4a 49 56 54 45 52 4d 41 38 47 41 31 55 45 0a 42 77 77 49 51 6e 56 6b 59 YDVQQGEwJIVTERMA8GA1UE.BwwIQnVkY
164e40 58 42 6c 63 33 51 78 46 6a 41 55 42 67 4e 56 42 41 6f 4d 44 55 31 70 59 33 4a 76 63 32 56 6a 49 XBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjI
164e60 45 78 30 5a 43 34 78 4a 7a 41 6c 42 67 4e 56 42 41 4d 4d 48 6b 31 70 59 33 4a 76 63 32 56 6a 49 Ex0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjI
164e80 47 55 74 0a 55 33 70 70 5a 32 35 76 49 46 4a 76 62 33 51 67 51 30 45 67 4d 6a 41 77 4f 54 45 66 GUt.U3ppZ25vIFJvb3QgQ0EgMjAwOTEf
164ea0 4d 42 30 47 43 53 71 47 53 49 62 33 44 51 45 4a 41 52 59 51 61 57 35 6d 62 30 42 6c 4c 58 4e 36 MB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6
164ec0 61 57 64 75 62 79 35 6f 64 54 43 43 41 53 49 77 0a 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 aWduby5odTCCASIw.DQYJKoZIhvcNAQE
164ee0 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4f 6e 34 6a 2f 4e 6a 72 64 71 BBQADggEPADCCAQoCggEBAOn4j/Njrdq
164f00 47 32 4b 66 67 51 76 76 50 6b 64 36 6d 4a 76 69 5a 70 57 4e 77 72 5a 75 75 79 6a 4e 41 0a 66 57 G2KfgQvvPkd6mJviZpWNwrZuuyjNA.fW
164f20 32 57 62 71 45 4f 52 4f 37 68 45 35 32 55 51 6c 4b 61 76 58 57 46 64 43 79 6f 44 68 32 54 74 68 2WbqEORO7hE52UQlKavXWFdCyoDh2Tth
164f40 69 33 6a 43 79 6f 7a 2f 74 63 63 62 6e 61 37 50 37 6f 66 6f 2f 6b 4c 78 32 79 71 48 57 48 32 4c i3jCyoz/tccbna7P7ofo/kLx2yqHWH2L
164f60 65 68 35 54 76 50 6d 55 70 47 0a 30 49 4d 5a 66 63 43 68 45 68 79 56 62 55 72 30 32 4d 65 6c 54 eh5TvPmUpG.0IMZfcChEhyVbUr02MelT
164f80 54 4d 75 68 54 6c 41 64 58 34 55 66 49 41 53 6d 46 44 48 51 57 65 34 6f 49 42 68 56 4b 5a 73 54 TMuhTlAdX4UfIASmFDHQWe4oIBhVKZsT
164fa0 68 2f 67 6e 51 34 48 36 63 6d 36 4d 2b 66 2b 77 46 55 6f 4c 41 4b 41 0a 70 78 6e 31 6e 74 78 56 h/gnQ4H6cm6M+f+wFUoLAKA.pxn1ntxV
164fc0 55 77 4f 58 65 77 64 49 2f 35 6e 37 4e 34 6f 6b 78 46 6e 4d 55 42 42 6a 6a 71 71 70 47 72 43 45 UwOXewdI/5n7N4okxFnMUBBjjqqpGrCE
164fe0 47 6f 62 35 58 37 75 78 55 47 36 6b 30 51 72 4d 31 58 46 2b 48 36 63 62 66 50 56 54 62 69 4a 66 Gob5X7uxUG6k0QrM1XF+H6cbfPVTbiJf
165000 79 79 76 6d 0a 31 48 78 64 72 74 62 43 78 6b 7a 6c 42 51 48 5a 37 56 66 38 77 53 4e 35 2f 50 72 yyvm.1HxdrtbCxkzlBQHZ7Vf8wSN5/Pr
165020 49 4a 49 4f 56 38 37 56 71 55 51 48 51 64 39 62 70 45 71 48 35 47 6f 50 37 67 68 75 35 73 4a 66 IJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf
165040 30 64 67 59 7a 51 30 6d 67 2f 77 75 31 2b 72 55 43 0a 41 77 45 41 41 61 4f 42 67 44 42 2b 4d 41 0dgYzQ0mg/wu1+rUC.AwEAAaOBgDB+MA
165060 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 67 59 44 56 52 30 50 41 51 8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQ
165080 48 2f 42 41 51 44 41 67 45 47 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 54 4c 44 38 62 66 0a 51 H/BAQDAgEGMB0GA1UdDgQWBBTLD8bf.Q
1650a0 6b 50 4d 50 63 75 31 53 43 4f 68 47 6e 71 6d 4b 72 73 30 61 44 41 66 42 67 4e 56 48 53 4d 45 47 kPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEG
1650c0 44 41 57 67 42 54 4c 44 38 62 66 51 6b 50 4d 50 63 75 31 53 43 4f 68 47 6e 71 6d 4b 72 73 30 61 DAWgBTLD8bfQkPMPcu1SCOhGnqmKrs0a
1650e0 44 41 62 42 67 4e 56 48 52 45 45 0a 46 44 41 53 67 52 42 70 62 6d 5a 76 51 47 55 74 63 33 70 70 DAbBgNVHREE.FDASgRBpbmZvQGUtc3pp
165100 5a 32 35 76 4c 6d 68 31 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 49 42 Z25vLmh1MA0GCSqGSIb3DQEBCwUAA4IB
165120 41 51 44 4a 30 51 35 65 4c 74 58 4d 73 33 77 2b 79 2f 77 39 2f 77 30 6f 0a 6c 5a 4d 45 79 4c 2f AQDJ0Q5eLtXMs3w+y/w9/w0o.lZMEyL/
165140 61 7a 58 6d 34 51 35 44 77 70 4c 37 76 38 75 38 68 6d 4c 7a 55 31 46 30 47 39 75 35 43 37 44 42 azXm4Q5DwpL7v8u8hmLzU1F0G9u5C7DB
165160 73 6f 4b 71 70 79 76 47 76 69 76 6f 2f 43 33 4e 71 50 75 6f 75 51 48 34 66 72 6c 52 68 65 65 73 soKqpyvGvivo/C3NqPuouQH4frlRhees
165180 75 43 44 66 58 0a 49 2f 4f 4d 6e 37 34 64 73 65 47 6b 64 64 75 67 34 6c 51 55 73 62 6f 63 4b 61 uCDfX.I/OMn74dseGkddug4lQUsbocKa
1651a0 51 59 39 68 4b 36 6f 68 51 55 34 7a 45 31 79 45 44 2f 74 2b 41 46 64 6c 66 42 48 46 6e 79 2b 4c QY9hK6ohQU4zE1yED/t+AFdlfBHFny+L
1651c0 2f 6b 37 53 56 69 58 49 54 77 66 6e 34 66 73 37 37 35 0a 74 79 45 52 7a 41 4d 42 56 6e 43 6e 45 /k7SViXITwfn4fs775.tyERzAMBVnCnE
1651e0 4a 49 65 47 7a 53 42 48 71 32 63 47 73 4d 45 50 4f 30 43 59 64 59 65 42 76 4e 66 4f 6f 66 79 4b JIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK
165200 2f 46 46 68 2b 55 39 72 4e 48 48 56 34 53 39 61 36 37 63 32 50 6d 32 47 32 4a 77 43 7a 30 32 0a /FFh+U9rNHHV4S9a67c2Pm2G2JwCz02.
165220 79 55 4c 79 4d 74 64 36 59 65 62 53 32 7a 33 50 79 4b 6e 4a 6d 39 7a 62 57 45 54 58 62 7a 69 76 yULyMtd6YebS2z3PyKnJm9zbWETXbziv
165240 66 33 6a 54 6f 36 30 61 64 62 6f 63 77 54 5a 38 6a 78 35 74 48 4d 4e 31 52 71 34 31 42 61 62 32 f3jTo60adbocwTZ8jx5tHMN1Rq41Bab2
165260 58 44 30 68 37 6c 62 77 79 59 49 69 0a 4c 58 70 55 71 33 44 44 66 53 4a 6c 67 6e 43 57 0a 2d 2d XD0h7lbwyYIi.LXpUq3DDfSJlgnCW.--
165280 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 6c 6f 62 61 6c 53 ---END.CERTIFICATE-----..GlobalS
1652a0 69 67 6e 20 52 6f 6f 74 20 43 41 20 2d 20 52 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ign.Root.CA.-.R3.===============
1652c0 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
1652e0 2d 2d 2d 2d 0a 4d 49 49 44 58 7a 43 43 41 6b 65 67 41 77 49 42 41 67 49 4c 42 41 41 41 41 41 41 ----.MIIDXzCCAkegAwIBAgILBAAAAAA
165300 42 49 56 68 54 43 4b 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 77 54 44 45 BIVhTCKIwDQYJKoZIhvcNAQELBQAwTDE
165320 67 4d 42 34 47 41 31 55 45 43 78 4d 58 52 32 78 76 0a 59 6d 46 73 55 32 6c 6e 62 69 42 53 62 32 gMB4GA1UECxMXR2xv.YmFsU2lnbiBSb2
165340 39 30 49 45 4e 42 49 43 30 67 55 6a 4d 78 45 7a 41 52 42 67 4e 56 42 41 6f 54 43 6b 64 73 62 32 90IENBIC0gUjMxEzARBgNVBAoTCkdsb2
165360 4a 68 62 46 4e 70 5a 32 34 78 45 7a 41 52 42 67 4e 56 42 41 4d 54 43 6b 64 73 62 32 4a 68 0a 62 JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh.b
165380 46 4e 70 5a 32 34 77 48 68 63 4e 4d 44 6b 77 4d 7a 45 34 4d 54 41 77 4d 44 41 77 57 68 63 4e 4d FNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNM
1653a0 6a 6b 77 4d 7a 45 34 4d 54 41 77 4d 44 41 77 57 6a 42 4d 4d 53 41 77 48 67 59 44 56 51 51 4c 45 jkwMzE4MTAwMDAwWjBMMSAwHgYDVQQLE
1653c0 78 64 48 62 47 39 69 59 57 78 54 0a 61 57 64 75 49 46 4a 76 62 33 51 67 51 30 45 67 4c 53 42 53 xdHbG9iYWxT.aWduIFJvb3QgQ0EgLSBS
1653e0 4d 7a 45 54 4d 42 45 47 41 31 55 45 43 68 4d 4b 52 32 78 76 59 6d 46 73 55 32 6c 6e 62 6a 45 54 MzETMBEGA1UEChMKR2xvYmFsU2lnbjET
165400 4d 42 45 47 41 31 55 45 41 78 4d 4b 52 32 78 76 59 6d 46 73 55 32 6c 6e 0a 62 6a 43 43 41 53 49 MBEGA1UEAxMKR2xvYmFsU2ln.bjCCASI
165420 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f wDQYJKoZIhvcNAQEBBQADggEPADCCAQo
165440 43 67 67 45 42 41 4d 77 6c 64 70 42 35 42 6e 67 69 46 76 58 41 67 37 61 45 79 69 69 65 2f 51 56 CggEBAMwldpB5BngiFvXAg7aEyiie/QV
165460 32 45 63 57 74 0a 69 48 4c 38 52 67 4a 44 78 37 4b 4b 6e 51 52 66 4a 4d 73 75 53 2b 46 67 67 6b 2EcWt.iHL8RgJDx7KKnQRfJMsuS+Fggk
165480 62 68 55 71 73 4d 67 55 64 77 62 4e 31 6b 30 65 76 31 4c 4b 4d 50 67 6a 30 4d 4b 36 36 58 31 37 bhUqsMgUdwbN1k0ev1LKMPgj0MK66X17
1654a0 59 55 68 68 42 35 75 7a 73 54 67 48 65 4d 43 4f 46 4a 0a 30 6d 70 69 4c 78 39 65 2b 70 5a 6f 33 YUhhB5uzsTgHeMCOFJ.0mpiLx9e+pZo3
1654c0 34 6b 6e 6c 54 69 66 42 74 63 2b 79 63 73 6d 57 51 31 7a 33 72 44 49 36 53 59 4f 67 78 58 47 37 4knlTifBtc+ycsmWQ1z3rDI6SYOgxXG7
1654e0 31 75 4c 30 67 52 67 79 6b 6d 6d 4b 50 5a 70 4f 2f 62 4c 79 43 69 52 35 5a 32 4b 59 56 63 33 0a 1uL0gRgykmmKPZpO/bLyCiR5Z2KYVc3.
165500 72 48 51 55 33 48 54 67 4f 75 35 79 4c 79 36 63 2b 39 43 37 76 2f 55 39 41 4f 45 47 4d 2b 69 43 rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iC
165520 4b 36 35 54 70 6a 6f 57 63 34 7a 64 51 51 34 67 4f 73 43 30 70 36 48 70 73 6b 2b 51 4c 6a 4a 67 K65TpjoWc4zdQQ4gOsC0p6Hpsk+QLjJg
165540 36 56 66 4c 75 51 53 53 61 47 6a 6c 0a 4f 43 5a 67 64 62 4b 66 64 2f 2b 52 46 4f 2b 75 49 45 6e 6VfLuQSSaGjl.OCZgdbKfd/+RFO+uIEn
165560 38 72 55 41 56 53 4e 45 43 4d 57 45 5a 58 72 69 58 37 36 31 33 74 32 53 61 65 72 39 66 77 52 50 8rUAVSNECMWEZXriX7613t2Saer9fwRP
165580 76 6d 32 4c 37 44 57 7a 67 56 47 6b 57 71 51 50 61 62 75 6d 44 6b 33 46 32 0a 78 6d 6d 46 67 68 vm2L7DWzgVGkWqQPabumDk3F2.xmmFgh
1655a0 63 43 41 77 45 41 41 61 4e 43 4d 45 41 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 cCAwEAAaNCMEAwDgYDVR0PAQH/BAQDAg
1655c0 45 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 EGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR
1655e0 30 4f 42 42 59 45 0a 46 49 2f 77 53 33 2b 6f 4c 6b 55 6b 72 6b 31 51 2b 6d 4f 61 69 39 37 69 33 0OBBYE.FI/wS3+oLkUkrk1Q+mOai97i3
165600 52 75 38 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 49 42 41 51 42 4c 51 Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQ
165620 4e 76 41 55 4b 72 2b 79 41 7a 76 39 35 5a 55 52 55 6d 37 0a 6c 67 41 4a 51 61 79 7a 45 34 61 47 NvAUKr+yAzv95ZURUm7.lgAJQayzE4aG
165640 4b 41 63 7a 79 6d 76 6d 64 4c 6d 36 41 43 32 75 70 41 72 54 39 66 48 78 44 34 71 2f 63 32 64 4b KAczymvmdLm6AC2upArT9fHxD4q/c2dK
165660 67 38 64 45 65 33 6a 67 72 32 35 73 62 77 4d 70 6a 6a 4d 35 52 63 4f 4f 35 4c 6c 58 62 4b 72 38 g8dEe3jgr25sbwMpjjM5RcOO5LlXbKr8
165680 0a 45 70 62 73 55 38 59 74 35 43 52 73 75 5a 52 6a 2b 39 78 54 61 47 64 57 50 6f 4f 34 7a 7a 55 .EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzU
1656a0 68 77 38 6c 6f 2f 73 37 61 77 6c 4f 71 7a 4a 43 4b 36 66 42 64 52 6f 79 56 33 58 70 59 4b 42 6f hw8lo/s7awlOqzJCK6fBdRoyV3XpYKBo
1656c0 76 48 64 37 4e 41 44 64 42 6a 2b 31 45 0a 62 64 64 54 4b 4a 64 2b 38 32 63 45 48 68 58 58 69 70 vHd7NADdBj+1E.bddTKJd+82cEHhXXip
1656e0 61 30 30 39 35 4d 4a 36 52 4d 47 33 4e 7a 64 76 51 58 6d 63 49 66 65 67 37 6a 4c 51 69 74 43 68 a0095MJ6RMG3NzdvQXmcIfeg7jLQitCh
165700 77 73 2f 7a 79 72 56 51 34 50 6b 58 34 32 36 38 4e 58 53 62 37 68 4c 69 31 38 0a 59 49 76 44 51 ws/zyrVQ4PkX4268NXSb7hLi18.YIvDQ
165720 56 45 54 49 35 33 4f 39 7a 4a 72 6c 41 47 6f 6d 65 63 73 4d 78 38 36 4f 79 58 53 68 6b 44 4f 4f VETI53O9zJrlAGomecsMx86OyXShkDOO
165740 79 79 47 65 4d 6c 68 4c 78 53 36 37 74 74 56 62 39 2b 45 37 67 55 4a 54 62 30 6f 32 48 4c 4f 30 yyGeMlhLxS67ttVb9+E7gUJTb0o2HLO0
165760 32 4a 51 5a 52 37 72 0a 6b 70 65 44 4d 64 6d 7a 74 63 70 48 57 44 39 66 0a 2d 2d 2d 2d 2d 45 4e 2JQZR7r.kpeDMdmztcpHWD9f.-----EN
165780 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 41 75 74 6f 72 69 64 61 64 20 64 65 D.CERTIFICATE-----..Autoridad.de
1657a0 20 43 65 72 74 69 66 69 63 61 63 69 6f 6e 20 46 69 72 6d 61 70 72 6f 66 65 73 69 6f 6e 61 6c 20 .Certificacion.Firmaprofesional.
1657c0 43 49 46 20 41 36 32 36 33 34 30 36 38 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d CIF.A62634068.==================
1657e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
165800 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d =======.-----BEGIN.CERTIFICATE--
165820 2d 2d 2d 0a 4d 49 49 47 46 44 43 43 41 2f 79 67 41 77 49 42 41 67 49 49 55 2b 77 37 37 76 75 79 ---.MIIGFDCCA/ygAwIBAgIIU+w77vuy
165840 53 46 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 55 54 45 4c 4d 41 6b 47 SF8wDQYJKoZIhvcNAQEFBQAwUTELMAkG
165860 41 31 55 45 42 68 4d 43 52 56 4d 78 51 6a 42 41 0a 42 67 4e 56 42 41 4d 4d 4f 55 46 31 64 47 39 A1UEBhMCRVMxQjBA.BgNVBAMMOUF1dG9
165880 79 61 57 52 68 5a 43 42 6b 5a 53 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 6a 61 57 39 75 49 45 5a yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZ
1658a0 70 63 6d 31 68 63 48 4a 76 5a 6d 56 7a 61 57 39 75 59 57 77 67 51 30 6c 47 49 45 45 32 0a 4d 6a pcm1hcHJvZmVzaW9uYWwgQ0lGIEE2.Mj
1658c0 59 7a 4e 44 41 32 4f 44 41 65 46 77 30 77 4f 54 41 31 4d 6a 41 77 4f 44 4d 34 4d 54 56 61 46 77 YzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw
1658e0 30 7a 4d 44 45 79 4d 7a 45 77 4f 44 4d 34 4d 54 56 61 4d 46 45 78 43 7a 41 4a 42 67 4e 56 42 41 0zMDEyMzEwODM4MTVaMFExCzAJBgNVBA
165900 59 54 41 6b 56 54 4d 55 49 77 0a 51 41 59 44 56 51 51 44 44 44 6c 42 64 58 52 76 63 6d 6c 6b 59 YTAkVTMUIw.QAYDVQQDDDlBdXRvcmlkY
165920 57 51 67 5a 47 55 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 59 32 6c 76 62 69 42 47 61 58 4a 74 59 WQgZGUgQ2VydGlmaWNhY2lvbiBGaXJtY
165940 58 42 79 62 32 5a 6c 63 32 6c 76 62 6d 46 73 49 45 4e 4a 52 69 42 42 0a 4e 6a 49 32 4d 7a 51 77 XByb2Zlc2lvbmFsIENJRiBB.NjI2MzQw
165960 4e 6a 67 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 NjgwggIiMA0GCSqGSIb3DQEBAQUAA4IC
165980 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 44 4b 6c 6d 75 4f 36 76 6a 37 38 61 49 31 34 48 39 4d DwAwggIKAoICAQDKlmuO6vj78aI14H9M
1659a0 32 75 44 44 0a 55 74 64 39 74 68 44 49 41 6c 36 7a 51 79 72 45 54 32 71 79 79 68 78 64 4b 4a 70 2uDD.Utd9thDIAl6zQyrET2qyyhxdKJp
1659c0 34 45 52 70 70 57 56 65 76 74 53 42 43 35 49 73 50 35 74 39 62 70 67 4f 53 4c 2f 55 52 35 47 4c 4ERppWVevtSBC5IsP5t9bpgOSL/UR5GL
1659e0 58 4d 6e 45 34 32 51 51 4d 63 61 73 39 55 58 34 50 0a 42 39 39 6a 42 56 7a 70 76 35 52 76 77 53 XMnE42QQMcas9UX4P.B99jBVzpv5RvwS
165a00 6d 43 77 4c 54 61 55 62 44 42 50 4c 75 74 4e 30 70 63 79 76 46 4c 4e 67 34 6b 71 37 2f 44 68 48 mCwLTaUbDBPLutN0pcyvFLNg4kq7/DhH
165a20 66 39 71 46 44 30 73 65 66 47 4c 39 49 74 57 59 31 36 43 6b 36 57 61 56 49 43 71 6a 61 59 0a 37 f9qFD0sefGL9ItWY16Ck6WaVICqjaY.7
165a40 50 7a 36 46 49 4d 4d 4e 78 2f 4a 6b 6a 64 2f 31 34 45 74 35 63 53 35 34 44 34 30 2f 6d 66 30 50 Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0P
165a60 6d 62 52 30 2f 52 41 7a 31 35 69 4e 41 39 77 42 6a 34 67 47 46 72 4f 39 33 49 62 4a 57 79 54 64 mbR0/RAz15iNA9wBj4gGFrO93IbJWyTd
165a80 42 53 54 6f 33 4f 78 44 71 71 48 0a 45 43 4e 5a 58 79 41 46 47 55 66 74 61 49 36 53 45 73 70 64 BSTo3OxDqqH.ECNZXyAFGUftaI6SEspd
165aa0 2f 4e 59 72 73 70 49 38 49 4d 2f 68 58 36 38 67 76 71 42 32 66 33 62 6c 37 42 71 47 59 54 4d 2b /NYrspI8IM/hX68gvqB2f3bl7BqGYTM+
165ac0 35 33 75 30 50 36 41 50 6a 71 4b 35 61 6d 2b 35 68 79 5a 76 51 57 79 49 0a 70 6c 44 39 61 6d 4d 53u0P6APjqK5am+5hyZvQWyI.plD9amM
165ae0 4c 39 5a 4d 57 47 78 6d 50 73 75 32 62 6d 38 6d 51 39 51 45 4d 33 78 6b 39 44 7a 34 34 49 38 6b L9ZMWGxmPsu2bm8mQ9QEM3xk9Dz44I8k
165b00 76 6a 77 7a 52 41 76 34 62 56 64 5a 4f 30 49 30 38 72 30 2b 6b 38 2f 36 76 4b 74 4d 46 6e 58 6b vjwzRAv4bVdZO0I08r0+k8/6vKtMFnXk
165b20 49 6f 63 74 58 0a 4d 62 53 63 79 4a 43 79 5a 2f 51 59 46 70 4d 36 2f 45 66 59 30 58 69 57 4d 52 IoctX.MbScyJCyZ/QYFpM6/EfY0XiWMR
165b40 2b 36 4b 77 78 66 58 5a 6d 74 59 34 6c 61 4a 43 42 32 32 4e 2f 39 71 30 36 6d 49 71 71 64 58 75 +6KwxfXZmtY4laJCB22N/9q06mIqqdXu
165b60 59 6e 69 6e 31 6f 4b 61 50 6e 69 72 6a 61 45 62 73 58 0a 4c 5a 6d 64 45 79 52 47 39 38 58 69 32 Ynin1oKaPnirjaEbsX.LZmdEyRG98Xi2
165b80 4a 2b 4f 66 38 65 50 64 47 31 61 73 75 68 79 39 61 7a 75 4a 42 43 74 4c 78 54 61 2f 79 32 61 52 J+Of8ePdG1asuhy9azuJBCtLxTa/y2aR
165ba0 6e 46 48 76 6b 4c 66 75 77 48 62 39 48 2f 54 4b 49 38 78 57 56 76 54 79 51 4b 6d 74 46 4c 4b 0a nFHvkLfuwHb9H/TKI8xWVvTyQKmtFLK.
165bc0 62 70 66 37 51 38 55 49 4a 6d 2b 4b 39 4c 76 39 6e 79 69 71 44 64 56 46 38 78 4d 36 48 64 6a 41 bpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjA
165be0 65 49 39 42 5a 7a 77 65 6c 47 53 75 65 77 76 46 36 4e 6b 42 69 44 6b 61 6c 34 5a 6b 51 64 55 37 eI9BZzwelGSuewvF6NkBiDkal4ZkQdU7
165c00 68 77 78 75 2b 67 2f 47 76 55 67 55 0a 76 7a 6c 4e 31 4a 35 42 74 6f 2b 57 48 57 4f 57 6b 39 6d hwxu+g/GvUgU.vzlN1J5Bto+WHWOWk9m
165c20 56 42 6e 67 78 61 4a 34 33 42 6a 75 41 69 55 56 68 4f 53 50 48 47 30 53 6a 46 65 55 63 2b 4a 49 VBngxaJ43BjuAiUVhOSPHG0SjFeUc+JI
165c40 77 75 77 49 44 41 51 41 42 6f 34 48 76 4d 49 48 73 4d 42 49 47 41 31 55 64 0a 45 77 45 42 2f 77 wuwIDAQABo4HvMIHsMBIGA1Ud.EwEB/w
165c60 51 49 4d 41 59 42 41 66 38 43 41 51 45 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 QIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAg
165c80 45 47 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 52 6c 7a 65 75 72 4e 52 34 41 50 6e 37 56 64 4d EGMB0GA1UdDgQWBBRlzeurNR4APn7VdM
165ca0 41 63 74 48 4e 48 0a 44 68 70 6b 4c 7a 43 42 70 67 59 44 56 52 30 67 42 49 47 65 4d 49 47 62 4d ActHNH.DhpkLzCBpgYDVR0gBIGeMIGbM
165cc0 49 47 59 42 67 52 56 48 53 41 41 4d 49 47 50 4d 43 38 47 43 43 73 47 41 51 55 46 42 77 49 42 46 IGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBF
165ce0 69 4e 6f 64 48 52 77 4f 69 38 76 64 33 64 33 4c 6d 5a 70 0a 63 6d 31 68 63 48 4a 76 5a 6d 56 7a iNodHRwOi8vd3d3LmZp.cm1hcHJvZmVz
165d00 61 57 39 75 59 57 77 75 59 32 39 74 4c 32 4e 77 63 7a 42 63 42 67 67 72 42 67 45 46 42 51 63 43 aW9uYWwuY29tL2NwczBcBggrBgEFBQcC
165d20 41 6a 42 51 48 6b 34 41 55 41 42 68 41 48 4d 41 5a 51 42 76 41 43 41 41 5a 41 42 6c 41 43 41 41 AjBQHk4AUABhAHMAZQBvACAAZABlACAA
165d40 0a 62 41 42 68 41 43 41 41 51 67 42 76 41 47 34 41 59 51 42 75 41 47 38 41 64 67 42 68 41 43 41 .bABhACAAQgBvAG4AYQBuAG8AdgBhACA
165d60 41 4e 41 41 33 41 43 41 41 51 67 42 68 41 48 49 41 59 77 42 6c 41 47 77 41 62 77 42 75 41 47 45 ANAA3ACAAQgBhAHIAYwBlAGwAbwBuAGE
165d80 41 49 41 41 77 41 44 67 41 4d 41 41 78 0a 41 44 63 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 AIAAwADgAMAAx.ADcwDQYJKoZIhvcNAQ
165da0 45 46 42 51 41 44 67 67 49 42 41 42 64 39 6f 50 6d 30 33 63 58 46 36 36 31 4c 4a 4c 57 68 41 71 EFBQADggIBABd9oPm03cXF661LJLWhAq
165dc0 76 64 70 59 68 4b 73 67 39 56 53 79 74 58 6a 44 76 6c 4d 64 33 2b 78 44 4c 78 0a 35 31 74 6b 6c vdpYhKsg9VSytXjDvlMd3+xDLx.51tkl
165de0 6a 59 79 47 4f 79 6c 4d 6e 66 58 34 30 53 32 77 42 45 71 67 4c 6b 39 61 6d 35 38 6d 39 4f 74 2f jYyGOylMnfX40S2wBEqgLk9am58m9Ot/
165e00 4d 50 57 6f 2b 5a 6b 4b 58 7a 52 34 54 67 65 67 69 76 2f 4a 32 57 76 2b 78 59 56 78 43 35 78 68 MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xh
165e20 4f 57 31 2f 2f 71 6b 0a 52 37 31 6b 4d 72 76 32 4a 59 53 69 4a 30 4c 31 49 4c 44 43 45 78 41 52 OW1//qk.R71kMrv2JYSiJ0L1ILDCExAR
165e40 7a 52 41 56 75 6b 4b 51 4b 74 4a 45 34 5a 59 6d 36 7a 46 49 45 76 30 71 32 73 6b 47 7a 33 51 65 zRAVukKQKtJE4ZYm6zFIEv0q2skGz3Qe
165e60 71 55 76 56 68 79 6a 35 65 54 53 53 50 69 35 45 36 50 61 50 0a 54 34 38 31 50 79 57 7a 4f 64 78 qUvVhyj5eTSSPi5E6PaP.T481PyWzOdx
165e80 6a 4b 70 42 72 49 46 2f 45 55 68 4a 4f 6c 79 77 71 72 4a 32 58 33 6b 6a 79 6f 32 62 62 77 74 4b jKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtK
165ea0 44 6c 61 5a 6d 70 35 34 6c 44 2b 6b 4c 4d 35 46 6c 43 6c 72 44 32 56 51 53 33 61 2f 44 54 67 34 DlaZmp54lD+kLM5FlClrD2VQS3a/DTg4
165ec0 66 0a 4a 6c 34 4e 33 4c 4f 4e 37 4e 57 42 63 4e 37 53 54 79 51 46 38 32 78 4f 39 55 78 4a 5a 6f f.Jl4N3LON7NWBcN7STyQF82xO9UxJZo
165ee0 33 52 2f 39 49 4c 4a 55 46 49 2f 6c 47 45 78 6b 4b 76 67 41 54 50 30 48 35 6b 53 65 54 79 33 36 3R/9ILJUFI/lGExkKvgATP0H5kSeTy36
165f00 4c 73 73 55 7a 41 4b 68 33 6e 74 4c 46 6c 0a 6f 73 53 38 38 5a 6a 30 71 6e 41 48 59 37 53 34 32 LssUzAKh3ntLFl.osS88Zj0qnAHY7S42
165f20 6a 74 4d 2b 6b 41 69 4d 46 73 52 70 76 41 46 44 73 59 43 41 30 69 72 68 70 75 46 33 64 76 64 36 jtM+kAiMFsRpvAFDsYCA0irhpuF3dvd6
165f40 71 4a 32 67 48 4e 39 39 5a 77 45 78 45 57 4e 35 37 6b 63 69 35 37 71 31 33 58 52 0a 63 72 48 65 qJ2gHN99ZwExEWN57kci57q13XR.crHe
165f60 64 55 54 6e 51 6e 33 69 56 32 74 39 33 4a 6d 38 50 59 4d 6f 36 6f 43 54 6a 63 56 4d 5a 63 46 77 dUTnQn3iV2t93Jm8PYMo6oCTjcVMZcFw
165f80 67 62 67 34 2f 45 4d 78 73 76 59 44 4e 45 65 79 72 50 73 69 42 73 73 65 33 52 64 48 48 46 39 6d gbg4/EMxsvYDNEeyrPsiBsse3RdHHF9m
165fa0 75 64 4d 61 6f 74 6f 52 0a 73 61 53 38 49 38 6e 6b 76 6f 66 2f 75 5a 53 32 2b 46 30 67 53 74 52 udMaotoR.saS8I8nkvof/uZS2+F0gStR
165fc0 66 35 37 31 6f 65 32 58 79 46 52 37 53 4f 71 6b 74 36 64 68 72 4a 4b 79 58 57 45 52 48 72 56 6b f571oe2XyFR7SOqkt6dhrJKyXWERHrVk
165fe0 59 38 53 46 6c 63 4e 37 4f 4e 47 43 6f 51 50 48 7a 50 4b 54 44 0a 4b 43 4f 4d 2f 69 63 7a 51 30 Y8SFlcN7ONGCoQPHzPKTD.KCOM/iczQ0
166000 43 67 46 7a 7a 72 36 6a 75 77 63 71 61 6a 75 55 70 4c 58 68 5a 49 39 4c 4b 38 79 49 79 53 78 5a CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ
166020 32 66 72 48 49 32 76 44 53 41 4e 47 75 70 69 35 4c 41 75 42 66 74 37 48 5a 54 39 53 51 42 6a 4c 2frHI2vDSANGupi5LAuBft7HZT9SQBjL
166040 4d 69 0a 36 45 74 38 56 63 61 64 2b 71 4d 55 75 32 57 46 62 6d 35 50 45 6e 34 4b 50 4a 32 56 0a Mi.6Et8Vcad+qMUu2WFbm5PEn4KPJ2V.
166060 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 49 7a 65 6e 70 -----END.CERTIFICATE-----..Izenp
166080 65 2e 63 6f 6d 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 e.com.==========.-----BEGIN.CERT
1660a0 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 38 54 43 43 41 39 6d 67 41 77 49 42 41 67 49 IFICATE-----.MIIF8TCCA9mgAwIBAgI
1660c0 51 41 4c 43 33 57 68 5a 49 58 37 2f 68 79 2f 57 4c 31 78 6e 6d 66 54 41 4e 42 67 6b 71 68 6b 69 QALC3WhZIX7/hy/WL1xnmfTANBgkqhki
1660e0 47 39 77 30 42 41 51 73 46 41 44 41 34 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 46 55 7a G9w0BAQsFADA4MQswCQYDVQQG.EwJFUz
166100 45 55 4d 42 49 47 41 31 55 45 43 67 77 4c 53 56 70 46 54 6c 42 46 49 46 4d 75 51 53 34 78 45 7a EUMBIGA1UECgwLSVpFTlBFIFMuQS4xEz
166120 41 52 42 67 4e 56 42 41 4d 4d 43 6b 6c 36 5a 57 35 77 5a 53 35 6a 62 32 30 77 48 68 63 4e 4d 44 ARBgNVBAMMCkl6ZW5wZS5jb20wHhcNMD
166140 63 78 4d 6a 45 7a 0a 4d 54 4d 77 4f 44 49 34 57 68 63 4e 4d 7a 63 78 4d 6a 45 7a 4d 44 67 79 4e cxMjEz.MTMwODI4WhcNMzcxMjEzMDgyN
166160 7a 49 31 57 6a 41 34 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 55 7a 45 55 4d 42 49 47 41 zI1WjA4MQswCQYDVQQGEwJFUzEUMBIGA
166180 31 55 45 43 67 77 4c 53 56 70 46 54 6c 42 46 49 46 4d 75 0a 51 53 34 78 45 7a 41 52 42 67 4e 56 1UECgwLSVpFTlBFIFMu.QS4xEzARBgNV
1661a0 42 41 4d 4d 43 6b 6c 36 5a 57 35 77 5a 53 35 6a 62 32 30 77 67 67 49 69 4d 41 30 47 43 53 71 47 BAMMCkl6ZW5wZS5jb20wggIiMA0GCSqG
1661c0 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 44 4a SIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ
1661e0 0a 30 33 72 4b 44 78 36 73 70 34 62 6f 46 6d 56 71 73 63 49 62 52 54 4a 78 6c 64 6e 2b 45 46 76 .03rKDx6sp4boFmVqscIbRTJxldn+EFv
166200 4d 72 2b 65 6c 65 51 47 50 69 63 50 4b 38 6c 56 78 39 33 65 2b 64 35 54 7a 63 71 51 73 52 4e 69 Mr+eleQGPicPK8lVx93e+d5TzcqQsRNi
166220 65 6b 70 73 55 4f 71 48 6e 4a 4a 41 4b 0a 43 6c 61 4f 78 64 67 6d 6c 4f 48 5a 53 4f 45 74 50 74 ekpsUOqHnJJAK.ClaOxdgmlOHZSOEtPt
166240 6f 4b 63 74 32 6a 6d 52 58 61 67 61 4b 48 39 48 74 75 4a 6e 65 4a 57 4b 33 57 36 77 79 79 51 58 oKct2jmRXagaKH9HtuJneJWK3W6wyyQX
166260 70 7a 62 6d 33 62 65 6e 68 42 36 51 69 49 45 6e 36 48 4c 6d 59 52 59 32 78 55 0a 2b 7a 79 64 63 pzbm3benhB6QiIEn6HLmYRY2xU.+zydc
166280 73 43 38 4c 76 2f 43 74 39 30 4e 64 75 4d 36 31 2f 65 30 61 4c 36 69 39 65 4f 42 62 73 46 47 62 sC8Lv/Ct90NduM61/e0aL6i9eOBbsFGb
1662a0 31 32 4e 34 45 33 47 56 46 57 4a 47 6a 4d 78 43 72 46 58 75 61 4f 4b 6d 4d 50 73 4f 7a 54 46 6c 12N4E3GVFWJGjMxCrFXuaOKmMPsOzTFl
1662c0 55 46 70 66 6e 58 43 0a 50 43 44 46 59 62 70 52 52 36 41 67 6b 4a 4f 68 6b 45 76 7a 54 6e 79 46 UFpfnXC.PCDFYbpRR6AgkJOhkEvzTnyF
1662e0 52 56 53 61 30 51 55 6d 51 62 43 31 54 52 30 7a 76 73 51 44 79 43 56 38 77 58 44 62 4f 2f 51 4a RVSa0QUmQbC1TR0zvsQDyCV8wXDbO/QJ
166300 4c 56 51 6e 53 4b 77 76 34 63 53 73 50 73 6a 4c 6b 6b 78 54 0a 4f 54 63 6a 37 4e 4d 42 2b 65 41 LVQnSKwv4cSsPsjLkkxT.OTcj7NMB+eA
166320 4a 52 45 31 4e 5a 4d 44 68 44 56 71 48 49 72 79 74 47 36 50 2b 4a 72 55 56 38 36 66 38 68 42 6e JRE1NZMDhDVqHIrytG6P+JrUV86f8hBn
166340 70 37 4b 47 49 74 45 52 70 68 49 50 7a 69 64 46 30 42 71 6e 4d 43 39 62 43 33 69 65 46 55 43 62 p7KGItERphIPzidF0BqnMC9bC3ieFUCb
166360 4b 0a 46 37 6a 4a 65 6f 64 57 4c 42 6f 42 48 6d 79 2b 45 36 30 51 72 4c 55 6b 39 54 69 52 6f 64 K.F7jJeodWLBoBHmy+E60QrLUk9TiRod
166380 5a 4c 32 76 47 37 30 74 35 48 74 66 47 38 67 66 5a 5a 61 38 38 5a 55 2b 6d 4e 46 63 74 4b 79 36 ZL2vG70t5HtfG8gfZZa88ZU+mNFctKy6
1663a0 6c 76 52 4f 55 62 51 63 2f 68 68 71 66 4b 0a 30 47 71 66 76 45 79 4e 42 6a 4e 61 6f 6f 58 6c 6b lvROUbQc/hhqfK.0GqfvEyNBjNaooXlk
1663c0 44 57 67 59 6c 77 57 54 76 44 6a 6f 76 6f 44 47 72 51 73 63 62 4e 59 4c 4e 35 37 43 39 73 61 44 DWgYlwWTvDjovoDGrQscbNYLN57C9saD
1663e0 2b 76 65 49 52 38 47 64 77 59 44 73 4d 6e 76 6d 66 7a 41 75 55 38 4c 68 69 6a 2b 0a 30 72 6e 71 +veIR8GdwYDsMnvmfzAuU8Lhij+.0rnq
166400 34 39 71 6c 77 30 64 70 45 75 44 62 38 50 59 5a 69 2b 31 37 63 4e 63 43 31 75 32 48 47 43 67 73 49qlw0dpEuDb8PYZi+17cNcC1u2HGCgs
166420 42 43 52 4d 64 2b 52 49 69 68 72 47 4f 35 72 55 44 38 72 36 64 64 49 42 51 46 71 4e 65 62 2b 4c BCRMd+RIihrGO5rUD8r6ddIBQFqNeb+L
166440 7a 30 76 50 71 68 62 42 0a 6c 65 53 74 54 49 6f 2b 46 35 48 55 73 57 4c 6c 67 75 57 41 42 4b 51 z0vPqhbB.leStTIo+F5HUsWLlguWABKQ
166460 44 66 6f 32 2f 32 6e 2b 69 44 35 64 50 44 4e 4d 4e 2b 39 66 52 35 58 4a 2b 48 4d 68 33 2f 31 75 Dfo2/2n+iD5dPDNMN+9fR5XJ+HMh3/1u
166480 61 44 37 65 75 42 55 62 6c 38 61 67 57 37 45 65 6b 46 77 49 44 0a 41 51 41 42 6f 34 48 32 4d 49 aD7euBUbl8agW7EekFwID.AQABo4H2MI
1664a0 48 7a 4d 49 47 77 42 67 4e 56 48 52 45 45 67 61 67 77 67 61 57 42 44 32 6c 75 5a 6d 39 41 61 58 HzMIGwBgNVHREEgagwgaWBD2luZm9AaX
1664c0 70 6c 62 6e 42 6c 4c 6d 4e 76 62 61 53 42 6b 54 43 42 6a 6a 46 48 4d 45 55 47 41 31 55 45 43 67 plbnBlLmNvbaSBkTCBjjFHMEUGA1UECg
1664e0 77 2b 0a 53 56 70 46 54 6c 42 46 49 46 4d 75 51 53 34 67 4c 53 42 44 53 55 59 67 51 54 41 78 4d w+.SVpFTlBFIFMuQS4gLSBDSUYgQTAxM
166500 7a 4d 33 4d 6a 59 77 4c 56 4a 4e 5a 58 4a 6a 4c 6c 5a 70 64 47 39 79 61 57 45 74 52 32 46 7a 64 zM3MjYwLVJNZXJjLlZpdG9yaWEtR2Fzd
166520 47 56 70 65 69 42 55 4d 54 41 31 4e 53 42 47 0a 4e 6a 49 67 55 7a 67 78 51 7a 42 42 42 67 4e 56 GVpeiBUMTA1NSBG.NjIgUzgxQzBBBgNV
166540 42 41 6b 4d 4f 6b 46 32 5a 47 45 67 5a 47 56 73 49 45 31 6c 5a 47 6c 30 5a 58 4a 79 59 57 35 6c BAkMOkF2ZGEgZGVsIE1lZGl0ZXJyYW5l
166560 62 79 42 46 64 47 39 79 59 6d 6c 6b 5a 57 45 67 4d 54 51 67 4c 53 41 77 4d 54 41 78 0a 4d 43 42 byBFdG9yYmlkZWEgMTQgLSAwMTAx.MCB
166580 57 61 58 52 76 63 6d 6c 68 4c 55 64 68 63 33 52 6c 61 58 6f 77 44 77 59 44 56 52 30 54 41 51 48 WaXRvcmlhLUdhc3RlaXowDwYDVR0TAQH
1665a0 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 /BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQY
1665c0 77 48 51 59 44 56 52 30 4f 0a 42 42 59 45 46 42 30 63 5a 51 36 6f 38 69 56 37 74 4a 48 50 35 4c wHQYDVR0O.BBYEFB0cZQ6o8iV7tJHP5L
1665e0 47 78 35 72 31 56 64 47 77 46 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 Gx5r1VdGwFMA0GCSqGSIb3DQEBCwUAA4
166600 49 43 41 51 42 34 70 67 77 57 53 70 39 4d 69 44 72 41 79 77 36 6c 0a 46 6e 32 66 75 55 68 66 47 ICAQB4pgwWSp9MiDrAyw6l.Fn2fuUhfG
166620 49 38 4e 59 6a 62 32 7a 52 6c 72 72 4b 76 56 39 70 46 39 72 6e 48 7a 50 37 4d 4f 65 49 57 62 6c I8NYjb2zRlrrKvV9pF9rnHzP7MOeIWbl
166640 61 51 6e 49 55 64 43 53 6e 78 49 4f 76 56 46 66 4c 4d 4d 6a 6c 46 34 72 4a 55 54 33 73 62 39 66 aQnIUdCSnxIOvVFfLMMjlF4rJUT3sb9f
166660 62 67 61 0a 6b 45 79 72 6b 67 50 48 37 55 49 42 7a 67 2f 59 73 66 71 69 6b 75 46 67 62 61 35 36 bga.kEyrkgPH7UIBzg/YsfqikuFgba56
166680 61 77 6d 71 78 69 6e 75 61 45 6c 6e 4d 49 41 6b 65 6a 45 57 4f 56 74 2b 38 52 77 75 33 57 77 4a awmqxinuaElnMIAkejEWOVt+8Rwu3WwJ
1666a0 72 66 49 78 77 59 4a 4f 75 62 76 35 76 72 38 71 0a 68 54 2f 41 51 4b 4d 36 57 66 78 5a 53 7a 77 rfIxwYJOubv5vr8q.hT/AQKM6WfxZSzw
1666c0 6f 4a 4e 75 30 46 58 57 75 44 59 69 36 4c 6e 50 41 76 56 69 48 35 55 4c 79 36 31 37 75 48 6a 41 oJNu0FXWuDYi6LnPAvViH5ULy617uHjA
1666e0 69 6d 63 73 33 30 63 51 68 62 49 48 73 76 6d 30 6d 35 68 7a 6b 51 69 43 65 52 37 43 73 0a 67 31 imcs30cQhbIHsvm0m5hzkQiCeR7Cs.g1
166700 6c 77 4c 44 58 57 72 7a 59 30 74 4d 30 37 2b 44 4b 6f 37 2b 4e 34 69 66 75 4e 52 53 7a 61 6e 4c lwLDXWrzY0tM07+DKo7+N4ifuNRSzanL
166720 68 2b 51 42 78 68 35 7a 36 69 6b 69 78 4c 38 73 33 36 6d 4c 59 70 2f 2f 50 79 65 36 6b 66 4c 71 h+QBxh5z6ikixL8s36mLYp//Pye6kfLq
166740 43 54 56 79 76 65 68 51 50 35 0a 61 54 66 4c 6e 6e 68 71 42 62 54 46 4d 58 69 4a 37 48 71 6e 68 CTVyvehQP5.aTfLnnhqBbTFMXiJ7Hqnh
166760 65 47 35 65 7a 7a 65 76 68 35 35 68 4d 36 66 63 41 35 5a 77 6a 55 75 6b 43 6f 78 32 65 52 46 65 eG5ezzevh55hM6fcA5ZwjUukCox2eRFe
166780 6b 47 6b 4c 68 4f 62 4e 41 35 6d 65 30 6d 72 5a 4a 66 51 52 73 4e 35 0a 6e 58 4a 51 59 36 61 59 kGkLhObNA5me0mrZJfQRsN5.nXJQY6aY
1667a0 57 77 61 39 53 47 33 59 4f 59 4e 77 36 44 58 77 42 64 47 71 76 4f 50 62 79 41 4c 71 66 50 32 43 Wwa9SG3YOYNw6DXwBdGqvOPbyALqfP2C
1667c0 32 73 4a 62 55 6a 57 75 6d 44 71 74 75 6a 57 54 49 36 63 66 53 4e 30 31 52 70 69 79 45 47 6a 6b 2sJbUjWumDqtujWTI6cfSN01RpiyEGjk
1667e0 70 54 48 43 0a 43 6c 67 75 47 59 45 51 79 56 42 31 2f 4f 70 61 46 73 34 52 31 2b 37 76 55 49 67 pTHC.ClguGYEQyVB1/OpaFs4R1+7vUIg
166800 74 59 66 38 2f 51 6e 4d 46 6c 45 50 56 6a 6a 78 4f 41 54 6f 5a 70 52 39 47 54 6e 66 51 58 65 57 tYf8/QnMFlEPVjjxOAToZpR9GTnfQXeW
166820 42 49 69 47 48 2f 70 52 39 68 4e 69 54 72 64 5a 6f 0a 51 30 69 79 32 2b 74 7a 4a 4f 65 52 66 31 BIiGH/pR9hNiTrdZo.Q0iy2+tzJOeRf1
166840 53 6b 74 6f 41 2b 6e 61 4d 38 54 48 4c 43 56 38 53 67 31 4d 77 34 4a 38 37 56 42 70 36 69 53 4e SktoA+naM8THLCV8Sg1Mw4J87VBp6iSN
166860 6e 70 6e 38 36 43 63 44 61 54 6d 6a 76 66 6c 69 48 6a 57 62 63 4d 32 70 45 33 38 50 31 5a 0a 57 npn86CcDaTmjvfliHjWbcM2pE38P1Z.W
166880 72 4f 5a 79 47 6c 73 51 79 59 42 4e 57 4e 67 56 59 6b 44 4f 6e 58 59 75 6b 72 5a 56 50 2f 75 33 rOZyGlsQyYBNWNgVYkDOnXYukrZVP/u3
1668a0 6f 44 59 4c 64 45 34 31 56 34 74 43 35 68 39 50 6d 7a 62 2f 43 61 49 78 77 3d 3d 0a 2d 2d 2d 2d oDYLdE41V4tC5h9Pmzb/CaIxw==.----
1668c0 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 68 61 6d 62 65 72 73 20 -END.CERTIFICATE-----..Chambers.
1668e0 6f 66 20 43 6f 6d 6d 65 72 63 65 20 52 6f 6f 74 20 2d 20 32 30 30 38 0a 3d 3d 3d 3d 3d 3d 3d 3d of.Commerce.Root.-.2008.========
166900 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 ========================.-----BE
166920 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 48 54 7a 43 43 42 54 65 GIN.CERTIFICATE-----.MIIHTzCCBTe
166940 67 41 77 49 42 41 67 49 4a 41 4b 50 61 51 6e 36 6b 73 61 37 61 4d 41 30 47 43 53 71 47 53 49 62 gAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb
166960 33 44 51 45 42 42 51 55 41 4d 49 47 75 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 56 54 46 3DQEBBQUAMIGuMQswCQYDVQQGEwJFVTF
166980 44 0a 4d 45 45 47 41 31 55 45 42 78 4d 36 54 57 46 6b 63 6d 6c 6b 49 43 68 7a 5a 57 55 67 59 33 D.MEEGA1UEBxM6TWFkcmlkIChzZWUgY3
1669a0 56 79 63 6d 56 75 64 43 42 68 5a 47 52 79 5a 58 4e 7a 49 47 46 30 49 48 64 33 64 79 35 6a 59 57 VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW
1669c0 31 6c 63 6d 5a 70 63 6d 31 68 4c 6d 4e 76 0a 62 53 39 68 5a 47 52 79 5a 58 4e 7a 4b 54 45 53 4d 1lcmZpcm1hLmNv.bS9hZGRyZXNzKTESM
1669e0 42 41 47 41 31 55 45 42 52 4d 4a 51 54 67 79 4e 7a 51 7a 4d 6a 67 33 4d 52 73 77 47 51 59 44 56 BAGA1UEBRMJQTgyNzQzMjg3MRswGQYDV
166a00 51 51 4b 45 78 4a 42 51 79 42 44 59 57 31 6c 63 6d 5a 70 63 6d 31 68 49 46 4d 75 0a 51 53 34 78 QQKExJBQyBDYW1lcmZpcm1hIFMu.QS4x
166a20 4b 54 41 6e 42 67 4e 56 42 41 4d 54 49 45 4e 6f 59 57 31 69 5a 58 4a 7a 49 47 39 6d 49 45 4e 76 KTAnBgNVBAMTIENoYW1iZXJzIG9mIENv
166a40 62 57 31 6c 63 6d 4e 6c 49 46 4a 76 62 33 51 67 4c 53 41 79 4d 44 41 34 4d 42 34 58 44 54 41 34 bW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4
166a60 4d 44 67 77 4d 54 45 79 0a 4d 6a 6b 31 4d 46 6f 58 44 54 4d 34 4d 44 63 7a 4d 54 45 79 4d 6a 6b MDgwMTEy.Mjk1MFoXDTM4MDczMTEyMjk
166a80 31 4d 46 6f 77 67 61 34 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 56 56 4d 55 4d 77 51 51 59 1MFowga4xCzAJBgNVBAYTAkVVMUMwQQY
166aa0 44 56 51 51 48 45 7a 70 4e 59 57 52 79 61 57 51 67 4b 48 4e 6c 0a 5a 53 42 6a 64 58 4a 79 5a 57 DVQQHEzpNYWRyaWQgKHNl.ZSBjdXJyZW
166ac0 35 30 49 47 46 6b 5a 48 4a 6c 63 33 4d 67 59 58 51 67 64 33 64 33 4c 6d 4e 68 62 57 56 79 5a 6d 50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZm
166ae0 6c 79 62 57 45 75 59 32 39 74 4c 32 46 6b 5a 48 4a 6c 63 33 4d 70 4d 52 49 77 45 41 59 44 56 51 lybWEuY29tL2FkZHJlc3MpMRIwEAYDVQ
166b00 51 46 0a 45 77 6c 42 4f 44 49 33 4e 44 4d 79 4f 44 63 78 47 7a 41 5a 42 67 4e 56 42 41 6f 54 45 QF.EwlBODI3NDMyODcxGzAZBgNVBAoTE
166b20 6b 46 44 49 45 4e 68 62 57 56 79 5a 6d 6c 79 62 57 45 67 55 79 35 42 4c 6a 45 70 4d 43 63 47 41 kFDIENhbWVyZmlybWEgUy5BLjEpMCcGA
166b40 31 55 45 41 78 4d 67 51 32 68 68 62 57 4a 6c 0a 63 6e 4d 67 62 32 59 67 51 32 39 74 62 57 56 79 1UEAxMgQ2hhbWJl.cnMgb2YgQ29tbWVy
166b60 59 32 55 67 55 6d 39 76 64 43 41 74 49 44 49 77 4d 44 67 77 67 67 49 69 4d 41 30 47 43 53 71 47 Y2UgUm9vdCAtIDIwMDgwggIiMA0GCSqG
166b80 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 0a 41 51 43 SIb3DQEBAQUAA4ICDwAwggIKAoIC.AQC
166ba0 76 41 4d 74 77 4e 79 75 41 57 6b 6f 36 62 48 69 55 66 61 4e 2f 47 68 2f 32 4e 64 57 39 32 38 73 vAMtwNyuAWko6bHiUfaN/Gh/2NdW928s
166bc0 4e 52 48 49 2b 4a 72 4b 51 55 72 70 6a 4f 79 68 59 62 36 57 7a 62 5a 53 6d 38 39 31 6b 44 46 58 NRHI+JrKQUrpjOyhYb6WzbZSm891kDFX
166be0 32 39 75 66 79 49 69 4b 41 0a 58 75 46 69 78 72 59 70 34 59 46 73 38 72 2f 6c 66 54 4a 71 56 4b 29ufyIiKA.XuFixrYp4YFs8r/lfTJqVK
166c00 41 79 47 56 6e 2b 48 34 76 58 50 57 43 47 68 53 52 76 34 78 47 7a 64 7a 34 67 6c 6a 55 68 61 37 AyGVn+H4vXPWCGhSRv4xGzdz4gljUha7
166c20 4d 49 32 58 41 75 5a 50 65 45 6b 6c 50 57 44 72 43 51 69 6f 72 6a 0a 68 34 30 47 30 37 32 51 44 MI2XAuZPeEklPWDrCQiorj.h40G072QD
166c40 75 4b 5a 6f 52 75 47 44 74 71 61 43 72 73 4c 59 56 41 47 55 76 47 65 66 33 62 73 79 77 2f 51 48 uKZoRuGDtqaCrsLYVAGUvGef3bsyw/QH
166c60 67 33 50 6d 54 41 39 48 4d 52 46 45 46 69 73 31 74 50 6f 31 2b 58 71 78 51 45 48 64 39 5a 52 35 g3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR5
166c80 67 4e 2f 0a 69 6b 69 6c 54 57 68 31 75 65 6d 38 6e 6b 34 5a 63 66 55 79 53 35 78 74 59 42 6b 4c gN/.ikilTWh1uem8nk4ZcfUyS5xtYBkL
166ca0 2b 38 79 64 64 64 79 2f 4a 73 32 50 6b 33 67 35 65 58 4e 65 4a 51 37 4b 58 4f 74 33 45 67 66 4c +8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfL
166cc0 5a 45 46 48 63 70 4f 72 55 4d 50 72 43 58 5a 6b 0a 4e 4e 49 35 74 33 59 52 43 51 31 32 52 63 53 ZEFHcpOrUMPrCXZk.NNI5t3YRCQ12RcS
166ce0 70 72 6a 31 71 72 37 56 39 5a 53 2b 55 57 42 44 73 58 48 79 76 66 75 4b 32 47 4e 6e 51 6d 30 35 prj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05
166d00 61 53 64 2b 70 5a 67 76 4d 50 4d 5a 34 66 4b 65 63 48 65 50 4f 6a 6c 4f 2b 42 64 35 67 0a 44 32 aSd+pZgvMPMZ4fKecHePOjlO+Bd5g.D2
166d20 76 6c 47 74 73 2f 34 2b 45 68 79 53 6e 42 38 65 73 48 6e 46 49 62 41 55 52 52 50 48 73 6c 31 38 vlGts/4+EhySnB8esHnFIbAURRPHsl18
166d40 54 6c 55 6c 52 64 4a 51 66 4b 46 69 43 34 72 65 52 42 37 6e 6f 49 2f 70 6c 76 67 36 61 52 41 72 TlUlRdJQfKFiC4reRB7noI/plvg6aRAr
166d60 42 73 4e 6c 56 71 35 33 33 31 0a 6c 75 62 4b 67 64 61 58 38 5a 53 44 36 65 32 77 73 57 73 53 61 BsNlVq5331.lubKgdaX8ZSD6e2wsWsSa
166d80 52 36 73 2b 31 32 70 78 5a 6a 70 74 46 74 59 65 72 34 39 6f 6b 51 36 59 31 6e 55 43 79 58 65 47 R6s+12pxZjptFtYer49okQ6Y1nUCyXeG
166da0 30 2b 39 35 51 47 65 7a 64 49 70 31 5a 38 58 47 51 70 76 76 77 79 51 0a 30 77 6c 66 32 65 4f 4b 0+95QGezdIp1Z8XGQpvvwyQ.0wlf2eOK
166dc0 4e 63 78 35 57 6b 30 5a 4e 35 4b 33 78 4d 47 74 72 2f 52 35 4a 4a 71 79 41 51 75 78 72 31 79 57 Ncx5Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW
166de0 38 34 41 79 2b 31 77 39 6d 50 47 67 50 30 72 65 76 71 2b 55 4c 74 6c 56 6d 68 64 75 59 4a 31 6a 84Ay+1w9mPGgP0revq+ULtlVmhduYJ1j
166e00 62 4c 68 6a 0a 79 61 36 42 58 42 67 31 34 4a 43 37 76 6a 78 50 4e 79 4b 35 66 75 76 50 6e 6e 63 bLhj.ya6BXBg14JC7vjxPNyK5fuvPnnc
166e20 68 70 6a 30 34 67 66 74 49 32 6a 45 39 4b 2b 4f 4a 39 64 43 31 76 58 37 67 55 4d 51 53 69 62 4d hpj04gftI2jE9K+OJ9dC1vX7gUMQSibM
166e40 6a 6d 68 41 78 68 64 75 75 62 2b 38 34 4d 78 68 32 0a 45 51 49 44 41 51 41 42 6f 34 49 42 62 44 jmhAxhduub+84Mxh2.EQIDAQABo4IBbD
166e60 43 43 41 57 67 77 45 67 59 44 56 52 30 54 41 51 48 2f 42 41 67 77 42 67 45 42 2f 77 49 42 44 44 CCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDD
166e80 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 2b 53 53 73 44 37 4b 31 2b 48 6e 41 2b 6d 43 49 0a 47 AdBgNVHQ4EFgQU+SSsD7K1+HnA+mCI.G
166ea0 38 54 5a 54 51 4b 65 46 78 6b 77 67 65 4d 47 41 31 55 64 49 77 53 42 32 7a 43 42 32 49 41 55 2b 8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+
166ec0 53 53 73 44 37 4b 31 2b 48 6e 41 2b 6d 43 49 47 38 54 5a 54 51 4b 65 46 78 6d 68 67 62 53 6b 67 SSsD7K1+HnA+mCIG8TZTQKeFxmhgbSkg
166ee0 62 45 77 67 61 34 78 43 7a 41 4a 0a 42 67 4e 56 42 41 59 54 41 6b 56 56 4d 55 4d 77 51 51 59 44 bEwga4xCzAJ.BgNVBAYTAkVVMUMwQQYD
166f00 56 51 51 48 45 7a 70 4e 59 57 52 79 61 57 51 67 4b 48 4e 6c 5a 53 42 6a 64 58 4a 79 5a 57 35 30 VQQHEzpNYWRyaWQgKHNlZSBjdXJyZW50
166f20 49 47 46 6b 5a 48 4a 6c 63 33 4d 67 59 58 51 67 64 33 64 33 4c 6d 4e 68 0a 62 57 56 79 5a 6d 6c IGFkZHJlc3MgYXQgd3d3LmNh.bWVyZml
166f40 79 62 57 45 75 59 32 39 74 4c 32 46 6b 5a 48 4a 6c 63 33 4d 70 4d 52 49 77 45 41 59 44 56 51 51 ybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQ
166f60 46 45 77 6c 42 4f 44 49 33 4e 44 4d 79 4f 44 63 78 47 7a 41 5a 42 67 4e 56 42 41 6f 54 45 6b 46 FEwlBODI3NDMyODcxGzAZBgNVBAoTEkF
166f80 44 49 45 4e 68 0a 62 57 56 79 5a 6d 6c 79 62 57 45 67 55 79 35 42 4c 6a 45 70 4d 43 63 47 41 31 DIENh.bWVyZmlybWEgUy5BLjEpMCcGA1
166fa0 55 45 41 78 4d 67 51 32 68 68 62 57 4a 6c 63 6e 4d 67 62 32 59 67 51 32 39 74 62 57 56 79 59 32 UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2
166fc0 55 67 55 6d 39 76 64 43 41 74 49 44 49 77 4d 44 69 43 0a 43 51 43 6a 32 6b 4a 2b 70 4c 47 75 32 UgUm9vdCAtIDIwMDiC.CQCj2kJ+pLGu2
166fe0 6a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 50 51 59 44 56 52 30 67 42 jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gB
167000 44 59 77 4e 44 41 79 42 67 52 56 48 53 41 41 4d 43 6f 77 4b 41 59 49 4b 77 59 42 42 51 55 48 0a DYwNDAyBgRVHSAAMCowKAYIKwYBBQUH.
167020 41 67 45 57 48 47 68 30 64 48 41 36 4c 79 39 77 62 32 78 70 59 33 6b 75 59 32 46 74 5a 58 4a 6d AgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJm
167040 61 58 4a 74 59 53 35 6a 62 32 30 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 aXJtYS5jb20wDQYJKoZIhvcNAQEFBQAD
167060 67 67 49 42 41 4a 41 53 72 79 49 31 0a 77 71 4d 35 38 43 37 65 36 62 58 70 65 48 78 49 76 6a 39 ggIBAJASryI1.wqM58C7e6bXpeHxIvj9
167080 39 52 5a 4a 65 36 64 71 78 47 66 77 57 50 4a 2b 30 57 32 61 65 61 75 66 44 75 56 32 49 36 41 2b 9RZJe6dqxGfwWPJ+0W2aeaufDuV2I6A+
1670a0 74 7a 79 4d 50 33 69 55 36 58 73 78 50 70 63 47 31 4c 61 77 6b 30 6c 67 48 0a 33 71 4c 50 61 59 tzyMP3iU6XsxPpcG1Lawk0lgH.3qLPaY
1670c0 52 67 4d 2b 67 51 44 52 4f 70 49 39 43 46 35 59 35 37 70 70 34 39 63 68 4e 79 4d 2f 57 71 66 63 RgM+gQDROpI9CF5Y57pp49chNyM/Wqfc
1670e0 5a 6a 48 77 6a 30 2f 67 46 2f 4a 4d 38 72 4c 46 51 4a 33 75 49 72 62 5a 4c 47 4f 55 38 57 36 6a ZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6j
167100 78 2b 65 6b 62 55 0a 52 57 70 47 71 4f 74 31 67 6c 61 6e 71 36 42 38 61 42 4d 7a 39 70 30 77 38 x+ekbU.RWpGqOt1glanq6B8aBMz9p0w8
167120 47 38 6e 4f 53 51 6a 4b 70 44 39 6b 43 6b 31 38 70 50 66 4e 4b 58 47 39 2f 6a 76 6a 41 39 69 53 G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iS
167140 6e 79 75 30 2f 56 55 2b 49 32 32 6d 6c 61 48 46 6f 49 36 0a 4d 36 74 61 49 67 6a 33 67 72 72 71 nyu0/VU+I22mlaHFoI6.M6taIgj3grrq
167160 4c 75 42 48 6d 72 53 31 52 61 4d 46 4f 39 6e 63 4c 6b 56 41 4f 2b 72 63 66 2b 67 37 36 39 48 73 LuBHmrS1RaMFO9ncLkVAO+rcf+g769Hs
167180 4a 74 67 31 70 44 44 46 4f 71 78 58 6e 72 4e 32 70 53 42 37 2b 52 35 4b 42 57 49 42 70 69 68 31 Jtg1pDDFOqxXnrN2pSB7+R5KBWIBpih1
1671a0 0a 59 4a 65 53 44 57 34 2b 54 54 64 44 44 5a 49 56 6e 42 67 69 7a 56 47 5a 6f 43 6b 61 50 46 2b .YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+
1671c0 4b 4d 6a 4e 62 4d 4d 65 4a 4c 30 65 59 44 36 4d 44 78 76 62 78 72 4e 38 79 38 4e 6d 42 47 75 53 KMjNbMMeJL0eYD6MDxvbxrN8y8NmBGuS
1671e0 63 76 66 61 41 46 50 44 52 4c 4c 6d 46 0a 39 64 69 6a 73 63 69 6c 49 65 55 63 45 35 66 75 44 72 cvfaAFPDRLLmF.9dijscilIeUcE5fuDr
167200 33 66 4b 61 6e 76 4e 46 4e 62 30 2b 52 71 45 34 51 47 74 6a 49 43 78 46 4b 75 49 74 4c 63 73 69 3fKanvNFNb0+RqE4QGtjICxFKuItLcsi
167220 46 43 47 74 70 41 38 43 6e 4a 37 41 6f 4d 58 4f 4c 51 75 73 78 49 30 7a 63 4b 0a 7a 42 49 4b 69 FCGtpA8CnJ7AoMXOLQusxI0zcK.zBIKi
167240 6e 6d 77 50 51 4e 2f 61 55 76 30 4e 43 42 39 73 7a 54 71 6a 6b 74 6b 39 54 37 39 73 79 4e 6e 46 nmwPQN/aUv0NCB9szTqjktk9T79syNnF
167260 51 30 45 75 50 41 74 77 51 6c 52 50 4c 4a 73 46 66 43 6c 49 39 65 44 64 4f 54 6c 4c 73 6e 2b 6d Q0EuPAtwQlRPLJsFfClI9eDdOTlLsn+m
167280 43 64 43 78 71 76 47 0a 6e 72 44 51 57 7a 69 6c 6d 31 44 65 66 68 69 59 74 55 55 37 39 6e 6d 30 CdCxqvG.nrDQWzilm1DefhiYtUU79nm0
1672a0 36 50 63 61 65 77 61 44 2b 39 43 4c 32 72 76 48 76 52 69 72 43 47 38 38 67 47 74 41 50 78 6b 5a 6PcaewaD+9CL2rvHvRirCG88gGtAPxkZ
1672c0 75 6d 57 4b 35 72 37 56 58 4e 4d 32 31 2b 39 41 55 69 52 67 0a 4f 47 63 45 4d 65 79 50 38 34 4c umWK5r7VXNM21+9AUiRg.OGcEMeyP84L
1672e0 47 33 72 6c 56 38 7a 73 78 6b 56 72 63 74 51 67 56 72 58 59 6c 43 67 31 37 4c 6f 66 69 44 4b 59 G3rlV8zsxkVrctQgVrXYlCg17LofiDKY
167300 47 76 43 59 51 62 54 65 64 37 4e 31 34 6a 48 79 41 78 66 44 5a 64 30 6a 51 0a 2d 2d 2d 2d 2d 45 GvCYQbTed7N14jHyAxfDZd0jQ.-----E
167320 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 6c 6f 62 61 6c 20 43 68 61 6d ND.CERTIFICATE-----..Global.Cham
167340 62 65 72 73 69 67 6e 20 52 6f 6f 74 20 2d 20 32 30 30 38 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d bersign.Root.-.2008.============
167360 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 ==================.-----BEGIN.CE
167380 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 48 53 54 43 43 42 54 47 67 41 77 49 42 41 RTIFICATE-----.MIIHSTCCBTGgAwIBA
1673a0 67 49 4a 41 4d 6e 4e 30 2b 6e 56 66 53 50 4f 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 gIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBB
1673c0 51 55 41 4d 49 47 73 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 56 54 46 44 0a 4d 45 45 47 QUAMIGsMQswCQYDVQQGEwJFVTFD.MEEG
1673e0 41 31 55 45 42 78 4d 36 54 57 46 6b 63 6d 6c 6b 49 43 68 7a 5a 57 55 67 59 33 56 79 63 6d 56 75 A1UEBxM6TWFkcmlkIChzZWUgY3VycmVu
167400 64 43 42 68 5a 47 52 79 5a 58 4e 7a 49 47 46 30 49 48 64 33 64 79 35 6a 59 57 31 6c 63 6d 5a 70 dCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZp
167420 63 6d 31 68 4c 6d 4e 76 0a 62 53 39 68 5a 47 52 79 5a 58 4e 7a 4b 54 45 53 4d 42 41 47 41 31 55 cm1hLmNv.bS9hZGRyZXNzKTESMBAGA1U
167440 45 42 52 4d 4a 51 54 67 79 4e 7a 51 7a 4d 6a 67 33 4d 52 73 77 47 51 59 44 56 51 51 4b 45 78 4a EBRMJQTgyNzQzMjg3MRswGQYDVQQKExJ
167460 42 51 79 42 44 59 57 31 6c 63 6d 5a 70 63 6d 31 68 49 46 4d 75 0a 51 53 34 78 4a 7a 41 6c 42 67 BQyBDYW1lcmZpcm1hIFMu.QS4xJzAlBg
167480 4e 56 42 41 4d 54 48 6b 64 73 62 32 4a 68 62 43 42 44 61 47 46 74 59 6d 56 79 63 32 6c 6e 62 69 NVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbi
1674a0 42 53 62 32 39 30 49 43 30 67 4d 6a 41 77 4f 44 41 65 46 77 30 77 4f 44 41 34 4d 44 45 78 4d 6a BSb290IC0gMjAwODAeFw0wODA4MDExMj
1674c0 4d 78 0a 4e 44 42 61 46 77 30 7a 4f 44 41 33 4d 7a 45 78 4d 6a 4d 78 4e 44 42 61 4d 49 47 73 4d Mx.NDBaFw0zODA3MzExMjMxNDBaMIGsM
1674e0 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 56 54 46 44 4d 45 45 47 41 31 55 45 42 78 4d 36 54 QswCQYDVQQGEwJFVTFDMEEGA1UEBxM6T
167500 57 46 6b 63 6d 6c 6b 49 43 68 7a 5a 57 55 67 0a 59 33 56 79 63 6d 56 75 64 43 42 68 5a 47 52 79 WFkcmlkIChzZWUg.Y3VycmVudCBhZGRy
167520 5a 58 4e 7a 49 47 46 30 49 48 64 33 64 79 35 6a 59 57 31 6c 63 6d 5a 70 63 6d 31 68 4c 6d 4e 76 ZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv
167540 62 53 39 68 5a 47 52 79 5a 58 4e 7a 4b 54 45 53 4d 42 41 47 41 31 55 45 42 52 4d 4a 0a 51 54 67 bS9hZGRyZXNzKTESMBAGA1UEBRMJ.QTg
167560 79 4e 7a 51 7a 4d 6a 67 33 4d 52 73 77 47 51 59 44 56 51 51 4b 45 78 4a 42 51 79 42 44 59 57 31 yNzQzMjg3MRswGQYDVQQKExJBQyBDYW1
167580 6c 63 6d 5a 70 63 6d 31 68 49 46 4d 75 51 53 34 78 4a 7a 41 6c 42 67 4e 56 42 41 4d 54 48 6b 64 lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkd
1675a0 73 62 32 4a 68 62 43 42 44 0a 61 47 46 74 59 6d 56 79 63 32 6c 6e 62 69 42 53 62 32 39 30 49 43 sb2JhbCBD.aGFtYmVyc2lnbiBSb290IC
1675c0 30 67 4d 6a 41 77 4f 44 43 43 41 69 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 0gMjAwODCCAiIwDQYJKoZIhvcNAQEBBQ
1675e0 41 44 67 67 49 50 41 44 43 43 41 67 6f 43 67 67 49 42 41 4d 44 66 0a 56 74 50 6b 4f 70 74 32 52 ADggIPADCCAgoCggIBAMDf.VtPkOpt2R
167600 62 51 54 32 2f 2f 42 74 68 6d 4c 4e 30 45 59 6c 56 4a 48 36 78 65 64 4b 59 69 4f 4e 57 77 47 4d bQT2//BthmLN0EYlVJH6xedKYiONWwGM
167620 69 35 48 59 76 4e 4a 42 4c 39 39 52 44 61 78 63 63 79 39 57 67 6c 7a 31 64 6d 46 52 50 2b 52 56 i5HYvNJBL99RDaxccy9Wglz1dmFRP+RV
167640 79 58 66 0a 58 6a 61 4f 63 4e 46 63 63 55 4d 64 32 64 72 76 58 4e 4c 37 47 37 30 36 74 63 75 74 yXf.XjaOcNFccUMd2drvXNL7G706tcut
167660 6f 38 78 45 70 77 32 75 49 52 55 2f 75 58 70 62 6b 6e 58 59 70 42 49 34 69 52 6d 4b 74 34 44 53 o8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS
167680 34 6a 4a 76 56 70 79 52 31 6f 67 51 43 37 4e 30 0a 5a 4a 4a 30 59 50 50 32 7a 78 68 50 59 4c 49 4jJvVpyR1ogQC7N0.ZJJ0YPP2zxhPYLI
1676a0 6a 30 4d 63 37 7a 6d 46 4c 6d 59 2f 43 44 4e 42 41 73 70 6a 63 44 61 68 4f 6f 37 6b 4b 72 6d 43 j0Mc7zmFLmY/CDNBAspjcDahOo7kKrmC
1676c0 67 72 55 56 53 59 37 70 6d 76 57 6a 67 2b 62 34 61 71 49 47 37 48 6b 46 34 64 64 50 42 0a 2f 67 grUVSY7pmvWjg+b4aqIG7HkF4ddPB./g
1676e0 42 56 73 49 64 55 36 43 65 51 4e 52 31 4d 4d 36 32 58 2f 4a 63 75 6d 49 53 2f 4c 4d 6d 6a 76 39 BVsIdU6CeQNR1MM62X/JcumIS/LMmjv9
167700 47 59 45 52 54 74 59 2f 6a 4b 6d 49 68 59 46 35 6e 74 52 51 4f 58 66 6a 79 47 48 6f 69 4d 76 76 GYERTtY/jKmIhYF5ntRQOXfjyGHoiMvv
167720 4b 52 68 49 39 6c 4e 4e 67 41 0a 54 48 32 33 4d 52 64 61 4b 58 6f 4b 47 43 51 77 6f 7a 65 31 65 KRhI9lNNgA.TH23MRdaKXoKGCQwoze1e
167740 71 6b 42 66 53 62 57 2b 51 36 4f 57 66 48 39 47 7a 4f 31 4b 54 73 58 4f 30 47 32 49 64 33 55 77 qkBfSbW+Q6OWfH9GzO1KTsXO0G2Id3Uw
167760 44 32 6c 6e 35 38 66 51 31 44 4a 75 37 78 73 65 70 65 59 37 73 32 4d 0a 48 2f 75 63 55 61 36 4c D2ln58fQ1DJu7xsepeY7s2M.H/ucUa6L
167780 63 4c 30 6e 6e 33 48 41 61 36 78 39 6b 47 62 6f 31 31 30 36 44 62 44 56 77 6f 33 56 79 4a 32 64 cL0nn3HAa6x9kGbo1106DbDVwo3VyJ2d
1677a0 77 57 33 51 30 4c 39 52 35 4f 50 34 77 7a 67 32 72 74 61 6e 64 65 61 76 68 45 4e 64 6b 35 49 4d wW3Q0L9R5OP4wzg2rtandeavhENdk5IM
1677c0 61 67 66 65 0a 4f 78 32 59 49 74 61 73 77 54 58 62 6f 36 41 6c 2f 33 4b 31 64 68 33 65 62 65 6b agfe.Ox2YItaswTXbo6Al/3K1dh3ebek
1677e0 73 5a 69 78 53 68 4e 42 46 6b 73 34 63 35 65 55 7a 48 64 77 48 55 31 53 6a 71 6f 49 37 6d 6a 63 sZixShNBFks4c5eUzHdwHU1SjqoI7mjc
167800 76 33 4e 32 67 5a 4f 6e 6d 33 62 32 75 2f 47 53 46 0a 48 54 79 6e 79 51 62 65 68 50 39 72 36 47 v3N2gZOnm3b2u/GSF.HTynyQbehP9r6G
167820 73 61 50 4d 57 69 73 30 4c 37 69 77 6b 2b 58 77 68 53 78 32 4c 45 31 41 56 78 76 38 52 6b 35 50 saPMWis0L7iwk+XwhSx2LE1AVxv8Rk5P
167840 69 68 67 2b 67 2b 45 70 75 6f 48 74 51 32 54 53 39 78 39 6f 30 6f 39 6f 4f 70 45 39 4a 68 0a 77 ihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh.w
167860 5a 47 37 53 4d 41 30 6a 30 47 4d 53 30 7a 62 61 52 4c 2f 55 4a 53 63 49 49 4e 5a 63 2b 31 38 6f ZG7SMA0j0GMS0zbaRL/UJScIINZc+18o
167880 66 4c 78 2f 64 33 33 53 64 4e 44 57 4b 42 57 59 38 6f 39 50 65 55 31 56 6c 6e 70 44 73 6f 67 7a fLx/d33SdNDWKBWY8o9PeU1VlnpDsogz
1678a0 43 74 4c 6b 79 6b 50 41 67 4d 42 0a 41 41 47 6a 67 67 46 71 4d 49 49 42 5a 6a 41 53 42 67 4e 56 CtLkykPAgMB.AAGjggFqMIIBZjASBgNV
1678c0 48 52 4d 42 41 66 38 45 43 44 41 47 41 51 48 2f 41 67 45 4d 4d 42 30 47 41 31 55 64 44 67 51 57 HRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQW
1678e0 42 42 53 35 43 63 71 63 48 74 76 54 62 44 70 72 72 75 31 55 38 56 75 54 0a 42 6a 55 75 58 6a 43 BBS5CcqcHtvTbDprru1U8VuT.BjUuXjC
167900 42 34 51 59 44 56 52 30 6a 42 49 48 5a 4d 49 48 57 67 42 53 35 43 63 71 63 48 74 76 54 62 44 70 B4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDp
167920 72 72 75 31 55 38 56 75 54 42 6a 55 75 58 71 47 42 73 71 53 42 72 7a 43 42 72 44 45 4c 4d 41 6b rru1U8VuTBjUuXqGBsqSBrzCBrDELMAk
167940 47 41 31 55 45 0a 42 68 4d 43 52 56 55 78 51 7a 42 42 42 67 4e 56 42 41 63 54 4f 6b 31 68 5a 48 GA1UE.BhMCRVUxQzBBBgNVBAcTOk1hZH
167960 4a 70 5a 43 41 6f 63 32 56 6c 49 47 4e 31 63 6e 4a 6c 62 6e 51 67 59 57 52 6b 63 6d 56 7a 63 79 JpZCAoc2VlIGN1cnJlbnQgYWRkcmVzcy
167980 42 68 64 43 42 33 64 33 63 75 59 32 46 74 5a 58 4a 6d 0a 61 58 4a 74 59 53 35 6a 62 32 30 76 59 BhdCB3d3cuY2FtZXJm.aXJtYS5jb20vY
1679a0 57 52 6b 63 6d 56 7a 63 79 6b 78 45 6a 41 51 42 67 4e 56 42 41 55 54 43 55 45 34 4d 6a 63 30 4d WRkcmVzcykxEjAQBgNVBAUTCUE4Mjc0M
1679c0 7a 49 34 4e 7a 45 62 4d 42 6b 47 41 31 55 45 43 68 4d 53 51 55 4d 67 51 32 46 74 5a 58 4a 6d 0a zI4NzEbMBkGA1UEChMSQUMgQ2FtZXJm.
1679e0 61 58 4a 74 59 53 42 54 4c 6b 45 75 4d 53 63 77 4a 51 59 44 56 51 51 44 45 78 35 48 62 47 39 69 aXJtYSBTLkEuMScwJQYDVQQDEx5HbG9i
167a00 59 57 77 67 51 32 68 68 62 57 4a 6c 63 6e 4e 70 5a 32 34 67 55 6d 39 76 64 43 41 74 49 44 49 77 YWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIw
167a20 4d 44 69 43 43 51 44 4a 7a 64 50 70 0a 31 58 30 6a 7a 6a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 MDiCCQDJzdPp.1X0jzjAOBgNVHQ8BAf8
167a40 45 42 41 4d 43 41 51 59 77 50 51 59 44 56 52 30 67 42 44 59 77 4e 44 41 79 42 67 52 56 48 53 41 EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSA
167a60 41 4d 43 6f 77 4b 41 59 49 4b 77 59 42 42 51 55 48 41 67 45 57 48 47 68 30 0a 64 48 41 36 4c 79 AMCowKAYIKwYBBQUHAgEWHGh0.dHA6Ly
167a80 39 77 62 32 78 70 59 33 6b 75 59 32 46 74 5a 58 4a 6d 61 58 4a 74 59 53 35 6a 62 32 30 77 44 51 9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQ
167aa0 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 49 42 41 49 43 49 66 33 44 65 6b 69 YJKoZIhvcNAQEFBQADggIBAICIf3Deki
167ac0 6a 5a 42 5a 52 47 0a 2f 35 42 58 71 66 45 76 33 78 6f 4e 61 2f 70 38 44 68 78 4a 4a 48 6b 6e 32 jZBZRG./5BXqfEv3xoNa/p8DhxJJHkn2
167ae0 45 61 71 62 79 6c 5a 55 6f 68 77 45 75 72 64 50 66 57 62 55 31 52 76 34 57 43 69 71 41 6d 35 37 EaqbylZUohwEurdPfWbU1Rv4WCiqAm57
167b00 4f 74 5a 66 4d 59 31 38 64 77 59 36 66 46 6e 35 61 2b 36 0a 52 65 41 4a 33 73 70 45 44 38 49 58 OtZfMY18dwY6fFn5a+6.ReAJ3spED8IX
167b20 44 6e 65 52 52 58 6f 7a 58 31 2b 57 4c 47 69 4c 77 55 65 50 6d 4a 73 39 77 4f 7a 4c 39 64 57 43 DneRRXozX1+WLGiLwUePmJs9wOzL9dWC
167b40 6b 6f 51 31 30 62 34 32 4f 46 5a 79 4d 56 74 48 4c 61 6f 58 70 47 4e 52 36 77 6f 42 72 58 2f 73 koQ10b42OFZyMVtHLaoXpGNR6woBrX/s
167b60 0a 64 5a 37 4c 6f 52 2f 78 66 78 4b 78 75 65 52 6b 66 32 66 57 49 79 72 30 75 44 6c 64 6d 4f 67 .dZ7LoR/xfxKxueRkf2fWIyr0uDldmOg
167b80 68 70 2b 47 39 50 55 49 61 64 4a 70 77 72 32 68 73 55 46 31 4a 7a 2f 2f 37 44 6c 33 6d 4c 45 66 hp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEf
167ba0 58 67 54 70 5a 41 4c 56 7a 61 32 4d 67 0a 39 6a 46 46 43 44 6b 4f 39 48 42 2b 51 48 42 61 50 39 XgTpZALVza2Mg.9jFFCDkO9HB+QHBaP9
167bc0 42 72 51 71 6c 30 50 53 67 76 41 6d 31 31 63 70 55 4a 6a 55 68 6a 78 73 59 6a 56 35 4b 54 58 6a BrQql0PSgvAm11cpUJjUhjxsYjV5KTXj
167be0 58 42 6a 66 6b 4b 39 79 79 64 59 68 7a 32 72 58 7a 64 70 6a 45 65 74 72 48 48 0a 66 6f 55 6d 2b XBjfkK9yydYhz2rXzdpjEetrHH.foUm+
167c00 71 52 71 74 64 70 6a 4d 4e 48 76 6b 7a 65 79 5a 69 39 39 42 66 66 6e 74 30 75 59 6c 44 58 41 32 qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2
167c20 54 6f 70 77 5a 32 79 55 44 4d 64 53 71 6c 61 70 73 6b 44 37 2b 33 30 35 36 68 75 69 72 52 58 68 TopwZ2yUDMdSqlapskD7+3056huirRXh
167c40 4f 75 6b 50 39 44 75 0a 71 71 71 48 57 32 50 6f 6b 2b 4a 72 71 4e 53 34 63 6e 68 72 47 2b 30 35 OukP9Du.qqqHW2Pok+JrqNS4cnhrG+05
167c60 35 46 33 4c 6d 36 71 48 31 55 39 4f 41 50 37 5a 61 70 38 38 4d 51 38 6f 41 67 46 39 6d 4f 69 6e 5F3Lm6qH1U9OAP7Zap88MQ8oAgF9mOin
167c80 73 4b 4a 6b 6e 6e 6e 34 53 50 49 56 71 63 7a 6d 79 45 54 72 0a 50 33 69 5a 38 6e 74 78 50 6a 7a sKJknnn4SPIVqczmyETr.P3iZ8ntxPjz
167ca0 78 6d 4b 66 46 47 42 49 2f 35 72 73 6f 4d 30 4c 70 52 51 70 38 62 66 4b 47 65 53 2f 46 67 68 6c xmKfFGBI/5rsoM0LpRQp8bfKGeS/Fghl
167cc0 39 43 59 6c 38 73 6c 52 32 69 4b 37 65 77 66 50 4d 34 57 37 62 4d 64 61 54 72 70 6d 67 37 79 56 9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yV
167ce0 71 0a 63 35 69 4a 57 7a 6f 75 45 34 67 65 76 38 43 53 6c 44 51 62 34 79 65 33 69 78 35 76 51 76 q.c5iJWzouE4gev8CSlDQb4ye3ix5vQv
167d00 2f 6e 36 54 65 62 55 42 30 74 6f 76 6b 43 37 73 74 59 57 44 70 78 76 47 6a 6a 71 73 47 76 48 43 /n6TebUB0tovkC7stYWDpxvGjjqsGvHC
167d20 67 66 6f 74 77 6a 5a 54 2b 42 36 71 36 5a 0a 30 39 67 77 7a 78 4d 4e 54 78 58 4a 68 4c 79 6e 53 gfotwjZT+B6q6Z.09gwzxMNTxXJhLynS
167d40 43 33 34 4d 43 4e 33 32 45 5a 4c 65 57 33 32 6a 4f 30 36 66 32 41 52 65 50 54 70 6d 36 37 56 56 C34MCN32EZLeW32jO06f2ARePTpm67VV
167d60 4d 42 30 67 4e 45 4c 51 70 2f 42 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 MB0gNELQp/B.-----END.CERTIFICATE
167d80 2d 2d 2d 2d 2d 0a 0a 47 6f 20 44 61 64 64 79 20 52 6f 6f 74 20 43 65 72 74 69 66 69 63 61 74 65 -----..Go.Daddy.Root.Certificate
167da0 20 41 75 74 68 6f 72 69 74 79 20 2d 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .Authority.-.G2.================
167dc0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 ========================.-----BE
167de0 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 78 54 43 43 41 71 32 GIN.CERTIFICATE-----.MIIDxTCCAq2
167e00 67 41 77 49 42 41 67 49 42 41 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 43 gAwIBAgIBADANBgkqhkiG9w0BAQsFADC
167e20 42 67 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 45 44 41 4f 42 67 4e 56 42 41 67 BgzELMAkGA1UEBhMCVVMxEDAOBgNVBAg
167e40 54 0a 42 30 46 79 61 58 70 76 62 6d 45 78 45 7a 41 52 42 67 4e 56 42 41 63 54 43 6c 4e 6a 62 33 T.B0FyaXpvbmExEzARBgNVBAcTClNjb3
167e60 52 30 63 32 52 68 62 47 55 78 47 6a 41 59 42 67 4e 56 42 41 6f 54 45 55 64 76 52 47 46 6b 5a 48 R0c2RhbGUxGjAYBgNVBAoTEUdvRGFkZH
167e80 6b 75 59 32 39 74 4c 43 42 4a 62 6d 4d 75 0a 4d 54 45 77 4c 77 59 44 56 51 51 44 45 79 68 48 62 kuY29tLCBJbmMu.MTEwLwYDVQQDEyhHb
167ea0 79 42 45 59 57 52 6b 65 53 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 6c 49 yBEYWRkeSBSb290IENlcnRpZmljYXRlI
167ec0 45 46 31 64 47 68 76 63 6d 6c 30 65 53 41 74 49 45 63 79 4d 42 34 58 44 54 41 35 0a 4d 44 6b 77 EF1dGhvcml0eSAtIEcyMB4XDTA5.MDkw
167ee0 4d 54 41 77 4d 44 41 77 4d 46 6f 58 44 54 4d 33 4d 54 49 7a 4d 54 49 7a 4e 54 6b 31 4f 56 6f 77 MTAwMDAwMFoXDTM3MTIzMTIzNTk1OVow
167f00 67 59 4d 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 56 54 4d 52 41 77 44 67 59 44 56 51 51 49 gYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQI
167f20 45 77 64 42 63 6d 6c 36 0a 62 32 35 68 4d 52 4d 77 45 51 59 44 56 51 51 48 45 77 70 54 59 32 39 EwdBcml6.b25hMRMwEQYDVQQHEwpTY29
167f40 30 64 48 4e 6b 59 57 78 6c 4d 52 6f 77 47 41 59 44 56 51 51 4b 45 78 46 48 62 30 52 68 5a 47 52 0dHNkYWxlMRowGAYDVQQKExFHb0RhZGR
167f60 35 4c 6d 4e 76 62 53 77 67 53 57 35 6a 4c 6a 45 78 4d 43 38 47 0a 41 31 55 45 41 78 4d 6f 52 32 5LmNvbSwgSW5jLjExMC8G.A1UEAxMoR2
167f80 38 67 52 47 46 6b 5a 48 6b 67 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 8gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZS
167fa0 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 67 4c 53 42 48 4d 6a 43 43 41 53 49 77 44 51 59 4a 4b 6f BBdXRob3JpdHkgLSBHMjCCASIwDQYJKo
167fc0 5a 49 0a 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 ZI.hvcNAQEBBQADggEPADCCAQoCggEBA
167fe0 4c 39 78 59 67 6a 78 2b 6c 6b 30 39 78 76 4a 47 4b 50 33 67 45 6c 59 36 53 4b 44 45 36 62 46 49 L9xYgjx+lk09xvJGKP3gElY6SKDE6bFI
168000 45 4d 42 4f 34 54 78 35 6f 56 4a 6e 79 66 71 0a 39 6f 51 62 54 71 43 30 32 33 43 59 78 7a 49 42 EMBO4Tx5oVJnyfq.9oQbTqC023CYxzIB
168020 73 51 55 2b 42 30 37 75 39 50 70 50 4c 31 6b 77 49 75 65 72 47 56 5a 72 34 6f 41 48 2f 50 4d 57 sQU+B07u9PpPL1kwIuerGVZr4oAH/PMW
168040 64 59 41 35 55 58 76 6c 2b 54 57 32 64 45 36 70 6a 59 49 54 35 4c 59 2f 71 51 4f 44 0a 2b 71 4b dYA5UXvl+TW2dE6pjYIT5LY/qQOD.+qK
168060 2b 69 68 56 71 66 39 34 4c 77 37 59 5a 46 41 58 4b 36 73 4f 6f 42 4a 51 37 52 6e 77 79 44 66 4d +ihVqf94Lw7YZFAXK6sOoBJQ7RnwyDfM
168080 41 5a 69 4c 49 6a 57 6c 74 4e 6f 77 52 47 4c 66 54 73 68 78 67 74 44 6a 36 41 6f 7a 4f 30 39 31 AZiLIjWltNowRGLfTshxgtDj6AozO091
1680a0 47 42 39 34 4b 50 75 74 64 0a 66 4d 68 38 2b 37 41 72 55 36 53 53 59 6d 6c 52 4a 51 56 68 47 6b GB94KPutd.fMh8+7ArU6SSYmlRJQVhGk
1680c0 53 42 6a 43 79 70 51 35 59 6a 33 36 77 36 67 5a 6f 4f 4b 63 55 63 71 65 6c 64 48 72 61 65 6e 6a SBjCypQ5Yj36w6gZoOKcUcqeldHraenj
1680e0 41 4b 4f 63 37 78 69 49 44 37 53 31 33 4d 4d 75 79 46 59 6b 4d 6c 0a 4e 41 4a 57 4a 77 47 52 74 AKOc7xiID7S13MMuyFYkMl.NAJWJwGRt
168100 44 74 77 4b 6a 39 75 73 65 69 63 69 41 46 39 6e 39 54 35 32 31 4e 74 59 4a 32 2f 4c 4f 64 59 71 DtwKj9useiciAF9n9T521NtYJ2/LOdYq
168120 37 68 66 52 76 7a 4f 78 42 73 44 50 41 6e 72 53 54 46 63 61 55 61 7a 34 45 63 43 41 77 45 41 41 7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEAA
168140 61 4e 43 0a 4d 45 41 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f aNC.MEAwDwYDVR0TAQH/BAUwAwEB/zAO
168160 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 48 51 59 44 56 52 30 4f 42 42 59 45 BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE
168180 46 44 71 61 68 51 63 51 5a 79 69 32 37 2f 61 39 0a 42 55 46 75 49 4d 47 55 32 67 2f 65 4d 41 30 FDqahQcQZyi27/a9.BUFuIMGU2g/eMA0
1681a0 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 49 42 41 51 43 5a 32 31 31 35 31 66 6d GCSqGSIb3DQEBCwUAA4IBAQCZ21151fm
1681c0 58 57 57 63 44 59 66 46 2b 4f 77 59 78 64 53 32 68 49 49 35 50 5a 59 65 30 39 36 61 63 0a 76 4e XWWcDYfF+OwYxdS2hII5PZYe096ac.vN
1681e0 6a 70 4c 39 44 62 57 75 37 50 64 49 78 7a 74 44 68 43 32 67 56 37 2b 41 4a 31 75 50 32 6c 73 64 jpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsd
168200 65 75 39 74 66 65 45 38 74 54 45 48 36 4b 52 74 47 58 2b 72 63 75 4b 78 47 72 6b 4c 41 6e 67 50 eu9tfeE8tTEH6KRtGX+rcuKxGrkLAngP
168220 6e 6f 6e 31 72 70 4e 35 2b 72 0a 35 4e 39 73 73 34 55 58 6e 54 33 5a 4a 45 39 35 6b 54 58 57 58 non1rpN5+r.5N9ss4UXnT3ZJE95kTXWX
168240 77 54 72 67 49 4f 72 6d 67 49 74 74 52 44 30 32 4a 44 48 42 48 4e 41 37 58 49 6c 6f 4b 6d 66 37 wTrgIOrmgIttRD02JDHBHNA7XIloKmf7
168260 4a 36 72 61 42 4b 5a 56 38 61 50 45 6a 6f 4a 70 4c 31 45 2f 51 59 56 0a 4e 38 47 62 35 44 4b 6a J6raBKZV8aPEjoJpL1E/QYV.N8Gb5DKj
168280 37 54 6a 6f 32 47 54 7a 4c 48 34 55 2f 41 4c 71 6e 38 33 2f 42 32 67 58 32 79 4b 51 4f 43 31 36 7Tjo2GTzLH4U/ALqn83/B2gX2yKQOC16
1682a0 6a 64 46 55 38 57 6e 6a 58 7a 50 4b 65 6a 31 37 43 75 50 4b 66 31 38 35 35 65 4a 31 75 73 56 32 jdFU8WnjXzPKej17CuPKf1855eJ1usV2
1682c0 47 44 50 4f 0a 4c 50 41 76 54 4b 33 33 73 65 66 4f 54 36 6a 45 6d 30 70 55 42 73 56 2f 66 64 55 GDPO.LPAvTK33sefOT6jEm0pUBsV/fdU
1682e0 49 44 2b 49 63 2f 6e 34 58 75 4b 78 65 39 74 51 57 73 6b 4d 4a 44 45 33 32 70 32 75 30 6d 59 52 ID+Ic/n4XuKxe9tQWskMJDE32p2u0mYR
168300 6c 79 6e 71 49 34 75 4a 45 76 6c 7a 33 36 68 7a 31 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 lynqI4uJEvlz36hz1.-----END.CERTI
168320 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 74 61 72 66 69 65 6c 64 20 52 6f 6f 74 20 43 65 72 74 FICATE-----..Starfield.Root.Cert
168340 69 66 69 63 61 74 65 20 41 75 74 68 6f 72 69 74 79 20 2d 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d ificate.Authority.-.G2.=========
168360 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
168380 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 .-----BEGIN.CERTIFICATE-----.MII
1683a0 44 33 54 43 43 41 73 57 67 41 77 49 42 41 67 49 42 41 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 D3TCCAsWgAwIBAgIBADANBgkqhkiG9w0
1683c0 42 41 51 73 46 41 44 43 42 6a 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 45 44 41 BAQsFADCBjzELMAkGA1UEBhMCVVMxEDA
1683e0 4f 42 67 4e 56 42 41 67 54 0a 42 30 46 79 61 58 70 76 62 6d 45 78 45 7a 41 52 42 67 4e 56 42 41 OBgNVBAgT.B0FyaXpvbmExEzARBgNVBA
168400 63 54 43 6c 4e 6a 62 33 52 30 63 32 52 68 62 47 55 78 4a 54 41 6a 42 67 4e 56 42 41 6f 54 48 46 cTClNjb3R0c2RhbGUxJTAjBgNVBAoTHF
168420 4e 30 59 58 4a 6d 61 57 56 73 5a 43 42 55 5a 57 4e 6f 62 6d 39 73 0a 62 32 64 70 5a 58 4d 73 49 N0YXJmaWVsZCBUZWNobm9s.b2dpZXMsI
168440 45 6c 75 59 79 34 78 4d 6a 41 77 42 67 4e 56 42 41 4d 54 4b 56 4e 30 59 58 4a 6d 61 57 56 73 5a EluYy4xMjAwBgNVBAMTKVN0YXJmaWVsZ
168460 43 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 6c 49 45 46 31 64 47 68 76 63 CBSb290IENlcnRpZmljYXRlIEF1dGhvc
168480 6d 6c 30 0a 65 53 41 74 49 45 63 79 4d 42 34 58 44 54 41 35 4d 44 6b 77 4d 54 41 77 4d 44 41 77 ml0.eSAtIEcyMB4XDTA5MDkwMTAwMDAw
1684a0 4d 46 6f 58 44 54 4d 33 4d 54 49 7a 4d 54 49 7a 4e 54 6b 31 4f 56 6f 77 67 59 38 78 43 7a 41 4a MFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJ
1684c0 42 67 4e 56 42 41 59 54 41 6c 56 54 4d 52 41 77 0a 44 67 59 44 56 51 51 49 45 77 64 42 63 6d 6c BgNVBAYTAlVTMRAw.DgYDVQQIEwdBcml
1684e0 36 62 32 35 68 4d 52 4d 77 45 51 59 44 56 51 51 48 45 77 70 54 59 32 39 30 64 48 4e 6b 59 57 78 6b25hMRMwEQYDVQQHEwpTY290dHNkYWx
168500 6c 4d 53 55 77 49 77 59 44 56 51 51 4b 45 78 78 54 64 47 46 79 5a 6d 6c 6c 62 47 51 67 0a 56 47 lMSUwIwYDVQQKExxTdGFyZmllbGQg.VG
168520 56 6a 61 47 35 76 62 47 39 6e 61 57 56 7a 4c 43 42 4a 62 6d 4d 75 4d 54 49 77 4d 41 59 44 56 51 VjaG5vbG9naWVzLCBJbmMuMTIwMAYDVQ
168540 51 44 45 79 6c 54 64 47 46 79 5a 6d 6c 6c 62 47 51 67 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 QDEylTdGFyZmllbGQgUm9vdCBDZXJ0aW
168560 5a 70 59 32 46 30 5a 53 42 42 0a 64 58 52 6f 62 33 4a 70 64 48 6b 67 4c 53 42 48 4d 6a 43 43 41 ZpY2F0ZSBB.dXRob3JpdHkgLSBHMjCCA
168580 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 SIwDQYJKoZIhvcNAQEBBQADggEPADCCA
1685a0 51 6f 43 67 67 45 42 41 4c 33 74 77 51 50 38 39 6f 2f 38 41 72 46 76 0a 57 35 39 49 32 5a 31 35 QoCggEBAL3twQP89o/8ArFv.W59I2Z15
1685c0 34 71 4b 33 41 32 46 57 47 4d 4e 48 74 74 66 4b 50 54 55 75 69 55 50 33 6f 57 6d 62 33 6f 6f 61 4qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa
1685e0 2f 52 4d 67 6e 4c 52 4a 64 7a 49 70 56 76 32 35 37 49 7a 64 49 76 70 79 33 43 64 68 6c 2b 37 32 /RMgnLRJdzIpVv257IzdIvpy3Cdhl+72
168600 57 6f 54 73 0a 62 68 6d 35 69 53 7a 63 68 46 76 56 64 50 74 72 58 38 57 4a 70 52 42 53 69 55 5a WoTs.bhm5iSzchFvVdPtrX8WJpRBSiUZ
168620 56 39 4c 68 31 48 4f 5a 2f 35 46 53 75 53 2f 68 56 63 6c 63 43 47 66 67 58 63 56 6e 72 48 69 67 V9Lh1HOZ/5FSuS/hVclcCGfgXcVnrHig
168640 48 64 4d 57 64 53 4c 35 73 74 50 53 6b 73 50 4e 6b 0a 4e 33 6d 53 77 4f 78 47 58 6e 2f 68 62 56 HdMWdSL5stPSksPNk.N3mSwOxGXn/hbV
168660 4e 4d 59 71 2f 4e 48 77 74 6a 75 7a 71 64 2b 2f 78 35 41 4a 68 68 64 4d 38 6d 67 6b 42 6a 38 37 NMYq/NHwtjuzqd+/x5AJhhdM8mgkBj87
168680 4a 79 61 68 6b 4e 6d 63 72 55 44 6e 58 4d 4e 2f 75 4c 69 63 46 5a 38 57 4a 2f 58 37 4e 66 0a 5a JyahkNmcrUDnXMN/uLicFZ8WJ/X7Nf.Z
1686a0 54 44 34 70 37 64 4e 64 6c 6f 65 64 6c 34 30 77 4f 69 57 56 70 6d 4b 73 2f 42 2f 70 4d 32 39 33 TD4p7dNdloedl40wOiWVpmKs/B/pM293
1686c0 44 49 78 66 4a 48 50 34 46 38 52 2b 47 75 71 53 56 7a 52 6d 5a 54 52 6f 75 4e 6a 57 77 6c 32 74 DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2t
1686e0 56 5a 69 34 55 74 30 48 5a 62 55 0a 4a 74 51 49 42 46 6e 51 6d 41 34 4f 35 74 37 38 77 2b 77 66 VZi4Ut0HZbU.JtQIBFnQmA4O5t78w+wf
168700 6b 50 45 43 41 77 45 41 41 61 4e 43 4d 45 41 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 kPECAwEAAaNCMEAwDwYDVR0TAQH/BAUw
168720 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 0a 41 51 59 77 48 51 59 AwEB/zAOBgNVHQ8BAf8EBAMC.AQYwHQY
168740 44 56 52 30 4f 42 42 59 45 46 48 77 4d 4d 68 2b 6e 32 54 42 2f 78 48 31 6f 6f 32 4b 6f 6f 63 36 DVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6
168760 72 42 31 73 6e 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 49 42 41 51 41 rB1snMA0GCSqGSIb3DQEBCwUAA4IBAQA
168780 52 57 66 6f 6c 0a 54 77 4e 76 6c 4a 6b 37 6d 68 2b 43 68 54 6e 55 64 67 57 55 58 75 45 6f 6b 32 RWfol.TwNvlJk7mh+ChTnUdgWUXuEok2
1687a0 31 69 58 51 6e 43 6f 4b 6a 55 73 48 55 34 38 54 52 71 6e 65 53 66 69 6f 59 6d 55 65 59 73 30 63 1iXQnCoKjUsHU48TRqneSfioYmUeYs0c
1687c0 59 74 62 70 55 67 53 70 49 42 37 4c 69 4b 5a 33 73 78 0a 34 6d 63 75 6a 4a 55 44 4a 69 35 44 6e YtbpUgSpIB7LiKZ3sx.4mcujJUDJi5Dn
1687e0 55 6f 78 39 67 36 31 44 4c 75 33 34 6a 64 2f 49 72 6f 41 6f 77 35 37 55 76 74 72 75 7a 76 45 30 Uox9g61DLu34jd/IroAow57UvtruzvE0
168800 33 6c 52 54 73 32 51 39 47 63 48 47 63 67 38 52 6e 6f 4e 41 58 33 46 57 4f 64 74 35 6f 55 77 0a 3lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUw.
168820 46 35 6f 6b 78 42 44 67 42 50 66 67 38 6e 2f 55 71 67 72 2f 51 68 30 33 37 5a 54 6c 5a 46 6b 53 F5okxBDgBPfg8n/Uqgr/Qh037ZTlZFkS
168840 49 48 63 34 30 7a 49 2b 4f 49 46 31 6c 6e 50 36 61 49 2b 78 79 38 34 66 78 65 7a 36 6e 48 37 50 IHc40zI+OIF1lnP6aI+xy84fxez6nH7P
168860 66 72 48 78 42 79 32 32 2f 4c 2f 4b 0a 70 4c 2f 51 6c 77 56 4b 76 4f 6f 59 4b 41 4b 51 76 56 52 frHxBy22/L/K.pL/QlwVKvOoYKAKQvVR
168880 34 43 53 46 78 30 39 46 39 48 64 6b 57 73 4b 6c 68 50 64 41 4b 41 43 4c 38 78 33 76 4c 43 57 52 4CSFx09F9HdkWsKlhPdAKACL8x3vLCWR
1688a0 46 43 7a 74 41 67 66 64 39 66 44 4c 31 6d 4d 70 59 6a 6e 30 71 37 70 42 5a 0a 63 32 54 35 4e 6e FCztAgfd9fDL1mMpYjn0q7pBZ.c2T5Nn
1688c0 52 65 4a 61 48 31 5a 67 55 75 66 7a 6b 56 71 53 72 37 55 49 75 4f 68 57 6e 30 0a 2d 2d 2d 2d 2d ReJaH1ZgUufzkVqSr7UIuOhWn0.-----
1688e0 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 74 61 72 66 69 65 6c 64 20 END.CERTIFICATE-----..Starfield.
168900 53 65 72 76 69 63 65 73 20 52 6f 6f 74 20 43 65 72 74 69 66 69 63 61 74 65 20 41 75 74 68 6f 72 Services.Root.Certificate.Author
168920 69 74 79 20 2d 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ity.-.G2.=======================
168940 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d ===========================.----
168960 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 37 7a 43 43 -BEGIN.CERTIFICATE-----.MIID7zCC
168980 41 74 65 67 41 77 49 42 41 67 49 42 41 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 AtegAwIBAgIBADANBgkqhkiG9w0BAQsF
1689a0 41 44 43 42 6d 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 45 44 41 4f 42 67 4e 56 ADCBmDELMAkGA1UEBhMCVVMxEDAOBgNV
1689c0 42 41 67 54 0a 42 30 46 79 61 58 70 76 62 6d 45 78 45 7a 41 52 42 67 4e 56 42 41 63 54 43 6c 4e BAgT.B0FyaXpvbmExEzARBgNVBAcTClN
1689e0 6a 62 33 52 30 63 32 52 68 62 47 55 78 4a 54 41 6a 42 67 4e 56 42 41 6f 54 48 46 4e 30 59 58 4a jb3R0c2RhbGUxJTAjBgNVBAoTHFN0YXJ
168a00 6d 61 57 56 73 5a 43 42 55 5a 57 4e 6f 62 6d 39 73 0a 62 32 64 70 5a 58 4d 73 49 45 6c 75 59 79 maWVsZCBUZWNobm9s.b2dpZXMsIEluYy
168a20 34 78 4f 7a 41 35 42 67 4e 56 42 41 4d 54 4d 6c 4e 30 59 58 4a 6d 61 57 56 73 5a 43 42 54 5a 58 4xOzA5BgNVBAMTMlN0YXJmaWVsZCBTZX
168a40 4a 32 61 57 4e 6c 63 79 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 6c 0a 49 J2aWNlcyBSb290IENlcnRpZmljYXRl.I
168a60 45 46 31 64 47 68 76 63 6d 6c 30 65 53 41 74 49 45 63 79 4d 42 34 58 44 54 41 35 4d 44 6b 77 4d EF1dGhvcml0eSAtIEcyMB4XDTA5MDkwM
168a80 54 41 77 4d 44 41 77 4d 46 6f 58 44 54 4d 33 4d 54 49 7a 4d 54 49 7a 4e 54 6b 31 4f 56 6f 77 67 TAwMDAwMFoXDTM3MTIzMTIzNTk1OVowg
168aa0 5a 67 78 43 7a 41 4a 42 67 4e 56 0a 42 41 59 54 41 6c 56 54 4d 52 41 77 44 67 59 44 56 51 51 49 ZgxCzAJBgNV.BAYTAlVTMRAwDgYDVQQI
168ac0 45 77 64 42 63 6d 6c 36 62 32 35 68 4d 52 4d 77 45 51 59 44 56 51 51 48 45 77 70 54 59 32 39 30 EwdBcml6b25hMRMwEQYDVQQHEwpTY290
168ae0 64 48 4e 6b 59 57 78 6c 4d 53 55 77 49 77 59 44 56 51 51 4b 45 78 78 54 0a 64 47 46 79 5a 6d 6c dHNkYWxlMSUwIwYDVQQKExxT.dGFyZml
168b00 6c 62 47 51 67 56 47 56 6a 61 47 35 76 62 47 39 6e 61 57 56 7a 4c 43 42 4a 62 6d 4d 75 4d 54 73 lbGQgVGVjaG5vbG9naWVzLCBJbmMuMTs
168b20 77 4f 51 59 44 56 51 51 44 45 7a 4a 54 64 47 46 79 5a 6d 6c 6c 62 47 51 67 55 32 56 79 64 6d 6c wOQYDVQQDEzJTdGFyZmllbGQgU2Vydml
168b40 6a 5a 58 4d 67 0a 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 42 42 64 58 jZXMg.Um9vdCBDZXJ0aWZpY2F0ZSBBdX
168b60 52 6f 62 33 4a 70 64 48 6b 67 4c 53 42 48 4d 6a 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 Rob3JpdHkgLSBHMjCCASIwDQYJKoZIhv
168b80 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 0a 41 51 6f 43 67 67 45 42 41 4e 55 4d 4f cNAQEBBQADggEPADCC.AQoCggEBANUMO
168ba0 73 51 71 2b 55 37 69 39 62 34 5a 6c 31 2b 4f 69 46 4f 78 48 7a 2f 4c 7a 35 38 67 45 32 30 70 4f sQq+U7i9b4Zl1+OiFOxHz/Lz58gE20pO
168bc0 73 67 50 66 54 7a 33 61 33 59 34 59 39 6b 32 59 4b 69 62 58 6c 77 41 67 4c 49 76 57 58 2f 32 0a sgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2.
168be0 68 2f 6b 6c 51 34 62 6e 61 52 74 53 6d 70 44 68 63 65 50 59 4c 51 31 4f 62 2f 62 49 53 64 6d 32 h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2
168c00 38 78 70 57 72 69 75 32 64 42 54 72 7a 2f 73 6d 34 78 71 36 48 5a 59 75 61 6a 74 59 6c 49 6c 48 8xpWriu2dBTrz/sm4xq6HZYuajtYlIlH
168c20 56 76 38 6c 6f 4a 4e 77 55 34 50 61 0a 68 48 51 55 77 32 65 65 42 47 67 36 33 34 35 41 57 68 31 Vv8loJNwU4Pa.hHQUw2eeBGg6345AWh1
168c40 4b 54 73 39 44 6b 54 76 6e 56 74 59 41 63 4d 74 53 37 6e 74 39 72 6a 72 6e 76 44 48 35 52 66 62 KTs9DkTvnVtYAcMtS7nt9rjrnvDH5Rfb
168c60 43 59 4d 38 54 57 51 49 72 67 4d 77 30 52 39 2b 35 33 70 42 6c 62 51 4c 50 0a 4c 4a 47 6d 70 75 CYM8TWQIrgMw0R9+53pBlbQLP.LJGmpu
168c80 66 65 68 52 68 4a 66 47 5a 4f 6f 7a 70 74 71 62 58 75 4e 43 36 36 44 51 4f 34 4d 39 39 48 36 37 fehRhJfGZOozptqbXuNC66DQO4M99H67
168ca0 46 72 6a 53 58 5a 6d 38 36 42 30 55 56 47 4d 70 5a 77 68 39 34 43 44 6b 6c 44 68 62 5a 73 63 37 FrjSXZm86B0UVGMpZwh94CDklDhbZsc7
168cc0 74 6b 36 6d 46 42 0a 72 4d 6e 55 56 4e 2b 48 4c 38 63 69 73 69 62 4d 6e 31 6c 55 61 4a 2f 38 76 tk6mFB.rMnUVN+HL8cisibMn1lUaJ/8v
168ce0 69 6f 76 78 46 55 63 64 55 42 67 46 34 55 43 56 54 6d 4c 66 77 55 43 41 77 45 41 41 61 4e 43 4d iovxFUcdUBgF4UCVTmLfwUCAwEAAaNCM
168d00 45 41 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 0a 41 77 45 42 2f 7a 41 4f 42 67 4e 56 EAwDwYDVR0TAQH/BAUw.AwEB/zAOBgNV
168d20 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4a 78 66 HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxf
168d40 41 4e 2b 71 41 64 63 77 4b 7a 69 49 6f 72 68 74 53 70 7a 79 45 5a 47 44 4d 41 30 47 43 53 71 47 AN+qAdcwKziIorhtSpzyEZGDMA0GCSqG
168d60 0a 53 49 62 33 44 51 45 42 43 77 55 41 41 34 49 42 41 51 42 4c 4e 71 61 45 64 32 6e 64 4f 78 6d .SIb3DQEBCwUAA4IBAQBLNqaEd2ndOxm
168d80 66 5a 79 4d 49 62 77 35 68 79 66 32 45 33 46 2f 59 4e 6f 48 4e 32 42 74 42 4c 5a 39 67 33 63 63 fZyMIbw5hyf2E3F/YNoHN2BtBLZ9g3cc
168da0 61 61 4e 6e 52 62 6f 62 68 69 43 50 50 0a 45 39 35 44 7a 2b 49 30 73 77 53 64 48 79 6e 56 76 2f aaNnRbobhiCPP.E95Dz+I0swSdHynVv/
168dc0 68 65 79 4e 58 42 76 65 36 53 62 7a 4a 30 38 70 47 43 4c 37 32 43 51 6e 71 74 4b 72 63 67 66 55 heyNXBve6SbzJ08pGCL72CQnqtKrcgfU
168de0 32 38 65 6c 55 53 77 68 58 71 76 66 64 71 6c 53 35 73 64 4a 2f 50 48 4c 54 79 0a 78 51 47 6a 68 28elUSwhXqvfdqlS5sdJ/PHLTy.xQGjh
168e00 64 42 79 50 71 31 7a 71 77 75 62 64 51 78 74 52 62 65 4f 6c 4b 79 57 4e 37 57 67 30 49 38 56 52 dByPq1zqwubdQxtRbeOlKyWN7Wg0I8VR
168e20 77 37 6a 36 49 50 64 6a 2f 33 76 51 51 46 33 7a 43 65 70 59 6f 55 7a 38 6a 63 49 37 33 48 50 64 w7j6IPdj/3vQQF3zCepYoUz8jcI73HPd
168e40 77 62 65 79 42 6b 64 0a 69 45 44 50 66 55 59 64 2f 78 37 48 34 63 37 2f 49 39 76 47 2b 6f 31 56 wbeyBkd.iEDPfUYd/x7H4c7/I9vG+o1V
168e60 54 71 6b 43 35 30 63 52 52 6a 37 30 2f 62 31 37 4b 53 61 37 71 57 46 69 4e 79 69 32 4c 53 72 32 TqkC50cRRj70/b17KSa7qWFiNyi2LSr2
168e80 45 49 5a 6b 79 58 43 6e 30 71 32 33 4b 58 42 35 36 6a 7a 61 0a 59 79 57 66 2f 57 69 33 4d 4f 78 EIZkyXCn0q23KXB56jza.YyWf/Wi3MOx
168ea0 77 2b 33 57 4b 74 32 31 67 5a 37 49 65 79 4c 6e 70 32 4b 68 76 41 6f 74 6e 44 55 30 6d 56 33 48 w+3WKt21gZ7IeyLnp2KhvAotnDU0mV3H
168ec0 61 49 50 7a 42 53 6c 43 4e 73 53 69 36 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 aIPzBSlCNsSi6.-----END.CERTIFICA
168ee0 54 45 2d 2d 2d 2d 2d 0a 0a 41 66 66 69 72 6d 54 72 75 73 74 20 43 6f 6d 6d 65 72 63 69 61 6c 0a TE-----..AffirmTrust.Commercial.
168f00 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 ======================.-----BEGI
168f20 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 54 44 43 43 41 6a 53 67 41 N.CERTIFICATE-----.MIIDTDCCAjSgA
168f40 77 49 42 41 67 49 49 64 33 63 47 4a 79 61 70 73 58 77 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 wIBAgIId3cGJyapsXwwDQYJKoZIhvcNA
168f60 51 45 4c 42 51 41 77 52 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 44 41 53 0a QELBQAwRDELMAkGA1UEBhMCVVMxFDAS.
168f80 42 67 4e 56 42 41 6f 4d 43 30 46 6d 5a 6d 6c 79 62 56 52 79 64 58 4e 30 4d 52 38 77 48 51 59 44 BgNVBAoMC0FmZmlybVRydXN0MR8wHQYD
168fa0 56 51 51 44 44 42 5a 42 5a 6d 5a 70 63 6d 31 55 63 6e 56 7a 64 43 42 44 62 32 31 74 5a 58 4a 6a VQQDDBZBZmZpcm1UcnVzdCBDb21tZXJj
168fc0 61 57 46 73 4d 42 34 58 44 54 45 77 0a 4d 44 45 79 4f 54 45 30 4d 44 59 77 4e 6c 6f 58 44 54 4d aWFsMB4XDTEw.MDEyOTE0MDYwNloXDTM
168fe0 77 4d 54 49 7a 4d 54 45 30 4d 44 59 77 4e 6c 6f 77 52 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d wMTIzMTE0MDYwNlowRDELMAkGA1UEBhM
169000 43 56 56 4d 78 46 44 41 53 42 67 4e 56 42 41 6f 4d 43 30 46 6d 5a 6d 6c 79 0a 62 56 52 79 64 58 CVVMxFDASBgNVBAoMC0FmZmly.bVRydX
169020 4e 30 4d 52 38 77 48 51 59 44 56 51 51 44 44 42 5a 42 5a 6d 5a 70 63 6d 31 55 63 6e 56 7a 64 43 N0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdC
169040 42 44 62 32 31 74 5a 58 4a 6a 61 57 46 73 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 BDb21tZXJjaWFsMIIBIjANBgkqhkiG9w
169060 30 42 41 51 45 46 0a 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 39 68 74 50 5a 0BAQEF.AAOCAQ8AMIIBCgKCAQEA9htPZ
169080 77 63 72 6f 52 58 31 42 69 4c 4c 48 77 47 79 34 33 4e 46 42 6b 52 4a 4c 4c 74 4a 4a 52 54 57 7a wcroRX1BiLLHwGy43NFBkRJLLtJJRTWz
1690a0 73 4f 33 71 79 78 50 78 6b 45 79 6c 46 66 36 45 71 64 62 0a 44 75 4b 50 48 78 36 47 47 61 65 71 sO3qyxPxkEylFf6Eqdb.DuKPHx6GGaeq
1690c0 74 53 32 35 58 77 32 4b 77 71 2b 46 4e 58 6b 79 4c 62 73 63 59 6a 66 79 73 56 74 4b 50 63 72 4e tS25Xw2Kwq+FNXkyLbscYjfysVtKPcrN
1690e0 63 56 2f 70 51 72 36 55 36 4d 6a 65 2b 53 4a 49 5a 4d 62 6c 71 38 59 72 62 61 30 46 38 50 72 56 cV/pQr6U6Mje+SJIZMblq8Yrba0F8PrV
169100 0a 43 38 2b 61 35 66 42 51 70 49 73 37 52 36 55 6a 57 33 70 36 2b 44 4d 2f 75 4f 2b 5a 6c 2b 4d .C8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+M
169120 67 77 64 59 6f 69 63 2b 55 2b 37 6c 46 37 65 4e 41 46 78 48 55 64 50 41 4c 4d 65 49 72 4a 6d 71 gwdYoic+U+7lF7eNAFxHUdPALMeIrJmq
169140 62 54 46 65 75 72 43 41 2b 75 6b 56 36 0a 42 66 4f 39 6d 32 6b 56 72 6e 31 4f 49 47 50 45 4e 58 bTFeurCA+ukV6.BfO9m2kVrn1OIGPENX
169160 59 36 42 77 4c 4a 4e 2f 33 48 52 2b 37 6f 38 58 59 64 63 78 58 79 6c 36 53 31 79 48 70 35 32 55 Y6BwLJN/3HR+7o8XYdcxXyl6S1yHp52U
169180 4b 71 4b 33 39 63 2f 73 34 6d 54 36 4e 6d 67 54 57 76 52 4c 70 55 48 68 77 77 0a 4d 6d 57 64 35 KqK39c/s4mT6NmgTWvRLpUHhww.MmWd5
1691a0 6a 79 54 58 6c 42 4f 65 75 4d 36 31 47 37 4d 47 76 76 35 30 6a 65 75 4a 43 71 72 56 77 4d 69 4b jyTXlBOeuM61G7MGvv50jeuJCqrVwMiK
1691c0 41 31 4a 64 58 2b 33 4b 4e 70 31 76 34 37 6a 33 41 35 35 4d 51 49 44 41 51 41 42 6f 30 49 77 51 A1JdX+3KNp1v47j3A55MQIDAQABo0IwQ
1691e0 44 41 64 42 67 4e 56 0a 48 51 34 45 46 67 51 55 6e 5a 50 47 55 34 74 65 79 71 38 2f 6e 78 34 50 DAdBgNV.HQ4EFgQUnZPGU4teyq8/nx4P
169200 35 5a 6d 56 76 43 54 32 6c 49 38 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB
169220 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 0a 41 51 59 77 44 51 59 4a 4b 6f 5a /zAOBgNVHQ8BAf8EBAMC.AQYwDQYJKoZ
169240 49 68 76 63 4e 41 51 45 4c 42 51 41 44 67 67 45 42 41 46 69 73 39 41 51 4f 7a 63 41 4e 2f 77 72 IhvcNAQELBQADggEBAFis9AQOzcAN/wr
169260 39 31 4c 6f 57 58 79 6d 39 65 32 69 5a 57 45 6e 53 74 42 30 33 54 58 38 6e 66 55 59 47 58 55 50 91LoWXym9e2iZWEnStB03TX8nfUYGXUP
169280 47 0a 68 69 34 2b 63 37 49 6d 66 55 2b 54 71 62 62 45 4b 70 71 72 49 5a 63 55 73 64 36 4d 30 36 G.hi4+c7ImfU+TqbbEKpqrIZcUsd6M06
1692a0 75 4a 46 64 68 72 4a 4e 54 78 46 71 37 59 70 46 7a 55 66 31 47 4f 37 52 67 42 73 5a 4e 6a 76 62 uJFdhrJNTxFq7YpFzUf1GO7RgBsZNjvb
1692c0 7a 34 59 59 43 61 6e 72 48 4f 51 6e 44 69 0a 71 58 30 47 4a 58 30 6e 6f 66 35 76 37 4c 4d 65 4a z4YYCanrHOQnDi.qX0GJX0nof5v7LMeJ
1692e0 4e 72 6a 53 31 55 61 41 44 73 31 74 44 76 5a 31 31 30 77 2f 59 45 54 69 66 4c 43 42 69 76 74 5a NrjS1UaADs1tDvZ110w/YETifLCBivtZ
169300 38 53 4f 79 55 4f 79 58 47 73 56 69 51 4b 38 59 76 78 4f 38 72 55 7a 71 72 4a 76 0a 30 77 71 69 8SOyUOyXGsViQK8YvxO8rUzqrJv.0wqi
169320 55 4f 50 32 4f 2b 67 75 52 4d 4c 62 5a 6a 69 70 4d 31 5a 49 38 57 30 62 4d 34 30 4e 6a 44 39 67 UOP2O+guRMLbZjipM1ZI8W0bM40NjD9g
169340 4e 35 33 54 79 6d 31 2b 4e 48 34 4e 6e 33 4a 32 69 78 75 66 63 76 31 53 4e 55 46 46 41 70 59 76 N53Tym1+NH4Nn3J2ixufcv1SNUFFApYv
169360 48 4c 4b 61 63 30 6b 68 0a 73 55 6c 48 52 55 65 30 37 32 6f 30 45 63 6c 4e 6d 73 78 5a 74 39 59 HLKac0kh.sUlHRUe072o0EclNmsxZt9Y
169380 43 6e 6c 70 4f 5a 62 57 55 72 68 76 66 4b 62 41 57 38 62 38 41 6e 67 63 36 46 32 53 31 42 4c 55 CnlpOZbWUrhvfKbAW8b8Angc6F2S1BLU
1693a0 6a 49 5a 6b 4b 6c 54 75 58 66 4f 38 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 jIZkKlTuXfO8=.-----END.CERTIFICA
1693c0 54 45 2d 2d 2d 2d 2d 0a 0a 41 66 66 69 72 6d 54 72 75 73 74 20 4e 65 74 77 6f 72 6b 69 6e 67 0a TE-----..AffirmTrust.Networking.
1693e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 ======================.-----BEGI
169400 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 54 44 43 43 41 6a 53 67 41 N.CERTIFICATE-----.MIIDTDCCAjSgA
169420 77 49 42 41 67 49 49 66 45 38 45 4f 52 7a 55 6d 53 30 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 wIBAgIIfE8EORzUmS0wDQYJKoZIhvcNA
169440 51 45 46 42 51 41 77 52 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 44 41 53 0a QEFBQAwRDELMAkGA1UEBhMCVVMxFDAS.
169460 42 67 4e 56 42 41 6f 4d 43 30 46 6d 5a 6d 6c 79 62 56 52 79 64 58 4e 30 4d 52 38 77 48 51 59 44 BgNVBAoMC0FmZmlybVRydXN0MR8wHQYD
169480 56 51 51 44 44 42 5a 42 5a 6d 5a 70 63 6d 31 55 63 6e 56 7a 64 43 42 4f 5a 58 52 33 62 33 4a 72 VQQDDBZBZmZpcm1UcnVzdCBOZXR3b3Jr
1694a0 61 57 35 6e 4d 42 34 58 44 54 45 77 0a 4d 44 45 79 4f 54 45 30 4d 44 67 79 4e 46 6f 58 44 54 4d aW5nMB4XDTEw.MDEyOTE0MDgyNFoXDTM
1694c0 77 4d 54 49 7a 4d 54 45 30 4d 44 67 79 4e 46 6f 77 52 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d wMTIzMTE0MDgyNFowRDELMAkGA1UEBhM
1694e0 43 56 56 4d 78 46 44 41 53 42 67 4e 56 42 41 6f 4d 43 30 46 6d 5a 6d 6c 79 0a 62 56 52 79 64 58 CVVMxFDASBgNVBAoMC0FmZmly.bVRydX
169500 4e 30 4d 52 38 77 48 51 59 44 56 51 51 44 44 42 5a 42 5a 6d 5a 70 63 6d 31 55 63 6e 56 7a 64 43 N0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdC
169520 42 4f 5a 58 52 33 62 33 4a 72 61 57 35 6e 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 BOZXR3b3JraW5nMIIBIjANBgkqhkiG9w
169540 30 42 41 51 45 46 0a 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 74 49 54 4d 4d 0BAQEF.AAOCAQ8AMIIBCgKCAQEAtITMM
169560 78 63 75 61 35 52 73 61 32 46 53 6f 4f 75 6a 7a 33 6d 55 54 4f 57 55 67 4a 6e 4c 56 57 52 45 5a xcua5Rsa2FSoOujz3mUTOWUgJnLVWREZ
169580 59 39 6e 5a 4f 49 47 34 31 77 33 53 66 59 76 6d 34 53 45 0a 48 69 33 79 59 4a 30 77 54 73 79 45 Y9nZOIG41w3SfYvm4SE.Hi3yYJ0wTsyE
1695a0 68 65 49 73 7a 78 36 65 2f 6a 61 72 4d 33 63 31 52 4e 67 31 6c 68 6f 39 4e 75 68 36 44 74 6a 56 heIszx6e/jarM3c1RNg1lho9Nuh6DtjV
1695c0 52 36 46 71 61 59 76 5a 2f 4c 73 36 72 6e 6c 61 31 66 54 57 63 62 75 61 6b 43 4e 72 6d 72 65 49 R6FqaYvZ/Ls6rnla1fTWcbuakCNrmreI
1695e0 0a 64 49 63 4d 48 6c 2b 35 6e 69 33 36 71 31 4d 72 33 4c 74 32 50 70 4e 4d 43 41 69 4d 48 71 49 .dIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqI
169600 6a 48 4e 52 71 72 53 4b 36 6d 51 45 75 62 57 58 4c 76 69 52 6d 56 53 52 4c 51 45 53 78 47 39 66 jHNRqrSK6mQEubWXLviRmVSRLQESxG9f
169620 68 77 6f 58 41 33 68 41 2f 50 65 32 34 0a 2f 50 48 78 49 31 50 63 76 32 57 58 62 39 6e 35 51 48 hwoXA3hA/Pe24./PHxI1Pcv2WXb9n5QH
169640 47 4e 66 62 32 56 31 4d 36 2b 6f 46 34 6e 49 39 37 39 70 74 41 6d 44 67 41 70 36 7a 78 47 38 44 GNfb2V1M6+oF4nI979ptAmDgAp6zxG8D
169660 31 67 76 7a 39 51 30 74 77 6d 51 56 47 65 46 44 64 43 42 4b 4e 77 56 36 67 62 0a 68 2b 30 74 2b 1gvz9Q0twmQVGeFDdCBKNwV6gb.h+0t+
169680 6e 76 75 6a 41 72 6a 71 57 61 4a 47 63 74 42 2b 64 31 45 4e 6d 48 50 34 6e 64 47 79 48 33 32 39 nvujArjqWaJGctB+d1ENmHP4ndGyH329
1696a0 4a 4b 42 4e 76 33 62 4e 50 46 79 66 76 4d 4d 46 72 32 30 46 51 49 44 41 51 41 42 6f 30 49 77 51 JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQ
1696c0 44 41 64 42 67 4e 56 0a 48 51 34 45 46 67 51 55 42 78 2f 53 35 35 7a 61 77 6d 36 69 51 4c 53 77 DAdBgNV.HQ4EFgQUBx/S55zawm6iQLSw
1696e0 65 6c 41 51 55 48 54 45 79 4c 30 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 elAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB
169700 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 0a 41 51 59 77 44 51 59 4a 4b 6f 5a /zAOBgNVHQ8BAf8EBAMC.AQYwDQYJKoZ
169720 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 49 6c 58 73 68 5a 36 71 4d 4c 39 31 74 6d IhvcNAQEFBQADggEBAIlXshZ6qML91tm
169740 62 6d 7a 54 43 6e 4c 51 79 46 45 32 6e 70 4e 2f 73 76 71 65 2b 2b 45 50 62 6b 54 66 4f 74 44 49 bmzTCnLQyFE2npN/svqe++EPbkTfOtDI
169760 75 0a 55 46 55 61 4e 55 35 32 51 33 45 67 37 35 4e 33 54 68 56 77 4c 6f 66 44 77 52 31 74 33 4d u.UFUaNU52Q3Eg75N3ThVwLofDwR1t3M
169780 75 31 4a 39 51 73 56 74 46 53 55 7a 70 45 30 6e 50 49 78 42 73 46 5a 56 70 69 6b 70 7a 75 51 59 u1J9QsVtFSUzpE0nPIxBsFZVpikpzuQY
1697a0 30 78 32 2b 63 30 36 6c 6b 68 31 51 46 36 0a 31 32 53 34 5a 44 6e 4e 79 65 32 76 37 55 73 44 53 0x2+c06lkh1QF6.12S4ZDnNye2v7UsDS
1697c0 4b 65 67 6d 51 47 41 33 47 57 6a 4e 71 35 6c 57 55 68 50 67 6b 76 49 5a 66 46 58 48 65 56 5a 4c KegmQGA3GWjNq5lWUhPgkvIZfFXHeVZL
1697e0 67 6f 2f 62 4e 6a 52 39 65 55 4a 74 47 78 55 41 41 72 67 46 55 32 48 64 57 32 33 0a 57 4a 5a 61 go/bNjR9eUJtGxUAArgFU2HdW23.WJZa
169800 33 57 33 53 41 4b 44 30 6d 30 69 2b 77 7a 65 6b 75 6a 62 67 66 49 65 46 6c 78 6f 56 6f 74 34 75 3W3SAKD0m0i+wzekujbgfIeFlxoVot4u
169820 6f 6c 75 39 72 78 6a 35 6b 46 44 4e 63 46 6e 34 4a 32 64 48 79 38 65 67 42 7a 70 39 30 53 78 64 olu9rxj5kFDNcFn4J2dHy8egBzp90Sxd
169840 62 42 6b 36 5a 72 56 39 0a 2f 5a 46 76 67 72 47 2b 43 4a 50 62 46 45 66 78 6f 6a 66 48 52 5a 34 bBk6ZrV9./ZFvgrG+CJPbFEfxojfHRZ4
169860 38 78 33 65 76 5a 4b 69 54 33 2f 5a 70 67 34 4a 67 38 6b 6c 43 4e 4f 31 61 41 46 53 46 48 42 59 8x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY
169880 32 6b 67 78 63 2b 71 61 74 76 39 73 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 2kgxc+qatv9s=.-----END.CERTIFICA
1698a0 54 45 2d 2d 2d 2d 2d 0a 0a 41 66 66 69 72 6d 54 72 75 73 74 20 50 72 65 6d 69 75 6d 0a 3d 3d 3d TE-----..AffirmTrust.Premium.===
1698c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 ================.-----BEGIN.CERT
1698e0 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 52 6a 43 43 41 79 36 67 41 77 49 42 41 67 49 IFICATE-----.MIIFRjCCAy6gAwIBAgI
169900 49 62 59 77 55 52 72 47 6d 43 75 34 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4d 42 51 41 IbYwURrGmCu4wDQYJKoZIhvcNAQEMBQA
169920 77 51 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 44 41 53 0a 42 67 4e 56 42 41 wQTELMAkGA1UEBhMCVVMxFDAS.BgNVBA
169940 6f 4d 43 30 46 6d 5a 6d 6c 79 62 56 52 79 64 58 4e 30 4d 52 77 77 47 67 59 44 56 51 51 44 44 42 oMC0FmZmlybVRydXN0MRwwGgYDVQQDDB
169960 4e 42 5a 6d 5a 70 63 6d 31 55 63 6e 56 7a 64 43 42 51 63 6d 56 74 61 58 56 74 4d 42 34 58 44 54 NBZmZpcm1UcnVzdCBQcmVtaXVtMB4XDT
169980 45 77 4d 44 45 79 0a 4f 54 45 30 4d 54 41 7a 4e 6c 6f 58 44 54 51 77 4d 54 49 7a 4d 54 45 30 4d EwMDEy.OTE0MTAzNloXDTQwMTIzMTE0M
1699a0 54 41 7a 4e 6c 6f 77 51 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 44 41 53 42 TAzNlowQTELMAkGA1UEBhMCVVMxFDASB
1699c0 67 4e 56 42 41 6f 4d 43 30 46 6d 5a 6d 6c 79 62 56 52 79 0a 64 58 4e 30 4d 52 77 77 47 67 59 44 gNVBAoMC0FmZmlybVRy.dXN0MRwwGgYD
1699e0 56 51 51 44 44 42 4e 42 5a 6d 5a 70 63 6d 31 55 63 6e 56 7a 64 43 42 51 63 6d 56 74 61 58 56 74 VQQDDBNBZmZpcm1UcnVzdCBQcmVtaXVt
169a00 4d 49 49 43 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 MIICIjANBgkqhkiG9w0BAQEFAAOCAg8A
169a20 0a 4d 49 49 43 43 67 4b 43 41 67 45 41 78 42 4c 66 71 56 2f 2b 51 64 33 64 39 5a 2b 4b 34 2f 61 .MIICCgKCAgEAxBLfqV/+Qd3d9Z+K4/a
169a40 73 34 54 78 34 6d 72 7a 59 38 48 39 36 6f 44 4d 71 33 49 30 67 57 36 34 74 62 2b 65 54 32 54 5a s4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZ
169a60 77 61 6d 6a 50 6a 6c 47 6a 68 56 74 6e 0a 42 4b 41 51 4a 47 39 64 4b 49 4c 42 6c 31 66 59 53 43 wamjPjlGjhVtn.BKAQJG9dKILBl1fYSC
169a80 6b 54 74 75 47 2b 6b 55 33 66 68 51 78 54 47 4a 6f 65 4a 4b 4a 50 6a 2f 43 69 68 51 76 4c 39 43 kTtuG+kU3fhQxTGJoeJKJPj/CihQvL9C
169aa0 6c 2f 30 71 52 59 37 69 5a 4e 79 61 71 6f 65 35 72 5a 2b 6a 6a 65 52 46 63 56 0a 35 66 69 4d 79 l/0qRY7iZNyaqoe5rZ+jjeRFcV.5fiMy
169ac0 4e 6c 49 34 67 30 57 4a 78 30 65 79 49 4f 46 4a 62 65 36 71 6c 56 42 7a 41 4d 69 53 79 32 52 6a NlI4g0WJx0eyIOFJbe6qlVBzAMiSy2Rj
169ae0 59 76 6d 69 61 39 6d 78 2b 6e 2f 4b 2b 6b 38 72 4e 72 53 73 38 50 68 61 4a 79 4a 2b 48 6f 41 56 Yvmia9mx+n/K+k8rNrSs8PhaJyJ+HoAV
169b00 74 37 30 56 5a 56 73 0a 2b 37 70 6b 33 57 4b 4c 33 77 74 33 4d 75 74 69 7a 43 61 61 6d 37 75 71 t70VZVs.+7pk3WKL3wt3MutizCaam7uq
169b20 59 6f 4e 4d 74 41 5a 36 4d 4d 67 70 76 2b 30 47 54 5a 65 35 48 4d 51 78 4b 39 56 66 76 46 4d 53 YoNMtAZ6MMgpv+0GTZe5HMQxK9VfvFMS
169b40 46 35 79 5a 56 79 6c 6d 64 32 45 68 4d 51 63 75 4a 55 6d 64 0a 47 50 4c 75 38 79 74 78 6a 4c 57 F5yZVylmd2EhMQcuJUmd.GPLu8ytxjLW
169b60 36 4f 51 64 4a 64 2f 7a 76 4c 70 4b 51 42 59 30 74 4c 33 64 37 37 30 4f 2f 4e 62 75 61 32 50 6c 6OQdJd/zvLpKQBY0tL3d770O/Nbua2Pl
169b80 7a 70 79 7a 79 30 46 66 75 4b 45 34 6d 58 34 2b 51 61 41 6b 76 75 50 6a 63 42 75 6b 75 6d 6a 35 zpyzy0FfuKE4mX4+QaAkvuPjcBukumj5
169ba0 52 0a 70 39 45 69 78 41 71 6e 4f 45 68 73 73 2f 6e 2f 66 61 75 47 56 2b 4f 36 31 6f 56 34 64 37 R.p9EixAqnOEhss/n/fauGV+O61oV4d7
169bc0 70 44 36 6b 68 2f 39 74 69 2b 49 32 30 65 76 39 45 32 62 46 68 63 38 65 36 6b 47 56 51 61 39 51 pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9Q
169be0 50 53 64 75 62 68 6a 4c 30 38 73 39 4e 49 0a 53 2b 4c 49 2b 48 2b 53 71 48 5a 47 6e 45 4a 6c 50 PSdubhjL08s9NI.S+LI+H+SqHZGnEJlP
169c00 71 51 65 77 51 63 44 57 6b 59 74 75 4a 66 7a 74 39 57 79 56 53 48 76 75 74 78 4d 41 4a 66 37 46 qQewQcDWkYtuJfzt9WyVSHvutxMAJf7F
169c20 4a 55 6e 4d 37 2f 6f 51 30 64 47 30 67 69 5a 46 6d 41 37 6d 6e 37 53 35 75 30 34 0a 36 75 77 42 JUnM7/oQ0dG0giZFmA7mn7S5u04.6uwB
169c40 48 6a 78 49 56 6b 6b 4a 78 30 77 33 41 4a 36 49 44 73 42 7a 34 57 39 6d 36 58 4a 48 4d 44 34 51 HjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q
169c60 35 51 73 44 79 5a 70 43 41 47 7a 46 6c 48 35 68 78 49 72 66 66 34 49 61 43 31 6e 45 57 54 4a 33 5QsDyZpCAGzFlH5hxIrff4IaC1nEWTJ3
169c80 73 37 78 67 61 56 59 35 0a 2f 62 51 47 65 79 7a 57 5a 44 62 5a 76 55 6a 74 68 42 39 2b 70 53 4b s7xgaVY5./bQGeyzWZDbZvUjthB9+pSK
169ca0 50 4b 72 68 43 39 49 4b 33 31 46 4f 51 65 45 34 74 47 76 32 42 62 30 54 58 4f 77 46 30 6c 6b 4c PKrhC9IK31FOQeE4tGv2Bb0TXOwF0lkL
169cc0 67 41 4f 49 75 61 2b 72 46 37 6e 4b 73 75 37 2f 2b 36 71 71 6f 0a 2b 4e 7a 32 73 6e 6d 4b 74 6d gAOIua+rF7nKsu7/+6qqo.+Nz2snmKtm
169ce0 63 43 41 77 45 41 41 61 4e 43 4d 45 41 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4a 33 41 5a 36 cCAwEAAaNCMEAwHQYDVR0OBBYEFJ3AZ6
169d00 59 4d 49 74 6b 6d 39 55 57 72 70 6d 56 53 45 53 66 59 52 61 78 6a 4d 41 38 47 41 31 55 64 45 77 YMItkm9UWrpmVSESfYRaxjMA8GA1UdEw
169d20 45 42 0a 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 EB./wQFMAMBAf8wDgYDVR0PAQH/BAQDA
169d40 67 45 47 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 44 41 55 41 41 34 49 43 41 51 43 7a 56 gEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV
169d60 30 30 51 59 6b 34 36 35 4b 7a 71 75 42 79 76 0a 4d 69 50 49 73 30 6c 61 55 5a 78 32 4b 49 31 35 00QYk465KzquByv.MiPIs0laUZx2KI15
169d80 71 6c 64 47 46 39 58 31 55 76 61 33 52 4f 67 49 52 4c 38 59 68 4e 49 4c 67 4d 33 46 45 76 30 41 qldGF9X1Uva3ROgIRL8YhNILgM3FEv0A
169da0 56 51 56 68 68 30 48 63 74 53 53 65 50 4d 54 59 79 50 74 77 6e 69 39 34 6c 6f 4d 67 0a 4e 74 35 VQVhh0HctSSePMTYyPtwni94loMg.Nt5
169dc0 38 44 32 6b 54 69 4b 56 31 4e 70 67 49 70 73 62 66 72 4d 37 6a 57 4e 61 33 50 74 36 36 38 2b 73 8D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s
169de0 30 51 4e 69 69 67 66 56 34 50 79 2f 56 70 66 7a 5a 6f 74 52 65 42 41 34 58 72 66 35 42 38 4f 57 0QNiigfV4Py/VpfzZotReBA4Xrf5B8OW
169e00 79 63 76 70 45 67 6a 4e 43 0a 36 43 31 59 39 31 61 4d 59 6a 2b 36 51 72 43 63 44 46 78 2b 4c 6d ycvpEgjNC.6C1Y91aMYj+6QrCcDFx+Lm
169e20 55 6d 58 46 4e 50 41 4c 4a 34 66 71 45 4e 6d 53 32 4e 75 42 32 4f 6f 73 53 77 2f 57 44 51 4d 4b UmXFNPALJ4fqENmS2NuB2OosSw/WDQMK
169e40 53 4f 79 41 52 69 71 63 54 74 4e 64 35 36 6c 2b 30 4f 4f 46 36 53 0a 4c 35 4e 77 70 61 6d 63 62 SOyARiqcTtNd56l+0OOF6S.L5Nwpamcb
169e60 36 64 39 45 78 31 2b 78 67 68 49 73 56 35 6e 36 31 45 49 4a 65 6e 6d 4a 57 74 53 4b 5a 47 63 30 6d9Ex1+xghIsV5n61EIJenmJWtSKZGc0
169e80 6a 6c 7a 43 46 66 65 6d 51 61 30 57 35 30 51 42 75 48 43 41 4b 69 34 48 45 6f 43 43 68 54 51 77 jlzCFfemQa0W50QBuHCAKi4HEoCChTQw
169ea0 55 48 4b 0a 2b 34 77 31 49 58 32 43 4f 50 4b 70 56 4a 45 5a 4e 5a 4f 55 62 57 6f 36 78 62 4c 51 UHK.+4w1IX2COPKpVJEZNZOUbWo6xbLQ
169ec0 75 34 6d 47 6b 2b 69 62 79 51 38 36 70 33 71 34 6f 66 42 34 52 76 72 38 4e 79 2f 6c 69 6f 54 7a u4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz
169ee0 33 2f 34 45 32 61 46 6f 6f 43 38 6b 34 67 6d 56 0a 42 74 57 56 79 75 45 6b 6c 75 74 38 39 70 4d 3/4E2aFooC8k4gmV.BtWVyuEklut89pM
169f00 46 75 2b 31 7a 36 53 33 52 64 54 6e 58 35 79 54 62 32 45 35 66 51 34 2b 65 30 42 51 35 76 31 56 Fu+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1V
169f20 77 53 4a 6c 58 4d 62 53 63 37 6b 71 59 41 35 59 77 48 32 41 47 37 68 73 6a 2f 6f 46 67 0a 49 78 wSJlXMbSc7kqYA5YwH2AG7hsj/oFg.Ix
169f40 70 48 59 6f 57 6c 7a 42 6b 30 67 47 2b 7a 72 42 72 6a 6e 2f 42 37 53 4b 33 56 41 64 6c 6e 74 71 pHYoWlzBk0gG+zrBrjn/B7SK3VAdlntq
169f60 6c 79 6b 2b 6f 74 5a 72 57 79 75 4f 51 39 50 4c 4c 76 54 49 7a 71 36 77 65 2f 71 7a 57 61 56 59 lyk+otZrWyuOQ9PLLvTIzq6we/qzWaVY
169f80 61 38 47 4b 61 31 71 46 36 30 0a 67 32 78 72 61 55 44 54 6e 39 7a 78 77 32 6c 72 75 65 46 74 43 a8GKa1qF60.g2xraUDTn9zxw2lrueFtC
169fa0 66 54 78 71 6c 42 32 43 6e 70 39 65 68 65 68 56 5a 5a 43 6d 54 45 4a 33 57 41 52 6a 51 55 77 66 fTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwf
169fc0 75 61 4f 52 74 47 64 46 4e 72 48 46 2b 51 46 6c 6f 7a 45 4a 4c 55 62 0a 7a 78 51 48 73 6b 44 34 uaORtGdFNrHF+QFlozEJLUb.zxQHskD4
169fe0 6f 35 35 42 68 72 77 45 30 47 75 57 79 43 71 41 4e 50 32 2f 37 77 61 6a 33 56 6a 46 68 54 30 2b o55BhrwE0GuWyCqANP2/7waj3VjFhT0+
16a000 6a 2f 36 65 4b 65 43 32 75 41 6c 6f 47 52 77 59 51 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 j/6eKeC2uAloGRwYQw==.-----END.CE
16a020 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 41 66 66 69 72 6d 54 72 75 73 74 20 50 72 65 6d RTIFICATE-----..AffirmTrust.Prem
16a040 69 75 6d 20 45 43 43 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a ium.ECC.=======================.
16a060 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 42 -----BEGIN.CERTIFICATE-----.MIIB
16a080 2f 6a 43 43 41 59 57 67 41 77 49 42 41 67 49 49 64 4a 63 6c 69 73 63 2f 65 6c 51 77 43 67 59 49 /jCCAYWgAwIBAgIIdJclisc/elQwCgYI
16a0a0 4b 6f 5a 49 7a 6a 30 45 41 77 4d 77 52 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 KoZIzj0EAwMwRTELMAkGA1UEBhMCVVMx
16a0c0 46 44 41 53 42 67 4e 56 0a 42 41 6f 4d 43 30 46 6d 5a 6d 6c 79 62 56 52 79 64 58 4e 30 4d 53 41 FDASBgNV.BAoMC0FmZmlybVRydXN0MSA
16a0e0 77 48 67 59 44 56 51 51 44 44 42 64 42 5a 6d 5a 70 63 6d 31 55 63 6e 56 7a 64 43 42 51 63 6d 56 wHgYDVQQDDBdBZmZpcm1UcnVzdCBQcmV
16a100 74 61 58 56 74 49 45 56 44 51 7a 41 65 46 77 30 78 4d 44 41 78 0a 4d 6a 6b 78 4e 44 49 77 4d 6a taXVtIEVDQzAeFw0xMDAx.MjkxNDIwMj
16a120 52 61 46 77 30 30 4d 44 45 79 4d 7a 45 78 4e 44 49 77 4d 6a 52 61 4d 45 55 78 43 7a 41 4a 42 67 RaFw00MDEyMzExNDIwMjRaMEUxCzAJBg
16a140 4e 56 42 41 59 54 41 6c 56 54 4d 52 51 77 45 67 59 44 56 51 51 4b 44 41 74 42 5a 6d 5a 70 63 6d NVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm
16a160 31 55 0a 63 6e 56 7a 64 44 45 67 4d 42 34 47 41 31 55 45 41 77 77 58 51 57 5a 6d 61 58 4a 74 56 1U.cnVzdDEgMB4GA1UEAwwXQWZmaXJtV
16a180 48 4a 31 63 33 51 67 55 48 4a 6c 62 57 6c 31 62 53 42 46 51 30 4d 77 64 6a 41 51 42 67 63 71 68 HJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqh
16a1a0 6b 6a 4f 50 51 49 42 42 67 55 72 67 51 51 41 0a 49 67 4e 69 41 41 51 4e 4d 46 34 62 46 5a 30 44 kjOPQIBBgUrgQQA.IgNiAAQNMF4bFZ0D
16a1c0 30 4b 46 35 4e 62 63 36 50 4a 4a 36 79 68 55 63 7a 57 4c 7a 6e 43 5a 63 42 7a 33 6c 56 50 71 6a 0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj
16a1e0 31 73 77 53 36 76 51 55 58 2b 69 4f 47 61 73 76 4c 6b 6a 6d 72 42 68 44 65 4b 7a 51 0a 4e 38 4f 1swS6vQUX+iOGasvLkjmrBhDeKzQ.N8O
16a200 39 73 73 30 73 35 6b 66 69 47 75 5a 6a 75 44 30 75 4c 33 6a 45 54 39 76 30 44 36 52 6f 54 46 56 9ss0s5kfiGuZjuD0uL3jET9v0D6RoTFV
16a220 79 61 35 55 64 54 68 68 43 6c 58 6a 4d 4e 7a 79 52 34 70 74 6c 4b 79 6d 6a 51 6a 42 41 4d 42 30 ya5UdThhClXjMNzyR4ptlKymjQjBAMB0
16a240 47 41 31 55 64 44 67 51 57 0a 42 42 53 61 72 79 6c 36 77 42 45 31 4e 53 5a 52 4d 41 44 44 61 76 GA1UdDgQW.BBSaryl6wBE1NSZRMADDav
16a260 35 41 31 61 37 57 50 44 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA
16a280 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 4b 0a 42 67 67 71 68 6b 6a 4f 50 4GA1UdDwEB/wQEAwIBBjAK.BggqhkjOP
16a2a0 51 51 44 41 77 4e 6e 41 44 42 6b 41 6a 41 58 43 66 4f 48 69 46 42 61 72 38 6a 41 51 72 39 48 58 QQDAwNnADBkAjAXCfOHiFBar8jAQr9HX
16a2c0 2f 56 73 61 6f 62 67 78 43 64 30 35 44 68 54 31 77 56 2f 47 7a 54 6a 78 69 2b 7a 79 67 6b 38 4e /VsaobgxCd05DhT1wV/GzTjxi+zygk8N
16a2e0 35 33 58 0a 35 37 68 47 38 66 32 68 34 6e 45 43 4d 45 4a 5a 68 30 50 55 55 64 2b 36 30 77 6b 79 53X.57hG8f2h4nECMEJZh0PUUd+60wky
16a300 57 73 36 49 66 6c 63 39 6e 46 39 43 61 2f 55 48 4c 62 58 77 67 70 50 35 57 57 2b 75 5a 50 70 59 Ws6Iflc9nF9Ca/UHLbXwgpP5WW+uZPpY
16a320 35 59 73 65 34 32 4f 2b 74 59 48 4e 62 77 4b 4d 0a 65 51 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 5Yse42O+tYHNbwKM.eQ==.-----END.C
16a340 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 65 72 74 75 6d 20 54 72 75 73 74 65 64 20 ERTIFICATE-----..Certum.Trusted.
16a360 4e 65 74 77 6f 72 6b 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d Network.CA.=====================
16a380 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d ====.-----BEGIN.CERTIFICATE-----
16a3a0 0a 4d 49 49 44 75 7a 43 43 41 71 4f 67 41 77 49 42 41 67 49 44 42 45 54 41 4d 41 30 47 43 53 71 .MIIDuzCCAqOgAwIBAgIDBETAMA0GCSq
16a3c0 47 53 49 62 33 44 51 45 42 42 51 55 41 4d 48 34 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 42 GSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlB
16a3e0 4d 4d 53 49 77 49 41 59 44 56 51 51 4b 0a 45 78 6c 56 62 6d 6c 36 5a 58 52 76 49 46 52 6c 59 32 MMSIwIAYDVQQK.ExlVbml6ZXRvIFRlY2
16a400 68 75 62 32 78 76 5a 32 6c 6c 63 79 42 54 4c 6b 45 75 4d 53 63 77 4a 51 59 44 56 51 51 4c 45 78 hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx
16a420 35 44 5a 58 4a 30 64 57 30 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 0a 62 69 42 42 64 5DZXJ0dW0gQ2VydGlmaWNhdGlv.biBBd
16a440 58 52 6f 62 33 4a 70 64 48 6b 78 49 6a 41 67 42 67 4e 56 42 41 4d 54 47 55 4e 6c 63 6e 52 31 62 XRob3JpdHkxIjAgBgNVBAMTGUNlcnR1b
16a460 53 42 55 63 6e 56 7a 64 47 56 6b 49 45 35 6c 64 48 64 76 63 6d 73 67 51 30 45 77 48 68 63 4e 4d SBUcnVzdGVkIE5ldHdvcmsgQ0EwHhcNM
16a480 44 67 78 4d 44 49 79 0a 4d 54 49 77 4e 7a 4d 33 57 68 63 4e 4d 6a 6b 78 4d 6a 4d 78 4d 54 49 77 DgxMDIy.MTIwNzM3WhcNMjkxMjMxMTIw
16a4a0 4e 7a 4d 33 57 6a 42 2b 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 51 54 44 45 69 4d 43 41 47 NzM3WjB+MQswCQYDVQQGEwJQTDEiMCAG
16a4c0 41 31 55 45 43 68 4d 5a 56 57 35 70 65 6d 56 30 62 79 42 55 0a 5a 57 4e 6f 62 6d 39 73 62 32 64 A1UEChMZVW5pemV0byBU.ZWNobm9sb2d
16a4e0 70 5a 58 4d 67 55 79 35 42 4c 6a 45 6e 4d 43 55 47 41 31 55 45 43 78 4d 65 51 32 56 79 64 48 56 pZXMgUy5BLjEnMCUGA1UECxMeQ2VydHV
16a500 74 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 tIENlcnRpZmljYXRpb24gQXV0aG9yaXR
16a520 35 0a 4d 53 49 77 49 41 59 44 56 51 51 44 45 78 6c 44 5a 58 4a 30 64 57 30 67 56 48 4a 31 63 33 5.MSIwIAYDVQQDExlDZXJ0dW0gVHJ1c3
16a540 52 6c 5a 43 42 4f 5a 58 52 33 62 33 4a 72 49 45 4e 42 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b RlZCBOZXR3b3JrIENBMIIBIjANBgkqhk
16a560 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 0a 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 34 iG9w0BAQEFAAOC.AQ8AMIIBCgKCAQEA4
16a580 2f 74 39 6f 33 4b 36 77 76 44 4a 46 49 66 31 61 77 46 4f 34 57 35 41 42 37 70 74 4a 31 31 2f 39 /t9o3K6wvDJFIf1awFO4W5AB7ptJ11/9
16a5a0 31 73 74 73 31 72 48 55 56 2b 72 70 44 4b 6d 59 59 65 32 62 67 2b 47 30 6a 41 43 0a 6c 2f 6a 58 1sts1rHUV+rpDKmYYe2bg+G0jAC.l/jX
16a5c0 61 56 65 68 47 44 6c 64 61 6d 52 35 78 67 46 5a 72 44 77 78 53 6a 68 38 30 67 54 53 53 79 6a 6f aVehGDldamR5xgFZrDwxSjh80gTSSyjo
16a5e0 49 46 38 37 42 36 4c 4d 54 58 50 62 38 36 35 50 78 31 62 56 57 71 65 57 69 66 72 7a 71 32 6a 55 IF87B6LMTXPb865Px1bVWqeWifrzq2jU
16a600 49 34 5a 5a 4a 38 38 4a 0a 4a 37 79 73 62 6e 4b 44 48 44 42 79 33 2b 43 69 36 64 4c 68 64 48 55 I4ZZJ88J.J7ysbnKDHDBy3+Ci6dLhdHU
16a620 5a 76 53 71 65 65 78 56 55 42 42 76 58 51 7a 6d 74 56 53 6a 46 34 68 71 37 39 4d 44 6b 72 6a 68 ZvSqeexVUBBvXQzmtVSjF4hq79MDkrjh
16a640 4a 4d 38 78 32 68 5a 38 35 52 64 4b 6b 6e 76 49 53 6a 46 48 34 0a 66 4f 51 74 66 2f 57 73 58 2b JM8x2hZ85RdKknvISjFH4.fOQtf/WsX+
16a660 73 57 6e 37 45 74 30 62 72 4d 6b 55 4a 33 54 43 58 4a 6b 44 68 76 32 2f 44 4d 2b 34 34 65 6c 31 sWn7Et0brMkUJ3TCXJkDhv2/DM+44el1
16a680 6b 2b 31 57 42 4f 35 67 55 6f 37 55 6c 35 45 30 75 36 53 4e 73 76 2b 58 4c 54 4f 63 72 2b 48 39 k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9
16a6a0 67 30 0a 63 76 57 30 51 4d 38 78 41 63 50 73 33 68 45 74 46 31 30 66 75 46 44 52 58 68 6d 6e 61 g0.cvW0QM8xAcPs3hEtF10fuFDRXhmna
16a6c0 64 34 48 4d 79 6a 4b 55 4a 58 35 70 31 54 4c 56 49 5a 51 52 61 6e 35 53 51 49 44 41 51 41 42 6f d4HMyjKUJX5p1TLVIZQRan5SQIDAQABo
16a6e0 30 49 77 51 44 41 50 42 67 4e 56 48 52 4d 42 0a 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 30 47 0IwQDAPBgNVHRMB.Af8EBTADAQH/MB0G
16a700 41 31 55 64 44 67 51 57 42 42 51 49 64 73 33 4c 42 2f 38 6b 39 73 58 4e 37 62 75 51 76 4f 4b 45 A1UdDgQWBBQIds3LB/8k9sXN7buQvOKE
16a720 4e 30 5a 31 39 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 0a 44 51 59 N0Z19zAOBgNVHQ8BAf8EBAMCAQYw.DQY
16a740 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 4b 61 6f 72 53 4c 4f 41 54 32 JKoZIhvcNAQEFBQADggEBAKaorSLOAT2
16a760 6d 6f 2f 39 69 30 45 69 64 69 31 35 79 73 48 68 45 34 39 77 63 72 77 6e 39 49 30 6a 36 76 53 72 mo/9i0Eidi15ysHhE49wcrwn9I0j6vSr
16a780 45 75 56 55 45 74 52 43 6a 0a 6a 53 66 65 43 34 4a 6a 30 4f 37 65 44 44 64 35 51 56 73 69 73 72 EuVUEtRCj.jSfeC4Jj0O7eDDd5QVsisr
16a7a0 43 61 51 56 79 6d 63 4f 44 55 30 48 66 4c 49 39 4d 41 34 47 78 57 4c 2b 46 70 44 51 33 5a 71 72 CaQVymcODU0HfLI9MA4GxWL+FpDQ3Zqr
16a7c0 38 68 67 56 44 5a 42 71 57 6f 2f 35 55 33 30 4b 72 2b 34 72 50 31 0a 6d 53 31 46 68 49 72 6c 51 8hgVDZBqWo/5U30Kr+4rP1.mS1FhIrlQ
16a7e0 67 6e 58 64 41 49 76 39 34 6e 59 6d 65 6d 38 4a 39 52 48 6a 62 6f 4e 52 68 78 33 7a 78 53 6b 48 gnXdAIv94nYmem8J9RHjboNRhx3zxSkH
16a800 4c 6d 6b 4d 63 53 63 4b 48 51 44 4e 50 38 7a 47 53 61 6c 36 51 31 30 74 7a 36 58 78 6e 62 6f 4a LmkMcScKHQDNP8zGSal6Q10tz6XxnboJ
16a820 35 61 6a 0a 5a 74 33 68 72 76 4a 42 57 38 71 59 56 6f 4e 7a 63 4f 53 47 47 74 49 78 51 62 6f 76 5aj.Zt3hrvJBW8qYVoNzcOSGGtIxQbov
16a840 76 69 30 54 57 6e 5a 76 54 75 68 4f 67 51 34 2f 57 77 4d 69 6f 42 4b 2b 5a 6c 67 52 53 73 73 44 vi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssD
16a860 78 4c 51 71 4b 69 32 57 46 2b 41 35 56 4c 78 49 0a 30 33 59 6e 6e 5a 6f 74 42 71 62 4a 37 44 6e xLQqKi2WF+A5VLxI.03YnnZotBqbJ7Dn
16a880 53 71 39 75 66 6d 67 73 6e 41 6a 55 70 73 55 43 56 35 2f 6e 6f 6e 46 57 49 47 55 62 57 74 7a 54 Sq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT
16a8a0 31 66 73 34 35 6d 74 6b 34 38 56 48 33 54 79 77 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 1fs45mtk48VH3Tyw=.-----END.CERTI
16a8c0 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 65 72 74 69 6e 6f 6d 69 73 20 2d 20 41 75 74 6f 72 69 FICATE-----..Certinomis.-.Autori
16a8e0 74 c3 a9 20 52 61 63 69 6e 65 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d t...Racine.=====================
16a900 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
16a920 2d 2d 2d 2d 0a 4d 49 49 46 6e 44 43 43 41 34 53 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b ----.MIIFnDCCA4SgAwIBAgIBATANBgk
16a940 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 6a 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a qhkiG9w0BAQUFADBjMQswCQYDVQQGEwJ
16a960 47 55 6a 45 54 4d 42 45 47 41 31 55 45 43 68 4d 4b 0a 51 32 56 79 64 47 6c 75 62 32 31 70 63 7a GUjETMBEGA1UEChMK.Q2VydGlub21pcz
16a980 45 58 4d 42 55 47 41 31 55 45 43 78 4d 4f 4d 44 41 77 4d 69 41 30 4d 7a 4d 35 4f 54 67 35 4d 44 EXMBUGA1UECxMOMDAwMiA0MzM5OTg5MD
16a9a0 4d 78 4a 6a 41 6b 42 67 4e 56 42 41 4d 4d 48 55 4e 6c 63 6e 52 70 62 6d 39 74 61 58 4d 67 0a 4c MxJjAkBgNVBAMMHUNlcnRpbm9taXMg.L
16a9c0 53 42 42 64 58 52 76 63 6d 6c 30 77 36 6b 67 55 6d 46 6a 61 57 35 6c 4d 42 34 58 44 54 41 34 4d SBBdXRvcml0w6kgUmFjaW5lMB4XDTA4M
16a9e0 44 6b 78 4e 7a 41 34 4d 6a 67 31 4f 56 6f 58 44 54 49 34 4d 44 6b 78 4e 7a 41 34 4d 6a 67 31 4f DkxNzA4Mjg1OVoXDTI4MDkxNzA4Mjg1O
16aa00 56 6f 77 59 7a 45 4c 4d 41 6b 47 0a 41 31 55 45 42 68 4d 43 52 6c 49 78 45 7a 41 52 42 67 4e 56 VowYzELMAkG.A1UEBhMCRlIxEzARBgNV
16aa20 42 41 6f 54 43 6b 4e 6c 63 6e 52 70 62 6d 39 74 61 58 4d 78 46 7a 41 56 42 67 4e 56 42 41 73 54 BAoTCkNlcnRpbm9taXMxFzAVBgNVBAsT
16aa40 44 6a 41 77 4d 44 49 67 4e 44 4d 7a 4f 54 6b 34 4f 54 41 7a 4d 53 59 77 0a 4a 41 59 44 56 51 51 DjAwMDIgNDMzOTk4OTAzMSYw.JAYDVQQ
16aa60 44 44 42 31 44 5a 58 4a 30 61 57 35 76 62 57 6c 7a 49 43 30 67 51 58 56 30 62 33 4a 70 64 4d 4f DDB1DZXJ0aW5vbWlzIC0gQXV0b3JpdMO
16aa80 70 49 46 4a 68 59 32 6c 75 5a 54 43 43 41 69 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 pIFJhY2luZTCCAiIwDQYJKoZIhvcNAQE
16aaa0 42 42 51 41 44 0a 67 67 49 50 41 44 43 43 41 67 6f 43 67 67 49 42 41 4a 32 46 6e 34 62 54 34 36 BBQAD.ggIPADCCAgoCggIBAJ2Fn4bT46
16aac0 2f 48 73 6d 74 75 4d 2b 43 65 74 30 49 30 56 5a 33 35 67 62 35 6a 32 43 4e 32 44 70 64 55 7a 5a /HsmtuM+Cet0I0VZ35gb5j2CN2DpdUzZ
16aae0 6c 4d 47 76 45 35 78 34 6a 59 46 31 41 4d 6e 6d 48 61 0a 77 45 35 56 33 75 64 61 75 48 70 4f 64 lMGvE5x4jYF1AMnmHa.wE5V3udauHpOd
16ab00 34 63 4e 35 62 6a 72 2b 70 35 65 65 78 37 45 7a 79 68 30 78 35 50 31 46 4d 59 69 4b 41 54 35 6b 4cN5bjr+p5eex7Ezyh0x5P1FMYiKAT5k
16ab20 63 4f 72 4a 33 4e 71 44 69 35 4e 38 79 34 6f 48 33 44 66 56 53 39 4f 37 63 64 78 62 77 6c 79 0a cOrJ3NqDi5N8y4oH3DfVS9O7cdxbwly.
16ab40 4c 75 33 56 4d 70 66 51 38 56 68 33 30 57 43 38 54 6c 37 62 6d 6f 54 32 52 32 46 46 4b 2f 5a 51 Lu3VMpfQ8Vh30WC8Tl7bmoT2R2FFK/ZQ
16ab60 70 6e 39 71 63 53 64 49 68 44 57 65 72 50 35 70 71 5a 35 36 58 6a 55 6c 2b 72 53 6e 53 54 56 33 pn9qcSdIhDWerP5pqZ56XjUl+rSnSTV3
16ab80 6c 71 63 32 57 2b 48 4e 33 79 4e 77 0a 32 46 31 4d 70 51 69 44 38 61 59 6b 4f 42 4f 6f 37 43 2b lqc2W+HN3yNw.2F1MpQiD8aYkOBOo7C+
16aba0 6f 6f 57 66 48 70 69 32 47 52 2b 36 4b 2f 4f 79 62 44 6e 54 30 4b 30 6b 43 65 35 42 31 6a 50 79 ooWfHpi2GR+6K/OybDnT0K0kCe5B1jPy
16abc0 5a 4f 51 45 35 31 6b 71 4a 35 5a 35 32 71 7a 36 57 4b 44 67 6d 69 39 32 4e 0a 6a 4d 44 32 41 52 ZOQE51kqJ5Z52qz6WKDgmi92N.jMD2AR
16abe0 35 76 70 54 45 53 4f 48 32 56 77 6e 48 75 37 58 53 75 35 44 61 69 51 33 58 56 38 51 43 62 34 75 5vpTESOH2VwnHu7XSu5DaiQ3XV8QCb4u
16ac00 54 58 7a 45 49 44 53 33 68 36 35 58 32 37 75 4b 34 75 49 4a 50 54 35 47 48 66 63 65 46 32 5a 35 TXzEIDS3h65X27uK4uIJPT5GHfceF2Z5
16ac20 63 2f 74 74 39 71 0a 63 31 70 6b 49 75 56 43 32 38 2b 42 41 35 50 59 39 4f 4d 51 34 48 4c 32 41 c/tt9q.c1pkIuVC28+BA5PY9OMQ4HL2A
16ac40 48 43 73 38 4d 46 36 44 77 56 2f 7a 7a 52 70 52 62 57 54 35 42 6e 62 55 68 59 6a 42 59 6b 4f 6a HCs8MF6DwV/zzRpRbWT5BnbUhYjBYkOj
16ac60 55 6a 6b 4a 57 2b 7a 65 4c 39 69 39 51 66 36 6c 53 54 43 0a 6c 72 4c 6f 6f 79 50 43 58 51 50 38 UjkJW+zeL9i9Qf6lSTC.lrLooyPCXQP8
16ac80 77 39 50 6c 66 4d 6c 31 49 39 66 30 39 62 7a 65 35 4e 2f 4e 67 4c 2b 52 69 48 32 6e 45 37 51 35 w9PlfMl1I9f09bze5N/NgL+RiH2nE7Q5
16aca0 75 69 79 36 76 64 46 72 7a 50 4f 6c 4b 4f 31 45 6e 6e 31 53 6f 32 2b 57 4c 68 6c 2b 48 50 4e 62 uiy6vdFrzPOlKO1Enn1So2+WLhl+HPNb
16acc0 0a 78 78 61 4f 75 32 42 39 64 32 5a 48 56 49 49 41 45 57 42 73 4d 73 47 6f 4f 42 76 72 62 70 67 .xxaOu2B9d2ZHVIIAEWBsMsGoOBvrbpg
16ace0 54 31 75 34 34 39 66 43 66 44 75 2f 2b 4d 59 48 42 30 69 53 56 4c 31 4e 36 61 61 4c 77 44 34 5a T1u449fCfDu/+MYHB0iSVL1N6aaLwD4Z
16ad00 46 6a 6c 69 43 4b 30 77 69 31 46 36 67 0a 35 33 30 6d 4a 30 6a 66 4a 55 61 4e 53 69 68 38 68 70 FjliCK0wi1F6g.530mJ0jfJUaNSih8hp
16ad20 37 35 6d 78 70 5a 75 57 57 2f 42 64 32 32 51 6c 30 39 35 67 42 49 67 6c 34 67 39 78 47 43 33 73 75mxpZuWW/Bd22Ql095gBIgl4g9xGC3s
16ad40 72 59 6e 2b 59 33 52 79 59 65 36 33 6a 33 59 63 4e 42 5a 46 67 43 51 66 6e 61 0a 34 4e 48 34 2b rYn+Y3RyYe63j3YcNBZFgCQfna.4NH4+
16ad60 65 6a 39 55 6a 69 32 39 59 6e 66 41 67 4d 42 41 41 47 6a 57 7a 42 5a 4d 41 38 47 41 31 55 64 45 ej9Uji29YnfAgMBAAGjWzBZMA8GA1UdE
16ad80 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 wEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDA
16ada0 67 45 47 4d 42 30 47 0a 41 31 55 64 44 67 51 57 42 42 51 4e 6a 4c 5a 68 32 6b 53 34 30 52 52 39 gEGMB0G.A1UdDgQWBBQNjLZh2kS40RR9
16adc0 77 37 35 39 58 6b 6a 77 7a 73 70 71 73 44 41 58 42 67 4e 56 48 53 41 45 45 44 41 4f 4d 41 77 47 w759XkjwzspqsDAXBgNVHSAEEDAOMAwG
16ade0 43 69 71 42 65 67 46 57 41 67 49 41 41 51 45 77 44 51 59 4a 0a 4b 6f 5a 49 68 76 63 4e 41 51 45 CiqBegFWAgIAAQEwDQYJ.KoZIhvcNAQE
16ae00 46 42 51 41 44 67 67 49 42 41 43 51 2b 59 41 5a 2b 48 65 38 36 50 74 76 71 72 78 79 61 4c 41 45 FBQADggIBACQ+YAZ+He86PtvqrxyaLAE
16ae20 4c 39 4d 57 31 32 55 6b 78 39 46 31 42 6a 59 6b 4d 54 76 39 73 6f 76 33 2f 34 67 62 49 4f 5a 2f L9MW12Ukx9F1BjYkMTv9sov3/4gbIOZ/
16ae40 78 0a 57 71 6e 64 49 6c 67 56 71 49 72 54 73 65 59 79 43 59 49 44 62 4e 63 2f 43 4d 66 34 75 62 x.WqndIlgVqIrTseYyCYIDbNc/CMf4ub
16ae60 6f 41 62 62 6e 57 2f 46 49 79 58 61 52 2f 70 44 47 55 75 37 5a 4d 4f 48 38 6f 4d 44 58 2f 6e 79 oAbbnW/FIyXaR/pDGUu7ZMOH8oMDX/ny
16ae80 4e 54 74 37 62 75 46 48 41 41 51 43 76 61 0a 52 36 73 30 66 6c 36 6e 56 6a 42 68 4b 34 74 44 72 NTt7buFHAAQCva.R6s0fl6nVjBhK4tDr
16aea0 50 32 32 69 43 6a 31 61 37 59 2b 59 45 71 36 51 70 41 30 5a 34 33 71 36 31 39 46 56 44 73 58 72 P22iCj1a7Y+YEq6QpA0Z43q619FVDsXr
16aec0 49 76 6b 78 6d 55 50 37 74 43 4d 58 57 59 35 7a 6a 4b 6e 32 42 43 58 77 48 34 30 0a 6e 4a 2b 55 IvkxmUP7tCMXWY5zjKn2BCXwH40.nJ+U
16aee0 38 2f 61 47 48 38 38 62 63 36 32 55 65 59 64 6f 63 4d 4d 7a 70 58 44 6e 32 4e 55 34 6c 47 39 6a 8/aGH88bc62UeYdocMMzpXDn2NU4lG9j
16af00 65 65 75 2f 43 67 34 49 35 38 55 76 44 30 4b 67 4b 78 52 41 2f 79 48 67 42 63 55 6e 34 59 51 52 eeu/Cg4I58UvD0KgKxRA/yHgBcUn4YQR
16af20 45 37 72 57 68 68 31 42 0a 43 78 4d 6a 69 64 50 4a 43 2b 69 4b 75 6e 71 6a 6f 33 4d 33 4e 59 42 E7rWhh1B.CxMjidPJC+iKunqjo3M3NYB
16af40 39 45 72 67 7a 64 30 41 34 77 50 70 65 4d 4e 4c 79 74 71 4f 78 31 71 4b 56 6c 34 47 62 55 75 31 9Ergzd0A4wPpeMNLytqOx1qKVl4GbUu1
16af60 70 54 50 2b 41 35 46 50 62 56 46 73 44 62 56 52 66 73 62 6a 76 0a 4a 4c 31 76 6e 78 48 44 78 32 pTP+A5FPbVFsDbVRfsbjv.JL1vnxHDx2
16af80 54 43 44 79 68 69 68 57 5a 65 47 6e 75 79 74 2b 2b 75 4e 63 6b 5a 4d 36 69 34 4a 39 73 7a 56 62 TCDyhihWZeGnuyt++uNckZM6i4J9szVb
16afa0 39 6f 34 58 56 49 52 46 62 37 7a 64 4e 49 75 30 65 4a 4f 71 78 70 39 59 44 47 35 45 52 51 4c 31 9o4XVIRFb7zdNIu0eJOqxp9YDG5ERQL1
16afc0 54 45 0a 71 6b 50 46 4d 54 46 59 76 5a 62 46 36 6e 56 73 6d 6e 57 78 54 66 6a 33 6c 2f 2b 57 46 TE.qkPFMTFYvZbF6nVsmnWxTfj3l/+WF
16afe0 76 4b 58 54 65 6a 32 38 78 48 35 4f 6e 32 4b 4f 47 34 45 79 2b 48 54 52 52 57 71 70 64 45 64 6e vKXTej28xH5On2KOG4Ey+HTRRWqpdEdn
16b000 56 31 6a 36 43 54 6d 4e 68 54 69 68 36 30 62 0a 57 66 56 45 6d 2f 76 58 64 33 77 66 41 58 42 69 V1j6CTmNhTih60b.WfVEm/vXd3wfAXBi
16b020 6f 53 41 61 6f 73 55 61 4b 50 51 68 41 2b 34 75 32 63 47 41 36 72 6e 5a 67 74 5a 62 64 73 4c 4c oSAaosUaKPQhA+4u2cGA6rnZgtZbdsLL
16b040 4f 37 58 53 41 50 43 6a 44 75 47 74 62 6b 44 33 32 36 43 30 30 45 61 75 46 64 64 45 0a 77 6b 30 O7XSAPCjDuGtbkD326C00EauFddE.wk0
16b060 31 2b 64 49 4c 38 68 66 32 72 47 62 56 4a 4c 4a 50 30 52 79 5a 77 47 37 31 66 65 74 30 42 4c 6a 1+dIL8hf2rGbVJLJP0RyZwG71fet0BLj
16b080 35 54 58 63 4a 31 37 54 50 42 7a 41 4a 38 62 67 41 56 74 6b 58 46 68 59 4b 4b 34 62 66 6a 77 45 5TXcJ17TPBzAJ8bgAVtkXFhYKK4bfjwE
16b0a0 5a 47 75 57 37 67 6d 50 2f 0a 76 67 74 32 46 6c 34 33 4e 2b 62 59 64 4a 65 69 6d 55 56 35 0a 2d ZGuW7gmP/.vgt2Fl43N+bYdJeimUV5.-
16b0c0 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 52 6f 6f 74 20 43 ----END.CERTIFICATE-----..Root.C
16b0e0 41 20 47 65 6e 65 72 61 6c 69 74 61 74 20 56 61 6c 65 6e 63 69 61 6e 61 0a 3d 3d 3d 3d 3d 3d 3d A.Generalitat.Valenciana.=======
16b100 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 =======================.-----BEG
16b120 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 47 69 7a 43 43 42 58 4f 67 IN.CERTIFICATE-----.MIIGizCCBXOg
16b140 41 77 49 42 41 67 49 45 4f 30 58 6c 61 44 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 AwIBAgIEO0XlaDANBgkqhkiG9w0BAQUF
16b160 41 44 42 6f 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 55 7a 45 66 4d 42 30 47 41 31 55 45 ADBoMQswCQYDVQQGEwJFUzEfMB0GA1UE
16b180 0a 43 68 4d 57 52 32 56 75 5a 58 4a 68 62 47 6c 30 59 58 51 67 56 6d 46 73 5a 57 35 6a 61 57 46 .ChMWR2VuZXJhbGl0YXQgVmFsZW5jaWF
16b1a0 75 59 54 45 50 4d 41 30 47 41 31 55 45 43 78 4d 47 55 45 74 4a 52 31 5a 42 4d 53 63 77 4a 51 59 uYTEPMA0GA1UECxMGUEtJR1ZBMScwJQY
16b1c0 44 56 51 51 44 45 78 35 53 62 32 39 30 0a 49 45 4e 42 49 45 64 6c 62 6d 56 79 59 57 78 70 64 47 DVQQDEx5Sb290.IENBIEdlbmVyYWxpdG
16b1e0 46 30 49 46 5a 68 62 47 56 75 59 32 6c 68 62 6d 45 77 48 68 63 4e 4d 44 45 77 4e 7a 41 32 4d 54 F0IFZhbGVuY2lhbmEwHhcNMDEwNzA2MT
16b200 59 79 4d 6a 51 33 57 68 63 4e 4d 6a 45 77 4e 7a 41 78 4d 54 55 79 4d 6a 51 33 0a 57 6a 42 6f 4d YyMjQ3WhcNMjEwNzAxMTUyMjQ3.WjBoM
16b220 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 55 7a 45 66 4d 42 30 47 41 31 55 45 43 68 4d 57 52 QswCQYDVQQGEwJFUzEfMB0GA1UEChMWR
16b240 32 56 75 5a 58 4a 68 62 47 6c 30 59 58 51 67 56 6d 46 73 5a 57 35 6a 61 57 46 75 59 54 45 50 4d 2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPM
16b260 41 30 47 41 31 55 45 0a 43 78 4d 47 55 45 74 4a 52 31 5a 42 4d 53 63 77 4a 51 59 44 56 51 51 44 A0GA1UE.CxMGUEtJR1ZBMScwJQYDVQQD
16b280 45 78 35 53 62 32 39 30 49 45 4e 42 49 45 64 6c 62 6d 56 79 59 57 78 70 64 47 46 30 49 46 5a 68 Ex5Sb290IENBIEdlbmVyYWxpdGF0IFZh
16b2a0 62 47 56 75 59 32 6c 68 62 6d 45 77 67 67 45 69 4d 41 30 47 0a 43 53 71 47 53 49 62 33 44 51 45 bGVuY2lhbmEwggEiMA0G.CSqGSIb3DQE
16b2c0 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 44 47 4b 71 74 58 45 54 63 BAQUAA4IBDwAwggEKAoIBAQDGKqtXETc
16b2e0 76 49 6f 72 4b 41 33 51 64 79 75 30 74 6f 67 75 38 4d 31 4a 41 4a 6b 65 2b 57 6d 6d 6d 4f 33 49 vIorKA3Qdyu0togu8M1JAJke+WmmmO3I
16b300 32 0a 46 30 7a 6f 33 37 69 37 4c 33 62 68 51 45 5a 30 5a 51 4b 51 55 67 69 30 2f 36 69 4d 77 65 2.F0zo37i7L3bhQEZ0ZQKQUgi0/6iMwe
16b320 44 48 69 56 59 51 4f 54 50 76 61 4c 52 66 58 39 70 74 49 36 47 4a 58 69 4b 6a 53 67 62 77 4a 2f DHiVYQOTPvaLRfX9ptI6GJXiKjSgbwJ/
16b340 42 58 75 66 6a 70 54 6a 4a 33 43 6a 39 42 0a 5a 50 50 72 5a 65 35 32 2f 6c 53 71 66 52 30 67 72 BXufjpTjJ3Cj9B.ZPPrZe52/lSqfR0gr
16b360 76 50 58 64 4d 49 4b 58 2f 55 49 4b 46 49 49 7a 46 56 64 30 67 2f 62 6d 6f 47 6c 75 36 47 7a 77 vPXdMIKX/UIKFIIzFVd0g/bmoGlu6Gzw
16b380 5a 54 4e 56 4f 41 79 64 54 47 52 47 6d 4b 79 33 6e 58 69 7a 30 2b 4a 32 5a 47 51 0a 44 30 45 62 ZTNVOAydTGRGmKy3nXiz0+J2ZGQ.D0Eb
16b3a0 74 46 70 4b 64 37 31 6e 67 2b 43 54 35 31 36 6e 44 4f 65 42 30 2f 52 53 72 46 4f 79 41 38 64 45 tFpKd71ng+CT516nDOeB0/RSrFOyA8dE
16b3c0 4a 76 74 35 35 63 73 30 59 46 41 51 65 78 76 62 61 39 64 48 71 31 39 38 61 4d 70 75 6e 55 45 44 Jvt55cs0YFAQexvba9dHq198aMpunUED
16b3e0 45 4f 35 72 6d 58 74 65 0a 4a 61 6a 43 71 2b 54 41 38 31 79 63 34 37 37 4f 4d 55 78 6b 48 6c 36 EO5rmXte.JajCq+TA81yc477OMUxkHl6
16b400 41 6f 76 57 44 66 67 7a 57 79 6f 78 56 6a 72 37 67 76 6b 6b 48 44 36 4d 6b 51 58 70 59 48 59 54 AovWDfgzWyoxVjr7gvkkHD6MkQXpYHYT
16b420 71 57 42 4c 49 34 62 66 74 37 35 50 65 6c 41 67 78 41 67 4d 42 0a 41 41 47 6a 67 67 4d 37 4d 49 qWBLI4bft75PelAgxAgMB.AAGjggM7MI
16b440 49 44 4e 7a 41 79 42 67 67 72 42 67 45 46 42 51 63 42 41 51 51 6d 4d 43 51 77 49 67 59 49 4b 77 IDNzAyBggrBgEFBQcBAQQmMCQwIgYIKw
16b460 59 42 42 51 55 48 4d 41 47 47 46 6d 68 30 64 48 41 36 4c 79 39 76 59 33 4e 77 4c 6e 42 72 61 53 YBBQUHMAGGFmh0dHA6Ly9vY3NwLnBraS
16b480 35 6e 0a 64 6d 45 75 5a 58 4d 77 45 67 59 44 56 52 30 54 41 51 48 2f 42 41 67 77 42 67 45 42 2f 5n.dmEuZXMwEgYDVR0TAQH/BAgwBgEB/
16b4a0 77 49 42 41 6a 43 43 41 6a 51 47 41 31 55 64 49 41 53 43 41 69 73 77 67 67 49 6e 4d 49 49 43 49 wIBAjCCAjQGA1UdIASCAiswggInMIICI
16b4c0 77 59 4b 4b 77 59 42 42 41 47 2f 56 51 49 42 0a 41 44 43 43 41 68 4d 77 67 67 48 6f 42 67 67 72 wYKKwYBBAG/VQIB.ADCCAhMwggHoBggr
16b4e0 42 67 45 46 42 51 63 43 41 6a 43 43 41 64 6f 65 67 67 48 57 41 45 45 41 64 51 42 30 41 47 38 41 BgEFBQcCAjCCAdoeggHWAEEAdQB0AG8A
16b500 63 67 42 70 41 47 51 41 59 51 42 6b 41 43 41 41 5a 41 42 6c 41 43 41 41 51 77 42 6c 0a 41 48 49 cgBpAGQAYQBkACAAZABlACAAQwBl.AHI
16b520 41 64 41 42 70 41 47 59 41 61 51 42 6a 41 47 45 41 59 77 42 70 41 50 4d 41 62 67 41 67 41 46 49 AdABpAGYAaQBjAGEAYwBpAPMAbgAgAFI
16b540 41 59 51 44 74 41 48 6f 41 49 41 42 6b 41 47 55 41 49 41 42 73 41 47 45 41 49 41 42 48 41 47 55 AYQDtAHoAIABkAGUAIABsAGEAIABHAGU
16b560 41 62 67 42 6c 41 48 49 41 0a 59 51 42 73 41 47 6b 41 64 41 42 68 41 48 51 41 49 41 42 57 41 47 AbgBlAHIA.YQBsAGkAdABhAHQAIABWAG
16b580 45 41 62 41 42 6c 41 47 34 41 59 77 42 70 41 47 45 41 62 67 42 68 41 43 34 41 44 51 41 4b 41 45 EAbABlAG4AYwBpAGEAbgBhAC4ADQAKAE
16b5a0 77 41 59 51 41 67 41 45 51 41 5a 51 42 6a 41 47 77 41 59 51 42 79 0a 41 47 45 41 59 77 42 70 41 wAYQAgAEQAZQBjAGwAYQBy.AGEAYwBpA
16b5c0 50 4d 41 62 67 41 67 41 47 51 41 5a 51 41 67 41 46 41 41 63 67 44 68 41 47 4d 41 64 41 42 70 41 PMAbgAgAGQAZQAgAFAAcgDhAGMAdABpA
16b5e0 47 4d 41 59 51 42 7a 41 43 41 41 5a 41 42 6c 41 43 41 41 51 77 42 6c 41 48 49 41 64 41 42 70 41 GMAYQBzACAAZABlACAAQwBlAHIAdABpA
16b600 47 59 41 0a 61 51 42 6a 41 47 45 41 59 77 42 70 41 50 4d 41 62 67 41 67 41 48 45 41 64 51 42 6c GYA.aQBjAGEAYwBpAPMAbgAgAHEAdQBl
16b620 41 43 41 41 63 67 42 70 41 47 63 41 5a 51 41 67 41 47 55 41 62 41 41 67 41 47 59 41 64 51 42 75 ACAAcgBpAGcAZQAgAGUAbAAgAGYAdQBu
16b640 41 47 4d 41 61 51 42 76 41 47 34 41 59 51 42 74 0a 41 47 6b 41 5a 51 42 75 41 48 51 41 62 77 41 AGMAaQBvAG4AYQBt.AGkAZQBuAHQAbwA
16b660 67 41 47 51 41 5a 51 41 67 41 47 77 41 59 51 41 67 41 48 41 41 63 67 42 6c 41 48 4d 41 5a 51 42 gAGQAZQAgAGwAYQAgAHAAcgBlAHMAZQB
16b680 75 41 48 51 41 5a 51 41 67 41 45 45 41 64 51 42 30 41 47 38 41 63 67 42 70 41 47 51 41 0a 59 51 uAHQAZQAgAEEAdQB0AG8AcgBpAGQA.YQ
16b6a0 42 6b 41 43 41 41 5a 41 42 6c 41 43 41 41 51 77 42 6c 41 48 49 41 64 41 42 70 41 47 59 41 61 51 BkACAAZABlACAAQwBlAHIAdABpAGYAaQ
16b6c0 42 6a 41 47 45 41 59 77 42 70 41 50 4d 41 62 67 41 67 41 48 4d 41 5a 51 41 67 41 47 55 41 62 67 BjAGEAYwBpAPMAbgAgAHMAZQAgAGUAbg
16b6e0 42 6a 41 48 55 41 5a 51 42 75 0a 41 48 51 41 63 67 42 68 41 43 41 41 5a 51 42 75 41 43 41 41 62 BjAHUAZQBu.AHQAcgBhACAAZQBuACAAb
16b700 41 42 68 41 43 41 41 5a 41 42 70 41 48 49 41 5a 51 42 6a 41 47 4d 41 61 51 44 7a 41 47 34 41 49 ABhACAAZABpAHIAZQBjAGMAaQDzAG4AI
16b720 41 42 33 41 47 55 41 59 67 41 67 41 47 67 41 64 41 42 30 41 48 41 41 0a 4f 67 41 76 41 43 38 41 AB3AGUAYgAgAGgAdAB0AHAA.OgAvAC8A
16b740 64 77 42 33 41 48 63 41 4c 67 42 77 41 47 73 41 61 51 41 75 41 47 63 41 64 67 42 68 41 43 34 41 dwB3AHcALgBwAGsAaQAuAGcAdgBhAC4A
16b760 5a 51 42 7a 41 43 38 41 59 77 42 77 41 48 4d 77 4a 51 59 49 4b 77 59 42 42 51 55 48 41 67 45 57 ZQBzAC8AYwBwAHMwJQYIKwYBBQUHAgEW
16b780 47 57 68 30 0a 64 48 41 36 4c 79 39 33 64 33 63 75 63 47 74 70 4c 6d 64 32 59 53 35 6c 63 79 39 GWh0.dHA6Ly93d3cucGtpLmd2YS5lcy9
16b7a0 6a 63 48 4d 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 48 73 31 30 30 44 53 48 48 67 5a 5a 75 39 jcHMwHQYDVR0OBBYEFHs100DSHHgZZu9
16b7c0 30 45 43 6a 63 50 6b 2b 79 65 41 54 38 4d 49 47 56 0a 42 67 4e 56 48 53 4d 45 67 59 30 77 67 59 0ECjcPk+yeAT8MIGV.BgNVHSMEgY0wgY
16b7e0 71 41 46 48 73 31 30 30 44 53 48 48 67 5a 5a 75 39 30 45 43 6a 63 50 6b 2b 79 65 41 54 38 6f 57 qAFHs100DSHHgZZu90ECjcPk+yeAT8oW
16b800 79 6b 61 6a 42 6f 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 55 7a 45 66 4d 42 30 47 0a 41 ykajBoMQswCQYDVQQGEwJFUzEfMB0G.A
16b820 31 55 45 43 68 4d 57 52 32 56 75 5a 58 4a 68 62 47 6c 30 59 58 51 67 56 6d 46 73 5a 57 35 6a 61 1UEChMWR2VuZXJhbGl0YXQgVmFsZW5ja
16b840 57 46 75 59 54 45 50 4d 41 30 47 41 31 55 45 43 78 4d 47 55 45 74 4a 52 31 5a 42 4d 53 63 77 4a WFuYTEPMA0GA1UECxMGUEtJR1ZBMScwJ
16b860 51 59 44 56 51 51 44 45 78 35 53 0a 62 32 39 30 49 45 4e 42 49 45 64 6c 62 6d 56 79 59 57 78 70 QYDVQQDEx5S.b290IENBIEdlbmVyYWxp
16b880 64 47 46 30 49 46 5a 68 62 47 56 75 59 32 6c 68 62 6d 47 43 42 44 74 46 35 57 67 77 44 51 59 4a dGF0IFZhbGVuY2lhbmGCBDtF5WgwDQYJ
16b8a0 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 43 52 68 0a 54 76 57 31 79 45 49 KoZIhvcNAQEFBQADggEBACRh.TvW1yEI
16b8c0 43 4b 72 4e 63 64 61 33 46 62 63 72 6e 6c 44 2b 6c 61 4a 57 49 77 56 54 41 45 47 6d 69 45 69 38 CKrNcda3FbcrnlD+laJWIwVTAEGmiEi8
16b8e0 59 50 79 56 51 71 48 78 4b 36 73 59 4a 32 66 52 31 78 6b 44 61 72 31 43 64 50 61 55 57 75 32 30 YPyVQqHxK6sYJ2fR1xkDar1CdPaUWu20
16b900 78 78 73 64 7a 0a 43 6b 6a 2b 49 48 4c 74 62 38 7a 6f 67 32 45 57 52 70 41 42 6c 55 74 39 6a 70 xxsdz.Ckj+IHLtb8zog2EWRpABlUt9jp
16b920 70 53 43 53 2f 32 62 78 7a 6b 6f 58 48 50 6a 43 70 61 46 33 4f 44 52 30 30 50 4e 76 73 45 54 55 pSCS/2bxzkoXHPjCpaF3ODR00PNvsETU
16b940 6c 52 34 68 54 4a 5a 47 48 37 31 42 54 67 39 4a 36 33 0a 4e 49 38 4b 4a 72 32 58 58 50 52 35 4f lR4hTJZGH71BTg9J63.NI8KJr2XXPR5O
16b960 6b 6f 77 47 63 79 74 54 36 43 59 69 72 51 78 6c 79 72 69 63 32 31 2b 65 4c 6a 34 69 49 6c 50 73 kowGcytT6CYirQxlyric21+eLj4iIlPs
16b980 53 4b 52 5a 45 76 31 55 4e 34 44 32 2b 58 46 64 75 63 54 5a 6e 56 2b 5a 66 73 42 6e 35 4f 48 0a SKRZEv1UN4D2+XFducTZnV+ZfsBn5OH.
16b9a0 69 4a 33 35 52 6c 64 38 54 57 43 76 6d 48 4d 54 49 36 51 67 6b 59 48 36 30 47 46 6d 75 48 33 52 iJ35Rld8TWCvmHMTI6QgkYH60GFmuH3R
16b9c0 72 39 5a 76 48 6d 77 39 36 52 48 39 71 66 6d 43 49 6f 61 5a 4d 33 46 61 36 68 6c 58 50 5a 48 4e r9ZvHmw96RH9qfmCIoaZM3Fa6hlXPZHN
16b9e0 71 63 43 6a 62 67 63 54 70 73 6e 74 0a 2b 47 69 6a 6e 73 4e 61 63 67 6d 48 4b 4e 48 45 63 38 52 qcCjbgcTpsnt.+GijnsNacgmHKNHEc8R
16ba00 7a 47 46 39 51 64 52 59 78 6e 37 66 6f 66 4d 4d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 zGF9QdRYxn7fofMM=.-----END.CERTI
16ba20 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 41 2d 54 72 75 73 74 2d 6e 51 75 61 6c 2d 30 33 0a 3d 3d FICATE-----..A-Trust-nQual-03.==
16ba40 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 ==============.-----BEGIN.CERTIF
16ba60 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 7a 7a 43 43 41 72 65 67 41 77 49 42 41 67 49 44 41 ICATE-----.MIIDzzCCAregAwIBAgIDA
16ba80 57 77 65 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 4d 49 47 4e 4d 51 73 77 43 WweMA0GCSqGSIb3DQEBBQUAMIGNMQswC
16baa0 51 59 44 56 51 51 47 45 77 4a 42 56 44 46 49 4d 45 59 47 41 31 55 45 0a 43 67 77 2f 51 53 31 55 QYDVQQGEwJBVDFIMEYGA1UE.Cgw/QS1U
16bac0 63 6e 56 7a 64 43 42 48 5a 58 4d 75 49 47 59 75 49 46 4e 70 59 32 68 6c 63 6d 68 6c 61 58 52 7a cnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRz
16bae0 63 33 6c 7a 64 47 56 74 5a 53 42 70 62 53 42 6c 62 47 56 72 64 48 49 75 49 45 52 68 64 47 56 75 c3lzdGVtZSBpbSBlbGVrdHIuIERhdGVu
16bb00 64 6d 56 79 0a 61 32 56 6f 63 69 42 48 62 57 4a 49 4d 52 6b 77 46 77 59 44 56 51 51 4c 44 42 42 dmVy.a2VociBHbWJIMRkwFwYDVQQLDBB
16bb20 42 4c 56 52 79 64 58 4e 30 4c 57 35 52 64 57 46 73 4c 54 41 7a 4d 52 6b 77 46 77 59 44 56 51 51 BLVRydXN0LW5RdWFsLTAzMRkwFwYDVQQ
16bb40 44 44 42 42 42 4c 56 52 79 64 58 4e 30 4c 57 35 52 0a 64 57 46 73 4c 54 41 7a 4d 42 34 58 44 54 DDBBBLVRydXN0LW5R.dWFsLTAzMB4XDT
16bb60 41 31 4d 44 67 78 4e 7a 49 79 4d 44 41 77 4d 46 6f 58 44 54 45 31 4d 44 67 78 4e 7a 49 79 4d 44 A1MDgxNzIyMDAwMFoXDTE1MDgxNzIyMD
16bb80 41 77 4d 46 6f 77 67 59 30 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 46 55 4d 55 67 77 0a 52 AwMFowgY0xCzAJBgNVBAYTAkFUMUgw.R
16bba0 67 59 44 56 51 51 4b 44 44 39 42 4c 56 52 79 64 58 4e 30 49 45 64 6c 63 79 34 67 5a 69 34 67 55 gYDVQQKDD9BLVRydXN0IEdlcy4gZi4gU
16bbc0 32 6c 6a 61 47 56 79 61 47 56 70 64 48 4e 7a 65 58 4e 30 5a 57 31 6c 49 47 6c 74 49 47 56 73 5a 2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZ
16bbe0 57 74 30 63 69 34 67 52 47 46 30 0a 5a 57 35 32 5a 58 4a 72 5a 57 68 79 49 45 64 74 59 6b 67 78 Wt0ci4gRGF0.ZW52ZXJrZWhyIEdtYkgx
16bc00 47 54 41 58 42 67 4e 56 42 41 73 4d 45 45 45 74 56 48 4a 31 63 33 51 74 62 6c 46 31 59 57 77 74 GTAXBgNVBAsMEEEtVHJ1c3QtblF1YWwt
16bc20 4d 44 4d 78 47 54 41 58 42 67 4e 56 42 41 4d 4d 45 45 45 74 56 48 4a 31 0a 63 33 51 74 62 6c 46 MDMxGTAXBgNVBAMMEEEtVHJ1.c3QtblF
16bc40 31 59 57 77 74 4d 44 4d 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 1YWwtMDMwggEiMA0GCSqGSIb3DQEBAQU
16bc60 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 74 50 57 46 75 41 2f 4f 51 4f 38 42 AA4IBDwAwggEKAoIBAQCtPWFuA/OQO8B
16bc80 42 43 34 53 41 0a 7a 65 77 71 6f 35 31 72 75 32 37 43 51 6f 54 33 55 52 54 68 6f 4b 67 74 55 61 BC4SA.zewqo51ru27CQoT3URThoKgtUa
16bca0 4e 52 38 74 34 6a 38 44 52 45 2f 35 54 72 7a 41 55 6a 6c 55 43 35 42 33 69 6c 4a 66 59 4b 76 55 NR8t4j8DRE/5TrzAUjlUC5B3ilJfYKvU
16bcc0 57 47 36 4e 6d 39 77 41 53 4f 68 55 52 68 37 33 2b 6e 0a 79 66 72 42 4a 63 79 46 4c 47 4d 2f 42 WG6Nm9wASOhURh73+n.yfrBJcyFLGM/B
16bce0 57 42 7a 53 51 58 67 59 48 69 56 45 45 76 63 2b 52 46 5a 7a 6e 46 2f 51 4a 75 4b 71 69 54 66 43 WBzSQXgYHiVEEvc+RFZznF/QJuKqiTfC
16bd00 30 4c 69 32 31 61 38 53 74 4b 6c 44 4a 75 33 51 7a 37 64 67 39 4d 6d 45 41 4c 50 36 69 50 45 0a 0Li21a8StKlDJu3Qz7dg9MmEALP6iPE.
16bd20 53 55 37 6c 30 2b 6d 30 69 4b 73 4d 72 6d 4b 53 31 47 57 48 32 57 72 58 39 49 57 66 35 44 4d 69 SU7l0+m0iKsMrmKS1GWH2WrX9IWf5DMi
16bd40 4a 61 58 6c 79 44 4f 36 77 38 64 42 33 46 2f 47 61 73 77 41 44 6d 30 79 71 4c 61 48 4e 67 42 69 JaXlyDO6w8dB3F/GaswADm0yqLaHNgBi
16bd60 64 35 73 65 48 7a 54 4c 6b 44 78 34 0a 69 48 51 46 36 33 6e 31 6b 33 46 6c 79 70 33 48 61 78 67 d5seHzTLkDx4.iHQF63n1k3Flyp3Haxg
16bd80 74 50 56 78 4f 35 39 58 34 50 7a 46 39 6a 34 66 73 43 69 49 76 49 2b 6e 2b 75 33 33 4a 34 50 54 tPVxO59X4PzF9j4fsCiIvI+n+u33J4PT
16bda0 73 36 33 7a 45 73 4d 4d 74 59 72 57 61 63 64 61 78 61 75 6a 73 32 65 33 56 0a 63 75 79 2b 56 77 s63zEsMMtYrWacdaxaujs2e3V.cuy+Vw
16bdc0 48 4f 42 56 57 66 33 74 46 67 69 42 43 7a 41 67 4d 42 41 41 47 6a 4e 6a 41 30 4d 41 38 47 41 31 HOBVWf3tFgiBCzAgMBAAGjNjA0MA8GA1
16bde0 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 45 51 59 44 56 52 30 4f 42 41 6f 45 43 45 UdEwEB/wQFMAMBAf8wEQYDVR0OBAoECE
16be00 52 71 6c 57 64 56 0a 65 52 46 50 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 RqlWdV.eRFPMA4GA1UdDwEB/wQEAwIBB
16be20 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 56 64 52 55 30 jANBgkqhkiG9w0BAQUFAAOCAQEAVdRU0
16be40 56 6c 49 58 4c 4f 54 68 61 71 2f 59 79 2f 6b 67 4d 34 30 0a 6f 7a 52 69 50 76 62 59 37 6d 65 49 VlIXLOThaq/Yy/kgM40.ozRiPvbY7meI
16be60 4d 51 51 44 62 77 76 55 42 2f 74 4f 64 51 2f 54 4c 74 50 41 46 38 66 47 4b 4f 77 47 44 52 45 6b MQQDbwvUB/tOdQ/TLtPAF8fGKOwGDREk
16be80 44 67 36 6c 58 62 2b 4d 73 68 4f 57 63 64 7a 55 7a 67 34 4e 43 6d 67 79 62 4c 6c 42 4d 52 6d 72 Dg6lXb+MshOWcdzUzg4NCmgybLlBMRmr
16bea0 0a 73 51 64 37 54 5a 6a 54 58 4c 44 52 38 4b 64 43 6f 4c 58 45 6a 71 2f 2b 38 54 2f 30 37 30 39 .sQd7TZjTXLDR8KdCoLXEjq/+8T/0709
16bec0 47 41 48 62 72 41 76 76 35 6e 64 4a 41 6c 73 65 49 4f 72 69 66 45 58 6e 7a 67 47 57 6f 76 52 2f GAHbrAvv5ndJAlseIOrifEXnzgGWovR/
16bee0 54 65 49 47 67 55 55 77 33 74 4b 5a 64 0a 4a 58 44 52 5a 73 6c 6f 2b 53 34 52 46 47 6a 78 56 4a TeIGgUUw3tKZd.JXDRZslo+S4RFGjxVJ
16bf00 67 49 72 43 61 53 44 39 36 4a 6e 74 54 36 73 33 6b 72 30 71 4e 35 31 4f 79 4c 72 49 64 54 61 45 gIrCaSD96JntT6s3kr0qN51OyLrIdTaE
16bf20 4a 4d 55 56 46 30 48 68 73 6e 4c 75 50 31 48 79 6c 30 54 65 32 76 39 2b 47 53 0a 6d 59 48 6f 76 JMUVF0HhsnLuP1Hyl0Te2v9+GS.mYHov
16bf40 6a 72 48 46 31 44 32 74 38 62 38 6d 37 43 4b 61 39 61 49 41 35 47 50 42 6e 63 36 68 51 4c 64 6d jrHF1D2t8b8m7CKa9aIA5GPBnc6hQLdm
16bf60 4e 56 44 65 44 2f 47 4d 42 57 73 6d 32 76 4c 56 37 65 4a 55 59 73 36 36 4d 6d 45 44 4e 75 78 55 NVDeD/GMBWsm2vLV7eJUYs66MmEDNuxU
16bf80 43 41 4b 47 6b 71 36 0a 61 68 71 39 37 42 76 49 78 59 53 61 7a 51 3d 3d 0a 2d 2d 2d 2d 2d 45 4e CAKGkq6.ahq97BvIxYSazQ==.-----EN
16bfa0 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 57 43 41 20 52 6f 6f 74 20 43 65 D.CERTIFICATE-----..TWCA.Root.Ce
16bfc0 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d rtification.Authority.==========
16bfe0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 =======================.-----BEG
16c000 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 65 7a 43 43 41 6d 4f 67 IN.CERTIFICATE-----.MIIDezCCAmOg
16c020 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 66 AwIBAgIBATANBgkqhkiG9w0BAQUFADBf
16c040 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 55 56 7a 45 53 4d 42 41 47 41 31 55 45 43 67 77 4a MQswCQYDVQQGEwJUVzESMBAGA1UECgwJ
16c060 0a 56 45 46 4a 56 30 46 4f 4c 55 4e 42 4d 52 41 77 44 67 59 44 56 51 51 4c 44 41 64 53 62 32 39 .VEFJV0FOLUNBMRAwDgYDVQQLDAdSb29
16c080 30 49 45 4e 42 4d 53 6f 77 4b 41 59 44 56 51 51 44 44 43 46 55 56 30 4e 42 49 46 4a 76 62 33 51 0IENBMSowKAYDVQQDDCFUV0NBIFJvb3Q
16c0a0 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 0a 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 gQ2VydGlmaWNh.dGlvbiBBdXRob3JpdH
16c0c0 6b 77 48 68 63 4e 4d 44 67 77 4f 44 49 34 4d 44 63 79 4e 44 4d 7a 57 68 63 4e 4d 7a 41 78 4d 6a kwHhcNMDgwODI4MDcyNDMzWhcNMzAxMj
16c0e0 4d 78 4d 54 55 31 4f 54 55 35 57 6a 42 66 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 55 56 MxMTU1OTU5WjBfMQswCQYDVQQG.EwJUV
16c100 7a 45 53 4d 42 41 47 41 31 55 45 43 67 77 4a 56 45 46 4a 56 30 46 4f 4c 55 4e 42 4d 52 41 77 44 zESMBAGA1UECgwJVEFJV0FOLUNBMRAwD
16c120 67 59 44 56 51 51 4c 44 41 64 53 62 32 39 30 49 45 4e 42 4d 53 6f 77 4b 41 59 44 56 51 51 44 44 gYDVQQLDAdSb290IENBMSowKAYDVQQDD
16c140 43 46 55 56 30 4e 42 0a 49 46 4a 76 62 33 51 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 CFUV0NB.IFJvb3QgQ2VydGlmaWNhdGlv
16c160 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 biBBdXRob3JpdHkwggEiMA0GCSqGSIb3
16c180 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 0a 41 6f 49 42 41 51 43 77 66 6e 4b DQEBAQUAA4IBDwAwggEK.AoIBAQCwfnK
16c1a0 34 70 41 4f 55 35 71 66 65 43 54 69 52 53 68 46 41 68 36 64 38 57 57 51 55 65 37 55 52 45 4e 33 4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3
16c1c0 2b 76 39 58 41 75 31 62 69 68 53 58 30 4e 58 49 50 2b 46 50 51 51 65 46 45 41 63 4b 30 48 4d 4d +v9XAu1bihSX0NXIP+FPQQeFEAcK0HMM
16c1e0 78 0a 51 68 5a 48 68 54 4d 69 64 72 49 4b 62 77 2f 6c 4a 56 42 50 68 59 61 2b 76 35 67 75 45 47 x.QhZHhTMidrIKbw/lJVBPhYa+v5guEG
16c200 63 65 76 68 45 46 68 67 57 51 78 46 6e 51 66 48 67 51 73 49 42 63 74 2b 48 48 4b 33 58 4c 66 4a cevhEFhgWQxFnQfHgQsIBct+HHK3XLfJ
16c220 2b 75 74 64 47 64 49 7a 64 6a 70 39 78 43 0a 6f 69 32 53 42 42 74 51 77 58 75 34 50 68 76 4a 56 +utdGdIzdjp9xC.oi2SBBtQwXu4PhvJV
16c240 67 53 4c 4c 31 4b 62 72 61 6c 57 36 63 48 2f 72 61 6c 59 68 7a 43 32 67 66 65 58 52 66 77 5a 56 gSLL1KbralW6cH/ralYhzC2gfeXRfwZV
16c260 7a 73 72 62 2b 52 48 39 4a 6c 46 2f 68 33 78 2b 4a 65 6a 69 42 30 33 48 46 79 50 0a 34 48 59 6c zsrb+RH9JlF/h3x+JejiB03HFyP.4HYl
16c280 6d 6c 44 34 6f 46 54 2f 52 4a 42 32 49 39 49 79 78 73 4f 72 42 72 2f 38 2b 37 2f 7a 72 58 32 53 mlD4oFT/RJB2I9IyxsOrBr/8+7/zrX2S
16c2a0 59 67 4a 62 4b 64 4d 31 6f 35 4f 61 51 32 52 67 58 62 4c 36 4d 76 38 37 42 4b 39 4e 51 47 72 35 YgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5
16c2c0 78 2b 50 76 49 2f 31 72 0a 79 2b 55 50 69 7a 67 4e 37 67 72 38 2f 67 2b 59 6e 7a 41 78 33 57 78 x+PvI/1r.y+UPizgN7gr8/g+YnzAx3Wx
16c2e0 53 5a 66 6d 4c 67 62 34 69 34 52 78 59 41 37 71 52 47 34 6b 48 41 67 4d 42 41 41 47 6a 51 6a 42 SZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjB
16c300 41 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 0a 42 6a 41 50 42 67 4e 56 48 52 AMA4GA1UdDwEB/wQEAwIB.BjAPBgNVHR
16c320 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 52 71 4f 46 MBAf8EBTADAQH/MB0GA1UdDgQWBBRqOF
16c340 73 6d 6a 64 36 4c 57 76 4a 50 65 6c 53 44 47 52 6a 6a 43 44 57 6d 75 6a 41 4e 42 67 6b 71 68 6b smjd6LWvJPelSDGRjjCDWmujANBgkqhk
16c360 69 47 0a 39 77 30 42 41 51 55 46 41 41 4f 43 41 51 45 41 50 4e 56 33 50 64 72 66 69 62 71 48 44 iG.9w0BAQUFAAOCAQEAPNV3PdrfibqHD
16c380 41 68 55 61 69 42 51 6b 72 36 77 51 54 32 35 4a 6d 53 44 43 69 2f 6f 51 4d 43 58 4b 43 65 43 4d AhUaiBQkr6wQT25JmSDCi/oQMCXKCeCM
16c3a0 45 72 4a 6b 2f 39 71 35 36 59 41 66 34 6c 43 0a 6d 74 59 52 35 56 50 4f 4c 38 7a 79 32 67 58 45 ErJk/9q56YAf4lC.mtYR5VPOL8zy2gXE
16c3c0 2f 75 4a 51 78 44 71 47 66 63 7a 61 66 68 41 4a 4f 35 49 31 4b 6c 4f 79 2f 75 73 72 42 64 6c 73 /uJQxDqGfczafhAJO5I1KlOy/usrBdls
16c3e0 58 65 62 51 37 39 4e 71 5a 70 34 56 4b 49 56 36 36 49 49 41 72 42 36 6e 43 57 6c 57 0a 51 74 4e XebQ79NqZp4VKIV66IIArB6nCWlW.QtN
16c400 6f 55 52 69 2b 56 4a 71 2f 52 45 47 36 53 62 34 67 75 6d 6c 63 37 72 68 33 7a 63 35 73 48 36 32 oURi+VJq/REG6Sb4gumlc7rh3zc5sH62
16c420 44 6c 68 68 39 44 72 55 55 4f 59 54 78 4b 4f 6b 74 6f 35 35 37 48 6e 70 79 57 6f 4f 7a 65 57 2f Dlhh9DrUUOYTxKOkto557HnpyWoOzeW/
16c440 76 74 50 7a 51 43 71 56 59 0a 54 30 62 66 2b 32 31 35 57 66 4b 45 49 6c 4b 75 44 38 7a 37 66 44 vtPzQCqVY.T0bf+215WfKEIlKuD8z7fD
16c460 76 6e 61 73 70 48 59 63 4e 36 2b 4e 4f 53 42 42 2b 34 49 49 54 68 4e 6c 51 57 78 30 44 65 4f 34 vnaspHYcN6+NOSBB+4IIThNlQWx0DeO4
16c480 70 7a 33 4e 2f 47 43 55 7a 66 37 4e 72 2f 31 46 4e 43 6f 63 6e 79 0a 59 68 30 69 67 7a 79 58 78 pz3N/GCUzf7Nr/1FNCocny.Yh0igzyXx
16c4a0 66 6b 5a 59 69 65 73 5a 53 4c 58 30 7a 7a 47 35 59 36 79 55 38 78 4a 7a 72 77 77 2f 6e 73 4f 4d fkZYiesZSLX0zzG5Y6yU8xJzrww/nsOM
16c4c0 35 44 37 37 64 49 55 6b 52 38 48 72 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 5D77dIUkR8Hrw==.-----END.CERTIFI
16c4e0 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 65 63 75 72 69 74 79 20 43 6f 6d 6d 75 6e 69 63 61 74 69 6f CATE-----..Security.Communicatio
16c500 6e 20 52 6f 6f 74 43 41 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d n.RootCA2.======================
16c520 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
16c540 2d 2d 2d 2d 0a 4d 49 49 44 64 7a 43 43 41 6c 2b 67 41 77 49 42 41 67 49 42 41 44 41 4e 42 67 6b ----.MIIDdzCCAl+gAwIBAgIBADANBgk
16c560 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 64 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a qhkiG9w0BAQsFADBdMQswCQYDVQQGEwJ
16c580 4b 55 44 45 6c 4d 43 4d 47 41 31 55 45 43 68 4d 63 0a 55 30 56 44 54 30 30 67 56 48 4a 31 63 33 KUDElMCMGA1UEChMc.U0VDT00gVHJ1c3
16c5a0 51 67 55 33 6c 7a 64 47 56 74 63 79 42 44 54 79 34 73 54 46 52 45 4c 6a 45 6e 4d 43 55 47 41 31 QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1
16c5c0 55 45 43 78 4d 65 55 32 56 6a 64 58 4a 70 64 48 6b 67 51 32 39 74 62 58 56 75 61 57 4e 68 0a 64 UECxMeU2VjdXJpdHkgQ29tbXVuaWNh.d
16c5e0 47 6c 76 62 69 42 53 62 32 39 30 51 30 45 79 4d 42 34 58 44 54 41 35 4d 44 55 79 4f 54 41 31 4d GlvbiBSb290Q0EyMB4XDTA5MDUyOTA1M
16c600 44 41 7a 4f 56 6f 58 44 54 49 35 4d 44 55 79 4f 54 41 31 4d 44 41 7a 4f 56 6f 77 58 54 45 4c 4d DAzOVoXDTI5MDUyOTA1MDAzOVowXTELM
16c620 41 6b 47 41 31 55 45 42 68 4d 43 0a 53 6c 41 78 4a 54 41 6a 42 67 4e 56 42 41 6f 54 48 46 4e 46 AkGA1UEBhMC.SlAxJTAjBgNVBAoTHFNF
16c640 51 30 39 4e 49 46 52 79 64 58 4e 30 49 46 4e 35 63 33 52 6c 62 58 4d 67 51 30 38 75 4c 45 78 55 Q09NIFRydXN0IFN5c3RlbXMgQ08uLExU
16c660 52 43 34 78 4a 7a 41 6c 42 67 4e 56 42 41 73 54 48 6c 4e 6c 59 33 56 79 0a 61 58 52 35 49 45 4e RC4xJzAlBgNVBAsTHlNlY3Vy.aXR5IEN
16c680 76 62 57 31 31 62 6d 6c 6a 59 58 52 70 62 32 34 67 55 6d 39 76 64 45 4e 42 4d 6a 43 43 41 53 49 vbW11bmljYXRpb24gUm9vdENBMjCCASI
16c6a0 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f wDQYJKoZIhvcNAQEBBQADggEPADCCAQo
16c6c0 43 67 67 45 42 0a 41 4e 41 56 4f 56 4b 78 55 72 4f 36 78 56 6d 43 78 46 31 53 72 6a 70 44 5a 59 CggEB.ANAVOVKxUrO6xVmCxF1SrjpDZY
16c6e0 42 4c 78 2f 4b 57 76 4e 73 32 6c 39 61 6d 5a 49 79 6f 58 76 44 6a 43 68 7a 33 33 35 63 39 53 36 BLx/KWvNs2l9amZIyoXvDjChz335c9S6
16c700 37 32 58 65 77 68 74 55 47 72 7a 62 6c 2b 64 70 2b 2b 0a 2b 54 34 32 4e 4b 41 37 77 66 59 78 45 72XewhtUGrzbl+dp++.+T42NKA7wfYxE
16c720 55 56 30 6b 7a 31 58 67 4d 58 35 69 5a 6e 4b 35 61 74 71 31 4c 58 61 51 5a 41 51 77 64 62 57 51 UV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQ
16c740 6f 6e 43 76 2f 51 34 45 70 56 4d 56 41 58 33 4e 75 52 46 67 33 73 55 5a 64 62 63 44 45 33 52 0a onCv/Q4EpVMVAX3NuRFg3sUZdbcDE3R.
16c760 33 6e 34 4d 71 7a 76 45 46 62 34 36 56 71 5a 61 62 33 5a 70 55 71 6c 36 75 63 6a 72 61 70 70 64 3n4MqzvEFb46VqZab3ZpUql6ucjrappd
16c780 55 74 41 74 43 6d 73 31 46 67 6b 51 68 4e 42 71 79 6a 6f 47 41 44 64 48 35 48 35 58 54 7a 2b 4c UtAtCms1FgkQhNBqyjoGADdH5H5XTz+L
16c7a0 36 32 65 34 69 4b 72 46 76 6c 4e 56 0a 73 70 48 45 66 62 6d 77 68 52 6b 47 65 43 37 62 59 52 72 62e4iKrFvlNV.spHEfbmwhRkGeC7bYRr
16c7c0 36 68 66 56 4b 6b 61 48 6e 46 74 57 4f 6f 6a 6e 66 6c 4c 68 77 48 79 67 2f 69 2f 78 41 58 6d 4f 6hfVKkaHnFtWOojnflLhwHyg/i/xAXmO
16c7e0 44 50 49 4d 71 47 70 6c 72 7a 39 35 5a 61 6a 76 38 62 78 62 58 48 2f 31 4b 0a 45 4f 74 4f 67 68 DPIMqGplrz95Zajv8bxbXH/1K.EOtOgh
16c800 59 36 72 43 63 4d 55 2f 47 74 31 53 53 77 61 77 4e 51 77 53 30 38 46 74 31 45 4e 43 63 61 64 66 Y6rCcMU/Gt1SSwawNQwS08Ft1ENCcadf
16c820 73 43 41 77 45 41 41 61 4e 43 4d 45 41 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 41 71 46 71 58 sCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqX
16c840 64 6c 42 5a 68 38 0a 51 49 48 34 44 35 63 73 4f 50 45 4b 37 44 7a 50 4d 41 34 47 41 31 55 64 44 dlBZh8.QIH4D5csOPEK7DzPMA4GA1UdD
16c860 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 wEB/wQEAwIBBjAPBgNVHRMBAf8EBTADA
16c880 51 48 2f 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 0a 43 77 55 41 41 34 49 42 41 51 42 4d QH/MA0GCSqGSIb3DQEB.CwUAA4IBAQBM
16c8a0 4f 71 4e 45 72 4c 6c 46 73 63 65 54 66 73 67 4c 43 6b 4c 66 5a 4f 6f 63 37 6c 6c 73 43 4c 71 4a OqNErLlFsceTfsgLCkLfZOoc7llsCLqJ
16c8c0 58 32 72 4b 53 70 57 65 65 6f 38 48 78 64 70 46 63 6f 4a 78 44 6a 72 53 7a 47 2b 6e 74 4b 45 6a X2rKSpWeeo8HxdpFcoJxDjrSzG+ntKEj
16c8e0 0a 75 2f 59 6b 6e 38 73 58 2f 6f 79 6d 7a 73 4c 53 32 38 79 4e 2f 48 48 38 41 79 6e 42 62 46 30 .u/Ykn8sX/oymzsLS28yN/HH8AynBbF0
16c900 7a 58 32 53 32 5a 54 75 4a 62 78 68 32 65 50 58 63 6f 6b 67 66 47 54 2b 4f 6b 2b 76 78 2b 68 66 zX2S2ZTuJbxh2ePXcokgfGT+Ok+vx+hf
16c920 75 7a 55 37 6a 42 42 4a 56 31 75 58 6b 0a 33 66 73 2b 42 58 7a 69 48 56 37 47 70 37 79 58 54 32 uzU7jBBJV1uXk.3fs+BXziHV7Gp7yXT2
16c940 67 36 39 65 6b 75 43 6b 4f 32 72 31 64 63 59 6d 68 38 74 2f 32 6a 69 6f 53 67 72 47 4b 2b 4b 77 g69ekuCkO2r1dcYmh8t/2jioSgrGK+Kw
16c960 6d 48 4e 50 42 71 41 62 75 62 4b 56 59 38 2f 67 41 33 7a 79 4e 73 38 55 36 71 0a 74 6e 52 47 45 mHNPBqAbubKVY8/gA3zyNs8U6q.tnRGE
16c980 6d 79 52 37 6a 54 56 37 4a 71 52 35 30 53 2b 6b 44 46 79 31 55 6b 43 39 67 4c 6c 39 42 2f 72 66 myR7jTV7JqR50S+kDFy1UkC9gLl9B/rf
16c9a0 4e 6d 57 56 61 6e 2f 37 49 72 35 6d 55 66 2f 4e 56 6f 43 71 67 54 4c 69 6c 75 48 63 53 6d 52 76 NmWVan/7Ir5mUf/NVoCqgTLiluHcSmRv
16c9c0 61 53 30 65 67 32 39 0a 6d 76 56 58 49 77 41 48 49 52 63 2f 53 6a 6e 52 42 55 6b 4c 70 37 59 33 aS0eg29.mvVXIwAHIRc/SjnRBUkLp7Y3
16c9e0 67 61 56 64 6a 4b 6f 7a 58 6f 45 6f 66 4b 64 39 4a 2b 73 41 72 6f 30 33 0a 2d 2d 2d 2d 2d 45 4e gaVdjKozXoEofKd9J+sAro03.-----EN
16ca00 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 45 43 2d 41 43 43 0a 3d 3d 3d 3d 3d D.CERTIFICATE-----..EC-ACC.=====
16ca20 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 =.-----BEGIN.CERTIFICATE-----.MI
16ca40 49 46 56 6a 43 43 42 44 36 67 41 77 49 42 41 67 49 51 37 69 73 39 36 39 51 68 33 68 53 6f 59 71 IFVjCCBD6gAwIBAgIQ7is969Qh3hSoYq
16ca60 77 45 38 39 33 45 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 38 7a wE893EATANBgkqhkiG9w0BAQUFADCB8z
16ca80 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 52 56 4d 78 4f 7a 41 35 42 67 4e 56 42 41 6f 54 4d ELMAkGA1UE.BhMCRVMxOzA5BgNVBAoTM
16caa0 6b 46 6e 5a 57 35 6a 61 57 45 67 51 32 46 30 59 57 78 68 62 6d 45 67 5a 47 55 67 51 32 56 79 64 kFnZW5jaWEgQ2F0YWxhbmEgZGUgQ2Vyd
16cac0 47 6c 6d 61 57 4e 68 59 32 6c 76 49 43 68 4f 53 55 59 67 55 53 30 77 0a 4f 44 41 78 4d 54 63 32 GlmaWNhY2lvIChOSUYgUS0w.ODAxMTc2
16cae0 4c 55 6b 70 4d 53 67 77 4a 67 59 44 56 51 51 4c 45 78 39 54 5a 58 4a 32 5a 57 6c 7a 49 46 42 31 LUkpMSgwJgYDVQQLEx9TZXJ2ZWlzIFB1
16cb00 59 6d 78 70 59 33 4d 67 5a 47 55 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 59 32 6c 76 4d 54 55 77 YmxpY3MgZGUgQ2VydGlmaWNhY2lvMTUw
16cb20 4d 77 59 44 0a 56 51 51 4c 45 79 78 57 5a 57 64 6c 64 53 42 6f 64 48 52 77 63 7a 6f 76 4c 33 64 MwYD.VQQLEyxWZWdldSBodHRwczovL3d
16cb40 33 64 79 35 6a 59 58 52 6a 5a 58 4a 30 4c 6d 35 6c 64 43 39 32 5a 58 4a 68 63 6e 4a 6c 62 43 41 3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCA
16cb60 6f 59 79 6b 77 4d 7a 45 31 4d 44 4d 47 41 31 55 45 0a 43 78 4d 73 53 6d 56 79 59 58 4a 78 64 57 oYykwMzE1MDMGA1UE.CxMsSmVyYXJxdW
16cb80 6c 68 49 45 56 75 64 47 6c 30 59 58 52 7a 49 47 52 6c 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 57 lhIEVudGl0YXRzIGRlIENlcnRpZmljYW
16cba0 4e 70 62 79 42 44 59 58 52 68 62 47 46 75 5a 58 4d 78 44 7a 41 4e 42 67 4e 56 42 41 4d 54 0a 42 NpbyBDYXRhbGFuZXMxDzANBgNVBAMT.B
16cbc0 6b 56 44 4c 55 46 44 51 7a 41 65 46 77 30 77 4d 7a 41 78 4d 44 63 79 4d 7a 41 77 4d 44 42 61 46 kVDLUFDQzAeFw0wMzAxMDcyMzAwMDBaF
16cbe0 77 30 7a 4d 54 41 78 4d 44 63 79 4d 6a 55 35 4e 54 6c 61 4d 49 48 7a 4d 51 73 77 43 51 59 44 56 w0zMTAxMDcyMjU5NTlaMIHzMQswCQYDV
16cc00 51 51 47 45 77 4a 46 55 7a 45 37 0a 4d 44 6b 47 41 31 55 45 43 68 4d 79 51 57 64 6c 62 6d 4e 70 QQGEwJFUzE7.MDkGA1UEChMyQWdlbmNp
16cc20 59 53 42 44 59 58 52 68 62 47 46 75 59 53 42 6b 5a 53 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 6a YSBDYXRhbGFuYSBkZSBDZXJ0aWZpY2Fj
16cc40 61 57 38 67 4b 45 35 4a 52 69 42 52 4c 54 41 34 4d 44 45 78 4e 7a 59 74 0a 53 53 6b 78 4b 44 41 aW8gKE5JRiBRLTA4MDExNzYt.SSkxKDA
16cc60 6d 42 67 4e 56 42 41 73 54 48 31 4e 6c 63 6e 5a 6c 61 58 4d 67 55 48 56 69 62 47 6c 6a 63 79 42 mBgNVBAsTH1NlcnZlaXMgUHVibGljcyB
16cc80 6b 5a 53 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 6a 61 57 38 78 4e 54 41 7a 42 67 4e 56 42 41 73 kZSBDZXJ0aWZpY2FjaW8xNTAzBgNVBAs
16cca0 54 4c 46 5a 6c 0a 5a 32 56 31 49 47 68 30 64 48 42 7a 4f 69 38 76 64 33 64 33 4c 6d 4e 68 64 47 TLFZl.Z2V1IGh0dHBzOi8vd3d3LmNhdG
16ccc0 4e 6c 63 6e 51 75 62 6d 56 30 4c 33 5a 6c 63 6d 46 79 63 6d 56 73 49 43 68 6a 4b 54 41 7a 4d 54 NlcnQubmV0L3ZlcmFycmVsIChjKTAzMT
16cce0 55 77 4d 77 59 44 56 51 51 4c 45 79 78 4b 5a 58 4a 68 0a 63 6e 46 31 61 57 45 67 52 57 35 30 61 UwMwYDVQQLEyxKZXJh.cnF1aWEgRW50a
16cd00 58 52 68 64 48 4d 67 5a 47 55 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 59 32 6c 76 49 45 4e 68 64 XRhdHMgZGUgQ2VydGlmaWNhY2lvIENhd
16cd20 47 46 73 59 57 35 6c 63 7a 45 50 4d 41 30 47 41 31 55 45 41 78 4d 47 52 55 4d 74 51 55 4e 44 0a GFsYW5lczEPMA0GA1UEAxMGRUMtQUND.
16cd40 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
16cd60 4d 49 49 42 43 67 4b 43 41 51 45 41 73 79 4c 48 54 2b 4b 58 51 70 57 49 52 34 4e 41 39 68 30 58 MIIBCgKCAQEAsyLHT+KXQpWIR4NA9h0X
16cd80 38 34 4e 7a 4a 42 35 52 38 35 69 4b 0a 77 35 4b 34 2f 30 43 51 42 58 43 48 59 4d 6b 41 71 62 57 84NzJB5R85iK.w5K4/0CQBXCHYMkAqbW
16cda0 55 5a 52 6b 69 46 52 66 43 51 32 78 6d 52 4a 6f 4e 42 44 34 35 62 36 56 4c 65 71 70 6a 74 34 70 UZRkiFRfCQ2xmRJoNBD45b6VLeqpjt4p
16cdc0 45 6e 64 6c 6a 6b 59 52 6d 34 43 67 50 75 6b 4c 6a 62 6f 37 33 46 43 65 54 0a 61 65 36 52 44 71 EndljkYRm4CgPukLjbo73FCeT.ae6RDq
16cde0 4e 66 44 72 48 72 5a 71 4a 79 54 78 49 54 68 6d 56 36 50 74 74 50 42 2f 53 6e 43 57 44 61 4f 6b NfDrHrZqJyTxIThmV6PttPB/SnCWDaOk
16ce00 4b 5a 78 37 4a 2f 73 78 61 56 48 4d 66 35 4e 4c 57 55 68 64 57 5a 58 71 42 49 6f 48 37 6e 46 32 KZx7J/sxaVHMf5NLWUhdWZXqBIoH7nF2
16ce20 57 34 6f 6e 57 34 0a 48 76 50 6c 51 6e 32 76 37 66 4f 4b 53 47 52 64 67 68 53 54 32 4d 44 6b 2f W4onW4.HvPlQn2v7fOKSGRdghST2MDk/
16ce40 37 4e 51 63 76 4a 32 39 72 4e 64 51 6c 42 35 30 4a 51 2b 61 77 77 41 76 74 68 72 44 6b 34 71 37 7NQcvJ29rNdQlB50JQ+awwAvthrDk4q7
16ce60 44 37 53 7a 49 4b 69 47 47 55 7a 45 33 65 65 6d 6c 30 61 0a 45 39 6a 44 32 7a 33 49 6c 33 72 75 D7SzIKiGGUzE3eeml0a.E9jD2z3Il3ru
16ce80 63 4f 32 6e 35 6e 7a 62 63 63 38 74 6c 47 4c 66 62 64 62 31 4f 4c 34 2f 70 59 55 4b 47 62 69 6f cO2n5nzbcc8tlGLfbdb1OL4/pYUKGbio
16cea0 32 41 6c 31 51 6e 44 45 36 75 2f 4c 44 73 67 30 71 42 49 69 6d 41 79 34 45 35 53 32 53 2b 7a 77 2Al1QnDE6u/LDsg0qBIimAy4E5S2S+zw
16cec0 0a 30 4a 44 6e 4a 77 49 44 41 51 41 42 6f 34 48 6a 4d 49 48 67 4d 42 30 47 41 31 55 64 45 51 51 .0JDnJwIDAQABo4HjMIHgMB0GA1UdEQQ
16cee0 57 4d 42 53 42 45 6d 56 6a 58 32 46 6a 59 30 42 6a 59 58 52 6a 5a 58 4a 30 4c 6d 35 6c 64 44 41 WMBSBEmVjX2FjY0BjYXRjZXJ0Lm5ldDA
16cf00 50 42 67 4e 56 48 52 4d 42 41 66 38 45 0a 42 54 41 44 41 51 48 2f 4d 41 34 47 41 31 55 64 44 77 PBgNVHRMBAf8E.BTADAQH/MA4GA1UdDw
16cf20 45 42 2f 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 6f 4d 4f 4c 52 4b EB/wQEAwIBBjAdBgNVHQ4EFgQUoMOLRK
16cf40 6f 33 70 55 57 2f 6c 34 42 61 30 66 46 34 6f 70 76 70 58 59 30 77 66 77 59 44 0a 56 52 30 67 42 o3pUW/l4Ba0fF4opvpXY0wfwYD.VR0gB
16cf60 48 67 77 64 6a 42 30 42 67 73 72 42 67 45 45 41 66 56 34 41 51 4d 42 43 6a 42 6c 4d 43 77 47 43 HgwdjB0BgsrBgEEAfV4AQMBCjBlMCwGC
16cf80 43 73 47 41 51 55 46 42 77 49 42 46 69 42 6f 64 48 52 77 63 7a 6f 76 4c 33 64 33 64 79 35 6a 59 CsGAQUFBwIBFiBodHRwczovL3d3dy5jY
16cfa0 58 52 6a 5a 58 4a 30 0a 4c 6d 35 6c 64 43 39 32 5a 58 4a 68 63 6e 4a 6c 62 44 41 31 42 67 67 72 XRjZXJ0.Lm5ldC92ZXJhcnJlbDA1Bggr
16cfc0 42 67 45 46 42 51 63 43 41 6a 41 70 47 69 64 57 5a 57 64 6c 64 53 42 6f 64 48 52 77 63 7a 6f 76 BgEFBQcCAjApGidWZWdldSBodHRwczov
16cfe0 4c 33 64 33 64 79 35 6a 59 58 52 6a 5a 58 4a 30 4c 6d 35 6c 0a 64 43 39 32 5a 58 4a 68 63 6e 4a L3d3dy5jYXRjZXJ0Lm5l.dC92ZXJhcnJ
16d000 6c 62 43 41 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 4b 42 lbCAwDQYJKoZIhvcNAQEFBQADggEBAKB
16d020 49 57 34 49 42 39 6b 31 49 75 44 6c 56 4e 5a 79 41 65 6c 4f 5a 31 56 72 2f 73 58 45 37 7a 44 6b IW4IB9k1IuDlVNZyAelOZ1Vr/sXE7zDk
16d040 4a 0a 6c 46 37 57 32 75 2b 2b 41 56 74 64 30 78 37 59 2f 58 31 50 7a 61 42 42 34 44 53 54 76 38 J.lF7W2u++AVtd0x7Y/X1PzaBB4DSTv8
16d060 76 69 68 70 77 33 6b 70 42 57 48 4e 7a 72 4b 51 58 6c 78 4a 37 48 4e 64 2b 4b 44 4d 33 46 49 55 vihpw3kpBWHNzrKQXlxJ7HNd+KDM3FIU
16d080 50 70 71 6f 6a 6c 4e 63 41 5a 51 6d 4e 61 0a 41 6c 36 6b 53 42 67 36 68 57 2f 63 6e 62 77 2f 6e PpqojlNcAZQmNa.Al6kSBg6hW/cnbw/n
16d0a0 5a 7a 42 68 37 68 36 59 51 6a 70 64 77 74 2f 63 4b 74 36 33 64 6d 58 4c 47 51 65 68 62 2b 38 64 ZzBh7h6YQjpdwt/cKt63dmXLGQehb+8d
16d0c0 4a 61 68 77 33 6f 53 37 41 77 61 62 6f 4d 4d 50 4f 68 79 52 70 2f 37 53 4e 56 65 0a 6c 2b 61 78 Jahw3oS7AwaboMMPOhyRp/7SNVe.l+ax
16d0e0 6f 66 6a 6b 37 30 59 6c 6c 4a 79 4a 32 32 6b 34 76 75 78 63 44 6c 62 48 5a 56 48 6c 55 49 69 49 ofjk70YllJyJ22k4vuxcDlbHZVHlUIiI
16d100 76 30 4c 56 4b 7a 33 6c 2b 62 71 65 4c 72 50 4b 39 48 4f 53 41 67 75 2b 54 47 62 72 49 50 36 35 v0LVKz3l+bqeLrPK9HOSAgu+TGbrIP65
16d120 79 37 57 5a 66 2b 61 32 0a 45 2f 72 4b 53 30 33 5a 37 6c 4e 47 42 6a 76 47 54 71 32 54 57 6f 46 y7WZf+a2.E/rKS03Z7lNGBjvGTq2TWoF
16d140 2b 62 43 70 4c 61 67 56 46 6a 50 49 68 70 44 47 51 68 32 78 6c 6e 4a 32 6c 59 4a 55 36 55 6e 2f +bCpLagVFjPIhpDGQh2xlnJ2lYJU6Un/
16d160 31 30 61 73 49 62 76 50 75 57 2f 6d 49 50 58 36 34 62 32 34 44 0a 35 45 49 3d 0a 2d 2d 2d 2d 2d 10asIbvPuW/mIPX64b24D.5EI=.-----
16d180 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 48 65 6c 6c 65 6e 69 63 20 41 END.CERTIFICATE-----..Hellenic.A
16d1a0 63 61 64 65 6d 69 63 20 61 6e 64 20 52 65 73 65 61 72 63 68 20 49 6e 73 74 69 74 75 74 69 6f 6e cademic.and.Research.Institution
16d1c0 73 20 52 6f 6f 74 43 41 20 32 30 31 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d s.RootCA.2011.==================
16d1e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
16d200 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d =====.-----BEGIN.CERTIFICATE----
16d220 2d 0a 4d 49 49 45 4d 54 43 43 41 78 6d 67 41 77 49 42 41 67 49 42 41 44 41 4e 42 67 6b 71 68 6b -.MIIEMTCCAxmgAwIBAgIBADANBgkqhk
16d240 69 47 39 77 30 42 41 51 55 46 41 44 43 42 6c 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 52 31 iG9w0BAQUFADCBlTELMAkGA1UEBhMCR1
16d260 49 78 52 44 42 43 42 67 4e 56 42 41 6f 54 0a 4f 30 68 6c 62 47 78 6c 62 6d 6c 6a 49 45 46 6a 59 IxRDBCBgNVBAoT.O0hlbGxlbmljIEFjY
16d280 57 52 6c 62 57 6c 6a 49 47 46 75 5a 43 42 53 5a 58 4e 6c 59 58 4a 6a 61 43 42 4a 62 6e 4e 30 61 WRlbWljIGFuZCBSZXNlYXJjaCBJbnN0a
16d2a0 58 52 31 64 47 6c 76 62 6e 4d 67 51 32 56 79 64 43 34 67 51 58 56 30 61 47 39 79 0a 61 58 52 35 XR1dGlvbnMgQ2VydC4gQXV0aG9y.aXR5
16d2c0 4d 55 41 77 50 67 59 44 56 51 51 44 45 7a 64 49 5a 57 78 73 5a 57 35 70 59 79 42 42 59 32 46 6b MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2Fk
16d2e0 5a 57 31 70 59 79 42 68 62 6d 51 67 55 6d 56 7a 5a 57 46 79 59 32 67 67 53 57 35 7a 64 47 6c 30 ZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0
16d300 64 58 52 70 62 32 35 7a 0a 49 46 4a 76 62 33 52 44 51 53 41 79 4d 44 45 78 4d 42 34 58 44 54 45 dXRpb25z.IFJvb3RDQSAyMDExMB4XDTE
16d320 78 4d 54 49 77 4e 6a 45 7a 4e 44 6b 31 4d 6c 6f 58 44 54 4d 78 4d 54 49 77 4d 54 45 7a 4e 44 6b xMTIwNjEzNDk1MloXDTMxMTIwMTEzNDk
16d340 31 4d 6c 6f 77 67 5a 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 0a 41 6b 64 53 4d 55 51 77 51 67 1MlowgZUxCzAJBgNVBAYT.AkdSMUQwQg
16d360 59 44 56 51 51 4b 45 7a 74 49 5a 57 78 73 5a 57 35 70 59 79 42 42 59 32 46 6b 5a 57 31 70 59 79 YDVQQKEztIZWxsZW5pYyBBY2FkZW1pYy
16d380 42 68 62 6d 51 67 55 6d 56 7a 5a 57 46 79 59 32 67 67 53 57 35 7a 64 47 6c 30 64 58 52 70 62 32 BhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb2
16d3a0 35 7a 0a 49 45 4e 6c 63 6e 51 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 54 46 41 4d 44 34 47 41 5z.IENlcnQuIEF1dGhvcml0eTFAMD4GA
16d3c0 31 55 45 41 78 4d 33 53 47 56 73 62 47 56 75 61 57 4d 67 51 57 4e 68 5a 47 56 74 61 57 4d 67 59 1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgY
16d3e0 57 35 6b 49 46 4a 6c 63 32 56 68 63 6d 4e 6f 0a 49 45 6c 75 63 33 52 70 64 48 56 30 61 57 39 75 W5kIFJlc2VhcmNo.IEluc3RpdHV0aW9u
16d400 63 79 42 53 62 32 39 30 51 30 45 67 4d 6a 41 78 4d 54 43 43 41 53 49 77 44 51 59 4a 4b 6f 5a 49 cyBSb290Q0EgMjAxMTCCASIwDQYJKoZI
16d420 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 0a 41 4b 6c hvcNAQEBBQADggEPADCCAQoCggEB.AKl
16d440 54 41 4f 4d 75 70 76 61 4f 2b 6d 44 59 4c 5a 55 2b 2b 43 77 71 56 45 37 4e 75 59 52 68 6c 46 68 TAOMupvaO+mDYLZU++CwqVE7NuYRhlFh
16d460 50 6a 7a 32 4c 35 45 50 7a 64 59 6d 4e 55 65 54 44 4e 39 4b 4b 69 45 31 35 48 72 63 53 33 55 4e Pjz2L5EPzdYmNUeTDN9KKiE15HrcS3UN
16d480 34 53 6f 71 53 35 74 64 49 0a 31 51 2b 6b 4f 69 6c 45 4e 62 67 48 39 6d 67 64 56 63 30 34 55 66 4SoqS5tdI.1Q+kOilENbgH9mgdVc04Uf
16d4a0 43 4d 4a 44 47 46 72 34 50 4a 66 65 6c 33 72 2b 30 61 65 35 30 58 2b 62 4f 64 4f 46 41 50 70 6c CMJDGFr4PJfel3r+0ae50X+bOdOFAPpl
16d4c0 70 35 6b 59 43 76 4e 36 36 6d 30 7a 48 37 74 53 59 4a 6e 54 78 61 0a 37 31 48 46 4b 39 2b 57 58 p5kYCvN66m0zH7tSYJnTxa.71HFK9+WX
16d4e0 65 73 79 48 67 4c 61 63 45 6e 73 62 67 7a 49 6d 6a 65 4e 39 2f 45 32 59 45 73 6d 4c 49 4b 65 30 esyHgLacEnsbgzImjeN9/E2YEsmLIKe0
16d500 48 6a 7a 44 51 39 6a 70 46 45 77 34 66 6b 72 4a 78 49 48 32 4f 71 39 47 47 4b 59 73 46 6b 33 66 HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3f
16d520 62 37 75 0a 38 79 42 52 51 6c 71 44 37 35 4f 36 61 52 58 78 59 70 32 66 6d 54 6d 43 6f 62 64 30 b7u.8yBRQlqD75O6aRXxYp2fmTmCobd0
16d540 4c 6f 76 55 78 51 74 37 4c 2f 44 49 43 74 6f 39 65 51 71 61 6b 78 79 6c 4b 48 4a 7a 6b 55 4f 61 LovUxQt7L/DICto9eQqakxylKHJzkUOa
16d560 70 39 46 4e 68 59 53 35 71 58 53 50 46 45 44 48 0a 33 4e 36 73 51 57 52 73 74 42 6d 62 41 6d 4e p9FNhYS5qXSPFEDH.3N6sQWRstBmbAmN
16d580 74 4a 47 53 50 52 4c 49 6c 36 73 35 64 64 41 78 6a 4d 6c 79 4e 68 2b 55 43 41 77 45 41 41 61 4f tJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaO
16d5a0 42 69 54 43 42 68 6a 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 0a 4d 41 BiTCBhjAPBgNVHRMBAf8EBTADAQH/.MA
16d5c0 73 47 41 31 55 64 44 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 70 70 sGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUpp
16d5e0 46 43 2f 52 4e 68 53 69 4f 65 43 4b 51 70 35 64 67 54 42 43 50 75 51 53 55 77 52 77 59 44 56 52 FC/RNhSiOeCKQp5dgTBCPuQSUwRwYDVR
16d600 30 65 42 45 41 77 50 71 41 38 0a 4d 41 57 43 41 79 35 6e 63 6a 41 46 67 67 4d 75 5a 58 55 77 42 0eBEAwPqA8.MAWCAy5ncjAFggMuZXUwB
16d620 6f 49 45 4c 6d 56 6b 64 54 41 47 67 67 51 75 62 33 4a 6e 4d 41 57 42 41 79 35 6e 63 6a 41 46 67 oIELmVkdTAGggQub3JnMAWBAy5ncjAFg
16d640 51 4d 75 5a 58 55 77 42 6f 45 45 4c 6d 56 6b 64 54 41 47 67 51 51 75 0a 62 33 4a 6e 4d 41 30 47 QMuZXUwBoEELmVkdTAGgQQu.b3JnMA0G
16d660 43 53 71 47 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 42 41 51 41 66 37 33 6c 42 34 58 74 75 CSqGSIb3DQEBBQUAA4IBAQAf73lB4Xtu
16d680 50 37 4b 4d 68 6a 64 43 53 6b 34 63 4e 78 36 4e 5a 72 6f 6b 67 63 6c 50 45 67 38 68 77 41 4f 58 P7KMhjdCSk4cNx6NZrokgclPEg8hwAOX
16d6a0 68 69 56 74 0a 58 64 4d 69 4b 61 68 73 6f 67 32 70 36 7a 30 47 57 35 6b 36 78 38 7a 44 6d 6a 52 hiVt.XdMiKahsog2p6z0GW5k6x8zDmjR
16d6c0 2f 71 77 37 49 54 68 7a 68 2b 75 54 63 7a 51 32 2b 76 79 54 2b 62 4f 64 72 77 67 33 49 42 70 35 /qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5
16d6e0 4f 6a 57 45 6f 70 6d 72 39 35 66 5a 69 36 68 67 38 0a 54 71 42 54 6e 62 49 36 6e 4f 75 6c 6e 4a OjWEopmr95fZi6hg8.TqBTnbI6nOulnJ
16d700 45 57 74 6b 32 43 34 41 77 46 53 4b 6c 73 39 63 7a 34 79 35 31 4a 74 50 41 43 70 66 31 77 41 2b EWtk2C4AwFSKls9cz4y51JtPACpf1wA+
16d720 32 4b 49 61 57 75 45 34 5a 4a 77 7a 4e 7a 76 6f 63 37 64 49 73 58 52 53 5a 4d 46 70 47 44 0a 2f 2KIaWuE4ZJwzNzvoc7dIsXRSZMFpGD./
16d740 6d 64 39 7a 55 31 6a 5a 2f 72 7a 41 78 4b 57 65 41 61 4e 73 57 66 74 6a 6a 2b 2b 6e 30 38 43 39 md9zU1jZ/rzAxKWeAaNsWftjj++n08C9
16d760 62 4d 4a 4c 2f 4e 4d 68 39 38 71 79 35 56 38 41 63 79 73 4e 6e 71 2f 6f 6e 4e 36 39 34 2f 42 74 bMJL/NMh98qy5V8AcysNnq/onN694/Bt
16d780 5a 71 68 46 4c 4b 50 4d 35 38 4e 0a 37 79 4c 63 5a 6e 75 45 76 55 55 58 42 6a 30 38 79 72 6c 33 ZqhFLKPM58N.7yLcZnuEvUUXBj08yrl3
16d7a0 4e 49 2f 4b 36 73 38 2f 4d 54 37 6a 69 4f 4f 41 53 53 58 49 6c 37 57 64 6d 70 6c 4e 73 44 7a 34 NI/K6s8/MT7jiOOASSXIl7WdmplNsDz4
16d7c0 53 67 43 62 5a 4e 32 66 4f 55 76 52 4a 39 65 34 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 SgCbZN2fOUvRJ9e4.-----END.CERTIF
16d7e0 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 41 63 74 61 6c 69 73 20 41 75 74 68 65 6e 74 69 63 61 74 69 ICATE-----..Actalis.Authenticati
16d800 6f 6e 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d on.Root.CA.=====================
16d820 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 =========.-----BEGIN.CERTIFICATE
16d840 2d 2d 2d 2d 2d 0a 4d 49 49 46 75 7a 43 43 41 36 4f 67 41 77 49 42 41 67 49 49 56 77 6f 52 6c 30 -----.MIIFuzCCA6OgAwIBAgIIVwoRl0
16d860 4c 45 34 38 77 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 77 61 7a 45 4c 4d 41 LE48wwDQYJKoZIhvcNAQELBQAwazELMA
16d880 6b 47 41 31 55 45 42 68 4d 43 53 56 51 78 44 6a 41 4d 0a 42 67 4e 56 42 41 63 4d 42 55 31 70 62 kGA1UEBhMCSVQxDjAM.BgNVBAcMBU1pb
16d8a0 47 46 75 4d 53 4d 77 49 51 59 44 56 51 51 4b 44 42 70 42 59 33 52 68 62 47 6c 7a 49 46 4d 75 63 GFuMSMwIQYDVQQKDBpBY3RhbGlzIFMuc
16d8c0 43 35 42 4c 69 38 77 4d 7a 4d 31 4f 44 55 79 4d 44 6b 32 4e 7a 45 6e 4d 43 55 47 41 31 55 45 0a C5BLi8wMzM1ODUyMDk2NzEnMCUGA1UE.
16d8e0 41 77 77 65 51 57 4e 30 59 57 78 70 63 79 42 42 64 58 52 6f 5a 57 35 30 61 57 4e 68 64 47 6c 76 AwweQWN0YWxpcyBBdXRoZW50aWNhdGlv
16d900 62 69 42 53 62 32 39 30 49 45 4e 42 4d 42 34 58 44 54 45 78 4d 44 6b 79 4d 6a 45 78 4d 6a 49 77 biBSb290IENBMB4XDTExMDkyMjExMjIw
16d920 4d 6c 6f 58 44 54 4d 77 4d 44 6b 79 0a 4d 6a 45 78 4d 6a 49 77 4d 6c 6f 77 61 7a 45 4c 4d 41 6b MloXDTMwMDky.MjExMjIwMlowazELMAk
16d940 47 41 31 55 45 42 68 4d 43 53 56 51 78 44 6a 41 4d 42 67 4e 56 42 41 63 4d 42 55 31 70 62 47 46 GA1UEBhMCSVQxDjAMBgNVBAcMBU1pbGF
16d960 75 4d 53 4d 77 49 51 59 44 56 51 51 4b 44 42 70 42 59 33 52 68 62 47 6c 7a 0a 49 46 4d 75 63 43 uMSMwIQYDVQQKDBpBY3RhbGlz.IFMucC
16d980 35 42 4c 69 38 77 4d 7a 4d 31 4f 44 55 79 4d 44 6b 32 4e 7a 45 6e 4d 43 55 47 41 31 55 45 41 77 5BLi8wMzM1ODUyMDk2NzEnMCUGA1UEAw
16d9a0 77 65 51 57 4e 30 59 57 78 70 63 79 42 42 64 58 52 6f 5a 57 35 30 61 57 4e 68 64 47 6c 76 62 69 weQWN0YWxpcyBBdXRoZW50aWNhdGlvbi
16d9c0 42 53 62 32 39 30 0a 49 45 4e 42 4d 49 49 43 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 BSb290.IENBMIICIjANBgkqhkiG9w0BA
16d9e0 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 45 41 70 38 62 45 70 53 6d 6b 4c QEFAAOCAg8AMIICCgKCAgEAp8bEpSmkL
16da00 4f 2f 6c 47 4d 57 77 55 4b 4e 76 55 54 75 66 43 6c 72 4a 0a 77 6b 67 34 43 73 49 63 6f 42 68 2f O/lGMWwUKNvUTufClrJ.wkg4CsIcoBh/
16da20 6b 62 57 48 75 55 41 2f 33 52 31 6f 48 77 69 44 31 53 30 65 69 4b 44 34 6a 31 61 50 62 5a 6b 43 kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkC
16da40 6b 70 41 57 31 56 38 49 62 49 6e 58 34 61 79 38 49 4d 4b 78 34 49 4e 52 69 6d 6c 4e 41 4a 5a 61 kpAW1V8IbInX4ay8IMKx4INRimlNAJZa
16da60 0a 62 79 2f 41 52 48 36 6a 44 75 53 52 7a 56 6a 75 33 50 76 48 48 6b 56 48 33 53 65 35 43 41 47 .by/ARH6jDuSRzVju3PvHHkVH3Se5CAG
16da80 66 70 69 45 64 39 55 45 74 4c 30 7a 39 4b 4b 33 67 69 71 30 69 74 46 5a 6c 6a 6f 5a 55 6a 35 4e fpiEd9UEtL0z9KK3giq0itFZljoZUj5N
16daa0 44 4b 64 34 35 52 6e 69 6a 4d 43 4f 36 0a 7a 66 42 39 45 31 66 41 58 64 4b 44 61 30 68 4d 78 4b DKd45RnijMCO6.zfB9E1fAXdKDa0hMxK
16dac0 75 66 67 46 70 62 4f 72 33 4a 70 79 49 2f 67 43 63 7a 57 77 36 33 69 67 78 64 42 7a 63 49 79 32 ufgFpbOr3JpyI/gCczWw63igxdBzcIy2
16dae0 7a 53 65 6b 63 69 52 44 58 46 7a 4d 77 75 6a 74 30 71 37 62 64 39 5a 67 31 66 0a 59 56 45 69 56 zSekciRDXFzMwujt0q7bd9Zg1f.YVEiV
16db00 52 76 6a 52 75 50 6a 50 64 41 31 59 70 72 62 72 78 54 49 57 36 48 4d 69 52 76 68 4d 43 62 38 6f RvjRuPjPdA1YprbrxTIW6HMiRvhMCb8o
16db20 4a 73 66 67 61 64 48 48 77 54 72 6f 7a 6d 53 42 70 2b 5a 30 37 2f 54 36 6b 39 51 6e 42 6e 2b 6c JsfgadHHwTrozmSBp+Z07/T6k9QnBn+l
16db40 6f 63 65 50 47 58 32 0a 6f 78 67 6b 67 34 59 51 35 31 51 2b 71 44 70 32 4a 45 2b 42 49 63 58 6a ocePGX2.oxgkg4YQ51Q+qDp2JE+BIcXj
16db60 44 77 4c 34 6b 35 52 48 49 4c 76 2b 31 41 37 54 61 4c 6e 64 78 48 71 45 67 75 4e 54 56 48 6e 64 DwL4k5RHILv+1A7TaLndxHqEguNTVHnd
16db80 32 35 7a 53 38 67 65 62 4c 72 61 38 50 75 32 46 62 65 38 6c 0a 45 66 4b 58 47 6b 4a 68 39 30 71 25zS8gebLra8Pu2Fbe8l.EfKXGkJh90q
16dba0 58 36 49 75 78 45 41 66 36 5a 59 47 79 6f 6a 6e 50 39 7a 7a 2f 47 50 76 47 38 56 71 4c 57 65 49 X6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeI
16dbc0 43 72 48 75 53 30 45 34 55 54 31 6c 46 39 67 78 65 4b 46 2b 77 36 44 39 46 7a 38 2b 76 6d 32 2f CrHuS0E4UT1lF9gxeKF+w6D9Fz8+vm2/
16dbe0 37 0a 68 4e 4e 33 57 70 56 76 72 4a 53 45 6e 75 36 38 77 45 71 50 53 70 50 34 52 43 48 69 4d 55 7.hNN3WpVvrJSEnu68wEqPSpP4RCHiMU
16dc00 56 68 55 45 34 51 32 4f 4d 31 66 45 77 5a 74 4e 34 46 76 36 4d 47 6e 38 69 31 7a 65 51 66 31 78 VhUE4Q2OM1fEwZtN4Fv6MGn8i1zeQf1x
16dc20 63 47 44 58 71 56 64 46 55 4e 61 42 72 38 0a 45 42 74 69 5a 4a 31 74 34 4a 57 67 77 35 51 48 56 cGDXqVdFUNaBr8.EBtiZJ1t4JWgw5QHV
16dc40 77 30 55 35 72 30 46 2b 37 69 66 35 74 2b 4c 34 73 62 6e 66 70 62 32 55 38 57 41 4e 46 41 6f 57 w0U5r0F+7if5t+L4sbnfpb2U8WANFAoW
16dc60 50 41 53 55 48 45 58 4d 4c 72 6d 65 47 4f 38 39 4c 4b 74 6d 79 75 79 2f 75 45 35 0a 6a 46 36 36 PASUHEXMLrmeGO89LKtmyuy/uE5.jF66
16dc80 43 79 43 55 33 6e 75 44 75 50 2f 6a 56 6f 32 33 45 65 6b 37 6a 50 4b 78 77 56 32 64 70 41 74 4d CyCU3nuDuP/jVo23Eek7jPKxwV2dpAtM
16dca0 4b 39 6d 79 47 50 57 31 6e 30 73 43 41 77 45 41 41 61 4e 6a 4d 47 45 77 48 51 59 44 56 52 30 4f K9myGPW1n0sCAwEAAaNjMGEwHQYDVR0O
16dcc0 42 42 59 45 46 46 4c 59 0a 69 44 72 49 6e 33 68 6d 37 59 6e 7a 65 7a 68 77 6c 4d 6b 43 41 6a 62 BBYEFFLY.iDrIn3hm7YnzezhwlMkCAjb
16dce0 51 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 77 59 44 56 52 30 QMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0
16dd00 6a 42 42 67 77 46 6f 41 55 55 74 69 49 4f 73 69 66 65 47 62 74 0a 69 66 4e 37 4f 48 43 55 79 51 jBBgwFoAUUtiIOsifeGbt.ifN7OHCUyQ
16dd20 49 43 4e 74 41 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 30 47 43 53 ICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCS
16dd40 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 49 43 41 51 41 4c 65 33 4b 48 77 47 43 6d 53 55 qGSIb3DQEBCwUAA4ICAQALe3KHwGCmSU
16dd60 79 49 0a 57 4f 59 64 69 50 63 55 5a 45 69 6d 32 46 67 4b 44 6b 38 54 4e 64 38 31 48 64 54 74 42 yI.WOYdiPcUZEim2FgKDk8TNd81HdTtB
16dd80 6a 48 49 67 54 35 71 31 64 30 37 47 6a 4c 75 6b 44 30 52 30 69 37 30 6a 73 4e 6a 4c 69 4e 6d 73 jHIgT5q1d07GjLukD0R0i70jsNjLiNms
16dda0 47 65 2b 62 37 62 41 45 7a 6c 67 71 71 49 30 0a 4a 5a 4e 31 55 74 36 6e 6e 61 30 4f 68 34 6c 53 Ge+b7bAEzlgqqI0.JZN1Ut6nna0Oh4lS
16ddc0 63 57 6f 57 50 42 6b 64 67 2f 69 61 4b 57 57 2b 39 44 2b 61 32 66 44 7a 57 6f 63 68 63 59 42 4e cWoWPBkdg/iaKWW+9D+a2fDzWochcYBN
16dde0 79 2b 41 34 6d 7a 2b 37 2b 75 41 77 54 63 2b 47 30 32 55 51 47 52 6a 52 6c 77 4b 78 0a 4b 33 4a y+A4mz+7+uAwTc+G02UQGRjRlwKx.K3J
16de00 43 61 4b 79 67 76 55 35 61 32 68 69 2f 61 35 69 42 30 50 32 61 76 6c 34 56 53 4d 30 52 46 62 6e CaKygvU5a2hi/a5iB0P2avl4VSM0RFbn
16de20 41 4b 56 79 30 36 49 6a 33 50 6a 61 75 74 32 4c 39 48 6d 4c 65 63 48 67 51 48 45 68 62 32 72 79 AKVy06Ij3Pjaut2L9HmLecHgQHEhb2ry
16de40 6b 4f 4c 70 6e 37 56 55 2b 0a 58 6c 66 66 31 41 4e 41 54 49 47 6b 30 6b 39 6a 70 77 6c 43 43 52 kOLpn7VU+.Xlff1ANATIGk0k9jpwlCCR
16de60 54 38 41 4b 6e 43 67 48 4e 50 4c 73 42 41 32 52 46 37 53 4f 70 36 41 73 44 54 36 79 67 42 4a 6c T8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJl
16de80 68 30 77 63 42 7a 49 6d 32 54 6c 66 30 35 66 62 73 71 34 2f 61 43 0a 34 79 79 58 58 30 34 66 6b h0wcBzIm2Tlf05fbsq4/aC.4yyXX04fk
16dea0 5a 54 36 2f 69 79 6a 32 48 59 61 75 45 32 79 4f 45 2b 62 2b 68 31 49 59 48 6b 6d 34 76 50 39 71 ZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9q
16dec0 64 43 61 36 48 43 50 53 58 72 57 35 62 30 4b 44 74 73 74 38 34 32 2f 36 2b 4f 6b 66 63 76 48 6c dCa6HCPSXrW5b0KDtst842/6+OkfcvHl
16dee0 58 48 6f 0a 32 71 4e 38 78 63 4c 34 64 4a 49 45 47 34 61 73 70 43 4a 54 51 4c 61 73 2f 6b 78 32 XHo.2qN8xcL4dJIEG4aspCJTQLas/kx2
16df00 7a 2f 75 55 4d 73 41 31 6e 33 59 2f 62 75 57 51 62 71 43 6d 4a 71 4b 34 4c 4c 37 52 4b 34 58 39 z/uUMsA1n3Y/buWQbqCmJqK4LL7RK4X9
16df20 70 32 6a 49 75 67 45 72 73 57 78 30 48 62 68 7a 0a 6c 65 66 75 74 38 63 6c 38 41 42 4d 41 4c 4a p2jIugErsWx0Hbhz.lefut8cl8ABMALJ
16df40 2b 74 67 75 4c 48 50 50 41 55 4a 34 6c 75 65 41 49 33 6a 5a 6d 2f 7a 65 6c 30 62 74 55 5a 43 7a +tguLHPPAUJ4lueAI3jZm/zel0btUZCz
16df60 4a 4a 37 56 4c 6b 6e 35 6c 2f 39 4d 74 34 62 6c 4f 76 48 2b 6b 51 53 47 51 51 58 65 6d 0a 4f 52 JJ7VLkn5l/9Mt4blOvH+kQSGQQXem.OR
16df80 2f 71 6e 75 4f 66 30 47 5a 76 42 65 79 71 64 6e 36 2f 61 78 61 67 36 37 58 48 2f 4a 4a 55 4c 79 /qnuOf0GZvBeyqdn6/axag67XH/JJULy
16dfa0 73 52 4a 79 55 33 65 45 78 52 61 72 44 7a 7a 46 68 64 46 50 46 71 53 42 58 2f 77 67 65 32 73 59 sRJyU3eExRarDzzFhdFPFqSBX/wge2sY
16dfc0 30 50 6a 6c 78 51 52 72 4d 39 0a 76 77 47 59 54 37 4a 5a 56 45 63 2b 4e 48 74 34 62 56 61 54 4c 0PjlxQRrM9.vwGYT7JZVEc+NHt4bVaTL
16dfe0 6e 50 71 5a 69 68 34 7a 52 30 55 76 36 43 50 4c 79 36 34 4c 6f 37 79 46 49 72 4d 36 62 56 38 2b nPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+
16e000 32 79 64 44 4b 58 68 6c 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2ydDKXhlg==.-----END.CERTIFICATE
16e020 2d 2d 2d 2d 2d 0a 0a 54 72 75 73 74 69 73 20 46 50 53 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d -----..Trustis.FPS.Root.CA.=====
16e040 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 ==============.-----BEGIN.CERTIF
16e060 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 5a 7a 43 43 41 6b 2b 67 41 77 49 42 41 67 49 51 47 ICATE-----.MIIDZzCCAk+gAwIBAgIQG
16e080 78 2b 74 74 69 44 35 4a 4e 4d 32 61 2f 66 48 38 59 79 67 57 54 41 4e 42 67 6b 71 68 6b 69 47 39 x+ttiD5JNM2a/fH8YygWTANBgkqhkiG9
16e0a0 77 30 42 41 51 55 46 41 44 42 46 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 48 51 6a 45 59 w0BAQUFADBFMQswCQYDVQQG.EwJHQjEY
16e0c0 4d 42 59 47 41 31 55 45 43 68 4d 50 56 48 4a 31 63 33 52 70 63 79 42 4d 61 57 31 70 64 47 56 6b MBYGA1UEChMPVHJ1c3RpcyBMaW1pdGVk
16e0e0 4d 52 77 77 47 67 59 44 56 51 51 4c 45 78 4e 55 63 6e 56 7a 64 47 6c 7a 49 45 5a 51 55 79 42 53 MRwwGgYDVQQLExNUcnVzdGlzIEZQUyBS
16e100 62 32 39 30 0a 49 45 4e 42 4d 42 34 58 44 54 41 7a 4d 54 49 79 4d 7a 45 79 4d 54 51 77 4e 6c 6f b290.IENBMB4XDTAzMTIyMzEyMTQwNlo
16e120 58 44 54 49 30 4d 44 45 79 4d 54 45 78 4d 7a 59 31 4e 46 6f 77 52 54 45 4c 4d 41 6b 47 41 31 55 XDTI0MDEyMTExMzY1NFowRTELMAkGA1U
16e140 45 42 68 4d 43 52 30 49 78 47 44 41 57 42 67 4e 56 0a 42 41 6f 54 44 31 52 79 64 58 4e 30 61 58 EBhMCR0IxGDAWBgNV.BAoTD1RydXN0aX
16e160 4d 67 54 47 6c 74 61 58 52 6c 5a 44 45 63 4d 42 6f 47 41 31 55 45 43 78 4d 54 56 48 4a 31 63 33 MgTGltaXRlZDEcMBoGA1UECxMTVHJ1c3
16e180 52 70 63 79 42 47 55 46 4d 67 55 6d 39 76 64 43 42 44 51 54 43 43 41 53 49 77 44 51 59 4a 0a 4b RpcyBGUFMgUm9vdCBDQTCCASIwDQYJ.K
16e1a0 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 oZIhvcNAQEBBQADggEPADCCAQoCggEBA
16e1c0 4d 56 51 65 35 34 37 4e 64 44 66 78 49 7a 4e 6a 70 76 74 6f 38 41 32 6d 66 52 43 36 71 63 2b 67 MVQe547NdDfxIzNjpvto8A2mfRC6qc+g
16e1e0 49 4d 50 70 71 64 5a 68 38 6d 51 0a 52 55 4e 2b 41 4f 71 47 65 53 6f 44 76 54 30 33 6d 59 6c 6d IMPpqdZh8mQ.RUN+AOqGeSoDvT03mYlm
16e200 74 2b 57 4b 56 6f 61 54 6e 47 68 4c 61 41 53 4d 6b 35 4d 43 50 6a 44 53 4e 7a 6f 69 59 59 6b 63 t+WKVoaTnGhLaASMk5MCPjDSNzoiYYkc
16e220 68 55 35 39 6a 39 57 76 65 7a 58 32 66 69 68 48 69 54 48 63 44 6e 6c 6b 0a 48 35 6e 53 57 37 72 hU59j9WvezX2fihHiTHcDnlk.H5nSW7r
16e240 2b 66 32 43 2f 72 65 76 6e 50 44 67 70 61 69 2f 6c 6b 51 74 56 2f 2b 78 76 57 4e 55 74 79 64 35 +f2C/revnPDgpai/lkQtV/+xvWNUtyd5
16e260 4d 5a 6e 47 50 44 4e 63 45 32 67 66 6d 48 68 6a 6a 76 53 6b 43 71 50 6f 63 34 56 75 35 67 36 68 MZnGPDNcE2gfmHhjjvSkCqPoc4Vu5g6h
16e280 42 53 4c 77 61 0a 63 59 33 6e 59 75 55 74 73 75 76 66 66 4d 2f 62 71 31 72 4b 4d 66 46 4d 49 76 BSLwa.cY3nYuUtsuvffM/bq1rKMfFMIv
16e2a0 4d 46 45 2f 65 43 2b 58 4e 35 44 4c 37 58 53 78 7a 41 30 52 55 38 6b 30 46 6b 30 65 61 2b 49 78 MFE/eC+XN5DL7XSxzA0RU8k0Fk0ea+Ix
16e2c0 63 69 41 49 6c 65 48 32 75 6c 72 47 36 6e 53 34 7a 74 0a 6f 33 4c 6d 72 32 4e 4e 4c 34 58 53 46 ciAIleH2ulrG6nS4zt.o3Lmr2NNL4XSF
16e2e0 44 57 61 4c 6b 36 4d 36 6a 4b 59 4b 49 61 68 6b 51 6c 42 4f 72 54 68 34 2f 4c 36 38 4d 6b 4b 6f DWaLk6M6jKYKIahkQlBOrTh4/L68MkKo
16e300 6b 48 64 71 65 4d 44 78 34 67 56 4f 78 7a 55 47 70 54 58 6e 32 52 5a 45 6d 30 43 41 77 45 41 0a kHdqeMDx4gVOxzUGpTXn2RZEm0CAwEA.
16e320 41 61 4e 54 4d 46 45 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 66 AaNTMFEwDwYDVR0TAQH/BAUwAwEB/zAf
16e340 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 53 36 2b 6e 45 6c 65 59 74 58 51 53 55 68 68 67 74 78 BgNVHSMEGDAWgBS6+nEleYtXQSUhhgtx
16e360 36 37 4a 6b 44 6f 73 68 5a 7a 41 64 0a 42 67 4e 56 48 51 34 45 46 67 51 55 75 76 70 78 4a 58 6d 67JkDoshZzAd.BgNVHQ4EFgQUuvpxJXm
16e380 4c 56 30 45 6c 49 59 59 4c 63 65 75 79 5a 41 36 4c 49 57 63 77 44 51 59 4a 4b 6f 5a 49 68 76 63 LV0ElIYYLceuyZA6LIWcwDQYJKoZIhvc
16e3a0 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 48 35 59 2f 2f 30 31 47 58 32 63 0a 47 45 2b 65 73 43 NAQEFBQADggEBAH5Y//01GX2c.GE+esC
16e3c0 75 38 6a 6f 77 55 2f 79 79 67 32 6b 64 62 77 2b 2b 42 4c 61 38 46 36 6e 52 49 57 2f 4d 2b 54 67 u8jowU/yyg2kdbw++BLa8F6nRIW/M+Tg
16e3e0 66 48 62 63 57 7a 6b 38 38 69 4e 56 79 32 50 33 55 6e 58 77 6d 57 7a 61 44 2b 76 6b 41 4d 58 42 fHbcWzk88iNVy2P3UnXwmWzaD+vkAMXB
16e400 4a 56 2b 4a 4f 43 0a 79 69 6e 70 58 6a 39 57 56 34 73 34 4e 76 64 46 47 6b 77 6f 7a 5a 35 42 75 JV+JOC.yinpXj9WV4s4NvdFGkwozZ5Bu
16e420 4f 31 57 54 49 53 6b 51 4d 69 34 73 4b 55 72 61 58 41 45 61 73 50 34 31 42 49 79 2b 51 37 44 73 O1WTISkQMi4sKUraXAEasP41BIy+Q7Ds
16e440 64 77 79 68 45 51 73 62 38 74 47 44 2b 70 6d 51 51 39 50 0a 38 56 69 6c 70 67 30 4e 44 32 48 65 dwyhEQsb8tGD+pmQQ9P.8Vilpg0ND2He
16e460 70 5a 35 64 66 57 57 68 50 42 66 6e 71 46 56 4f 37 36 44 48 37 63 5a 45 66 31 54 31 6f 2b 43 50 pZ5dfWWhPBfnqFVO76DH7cZEf1T1o+CP
16e480 38 48 78 56 49 6f 38 70 74 6f 47 6a 34 57 31 4f 4c 42 75 41 5a 2b 79 74 49 4a 38 4d 59 6d 48 56 8HxVIo8ptoGj4W1OLBuAZ+ytIJ8MYmHV
16e4a0 0a 6c 2f 39 44 37 53 33 42 32 6c 30 70 4b 6f 55 2f 72 47 58 75 68 67 38 46 6a 5a 42 66 33 2b 36 .l/9D7S3B2l0pKoU/rGXuhg8FjZBf3+6
16e4c0 66 39 4c 2f 75 48 66 75 59 35 48 2b 51 4b 34 52 34 45 41 35 73 53 56 50 76 46 56 74 6c 52 6b 70 f9L/uHfuY5H+QK4R4EA5sSVPvFVtlRkp
16e4e0 64 72 37 72 37 4f 6e 49 64 7a 66 59 6c 0a 69 42 36 58 7a 43 47 63 4b 51 45 4e 5a 65 74 58 32 66 dr7r7OnIdzfYl.iB6XzCGcKQENZetX2f
16e500 4e 58 6c 72 74 49 7a 59 45 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d NXlrtIzYE=.-----END.CERTIFICATE-
16e520 2d 2d 2d 2d 0a 0a 53 74 61 72 74 43 6f 6d 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 ----..StartCom.Certification.Aut
16e540 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d hority.=========================
16e560 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d =======.-----BEGIN.CERTIFICATE--
16e580 2d 2d 2d 0a 4d 49 49 48 68 7a 43 43 42 57 2b 67 41 77 49 42 41 67 49 42 4c 54 41 4e 42 67 6b 71 ---.MIIHhzCCBW+gAwIBAgIBLTANBgkq
16e5a0 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 39 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4a hkiG9w0BAQsFADB9MQswCQYDVQQGEwJJ
16e5c0 54 44 45 57 4d 42 51 47 41 31 55 45 43 68 4d 4e 0a 55 33 52 68 63 6e 52 44 62 32 30 67 54 48 52 TDEWMBQGA1UEChMN.U3RhcnRDb20gTHR
16e5e0 6b 4c 6a 45 72 4d 43 6b 47 41 31 55 45 43 78 4d 69 55 32 56 6a 64 58 4a 6c 49 45 52 70 5a 32 6c kLjErMCkGA1UECxMiU2VjdXJlIERpZ2l
16e600 30 59 57 77 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 55 67 55 32 6c 6e 62 6d 6c 75 0a 5a 7a 0YWwgQ2VydGlmaWNhdGUgU2lnbmlu.Zz
16e620 45 70 4d 43 63 47 41 31 55 45 41 78 4d 67 55 33 52 68 63 6e 52 44 62 32 30 67 51 32 56 79 64 47 EpMCcGA1UEAxMgU3RhcnRDb20gQ2VydG
16e640 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 48 68 63 4e 4d 44 lmaWNhdGlvbiBBdXRob3JpdHkwHhcNMD
16e660 59 77 4f 54 45 33 4d 54 6b 30 0a 4e 6a 4d 33 57 68 63 4e 4d 7a 59 77 4f 54 45 33 4d 54 6b 30 4e YwOTE3MTk0.NjM3WhcNMzYwOTE3MTk0N
16e680 6a 4d 32 57 6a 42 39 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4a 54 44 45 57 4d 42 51 47 41 jM2WjB9MQswCQYDVQQGEwJJTDEWMBQGA
16e6a0 31 55 45 43 68 4d 4e 55 33 52 68 63 6e 52 44 62 32 30 67 54 48 52 6b 0a 4c 6a 45 72 4d 43 6b 47 1UEChMNU3RhcnRDb20gTHRk.LjErMCkG
16e6c0 41 31 55 45 43 78 4d 69 55 32 56 6a 64 58 4a 6c 49 45 52 70 5a 32 6c 30 59 57 77 67 51 32 56 79 A1UECxMiU2VjdXJlIERpZ2l0YWwgQ2Vy
16e6e0 64 47 6c 6d 61 57 4e 68 64 47 55 67 55 32 6c 6e 62 6d 6c 75 5a 7a 45 70 4d 43 63 47 41 31 55 45 dGlmaWNhdGUgU2lnbmluZzEpMCcGA1UE
16e700 41 78 4d 67 0a 55 33 52 68 63 6e 52 44 62 32 30 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c AxMg.U3RhcnRDb20gQ2VydGlmaWNhdGl
16e720 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 vbiBBdXRob3JpdHkwggIiMA0GCSqGSIb
16e740 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 0a 67 67 49 4b 41 6f 49 43 41 51 44 42 69 4e 3DQEBAQUAA4ICDwAw.ggIKAoICAQDBiN
16e760 73 4a 76 47 78 47 66 48 69 66 6c 58 75 31 4d 35 44 79 63 6d 4c 57 77 54 59 67 49 69 52 65 7a 75 sJvGxGfHiflXu1M5DycmLWwTYgIiRezu
16e780 6c 33 38 6b 4d 4b 6f 67 5a 6b 70 4d 79 4f 4e 76 67 34 35 69 50 77 62 6d 32 78 50 4e 31 79 0a 6f l38kMKogZkpMyONvg45iPwbm2xPN1y.o
16e7a0 34 55 63 6f 64 4d 39 74 44 4d 72 30 79 2b 76 2f 75 71 77 51 56 6c 6e 74 73 51 47 66 51 71 65 64 4UcodM9tDMr0y+v/uqwQVlntsQGfQqed
16e7c0 49 58 57 65 55 79 41 4e 33 72 66 4f 51 56 53 57 66 66 30 47 30 5a 44 70 4e 4b 46 68 64 4c 44 63 IXWeUyAN3rfOQVSWff0G0ZDpNKFhdLDc
16e7e0 66 4e 31 59 6a 53 36 4c 49 70 2f 0a 48 6f 2f 75 37 54 54 51 45 63 65 57 7a 56 49 39 75 6a 50 57 fN1YjS6LIp/.Ho/u7TTQEceWzVI9ujPW
16e800 33 55 33 65 43 7a 74 4b 53 35 2f 43 4a 69 2f 36 74 52 59 63 63 6a 56 33 79 6a 78 64 35 73 72 68 3U3eCztKS5/CJi/6tRYccjV3yjxd5srh
16e820 4a 6f 73 61 4e 6e 5a 63 41 64 74 30 46 43 58 2b 37 62 57 67 69 41 2f 64 0a 65 4d 6f 74 48 77 65 JosaNnZcAdt0FCX+7bWgiA/d.eMotHwe
16e840 58 4d 41 45 74 63 6e 6e 36 52 74 59 54 4b 71 69 35 70 71 75 44 53 52 33 6c 38 75 2f 64 35 41 47 XMAEtcnn6RtYTKqi5pquDSR3l8u/d5AG
16e860 4f 47 41 71 50 59 31 4d 57 68 57 4b 70 44 68 6b 36 7a 4c 56 6d 70 73 4a 72 64 41 66 6b 4b 2b 46 OGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F
16e880 32 50 72 52 74 0a 32 50 5a 45 34 58 4e 69 48 7a 76 45 76 71 42 54 56 69 56 73 55 51 6e 33 71 71 2PrRt.2PZE4XNiHzvEvqBTViVsUQn3qq
16e8a0 76 4b 76 33 62 39 62 5a 76 7a 6e 64 75 2f 50 57 61 38 44 46 61 71 72 35 68 49 6c 54 70 4c 33 36 vKv3b9bZvzndu/PWa8DFaqr5hIlTpL36
16e8c0 64 59 55 4e 6b 34 64 61 6c 62 36 6b 4d 4d 41 76 2b 5a 0a 36 2b 68 73 54 58 42 62 4b 57 57 63 33 dYUNk4dalb6kMMAv+Z.6+hsTXBbKWWc3
16e8e0 61 70 64 7a 4b 38 42 4d 65 77 4d 36 39 4b 4e 36 4f 71 63 65 2b 5a 75 39 79 64 6d 44 42 70 49 31 apdzK8BMewM69KN6Oqce+Zu9ydmDBpI1
16e900 32 35 43 34 7a 2f 65 49 54 35 37 34 51 31 77 2b 32 4f 71 71 47 77 61 56 4c 52 63 4a 58 72 4a 0a 25C4z/eIT574Q1w+2OqqGwaVLRcJXrJ.
16e920 6f 73 6d 4c 46 71 61 37 4c 48 34 58 58 67 56 4e 57 47 34 53 48 51 48 75 45 68 41 4e 78 6a 4a 2f osmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/
16e940 47 50 2f 38 39 50 72 4e 62 70 48 6f 4e 6b 6d 2b 47 6b 68 70 69 38 4b 57 54 52 6f 53 73 6d 6b 58 GP/89PrNbpHoNkm+Gkhpi8KWTRoSsmkX
16e960 77 51 71 51 31 76 70 35 49 6b 69 2f 0a 75 6e 74 70 2b 48 44 48 2b 6e 6f 33 32 4e 67 4e 30 6e 5a wQqQ1vp5Iki/.untp+HDH+no32NgN0nZ
16e980 50 56 2f 2b 51 74 2b 4f 52 30 74 33 76 77 6d 43 33 5a 7a 72 64 2f 71 71 63 38 4e 53 4c 66 33 49 PV/+Qt+OR0t3vwmC3Zzrd/qqc8NSLf3I
16e9a0 69 7a 73 61 66 6c 37 62 34 72 34 71 67 45 4b 6a 5a 2b 78 6a 47 74 72 56 63 0a 55 6a 79 4a 74 68 izsafl7b4r4qgEKjZ+xjGtrVc.UjyJth
16e9c0 6b 71 63 77 45 4b 44 77 4f 7a 45 6d 44 79 65 69 2b 42 32 36 4e 75 2f 79 59 77 6c 2f 57 4c 33 59 kqcwEKDwOzEmDyei+B26Nu/yYwl/WL3Y
16e9e0 6c 58 74 71 30 39 73 36 38 72 78 62 64 32 41 76 43 6c 31 69 75 61 68 68 51 71 63 76 62 6a 4d 34 lXtq09s68rxbd2AvCl1iuahhQqcvbjM4
16ea00 78 64 43 55 73 54 0a 33 37 75 4d 64 42 4e 53 53 77 49 44 41 51 41 42 6f 34 49 43 45 44 43 43 41 xdCUsT.37uMdBNSSwIDAQABo4ICEDCCA
16ea20 67 77 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 gwwDwYDVR0TAQH/BAUwAwEB/zAOBgNVH
16ea40 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 48 51 59 44 0a 56 52 30 4f 42 42 59 45 46 45 34 4c Q8BAf8EBAMCAQYwHQYD.VR0OBBYEFE4L
16ea60 37 78 71 6b 51 46 75 6c 46 32 6d 48 4d 4d 6f 30 61 45 50 51 51 61 37 79 4d 42 38 47 41 31 55 64 7xqkQFulF2mHMMo0aEPQQa7yMB8GA1Ud
16ea80 49 77 51 59 4d 42 61 41 46 45 34 4c 37 78 71 6b 51 46 75 6c 46 32 6d 48 4d 4d 6f 30 61 45 50 51 IwQYMBaAFE4L7xqkQFulF2mHMMo0aEPQ
16eaa0 0a 51 61 37 79 4d 49 49 42 57 67 59 44 56 52 30 67 42 49 49 42 55 54 43 43 41 55 30 77 67 67 46 .Qa7yMIIBWgYDVR0gBIIBUTCCAU0wggF
16eac0 4a 42 67 73 72 42 67 45 45 41 59 47 31 4e 77 45 42 41 54 43 43 41 54 67 77 4c 67 59 49 4b 77 59 JBgsrBgEEAYG1NwEBATCCATgwLgYIKwY
16eae0 42 42 51 55 48 41 67 45 57 49 6d 68 30 0a 64 48 41 36 4c 79 39 33 64 33 63 75 63 33 52 68 63 6e BBQUHAgEWImh0.dHA6Ly93d3cuc3Rhcn
16eb00 52 7a 63 32 77 75 59 32 39 74 4c 33 42 76 62 47 6c 6a 65 53 35 77 5a 47 59 77 4e 41 59 49 4b 77 Rzc2wuY29tL3BvbGljeS5wZGYwNAYIKw
16eb20 59 42 42 51 55 48 41 67 45 57 4b 47 68 30 64 48 41 36 4c 79 39 33 64 33 63 75 0a 63 33 52 68 63 YBBQUHAgEWKGh0dHA6Ly93d3cu.c3Rhc
16eb40 6e 52 7a 63 32 77 75 59 32 39 74 4c 32 6c 75 64 47 56 79 62 57 56 6b 61 57 46 30 5a 53 35 77 5a nRzc2wuY29tL2ludGVybWVkaWF0ZS5wZ
16eb60 47 59 77 67 63 38 47 43 43 73 47 41 51 55 46 42 77 49 43 4d 49 48 43 4d 43 63 57 49 46 4e 30 59 GYwgc8GCCsGAQUFBwICMIHCMCcWIFN0Y
16eb80 58 4a 30 49 45 4e 76 0a 62 57 31 6c 63 6d 4e 70 59 57 77 67 4b 46 4e 30 59 58 4a 30 51 32 39 74 XJ0IENv.bW1lcmNpYWwgKFN0YXJ0Q29t
16eba0 4b 53 42 4d 64 47 51 75 4d 41 4d 43 41 51 45 61 67 5a 5a 4d 61 57 31 70 64 47 56 6b 49 45 78 70 KSBMdGQuMAMCAQEagZZMaW1pdGVkIExp
16ebc0 59 57 4a 70 62 47 6c 30 65 53 77 67 63 6d 56 68 5a 43 42 30 0a 61 47 55 67 63 32 56 6a 64 47 6c YWJpbGl0eSwgcmVhZCB0.aGUgc2VjdGl
16ebe0 76 62 69 41 71 54 47 56 6e 59 57 77 67 54 47 6c 74 61 58 52 68 64 47 6c 76 62 6e 4d 71 49 47 39 vbiAqTGVnYWwgTGltaXRhdGlvbnMqIG9
16ec00 6d 49 48 52 6f 5a 53 42 54 64 47 46 79 64 45 4e 76 62 53 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 mIHRoZSBTdGFydENvbSBDZXJ0aWZpY2F
16ec20 30 0a 61 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 53 42 51 62 32 78 70 59 33 6b 67 59 58 0.aW9uIEF1dGhvcml0eSBQb2xpY3kgYX
16ec40 5a 68 61 57 78 68 59 6d 78 6c 49 47 46 30 49 47 68 30 64 48 41 36 4c 79 39 33 64 33 63 75 63 33 ZhaWxhYmxlIGF0IGh0dHA6Ly93d3cuc3
16ec60 52 68 63 6e 52 7a 63 32 77 75 59 32 39 74 0a 4c 33 42 76 62 47 6c 6a 65 53 35 77 5a 47 59 77 45 RhcnRzc2wuY29t.L3BvbGljeS5wZGYwE
16ec80 51 59 4a 59 49 5a 49 41 59 62 34 51 67 45 42 42 41 51 44 41 67 41 48 4d 44 67 47 43 57 43 47 53 QYJYIZIAYb4QgEBBAQDAgAHMDgGCWCGS
16eca0 41 47 47 2b 45 49 42 44 51 51 72 46 69 6c 54 64 47 46 79 64 45 4e 76 62 53 42 47 0a 63 6d 56 6c AGG+EIBDQQrFilTdGFydENvbSBG.cmVl
16ecc0 49 46 4e 54 54 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 46 31 64 47 68 76 IFNTTCBDZXJ0aWZpY2F0aW9uIEF1dGhv
16ece0 63 6d 6c 30 65 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 41 4f 43 41 67 45 41 cml0eTANBgkqhkiG9w0BAQsFAAOCAgEA
16ed00 6a 6f 2f 6e 33 4a 52 35 0a 66 50 47 46 66 35 39 4a 62 32 76 4b 58 66 75 4d 2f 67 54 46 77 57 4c jo/n3JR5.fPGFf59Jb2vKXfuM/gTFwWL
16ed20 52 66 55 4b 4b 76 46 4f 33 6c 41 4e 6d 4d 44 2b 78 35 77 71 6e 55 43 42 56 4a 58 39 32 65 68 51 RfUKKvFO3lANmMD+x5wqnUCBVJX92ehQ
16ed40 4e 36 77 51 4f 51 4f 59 2b 32 49 69 72 42 79 65 44 71 58 57 6d 0a 4e 33 50 48 2f 55 76 53 54 61 N6wQOQOY+2IirByeDqXWm.N3PH/UvSTa
16ed60 30 58 51 4d 68 47 76 6a 74 2f 55 66 7a 44 74 67 55 78 33 4d 32 46 49 6b 35 78 74 2f 4a 78 58 72 0XQMhGvjt/UfzDtgUx3M2FIk5xt/JxXr
16ed80 41 61 78 72 71 54 69 33 69 53 53 6f 58 34 65 41 2b 44 2f 69 2b 74 4c 50 66 6b 70 4c 73 74 30 4f AaxrqTi3iSSoX4eA+D/i+tLPfkpLst0O
16eda0 63 4e 0a 4f 72 67 2b 7a 76 5a 34 39 71 35 48 4a 4d 71 6a 4e 54 62 4f 78 38 61 48 6d 4e 72 73 2b cN.Org+zvZ49q5HJMqjNTbOx8aHmNrs+
16edc0 2b 6d 79 7a 69 65 62 69 4d 4d 45 6f 66 59 4c 57 57 69 76 79 64 73 51 44 30 33 32 5a 47 4e 63 70 +myziebiMMEofYLWWivydsQD032ZGNcp
16ede0 52 4a 76 6b 72 4b 54 6c 4d 65 49 46 77 36 54 0a 74 6e 35 69 69 35 42 2f 71 30 36 66 2f 4f 4e 31 RJvkrKTlMeIFw6T.tn5ii5B/q06f/ON1
16ee00 46 45 38 71 4d 74 39 62 44 65 44 31 65 35 4d 4e 71 36 48 50 68 2b 47 6c 42 45 58 6f 50 42 4b 6c FE8qMt9bDeD1e5MNq6HPh+GlBEXoPBKl
16ee20 43 63 57 77 30 62 64 54 38 32 41 55 75 6f 56 70 61 69 46 38 48 33 56 68 46 79 41 58 0a 65 32 77 CcWw0bdT82AUuoVpaiF8H3VhFyAX.e2w
16ee40 37 51 53 6c 63 34 61 78 61 30 63 32 4d 6d 2b 74 67 48 52 6e 73 39 2b 57 77 32 76 6c 35 47 4b 56 7QSlc4axa0c2Mm+tgHRns9+Ww2vl5GKV
16ee60 46 50 30 6c 44 56 39 4c 64 4a 4e 55 73 6f 2f 32 52 6a 53 65 31 35 65 73 55 42 70 70 4d 65 79 47 FP0lDV9LdJNUso/2RjSe15esUBppMeyG
16ee80 37 4f 71 30 77 42 68 6a 41 0a 32 4d 46 72 4c 48 39 5a 58 46 32 52 73 58 41 69 56 2b 75 4b 61 30 7Oq0wBhjA.2MFrLH9ZXF2RsXAiV+uKa0
16eea0 68 4b 31 51 38 70 37 4d 5a 41 77 43 2b 49 54 47 67 42 46 33 66 30 4a 42 6c 50 76 66 72 68 73 69 hK1Q8p7MZAwC+ITGgBF3f0JBlPvfrhsi
16eec0 41 68 53 39 30 61 32 43 6c 39 71 72 6a 65 56 4f 77 68 56 59 42 73 0a 48 76 55 77 79 4b 4d 51 35 AhS90a2Cl9qrjeVOwhVYBs.HvUwyKMQ5
16eee0 62 4c 6d 4b 68 51 78 77 34 55 74 6a 4a 69 78 68 6c 70 50 69 56 6b 74 75 63 66 33 48 4d 69 4b 66 bLmKhQxw4UtjJixhlpPiVktucf3HMiKf
16ef00 38 43 64 42 55 72 6d 51 6b 39 69 6f 32 30 70 70 42 2b 46 71 39 76 6c 67 63 69 74 4b 6a 31 4d 58 8CdBUrmQk9io20ppB+Fq9vlgcitKj1MX
16ef20 56 75 45 0a 4a 6e 48 45 68 56 35 78 4a 4d 71 6c 47 32 7a 59 59 64 4d 61 34 46 54 62 7a 72 71 70 VuE.JnHEhV5xJMqlG2zYYdMa4FTbzrqp
16ef40 4d 72 55 69 39 6e 4e 42 43 56 32 34 46 31 30 4f 44 35 6d 51 31 6b 66 61 62 77 6f 36 59 69 67 55 MrUi9nNBCV24F10OD5mQ1kfabwo6YigU
16ef60 5a 34 4c 5a 38 64 43 41 57 5a 76 4c 4d 64 69 62 0a 44 34 78 33 54 72 56 6f 69 76 4a 73 39 69 51 Z4LZ8dCAWZvLMdib.D4x3TrVoivJs9iQ
16ef80 4f 4c 57 78 77 78 58 50 52 33 68 54 51 63 59 2b 32 30 33 73 43 39 75 4f 34 31 41 6c 75 61 35 35 OLWxwxXPR3hTQcY+203sC9uO41Alua55
16efa0 31 68 44 6e 6d 66 79 57 6c 38 6b 67 41 77 4b 51 42 32 6a 38 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 1hDnmfyWl8kgAwKQB2j8=.-----END.C
16efc0 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 74 61 72 74 43 6f 6d 20 43 65 72 74 69 66 ERTIFICATE-----..StartCom.Certif
16efe0 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ication.Authority.G2.===========
16f000 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 ========================.-----BE
16f020 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 59 7a 43 43 41 30 75 GIN.CERTIFICATE-----.MIIFYzCCA0u
16f040 67 41 77 49 42 41 67 49 42 4f 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 gAwIBAgIBOzANBgkqhkiG9w0BAQsFADB
16f060 54 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4a 54 44 45 57 4d 42 51 47 41 31 55 45 43 68 4d TMQswCQYDVQQGEwJJTDEWMBQGA1UEChM
16f080 4e 0a 55 33 52 68 63 6e 52 44 62 32 30 67 54 48 52 6b 4c 6a 45 73 4d 43 6f 47 41 31 55 45 41 78 N.U3RhcnRDb20gTHRkLjEsMCoGA1UEAx
16f0a0 4d 6a 55 33 52 68 63 6e 52 44 62 32 30 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 MjU3RhcnRDb20gQ2VydGlmaWNhdGlvbi
16f0c0 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 67 0a 52 7a 49 77 48 68 63 4e 4d 54 41 77 4d 54 41 78 4d BBdXRob3JpdHkg.RzIwHhcNMTAwMTAxM
16f0e0 44 45 77 4d 44 41 78 57 68 63 4e 4d 7a 6b 78 4d 6a 4d 78 4d 6a 4d 31 4f 54 41 78 57 6a 42 54 4d DEwMDAxWhcNMzkxMjMxMjM1OTAxWjBTM
16f100 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 4a 54 44 45 57 4d 42 51 47 41 31 55 45 0a 43 68 4d 4e QswCQYDVQQGEwJJTDEWMBQGA1UE.ChMN
16f120 55 33 52 68 63 6e 52 44 62 32 30 67 54 48 52 6b 4c 6a 45 73 4d 43 6f 47 41 31 55 45 41 78 4d 6a U3RhcnRDb20gTHRkLjEsMCoGA1UEAxMj
16f140 55 33 52 68 63 6e 52 44 62 32 30 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 42 U3RhcnRDb20gQ2VydGlmaWNhdGlvbiBB
16f160 64 58 52 6f 62 33 4a 70 0a 64 48 6b 67 52 7a 49 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 dXRob3Jp.dHkgRzIwggIiMA0GCSqGSIb
16f180 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 32 69 54 5a 3DQEBAQUAA4ICDwAwggIKAoICAQC2iTZ
16f1a0 62 42 37 63 67 4e 72 32 43 75 2b 45 57 49 41 4f 56 65 71 38 4f 0a 6f 31 58 4a 4a 5a 6c 4b 78 64 bB7cgNr2Cu+EWIAOVeq8O.o1XJJZlKxd
16f1c0 42 57 51 59 65 51 54 53 46 67 70 42 53 48 4f 38 33 39 73 6a 36 30 5a 77 4e 71 37 65 45 50 53 38 BWQYeQTSFgpBSHO839sj60ZwNq7eEPS8
16f1e0 43 52 68 58 42 46 34 45 4b 65 33 69 6b 6a 31 41 45 4e 6f 42 42 35 75 4e 73 44 76 66 4f 70 4c 39 CRhXBF4EKe3ikj1AENoBB5uNsDvfOpL9
16f200 48 47 0a 34 41 2f 4c 6e 6f 6f 55 43 72 69 39 39 6c 5a 69 38 63 56 79 74 6a 49 6c 32 62 4c 7a 76 HG.4A/LnooUCri99lZi8cVytjIl2bLzv
16f220 57 58 46 44 53 78 75 31 5a 4a 76 47 49 73 41 51 52 53 43 62 30 41 67 4a 6e 6f 6f 44 2f 55 65 66 WXFDSxu1ZJvGIsAQRSCb0AgJnooD/Uef
16f240 79 66 33 6c 4c 45 33 50 62 66 48 6b 66 66 69 0a 41 65 7a 39 6c 49 6e 68 7a 47 37 54 4e 74 59 4b yf3lLE3PbfHkffi.Aez9lInhzG7TNtYK
16f260 47 58 6d 75 31 7a 53 43 5a 66 39 38 51 72 75 32 33 51 75 6d 4e 4b 39 4c 59 50 35 2f 51 30 6b 47 GXmu1zSCZf98Qru23QumNK9LYP5/Q0kG
16f280 69 34 78 44 75 46 62 79 32 58 38 68 51 78 66 71 70 30 69 56 41 58 56 31 36 69 75 6c 0a 51 35 58 i4xDuFby2X8hQxfqp0iVAXV16iul.Q5X
16f2a0 71 46 59 53 64 43 49 30 6d 62 6c 57 62 71 39 7a 53 4f 64 49 78 48 57 44 69 72 4d 78 57 52 53 54 qFYSdCI0mblWbq9zSOdIxHWDirMxWRST
16f2c0 31 48 46 53 72 37 6f 62 64 6c 6a 4b 46 2b 45 78 50 36 4a 56 32 74 67 58 64 4e 69 4e 6e 76 50 38 1HFSr7obdljKF+ExP6JV2tgXdNiNnvP8
16f2e0 56 34 73 6f 37 35 71 62 73 0a 4f 2b 77 6d 45 54 52 49 6a 66 61 41 4b 78 6f 6a 41 75 75 4b 48 44 V4so75qbs.O+wmETRIjfaAKxojAuuKHD
16f300 70 32 4b 6e 74 57 46 68 78 79 4b 72 4f 71 34 32 43 6c 41 4a 38 45 6d 2b 4a 76 48 68 52 59 57 36 p2KntWFhxyKrOq42ClAJ8Em+JvHhRYW6
16f320 56 73 69 31 67 38 77 37 70 4f 4f 6c 7a 33 34 5a 59 72 50 75 38 48 0a 76 4b 54 6c 58 63 78 4e 6e Vsi1g8w7pOOlz34ZYrPu8H.vKTlXcxNn
16f340 77 33 68 33 4b 71 37 34 57 34 61 37 49 2f 68 74 6b 78 4e 65 58 4a 64 46 7a 55 4c 48 64 66 42 52 w3h3Kq74W4a7I/htkxNeXJdFzULHdfBR
16f360 39 71 57 4a 4f 44 51 63 71 68 61 58 32 59 74 45 4e 77 76 4b 68 4f 75 4a 76 34 4b 48 42 6e 4d 30 9qWJODQcqhaX2YtENwvKhOuJv4KHBnM0
16f380 44 34 4c 0a 6e 4d 67 4a 4c 76 6c 62 6c 6e 70 48 6e 4f 6c 36 38 77 56 51 64 4a 56 7a 6e 6a 41 4a D4L.nMgJLvlblnpHnOl68wVQdJVznjAJ
16f3a0 38 35 65 43 58 75 61 50 4f 51 67 65 57 65 55 31 46 45 49 54 2f 77 43 63 39 37 36 71 55 4d 2f 69 85eCXuaPOQgeWeU1FEIT/wCc976qUM/i
16f3c0 55 55 6a 58 75 47 2b 76 2b 45 35 2b 4d 35 69 53 0a 46 47 49 36 64 57 50 50 65 2f 72 65 67 6a 75 UUjXuG+v+E5+M5iS.FGI6dWPPe/regju
16f3e0 70 75 7a 6e 69 78 4c 30 73 41 41 37 49 46 36 77 54 37 30 30 6c 6a 74 69 7a 6b 43 2b 70 32 69 6c puznixL0sAA7IF6wT700ljtizkC+p2il
16f400 39 48 61 39 30 4f 72 49 6e 77 4d 45 65 50 6e 57 6a 46 71 6d 76 65 69 4a 64 6e 78 4d 61 0a 7a 36 9Ha90OrInwMEePnWjFqmveiJdnxMa.z6
16f420 65 67 36 2b 4f 47 43 74 50 39 35 70 61 56 31 79 50 49 4e 39 33 45 66 4b 6f 32 72 4a 67 61 45 72 eg6+OGCtP95paV1yPIN93EfKo2rJgaEr
16f440 48 67 54 75 69 78 4f 2f 58 57 62 2f 45 77 31 77 49 44 41 51 41 42 6f 30 49 77 51 44 41 50 42 67 HgTuixO/XWb/Ew1wIDAQABo0IwQDAPBg
16f460 4e 56 48 52 4d 42 41 66 38 45 0a 42 54 41 44 41 51 48 2f 4d 41 34 47 41 31 55 64 44 77 45 42 2f NVHRMBAf8E.BTADAQH/MA4GA1UdDwEB/
16f480 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 53 38 57 30 51 47 75 74 48 wQEAwIBBjAdBgNVHQ4EFgQUS8W0QGutH
16f4a0 4c 4f 6c 48 47 56 75 52 6a 61 4a 68 77 55 4d 44 72 59 77 44 51 59 4a 0a 4b 6f 5a 49 68 76 63 4e LOlHGVuRjaJhwUMDrYwDQYJ.KoZIhvcN
16f4c0 41 51 45 4c 42 51 41 44 67 67 49 42 41 48 4e 58 50 79 7a 56 6c 54 4a 2b 4e 39 75 57 6b 75 73 5a AQELBQADggIBAHNXPyzVlTJ+N9uWkusZ
16f4e0 58 6e 35 54 35 30 48 73 45 62 5a 48 37 37 58 65 37 58 52 63 78 66 47 4f 53 65 44 38 62 70 6b 54 Xn5T50HsEbZH77Xe7XRcxfGOSeD8bpkT
16f500 7a 5a 2b 4b 0a 32 73 30 36 43 74 67 36 57 67 6b 2f 58 7a 54 51 4c 77 50 53 5a 68 30 61 76 5a 79 zZ+K.2s06Ctg6Wgk/XzTQLwPSZh0avZy
16f520 51 4e 38 67 4d 6a 67 64 61 6c 45 56 47 4b 75 61 2b 65 74 71 68 71 61 52 70 45 70 4b 77 66 54 62 QN8gMjgdalEVGKua+etqhqaRpEpKwfTb
16f540 55 52 49 66 58 55 66 45 70 59 39 5a 31 7a 52 62 6b 0a 4a 34 6b 64 2b 4d 49 79 53 50 33 62 6d 64 URIfXUfEpY9Z1zRbk.J4kd+MIySP3bmd
16f560 43 50 58 31 52 30 7a 4b 78 6e 4e 42 46 69 32 51 77 4b 4e 34 66 52 6f 78 64 49 6a 74 49 58 48 66 CPX1R0zKxnNBFi2QwKN4fRoxdIjtIXHf
16f580 62 58 2f 64 74 6c 36 2f 32 6f 31 50 58 57 54 36 52 62 64 65 6a 46 30 6d 43 79 32 77 6c 2b 0a 4a bX/dtl6/2o1PXWT6RbdejF0mCy2wl+.J
16f5a0 59 74 37 75 6c 4b 53 6e 6a 37 6f 78 58 65 68 50 4f 42 4b 63 32 74 68 7a 34 62 63 51 2f 2f 2f 49 Yt7ulKSnj7oxXehPOBKc2thz4bcQ///I
16f5c0 66 34 6a 58 53 52 4b 39 64 4e 74 44 32 49 45 42 56 65 43 32 6d 36 6b 4d 79 56 35 53 79 35 55 47 f4jXSRK9dNtD2IEBVeC2m6kMyV5Sy5UG
16f5e0 59 76 4d 4c 44 30 77 36 64 45 47 0a 2f 2b 67 79 52 72 36 31 4d 33 5a 33 71 41 46 64 6c 73 48 42 YvMLD0w6dEG./+gyRr61M3Z3qAFdlsHB
16f600 31 62 36 75 4a 63 44 4a 48 67 6f 4a 49 49 69 68 44 73 6e 7a 62 30 32 43 56 41 41 67 70 39 4b 50 1b6uJcDJHgoJIIihDsnzb02CVAAgp9KP
16f620 35 44 6c 55 46 79 36 4e 48 72 67 62 75 78 75 39 6d 6b 34 37 45 44 54 63 0a 6e 49 68 54 37 36 49 5DlUFy6NHrgbuxu9mk47EDTc.nIhT76I
16f640 78 57 31 68 50 6b 57 4c 49 77 70 71 61 7a 52 56 64 4f 4b 6e 57 76 76 67 54 74 5a 38 53 61 66 4a xW1hPkWLIwpqazRVdOKnWvvgTtZ8SafJ
16f660 51 59 71 7a 37 46 7a 66 30 37 72 68 31 5a 32 41 51 2b 34 4e 51 2b 55 53 31 64 5a 78 41 46 37 4c QYqz7Fzf07rh1Z2AQ+4NQ+US1dZxAF7L
16f680 2b 2f 58 6c 64 0a 62 6c 68 59 58 7a 44 38 41 4b 36 76 4d 38 45 4f 54 6d 79 36 70 36 61 68 66 7a +/Xld.blhYXzD8AK6vM8EOTmy6p6ahfz
16f6a0 4c 62 4f 4f 43 78 63 68 63 4b 4b 35 48 73 61 6d 4d 6d 37 59 6e 55 65 4d 78 30 48 67 58 34 61 2f LbOOCxchcKK5HsamMm7YnUeMx0HgX4a/
16f6c0 36 4d 61 6e 59 35 4b 61 35 6c 49 78 4b 56 43 43 49 63 0a 6c 38 35 62 42 75 34 4d 34 72 75 38 48 6ManY5Ka5lIxKVCCIc.l85bBu4M4ru8H
16f6e0 30 53 54 39 74 67 34 52 51 55 68 37 65 53 74 71 78 4b 32 41 36 52 43 4c 69 33 45 43 54 6f 44 5a 0ST9tg4RQUh7eStqxK2A6RCLi3ECToDZ
16f700 32 6d 45 6d 75 46 5a 6b 49 6f 6f 68 64 56 64 64 4c 48 52 44 69 42 59 6d 78 4f 6c 73 47 4f 6d 0a 2mEmuFZkIoohdVddLHRDiBYmxOlsGOm.
16f720 37 58 74 48 2f 55 56 56 4d 4b 54 75 6d 74 54 6d 34 6f 66 76 6d 4d 6b 79 67 68 45 70 49 72 77 41 7XtH/UVVMKTumtTm4ofvmMkyghEpIrwA
16f740 43 6a 46 65 4c 51 2f 41 6a 75 6c 72 73 6f 38 75 42 74 6a 52 6b 63 66 47 45 76 52 4d 2f 54 41 58 CjFeLQ/Ajulrso8uBtjRkcfGEvRM/TAX
16f760 77 38 48 61 4f 46 76 6a 71 65 72 6d 0a 6f 62 70 35 37 33 50 59 74 6c 4e 58 4c 66 62 51 34 64 64 w8HaOFvjqerm.obp573PYtlNXLfbQ4dd
16f780 49 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 42 75 79 I.-----END.CERTIFICATE-----..Buy
16f7a0 70 61 73 73 20 43 6c 61 73 73 20 32 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d pass.Class.2.Root.CA.===========
16f7c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 ============.-----BEGIN.CERTIFIC
16f7e0 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 57 54 43 43 41 30 47 67 41 77 49 42 41 67 49 42 41 6a 41 ATE-----.MIIFWTCCA0GgAwIBAgIBAjA
16f800 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 4f 4d 51 73 77 43 51 59 44 56 51 51 NBgkqhkiG9w0BAQsFADBOMQswCQYDVQQ
16f820 47 45 77 4a 4f 54 7a 45 64 4d 42 73 47 41 31 55 45 43 67 77 55 0a 51 6e 56 35 63 47 46 7a 63 79 GEwJOTzEdMBsGA1UECgwU.QnV5cGFzcy
16f840 42 42 55 79 30 35 4f 44 4d 78 4e 6a 4d 7a 4d 6a 63 78 49 44 41 65 42 67 4e 56 42 41 4d 4d 46 30 BBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0
16f860 4a 31 65 58 42 68 63 33 4d 67 51 32 78 68 63 33 4d 67 4d 69 42 53 62 32 39 30 49 45 4e 42 4d 42 J1eXBhc3MgQ2xhc3MgMiBSb290IENBMB
16f880 34 58 0a 44 54 45 77 4d 54 41 79 4e 6a 41 34 4d 7a 67 77 4d 31 6f 58 44 54 51 77 4d 54 41 79 4e 4X.DTEwMTAyNjA4MzgwM1oXDTQwMTAyN
16f8a0 6a 41 34 4d 7a 67 77 4d 31 6f 77 54 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 54 6b 38 78 48 jA4MzgwM1owTjELMAkGA1UEBhMCTk8xH
16f8c0 54 41 62 42 67 4e 56 42 41 6f 4d 46 45 4a 31 0a 65 58 42 68 63 33 4d 67 51 56 4d 74 4f 54 67 7a TAbBgNVBAoMFEJ1.eXBhc3MgQVMtOTgz
16f8e0 4d 54 59 7a 4d 7a 49 33 4d 53 41 77 48 67 59 44 56 51 51 44 44 42 64 43 64 58 6c 77 59 58 4e 7a MTYzMzI3MSAwHgYDVQQDDBdCdXlwYXNz
16f900 49 45 4e 73 59 58 4e 7a 49 44 49 67 55 6d 39 76 64 43 42 44 51 54 43 43 41 69 49 77 0a 44 51 59 IENsYXNzIDIgUm9vdCBDQTCCAiIw.DQY
16f920 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 49 50 41 44 43 43 41 67 6f 43 67 67 49 JKoZIhvcNAQEBBQADggIPADCCAgoCggI
16f940 42 41 4e 66 48 58 76 66 42 42 39 52 33 2b 30 4d 68 39 50 54 31 61 65 54 75 4d 67 48 62 6f 34 59 BANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Y
16f960 66 35 46 6b 4e 75 75 64 31 0a 67 31 4c 72 36 68 78 68 46 55 69 37 48 51 66 4b 6a 4b 36 77 33 4a f5FkNuud1.g1Lr6hxhFUi7HQfKjK6w3J
16f980 61 64 36 73 4e 67 6b 6f 61 43 4b 48 4f 63 56 67 62 2f 53 32 54 77 44 43 6f 33 53 62 58 6c 7a 77 ad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzw
16f9a0 78 38 37 76 46 4b 75 33 4d 77 5a 66 50 56 4c 34 4f 32 66 75 50 6e 0a 39 5a 36 72 59 50 6e 54 38 x87vFKu3MwZfPVL4O2fuPn.9Z6rYPnT8
16f9c0 5a 32 53 64 49 72 6b 48 4a 61 73 57 34 44 70 74 66 51 78 68 36 4e 52 2f 4d 64 2b 6f 57 2b 4f 55 Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU
16f9e0 33 66 55 6c 38 46 56 4d 35 49 2b 47 43 39 31 31 4b 32 47 53 63 75 56 72 31 51 47 62 4e 67 47 45 3fUl8FVM5I+GC911K2GScuVr1QGbNgGE
16fa00 34 31 62 0a 2f 2b 45 6d 47 56 6e 41 4a 4c 71 42 63 58 6d 51 52 46 42 6f 4a 4a 52 66 75 4c 4d 52 41b./+EmGVnAJLqBcXmQRFBoJJRfuLMR
16fa20 38 53 6c 42 59 61 4e 42 79 79 4d 32 31 63 48 78 4d 6c 41 51 54 6e 2f 30 68 70 50 73 68 4e 4f 4f 8SlBYaNByyM21cHxMlAQTn/0hpPshNOO
16fa40 76 45 75 2f 58 41 46 4f 42 7a 33 63 46 49 71 55 0a 43 71 54 71 63 2f 73 4c 55 65 67 54 42 78 6a vEu/XAFOBz3cFIqU.CqTqc/sLUegTBxj
16fa60 36 44 76 45 72 30 56 51 56 66 54 7a 68 39 37 51 5a 51 6d 64 69 58 6e 66 67 6f 6c 58 73 74 74 6c 6DvEr0VQVfTzh97QZQmdiXnfgolXsttl
16fa80 70 46 39 55 36 72 30 54 74 53 73 57 65 35 48 6f 6e 66 4f 56 31 31 36 72 4c 4a 65 66 66 0a 61 77 pF9U6r0TtSsWe5HonfOV116rLJeff.aw
16faa0 72 62 44 30 32 54 54 71 69 67 7a 58 73 75 38 6c 6b 42 61 72 63 4e 75 41 65 42 66 6f 73 34 47 7a rbD02TTqigzXsu8lkBarcNuAeBfos4Gz
16fac0 6a 6d 43 6c 65 5a 50 65 34 68 36 4b 50 31 44 42 62 64 69 2b 77 30 6a 70 77 71 48 41 41 56 46 34 jmCleZPe4h6KP1DBbdi+w0jpwqHAAVF4
16fae0 31 6f 67 39 4a 77 6e 78 67 49 0a 7a 52 46 6f 31 63 6c 72 55 73 33 45 52 6f 2f 63 74 66 50 59 56 1og9JwnxgI.zRFo1clrUs3ERo/ctfPYV
16fb00 33 4d 65 36 5a 51 35 42 4c 2f 54 33 6a 6a 65 74 46 50 73 61 52 79 69 66 73 53 50 35 42 74 77 72 3Me6ZQ5BL/T3jjetFPsaRyifsSP5Btwr
16fb20 66 4b 69 2b 66 76 33 46 6d 52 6d 61 5a 39 4a 55 61 4c 69 46 52 68 6e 0a 42 6b 70 2f 31 57 79 31 fKi+fv3FmRmaZ9JUaLiFRhn.Bkp/1Wy1
16fb40 54 62 4d 7a 34 47 48 72 58 62 37 70 6d 41 38 79 31 78 31 4c 50 43 35 61 41 56 4b 52 43 66 4c 66 TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf
16fb60 36 6f 33 59 42 6b 42 6a 71 68 48 6b 2f 73 4d 33 6e 68 52 53 50 2f 54 69 7a 50 4a 68 6b 39 48 39 6o3YBkBjqhHk/sM3nhRSP/TizPJhk9H9
16fb80 5a 32 76 58 0a 55 71 36 2f 61 4b 74 41 51 36 42 58 4e 56 4e 34 38 46 50 34 59 55 49 48 5a 4d 62 Z2vX.Uq6/aKtAQ6BXNVN48FP4YUIHZMb
16fba0 58 62 35 74 4d 4f 41 31 6a 72 47 4b 76 4e 6f 75 69 63 77 6f 4e 39 53 47 39 64 4b 70 4e 36 6e 49 Xb5tMOA1jrGKvNouicwoN9SG9dKpN6nI
16fbc0 44 53 64 76 48 58 78 31 69 59 38 66 39 33 5a 48 73 0a 4d 2b 37 31 62 62 52 75 4d 47 6a 65 79 4e DSdvHXx1iY8f93ZHs.M+71bbRuMGjeyN
16fbe0 59 6d 73 48 56 65 65 37 51 48 49 4a 69 68 64 6a 4b 34 54 57 78 50 41 67 4d 42 41 41 47 6a 51 6a YmsHVee7QHIJihdjK4TWxPAgMBAAGjQj
16fc00 42 41 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 0a 56 BAMA8GA1UdEwEB/wQFMAMBAf8wHQYD.V
16fc20 52 30 4f 42 42 59 45 46 4d 6d 41 64 2b 42 69 6b 6f 4c 31 52 70 7a 7a 75 76 64 4d 77 39 36 34 6f R0OBBYEFMmAd+BikoL1RpzzuvdMw964o
16fc40 36 30 35 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 4e 42 67 6b 71 68 605MA4GA1UdDwEB/wQEAwIBBjANBgkqh
16fc60 6b 69 47 39 77 30 42 41 51 73 46 0a 41 41 4f 43 41 67 45 41 55 31 38 68 39 62 71 77 4f 6c 49 35 kiG9w0BAQsF.AAOCAgEAU18h9bqwOlI5
16fc80 4c 4a 4b 77 62 41 44 4a 37 38 34 67 37 77 62 79 6c 70 37 70 70 48 52 2f 65 68 62 38 74 2f 57 32 LJKwbADJ784g7wbylp7ppHR/ehb8t/W2
16fca0 2b 78 55 62 50 36 75 6d 77 48 4a 64 45 4c 46 78 37 72 78 50 34 36 32 73 0a 41 32 30 75 63 53 36 +xUbP6umwHJdELFx7rxP462s.A20ucS6
16fcc0 76 78 4f 4f 74 6f 37 30 4d 45 61 65 30 2f 30 71 79 65 78 41 51 48 36 64 58 51 62 4c 41 72 76 51 vxOOto70MEae0/0qyexAQH6dXQbLArvQ
16fce0 73 57 64 5a 48 45 49 6a 7a 49 56 45 70 4d 4d 70 67 68 71 39 47 71 78 33 74 4f 6c 75 77 6c 4e 35 sWdZHEIjzIVEpMMpghq9Gqx3tOluwlN5
16fd00 45 34 30 45 49 0a 6f 73 48 73 48 64 62 39 54 37 62 57 52 39 41 55 43 38 72 6d 79 72 56 37 64 33 E40EI.osHsHdb9T7bWR9AUC8rmyrV7d3
16fd20 35 42 48 31 36 44 78 37 61 4d 4f 5a 61 77 50 35 61 42 51 57 39 67 6b 4f 4c 6f 2b 66 73 69 63 64 5BH16Dx7aMOZawP5aBQW9gkOLo+fsicd
16fd40 6c 39 73 7a 31 47 76 37 53 45 72 35 41 63 44 34 38 53 0a 61 71 2f 76 37 68 35 36 72 67 4a 4b 69 l9sz1Gv7SEr5AcD48S.aq/v7h56rgJKi
16fd60 68 63 72 64 76 36 73 56 49 6b 6b 4c 45 38 2f 74 72 4b 6e 54 6f 79 6f 6b 5a 66 37 4b 63 5a 37 58 hcrdv6sVIkkLE8/trKnToyokZf7KcZ7X
16fd80 43 32 35 79 32 61 32 74 36 68 62 45 6c 47 46 74 51 6c 2b 59 6e 68 77 2f 71 6c 71 59 4c 59 64 0a C25y2a2t6hbElGFtQl+Ynhw/qlqYLYd.
16fda0 44 6e 6b 4d 2f 63 72 71 4a 49 42 79 77 35 63 2f 38 6e 65 72 51 79 49 4b 78 2b 75 32 44 49 53 43 DnkM/crqJIByw5c/8nerQyIKx+u2DISC
16fdc0 4c 49 42 72 51 59 6f 49 77 4f 75 6c 61 39 2b 5a 45 73 75 4b 31 56 36 41 44 4a 48 67 4a 67 67 32 LIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2
16fde0 53 4d 58 36 4f 42 45 31 2f 79 57 44 0a 4c 66 4a 36 76 39 72 39 6a 76 36 6c 79 30 55 73 48 38 53 SMX6OBE1/yWD.LfJ6v9r9jv6ly0UsH8S
16fe00 49 55 36 35 33 44 74 6d 61 64 73 57 4f 4c 42 32 6a 75 74 58 73 4d 71 37 41 71 71 7a 33 30 58 70 IU653DtmadsWOLB2jutXsMq7Aqqz30Xp
16fe20 4e 36 39 51 48 34 6b 6a 33 49 6f 36 77 70 4a 39 71 7a 6f 36 79 73 6d 44 30 0a 6f 79 4c 51 49 2b N69QH4kj3Io6wpJ9qzo6ysmD0.oyLQI+
16fe40 75 55 57 6e 70 70 33 51 2b 2f 51 46 65 73 61 31 6c 51 32 61 4f 5a 34 57 37 2b 6a 51 46 35 4a 79 uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5Jy
16fe60 4d 56 33 70 4b 64 65 77 6c 4e 57 75 64 4c 53 44 42 61 47 4f 59 4b 62 65 61 50 34 4e 4b 37 35 74 MV3pKdewlNWudLSDBaGOYKbeaP4NK75t
16fe80 39 38 62 69 47 43 0a 77 57 67 35 54 62 53 59 57 47 5a 69 7a 45 71 51 58 73 50 36 4a 77 53 78 65 98biGC.wWg5TbSYWGZizEqQXsP6JwSxe
16fea0 52 56 30 6d 63 79 2b 72 53 44 65 4a 6d 41 63 36 31 5a 52 70 71 50 71 35 4b 4d 2f 70 2f 39 68 33 RV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h3
16fec0 50 46 61 54 57 77 79 49 30 50 75 72 4b 6a 75 37 6b 6f 53 0a 43 54 78 64 63 63 4b 2b 65 66 72 43 PFaTWwyI0PurKju7koS.CTxdccK+efrC
16fee0 68 32 67 64 43 2f 31 63 61 63 77 47 30 4a 70 39 56 4a 6b 71 79 54 6b 61 47 61 39 4c 4b 6b 50 7a h2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPz
16ff00 59 31 31 61 57 4f 49 76 34 78 33 6b 71 64 62 51 43 74 43 65 76 39 65 42 43 66 48 4a 78 79 59 4e Y11aWOIv4x3kqdbQCtCev9eBCfHJxyYN
16ff20 0a 72 4a 67 57 56 71 41 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d .rJgWVqA=.-----END.CERTIFICATE--
16ff40 2d 2d 2d 0a 0a 42 75 79 70 61 73 73 20 43 6c 61 73 73 20 33 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d ---..Buypass.Class.3.Root.CA.===
16ff60 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 ====================.-----BEGIN.
16ff80 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 57 54 43 43 41 30 47 67 41 77 49 CERTIFICATE-----.MIIFWTCCA0GgAwI
16ffa0 42 41 67 49 42 41 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 4f 4d 51 73 BAgIBAjANBgkqhkiG9w0BAQsFADBOMQs
16ffc0 77 43 51 59 44 56 51 51 47 45 77 4a 4f 54 7a 45 64 4d 42 73 47 41 31 55 45 43 67 77 55 0a 51 6e wCQYDVQQGEwJOTzEdMBsGA1UECgwU.Qn
16ffe0 56 35 63 47 46 7a 63 79 42 42 55 79 30 35 4f 44 4d 78 4e 6a 4d 7a 4d 6a 63 78 49 44 41 65 42 67 V5cGFzcyBBUy05ODMxNjMzMjcxIDAeBg
170000 4e 56 42 41 4d 4d 46 30 4a 31 65 58 42 68 63 33 4d 67 51 32 78 68 63 33 4d 67 4d 79 42 53 62 32 NVBAMMF0J1eXBhc3MgQ2xhc3MgMyBSb2
170020 39 30 49 45 4e 42 4d 42 34 58 0a 44 54 45 77 4d 54 41 79 4e 6a 41 34 4d 6a 67 31 4f 46 6f 58 44 90IENBMB4X.DTEwMTAyNjA4Mjg1OFoXD
170040 54 51 77 4d 54 41 79 4e 6a 41 34 4d 6a 67 31 4f 46 6f 77 54 6a 45 4c 4d 41 6b 47 41 31 55 45 42 TQwMTAyNjA4Mjg1OFowTjELMAkGA1UEB
170060 68 4d 43 54 6b 38 78 48 54 41 62 42 67 4e 56 42 41 6f 4d 46 45 4a 31 0a 65 58 42 68 63 33 4d 67 hMCTk8xHTAbBgNVBAoMFEJ1.eXBhc3Mg
170080 51 56 4d 74 4f 54 67 7a 4d 54 59 7a 4d 7a 49 33 4d 53 41 77 48 67 59 44 56 51 51 44 44 42 64 43 QVMtOTgzMTYzMzI3MSAwHgYDVQQDDBdC
1700a0 64 58 6c 77 59 58 4e 7a 49 45 4e 73 59 58 4e 7a 49 44 4d 67 55 6d 39 76 64 43 42 44 51 54 43 43 dXlwYXNzIENsYXNzIDMgUm9vdCBDQTCC
1700c0 41 69 49 77 0a 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 49 50 41 44 43 AiIw.DQYJKoZIhvcNAQEBBQADggIPADC
1700e0 43 41 67 6f 43 67 67 49 42 41 4b 58 61 43 70 55 57 55 4f 4f 56 38 6c 36 64 64 6a 45 47 4d 6e 71 CAgoCggIBAKXaCpUWUOOV8l6ddjEGMnq
170100 62 38 52 42 32 75 41 43 61 74 56 49 32 7a 53 52 48 0a 73 4a 38 59 5a 4c 79 61 39 76 72 56 65 64 b8RB2uACatVI2zSRH.sJ8YZLya9vrVed
170120 69 51 59 6b 77 69 4c 39 34 34 50 64 62 67 71 4f 6b 63 4c 4e 74 34 45 65 6d 4f 61 46 45 56 63 73 iQYkwiL944PdbgqOkcLNt4EemOaFEVcs
170140 66 7a 4d 34 66 6b 6f 46 30 4c 58 4f 42 58 42 79 6f 77 39 63 33 45 4e 33 63 6f 54 52 69 52 0a 35 fzM4fkoF0LXOBXByow9c3EN3coTRiR.5
170160 72 2f 56 55 76 31 78 4c 58 41 2b 35 38 62 45 69 75 50 77 4b 41 76 30 64 70 69 68 69 34 64 56 73 r/VUv1xLXA+58bEiuPwKAv0dpihi4dVs
170180 6a 6f 54 2f 4c 63 2b 4a 7a 65 4f 49 75 4f 6f 54 79 72 76 59 4c 73 39 74 7a 6e 44 44 67 46 48 6d joT/Lc+JzeOIuOoTyrvYLs9tznDDgFHm
1701a0 56 30 53 54 39 74 44 2b 6c 65 68 0a 37 66 6d 64 76 68 46 48 4a 6c 73 54 6d 4b 74 64 46 6f 71 77 V0ST9tD+leh.7fmdvhFHJlsTmKtdFoqw
1701c0 4e 78 78 58 6e 55 58 2f 69 4a 59 32 76 37 76 4b 42 33 74 76 68 32 50 58 30 44 4a 71 31 6c 31 73 NxxXnUX/iJY2v7vKB3tvh2PX0DJq1l1s
1701e0 44 50 47 7a 62 6a 6e 69 61 7a 45 75 4f 51 41 6e 46 4e 34 34 77 4f 77 5a 0a 5a 6f 59 53 36 4a 31 DPGzbjniazEuOQAnFN44wOwZ.ZoYS6J1
170200 79 46 68 4e 6b 55 73 65 70 4e 78 7a 39 67 6a 44 74 68 42 67 64 39 4b 35 63 2f 33 41 54 41 4f 75 yFhNkUsepNxz9gjDthBgd9K5c/3ATAOu
170220 78 39 54 4e 36 53 39 5a 56 2b 41 57 4e 53 32 6d 77 39 62 4d 6f 4e 6c 77 55 78 46 46 7a 54 57 73 x9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWs
170240 4c 38 54 51 48 0a 32 78 63 35 31 39 77 6f 65 32 76 31 6e 2f 4d 75 77 55 38 58 4b 68 44 7a 7a 4d L8TQH.2xc519woe2v1n/MuwU8XKhDzzM
170260 72 6f 36 2f 31 72 71 79 36 61 6e 79 32 43 62 67 54 55 55 67 47 54 4c 54 32 47 2f 48 37 38 33 2b ro6/1rqy6any2CbgTUUgGTLT2G/H783+
170280 39 43 48 61 5a 72 37 37 6b 67 78 76 65 39 6f 4b 65 56 0a 2f 61 66 6d 69 53 54 59 7a 49 77 30 62 9CHaZr77kgxve9oKeV./afmiSTYzIw0b
1702a0 4f 49 6a 4c 39 6b 53 47 69 47 35 56 5a 46 76 43 35 46 35 47 51 79 74 51 49 67 4c 63 4f 4a 36 30 OIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60
1702c0 67 37 59 61 45 69 37 67 68 4d 35 45 46 6a 70 32 43 6f 48 78 68 4c 62 57 4e 76 53 4f 31 55 51 0a g7YaEi7ghM5EFjp2CoHxhLbWNvSO1UQ.
1702e0 52 77 55 56 5a 32 4a 2b 47 47 4f 6d 52 6a 38 4a 44 6c 51 79 58 72 38 4e 59 6e 6f 6e 37 34 44 6f RwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do
170300 32 39 6c 4c 42 6c 6f 33 57 69 58 51 43 42 4a 33 31 47 38 4a 55 4a 63 39 79 42 33 44 33 34 78 46 29lLBlo3WiXQCBJ31G8JUJc9yB3D34xF
170320 4d 46 62 47 30 32 53 72 5a 76 50 41 0a 58 70 61 63 77 38 54 76 77 33 78 72 69 7a 70 35 66 37 4e MFbG02SrZvPA.Xpacw8Tvw3xrizp5f7N
170340 4a 7a 7a 33 69 69 5a 2b 67 4d 45 75 46 75 5a 79 55 4a 48 6d 50 66 57 75 70 52 57 67 50 4b 39 44 Jzz3iiZ+gMEuFuZyUJHmPfWupRWgPK9D
170360 78 32 68 7a 4c 61 62 6a 4b 53 57 4a 74 79 4e 42 6a 59 74 31 67 44 31 69 71 0a 6a 36 47 38 42 61 x2hzLabjKSWJtyNBjYt1gD1iq.j6G8Ba
170380 56 6d 6f 73 38 62 64 72 4b 45 5a 4c 46 4d 4f 56 4c 41 4d 4c 72 77 6a 45 73 43 73 4c 61 33 41 67 Vmos8bdrKEZLFMOVLAMLrwjEsCsLa3Ag
1703a0 4d 42 41 41 47 6a 51 6a 42 41 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 MBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf
1703c0 38 77 48 51 59 44 0a 56 52 30 4f 42 42 59 45 46 45 65 34 7a 66 2f 6c 62 2b 37 34 73 75 77 76 54 8wHQYD.VR0OBBYEFEe4zf/lb+74suwvT
1703e0 67 37 35 4a 62 43 4f 50 47 76 44 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 g75JbCOPGvDMA4GA1UdDwEB/wQEAwIBB
170400 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 0a 41 41 4f 43 41 67 45 41 41 43 41 6a jANBgkqhkiG9w0BAQsF.AAOCAgEAACAj
170420 51 54 55 45 6b 4d 4a 41 59 6d 44 76 34 6a 56 4d 31 7a 2b 73 34 6a 53 51 75 4b 46 76 64 76 6f 57 QTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoW
170440 46 71 52 49 4e 79 7a 70 6b 4d 4c 79 50 50 67 4b 6e 39 69 42 35 62 74 62 32 69 55 73 70 4b 64 56 FqRINyzpkMLyPPgKn9iB5btb2iUspKdV
170460 0a 63 53 51 79 39 73 67 4c 38 72 78 71 2b 4a 4f 73 73 67 66 43 58 35 2f 62 7a 4d 69 4b 71 72 35 .cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5
170480 71 62 2b 46 4a 45 4d 77 78 31 34 43 37 75 38 6a 59 6f 67 35 6b 56 2b 71 69 39 63 4b 70 4d 52 58 qb+FJEMwx14C7u8jYog5kV+qi9cKpMRX
1704a0 53 49 47 72 73 2f 43 49 42 4b 4d 2b 47 0a 75 49 41 65 71 63 77 52 70 54 7a 79 46 72 4e 48 6e 66 SIGrs/CIBKM+G.uIAeqcwRpTzyFrNHnf
1704c0 7a 53 67 43 48 45 79 39 42 48 63 45 47 68 79 6f 4d 5a 43 43 78 74 38 6c 31 33 6e 49 6f 55 45 39 zSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9
1704e0 51 32 48 4a 4c 77 35 51 59 33 33 4b 62 6d 6b 4a 73 34 6a 31 78 72 47 30 61 47 0a 51 30 4a 66 50 Q2HJLw5QY33KbmkJs4j1xrG0aG.Q0JfP
170500 67 45 48 55 31 52 64 5a 58 33 33 69 6e 4f 68 6d 6c 52 61 48 79 6c 44 46 43 66 43 68 51 2b 31 69 gEHU1RdZX33inOhmlRaHylDFCfChQ+1i
170520 48 73 61 4f 35 53 33 48 57 43 6e 74 5a 7a 6e 4b 57 6c 58 57 70 75 54 65 6b 4d 77 47 77 50 58 59 HsaO5S3HWCntZznKWlXWpuTekMwGwPXY
170540 73 68 41 70 71 72 38 0a 5a 4f 52 4b 31 35 46 54 41 61 67 67 69 47 36 63 58 30 53 35 79 32 43 42 shApqr8.ZORK15FTAaggiG6cX0S5y2CB
170560 4e 4f 78 76 30 33 33 61 53 46 2f 72 74 4a 43 38 4c 61 6b 63 43 36 77 63 31 61 4a 6f 49 49 41 45 NOxv033aSF/rtJC8LakcC6wc1aJoIIAE
170580 31 76 79 78 6a 79 2b 37 53 6a 45 4e 53 6f 59 63 36 2b 49 32 0a 4b 53 62 31 32 74 6a 45 38 6e 56 1vyxjy+7SjENSoYc6+I2.KSb12tjE8nV
1705a0 68 7a 33 36 75 64 6d 4e 4b 65 6b 42 6c 6b 34 66 34 48 6f 43 4d 68 75 57 47 31 6f 38 4f 2f 46 4d hz36udmNKekBlk4f4HoCMhuWG1o8O/FM
1705c0 73 59 4f 67 57 59 52 71 69 50 6b 4e 37 7a 54 6c 67 56 47 72 31 38 6f 6b 6d 41 57 69 44 53 4b 49 sYOgWYRqiPkN7zTlgVGr18okmAWiDSKI
1705e0 7a 0a 36 4d 6b 45 6b 62 49 52 4e 42 45 2b 36 74 42 44 47 52 38 44 6b 35 41 4d 2f 31 45 39 56 2f z.6MkEkbIRNBE+6tBDGR8Dk5AM/1E9V/
170600 52 42 62 75 48 4c 6f 4c 37 72 79 57 50 4e 62 63 7a 6b 2b 44 61 71 61 4a 33 74 76 56 32 58 63 45 RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcE
170620 51 4e 74 67 34 31 33 4f 45 4d 58 62 75 67 0a 55 5a 54 4c 66 68 62 72 45 53 2b 6a 6b 6b 58 49 54 QNtg413OEMXbug.UZTLfhbrES+jkkXIT
170640 48 48 5a 76 4d 6d 5a 55 6c 64 47 4c 31 44 50 76 54 56 70 39 44 30 56 7a 67 61 6c 4c 41 38 2b 39 HHZvMmZUldGL1DPvTVp9D0VzgalLA8+9
170660 6f 47 36 6c 4c 76 44 75 37 39 6c 65 4e 4b 47 65 66 39 4a 4f 78 71 44 44 50 44 65 0a 65 4f 7a 49 oG6lLvDu79leNKGef9JOxqDDPDe.eOzI
170680 38 6b 31 4d 47 74 36 43 4b 66 6a 42 57 74 72 74 37 75 59 6e 58 75 68 46 30 4a 30 63 55 61 68 6f 8k1MGt6CKfjBWtrt7uYnXuhF0J0cUaho
1706a0 71 30 54 6a 30 49 74 71 34 2f 67 37 75 39 78 4e 31 32 54 79 55 62 37 6d 71 71 74 61 36 54 48 75 q0Tj0Itq4/g7u9xN12TyUb7mqqta6THu
1706c0 42 72 78 7a 76 78 4e 69 0a 43 70 2f 48 75 5a 63 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 BrxzvxNi.Cp/HuZc=.-----END.CERTI
1706e0 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 2d 54 65 6c 65 53 65 63 20 47 6c 6f 62 61 6c 52 6f 6f FICATE-----..T-TeleSec.GlobalRoo
170700 74 20 43 6c 61 73 73 20 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d t.Class.3.======================
170720 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d ======.-----BEGIN.CERTIFICATE---
170740 2d 2d 0a 4d 49 49 44 77 7a 43 43 41 71 75 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b 71 68 --.MIIDwzCCAqugAwIBAgIBATANBgkqh
170760 6b 69 47 39 77 30 42 41 51 73 46 41 44 43 42 67 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 52 kiG9w0BAQsFADCBgjELMAkGA1UEBhMCR
170780 45 55 78 4b 7a 41 70 42 67 4e 56 42 41 6f 4d 0a 49 6c 51 74 55 33 6c 7a 64 47 56 74 63 79 42 46 EUxKzApBgNVBAoM.IlQtU3lzdGVtcyBF
1707a0 62 6e 52 6c 63 6e 42 79 61 58 4e 6c 49 46 4e 6c 63 6e 5a 70 59 32 56 7a 49 45 64 74 59 6b 67 78 bnRlcnByaXNlIFNlcnZpY2VzIEdtYkgx
1707c0 48 7a 41 64 42 67 4e 56 42 41 73 4d 46 6c 51 74 55 33 6c 7a 64 47 56 74 63 79 42 55 0a 63 6e 56 HzAdBgNVBAsMFlQtU3lzdGVtcyBU.cnV
1707e0 7a 64 43 42 44 5a 57 35 30 5a 58 49 78 4a 54 41 6a 42 67 4e 56 42 41 4d 4d 48 46 51 74 56 47 56 zdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGV
170800 73 5a 56 4e 6c 59 79 42 48 62 47 39 69 59 57 78 53 62 32 39 30 49 45 4e 73 59 58 4e 7a 49 44 4d sZVNlYyBHbG9iYWxSb290IENsYXNzIDM
170820 77 48 68 63 4e 4d 44 67 78 0a 4d 44 41 78 4d 54 41 79 4f 54 55 32 57 68 63 4e 4d 7a 4d 78 4d 44 wHhcNMDgx.MDAxMTAyOTU2WhcNMzMxMD
170840 41 78 4d 6a 4d 31 4f 54 55 35 57 6a 43 42 67 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 52 45 AxMjM1OTU5WjCBgjELMAkGA1UEBhMCRE
170860 55 78 4b 7a 41 70 42 67 4e 56 42 41 6f 4d 49 6c 51 74 55 33 6c 7a 0a 64 47 56 74 63 79 42 46 62 UxKzApBgNVBAoMIlQtU3lz.dGVtcyBFb
170880 6e 52 6c 63 6e 42 79 61 58 4e 6c 49 46 4e 6c 63 6e 5a 70 59 32 56 7a 49 45 64 74 59 6b 67 78 48 nRlcnByaXNlIFNlcnZpY2VzIEdtYkgxH
1708a0 7a 41 64 42 67 4e 56 42 41 73 4d 46 6c 51 74 55 33 6c 7a 64 47 56 74 63 79 42 55 63 6e 56 7a 64 zAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzd
1708c0 43 42 44 0a 5a 57 35 30 5a 58 49 78 4a 54 41 6a 42 67 4e 56 42 41 4d 4d 48 46 51 74 56 47 56 73 CBD.ZW50ZXIxJTAjBgNVBAMMHFQtVGVs
1708e0 5a 56 4e 6c 59 79 42 48 62 47 39 69 59 57 78 53 62 32 39 30 49 45 4e 73 59 58 4e 7a 49 44 4d 77 ZVNlYyBHbG9iYWxSb290IENsYXNzIDMw
170900 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 0a 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 ggEiMA0GCSqGSIb3.DQEBAQUAA4IBDwA
170920 77 67 67 45 4b 41 6f 49 42 41 51 43 39 64 5a 50 77 59 69 4a 76 4a 4b 37 67 65 6e 61 73 66 62 33 wggEKAoIBAQC9dZPwYiJvJK7genasfb3
170940 5a 4a 4e 57 34 74 2f 7a 4e 38 45 4c 67 36 33 69 49 56 6c 36 62 6d 6c 51 64 54 51 79 4b 0a 39 74 ZJNW4t/zN8ELg63iIVl6bmlQdTQyK.9t
170960 50 50 63 50 52 53 74 64 69 54 42 4f 4e 47 68 6e 46 42 53 69 76 77 4b 69 78 56 41 39 5a 49 77 2b PPcPRStdiTBONGhnFBSivwKixVA9ZIw+
170980 41 35 4f 4f 33 79 58 44 77 2f 52 4c 79 54 50 57 47 72 54 73 30 4e 76 76 41 67 4a 31 67 4f 52 48 A5OO3yXDw/RLyTPWGrTs0NvvAgJ1gORH
1709a0 38 45 47 6f 65 6c 31 35 59 55 0a 4e 70 44 51 53 58 75 68 64 66 73 61 61 33 4f 78 2b 4d 36 70 43 8EGoel15YU.NpDQSXuhdfsaa3Ox+M6pC
1709c0 53 7a 79 55 39 58 44 46 45 53 34 68 71 58 32 69 79 73 35 32 71 4d 7a 56 4e 6e 36 63 68 72 33 49 SzyU9XDFES4hqX2iys52qMzVNn6chr3I
1709e0 68 55 63 69 4a 46 72 66 32 62 6c 77 32 71 41 73 43 54 7a 33 34 5a 46 0a 69 50 30 5a 66 33 57 48 hUciJFrf2blw2qAsCTz34ZF.iP0Zf3WH
170a00 48 78 2b 78 47 77 70 7a 4a 46 75 35 5a 65 41 73 56 4d 68 67 30 32 59 58 50 2b 48 4d 56 44 4e 7a Hx+xGwpzJFu5ZeAsVMhg02YXP+HMVDNz
170a20 6b 51 49 36 70 6e 39 37 64 6a 6d 69 48 35 61 32 4f 4b 36 31 79 4a 4e 30 48 5a 36 35 74 4f 56 67 kQI6pn97djmiH5a2OK61yJN0HZ65tOVg
170a40 6e 53 39 57 0a 30 65 44 72 58 6c 74 4d 45 6e 41 4d 62 45 51 67 71 78 48 59 39 42 6e 32 30 70 78 nS9W.0eDrXltMEnAMbEQgqxHY9Bn20px
170a60 53 4e 2b 66 36 74 73 49 78 4f 30 72 55 46 4a 6d 74 78 78 72 31 58 56 2f 36 42 37 68 38 44 52 2f SN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/
170a80 57 67 78 36 7a 41 67 4d 42 41 41 47 6a 51 6a 42 41 0a 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 Wgx6zAgMBAAGjQjBA.MA8GA1UdEwEB/w
170aa0 51 46 4d 41 4d 42 41 66 38 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 42 QFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB
170ac0 30 47 41 31 55 64 44 67 51 57 42 42 53 31 41 2f 64 32 4f 32 47 43 61 68 4b 71 47 46 50 72 0a 41 0GA1UdDgQWBBS1A/d2O2GCahKqGFPr.A
170ae0 79 47 55 76 2f 37 4f 79 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 41 4f 43 41 yGUv/7OyjANBgkqhkiG9w0BAQsFAAOCA
170b00 51 45 41 56 6a 33 76 6c 4e 57 39 32 6e 4f 79 57 4c 36 75 6b 4b 32 59 4a 35 66 2b 41 62 47 77 55 QEAVj3vlNW92nOyWL6ukK2YJ5f+AbGwU
170b20 67 43 34 54 65 51 62 49 58 51 62 0a 66 73 44 75 58 6d 6b 71 4a 61 39 63 31 68 33 61 30 6e 6e 4a gC4TeQbIXQb.fsDuXmkqJa9c1h3a0nnJ
170b40 38 35 63 70 34 49 61 48 33 67 52 5a 44 2f 46 5a 31 47 53 46 53 35 6d 76 4a 51 51 65 79 55 61 70 85cp4IaH3gRZD/FZ1GSFS5mvJQQeyUap
170b60 6c 39 36 43 73 68 74 77 6e 35 7a 32 72 33 45 78 33 58 73 46 70 53 7a 54 0a 75 63 70 48 39 73 72 l96Cshtwn5z2r3Ex3XsFpSzT.ucpH9sr
170b80 79 39 75 65 74 75 55 67 2f 76 42 61 33 77 57 33 30 36 67 6d 76 37 50 4f 31 35 77 57 65 70 68 36 y9uetuUg/vBa3wW306gmv7PO15wWeph6
170ba0 4b 55 31 48 57 6b 34 48 4d 64 4a 50 32 75 64 71 6d 4a 51 56 30 65 56 70 2b 51 44 36 43 53 79 59 KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyY
170bc0 52 4d 47 37 68 0a 50 30 48 48 52 77 41 31 31 66 58 54 39 31 51 2b 67 54 33 61 53 57 71 61 73 2b RMG7h.P0HHRwA11fXT91Q+gT3aSWqas+
170be0 38 51 50 65 62 72 62 39 48 49 49 6b 66 4c 7a 4d 38 42 4d 5a 4c 5a 47 4f 4d 69 76 67 6b 65 47 6a 8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj
170c00 35 61 73 75 52 72 44 46 52 36 66 55 4e 4f 75 49 6d 6c 0a 65 39 65 69 50 5a 61 47 7a 50 49 6d 4e 5asuRrDFR6fUNOuIml.e9eiPZaGzPImN
170c20 43 31 71 6b 70 32 61 47 74 41 77 34 6c 31 4f 42 4c 42 66 69 79 42 2b 64 38 45 39 6c 59 4c 52 52 C1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRR
170c40 70 6f 37 50 48 69 34 62 36 48 51 44 57 53 69 65 42 34 70 54 70 50 44 70 46 51 55 57 77 3d 3d 0a po7PHi4b6HQDWSieB4pTpPDpFQUWw==.
170c60 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 45 45 20 43 65 -----END.CERTIFICATE-----..EE.Ce
170c80 72 74 69 66 69 63 61 74 69 6f 6e 20 43 65 6e 74 72 65 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d rtification.Centre.Root.CA.=====
170ca0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d ==========================.-----
170cc0 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 41 7a 43 43 41 BEGIN.CERTIFICATE-----.MIIEAzCCA
170ce0 75 75 67 41 77 49 42 41 67 49 51 56 49 44 35 6f 48 50 74 50 77 42 4d 79 6f 6e 59 34 33 48 6d 53 uugAwIBAgIQVID5oHPtPwBMyonY43HmS
170d00 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 31 4d 51 73 77 43 51 59 44 56 jANBgkqhkiG9w0BAQUFADB1MQswCQYDV
170d20 51 51 47 0a 45 77 4a 46 52 54 45 69 4d 43 41 47 41 31 55 45 43 67 77 5a 51 56 4d 67 55 32 56 79 QQG.EwJFRTEiMCAGA1UECgwZQVMgU2Vy
170d40 64 47 6c 6d 61 58 52 7a 5a 57 56 79 61 57 31 70 63 32 74 6c 63 32 74 31 63 7a 45 6f 4d 43 59 47 dGlmaXRzZWVyaW1pc2tlc2t1czEoMCYG
170d60 41 31 55 45 41 77 77 66 52 55 55 67 51 32 56 79 0a 64 47 6c 6d 61 57 4e 68 64 47 6c 76 62 69 42 A1UEAwwfRUUgQ2Vy.dGlmaWNhdGlvbiB
170d80 44 5a 57 35 30 63 6d 55 67 55 6d 39 76 64 43 42 44 51 54 45 59 4d 42 59 47 43 53 71 47 53 49 62 DZW50cmUgUm9vdCBDQTEYMBYGCSqGSIb
170da0 33 44 51 45 4a 41 52 59 4a 63 47 74 70 51 48 4e 72 4c 6d 56 6c 4d 43 49 59 44 7a 49 77 0a 4d 54 3DQEJARYJcGtpQHNrLmVlMCIYDzIw.MT
170dc0 41 78 4d 44 4d 77 4d 54 41 78 4d 44 4d 77 57 68 67 50 4d 6a 41 7a 4d 44 45 79 4d 54 63 79 4d 7a AxMDMwMTAxMDMwWhgPMjAzMDEyMTcyMz
170de0 55 35 4e 54 6c 61 4d 48 55 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 56 46 4d 53 49 77 49 41 U5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIA
170e00 59 44 56 51 51 4b 44 42 6c 42 0a 55 79 42 54 5a 58 4a 30 61 57 5a 70 64 48 4e 6c 5a 58 4a 70 62 YDVQQKDBlB.UyBTZXJ0aWZpdHNlZXJpb
170e20 57 6c 7a 61 32 56 7a 61 33 56 7a 4d 53 67 77 4a 67 59 44 56 51 51 44 44 42 39 46 52 53 42 44 5a Wlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZ
170e40 58 4a 30 61 57 5a 70 59 32 46 30 61 57 39 75 49 45 4e 6c 62 6e 52 79 0a 5a 53 42 53 62 32 39 30 XJ0aWZpY2F0aW9uIENlbnRy.ZSBSb290
170e60 49 45 4e 42 4d 52 67 77 46 67 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 6b 42 46 67 6c 77 61 32 6c 41 IENBMRgwFgYJKoZIhvcNAQkBFglwa2lA
170e80 63 32 73 75 5a 57 55 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 c2suZWUwggEiMA0GCSqGSIb3DQEBAQUA
170ea0 41 34 49 42 0a 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 44 49 49 4d 44 73 34 4d 56 4c 71 77 64 A4IB.DwAwggEKAoIBAQDIIMDs4MVLqwd
170ec0 34 6c 66 4e 45 37 76 73 4c 44 50 39 30 6a 6d 47 37 73 57 4c 71 49 39 69 72 6f 57 55 79 65 75 75 4lfNE7vsLDP90jmG7sWLqI9iroWUyeuu
170ee0 4f 46 30 2b 57 32 41 70 37 6b 61 4a 6a 62 4d 65 4d 0a 54 43 35 35 76 36 6b 46 2f 47 6c 63 6c 59 OF0+W2Ap7kaJjbMeM.TC55v6kF/GlclY
170f00 31 69 2b 62 6c 77 37 63 4e 52 66 64 43 54 35 6d 7a 72 4d 45 76 68 76 48 32 2f 55 70 76 4f 62 6e 1i+blw7cNRfdCT5mzrMEvhvH2/UpvObn
170f20 74 6c 38 6a 69 78 77 4b 49 79 37 32 4b 79 61 4f 42 68 55 38 45 32 6c 66 2f 73 6c 4c 6f 32 0a 72 tl8jixwKIy72KyaOBhU8E2lf/slLo2.r
170f40 70 77 63 70 7a 49 50 35 58 79 30 78 6d 39 30 2f 58 73 59 36 4b 78 58 37 51 59 67 53 7a 49 77 57 pwcpzIP5Xy0xm90/XsY6KxX7QYgSzIwW
170f60 46 76 39 7a 61 6a 6d 6f 66 78 77 76 49 36 53 63 39 75 58 70 33 77 68 72 6a 33 42 39 55 69 48 62 Fv9zajmofxwvI6Sc9uXp3whrj3B9UiHb
170f80 43 65 39 6e 79 56 30 67 56 57 77 0a 39 33 58 32 50 61 52 6b 61 39 5a 50 35 38 35 41 72 51 2f 64 Ce9nyV0gVWw.93X2PaRka9ZP585ArQ/d
170fa0 4d 74 4f 38 69 68 4a 54 6d 4d 6d 4a 2b 78 41 64 54 58 37 4e 66 68 39 57 44 53 46 77 68 66 59 67 MtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYg
170fc0 67 78 2f 32 75 68 38 45 6a 2b 70 33 69 44 58 45 2f 2b 70 4f 6f 59 74 4e 0a 50 32 4d 62 52 4d 4e gx/2uh8Ej+p3iDXE/+pOoYtN.P2MbRMN
170fe0 45 31 43 56 32 79 72 65 4e 31 78 35 4b 5a 6d 54 4e 58 4d 57 63 67 2b 48 43 43 49 69 61 37 45 36 E1CV2yreN1x5KZmTNXMWcg+HCCIia7E6
171000 6a 38 54 34 63 4c 4e 6c 73 48 61 46 4c 41 67 4d 42 41 41 47 6a 67 59 6f 77 67 59 63 77 44 77 59 j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwY
171020 44 56 52 30 54 0a 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 66 DVR0T.AQH/BAUwAwEB/zAOBgNVHQ8BAf
171040 38 45 42 41 4d 43 41 51 59 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 42 4c 79 57 6a 37 71 56 68 8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVh
171060 79 2f 7a 51 61 73 38 66 45 6c 79 61 6c 4c 31 42 53 5a 0a 4d 45 55 47 41 31 55 64 4a 51 51 2b 4d y/zQas8fElyalL1BSZ.MEUGA1UdJQQ+M
171080 44 77 47 43 43 73 47 41 51 55 46 42 77 4d 43 42 67 67 72 42 67 45 46 42 51 63 44 41 51 59 49 4b DwGCCsGAQUFBwMCBggrBgEFBQcDAQYIK
1710a0 77 59 42 42 51 55 48 41 77 4d 47 43 43 73 47 41 51 55 46 42 77 4d 45 42 67 67 72 42 67 45 46 0a wYBBQUHAwMGCCsGAQUFBwMEBggrBgEF.
1710c0 42 51 63 44 43 41 59 49 4b 77 59 42 42 51 55 48 41 77 6b 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e BQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcN
1710e0 41 51 45 46 42 51 41 44 67 67 45 42 41 48 76 32 35 4d 41 4e 71 68 6c 48 74 30 31 58 6f 2f 36 74 AQEFBQADggEBAHv25MANqhlHt01Xo/6t
171100 75 37 46 71 31 51 2b 65 32 2b 52 6a 0a 78 59 36 68 55 46 61 54 6c 72 67 34 77 43 51 69 5a 72 78 u7Fq1Q+e2+Rj.xY6hUFaTlrg4wCQiZrx
171120 54 46 47 47 56 76 39 44 48 4b 70 59 35 50 33 30 6f 73 78 42 41 49 57 72 45 72 37 42 53 64 78 6a TFGGVv9DHKpY5P30osxBAIWrEr7BSdxj
171140 68 6c 74 68 57 58 65 50 64 4e 6c 34 64 70 31 42 55 6f 4d 55 71 35 4b 71 4d 0a 6c 49 70 50 6e 54 hlthWXePdNl4dp1BUoMUq5KqM.lIpPnT
171160 58 2f 64 71 51 47 45 35 47 69 6f 6e 30 41 52 44 39 56 30 34 49 38 47 74 56 62 76 46 5a 4d 49 69 X/dqQGE5Gion0ARD9V04I8GtVbvFZMIi
171180 35 47 51 34 6f 6b 51 43 33 7a 45 72 67 37 63 42 71 6b 6c 72 6b 61 72 34 64 42 47 6d 6f 59 44 51 5GQ4okQC3zErg7cBqklrkar4dBGmoYDQ
1711a0 5a 50 78 7a 35 75 0a 75 53 6c 4e 44 55 6d 4a 45 59 63 79 57 2b 5a 4c 42 4d 6a 6b 58 4f 5a 30 63 ZPxz5u.uSlNDUmJEYcyW+ZLBMjkXOZ0c
1711c0 35 52 64 46 70 67 54 6c 66 37 37 32 37 46 45 35 54 70 77 72 44 64 72 35 72 4d 7a 63 69 6a 4a 73 5RdFpgTlf7727FE5TpwrDdr5rMzcijJs
1711e0 31 65 67 39 67 49 57 69 41 59 4c 74 71 5a 4c 49 43 6a 55 0a 33 6a 32 4c 72 54 63 46 55 33 54 2b 1eg9gIWiAYLtqZLICjU.3j2LrTcFU3T+
171200 62 73 79 38 51 78 64 78 58 76 6e 46 7a 42 71 70 59 65 37 33 64 67 7a 7a 63 76 52 79 72 63 39 79 bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9y
171220 41 6a 59 48 52 38 2f 76 47 56 43 4a 59 4d 7a 70 4a 4a 55 50 77 73 73 64 38 6d 39 32 6b 4d 66 4d AjYHR8/vGVCJYMzpJJUPwssd8m92kMfM
171240 0a 64 63 47 57 78 5a 30 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d .dcGWxZ0=.-----END.CERTIFICATE--
171260 2d 2d 2d 0a 0a 54 55 52 4b 54 52 55 53 54 20 43 65 72 74 69 66 69 63 61 74 65 20 53 65 72 76 69 ---..TURKTRUST.Certificate.Servi
171280 63 65 73 20 50 72 6f 76 69 64 65 72 20 52 6f 6f 74 20 32 30 30 37 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d ces.Provider.Root.2007.=========
1712a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
1712c0 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
1712e0 2d 2d 2d 2d 0a 4d 49 49 45 50 54 43 43 41 79 57 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b ----.MIIEPTCCAyWgAwIBAgIBATANBgk
171300 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 43 42 76 7a 45 2f 4d 44 30 47 41 31 55 45 41 77 77 qhkiG9w0BAQUFADCBvzE/MD0GA1UEAww
171320 32 56 4d 4f 63 55 6b 74 55 55 6c 56 54 56 43 42 46 0a 62 47 56 72 64 48 4a 76 62 6d 6c 72 49 46 2VMOcUktUUlVTVCBF.bGVrdHJvbmlrIF
171340 4e 6c 63 6e 52 70 5a 6d 6c 72 59 53 42 49 61 58 70 74 5a 58 51 67 55 32 48 45 6e 32 78 68 65 63 NlcnRpZmlrYSBIaXptZXQgU2HEn2xhec
171360 53 78 59 38 53 78 63 38 53 78 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 55 55 6a 45 50 0a 4d SxY8Sxc8SxMQswCQYDVQQGEwJUUjEP.M
171380 41 30 47 41 31 55 45 42 77 77 47 51 57 35 72 59 58 4a 68 4d 56 34 77 58 41 59 44 56 51 51 4b 44 A0GA1UEBwwGQW5rYXJhMV4wXAYDVQQKD
1713a0 46 56 55 77 35 78 53 53 31 52 53 56 56 4e 55 49 45 4a 70 62 47 64 70 49 4d 53 77 62 47 56 30 61 FVUw5xSS1RSVVNUIEJpbGdpIMSwbGV0a
1713c0 63 57 66 61 57 30 67 64 6d 55 67 0a 51 6d 6c 73 61 63 57 66 61 57 30 67 52 38 4f 38 64 6d 56 75 cWfaW0gdmUg.QmlsacWfaW0gR8O8dmVu
1713e0 62 47 6e 45 6e 32 6b 67 53 47 6c 36 62 57 56 30 62 47 56 79 61 53 42 42 4c 73 57 65 4c 69 41 6f bGnEn2kgSGl6bWV0bGVyaSBBLsWeLiAo
171400 59 79 6b 67 51 58 4a 68 62 4d 53 78 61 79 41 79 4d 44 41 33 4d 42 34 58 0a 44 54 41 33 4d 54 49 YykgQXJhbMSxayAyMDA3MB4X.DTA3MTI
171420 79 4e 54 45 34 4d 7a 63 78 4f 56 6f 58 44 54 45 33 4d 54 49 79 4d 6a 45 34 4d 7a 63 78 4f 56 6f yNTE4MzcxOVoXDTE3MTIyMjE4MzcxOVo
171440 77 67 62 38 78 50 7a 41 39 42 67 4e 56 42 41 4d 4d 4e 6c 54 44 6e 46 4a 4c 56 46 4a 56 55 31 51 wgb8xPzA9BgNVBAMMNlTDnFJLVFJVU1Q
171460 67 52 57 78 6c 0a 61 33 52 79 62 32 35 70 61 79 42 54 5a 58 4a 30 61 57 5a 70 61 32 45 67 53 47 gRWxl.a3Ryb25payBTZXJ0aWZpa2EgSG
171480 6c 36 62 57 56 30 49 46 4e 68 78 4a 39 73 59 58 6e 45 73 57 50 45 73 58 50 45 73 54 45 4c 4d 41 l6bWV0IFNhxJ9sYXnEsWPEsXPEsTELMA
1714a0 6b 47 41 31 55 45 42 68 4d 43 56 46 49 78 44 7a 41 4e 0a 42 67 4e 56 42 41 63 4d 42 6b 46 75 61 kGA1UEBhMCVFIxDzAN.BgNVBAcMBkFua
1714c0 32 46 79 59 54 46 65 4d 46 77 47 41 31 55 45 43 67 78 56 56 4d 4f 63 55 6b 74 55 55 6c 56 54 56 2FyYTFeMFwGA1UECgxVVMOcUktUUlVTV
1714e0 43 42 43 61 57 78 6e 61 53 44 45 73 47 78 6c 64 47 6e 46 6e 32 6c 74 49 48 5a 6c 49 45 4a 70 0a CBCaWxnaSDEsGxldGnFn2ltIHZlIEJp.
171500 62 47 6e 46 6e 32 6c 74 49 45 66 44 76 48 5a 6c 62 6d 78 70 78 4a 39 70 49 45 68 70 65 6d 31 6c bGnFn2ltIEfDvHZlbmxpxJ9pIEhpem1l
171520 64 47 78 6c 63 6d 6b 67 51 53 37 46 6e 69 34 67 4b 47 4d 70 49 45 46 79 59 57 7a 45 73 57 73 67 dGxlcmkgQS7Fni4gKGMpIEFyYWzEsWsg
171540 4d 6a 41 77 4e 7a 43 43 41 53 49 77 0a 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 MjAwNzCCASIw.DQYJKoZIhvcNAQEBBQA
171560 44 67 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4b 75 33 50 67 71 4d 79 4b 56 59 46 65 61 DggEPADCCAQoCggEBAKu3PgqMyKVYFea
171580 4b 37 79 63 39 53 72 54 6f 4a 64 50 4e 4d 38 49 67 33 42 6e 75 69 44 39 4e 0a 59 76 44 64 45 33 K7yc9SrToJdPNM8Ig3BnuiD9N.YvDdE3
1715a0 65 50 59 61 6b 71 74 64 54 79 75 54 46 59 4b 54 73 76 50 32 71 63 62 33 4e 32 4a 65 34 30 49 49 ePYakqtdTyuTFYKTsvP2qcb3N2Je40II
1715c0 44 75 36 72 66 77 78 41 72 4e 4b 34 61 55 79 65 4e 67 73 55 52 53 73 6c 6f 70 74 4a 47 58 67 39 Du6rfwxArNK4aUyeNgsURSsloptJGXg9
1715e0 69 33 70 68 51 76 0a 4b 55 6d 69 38 77 55 47 2b 37 52 50 32 71 46 73 6d 6d 61 66 38 45 4d 4a 79 i3phQv.KUmi8wUG+7RP2qFsmmaf8EMJy
171600 75 70 79 6a 2b 73 41 31 7a 55 35 31 31 59 58 52 78 63 77 39 4c 36 2f 50 38 4a 6f 72 7a 5a 41 77 upyj+sA1zU511YXRxcw9L6/P8JorzZAw
171620 61 6e 30 71 61 66 6f 45 47 73 49 69 76 65 47 48 74 79 61 0a 4b 68 55 47 39 71 50 77 39 4f 44 48 an0qafoEGsIiveGHtya.KhUG9qPw9ODH
171640 46 4e 52 52 66 38 2b 30 32 32 32 76 52 35 59 58 6d 33 64 78 32 4b 64 78 6e 53 51 4d 39 70 51 2f FNRRf8+0222vR5YXm3dx2KdxnSQM9pQ/
171660 68 54 45 53 54 37 72 75 54 6f 4b 34 75 54 36 50 49 7a 64 65 7a 4b 4b 71 64 66 63 59 62 77 6e 54 hTEST7ruToK4uT6PIzdezKKqdfcYbwnT
171680 0a 72 71 64 55 4b 44 54 37 34 65 41 37 59 48 32 67 76 6e 6d 4a 68 73 69 66 4c 66 6b 4b 53 38 52 .rqdUKDT74eA7YH2gvnmJhsifLfkKS8R
1716a0 51 6f 75 66 39 65 52 62 48 65 67 73 59 7a 38 35 4d 37 33 33 57 42 32 2b 59 38 61 2b 78 77 58 72 Qouf9eRbHegsYz85M733WB2+Y8a+xwXr
1716c0 58 67 54 57 34 71 68 65 30 34 4d 73 43 0a 41 77 45 41 41 61 4e 43 4d 45 41 77 48 51 59 44 56 52 XgTW4qhe04MsC.AwEAAaNCMEAwHQYDVR
1716e0 30 4f 42 42 59 45 46 43 6e 46 6b 4b 73 6c 72 78 48 6b 59 62 2b 6a 2f 34 68 68 6b 65 59 4f 2f 70 0OBBYEFCnFkKslrxHkYb+j/4hhkeYO/p
171700 79 42 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 50 0a 42 67 4e 56 48 yBMA4GA1UdDwEB/wQEAwIBBjAP.BgNVH
171720 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 42 RMBAf8EBTADAQH/MA0GCSqGSIb3DQEBB
171740 51 55 41 41 34 49 42 41 51 41 51 44 64 72 34 4f 75 77 6f 30 52 53 56 67 72 45 53 4c 46 46 36 51 QUAA4IBAQAQDdr4Ouwo0RSVgrESLFF6Q
171760 53 55 32 54 4a 2f 73 0a 50 78 2b 45 6e 57 56 55 58 4b 67 57 41 6b 44 36 62 68 6f 33 68 4f 39 79 SU2TJ/s.Px+EnWVUXKgWAkD6bho3hO9y
171780 6e 59 59 4b 56 5a 31 57 4b 4b 78 6d 4c 4e 41 36 56 70 4d 30 42 79 57 74 43 4c 43 50 79 41 38 4a nYYKVZ1WKKxmLNA6VpM0ByWtCLCPyA8J
1717a0 57 63 71 64 6d 42 7a 6c 56 50 69 35 52 58 39 71 6c 32 2b 49 0a 61 45 31 4b 42 69 59 33 69 41 49 WcqdmBzlVPi5RX9ql2+I.aE1KBiY3iAI
1717c0 4f 74 73 62 57 63 70 6e 4f 61 33 66 61 59 6a 47 6b 56 68 2b 75 58 34 31 33 32 6c 33 32 69 50 77 OtsbWcpnOa3faYjGkVh+uX4132l32iPw
1717e0 61 32 5a 36 31 67 66 41 79 75 4f 4f 49 30 4a 7a 7a 61 71 43 35 6d 78 52 5a 4e 54 5a 50 7a 2f 4f a2Z61gfAyuOOI0JzzaqC5mxRZNTZPz/O
171800 4f 0a 58 6c 30 58 72 52 57 56 32 4e 32 79 31 52 56 75 41 45 36 7a 53 38 39 6d 6c 4f 54 67 7a 62 O.Xl0XrRWV2N2y1RVuAE6zS89mlOTgzb
171820 55 46 32 6d 4e 58 69 2b 57 7a 71 74 76 41 4c 68 79 51 52 4e 73 61 58 52 69 6b 37 72 34 45 57 35 UF2mNXi+WzqtvALhyQRNsaXRik7r4EW5
171840 6e 56 63 56 39 56 5a 57 52 69 31 61 4b 62 0a 42 46 6d 47 79 47 4a 33 35 33 79 43 52 57 6f 39 46 nVcV9VZWRi1aKb.BFmGyGJ353yCRWo9F
171860 37 2f 73 6e 58 55 4d 72 71 4e 76 57 74 4d 76 6d 44 62 30 38 50 55 5a 71 78 46 64 79 4b 62 6a 4b 7/snXUMrqNvWtMvmDb08PUZqxFdyKbjK
171880 6c 68 71 51 67 6e 44 76 5a 49 6d 5a 6a 49 4e 58 51 68 56 64 50 2b 4d 6d 4e 41 4b 0a 70 6f 52 71 lhqQgnDvZImZjINXQhVdP+MmNAK.poRq
1718a0 30 54 6c 39 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 0Tl9.-----END.CERTIFICATE-----..
1718c0 44 2d 54 52 55 53 54 20 52 6f 6f 74 20 43 6c 61 73 73 20 33 20 43 41 20 32 20 32 30 30 39 0a 3d D-TRUST.Root.Class.3.CA.2.2009.=
1718e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d =============================.--
171900 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 4d 7a ---BEGIN.CERTIFICATE-----.MIIEMz
171920 43 43 41 78 75 67 41 77 49 42 41 67 49 44 43 59 50 7a 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 CCAxugAwIBAgIDCYPzMA0GCSqGSIb3DQ
171940 45 42 43 77 55 41 4d 45 30 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 52 46 4d 52 55 77 45 77 EBCwUAME0xCzAJBgNVBAYTAkRFMRUwEw
171960 59 44 56 51 51 4b 0a 44 41 78 45 4c 56 52 79 64 58 4e 30 49 45 64 74 59 6b 67 78 4a 7a 41 6c 42 YDVQQK.DAxELVRydXN0IEdtYkgxJzAlB
171980 67 4e 56 42 41 4d 4d 48 6b 51 74 56 46 4a 56 55 31 51 67 55 6d 39 76 64 43 42 44 62 47 46 7a 63 gNVBAMMHkQtVFJVU1QgUm9vdCBDbGFzc
1719a0 79 41 7a 49 45 4e 42 49 44 49 67 4d 6a 41 77 4f 54 41 65 0a 46 77 30 77 4f 54 45 78 4d 44 55 77 yAzIENBIDIgMjAwOTAe.Fw0wOTExMDUw
1719c0 4f 44 4d 31 4e 54 68 61 46 77 30 79 4f 54 45 78 4d 44 55 77 4f 44 4d 31 4e 54 68 61 4d 45 30 78 ODM1NThaFw0yOTExMDUwODM1NThaME0x
1719e0 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 52 46 4d 52 55 77 45 77 59 44 56 51 51 4b 44 41 78 45 CzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxE
171a00 0a 4c 56 52 79 64 58 4e 30 49 45 64 74 59 6b 67 78 4a 7a 41 6c 42 67 4e 56 42 41 4d 4d 48 6b 51 .LVRydXN0IEdtYkgxJzAlBgNVBAMMHkQ
171a20 74 56 46 4a 56 55 31 51 67 55 6d 39 76 64 43 42 44 62 47 46 7a 63 79 41 7a 49 45 4e 42 49 44 49 tVFJVU1QgUm9vdCBDbGFzcyAzIENBIDI
171a40 67 4d 6a 41 77 4f 54 43 43 41 53 49 77 0a 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 gMjAwOTCCASIw.DQYJKoZIhvcNAQEBBQ
171a60 41 44 67 67 45 50 41 44 43 43 41 51 6f 43 67 67 45 42 41 4e 4f 79 53 73 39 36 52 2b 39 31 6d 79 ADggEPADCCAQoCggEBANOySs96R+91my
171a80 50 36 4f 69 2f 57 55 45 57 4a 4e 54 72 47 61 39 76 2b 32 77 42 6f 71 4f 41 44 0a 45 52 30 33 55 P6Oi/WUEWJNTrGa9v+2wBoqOAD.ER03U
171aa0 41 69 66 54 55 70 6f 6c 44 57 7a 55 39 47 55 59 36 63 67 56 71 2f 65 55 58 6a 73 4b 6a 33 7a 53 AifTUpolDWzU9GUY6cgVq/eUXjsKj3zS
171ac0 45 68 51 50 67 72 66 52 6c 57 4c 4a 32 33 44 45 45 30 4e 6b 56 4a 44 32 49 66 67 58 55 34 32 74 EhQPgrfRlWLJ23DEE0NkVJD2IfgXU42t
171ae0 53 48 4b 58 7a 6c 41 0a 42 46 39 62 66 73 79 6a 78 69 75 70 51 42 37 5a 4e 6f 54 57 53 50 4f 53 SHKXzlA.BF9bfsyjxiupQB7ZNoTWSPOS
171b00 48 6a 52 47 49 43 54 42 70 46 47 4f 53 68 72 76 55 44 39 70 58 52 6c 2f 52 63 50 48 41 59 39 52 HjRGICTBpFGOShrvUD9pXRl/RcPHAY9R
171b20 79 53 50 6f 63 71 36 30 76 46 59 4a 66 78 4c 4c 48 4c 47 76 0a 4b 5a 41 4b 79 56 58 4d 44 39 4f ySPocq60vFYJfxLLHLGv.KZAKyVXMD9O
171b40 30 47 75 31 48 4e 56 70 4b 37 5a 78 7a 42 43 48 51 71 72 30 4d 45 37 55 41 79 69 5a 73 78 47 73 0Gu1HNVpK7ZxzBCHQqr0ME7UAyiZsxGs
171b60 4d 6c 46 71 56 6c 4e 70 51 6d 76 48 2f 70 53 74 6d 4d 61 54 4a 4f 4b 44 66 48 52 2b 34 43 53 37 MlFqVlNpQmvH/pStmMaTJOKDfHR+4CS7
171b80 7a 0a 70 2b 68 6e 55 71 75 56 48 2b 42 47 50 74 69 6b 77 38 70 61 78 54 47 41 36 45 69 61 6e 35 z.p+hnUquVH+BGPtikw8paxTGA6Eian5
171ba0 52 70 2f 68 6e 64 32 48 4e 38 67 63 71 57 33 6f 37 74 73 7a 49 46 5a 59 51 30 35 75 62 39 56 78 Rp/hnd2HN8gcqW3o7tszIFZYQ05ub9Vx
171bc0 43 31 58 33 61 2f 4c 37 41 51 44 63 55 43 0a 41 77 45 41 41 61 4f 43 41 52 6f 77 67 67 45 57 4d C1X3a/L7AQDcUC.AwEAAaOCARowggEWM
171be0 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 30 4f 42 A8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OB
171c00 42 59 45 46 50 33 61 46 4d 53 66 4d 4e 34 68 76 52 35 43 4f 66 79 72 59 79 4e 4a 0a 34 50 47 45 BYEFP3aFMSfMN4hvR5COfyrYyNJ.4PGE
171c20 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 43 42 30 77 59 44 56 52 30 66 MA4GA1UdDwEB/wQEAwIBBjCB0wYDVR0f
171c40 42 49 48 4c 4d 49 48 49 4d 49 47 41 6f 48 36 67 66 49 5a 36 62 47 52 68 63 44 6f 76 4c 32 52 70 BIHLMIHIMIGAoH6gfIZ6bGRhcDovL2Rp
171c60 63 6d 56 6a 64 47 39 79 0a 65 53 35 6b 4c 58 52 79 64 58 4e 30 4c 6d 35 6c 64 43 39 44 54 6a 31 cmVjdG9y.eS5kLXRydXN0Lm5ldC9DTj1
171c80 45 4c 56 52 53 56 56 4e 55 4a 54 49 77 55 6d 39 76 64 43 55 79 4d 45 4e 73 59 58 4e 7a 4a 54 49 ELVRSVVNUJTIwUm9vdCUyMENsYXNzJTI
171ca0 77 4d 79 55 79 4d 45 4e 42 4a 54 49 77 4d 69 55 79 4d 44 49 77 0a 4d 44 6b 73 54 7a 31 45 4c 56 wMyUyMENBJTIwMiUyMDIw.MDksTz1ELV
171cc0 52 79 64 58 4e 30 4a 54 49 77 52 32 31 69 53 43 78 44 50 55 52 46 50 32 4e 6c 63 6e 52 70 5a 6d RydXN0JTIwR21iSCxDPURFP2NlcnRpZm
171ce0 6c 6a 59 58 52 6c 63 6d 56 32 62 32 4e 68 64 47 6c 76 62 6d 78 70 63 33 51 77 51 36 42 42 6f 44 ljYXRlcmV2b2NhdGlvbmxpc3QwQ6BBoD
171d00 2b 47 0a 50 57 68 30 64 48 41 36 4c 79 39 33 64 33 63 75 5a 43 31 30 63 6e 56 7a 64 43 35 75 5a +G.PWh0dHA6Ly93d3cuZC10cnVzdC5uZ
171d20 58 51 76 59 33 4a 73 4c 32 51 74 64 48 4a 31 63 33 52 66 63 6d 39 76 64 46 39 6a 62 47 46 7a 63 XQvY3JsL2QtdHJ1c3Rfcm9vdF9jbGFzc
171d40 31 38 7a 58 32 4e 68 58 7a 4a 66 4d 6a 41 77 0a 4f 53 35 6a 63 6d 77 77 44 51 59 4a 4b 6f 5a 49 18zX2NhXzJfMjAw.OS5jcmwwDQYJKoZI
171d60 68 76 63 4e 41 51 45 4c 42 51 41 44 67 67 45 42 41 48 2b 58 32 7a 44 49 33 36 53 63 66 53 46 36 hvcNAQELBQADggEBAH+X2zDI36ScfSF6
171d80 67 48 44 4f 46 42 4a 70 69 42 53 56 59 45 51 42 72 4c 4c 70 4d 45 2b 62 55 4d 4a 6d 0a 32 48 36 gHDOFBJpiBSVYEQBrLLpME+bUMJm.2H6
171da0 4e 4d 4c 56 77 4d 65 6e 69 61 63 66 7a 63 4e 73 67 46 59 62 51 44 66 43 2b 72 41 46 31 68 4d 35 NMLVwMeniacfzcNsgFYbQDfC+rAF1hM5
171dc0 2b 6e 30 32 2f 74 32 41 37 6e 50 50 4b 48 65 4a 65 61 4e 69 6a 6e 5a 66 6c 51 47 44 53 4e 69 48 +n02/t2A7nPPKHeJeaNijnZflQGDSNiH
171de0 2b 30 4c 53 34 46 39 70 30 0a 6f 33 2f 55 33 37 43 59 41 71 78 76 61 32 73 73 4a 53 52 79 6f 57 +0LS4F9p0.o3/U37CYAqxva2ssJSRyoW
171e00 58 75 4a 56 72 6c 35 6a 4c 6e 38 74 2b 72 53 66 72 7a 6b 47 6b 6a 32 77 54 5a 35 31 78 59 2f 47 XuJVrl5jLn8t+rSfrzkGkj2wTZ51xY/G
171e20 58 55 6c 37 37 4d 2f 43 34 4b 7a 43 55 71 4e 51 54 34 59 4a 45 56 0a 64 54 31 42 2f 79 4d 66 47 XUl77M/C4KzCUqNQT4YJEV.dT1B/yMfG
171e40 63 68 73 36 34 4a 54 42 4b 62 6b 54 43 4a 4e 6a 59 79 36 7a 6c 74 7a 37 47 52 55 55 47 33 52 6e chs64JTBKbkTCJNjYy6zltz7GRUUG3Rn
171e60 46 58 37 61 63 4d 32 77 34 79 38 50 49 57 6d 61 77 6f 6d 44 65 43 54 6d 47 43 75 66 73 59 6b 6c FX7acM2w4y8PIWmawomDeCTmGCufsYkl
171e80 34 70 68 0a 58 35 47 4f 5a 70 49 4a 68 7a 62 4e 69 35 73 74 50 76 5a 52 31 46 44 55 57 53 69 39 4ph.X5GOZpIJhzbNi5stPvZR1FDUWSi9
171ea0 67 2f 4c 4d 4b 48 74 54 68 6d 33 59 4a 6f 68 77 31 2b 71 52 7a 54 36 35 79 73 43 51 62 6c 72 47 g/LMKHtThm3YJohw1+qRzT65ysCQblrG
171ec0 58 6e 52 6c 31 31 7a 2b 6f 2b 49 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 XnRl11z+o+I=.-----END.CERTIFICAT
171ee0 45 2d 2d 2d 2d 2d 0a 0a 44 2d 54 52 55 53 54 20 52 6f 6f 74 20 43 6c 61 73 73 20 33 20 43 41 20 E-----..D-TRUST.Root.Class.3.CA.
171f00 32 20 45 56 20 32 30 30 39 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 2.EV.2009.======================
171f20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 ===========.-----BEGIN.CERTIFICA
171f40 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 51 7a 43 43 41 79 75 67 41 77 49 42 41 67 49 44 43 59 50 30 TE-----.MIIEQzCCAyugAwIBAgIDCYP0
171f60 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 4d 46 41 78 43 7a 41 4a 42 67 4e 56 MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNV
171f80 42 41 59 54 41 6b 52 46 4d 52 55 77 45 77 59 44 56 51 51 4b 0a 44 41 78 45 4c 56 52 79 64 58 4e BAYTAkRFMRUwEwYDVQQK.DAxELVRydXN
171fa0 30 49 45 64 74 59 6b 67 78 4b 6a 41 6f 42 67 4e 56 42 41 4d 4d 49 55 51 74 56 46 4a 56 55 31 51 0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1Q
171fc0 67 55 6d 39 76 64 43 42 44 62 47 46 7a 63 79 41 7a 49 45 4e 42 49 44 49 67 52 56 59 67 4d 6a 41 gUm9vdCBDbGFzcyAzIENBIDIgRVYgMjA
171fe0 77 0a 4f 54 41 65 46 77 30 77 4f 54 45 78 4d 44 55 77 4f 44 55 77 4e 44 5a 61 46 77 30 79 4f 54 w.OTAeFw0wOTExMDUwODUwNDZaFw0yOT
172000 45 78 4d 44 55 77 4f 44 55 77 4e 44 5a 61 4d 46 41 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b ExMDUwODUwNDZaMFAxCzAJBgNVBAYTAk
172020 52 46 4d 52 55 77 45 77 59 44 56 51 51 4b 0a 44 41 78 45 4c 56 52 79 64 58 4e 30 49 45 64 74 59 RFMRUwEwYDVQQK.DAxELVRydXN0IEdtY
172040 6b 67 78 4b 6a 41 6f 42 67 4e 56 42 41 4d 4d 49 55 51 74 56 46 4a 56 55 31 51 67 55 6d 39 76 64 kgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vd
172060 43 42 44 62 47 46 7a 63 79 41 7a 49 45 4e 42 49 44 49 67 52 56 59 67 4d 6a 41 77 0a 4f 54 43 43 CBDbGFzcyAzIENBIDIgRVYgMjAw.OTCC
172080 41 53 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 45 50 41 44 43 43 ASIwDQYJKoZIhvcNAQEBBQADggEPADCC
1720a0 41 51 6f 43 67 67 45 42 41 4a 6e 78 68 44 52 77 75 69 2b 33 4d 4b 43 4f 76 58 77 45 7a 37 35 69 AQoCggEBAJnxhDRwui+3MKCOvXwEz75i
1720c0 76 4a 6e 39 67 70 66 53 0a 65 67 70 6e 6c 6a 67 4a 39 68 42 4f 6c 53 4a 7a 6d 59 33 61 46 53 33 vJn9gpfS.egpnljgJ9hBOlSJzmY3aFS3
1720e0 6e 42 66 77 5a 63 79 4b 33 6a 70 67 41 76 44 77 39 72 4b 46 73 2b 39 5a 35 4a 55 75 74 38 4d 78 nBfwZcyK3jpgAvDw9rKFs+9Z5JUut8Mx
172100 6b 32 6f 67 2b 4b 62 67 50 43 64 4d 30 33 54 50 31 59 74 48 68 0a 7a 52 6e 70 37 68 68 50 54 46 k2og+KbgPCdM03TP1YtHh.zRnp7hhPTF
172120 69 75 34 68 37 57 44 46 73 56 57 74 67 36 75 4d 51 59 5a 42 37 6a 4d 37 4b 31 69 58 64 4f 44 4c iu4h7WDFsVWtg6uMQYZB7jM7K1iXdODL
172140 2f 5a 6c 47 73 54 6c 32 38 53 6f 2f 36 5a 71 51 54 4d 46 65 78 67 61 44 62 74 43 48 75 33 39 62 /ZlGsTl28So/6ZqQTMFexgaDbtCHu39b
172160 2b 54 0a 37 57 59 78 67 34 7a 47 63 54 53 48 54 68 66 71 72 34 75 52 6a 52 78 57 51 61 34 69 4e +T.7WYxg4zGcTSHThfqr4uRjRxWQa4iN
172180 31 34 33 38 68 33 5a 30 53 30 4e 4c 32 6c 52 70 37 35 6d 70 6f 6f 36 4b 72 33 48 47 72 48 68 46 1438h3Z0S0NL2lRp75mpoo6Kr3HGrHhF
1721a0 50 43 2b 4f 68 32 35 7a 31 75 78 61 76 36 30 0a 73 55 59 67 6f 76 73 65 4f 33 44 76 6b 35 68 39 PC+Oh25z1uxav60.sUYgovseO3Dvk5h9
1721c0 6a 48 4f 57 38 73 58 76 68 58 43 74 4b 53 62 38 48 67 51 2b 48 4b 44 59 44 38 74 53 67 32 4a 38 jHOW8sXvhXCtKSb8HgQ+HKDYD8tSg2J8
1721e0 37 6f 74 54 6c 5a 43 70 56 36 4c 71 59 51 58 59 2b 55 33 45 4a 2f 70 75 72 65 33 35 0a 31 31 48 7otTlZCpV6LqYQXY+U3EJ/pure35.11H
172200 33 61 36 55 43 41 77 45 41 41 61 4f 43 41 53 51 77 67 67 45 67 4d 41 38 47 41 31 55 64 45 77 45 3a6UCAwEAAaOCASQwggEgMA8GA1UdEwE
172220 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4e 4f 55 69 6b 78 B/wQFMAMBAf8wHQYDVR0OBBYEFNOUikx
172240 69 45 79 6f 5a 4c 73 79 76 0a 63 6f 70 39 4e 74 65 61 48 4e 78 6e 4d 41 34 47 41 31 55 64 44 77 iEyoZLsyv.cop9NteaHNxnMA4GA1UdDw
172260 45 42 2f 77 51 45 41 77 49 42 42 6a 43 42 33 51 59 44 56 52 30 66 42 49 48 56 4d 49 48 53 4d 49 EB/wQEAwIBBjCB3QYDVR0fBIHVMIHSMI
172280 47 48 6f 49 47 45 6f 49 47 42 68 6e 39 73 5a 47 46 77 4f 69 38 76 0a 5a 47 6c 79 5a 57 4e 30 62 GHoIGEoIGBhn9sZGFwOi8v.ZGlyZWN0b
1722a0 33 4a 35 4c 6d 51 74 64 48 4a 31 63 33 51 75 62 6d 56 30 4c 30 4e 4f 50 55 51 74 56 46 4a 56 55 3J5LmQtdHJ1c3QubmV0L0NOPUQtVFJVU
1722c0 31 51 6c 4d 6a 42 53 62 32 39 30 4a 54 49 77 51 32 78 68 63 33 4d 6c 4d 6a 41 7a 4a 54 49 77 51 1QlMjBSb290JTIwQ2xhc3MlMjAzJTIwQ
1722e0 30 45 6c 0a 4d 6a 41 79 4a 54 49 77 52 56 59 6c 4d 6a 41 79 4d 44 41 35 4c 45 38 39 52 43 31 55 0El.MjAyJTIwRVYlMjAyMDA5LE89RC1U
172300 63 6e 56 7a 64 43 55 79 4d 45 64 74 59 6b 67 73 51 7a 31 45 52 54 39 6a 5a 58 4a 30 61 57 5a 70 cnVzdCUyMEdtYkgsQz1ERT9jZXJ0aWZp
172320 59 32 46 30 5a 58 4a 6c 64 6d 39 6a 59 58 52 70 0a 62 32 35 73 61 58 4e 30 4d 45 61 67 52 4b 42 Y2F0ZXJldm9jYXRp.b25saXN0MEagRKB
172340 43 68 6b 42 6f 64 48 52 77 4f 69 38 76 64 33 64 33 4c 6d 51 74 64 48 4a 31 63 33 51 75 62 6d 56 ChkBodHRwOi8vd3d3LmQtdHJ1c3QubmV
172360 30 4c 32 4e 79 62 43 39 6b 4c 58 52 79 64 58 4e 30 58 33 4a 76 62 33 52 66 59 32 78 68 0a 63 33 0L2NybC9kLXRydXN0X3Jvb3RfY2xh.c3
172380 4e 66 4d 31 39 6a 59 56 38 79 58 32 56 32 58 7a 49 77 4d 44 6b 75 59 33 4a 73 4d 41 30 47 43 53 NfM19jYV8yX2V2XzIwMDkuY3JsMA0GCS
1723a0 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 49 42 41 51 41 30 37 58 74 61 50 4b 53 55 69 4f qGSIb3DQEBCwUAA4IBAQA07XtaPKSUiO
1723c0 38 61 45 58 55 48 4c 37 50 2b 0a 50 50 6f 65 55 53 62 72 68 2f 59 70 33 75 44 78 31 4d 59 6b 43 8aEXUHL7P+.PPoeUSbrh/Yp3uDx1MYkC
1723e0 65 6e 42 7a 31 55 62 74 44 44 5a 7a 68 72 2b 42 6c 47 6d 46 61 51 74 37 37 4a 4c 76 79 41 6f 4a enBz1UbtDDZzhr+BlGmFaQt77JLvyAoJ
172400 55 6e 52 70 6a 5a 33 4e 4f 68 6b 33 31 4b 78 45 63 64 7a 65 73 30 35 0a 6e 73 4b 74 6a 48 45 68 UnRpjZ3NOhk31KxEcdzes05.nsKtjHEh
172420 38 6c 70 72 72 39 38 38 54 6c 57 76 73 6f 52 6c 46 49 6d 35 64 38 73 71 4d 62 37 50 6f 32 33 50 8lprr988TlWvsoRlFIm5d8sqMb7Po23P
172440 62 30 69 55 4d 6b 5a 76 35 33 47 4d 6f 4b 61 45 47 54 63 48 38 67 4e 46 43 53 75 47 64 58 7a 66 b0iUMkZv53GMoKaEGTcH8gNFCSuGdXzf
172460 58 32 6c 58 0a 41 4e 74 75 32 4b 5a 79 49 6b 74 51 31 48 57 59 56 74 2b 33 47 50 39 44 51 31 43 X2lX.ANtu2KZyIktQ1HWYVt+3GP9DQ1C
172480 75 65 6b 52 37 38 48 6c 52 31 30 4d 39 70 39 4f 42 30 2f 44 4a 54 37 6e 61 78 70 65 47 30 49 4c uekR78HlR10M9p9OB0/DJT7naxpeG0IL
1724a0 44 35 45 4a 74 2f 72 44 69 5a 45 34 4f 4a 75 64 41 0a 4e 43 61 31 43 49 6e 58 43 47 4e 6a 4f 43 D5EJt/rDiZE4OJudA.NCa1CInXCGNjOC
1724c0 64 31 48 6a 50 71 62 71 6a 64 6e 35 6c 50 64 45 32 42 69 59 42 4c 33 5a 71 58 4b 56 77 76 76 6f d1HjPqbqjdn5lPdE2BiYBL3ZqXKVwvvo
1724e0 46 42 75 59 7a 2f 36 6e 31 67 42 70 37 4e 31 7a 33 54 4c 71 4d 56 76 4b 6a 6d 4a 75 56 76 0a 77 FBuYz/6n1gBp7N1z3TLqMVvKjmJuVv.w
172500 39 79 34 41 79 48 71 6e 78 62 78 4c 46 53 31 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 9y4AyHqnxbxLFS1.-----END.CERTIFI
172520 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 50 53 43 50 72 6f 63 65 72 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d CATE-----..PSCProcert.==========
172540 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 .-----BEGIN.CERTIFICATE-----.MII
172560 4a 68 6a 43 43 42 32 36 67 41 77 49 42 41 67 49 42 43 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 JhjCCB26gAwIBAgIBCzANBgkqhkiG9w0
172580 42 41 51 73 46 41 44 43 43 41 52 34 78 50 6a 41 38 42 67 4e 56 42 41 4d 54 4e 55 46 31 64 47 39 BAQsFADCCAR4xPjA8BgNVBAMTNUF1dG9
1725a0 79 61 57 52 68 5a 43 42 6b 0a 5a 53 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 6a 61 57 39 75 49 46 yaWRhZCBk.ZSBDZXJ0aWZpY2FjaW9uIF
1725c0 4a 68 61 58 6f 67 5a 47 56 73 49 45 56 7a 64 47 46 6b 62 79 42 57 5a 57 35 6c 65 6d 39 73 59 57 JhaXogZGVsIEVzdGFkbyBWZW5lem9sYW
1725e0 35 76 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 57 52 54 45 51 0a 4d 41 34 47 41 31 55 45 42 5vMQswCQYDVQQGEwJWRTEQ.MA4GA1UEB
172600 78 4d 48 51 32 46 79 59 57 4e 68 63 7a 45 5a 4d 42 63 47 41 31 55 45 43 42 4d 51 52 47 6c 7a 64 xMHQ2FyYWNhczEZMBcGA1UECBMQRGlzd
172620 48 4a 70 64 47 38 67 51 32 46 77 61 58 52 68 62 44 45 32 4d 44 51 47 41 31 55 45 43 68 4d 74 55 HJpdG8gQ2FwaXRhbDE2MDQGA1UEChMtU
172640 32 6c 7a 0a 64 47 56 74 59 53 42 4f 59 57 4e 70 62 32 35 68 62 43 42 6b 5a 53 42 44 5a 58 4a 30 2lz.dGVtYSBOYWNpb25hbCBkZSBDZXJ0
172660 61 57 5a 70 59 32 46 6a 61 57 39 75 49 45 56 73 5a 57 4e 30 63 6d 39 75 61 57 4e 68 4d 55 4d 77 aWZpY2FjaW9uIEVsZWN0cm9uaWNhMUMw
172680 51 51 59 44 56 51 51 4c 45 7a 70 54 64 58 42 6c 0a 63 6d 6c 75 64 47 56 75 5a 47 56 75 59 32 6c QQYDVQQLEzpTdXBl.cmludGVuZGVuY2l
1726a0 68 49 47 52 6c 49 46 4e 6c 63 6e 5a 70 59 32 6c 76 63 79 42 6b 5a 53 42 44 5a 58 4a 30 61 57 5a hIGRlIFNlcnZpY2lvcyBkZSBDZXJ0aWZ
1726c0 70 59 32 46 6a 61 57 39 75 49 45 56 73 5a 57 4e 30 63 6d 39 75 61 57 4e 68 4d 53 55 77 0a 49 77 pY2FjaW9uIEVsZWN0cm9uaWNhMSUw.Iw
1726e0 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 6b 42 46 68 5a 68 59 33 4a 68 61 58 70 41 63 33 56 7a 59 32 YJKoZIhvcNAQkBFhZhY3JhaXpAc3VzY2
172700 56 79 64 47 55 75 5a 32 39 69 4c 6e 5a 6c 4d 42 34 58 44 54 45 77 4d 54 49 79 4f 44 45 32 4e 54 VydGUuZ29iLnZlMB4XDTEwMTIyODE2NT
172720 45 77 4d 46 6f 58 44 54 49 77 0a 4d 54 49 79 4e 54 49 7a 4e 54 6b 31 4f 56 6f 77 67 64 45 78 4a EwMFoXDTIw.MTIyNTIzNTk1OVowgdExJ
172740 6a 41 6b 42 67 6b 71 68 6b 69 47 39 77 30 42 43 51 45 57 46 32 4e 76 62 6e 52 68 59 33 52 76 51 jAkBgkqhkiG9w0BCQEWF2NvbnRhY3RvQ
172760 48 42 79 62 32 4e 6c 63 6e 51 75 62 6d 56 30 4c 6e 5a 6c 4d 51 38 77 0a 44 51 59 44 56 51 51 48 HByb2NlcnQubmV0LnZlMQ8w.DQYDVQQH
172780 45 77 5a 44 61 47 46 6a 59 57 38 78 45 44 41 4f 42 67 4e 56 42 41 67 54 42 30 31 70 63 6d 46 75 EwZDaGFjYW8xEDAOBgNVBAgTB01pcmFu
1727a0 5a 47 45 78 4b 6a 41 6f 42 67 4e 56 42 41 73 54 49 56 42 79 62 33 5a 6c 5a 57 52 76 63 69 42 6b ZGExKjAoBgNVBAsTIVByb3ZlZWRvciBk
1727c0 5a 53 42 44 0a 5a 58 4a 30 61 57 5a 70 59 32 46 6b 62 33 4d 67 55 46 4a 50 51 30 56 53 56 44 45 ZSBD.ZXJ0aWZpY2Fkb3MgUFJPQ0VSVDE
1727e0 32 4d 44 51 47 41 31 55 45 43 68 4d 74 55 32 6c 7a 64 47 56 74 59 53 42 4f 59 57 4e 70 62 32 35 2MDQGA1UEChMtU2lzdGVtYSBOYWNpb25
172800 68 62 43 42 6b 5a 53 42 44 5a 58 4a 30 61 57 5a 70 0a 59 32 46 6a 61 57 39 75 49 45 56 73 5a 57 hbCBkZSBDZXJ0aWZp.Y2FjaW9uIEVsZW
172820 4e 30 63 6d 39 75 61 57 4e 68 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 57 52 54 45 54 4d 42 N0cm9uaWNhMQswCQYDVQQGEwJWRTETMB
172840 45 47 41 31 55 45 41 78 4d 4b 55 46 4e 44 55 48 4a 76 59 32 56 79 64 44 43 43 41 69 49 77 0a 44 EGA1UEAxMKUFNDUHJvY2VydDCCAiIw.D
172860 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 49 50 41 44 43 43 41 67 6f 43 67 QYJKoZIhvcNAQEBBQADggIPADCCAgoCg
172880 67 49 42 41 4e 57 33 39 4b 4f 55 4d 36 46 47 71 56 56 68 53 51 32 6f 68 33 4e 65 6b 53 31 77 77 gIBANW39KOUM6FGqVVhSQ2oh3NekS1ww
1728a0 51 59 61 6c 4e 6f 39 37 42 56 43 0a 77 66 57 4d 72 6d 6f 58 38 59 71 74 2f 49 43 56 36 6f 4e 45 QYalNo97BVC.wfWMrmoX8Yqt/ICV6oNE
1728c0 6f 6c 74 36 56 63 35 50 70 36 58 56 75 72 67 66 6f 43 66 41 55 46 4d 2b 6a 62 6e 41 44 72 67 56 olt6Vc5Pp6XVurgfoCfAUFM+jbnADrgV
1728e0 33 4e 5a 73 2b 4a 37 34 42 43 58 66 67 49 38 51 68 64 31 39 4c 33 75 41 0a 33 56 63 41 5a 43 50 3NZs+J74BCXfgI8Qhd19L3uA.3VcAZCP
172900 34 62 73 6d 2b 6c 55 2f 68 64 65 7a 67 66 6c 36 56 7a 62 48 76 76 6e 70 43 32 4d 6b 73 30 2b 73 4bsm+lU/hdezgfl6VzbHvvnpC2Mks0+s
172920 61 47 69 4b 4c 74 33 38 47 69 65 55 38 39 52 4c 41 75 39 4d 4c 6d 56 2b 51 66 49 34 74 4c 33 63 aGiKLt38GieU89RLAu9MLmV+QfI4tL3c
172940 7a 6b 6b 6f 68 0a 52 71 69 70 43 4b 7a 78 39 68 45 43 32 5a 55 57 6e 6f 30 76 6c 75 59 43 33 58 zkkoh.RqipCKzx9hEC2ZUWno0vluYC3X
172960 58 43 46 43 70 61 31 73 6c 39 4a 63 4c 42 2f 4b 70 6e 68 65 4c 73 76 74 46 38 50 50 71 76 31 57 XCFCpa1sl9JcLB/KpnheLsvtF8PPqv1W
172980 37 2f 55 30 48 55 39 54 49 34 73 65 4a 66 78 50 6d 4f 0a 45 4f 38 47 71 51 4b 4a 2f 2b 4d 4d 62 7/U0HU9TI4seJfxPmO.EO8GqQKJ/+MMb
1729a0 70 66 67 33 35 33 62 49 64 44 30 50 67 68 70 62 4e 6a 55 35 44 62 34 67 37 61 79 4e 6f 2b 63 37 pfg353bIdD0PghpbNjU5Db4g7ayNo+c7
1729c0 7a 6f 33 46 6e 32 2f 6f 6d 6e 58 4f 31 74 79 30 4b 2b 71 50 31 78 6d 6b 36 77 4b 49 6d 47 32 0a zo3Fn2/omnXO1ty0K+qP1xmk6wKImG2.
1729e0 30 71 43 5a 79 46 53 54 58 61 69 32 30 62 31 64 43 6c 35 33 6c 4b 49 74 77 49 4b 4f 76 4d 6f 44 0qCZyFSTXai20b1dCl53lKItwIKOvMoD
172a00 4b 6a 53 75 63 2f 48 55 74 51 79 39 76 6d 65 62 56 4f 76 68 2b 71 42 61 37 44 68 2b 50 73 48 4d KjSuc/HUtQy9vmebVOvh+qBa7Dh+PsHM
172a20 6f 73 64 45 4d 58 58 71 50 2b 55 48 0a 30 71 75 68 4a 5a 62 32 35 75 53 67 58 54 63 59 4f 57 45 osdEMXXqP+UH.0quhJZb25uSgXTcYOWE
172a40 41 4d 31 31 47 31 41 44 45 74 4d 6f 38 38 61 4b 6a 50 76 4d 36 2f 32 6b 77 4c 6b 44 64 39 70 2b AM11G1ADEtMo88aKjPvM6/2kwLkDd9p+
172a60 63 4a 73 6d 57 4e 36 33 6e 4f 61 4b 2f 36 6d 6e 62 56 53 4b 56 55 79 71 55 0a 74 64 2b 74 46 6a cJsmWN63nOaK/6mnbVSKVUyqU.td+tFj
172a80 69 42 64 57 62 6a 78 79 77 62 6b 35 79 71 6a 4b 50 4b 32 57 77 38 46 32 32 63 33 48 78 54 34 43 iBdWbjxywbk5yqjKPK2Ww8F22c3HxT4C
172aa0 41 6e 51 7a 62 35 45 75 45 38 58 4c 31 6d 76 36 4a 70 49 7a 69 34 6d 57 43 5a 44 6c 5a 54 4f 70 AnQzb5EuE8XL1mv6JpIzi4mWCZDlZTOp
172ac0 78 2b 46 49 79 77 0a 42 6d 2f 78 68 6e 61 51 72 2f 32 76 2f 70 44 47 6a 35 39 2f 69 35 49 6a 6e x+FIyw.Bm/xhnaQr/2v/pDGj59/i5Ijn
172ae0 4f 63 56 64 6f 2f 56 69 35 51 54 63 6d 6e 37 4b 32 46 6a 69 4f 2f 6d 70 46 37 6d 6f 78 64 71 57 OcVdo/Vi5QTcmn7K2FjiO/mpF7moxdqW
172b00 45 66 4c 63 55 38 55 43 31 37 49 41 67 67 6d 6f 73 76 70 0a 72 32 75 4b 47 63 66 4c 46 46 62 31 EfLcU8UC17IAggmosvp.r2uKGcfLFFb1
172b20 34 64 71 31 32 66 79 2f 63 7a 6a 61 2b 65 65 76 62 71 51 33 34 67 63 6e 41 67 4d 42 41 41 47 6a 4dq12fy/czja+eevbqQ34gcnAgMBAAGj
172b40 67 67 4d 58 4d 49 49 44 45 7a 41 53 42 67 4e 56 48 52 4d 42 41 66 38 45 43 44 41 47 41 51 48 2f ggMXMIIDEzASBgNVHRMBAf8ECDAGAQH/
172b60 0a 41 67 45 42 4d 44 63 47 41 31 55 64 45 67 51 77 4d 43 36 43 44 33 4e 31 63 32 4e 6c 63 6e 52 .AgEBMDcGA1UdEgQwMC6CD3N1c2NlcnR
172b80 6c 4c 6d 64 76 59 69 35 32 5a 61 41 62 42 67 56 67 68 6c 34 43 41 71 41 53 44 42 42 53 53 55 59 lLmdvYi52ZaAbBgVghl4CAqASDBBSSUY
172ba0 74 52 79 30 79 4d 44 41 77 4e 44 41 7a 0a 4e 69 30 77 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 tRy0yMDAwNDAz.Ni0wMB0GA1UdDgQWBB
172bc0 52 42 44 78 6b 34 71 70 6c 2f 51 67 75 6b 31 79 65 59 56 4b 49 58 54 43 31 52 56 44 43 43 41 56 RBDxk4qpl/Qguk1yeYVKIXTC1RVDCCAV
172be0 41 47 41 31 55 64 49 77 53 43 41 55 63 77 67 67 46 44 67 42 53 74 75 79 49 64 0a 78 75 44 53 41 AGA1UdIwSCAUcwggFDgBStuyId.xuDSA
172c00 61 6a 39 64 6c 42 53 6b 2b 32 59 77 55 32 75 30 36 47 43 41 53 61 6b 67 67 45 69 4d 49 49 42 48 aj9dlBSk+2YwU2u06GCASakggEiMIIBH
172c20 6a 45 2b 4d 44 77 47 41 31 55 45 41 78 4d 31 51 58 56 30 62 33 4a 70 5a 47 46 6b 49 47 52 6c 49 jE+MDwGA1UEAxM1QXV0b3JpZGFkIGRlI
172c40 45 4e 6c 63 6e 52 70 0a 5a 6d 6c 6a 59 57 4e 70 62 32 34 67 55 6d 46 70 65 69 42 6b 5a 57 77 67 ENlcnRp.ZmljYWNpb24gUmFpeiBkZWwg
172c60 52 58 4e 30 59 57 52 76 49 46 5a 6c 62 6d 56 36 62 32 78 68 62 6d 38 78 43 7a 41 4a 42 67 4e 56 RXN0YWRvIFZlbmV6b2xhbm8xCzAJBgNV
172c80 42 41 59 54 41 6c 5a 46 4d 52 41 77 44 67 59 44 56 51 51 48 0a 45 77 64 44 59 58 4a 68 59 32 46 BAYTAlZFMRAwDgYDVQQH.EwdDYXJhY2F
172ca0 7a 4d 52 6b 77 46 77 59 44 56 51 51 49 45 78 42 45 61 58 4e 30 63 6d 6c 30 62 79 42 44 59 58 42 zMRkwFwYDVQQIExBEaXN0cml0byBDYXB
172cc0 70 64 47 46 73 4d 54 59 77 4e 41 59 44 56 51 51 4b 45 79 31 54 61 58 4e 30 5a 57 31 68 49 45 35 pdGFsMTYwNAYDVQQKEy1TaXN0ZW1hIE5
172ce0 68 0a 59 32 6c 76 62 6d 46 73 49 47 52 6c 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 57 4e 70 62 32 h.Y2lvbmFsIGRlIENlcnRpZmljYWNpb2
172d00 34 67 52 57 78 6c 59 33 52 79 62 32 35 70 59 32 45 78 51 7a 42 42 42 67 4e 56 42 41 73 54 4f 6c 4gRWxlY3Ryb25pY2ExQzBBBgNVBAsTOl
172d20 4e 31 63 47 56 79 61 57 35 30 5a 57 35 6b 0a 5a 57 35 6a 61 57 45 67 5a 47 55 67 55 32 56 79 64 N1cGVyaW50ZW5k.ZW5jaWEgZGUgU2Vyd
172d40 6d 6c 6a 61 57 39 7a 49 47 52 6c 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 57 4e 70 62 32 34 67 52 mljaW9zIGRlIENlcnRpZmljYWNpb24gR
172d60 57 78 6c 59 33 52 79 62 32 35 70 59 32 45 78 4a 54 41 6a 42 67 6b 71 68 6b 69 47 0a 39 77 30 42 WxlY3Ryb25pY2ExJTAjBgkqhkiG.9w0B
172d80 43 51 45 57 46 6d 46 6a 63 6d 46 70 65 6b 42 7a 64 58 4e 6a 5a 58 4a 30 5a 53 35 6e 62 32 49 75 CQEWFmFjcmFpekBzdXNjZXJ0ZS5nb2Iu
172da0 64 6d 57 43 41 51 6f 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 45 30 47 dmWCAQowDgYDVR0PAQH/BAQDAgEGME0G
172dc0 41 31 55 64 45 51 52 47 0a 4d 45 53 43 44 6e 42 79 62 32 4e 6c 63 6e 51 75 62 6d 56 30 4c 6e 5a A1UdEQRG.MESCDnByb2NlcnQubmV0LnZ
172de0 6c 6f 42 55 47 42 57 43 47 58 67 49 42 6f 41 77 4d 43 6c 42 54 51 79 30 77 4d 44 41 77 4d 44 4b loBUGBWCGXgIBoAwMClBTQy0wMDAwMDK
172e00 67 47 77 59 46 59 49 5a 65 41 67 4b 67 45 67 77 51 55 6b 6c 47 0a 4c 55 6f 74 4d 7a 45 32 4d 7a gGwYFYIZeAgKgEgwQUklG.LUotMzE2Mz
172e20 55 7a 4e 7a 4d 74 4e 7a 42 32 42 67 4e 56 48 52 38 45 62 7a 42 74 4d 45 61 67 52 4b 42 43 68 6b UzNzMtNzB2BgNVHR8EbzBtMEagRKBChk
172e40 42 6f 64 48 52 77 4f 69 38 76 64 33 64 33 4c 6e 4e 31 63 32 4e 6c 63 6e 52 6c 4c 6d 64 76 59 69 BodHRwOi8vd3d3LnN1c2NlcnRlLmdvYi
172e60 35 32 0a 5a 53 39 73 59 33 49 76 51 30 56 53 56 45 6c 47 53 55 4e 42 52 45 38 74 55 6b 46 4a 57 52.ZS9sY3IvQ0VSVElGSUNBRE8tUkFJW
172e80 69 31 54 53 45 45 7a 4f 44 52 44 55 6b 78 45 52 56 49 75 59 33 4a 73 4d 43 4f 67 49 61 41 66 68 i1TSEEzODRDUkxERVIuY3JsMCOgIaAfh
172ea0 68 31 73 5a 47 46 77 4f 69 38 76 59 57 4e 79 0a 59 57 6c 36 4c 6e 4e 31 63 32 4e 6c 63 6e 52 6c h1sZGFwOi8vYWNy.YWl6LnN1c2NlcnRl
172ec0 4c 6d 64 76 59 69 35 32 5a 54 41 33 42 67 67 72 42 67 45 46 42 51 63 42 41 51 51 72 4d 43 6b 77 LmdvYi52ZTA3BggrBgEFBQcBAQQrMCkw
172ee0 4a 77 59 49 4b 77 59 42 42 51 55 48 4d 41 47 47 47 32 68 30 64 48 41 36 4c 79 39 76 0a 59 33 4e JwYIKwYBBQUHMAGGG2h0dHA6Ly9v.Y3N
172f00 77 4c 6e 4e 31 63 32 4e 6c 63 6e 52 6c 4c 6d 64 76 59 69 35 32 5a 54 42 42 42 67 4e 56 48 53 41 wLnN1c2NlcnRlLmdvYi52ZTBBBgNVHSA
172f20 45 4f 6a 41 34 4d 44 59 47 42 6d 43 47 58 67 4d 42 41 6a 41 73 4d 43 6f 47 43 43 73 47 41 51 55 EOjA4MDYGBmCGXgMBAjAsMCoGCCsGAQU
172f40 46 42 77 49 42 46 68 35 6f 0a 64 48 52 77 4f 69 38 76 64 33 64 33 4c 6e 4e 31 63 32 4e 6c 63 6e FBwIBFh5o.dHRwOi8vd3d3LnN1c2Nlcn
172f60 52 6c 4c 6d 64 76 59 69 35 32 5a 53 39 6b 63 47 4d 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 RlLmdvYi52ZS9kcGMwDQYJKoZIhvcNAQ
172f80 45 4c 42 51 41 44 67 67 49 42 41 43 74 5a 36 79 4b 5a 75 34 53 71 0a 54 39 36 51 78 74 47 47 63 ELBQADggIBACtZ6yKZu4Sq.T96QxtGGc
172fa0 53 4f 65 53 77 4f 52 52 33 43 37 77 4a 4a 67 37 4f 44 55 35 32 33 47 30 2b 31 6e 67 33 64 53 31 SOeSwORR3C7wJJg7ODU523G0+1ng3dS1
172fc0 66 4c 6c 64 36 63 32 73 75 4e 55 76 74 6d 37 43 70 73 52 37 32 48 30 78 70 6b 7a 6d 66 57 76 41 fLld6c2suNUvtm7CpsR72H0xpkzmfWvA
172fe0 44 6d 4e 0a 67 37 2b 6d 76 54 56 2b 4c 46 77 78 4e 47 39 73 32 2f 4e 6b 41 5a 69 71 6c 43 78 42 DmN.g7+mvTV+LFwxNG9s2/NkAZiqlCxB
173000 33 52 57 47 79 6d 73 70 54 68 62 41 53 66 7a 58 67 30 67 54 42 31 47 45 4d 56 4b 49 75 34 59 58 3RWGymspThbASfzXg0gTB1GEMVKIu4YX
173020 78 32 73 76 69 69 43 74 78 51 75 50 63 44 34 71 0a 75 78 74 78 6a 37 6d 6b 6f 50 33 59 6c 64 6d x2sviiCtxQuPcD4q.uxtxj7mkoP3Yldm
173040 76 57 62 38 6c 4b 35 6a 70 59 35 4d 76 59 42 37 45 71 76 68 33 39 59 74 73 4c 2b 31 2b 4c 72 56 vWb8lK5jpY5MvYB7Eqvh39YtsL+1+LrV
173060 50 51 41 33 75 76 46 64 33 35 39 6d 32 31 44 2b 56 4a 7a 6f 67 31 65 57 75 71 32 77 31 0a 6e 38 PQA3uvFd359m21D+VJzog1eWuq2w1.n8
173080 47 68 48 56 6e 63 68 49 48 75 54 51 66 69 53 4c 61 65 53 35 55 74 51 62 48 68 36 4e 35 2b 4c 77 GhHVnchIHuTQfiSLaeS5UtQbHh6N5+Lw
1730a0 55 65 61 4f 36 2f 75 35 42 6c 4f 73 6a 75 36 72 45 59 4e 78 78 69 6b 36 53 67 4d 65 78 78 62 4a UeaO6/u5BlOsju6rEYNxxik6SgMexxbJ
1730c0 48 6d 70 48 6d 4a 57 68 53 6e 0a 46 46 41 46 54 4b 51 41 56 7a 41 73 77 62 56 68 6c 74 77 2b 48 HmpHmJWhSn.FFAFTKQAVzAswbVhltw+H
1730e0 6f 53 76 4f 55 4c 50 35 64 41 73 73 53 53 38 33 30 44 44 37 58 39 6a 53 72 33 68 54 78 4a 6b 68 oSvOULP5dAssSS830DD7X9jSr3hTxJkh
173100 70 58 7a 73 4f 66 49 74 2b 46 54 76 5a 4c 6d 38 77 79 57 75 65 76 6f 0a 35 70 4c 74 70 34 45 4a pXzsOfIt+FTvZLm8wyWuevo.5pLtp4EJ
173120 46 41 76 38 6c 58 72 50 6a 39 59 30 54 7a 59 53 33 46 37 52 4e 48 58 47 52 6f 41 76 6c 51 53 4d FAv8lXrPj9Y0TzYS3F7RNHXGRoAvlQSM
173140 78 34 62 45 71 43 61 4a 71 44 38 5a 6d 34 47 37 55 61 52 4b 68 71 73 4c 45 51 2b 78 72 6d 4e 54 x4bEqCaJqD8Zm4G7UaRKhqsLEQ+xrmNT
173160 62 53 6a 71 0a 33 54 4e 57 4f 42 79 79 72 59 44 54 31 33 4b 39 6d 6d 79 5a 59 2b 67 41 75 30 46 bSjq.3TNWOByyrYDT13K9mmyZY+gAu0F
173180 32 42 62 64 62 6d 52 69 4b 77 37 67 53 58 46 62 50 56 67 78 39 36 4f 4c 50 37 62 78 30 52 2f 76 2BbdbmRiKw7gSXFbPVgx96OLP7bx0R/v
1731a0 75 30 78 64 4f 49 6b 39 57 2f 31 44 7a 4c 75 59 35 0a 70 6f 4c 57 63 63 72 65 74 39 57 36 61 41 u0xdOIk9W/1DzLuY5.poLWccret9W6aA
1731c0 6a 74 6d 63 7a 39 6f 70 4c 4c 61 62 69 64 2b 51 71 6b 70 6a 35 50 6b 79 67 71 59 57 77 48 4a 67 jtmcz9opLLabid+Qqkpj5PkygqYWwHJg
1731e0 44 2f 6c 6c 39 6f 68 72 69 34 7a 73 70 56 34 4b 75 78 50 58 2b 59 31 7a 4d 4f 57 6a 33 59 0a 65 D/ll9ohri4zspV4KuxPX+Y1zMOWj3Y.e
173200 4d 4c 45 59 43 2f 48 59 76 42 68 6b 64 49 34 73 50 61 65 56 64 74 41 67 41 55 53 4d 38 34 64 6b MLEYC/HYvBhkdI4sPaeVdtAgAUSM84dk
173220 70 76 52 61 62 50 2f 76 2f 47 53 43 6d 45 31 50 39 33 2b 68 76 53 38 34 42 70 78 73 32 4b 6d 0a pvRabP/v/GSCmE1P93+hvS84Bpxs2Km.
173240 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 68 69 6e 61 -----END.CERTIFICATE-----..China
173260 20 49 6e 74 65 72 6e 65 74 20 4e 65 74 77 6f 72 6b 20 49 6e 66 6f 72 6d 61 74 69 6f 6e 20 43 65 .Internet.Network.Information.Ce
173280 6e 74 65 72 20 45 56 20 43 65 72 74 69 66 69 63 61 74 65 73 20 52 6f 6f 74 0a 3d 3d 3d 3d 3d 3d nter.EV.Certificates.Root.======
1732a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
1732c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 ========================.-----BE
1732e0 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 39 7a 43 43 41 74 2b GIN.CERTIFICATE-----.MIID9zCCAt+
173300 67 41 77 49 42 41 67 49 45 53 4a 38 41 41 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 gAwIBAgIESJ8AATANBgkqhkiG9w0BAQU
173320 46 41 44 43 42 69 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 51 30 34 78 4d 6a 41 77 42 67 4e FADCBijELMAkGA1UEBhMCQ04xMjAwBgN
173340 56 0a 42 41 6f 4d 4b 55 4e 6f 61 57 35 68 49 45 6c 75 64 47 56 79 62 6d 56 30 49 45 35 6c 64 48 V.BAoMKUNoaW5hIEludGVybmV0IE5ldH
173360 64 76 63 6d 73 67 53 57 35 6d 62 33 4a 74 59 58 52 70 62 32 34 67 51 32 56 75 64 47 56 79 4d 55 dvcmsgSW5mb3JtYXRpb24gQ2VudGVyMU
173380 63 77 52 51 59 44 56 51 51 44 44 44 35 44 0a 61 47 6c 75 59 53 42 4a 62 6e 52 6c 63 6d 35 6c 64 cwRQYDVQQDDD5D.aGluYSBJbnRlcm5ld
1733a0 43 42 4f 5a 58 52 33 62 33 4a 72 49 45 6c 75 5a 6d 39 79 62 57 46 30 61 57 39 75 49 45 4e 6c 62 CBOZXR3b3JrIEluZm9ybWF0aW9uIENlb
1733c0 6e 52 6c 63 69 42 46 56 69 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 58 4d 67 0a 55 6d 39 76 nRlciBFViBDZXJ0aWZpY2F0ZXMg.Um9v
1733e0 64 44 41 65 46 77 30 78 4d 44 41 34 4d 7a 45 77 4e 7a 45 78 4d 6a 56 61 46 77 30 7a 4d 44 41 34 dDAeFw0xMDA4MzEwNzExMjVaFw0zMDA4
173400 4d 7a 45 77 4e 7a 45 78 4d 6a 56 61 4d 49 47 4b 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 44 MzEwNzExMjVaMIGKMQswCQYDVQQGEwJD
173420 54 6a 45 79 4d 44 41 47 0a 41 31 55 45 43 67 77 70 51 32 68 70 62 6d 45 67 53 57 35 30 5a 58 4a TjEyMDAG.A1UECgwpQ2hpbmEgSW50ZXJ
173440 75 5a 58 51 67 54 6d 56 30 64 32 39 79 61 79 42 4a 62 6d 5a 76 63 6d 31 68 64 47 6c 76 62 69 42 uZXQgTmV0d29yayBJbmZvcm1hdGlvbiB
173460 44 5a 57 35 30 5a 58 49 78 52 7a 42 46 42 67 4e 56 42 41 4d 4d 0a 50 6b 4e 6f 61 57 35 68 49 45 DZW50ZXIxRzBFBgNVBAMM.PkNoaW5hIE
173480 6c 75 64 47 56 79 62 6d 56 30 49 45 35 6c 64 48 64 76 63 6d 73 67 53 57 35 6d 62 33 4a 74 59 58 ludGVybmV0IE5ldHdvcmsgSW5mb3JtYX
1734a0 52 70 62 32 34 67 51 32 56 75 64 47 56 79 49 45 56 57 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 Rpb24gQ2VudGVyIEVWIENlcnRpZmljYX
1734c0 52 6c 0a 63 79 42 53 62 32 39 30 4d 49 49 42 49 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 Rl.cyBSb290MIIBIjANBgkqhkiG9w0BA
1734e0 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 6d 33 35 7a 37 72 30 37 65 QEFAAOCAQ8AMIIBCgKCAQEAm35z7r07e
173500 4b 70 6b 51 30 48 31 55 4e 2b 55 38 69 36 79 0a 6a 55 71 4f 52 6c 54 53 49 52 4c 49 4f 54 4a 43 KpkQ0H1UN+U8i6y.jUqORlTSIRLIOTJC
173520 42 75 6d 44 31 5a 39 53 37 65 56 6e 41 7a 74 55 77 59 79 5a 6d 63 7a 70 77 41 2f 2f 44 64 6d 45 BumD1Z9S7eVnAztUwYyZmczpwA//DdmE
173540 45 62 4b 34 30 63 74 62 33 42 37 35 61 44 46 6b 34 5a 76 36 64 4f 74 6f 75 53 43 56 0a 39 38 59 EbK40ctb3B75aDFk4Zv6dOtouSCV.98Y
173560 50 6a 55 65 73 57 67 62 64 59 61 76 69 37 4e 69 66 46 79 32 63 79 6a 77 31 6c 31 56 78 7a 55 4f PjUesWgbdYavi7NifFy2cyjw1l1VxzUO
173580 46 73 55 63 57 39 53 78 54 67 48 62 50 30 77 42 6b 76 55 43 5a 33 63 7a 59 32 38 53 66 31 68 4e FsUcW9SxTgHbP0wBkvUCZ3czY28Sf1hN
1735a0 66 51 59 4f 4c 2b 51 32 48 0a 6b 6c 59 30 62 42 6f 51 43 78 66 56 57 68 79 58 57 49 51 38 68 42 fQYOL+Q2H.klY0bBoQCxfVWhyXWIQ8hB
1735c0 6f 75 58 4a 45 30 62 68 6c 66 66 78 64 70 78 57 58 76 61 79 48 47 31 56 41 36 76 32 47 35 42 59 ouXJE0bhlffxdpxWXvayHG1VA6v2G5BY
1735e0 33 76 62 7a 51 36 73 6d 38 55 59 37 38 57 4f 35 75 70 4b 76 32 33 0a 4b 7a 68 6d 42 73 55 73 34 3vbzQ6sm8UY78WO5upKv23.KzhmBsUs4
173600 71 70 6e 48 6b 57 6e 6a 51 52 6d 51 76 61 50 4b 2b 2b 49 49 47 6d 50 4d 6f 77 55 63 39 6f 72 68 qpnHkWnjQRmQvaPK++IIGmPMowUc9orh
173620 70 46 6a 49 70 72 79 70 39 76 4f 69 59 75 72 58 63 63 55 77 56 73 77 61 68 2b 78 74 35 34 75 67 pFjIpryp9vOiYurXccUwVswah+xt54ug
173640 51 45 43 0a 37 63 2b 57 58 6d 50 62 71 4f 59 34 74 77 49 44 41 51 41 42 6f 32 4d 77 59 54 41 66 QEC.7c+WXmPbqOY4twIDAQABo2MwYTAf
173660 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 52 38 63 6b 73 35 78 38 44 62 59 71 56 50 6d 36 6f 59 BgNVHSMEGDAWgBR8cks5x8DbYqVPm6oY
173680 4e 4a 4b 69 79 6f 4f 43 57 54 41 50 42 67 4e 56 0a 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 NJKiyoOCWTAPBgNV.HRMBAf8EBTADAQH
1736a0 2f 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 /MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4
1736c0 45 46 67 51 55 66 48 4a 4c 4f 63 66 41 32 32 4b 6c 54 35 75 71 47 44 53 53 6f 73 71 44 0a 67 6c EFgQUfHJLOcfA22KlT5uqGDSSosqD.gl
1736e0 6b 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 45 42 41 43 72 44 78 30 kwDQYJKoZIhvcNAQEFBQADggEBACrDx0
173700 4d 33 6a 39 32 74 70 4c 49 4d 37 74 77 55 62 59 38 6f 70 4a 68 4a 79 77 79 41 36 76 50 74 49 32 M3j92tpLIM7twUbY8opJhJywyA6vPtI2
173720 5a 31 66 63 58 54 49 57 64 35 0a 30 58 50 46 74 51 4f 33 57 4b 77 4d 56 43 2f 47 56 68 4d 50 4d Z1fcXTIWd5.0XPFtQO3WKwMVC/GVhMPM
173740 64 6f 47 35 32 55 37 48 57 38 32 32 38 67 64 2b 66 32 41 42 73 71 6a 50 57 59 57 71 4a 31 4d 46 doG52U7HW8228gd+f2ABsqjPWYWqJ1MF
173760 6e 33 41 6c 55 61 31 55 65 54 69 48 39 66 71 42 6b 31 6a 6a 5a 61 4d 0a 37 2b 63 7a 56 30 49 36 n3AlUa1UeTiH9fqBk1jjZaM.7+czV0I6
173780 36 34 7a 42 65 63 68 4e 64 6e 33 65 39 72 47 33 67 65 43 67 2b 61 46 34 52 68 63 61 56 70 6a 77 64zBechNdn3e9rG3geCg+aF4RhcaVpjw
1737a0 54 6a 32 72 48 4f 33 73 4f 64 77 48 53 50 64 6a 2f 67 61 75 77 71 52 63 61 6c 73 79 69 4d 58 48 Tj2rHO3sOdwHSPdj/gauwqRcalsyiMXH
1737c0 4d 34 57 73 0a 5a 6b 4a 48 77 6c 67 6b 6d 65 48 6c 50 75 56 31 4c 49 35 44 31 6c 30 38 65 42 36 M4Ws.ZkJHwlgkmeHlPuV1LI5D1l08eB6
1737e0 6f 6c 59 49 70 55 4e 48 52 46 72 72 76 77 62 35 36 32 62 54 59 7a 42 35 4d 52 75 46 33 73 54 47 olYIpUNHRFrrvwb562bTYzB5MRuF3sTG
173800 72 76 53 72 49 7a 6f 39 75 6f 56 31 2f 41 33 55 30 0a 35 4b 32 4a 52 56 52 65 76 71 34 6f 70 62 rvSrIzo9uoV1/A3U0.5K2JRVRevq4opb
173820 73 2f 65 48 6e 72 63 37 4d 4b 44 66 32 2b 79 66 64 57 72 50 61 33 37 53 2b 62 49 53 6e 48 4f 4c s/eHnrc7MKDf2+yfdWrPa37S+bISnHOL
173840 61 56 78 41 54 79 77 79 33 39 46 43 71 51 6d 62 6b 48 7a 4a 38 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 aVxATywy39FCqQmbkHzJ8=.-----END.
173860 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 77 69 73 73 63 6f 6d 20 52 6f 6f 74 20 CERTIFICATE-----..Swisscom.Root.
173880 43 41 20 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 CA.2.==================.-----BEG
1738a0 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 32 54 43 43 41 38 47 67 IN.CERTIFICATE-----.MIIF2TCCA8Gg
1738c0 41 77 49 42 41 67 49 51 48 70 34 6f 36 45 6a 79 35 65 2f 44 66 45 6f 65 57 68 68 6e 74 6a 41 4e AwIBAgIQHp4o6Ejy5e/DfEoeWhhntjAN
1738e0 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 6b 4d 51 73 77 43 51 59 44 56 51 51 47 BgkqhkiG9w0BAQsFADBkMQswCQYDVQQG
173900 0a 45 77 4a 6a 61 44 45 52 4d 41 38 47 41 31 55 45 43 68 4d 49 55 33 64 70 63 33 4e 6a 62 32 30 .EwJjaDERMA8GA1UEChMIU3dpc3Njb20
173920 78 4a 54 41 6a 42 67 4e 56 42 41 73 54 48 45 52 70 5a 32 6c 30 59 57 77 67 51 32 56 79 64 47 6c xJTAjBgNVBAsTHERpZ2l0YWwgQ2VydGl
173940 6d 61 57 4e 68 64 47 55 67 55 32 56 79 0a 64 6d 6c 6a 5a 58 4d 78 47 7a 41 5a 42 67 4e 56 42 41 maWNhdGUgU2Vy.dmljZXMxGzAZBgNVBA
173960 4d 54 45 6c 4e 33 61 58 4e 7a 59 32 39 74 49 46 4a 76 62 33 51 67 51 30 45 67 4d 6a 41 65 46 77 MTElN3aXNzY29tIFJvb3QgQ0EgMjAeFw
173980 30 78 4d 54 41 32 4d 6a 51 77 4f 44 4d 34 4d 54 52 61 46 77 30 7a 4d 54 41 32 0a 4d 6a 55 77 4e 0xMTA2MjQwODM4MTRaFw0zMTA2.MjUwN
1739a0 7a 4d 34 4d 54 52 61 4d 47 51 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6d 4e 6f 4d 52 45 77 44 zM4MTRaMGQxCzAJBgNVBAYTAmNoMREwD
1739c0 77 59 44 56 51 51 4b 45 77 68 54 64 32 6c 7a 63 32 4e 76 62 54 45 6c 4d 43 4d 47 41 31 55 45 43 wYDVQQKEwhTd2lzc2NvbTElMCMGA1UEC
1739e0 78 4d 63 52 47 6c 6e 0a 61 58 52 68 62 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 5a 53 42 54 xMcRGln.aXRhbCBDZXJ0aWZpY2F0ZSBT
173a00 5a 58 4a 32 61 57 4e 6c 63 7a 45 62 4d 42 6b 47 41 31 55 45 41 78 4d 53 55 33 64 70 63 33 4e 6a ZXJ2aWNlczEbMBkGA1UEAxMSU3dpc3Nj
173a20 62 32 30 67 55 6d 39 76 64 43 42 44 51 53 41 79 4d 49 49 43 0a 49 6a 41 4e 42 67 6b 71 68 6b 69 b20gUm9vdCBDQSAyMIIC.IjANBgkqhki
173a40 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 45 41 6c 55 4a G9w0BAQEFAAOCAg8AMIICCgKCAgEAlUJ
173a60 4f 68 4a 31 52 35 74 4d 4a 36 48 4a 61 49 32 6e 62 65 48 43 4f 46 76 45 72 6a 77 30 44 7a 70 50 OhJ1R5tMJ6HJaI2nbeHCOFvErjw0DzpP
173a80 4d 0a 4c 67 41 49 65 36 73 7a 6a 50 54 70 51 4f 59 58 54 4b 75 65 75 45 63 55 4d 6e 63 79 33 53 M.LgAIe6szjPTpQOYXTKueuEcUMncy3S
173aa0 67 4d 33 68 68 4c 58 33 61 66 2b 44 6b 37 2f 45 36 4a 32 48 7a 46 5a 2b 2b 72 30 72 6b 30 58 32 gM3hhLX3af+Dk7/E6J2HzFZ++r0rk0X2
173ac0 73 36 38 32 51 32 7a 73 4b 77 7a 78 4e 6f 0a 79 73 6a 4c 36 37 58 69 50 53 34 68 33 2b 6f 73 31 s682Q2zsKwzxNo.ysjL67XiPS4h3+os1
173ae0 4f 44 35 63 4a 5a 4d 2f 32 70 59 6d 4c 63 58 35 42 74 53 35 58 34 48 41 42 31 66 32 75 59 2b 6c OD5cJZM/2pYmLcX5BtS5X4HAB1f2uY+l
173b00 51 53 33 61 59 67 35 6f 55 46 67 4a 57 46 4c 6c 54 6c 6f 59 68 79 78 43 77 57 4a 0a 77 44 61 43 QS3aYg5oUFgJWFLlTloYhyxCwWJ.wDaC
173b20 46 43 45 2f 72 74 75 68 2f 62 78 76 48 47 43 47 74 6c 4f 55 53 62 6b 72 52 73 56 50 41 43 75 2f FCE/rtuh/bxvHGCGtlOUSbkrRsVPACu/
173b40 6f 62 76 4c 50 2b 44 48 56 78 78 58 36 4e 5a 70 2b 4d 45 6b 55 70 32 49 56 64 33 43 68 79 35 30 obvLP+DHVxxX6NZp+MEkUp2IVd3Chy50
173b60 49 39 41 55 2f 53 70 48 0a 57 72 75 6d 6e 66 32 55 35 4e 47 4b 70 56 2b 47 59 33 61 46 79 36 2f I9AU/SpH.Wrumnf2U5NGKpV+GY3aFy6/
173b80 2f 53 53 6a 38 67 4f 31 4d 65 64 4b 37 35 4d 44 76 41 65 35 51 51 51 67 31 49 33 41 72 71 52 61 /SSj8gO1MedK75MDvAe5QQQg1I3ArqRa
173ba0 30 6a 47 36 46 36 62 59 52 7a 7a 48 64 55 79 59 62 33 79 31 61 0a 53 67 4a 41 2f 4d 54 41 74 75 0jG6F6bYRzzHdUyYb3y1a.SgJA/MTAtu
173bc0 6b 78 47 67 67 6f 35 57 44 44 48 38 53 51 6a 68 42 69 59 45 51 4e 37 41 71 2b 56 52 68 78 4c 4b kxGggo5WDDH8SQjhBiYEQN7Aq+VRhxLK
173be0 58 30 73 72 77 56 59 76 38 63 34 37 34 64 32 68 35 58 73 7a 78 2b 7a 59 49 64 6b 65 4e 4c 36 79 X0srwVYv8c474d2h5Xszx+zYIdkeNL6y
173c00 78 53 0a 4e 4c 43 4b 2f 52 4a 4f 6c 72 44 72 63 48 2b 65 4f 66 64 6d 51 72 47 72 72 46 4c 61 64 xS.NLCK/RJOlrDrcH+eOfdmQrGrrFLad
173c20 6b 42 58 65 79 71 39 36 47 34 44 73 67 75 41 68 59 69 64 44 4d 66 43 64 37 43 61 6d 6c 66 30 75 kBXeyq96G4DsguAhYidDMfCd7Camlf0u
173c40 50 6f 54 58 47 69 54 4f 6d 65 6b 6c 39 41 62 0a 6d 62 65 47 4d 6b 74 67 32 4d 37 76 30 41 78 2f PoTXGiTOmekl9Ab.mbeGMktg2M7v0Ax/
173c60 6c 5a 39 76 68 30 2b 48 69 6f 35 66 43 48 79 71 57 2f 78 61 76 71 47 52 6e 31 56 39 54 72 41 4c lZ9vh0+Hio5fCHyqW/xavqGRn1V9TrAL
173c80 61 63 79 77 6c 4b 69 6e 68 2f 4c 54 53 6c 44 63 58 33 4b 77 46 6e 55 65 79 37 51 59 0a 59 70 71 acywlKinh/LTSlDcX3KwFnUey7QY.Ypq
173ca0 77 70 7a 6d 71 6d 35 39 6d 32 49 32 6d 62 4a 59 56 34 2b 62 79 2b 50 47 44 59 6d 79 37 56 65 6c wpzmqm59m2I2mbJYV4+by+PGDYmy7Vel
173cc0 68 6b 36 4d 39 39 62 46 58 69 30 38 6a 73 4a 76 6c 6c 47 6f 76 33 34 7a 66 6c 56 45 70 59 4b 45 hk6M99bFXi08jsJvllGov34zflVEpYKE
173ce0 4c 4b 65 52 63 56 56 69 33 0a 71 50 79 5a 37 69 56 4e 54 41 36 7a 30 30 79 50 68 4f 67 70 44 2f LKeRcVVi3.qPyZ7iVNTA6z00yPhOgpD/
173d00 30 51 56 41 4b 46 79 50 6e 6c 77 34 76 50 35 77 38 43 41 77 45 41 41 61 4f 42 68 6a 43 42 67 7a 0QVAKFyPnlw4vP5w8CAwEAAaOBhjCBgz
173d20 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 59 59 77 0a 48 51 59 44 56 52 30 68 42 AOBgNVHQ8BAf8EBAMCAYYw.HQYDVR0hB
173d40 42 59 77 46 44 41 53 42 67 64 67 68 58 51 42 55 77 49 42 42 67 64 67 68 58 51 42 55 77 49 42 4d BYwFDASBgdghXQBUwIBBgdghXQBUwIBM
173d60 42 49 47 41 31 55 64 45 77 45 42 2f 77 51 49 4d 41 59 42 41 66 38 43 41 51 63 77 48 51 59 44 56 BIGA1UdEwEB/wQIMAYBAf8CAQcwHQYDV
173d80 52 30 4f 0a 42 42 59 45 46 45 30 6d 49 43 4b 4a 53 39 50 56 70 41 71 68 62 39 37 69 45 6f 48 46 R0O.BBYEFE0mICKJS9PVpAqhb97iEoHF
173da0 38 54 77 75 4d 42 38 47 41 31 55 64 49 77 51 59 4d 42 61 41 46 45 30 6d 49 43 4b 4a 53 39 50 56 8TwuMB8GA1UdIwQYMBaAFE0mICKJS9PV
173dc0 70 41 71 68 62 39 37 69 45 6f 48 46 38 54 77 75 0a 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 pAqhb97iEoHF8Twu.MA0GCSqGSIb3DQE
173de0 42 43 77 55 41 41 34 49 43 41 51 41 79 43 72 4b 6b 47 38 74 39 76 6f 4a 58 69 62 6c 71 66 2f 50 BCwUAA4ICAQAyCrKkG8t9voJXiblqf/P
173e00 30 77 53 34 52 66 62 67 5a 50 6e 6d 33 71 4b 68 79 4e 32 61 62 47 75 32 73 45 7a 73 4f 0a 76 32 0wS4RfbgZPnm3qKhyN2abGu2sEzsO.v2
173e20 4c 77 6e 4e 2b 65 65 36 46 54 53 41 35 42 65 73 6f 67 70 78 63 62 74 6e 6a 73 51 4a 48 7a 51 71 LwnN+ee6FTSA5BesogpxcbtnjsQJHzQq
173e40 30 51 77 31 7a 76 2f 32 42 5a 66 38 32 46 6f 34 73 39 53 42 77 6c 41 6a 78 6e 66 66 55 79 36 53 0Qw1zv/2BZf82Fo4s9SBwlAjxnffUy6S
173e60 38 77 35 58 32 6c 65 6a 6a 51 0a 38 32 59 71 5a 68 36 4e 4d 34 4f 4b 62 33 78 75 71 46 70 31 6d 8w5X2lejjQ.82YqZh6NM4OKb3xuqFp1m
173e80 72 6a 58 32 6c 68 49 52 45 65 6f 54 50 70 4d 53 51 70 4b 77 68 49 33 71 45 41 4d 77 38 6a 68 30 rjX2lhIREeoTPpMSQpKwhI3qEAMw8jh0
173ea0 46 63 4e 6c 7a 4b 56 78 7a 71 66 6c 39 4e 58 2b 41 76 65 35 58 4c 7a 0a 6f 39 76 2f 74 64 68 5a FcNlzKVxzqfl9NX+Ave5XLz.o9v/tdhZ
173ec0 73 6e 50 64 54 53 70 78 73 72 70 4a 39 63 73 63 31 66 56 35 79 4a 6d 7a 2f 4d 46 4d 64 4f 4f 30 snPdTSpxsrpJ9csc1fV5yJmz/MFMdOO0
173ee0 76 53 6b 33 46 51 51 6f 48 74 35 46 52 6e 44 73 72 37 70 34 44 6f 6f 71 7a 67 42 35 33 4d 42 66 vSk3FQQoHt5FRnDsr7p4DooqzgB53MBf
173f00 47 57 63 73 0a 61 30 76 76 61 47 67 4c 51 2b 4f 73 77 57 49 4a 37 36 62 64 5a 57 47 67 72 34 52 GWcs.a0vvaGgLQ+OswWIJ76bdZWGgr4R
173f20 56 53 4a 46 53 48 4d 59 6c 6b 53 72 51 77 53 49 6a 59 56 6d 76 52 52 47 46 48 51 45 6b 4e 49 2f VSJFSHMYlkSrQwSIjYVmvRRGFHQEkNI/
173f40 50 73 2f 38 58 63 69 41 54 77 6f 43 71 49 53 78 78 0a 4f 51 37 51 6a 31 7a 42 30 39 47 4f 49 6e Ps/8XciATwoCqISxx.OQ7Qj1zB09GOIn
173f60 4a 47 54 42 32 57 72 6b 39 78 73 65 45 46 4b 5a 5a 5a 39 4c 75 65 64 54 33 50 44 54 63 4e 59 74 JGTB2Wrk9xseEFKZZZ9LuedT3PDTcNYt
173f80 73 6d 6a 47 4f 70 49 39 39 6e 42 6a 78 38 4f 74 6f 30 51 75 46 6d 74 45 59 45 33 73 61 57 0a 6d smjGOpI99nBjx8Oto0QuFmtEYE3saW.m
173fa0 41 39 4c 53 48 6f 6b 4d 6e 57 52 6e 36 7a 33 61 4f 6b 71 75 56 56 6c 7a 6c 31 68 30 79 64 77 32 A9LSHokMnWRn6z3aOkquVVlzl1h0ydw2
173fc0 44 66 2b 6e 37 6d 76 6f 43 35 57 74 36 4e 6c 55 65 30 37 71 78 53 2f 54 46 45 44 36 46 2b 4b 42 Df+n7mvoC5Wt6NlUe07qxS/TFED6F+KB
173fe0 5a 76 75 69 6d 36 63 37 37 39 6f 0a 2b 73 6a 61 43 2b 4e 43 79 64 41 58 46 4a 79 33 53 75 43 76 Zvuim6c779o.+sjaC+NCydAXFJy3SuCv
174000 6b 79 63 68 56 53 61 31 5a 43 2b 4e 38 66 2b 6d 51 41 57 46 42 56 7a 4b 42 78 6c 63 43 78 4d 6f kychVSa1ZC+N8f+mQAWFBVzKBxlcCxMo
174020 54 46 68 2f 77 71 58 76 52 64 70 67 30 36 35 6c 59 5a 31 54 67 33 54 43 0a 72 76 4a 63 77 68 62 TFh/wqXvRdpg065lYZ1Tg3TC.rvJcwhb
174040 74 6b 6a 36 45 50 6e 4e 67 69 4c 78 32 39 43 7a 50 30 48 31 39 30 37 68 65 30 5a 45 53 45 4f 6e tkj6EPnNgiLx29CzP0H1907he0ZESEOn
174060 4e 33 63 6f 6c 34 39 58 74 6d 53 2b 2b 64 59 46 4c 4a 50 6c 46 52 70 54 4a 4b 53 46 54 6e 43 5a N3col49XtmS++dYFLJPlFRpTJKSFTnCZ
174080 46 71 68 4d 58 0a 35 4f 66 4e 65 4f 49 35 77 53 73 53 6e 71 61 65 47 38 58 6d 44 74 6b 78 32 51 FqhMX.5OfNeOI5wSsSnqaeG8XmDtkx2Q
1740a0 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 53 77 ==.-----END.CERTIFICATE-----..Sw
1740c0 69 73 73 63 6f 6d 20 52 6f 6f 74 20 45 56 20 43 41 20 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d isscom.Root.EV.CA.2.============
1740e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 =========.-----BEGIN.CERTIFICATE
174100 2d 2d 2d 2d 2d 0a 4d 49 49 46 34 44 43 43 41 38 69 67 41 77 49 42 41 67 49 52 41 50 4c 36 5a 4f -----.MIIF4DCCA8igAwIBAgIRAPL6ZO
174120 4a 30 59 39 4f 4e 2f 52 41 64 42 42 39 32 79 6c 67 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 J0Y9ON/RAdBB92ylgwDQYJKoZIhvcNAQ
174140 45 4c 42 51 41 77 5a 7a 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 59 32 67 78 45 54 41 50 42 ELBQAwZzELMAkGA1UE.BhMCY2gxETAPB
174160 67 4e 56 42 41 6f 54 43 46 4e 33 61 58 4e 7a 59 32 39 74 4d 53 55 77 49 77 59 44 56 51 51 4c 45 gNVBAoTCFN3aXNzY29tMSUwIwYDVQQLE
174180 78 78 45 61 57 64 70 64 47 46 73 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 6c 49 46 4e 6c 0a xxEaWdpdGFsIENlcnRpZmljYXRlIFNl.
1741a0 63 6e 5a 70 59 32 56 7a 4d 52 34 77 48 41 59 44 56 51 51 44 45 78 56 54 64 32 6c 7a 63 32 4e 76 cnZpY2VzMR4wHAYDVQQDExVTd2lzc2Nv
1741c0 62 53 42 53 62 32 39 30 49 45 56 57 49 45 4e 42 49 44 49 77 48 68 63 4e 4d 54 45 77 4e 6a 49 30 bSBSb290IEVWIENBIDIwHhcNMTEwNjI0
1741e0 4d 44 6b 30 4e 54 41 34 57 68 63 4e 0a 4d 7a 45 77 4e 6a 49 31 4d 44 67 30 4e 54 41 34 57 6a 42 MDk0NTA4WhcN.MzEwNjI1MDg0NTA4WjB
174200 6e 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 6a 61 44 45 52 4d 41 38 47 41 31 55 45 43 68 4d nMQswCQYDVQQGEwJjaDERMA8GA1UEChM
174220 49 55 33 64 70 63 33 4e 6a 62 32 30 78 4a 54 41 6a 42 67 4e 56 42 41 73 54 0a 48 45 52 70 5a 32 IU3dpc3Njb20xJTAjBgNVBAsT.HERpZ2
174240 6c 30 59 57 77 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 55 67 55 32 56 79 64 6d 6c 6a 5a 58 l0YWwgQ2VydGlmaWNhdGUgU2VydmljZX
174260 4d 78 48 6a 41 63 42 67 4e 56 42 41 4d 54 46 56 4e 33 61 58 4e 7a 59 32 39 74 49 46 4a 76 62 33 MxHjAcBgNVBAMTFVN3aXNzY29tIFJvb3
174280 51 67 52 56 59 67 0a 51 30 45 67 4d 6a 43 43 41 69 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 QgRVYg.Q0EgMjCCAiIwDQYJKoZIhvcNA
1742a0 51 45 42 42 51 41 44 67 67 49 50 41 44 43 43 41 67 6f 43 67 67 49 42 41 4d 54 33 48 53 39 58 36 QEBBQADggIPADCCAgoCggIBAMT3HS9X6
1742c0 6c 64 73 39 33 42 64 59 37 42 78 55 67 6c 67 52 43 67 7a 0a 6f 33 70 4f 43 76 72 59 36 6d 79 4c lds93BdY7BxUglgRCgz.o3pOCvrY6myL
1742e0 55 52 59 61 56 61 35 55 4a 73 54 4d 52 51 64 42 54 78 42 35 66 33 48 53 65 6b 34 2f 4f 45 36 7a URYaVa5UJsTMRQdBTxB5f3HSek4/OE6z
174300 41 4d 61 56 79 6c 76 4e 77 53 71 44 31 79 63 66 4d 51 34 6a 46 72 63 6c 79 78 79 30 75 59 41 79 AMaVylvNwSqD1ycfMQ4jFrclyxy0uYAy
174320 0a 58 68 71 64 6b 2f 48 6f 50 47 41 73 70 31 35 58 47 56 68 52 58 72 77 73 56 67 75 34 32 4f 2b .Xhqdk/HoPGAsp15XGVhRXrwsVgu42O+
174340 4c 67 72 51 38 75 4d 49 6b 71 42 50 48 6f 43 45 32 47 33 70 58 4b 53 69 6e 4c 72 39 78 4a 5a 44 LgrQ8uMIkqBPHoCE2G3pXKSinLr9xJZD
174360 7a 52 49 4e 70 55 4b 54 6b 34 52 74 69 0a 47 5a 51 4a 6f 2f 50 44 76 4f 2f 30 76 65 7a 62 45 35 zRINpUKTk4Rti.GZQJo/PDvO/0vezbE5
174380 33 50 6e 55 67 4a 55 6d 66 41 4e 79 6b 52 48 76 76 53 45 61 65 46 47 48 52 35 35 45 2b 46 46 4f 3PnUgJUmfANykRHvvSEaeFGHR55E+FFO
1743a0 74 53 4e 2b 4b 78 52 64 6a 4d 44 55 4e 2f 72 68 50 53 61 79 73 2f 70 38 4c 69 0a 71 47 31 32 57 tSN+KxRdjMDUN/rhPSays/p8Li.qG12W
1743c0 30 4f 66 76 72 53 64 73 79 61 47 4f 78 39 2f 35 66 4c 6f 5a 69 67 57 4a 64 42 4c 6c 7a 69 6e 35 0OfvrSdsyaGOx9/5fLoZigWJdBLlzin5
1743e0 4d 38 4a 30 54 62 44 43 37 37 61 4f 30 52 59 6a 62 37 78 6e 67 6c 72 50 76 4d 79 78 79 75 48 78 M8J0TbDC77aO0RYjb7xnglrPvMyxyuHx
174400 75 78 65 6e 50 61 48 0a 5a 61 30 7a 4b 63 51 76 69 64 6d 35 79 38 6b 44 6e 66 74 73 6c 46 47 58 uxenPaH.Za0zKcQvidm5y8kDnftslFGX
174420 45 42 75 47 43 78 6f 62 50 2f 59 43 66 6e 76 55 78 56 46 6b 4b 4a 33 31 30 36 79 44 67 59 6a 54 EBuGCxobP/YCfnvUxVFkKJ3106yDgYjT
174440 64 4c 52 5a 6e 63 48 72 59 54 4e 61 52 64 48 4c 4f 64 41 47 0a 61 6c 4e 67 48 61 2f 32 2b 32 6d dLRZncHrYTNaRdHLOdAG.alNgHa/2+2m
174460 38 61 74 77 42 7a 37 33 35 6a 39 6d 39 57 38 45 36 58 34 37 61 44 30 75 70 6d 35 30 71 4b 47 73 8atwBz735j9m9W8E6X47aD0upm50qKGs
174480 61 43 6e 77 38 71 79 49 4c 35 58 63 74 63 66 61 43 4e 59 47 75 2b 48 75 42 35 75 72 2b 72 50 51 aCnw8qyIL5XctcfaCNYGu+HuB5ur+rPQ
1744a0 61 0a 6d 33 52 63 36 49 38 6b 39 6c 32 64 52 73 51 73 30 68 34 72 49 57 71 44 4a 32 64 56 53 71 a.m3Rc6I8k9l2dRsQs0h4rIWqDJ2dVSq
1744c0 54 6a 79 44 4b 58 5a 70 42 79 32 75 50 55 5a 43 35 66 34 36 46 71 39 6d 44 55 35 7a 58 4e 79 73 TjyDKXZpBy2uPUZC5f46Fq9mDU5zXNys
1744e0 52 6f 6a 64 64 78 79 4e 4d 6b 4d 33 4f 78 0a 62 50 6c 71 34 53 6a 62 58 38 59 39 36 4c 35 56 35 RojddxyNMkM3Ox.bPlq4SjbX8Y96L5V5
174500 6a 63 62 37 53 54 5a 44 78 6d 50 58 32 4d 59 57 46 43 42 55 57 56 76 38 70 39 2b 61 67 54 6e 4e jcb7STZDxmPX2MYWFCBUWVv8p9+agTnN
174520 43 52 78 75 6e 5a 4c 57 42 34 5a 76 52 56 67 52 61 6f 4d 45 6b 41 42 6e 52 44 69 0a 78 7a 67 48 CRxunZLWB4ZvRVgRaoMEkABnRDi.xzgH
174540 63 67 70 6c 77 4c 61 37 4a 53 6e 61 46 70 36 4c 4e 59 74 68 37 65 56 78 56 34 4f 31 50 48 47 66 cgplwLa7JSnaFp6LNYth7eVxV4O1PHGf
174560 34 30 2b 2f 66 68 36 42 6e 30 47 58 41 67 4d 42 41 41 47 6a 67 59 59 77 67 59 4d 77 44 67 59 44 40+/fh6Bn0GXAgMBAAGjgYYwgYMwDgYD
174580 56 52 30 50 41 51 48 2f 0a 42 41 51 44 41 67 47 47 4d 42 30 47 41 31 55 64 49 51 51 57 4d 42 51 VR0PAQH/.BAQDAgGGMB0GA1UdIQQWMBQ
1745a0 77 45 67 59 48 59 49 56 30 41 56 4d 43 41 67 59 48 59 49 56 30 41 56 4d 43 41 6a 41 53 42 67 4e wEgYHYIV0AVMCAgYHYIV0AVMCAjASBgN
1745c0 56 48 52 4d 42 41 66 38 45 43 44 41 47 41 51 48 2f 41 67 45 44 0a 4d 42 30 47 41 31 55 64 44 67 VHRMBAf8ECDAGAQH/AgED.MB0GA1UdDg
1745e0 51 57 42 42 52 46 32 61 57 42 62 6a 32 49 54 59 31 78 30 6b 62 42 62 6b 55 65 38 38 53 41 6e 54 QWBBRF2aWBbj2ITY1x0kbBbkUe88SAnT
174600 41 66 42 67 4e 56 48 53 4d 45 47 44 41 57 67 42 52 46 32 61 57 42 62 6a 32 49 54 59 31 78 30 6b AfBgNVHSMEGDAWgBRF2aWBbj2ITY1x0k
174620 62 42 0a 62 6b 55 65 38 38 53 41 6e 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 bB.bkUe88SAnTANBgkqhkiG9w0BAQsFA
174640 41 4f 43 41 67 45 41 6c 44 70 7a 42 70 39 53 53 7a 42 63 31 50 36 78 58 43 58 35 31 34 35 76 39 AOCAgEAlDpzBp9SSzBc1P6xXCX5145v9
174660 59 64 6b 6e 2b 30 55 6a 72 67 45 6a 69 68 4c 0a 6a 36 70 37 6a 6a 6d 30 32 56 6a 32 65 36 45 31 Ydkn+0UjrgEjihL.j6p7jjm02Vj2e6E1
174680 43 71 47 64 69 76 64 6a 35 65 75 39 4f 59 4c 55 34 33 6f 74 62 39 38 54 50 4c 72 2b 66 6c 61 59 CqGdivdj5eu9OYLU43otb98TPLr+flaY
1746a0 43 2f 4e 55 6e 38 31 45 54 6d 34 38 34 54 34 56 76 77 59 6d 6e 65 54 77 6b 4c 62 55 0a 77 70 34 C/NUn81ETm484T4VvwYmneTwkLbU.wp4
1746c0 77 4c 68 2f 76 78 33 72 45 55 4d 66 71 65 39 70 51 79 33 6f 6d 79 77 43 30 57 71 75 31 6b 78 2b wLh/vx3rEUMfqe9pQy3omywC0Wqu1kx+
1746e0 41 69 59 51 45 6c 59 32 4e 66 77 6d 54 76 39 53 6f 71 4f 52 6a 62 64 6c 6b 35 4c 67 70 57 67 69 AiYQElY2NfwmTv9SoqORjbdlk5LgpWgi
174700 2f 55 4f 47 45 44 31 56 37 0a 58 77 67 69 47 2f 57 39 6d 52 34 55 39 73 37 30 57 42 43 43 73 77 /UOGED1V7.XwgiG/W9mR4U9s70WBCCsw
174720 6f 39 47 63 47 2f 57 36 75 71 6d 64 6a 79 4d 62 33 6c 4f 47 62 63 57 41 58 48 37 57 4d 61 4c 67 o9GcG/W6uqmdjyMb3lOGbcWAXH7WMaLg
174740 71 58 66 49 65 54 4b 37 4b 4b 34 2f 48 73 47 4f 56 31 74 69 6d 48 0a 35 39 79 4c 47 6e 36 30 32 qXfIeTK7KK4/HsGOV1timH.59yLGn602
174760 4d 6e 54 69 68 64 73 66 53 6c 45 76 6f 71 71 39 58 34 36 4c 6d 67 78 6b 37 6c 71 32 70 72 67 32 MnTihdsfSlEvoqq9X46Lmgxk7lq2prg2
174780 2b 6b 75 70 59 54 4e 48 41 71 34 53 67 6a 35 6e 50 46 68 4a 70 69 54 74 33 74 6d 37 4a 46 65 33 +kupYTNHAq4Sgj5nPFhJpiTt3tm7JFe3
1747a0 56 45 2f 0a 32 33 4d 50 72 51 52 59 43 64 30 45 41 70 55 4b 50 74 4e 32 33 36 59 51 48 6f 41 39 VE/.23MPrQRYCd0EApUKPtN236YQHoA9
1747c0 36 4d 32 6b 5a 4e 45 7a 78 35 4c 48 34 6b 35 45 34 77 6e 4a 54 73 4a 64 68 77 34 53 6e 72 38 50 6M2kZNEzx5LH4k5E4wnJTsJdhw4Snr8P
1747e0 79 51 55 51 33 6e 71 6a 73 54 7a 79 50 36 57 71 0a 4a 33 6d 74 4d 58 30 66 2f 66 77 5a 61 63 58 yQUQ3nqjsTzyP6Wq.J3mtMX0f/fwZacX
174800 64 75 54 39 38 7a 63 61 30 77 6a 41 65 66 6d 36 53 31 33 39 68 64 6c 71 50 36 35 56 4e 76 42 46 duT98zca0wjAefm6S139hdlqP65VNvBF
174820 75 49 58 78 5a 4e 35 6e 51 42 72 7a 35 42 6d 30 79 46 71 58 5a 61 61 6a 68 33 44 79 41 0a 48 6d uIXxZN5nQBrz5Bm0yFqXZaajh3DyA.Hm
174840 42 52 33 4e 64 55 49 52 37 4b 59 6e 64 50 2b 74 69 50 73 79 73 36 44 58 68 79 79 57 68 42 57 6b BR3NdUIR7KYndP+tiPsys6DXhyyWhBWk
174860 64 4b 77 71 50 72 47 74 63 4b 71 7a 77 79 56 63 67 4b 45 5a 7a 66 64 4e 62 77 51 42 55 64 79 4c dKwqPrGtcKqzwyVcgKEZzfdNbwQBUdyL
174880 6d 50 74 54 62 46 72 2f 67 69 0a 75 4d 6f 64 38 39 61 32 47 51 2b 66 59 57 56 71 36 6e 54 49 66 mPtTbFr/gi.uMod89a2GQ+fYWVq6nTIf
1748a0 49 2f 44 54 31 31 6c 67 68 2f 5a 44 59 6e 61 64 58 4c 37 37 2f 46 48 5a 78 4f 7a 79 4e 45 5a 69 I/DT11lgh/ZDYnadXL77/FHZxOzyNEZi
1748c0 43 63 6d 6d 70 6c 35 66 78 37 6b 4c 44 39 37 37 76 48 65 54 59 75 57 0a 6c 38 50 56 50 33 77 62 Ccmmpl5fx7kLD977vHeTYuW.l8PVP3wb
1748e0 49 2b 32 6b 73 78 30 57 63 6b 4e 4c 49 4f 46 5a 66 73 4c 6f 72 53 61 2f 6f 76 63 3d 0a 2d 2d 2d I+2ksx0WckNLIOFZfsLorSa/ovc=.---
174900 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 41 20 44 69 73 69 67 --END.CERTIFICATE-----..CA.Disig
174920 20 52 6f 6f 74 20 52 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 .Root.R1.================.-----B
174940 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 61 54 43 43 41 31 EGIN.CERTIFICATE-----.MIIFaTCCA1
174960 47 67 41 77 49 42 41 67 49 4a 41 4d 4d 44 6d 75 35 51 6b 47 34 6f 4d 41 30 47 43 53 71 47 53 49 GgAwIBAgIJAMMDmu5QkG4oMA0GCSqGSI
174980 62 33 44 51 45 42 42 51 55 41 4d 46 49 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 4e 4c 4d 52 b3DQEBBQUAMFIxCzAJBgNVBAYTAlNLMR
1749a0 4d 77 0a 45 51 59 44 56 51 51 48 45 77 70 43 63 6d 46 30 61 58 4e 73 59 58 5a 68 4d 52 4d 77 45 Mw.EQYDVQQHEwpCcmF0aXNsYXZhMRMwE
1749c0 51 59 44 56 51 51 4b 45 77 70 45 61 58 4e 70 5a 79 42 68 4c 6e 4d 75 4d 52 6b 77 46 77 59 44 56 QYDVQQKEwpEaXNpZyBhLnMuMRkwFwYDV
1749e0 51 51 44 45 78 42 44 51 53 42 45 61 58 4e 70 0a 5a 79 42 53 62 32 39 30 49 46 49 78 4d 42 34 58 QQDExBDQSBEaXNp.ZyBSb290IFIxMB4X
174a00 44 54 45 79 4d 44 63 78 4f 54 41 35 4d 44 59 31 4e 6c 6f 58 44 54 51 79 4d 44 63 78 4f 54 41 35 DTEyMDcxOTA5MDY1NloXDTQyMDcxOTA5
174a20 4d 44 59 31 4e 6c 6f 77 55 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 55 30 73 78 0a 45 7a 41 MDY1NlowUjELMAkGA1UEBhMCU0sx.EzA
174a40 52 42 67 4e 56 42 41 63 54 43 6b 4a 79 59 58 52 70 63 32 78 68 64 6d 45 78 45 7a 41 52 42 67 4e RBgNVBAcTCkJyYXRpc2xhdmExEzARBgN
174a60 56 42 41 6f 54 43 6b 52 70 63 32 6c 6e 49 47 45 75 63 79 34 78 47 54 41 58 42 67 4e 56 42 41 4d VBAoTCkRpc2lnIGEucy4xGTAXBgNVBAM
174a80 54 45 45 4e 42 49 45 52 70 0a 63 32 6c 6e 49 46 4a 76 62 33 51 67 55 6a 45 77 67 67 49 69 4d 41 TEENBIERp.c2lnIFJvb3QgUjEwggIiMA
174aa0 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAo
174ac0 49 43 41 51 43 71 77 33 6a 33 33 4a 69 6a 70 31 70 65 64 78 69 79 0a 33 51 52 6b 44 32 50 39 6d ICAQCqw3j33Jijp1pedxiy.3QRkD2P9m
174ae0 35 59 4a 67 4e 58 6f 71 71 58 69 6e 43 61 55 4f 75 69 5a 63 34 79 64 33 39 66 66 67 2f 4e 34 54 5YJgNXoqqXinCaUOuiZc4yd39ffg/N4T
174b00 30 44 68 66 39 4b 6e 30 75 58 4b 45 35 50 6e 37 63 5a 33 58 7a 61 31 6c 4b 2f 6f 4f 49 37 62 6d 0Dhf9Kn0uXKE5Pn7cZ3Xza1lK/oOI7bm
174b20 2b 56 38 0a 75 38 79 4e 36 33 56 7a 34 53 54 4e 35 71 63 74 47 53 37 59 31 6f 70 72 46 4f 73 49 +V8.u8yN63Vz4STN5qctGS7Y1oprFOsI
174b40 59 67 72 59 33 4c 4d 41 54 63 4d 6a 66 46 39 44 43 43 4d 79 45 74 7a 74 44 4b 33 41 66 51 2b 6c YgrY3LMATcMjfF9DCCMyEtztDK3AfQ+l
174b60 65 6b 4c 5a 57 6e 44 5a 76 36 66 58 41 52 7a 32 0a 6d 36 75 4f 74 30 71 47 65 4b 41 65 56 6a 47 ekLZWnDZv6fXARz2.m6uOt0qGeKAeVjG
174b80 75 37 34 49 4b 67 45 48 33 47 38 6d 75 71 7a 49 6d 31 43 78 72 37 58 31 72 35 4f 4a 65 49 67 70 u74IKgEH3G8muqzIm1Cxr7X1r5OJeIgp
174ba0 46 79 34 51 78 54 61 7a 2b 32 39 46 48 75 76 6c 67 6c 7a 6d 78 5a 63 66 65 2b 35 6e 6b 0a 43 69 Fy4QxTaz+29FHuvlglzmxZcfe+5nk.Ci
174bc0 4b 78 4c 55 33 6c 53 43 5a 70 71 2b 4b 71 38 2f 76 38 6b 69 6b 79 36 62 4d 2b 54 52 38 6e 6f 63 KxLU3lSCZpq+Kq8/v8kiky6bM+TR8noc
174be0 32 4f 75 52 66 37 4a 54 37 4a 62 76 4e 33 32 67 30 53 39 6c 33 48 75 7a 59 51 31 56 54 57 38 2b 2OuRf7JT7JbvN32g0S9l3HuzYQ1VTW8+
174c00 44 69 52 30 6a 6d 33 68 54 61 0a 59 56 4b 76 4a 72 54 31 63 55 2f 4a 31 39 49 47 33 32 50 4b 2f DiR0jm3hTa.YVKvJrT1cU/J19IG32PK/
174c20 79 48 6f 57 51 62 67 43 4e 57 45 46 56 50 33 51 2b 56 38 78 61 43 4a 6d 47 74 7a 78 6d 6a 4f 5a yHoWQbgCNWEFVP3Q+V8xaCJmGtzxmjOZ
174c40 64 36 39 66 77 58 33 73 65 37 32 56 36 46 67 6c 63 58 4d 36 70 4d 36 0a 76 70 6d 75 6d 77 4b 6a d69fwX3se72V6FglcXM6pM6.vpmumwKj
174c60 72 63 6b 57 74 63 37 64 58 70 6c 34 66 68 6f 35 66 72 4c 41 42 61 54 41 67 71 57 6a 52 35 36 4d rckWtc7dXpl4fho5frLABaTAgqWjR56M
174c80 36 6c 79 32 76 47 66 62 35 69 70 4e 30 67 54 63 6f 36 35 46 39 37 79 4c 6e 42 79 6e 31 74 55 44 6ly2vGfb5ipN0gTco65F97yLnByn1tUD
174ca0 33 41 6a 4c 0a 4c 68 62 4b 58 45 41 7a 36 47 66 44 4c 75 65 6d 52 4f 6f 52 52 52 77 31 5a 53 30 3AjL.LhbKXEAz6GfDLuemROoRRRw1ZS0
174cc0 65 52 57 45 6b 47 34 49 75 70 5a 30 7a 58 57 58 34 51 66 6b 75 79 35 51 2f 48 36 4d 4d 4d 53 52 eRWEkG4IupZ0zXWX4Qfkuy5Q/H6MMMSR
174ce0 45 37 63 64 65 72 56 43 36 78 6b 47 62 72 50 41 58 0a 5a 63 44 34 58 57 39 62 6f 41 6f 30 50 4f E7cderVC6xkGbrPAX.ZcD4XW9boAo0PO
174d00 37 58 36 6f 69 66 6d 50 6d 76 54 69 54 36 6c 37 4a 6b 64 74 71 72 39 4f 33 6a 77 32 44 76 31 66 7X6oifmPmvTiT6l7Jkdtqr9O3jw2Dv1f
174d20 6b 43 79 43 32 66 67 36 39 6e 61 51 61 6e 4d 56 58 56 7a 30 74 76 2f 77 51 46 78 31 69 73 0a 58 kCyC2fg69naQanMVXVz0tv/wQFx1is.X
174d40 78 59 62 35 64 4b 6a 36 7a 48 62 48 7a 4d 56 54 64 44 79 70 56 50 31 79 2b 45 39 54 6d 67 74 32 xYb5dKj6zHbHzMVTdDypVP1y+E9Tmgt2
174d60 42 4c 64 71 76 4c 6d 54 5a 74 4a 35 63 55 6f 6f 62 71 77 57 73 61 67 74 51 49 44 41 51 41 42 6f BLdqvLmTZtJ5cUoobqwWsagtQIDAQABo
174d80 30 49 77 51 44 41 50 42 67 4e 56 0a 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 34 47 0IwQDAPBgNV.HRMBAf8EBTADAQH/MA4G
174da0 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU
174dc0 69 51 71 30 4f 4a 4d 61 35 71 76 75 6d 35 45 59 2b 66 55 38 50 6a 58 51 0a 30 34 49 77 44 51 59 iQq0OJMa5qvum5EY+fU8PjXQ.04IwDQY
174de0 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 44 67 67 49 42 41 44 4b 4c 39 70 31 4b 79 62 34 JKoZIhvcNAQEFBQADggIBADKL9p1Kyb4
174e00 55 35 59 79 73 4f 4d 6f 36 43 64 51 62 7a 6f 61 7a 33 65 76 55 75 69 69 2b 45 71 35 46 4c 41 52 U5YysOMo6CdQbzoaz3evUuii+Eq5FLAR
174e20 30 72 42 4e 52 0a 78 56 67 59 5a 6b 32 43 32 74 58 63 6b 38 41 6e 34 62 35 38 6e 31 4b 65 45 6c 0rBNR.xVgYZk2C2tXck8An4b58n1KeEl
174e40 62 32 31 5a 79 70 39 48 57 63 2b 6a 63 53 6a 78 79 54 37 46 66 2b 42 77 2b 72 31 52 4c 33 44 36 b21Zyp9HWc+jcSjxyT7Ff+Bw+r1RL3D6
174e60 35 68 58 6c 61 41 53 66 58 38 4d 50 57 62 54 78 39 42 0a 4c 78 79 45 30 34 6e 48 34 74 6f 43 64 5hXlaASfX8MPWbTx9B.LxyE04nH4toCd
174e80 75 30 4a 7a 32 7a 42 75 42 79 44 48 42 62 36 6c 4d 31 39 6f 4d 67 59 30 73 69 64 62 76 57 39 61 u0Jz2zBuByDHBb6lM19oMgY0sidbvW9a
174ea0 64 52 74 50 54 58 6f 48 71 4a 50 59 4e 63 48 4b 66 79 79 6f 36 53 64 62 68 57 53 56 68 6c 4d 0a dRtPTXoHqJPYNcHKfyyo6SdbhWSVhlM.
174ec0 43 72 44 70 66 4e 49 5a 54 55 4a 47 37 4c 33 39 39 6c 64 62 33 5a 68 2b 70 45 33 4d 63 67 4f 44 CrDpfNIZTUJG7L399ldb3Zh+pE3McgOD
174ee0 57 46 33 76 6b 7a 70 42 65 6d 4f 71 66 44 71 6f 39 61 79 6b 30 64 32 69 4c 62 59 71 2f 4a 38 42 WF3vkzpBemOqfDqo9ayk0d2iLbYq/J8B
174f00 6a 75 49 51 73 63 54 4b 35 47 66 62 0a 56 53 55 5a 50 2f 33 6f 4e 6e 36 7a 34 65 47 42 72 78 45 juIQscTK5Gfb.VSUZP/3oNn6z4eGBrxE
174f20 57 69 31 43 58 59 42 6d 43 41 4d 42 72 54 58 4f 34 30 52 4d 48 50 75 71 32 4d 55 2f 77 51 70 70 Wi1CXYBmCAMBrTXO40RMHPuq2MU/wQpp
174f40 74 34 68 46 30 35 5a 53 73 6a 59 53 56 50 43 47 76 78 64 70 48 79 4e 38 35 0a 59 6d 4c 4c 57 31 t4hF05ZSsjYSVPCGvxdpHyN85.YmLLW1
174f60 41 4c 31 34 46 41 42 5a 79 62 37 62 71 32 69 78 34 45 62 35 59 67 4f 65 32 6b 66 53 6e 62 53 4d AL14FABZyb7bq2ix4Eb5YgOe2kfSnbSM
174f80 36 43 33 4e 51 43 6a 52 30 45 4d 56 72 48 53 2f 42 73 59 56 4c 58 74 46 48 43 67 57 7a 4e 34 66 6C3NQCjR0EMVrHS/BsYVLXtFHCgWzN4f
174fa0 75 6e 6f 64 4b 53 0a 64 73 2b 78 44 7a 64 59 70 50 4a 53 63 57 63 2f 44 49 68 34 67 49 6e 42 79 unodKS.ds+xDzdYpPJScWc/DIh4gInBy
174fc0 4c 55 66 6b 6d 4f 2b 70 33 71 4b 56 69 77 61 71 4b 61 63 74 56 32 7a 59 39 41 54 49 4b 48 72 6b LUfkmO+p3qKViwaqKactV2zY9ATIKHrk
174fe0 57 7a 51 6a 58 32 76 33 77 76 6b 46 37 6d 47 6e 6a 69 78 0a 6c 41 78 59 6a 4f 42 56 71 6a 74 6a WzQjX2v3wvkF7mGnjix.lAxYjOBVqjtj
175000 62 5a 71 4a 59 4c 68 6b 4b 70 4c 47 4e 2f 52 2b 51 30 4f 33 63 2b 67 42 35 33 2b 58 44 39 66 79 bZqJYLhkKpLGN/R+Q0O3c+gB53+XD9fy
175020 65 78 6e 39 47 74 65 50 79 66 71 46 61 33 71 64 6e 6f 6d 32 70 69 69 5a 6b 34 68 41 39 7a 37 4e exn9GtePyfqFa3qdnom2piiZk4hA9z7N
175040 0a 55 61 50 4b 36 75 39 35 52 79 47 31 2f 6a 4c 69 78 38 4e 52 62 37 36 41 64 50 43 6b 77 7a 72 .UaPK6u95RyG1/jLix8NRb76AdPCkwzr
175060 79 54 2b 6c 66 33 78 6b 4b 38 6a 73 54 51 36 77 78 70 4c 50 6e 36 2f 77 59 31 67 47 70 38 79 71 yT+lf3xkK8jsTQ6wxpLPn6/wY1gGp8yq
175080 50 4e 67 37 72 74 4c 47 38 74 30 7a 4a 0a 61 37 2b 68 38 39 6e 30 37 65 4c 77 34 2b 31 6b 6e 6a PNg7rtLG8t0zJ.a7+h89n07eLw4+1knj
1750a0 30 76 6c 6c 4a 50 67 46 4f 4c 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 0vllJPgFOL.-----END.CERTIFICATE-
1750c0 2d 2d 2d 2d 0a 0a 43 41 20 44 69 73 69 67 20 52 6f 6f 74 20 52 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d ----..CA.Disig.Root.R2.=========
1750e0 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d =======.-----BEGIN.CERTIFICATE--
175100 2d 2d 2d 0a 4d 49 49 46 61 54 43 43 41 31 47 67 41 77 49 42 41 67 49 4a 41 4a 4b 34 69 4e 75 77 ---.MIIFaTCCA1GgAwIBAgIJAJK4iNuw
175120 69 73 46 6a 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 4d 46 49 78 43 7a 41 4a isFjMA0GCSqGSIb3DQEBCwUAMFIxCzAJ
175140 42 67 4e 56 42 41 59 54 41 6c 4e 4c 4d 52 4d 77 0a 45 51 59 44 56 51 51 48 45 77 70 43 63 6d 46 BgNVBAYTAlNLMRMw.EQYDVQQHEwpCcmF
175160 30 61 58 4e 73 59 58 5a 68 4d 52 4d 77 45 51 59 44 56 51 51 4b 45 77 70 45 61 58 4e 70 5a 79 42 0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyB
175180 68 4c 6e 4d 75 4d 52 6b 77 46 77 59 44 56 51 51 44 45 78 42 44 51 53 42 45 61 58 4e 70 0a 5a 79 hLnMuMRkwFwYDVQQDExBDQSBEaXNp.Zy
1751a0 42 53 62 32 39 30 49 46 49 79 4d 42 34 58 44 54 45 79 4d 44 63 78 4f 54 41 35 4d 54 55 7a 4d 46 BSb290IFIyMB4XDTEyMDcxOTA5MTUzMF
1751c0 6f 58 44 54 51 79 4d 44 63 78 4f 54 41 35 4d 54 55 7a 4d 46 6f 77 55 6a 45 4c 4d 41 6b 47 41 31 oXDTQyMDcxOTA5MTUzMFowUjELMAkGA1
1751e0 55 45 42 68 4d 43 55 30 73 78 0a 45 7a 41 52 42 67 4e 56 42 41 63 54 43 6b 4a 79 59 58 52 70 63 UEBhMCU0sx.EzARBgNVBAcTCkJyYXRpc
175200 32 78 68 64 6d 45 78 45 7a 41 52 42 67 4e 56 42 41 6f 54 43 6b 52 70 63 32 6c 6e 49 47 45 75 63 2xhdmExEzARBgNVBAoTCkRpc2lnIGEuc
175220 79 34 78 47 54 41 58 42 67 4e 56 42 41 4d 54 45 45 4e 42 49 45 52 70 0a 63 32 6c 6e 49 46 4a 76 y4xGTAXBgNVBAMTEENBIERp.c2lnIFJv
175240 62 33 51 67 55 6a 49 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 b3QgUjIwggIiMA0GCSqGSIb3DQEBAQUA
175260 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 69 6f 38 51 41 43 64 61 46 58 53 31 74 A4ICDwAwggIKAoICAQCio8QACdaFXS1t
175280 46 50 62 43 0a 77 33 4f 65 4e 63 4a 78 56 58 36 42 2b 36 74 47 55 4f 44 42 66 45 6c 34 35 71 74 FPbC.w3OeNcJxVX6B+6tGUODBfEl45qt
1752a0 35 57 44 7a 61 2f 33 77 63 6e 39 69 58 41 6e 67 2b 61 30 45 45 36 55 47 39 76 67 4d 73 52 66 59 5WDza/3wcn9iXAng+a0EE6UG9vgMsRfY
1752c0 76 5a 4e 53 72 58 61 4e 48 50 57 53 62 36 57 69 61 0a 78 73 77 62 50 37 71 2b 73 6f 73 30 41 69 vZNSrXaNHPWSb6Wia.xswbP7q+sos0Ai
1752e0 36 59 56 52 6e 38 6a 47 2b 71 58 39 70 4d 7a 6b 30 44 49 61 50 59 30 6a 53 54 56 70 62 4c 54 41 6YVRn8jG+qX9pMzk0DIaPY0jSTVpbLTA
175300 77 41 46 6a 78 66 47 73 33 49 78 32 79 6d 72 64 4d 78 70 37 7a 6f 35 65 46 6d 31 74 4c 37 0a 41 wAFjxfGs3Ix2ymrdMxp7zo5eFm1tL7.A
175320 37 52 42 5a 63 6b 51 72 67 34 46 59 38 61 41 61 6d 6b 77 2f 64 4c 75 6b 4f 38 4e 4a 39 2b 66 6c 7RBZckQrg4FY8aAamkw/dLukO8NJ9+fl
175340 58 50 30 34 53 58 61 62 42 62 65 51 54 67 30 36 6f 76 38 30 65 67 45 46 47 45 74 51 58 36 73 78 XP04SXabBbeQTg06ov80egEFGEtQX6sx
175360 33 64 4f 79 31 46 55 2b 31 36 53 0a 47 42 73 45 57 6d 6a 47 79 63 54 36 74 78 4f 67 6d 4c 63 52 3dOy1FU+16S.GBsEWmjGycT6txOgmLcR
175380 4b 37 66 57 56 38 78 38 6e 68 66 52 79 79 58 2b 68 6b 34 6b 4c 6c 59 4d 65 45 32 65 41 52 4b 6d K7fWV8x8nhfRyyX+hk4kLlYMeE2eARKm
1753a0 4b 36 63 42 5a 57 35 38 59 68 32 45 68 4e 2f 71 77 47 75 31 70 53 71 56 0a 67 38 4e 54 45 51 78 K6cBZW58Yh2EhN/qwGu1pSqV.g8NTEQx
1753c0 7a 48 51 75 79 52 70 44 52 51 6a 72 4f 51 47 36 56 72 66 2f 47 6c 4b 31 75 6c 34 53 4f 66 57 2b zHQuyRpDRQjrOQG6Vrf/GlK1ul4SOfW+
1753e0 65 69 6f 41 4e 53 57 31 7a 34 6e 75 53 48 73 50 7a 77 66 50 72 4c 67 56 76 32 52 76 50 4e 33 59 eioANSW1z4nuSHsPzwfPrLgVv2RvPN3Y
175400 45 79 4c 52 61 0a 35 42 65 6e 79 39 31 32 48 39 41 5a 64 75 67 73 42 62 50 57 6e 44 54 59 6c 74 EyLRa.5Beny912H9AZdugsBbPWnDTYlt
175420 78 68 68 35 45 46 35 45 51 49 4d 38 48 61 75 51 68 6c 31 4b 36 79 4e 67 33 72 75 6a 69 36 44 4f xhh5EF5EQIM8HauQhl1K6yNg3ruji6DO
175440 57 62 6e 75 75 4e 5a 74 32 5a 7a 39 61 4a 51 66 59 45 0a 6b 6f 6f 70 4b 57 31 72 4f 68 7a 6e 64 WbnuuNZt2Zz9aJQfYE.koopKW1rOhznd
175460 58 30 43 63 51 37 7a 77 4f 65 39 79 78 6e 64 6e 57 43 79 77 6d 5a 67 74 72 45 45 37 73 6e 6d 68 X0CcQ7zwOe9yxndnWCywmZgtrEE7snmh
175480 72 6d 61 5a 6b 43 6f 35 78 48 74 67 55 55 44 69 2f 5a 6e 57 65 6a 42 42 68 47 39 33 63 2b 41 0a rmaZkCo5xHtgUUDi/ZnWejBBhG93c+A.
1754a0 41 6b 39 6c 51 48 68 63 52 31 44 49 6d 2b 59 66 67 58 76 6b 52 4b 68 62 68 5a 72 69 33 6c 72 56 Ak9lQHhcR1DIm+YfgXvkRKhbhZri3lrV
1754c0 78 2f 6b 36 52 47 5a 4c 35 44 4a 55 66 4f 52 73 6e 4c 4d 4f 50 52 65 69 73 6a 51 53 31 6e 36 79 x/k6RGZL5DJUfORsnLMOPReisjQS1n6y
1754e0 71 45 6d 37 30 58 6f 6f 51 4c 36 69 0a 46 68 2f 66 35 44 63 66 45 58 50 37 6b 41 70 6c 51 36 49 qEm70XooQL6i.Fh/f5DcfEXP7kAplQ6I
175500 4e 66 50 67 47 41 56 55 7a 66 62 41 4e 75 50 54 31 72 71 56 43 56 33 77 32 45 59 78 37 58 73 51 NfPgGAVUzfbANuPT1rqVCV3w2EYx7XsQ
175520 44 6e 59 78 35 6e 51 49 44 41 51 41 42 6f 30 49 77 51 44 41 50 42 67 4e 56 0a 48 52 4d 42 41 66 DnYx5nQIDAQABo0IwQDAPBgNV.HRMBAf
175540 38 45 42 54 41 44 41 51 48 2f 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBj
175560 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 74 5a 6e 34 72 37 43 55 39 65 4d 67 31 67 71 74 7a 6b AdBgNVHQ4EFgQUtZn4r7CU9eMg1gqtzk
175580 35 57 70 43 35 75 0a 51 75 30 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 44 67 5WpC5u.Qu0wDQYJKoZIhvcNAQELBQADg
1755a0 67 49 42 41 43 59 47 58 6e 44 6e 5a 54 50 49 67 6d 37 5a 6e 42 63 36 47 33 70 6d 73 67 48 32 65 gIBACYGXnDnZTPIgm7ZnBc6G3pmsgH2e
1755c0 44 74 70 58 69 2f 71 2f 30 37 35 4b 4d 4f 59 4b 6d 46 4d 0a 74 43 51 53 69 6e 31 74 45 52 54 33 DtpXi/q/075KMOYKmFM.tCQSin1tERT3
1755e0 6e 4c 58 4b 35 72 79 65 4a 34 35 4d 47 63 69 70 76 58 72 41 31 7a 59 4f 62 59 56 79 62 71 6a 47 nLXK5ryeJ45MGcipvXrA1zYObYVybqjG
175600 6f 6d 33 32 2b 6e 4e 6a 66 37 78 75 65 51 67 63 6e 59 71 66 47 6f 70 54 70 74 69 37 32 54 56 56 om32+nNjf7xueQgcnYqfGopTpti72TVV
175620 0a 73 52 48 46 71 51 4f 7a 56 6a 75 35 68 4a 4d 69 58 6e 37 42 39 68 4a 53 69 2b 6f 73 5a 37 7a .sRHFqQOzVju5hJMiXn7B9hJSi+osZ7z
175640 2b 4e 6b 7a 31 75 4d 2f 52 73 30 6d 53 4f 39 4d 70 44 70 6b 62 6c 76 64 68 75 44 76 45 4b 37 5a +Nkz1uM/Rs0mSO9MpDpkblvdhuDvEK7Z
175660 34 62 4c 51 6a 62 2f 44 39 30 37 4a 65 0a 64 52 2b 5a 6c 61 69 73 39 74 72 68 78 54 46 37 2b 39 4bLQjb/D907Je.dR+Zlais9trhxTF7+9
175680 46 47 73 39 4b 38 5a 37 52 69 56 4c 6f 4a 39 32 4f 77 6b 36 4b 61 2b 65 6c 53 4c 6f 74 67 45 71 FGs9K8Z7RiVLoJ92Owk6Ka+elSLotgEq
1756a0 76 38 39 57 42 57 37 78 42 63 69 38 51 61 51 74 79 44 57 32 51 4f 79 37 57 38 0a 31 6b 2f 42 66 v89WBW7xBci8QaQtyDW2QOy7W8.1k/Bf
1756c0 44 78 75 6a 52 4e 74 2b 33 76 72 4d 4e 44 63 54 61 2f 46 31 62 61 6c 54 46 74 78 79 65 67 78 76 DxujRNt+3vrMNDcTa/F1balTFtxyegxv
1756e0 75 67 34 42 6b 69 68 47 75 4c 71 30 74 34 53 4f 56 67 61 2f 34 41 4f 67 6e 58 6d 74 38 6b 48 62 ug4BkihGuLq0t4SOVga/4AOgnXmt8kHb
175700 41 37 76 2f 7a 6a 78 0a 6d 48 48 45 74 33 38 4f 46 64 41 6c 61 62 30 69 6e 53 76 74 42 66 5a 47 A7v/zjx.mHHEt38OFdAlab0inSvtBfZG
175720 52 36 7a 74 77 50 44 55 4f 2b 4c 73 37 70 5a 62 6b 42 4e 4f 48 6c 59 36 36 37 44 76 6c 72 75 57 R6ztwPDUO+Ls7pZbkBNOHlY667DvlruW
175740 49 78 47 36 38 6b 4f 47 64 47 53 56 79 43 68 31 33 78 30 31 0a 75 74 49 33 67 7a 68 54 4f 44 59 IxG68kOGdGSVyCh13x01.utI3gzhTODY
175760 37 7a 32 7a 70 2b 57 73 4f 30 50 73 45 36 45 39 33 31 32 55 42 65 49 59 4d 65 6a 34 68 59 76 46 7z2zp+WsO0PsE6E9312UBeIYMej4hYvF
175780 2f 59 33 45 4d 79 5a 39 45 32 36 67 6e 6f 6e 57 2b 62 6f 45 2b 31 38 44 72 47 35 67 50 63 46 77 /Y3EMyZ9E26gnonW+boE+18DrG5gPcFw
1757a0 30 0a 73 6f 72 4d 77 49 55 59 36 32 35 36 73 2f 64 61 6f 51 65 2f 71 55 4b 53 38 32 41 69 6c 2b 0.sorMwIUY6256s/daoQe/qUKS82Ail+
1757c0 51 55 6f 51 65 62 54 6e 62 41 6a 6e 33 39 70 43 58 48 52 2b 33 2f 48 33 4f 73 7a 4d 4f 6c 36 57 QUoQebTnbAjn39pCXHR+3/H3OszMOl6W
1757e0 38 4b 6a 70 74 6c 77 6c 43 46 74 61 4f 67 0a 55 78 4c 4d 56 59 64 68 38 34 47 75 45 45 5a 68 76 8KjptlwlCFtaOg.UxLMVYdh84GuEEZhv
175800 55 51 68 75 4d 49 39 64 4d 39 2b 4a 44 58 36 48 41 63 4f 6d 7a 30 69 79 75 38 78 4c 34 79 73 45 UQhuMI9dM9+JDX6HAcOmz0iyu8xL4ysE
175820 72 33 76 51 43 6a 38 4b 57 65 66 73 68 4e 50 5a 69 54 45 55 78 6e 70 48 69 6b 56 0a 37 2b 5a 74 r3vQCj8KWefshNPZiTEUxnpHikV.7+Zt
175840 73 48 38 74 5a 2f 33 7a 62 42 74 31 52 71 50 6c 53 68 66 70 70 4e 63 4c 0a 2d 2d 2d 2d 2d 45 4e sH8tZ/3zbBt1RqPlShfppNcL.-----EN
175860 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 41 43 43 56 52 41 49 5a 31 0a 3d 3d D.CERTIFICATE-----..ACCVRAIZ1.==
175880 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d =======.-----BEGIN.CERTIFICATE--
1758a0 2d 2d 2d 0a 4d 49 49 48 30 7a 43 43 42 62 75 67 41 77 49 42 41 67 49 49 58 73 4f 33 70 6b 4e 2f ---.MIIH0zCCBbugAwIBAgIIXsO3pkN/
1758c0 70 4f 41 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 51 6a 45 53 4d 42 41 47 pOAwDQYJKoZIhvcNAQEFBQAwQjESMBAG
1758e0 41 31 55 45 41 77 77 4a 51 55 4e 44 56 6c 4a 42 0a 53 56 6f 78 4d 52 41 77 44 67 59 44 56 51 51 A1UEAwwJQUNDVlJB.SVoxMRAwDgYDVQQ
175900 4c 44 41 64 51 53 30 6c 42 51 30 4e 57 4d 51 30 77 43 77 59 44 56 51 51 4b 44 41 52 42 51 30 4e LDAdQS0lBQ0NWMQ0wCwYDVQQKDARBQ0N
175920 57 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 46 55 7a 41 65 46 77 30 78 4d 54 41 31 0a 4d 44 WMQswCQYDVQQGEwJFUzAeFw0xMTA1.MD
175940 55 77 4f 54 4d 33 4d 7a 64 61 46 77 30 7a 4d 44 45 79 4d 7a 45 77 4f 54 4d 33 4d 7a 64 61 4d 45 UwOTM3MzdaFw0zMDEyMzEwOTM3MzdaME
175960 49 78 45 6a 41 51 42 67 4e 56 42 41 4d 4d 43 55 46 44 51 31 5a 53 51 55 6c 61 4d 54 45 51 4d 41 IxEjAQBgNVBAMMCUFDQ1ZSQUlaMTEQMA
175980 34 47 41 31 55 45 43 77 77 48 0a 55 45 74 4a 51 55 4e 44 56 6a 45 4e 4d 41 73 47 41 31 55 45 43 4GA1UECwwH.UEtJQUNDVjENMAsGA1UEC
1759a0 67 77 45 51 55 4e 44 56 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 52 56 4d 77 67 67 49 69 4d gwEQUNDVjELMAkGA1UEBhMCRVMwggIiM
1759c0 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 0a 44 77 41 77 67 67 49 4b A0GCSqGSIb3DQEBAQUAA4IC.DwAwggIK
1759e0 41 6f 49 43 41 51 43 62 71 61 75 2f 59 55 71 58 72 79 2b 58 5a 70 70 30 58 39 44 5a 6c 76 33 50 AoICAQCbqau/YUqXry+XZpp0X9DZlv3P
175a00 34 75 52 6d 37 78 38 66 52 7a 50 43 52 4b 50 66 6d 74 34 66 74 56 54 64 46 58 78 70 4e 52 46 76 4uRm7x8fRzPCRKPfmt4ftVTdFXxpNRFv
175a20 75 38 67 4d 0a 6a 6d 6f 59 48 74 69 50 32 52 61 38 45 45 67 32 58 50 42 6a 73 35 42 61 58 43 51 u8gM.jmoYHtiP2Ra8EEg2XPBjs5BaXCQ
175a40 33 31 36 50 57 79 77 6c 78 75 66 45 42 63 6f 53 77 66 64 74 4e 67 4d 33 38 30 32 2f 4a 2b 4e 71 316PWywlxufEBcoSwfdtNgM3802/J+Nq
175a60 32 44 6f 4c 53 52 59 57 6f 47 32 69 6f 50 65 6a 30 0a 52 47 79 39 6f 63 4c 4c 41 37 36 4d 50 68 2DoLSRYWoG2ioPej0.RGy9ocLLA76MPh
175a80 4d 41 68 4e 39 4b 53 4d 44 6a 49 67 72 6f 36 54 65 6e 47 45 79 78 43 51 30 6a 56 6e 38 45 54 64 MAhN9KSMDjIgro6TenGEyxCQ0jVn8ETd
175aa0 6b 58 68 42 69 6c 79 4e 70 41 6c 48 50 72 7a 67 35 58 50 41 4f 42 4f 70 30 4b 6f 56 64 44 0a 61 kXhBilyNpAlHPrzg5XPAOBOp0KoVdD.a
175ac0 61 78 58 62 58 6d 51 65 4f 57 31 74 44 76 59 76 45 79 4e 4b 4b 47 6e 6f 36 65 36 41 6b 34 6c 30 axXbXmQeOW1tDvYvEyNKKGno6e6Ak4l0
175ae0 53 71 75 37 61 34 44 49 72 68 72 49 41 38 77 4b 46 53 56 66 2b 44 75 7a 67 70 6d 6e 64 46 41 4c Squ7a4DIrhrIA8wKFSVf+DuzgpmndFAL
175b00 57 34 69 72 35 30 61 77 51 55 5a 0a 30 6d 2f 41 38 70 2f 34 65 37 4d 43 51 76 74 51 71 52 30 74 W4ir50awQUZ.0m/A8p/4e7MCQvtQqR0t
175b20 6b 77 38 6a 71 38 62 42 44 35 4c 2f 30 4b 49 56 39 56 4d 4a 63 52 7a 2f 52 52 4f 45 35 69 5a 65 kw8jq8bBD5L/0KIV9VMJcRz/RROE5iZe
175b40 2b 4f 43 49 48 41 72 38 46 72 61 6f 63 77 61 34 38 47 4f 45 41 71 44 47 0a 57 75 7a 6e 64 4e 39 +OCIHAr8Fraocwa48GOEAqDG.WuzndN9
175b60 77 72 71 4f 44 4a 65 72 57 78 35 65 48 6b 36 66 47 69 6f 6f 7a 6c 32 41 33 45 44 36 58 50 6d 34 wrqODJerWx5eHk6fGioozl2A3ED6XPm4
175b80 70 46 64 61 68 44 39 47 49 4c 42 4b 66 62 36 71 6b 78 6b 4c 72 51 61 4c 6a 6c 55 50 54 41 59 56 pFdahD9GILBKfb6qkxkLrQaLjlUPTAYV
175ba0 74 6a 72 73 37 0a 38 79 4d 32 78 2f 34 37 34 4b 45 6c 42 30 69 72 79 59 6c 30 2f 77 69 50 67 4c tjrs7.8yM2x/474KElB0iryYl0/wiPgL
175bc0 2f 41 6c 6d 58 7a 37 75 78 4c 61 4c 32 64 69 4d 4d 78 73 30 44 78 36 4d 2f 32 4f 4c 75 63 35 4e /AlmXz7uxLaL2diMMxs0Dx6M/2OLuc5N
175be0 46 2f 31 4f 56 59 6d 33 7a 36 31 50 4d 4f 6d 33 57 52 0a 35 4c 70 53 4c 68 6c 2b 30 66 58 4e 57 F/1OVYm3z61PMOm3WR.5LpSLhl+0fXNW
175c00 68 6e 38 75 67 62 32 2b 31 4b 6f 53 35 6b 45 33 66 6a 35 74 49 74 51 6f 30 35 69 69 66 43 48 4a hn8ugb2+1KoS5kE3fj5tItQo05iifCHJ
175c20 50 71 44 51 73 47 48 2b 74 55 74 4b 53 70 61 63 58 70 6b 61 74 63 6e 59 47 4d 4e 32 38 35 4a 0a PqDQsGH+tUtKSpacXpkatcnYGMN285J.
175c40 39 59 30 66 6b 49 6b 79 46 2f 68 7a 51 37 6a 53 57 70 4f 47 59 64 62 68 64 51 72 71 65 57 5a 32 9Y0fkIkyF/hzQ7jSWpOGYdbhdQrqeWZ2
175c60 69 45 39 78 36 77 51 6c 31 67 70 61 65 70 50 6c 75 55 73 58 51 41 2b 78 74 72 6e 31 33 6b 2f 63 iE9x6wQl1gpaepPluUsXQA+xtrn13k/c
175c80 34 4c 4f 73 4f 78 46 77 59 49 52 4b 0a 51 32 36 5a 49 4d 41 70 63 51 72 41 5a 51 49 44 41 51 41 4LOsOxFwYIRK.Q26ZIMApcQrAZQIDAQA
175ca0 42 6f 34 49 43 79 7a 43 43 41 73 63 77 66 51 59 49 4b 77 59 42 42 51 55 48 41 51 45 45 63 54 42 Bo4ICyzCCAscwfQYIKwYBBQUHAQEEcTB
175cc0 76 4d 45 77 47 43 43 73 47 41 51 55 46 42 7a 41 43 68 6b 42 6f 64 48 52 77 0a 4f 69 38 76 64 33 vMEwGCCsGAQUFBzAChkBodHRw.Oi8vd3
175ce0 64 33 4c 6d 46 6a 59 33 59 75 5a 58 4d 76 5a 6d 6c 73 5a 57 46 6b 62 57 6c 75 4c 30 46 79 59 32 d3LmFjY3YuZXMvZmlsZWFkbWluL0FyY2
175d00 68 70 64 6d 39 7a 4c 32 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 57 52 76 63 79 39 79 59 57 6c 36 59 57 hpdm9zL2NlcnRpZmljYWRvcy9yYWl6YW
175d20 4e 6a 64 6a 45 75 0a 59 33 4a 30 4d 42 38 47 43 43 73 47 41 51 55 46 42 7a 41 42 68 68 4e 6f 64 NjdjEu.Y3J0MB8GCCsGAQUFBzABhhNod
175d40 48 52 77 4f 69 38 76 62 32 4e 7a 63 43 35 68 59 32 4e 32 4c 6d 56 7a 4d 42 30 47 41 31 55 64 44 HRwOi8vb2NzcC5hY2N2LmVzMB0GA1UdD
175d60 67 51 57 42 42 54 53 68 37 54 6a 33 7a 63 6e 6b 31 58 32 0a 56 75 71 42 35 54 62 4d 6a 42 34 2f gQWBBTSh7Tj3zcnk1X2.VuqB5TbMjB4/
175d80 76 54 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 38 47 41 31 55 64 vTAPBgNVHRMBAf8EBTADAQH/MB8GA1Ud
175da0 49 77 51 59 4d 42 61 41 46 4e 4b 48 74 4f 50 66 4e 79 65 54 56 66 5a 57 36 6f 48 6c 4e 73 79 4d IwQYMBaAFNKHtOPfNyeTVfZW6oHlNsyM
175dc0 0a 48 6a 2b 39 4d 49 49 42 63 77 59 44 56 52 30 67 42 49 49 42 61 6a 43 43 41 57 59 77 67 67 46 .Hj+9MIIBcwYDVR0gBIIBajCCAWYwggF
175de0 69 42 67 52 56 48 53 41 41 4d 49 49 42 57 44 43 43 41 53 49 47 43 43 73 47 41 51 55 46 42 77 49 iBgRVHSAAMIIBWDCCASIGCCsGAQUFBwI
175e00 43 4d 49 49 42 46 42 36 43 41 52 41 41 0a 51 51 42 31 41 48 51 41 62 77 42 79 41 47 6b 41 5a 41 CMIIBFB6CARAA.QQB1AHQAbwByAGkAZA
175e20 42 68 41 47 51 41 49 41 42 6b 41 47 55 41 49 41 42 44 41 47 55 41 63 67 42 30 41 47 6b 41 5a 67 BhAGQAIABkAGUAIABDAGUAcgB0AGkAZg
175e40 42 70 41 47 4d 41 59 51 42 6a 41 47 6b 41 38 77 42 75 41 43 41 41 55 67 42 68 0a 41 4f 30 41 65 BpAGMAYQBjAGkA8wBuACAAUgBh.AO0Ae
175e60 67 41 67 41 47 51 41 5a 51 41 67 41 47 77 41 59 51 41 67 41 45 45 41 51 77 42 44 41 46 59 41 49 gAgAGQAZQAgAGwAYQAgAEEAQwBDAFYAI
175e80 41 41 6f 41 45 45 41 5a 77 42 6c 41 47 34 41 59 77 42 70 41 47 45 41 49 41 42 6b 41 47 55 41 49 AAoAEEAZwBlAG4AYwBpAGEAIABkAGUAI
175ea0 41 42 55 41 47 55 41 0a 59 77 42 75 41 47 38 41 62 41 42 76 41 47 63 41 37 51 42 68 41 43 41 41 ABUAGUA.YwBuAG8AbABvAGcA7QBhACAA
175ec0 65 51 41 67 41 45 4d 41 5a 51 42 79 41 48 51 41 61 51 42 6d 41 47 6b 41 59 77 42 68 41 47 4d 41 eQAgAEMAZQByAHQAaQBmAGkAYwBhAGMA
175ee0 61 51 44 7a 41 47 34 41 49 41 42 46 41 47 77 41 5a 51 42 6a 0a 41 48 51 41 63 67 44 7a 41 47 34 aQDzAG4AIABFAGwAZQBj.AHQAcgDzAG4
175f00 41 61 51 42 6a 41 47 45 41 4c 41 41 67 41 45 4d 41 53 51 42 47 41 43 41 41 55 51 41 30 41 44 59 AaQBjAGEALAAgAEMASQBGACAAUQA0ADY
175f20 41 4d 41 41 78 41 44 45 41 4e 51 41 32 41 45 55 41 4b 51 41 75 41 43 41 41 51 77 42 51 41 46 4d AMAAxADEANQA2AEUAKQAuACAAQwBQAFM
175f40 41 0a 49 41 42 6c 41 47 34 41 49 41 42 6f 41 48 51 41 64 41 42 77 41 44 6f 41 4c 77 41 76 41 48 A.IABlAG4AIABoAHQAdABwADoALwAvAH
175f60 63 41 64 77 42 33 41 43 34 41 59 51 42 6a 41 47 4d 41 64 67 41 75 41 47 55 41 63 7a 41 77 42 67 cAdwB3AC4AYQBjAGMAdgAuAGUAczAwBg
175f80 67 72 42 67 45 46 42 51 63 43 41 52 59 6b 0a 61 48 52 30 63 44 6f 76 4c 33 64 33 64 79 35 68 59 grBgEFBQcCARYk.aHR0cDovL3d3dy5hY
175fa0 32 4e 32 4c 6d 56 7a 4c 32 78 6c 5a 32 6c 7a 62 47 46 6a 61 57 39 75 58 32 4d 75 61 48 52 74 4d 2N2LmVzL2xlZ2lzbGFjaW9uX2MuaHRtM
175fc0 46 55 47 41 31 55 64 48 77 52 4f 4d 45 77 77 53 71 42 49 6f 45 61 47 52 47 68 30 0a 64 48 41 36 FUGA1UdHwROMEwwSqBIoEaGRGh0.dHA6
175fe0 4c 79 39 33 64 33 63 75 59 57 4e 6a 64 69 35 6c 63 79 39 6d 61 57 78 6c 59 57 52 74 61 57 34 76 Ly93d3cuYWNjdi5lcy9maWxlYWRtaW4v
176000 51 58 4a 6a 61 47 6c 32 62 33 4d 76 59 32 56 79 64 47 6c 6d 61 57 4e 68 5a 47 39 7a 4c 33 4a 68 QXJjaGl2b3MvY2VydGlmaWNhZG9zL3Jh
176020 61 58 70 68 59 32 4e 32 0a 4d 56 39 6b 5a 58 49 75 59 33 4a 73 4d 41 34 47 41 31 55 64 44 77 45 aXphY2N2.MV9kZXIuY3JsMA4GA1UdDwE
176040 42 2f 77 51 45 41 77 49 42 42 6a 41 58 42 67 4e 56 48 52 45 45 45 44 41 4f 67 51 78 68 59 32 4e B/wQEAwIBBjAXBgNVHREEEDAOgQxhY2N
176060 32 51 47 46 6a 59 33 59 75 5a 58 4d 77 44 51 59 4a 4b 6f 5a 49 0a 68 76 63 4e 41 51 45 46 42 51 2QGFjY3YuZXMwDQYJKoZI.hvcNAQEFBQ
176080 41 44 67 67 49 42 41 4a 63 78 41 70 2f 6e 2f 55 4e 6e 53 45 51 55 35 43 6d 48 37 55 77 6f 5a 74 ADggIBAJcxAp/n/UNnSEQU5CmH7UwoZt
1760a0 43 50 4e 64 70 4e 59 62 64 4b 6c 30 32 31 32 35 44 67 42 53 34 4f 78 6e 6e 51 38 70 64 70 44 37 CPNdpNYbdKl02125DgBS4OxnnQ8pdpD7
1760c0 30 45 0a 52 39 6d 2b 32 37 55 70 32 70 76 5a 72 71 6d 5a 31 64 4d 38 4d 4a 50 31 6a 61 47 6f 2f 0E.R9m+27Up2pvZrqmZ1dM8MJP1jaGo/
1760e0 41 61 4e 52 50 54 4b 46 70 56 38 4d 39 78 69 69 36 67 33 2b 43 66 59 43 53 30 62 37 38 67 55 4a AaNRPTKFpV8M9xii6g3+CfYCS0b78gUJ
176100 79 43 70 5a 45 54 2f 4c 74 5a 31 71 6d 78 4e 0a 59 45 41 5a 53 55 4e 55 59 39 72 69 7a 4c 70 6d yCpZET/LtZ1qmxN.YEAZSUNUY9rizLpm
176120 35 55 39 45 65 6c 76 5a 61 6f 45 72 51 4e 56 2f 2b 51 45 6e 57 43 7a 49 37 55 69 52 66 44 2b 6d 5U9EelvZaoErQNV/+QEnWCzI7UiRfD+m
176140 41 4d 2f 45 4b 58 4d 52 4e 74 36 47 47 54 36 64 37 68 6d 4b 47 39 57 77 37 59 34 39 0a 6e 43 72 AM/EKXMRNt6GGT6d7hmKG9Ww7Y49.nCr
176160 41 44 64 67 39 5a 75 4d 38 44 62 33 56 6c 46 7a 69 34 71 63 31 47 77 51 41 39 6a 39 61 6a 65 70 ADdg9ZuM8Db3VlFzi4qc1GwQA9j9ajep
176180 44 76 56 2b 4a 48 61 6e 42 73 4d 79 5a 34 6b 30 41 43 74 72 4a 4a 31 76 6e 45 35 42 63 35 50 55 DvV+JHanBsMyZ4k0ACtrJJ1vnE5Bc5PU
1761a0 7a 6f 6c 56 74 33 4f 41 4a 0a 54 53 2b 78 4a 6c 73 6e 64 51 41 4a 78 47 4a 33 4b 51 68 66 6e 6c zolVt3OAJ.TS+xJlsndQAJxGJ3KQhfnl
1761c0 6d 73 74 6e 36 74 6e 31 51 77 49 67 50 42 48 6e 46 6b 2f 76 6b 34 43 70 59 59 33 51 49 55 72 43 mstn6tn1QwIgPBHnFk/vk4CpYY3QIUrC
1761e0 50 4c 42 68 77 65 70 48 32 4e 44 64 34 6e 51 65 69 74 32 68 57 33 0a 73 43 50 64 4b 36 6a 54 32 PLBhwepH2NDd4nQeit2hW3.sCPdK6jT2
176200 69 57 48 37 65 68 56 52 45 32 49 39 44 5a 2b 68 4a 70 34 72 50 63 4f 56 6b 6b 4f 31 6a 4d 6c 31 iWH7ehVRE2I9DZ+hJp4rPcOVkkO1jMl1
176220 6f 52 51 51 6d 77 67 45 68 30 71 31 62 36 38 38 6e 43 42 70 48 42 67 76 67 57 31 6d 35 34 45 52 oRQQmwgEh0q1b688nCBpHBgvgW1m54ER
176240 4c 35 68 0a 49 36 7a 70 70 53 53 4d 45 59 43 55 57 71 4b 69 75 55 6e 53 77 64 7a 52 70 2b 30 78 L5h.I6zppSSMEYCUWqKiuUnSwdzRp+0x
176260 45 53 79 65 47 61 62 75 34 56 58 68 77 4f 72 50 44 59 54 6b 46 37 65 69 66 4b 58 65 56 53 55 47 ESyeGabu4VXhwOrPDYTkF7eifKXeVSUG
176280 37 73 7a 41 68 31 78 41 32 73 79 56 50 31 58 67 0a 4e 63 65 34 68 4c 36 30 58 63 31 36 67 77 46 7szAh1xA2syVP1Xg.Nce4hL60Xc16gwF
1762a0 79 37 6f 66 6d 58 78 32 75 74 59 58 47 4a 74 2f 6d 77 5a 72 70 48 67 4a 48 6e 79 71 6f 62 61 6c y7ofmXx2utYXGJt/mwZrpHgJHnyqobal
1762c0 62 7a 2b 78 46 64 33 2b 59 4a 35 6f 79 58 53 72 6a 68 4f 37 46 6d 47 59 76 6c 69 41 64 0a 33 64 bz+xFd3+YJ5oyXSrjhO7FmGYvliAd.3d
1762e0 6a 44 4a 39 65 77 2b 66 37 5a 66 63 33 51 6e 34 38 4c 46 46 68 52 6e 79 2b 4c 77 7a 67 74 33 75 jDJ9ew+f7Zfc3Qn48LFFhRny+Lwzgt3u
176300 69 50 31 6f 32 48 70 50 56 57 51 78 61 5a 4c 50 53 6b 56 72 51 30 75 47 45 33 79 63 4a 59 67 42 iP1o2HpPVWQxaZLPSkVrQ0uGE3ycJYgB
176320 75 67 6c 36 48 38 57 59 33 70 0a 45 66 62 52 44 30 74 56 4e 45 59 71 69 34 59 37 0a 2d 2d 2d 2d ugl6H8WY3p.EfbRD0tVNEYqi4Y7.----
176340 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 57 43 41 20 47 6c 6f 62 -END.CERTIFICATE-----..TWCA.Glob
176360 61 6c 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d al.Root.CA.===================.-
176380 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 51 ----BEGIN.CERTIFICATE-----.MIIFQ
1763a0 54 43 43 41 79 6d 67 41 77 49 42 41 67 49 43 44 4c 34 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 TCCAymgAwIBAgICDL4wDQYJKoZIhvcNA
1763c0 51 45 4c 42 51 41 77 55 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 46 63 78 45 6a 41 51 42 QELBQAwUTELMAkGA1UEBhMCVFcxEjAQB
1763e0 67 4e 56 42 41 6f 54 0a 43 56 52 42 53 56 64 42 54 69 31 44 51 54 45 51 4d 41 34 47 41 31 55 45 gNVBAoT.CVRBSVdBTi1DQTEQMA4GA1UE
176400 43 78 4d 48 55 6d 39 76 64 43 42 44 51 54 45 63 4d 42 6f 47 41 31 55 45 41 78 4d 54 56 46 64 44 CxMHUm9vdCBDQTEcMBoGA1UEAxMTVFdD
176420 51 53 42 48 62 47 39 69 59 57 77 67 55 6d 39 76 64 43 42 44 0a 51 54 41 65 46 77 30 78 4d 6a 41 QSBHbG9iYWwgUm9vdCBD.QTAeFw0xMjA
176440 32 4d 6a 63 77 4e 6a 49 34 4d 7a 4e 61 46 77 30 7a 4d 44 45 79 4d 7a 45 78 4e 54 55 35 4e 54 6c 2MjcwNjI4MzNaFw0zMDEyMzExNTU5NTl
176460 61 4d 46 45 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 52 58 4d 52 49 77 45 41 59 44 56 51 51 aMFExCzAJBgNVBAYTAlRXMRIwEAYDVQQ
176480 4b 0a 45 77 6c 55 51 55 6c 58 51 55 34 74 51 30 45 78 45 44 41 4f 42 67 4e 56 42 41 73 54 42 31 K.EwlUQUlXQU4tQ0ExEDAOBgNVBAsTB1
1764a0 4a 76 62 33 51 67 51 30 45 78 48 44 41 61 42 67 4e 56 42 41 4d 54 45 31 52 58 51 30 45 67 52 32 Jvb3QgQ0ExHDAaBgNVBAMTE1RXQ0EgR2
1764c0 78 76 59 6d 46 73 49 46 4a 76 62 33 51 67 0a 51 30 45 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 xvYmFsIFJvb3Qg.Q0EwggIiMA0GCSqGS
1764e0 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 77 42 Ib3DQEBAQUAA4ICDwAwggIKAoICAQCwB
176500 64 76 49 36 34 7a 45 62 6f 6f 68 37 34 35 4e 6e 48 45 4b 48 31 4a 77 37 57 32 43 0a 6e 4a 66 46 dvI64zEbooh745NnHEKH1Jw7W2C.nJfF
176520 31 30 78 4f 52 55 6e 4c 51 45 4b 31 45 6a 52 73 47 63 4a 30 70 44 46 66 68 51 4b 58 37 45 4d 7a 10xORUnLQEK1EjRsGcJ0pDFfhQKX7EMz
176540 43 6c 50 53 6e 49 79 4f 74 37 68 35 32 79 76 56 61 76 4b 4f 5a 73 54 75 4b 77 45 48 6b 74 53 7a ClPSnIyOt7h52yvVavKOZsTuKwEHktSz
176560 30 41 4c 66 55 50 5a 56 0a 72 32 59 4f 79 2b 42 48 59 43 38 72 4d 6a 6b 31 55 6a 6f 6f 67 2f 68 0ALfUPZV.r2YOy+BHYC8rMjk1Ujoog/h
176580 37 46 73 59 59 75 47 4c 57 52 79 57 52 7a 76 41 5a 45 6b 32 74 59 2f 58 54 50 33 56 66 4b 66 43 7FsYYuGLWRyWRzvAZEk2tY/XTP3VfKfC
1765a0 68 4d 42 77 71 6f 4a 69 6d 46 62 33 75 2f 52 6b 32 38 4f 4b 52 0a 51 34 2f 36 79 74 59 51 4a 30 hMBwqoJimFb3u/Rk28OKR.Q4/6ytYQJ0
1765c0 6c 4d 37 39 33 42 38 59 56 77 6d 38 72 71 71 46 70 44 2f 47 32 47 62 33 50 70 4e 30 57 70 38 44 lM793B8YVwm8rqqFpD/G2Gb3PpN0Wp8D
1765e0 62 48 7a 49 68 31 48 72 74 73 42 76 2b 62 61 7a 34 58 37 47 47 71 63 58 7a 47 48 61 4c 33 53 65 bHzIh1HrtsBv+baz4X7GGqcXzGHaL3Se
176600 6b 56 0a 74 54 7a 57 6f 57 48 31 45 66 63 46 62 78 33 39 45 62 37 51 4d 41 66 43 4b 62 41 4a 54 kV.tTzWoWH1EfcFbx39Eb7QMAfCKbAJT
176620 69 62 63 34 36 4b 6f 6b 57 6f 66 77 70 46 46 69 46 7a 6c 6d 4c 68 78 70 52 55 5a 79 58 78 31 45 ibc46KokWofwpFFiFzlmLhxpRUZyXx1E
176640 63 78 77 64 45 38 74 6d 78 32 52 52 50 31 57 0a 4b 4b 44 2b 75 34 5a 71 79 50 70 63 43 31 6a 63 cxwdE8tmx2RRP1W.KKD+u4ZqyPpcC1jc
176660 78 6b 74 32 79 4b 73 69 32 58 4d 50 70 66 52 61 41 6f 6b 2f 54 35 34 69 67 75 36 69 64 46 4d 71 xkt2yKsi2XMPpfRaAok/T54igu6idFMq
176680 50 56 4d 6e 61 52 31 73 6a 6a 49 73 5a 41 41 6d 59 32 45 32 54 71 4e 47 74 7a 39 39 0a 73 79 32 PVMnaR1sjjIsZAAmY2E2TqNGtz99.sy2
1766a0 73 62 5a 43 69 6c 61 4c 4f 7a 39 71 43 35 77 63 30 47 5a 62 70 75 43 47 71 4b 58 36 6d 4f 4c 36 sbZCilaLOz9qC5wc0GZbpuCGqKX6mOL6
1766c0 4f 4b 55 6f 68 5a 6e 6b 66 73 38 4f 31 43 57 66 65 31 74 51 48 52 76 4d 71 32 75 59 69 4e 32 44 OKUohZnkfs8O1CWfe1tQHRvMq2uYiN2D
1766e0 4c 67 62 59 50 6f 41 2f 70 0a 79 4a 56 2f 76 31 57 52 42 58 72 50 50 52 58 41 62 39 34 4a 6c 41 LgbYPoA/p.yJV/v1WRBXrPPRXAb94JlA
176700 47 44 31 7a 51 62 7a 45 43 6c 38 4c 69 62 5a 39 57 59 6b 54 75 6e 68 48 69 56 4a 71 52 61 43 50 GD1zQbzECl8LibZ9WYkTunhHiVJqRaCP
176720 67 72 64 4c 51 41 42 44 7a 66 75 42 53 4f 36 4e 2b 70 6a 57 78 6e 0a 6b 6a 4d 64 77 4c 66 53 37 grdLQABDzfuBSO6N+pjWxn.kjMdwLfS7
176740 4a 4c 49 76 67 6d 2f 4c 43 6b 46 62 77 4a 72 6e 75 2b 38 76 79 71 38 57 38 42 51 6a 30 46 77 63 JLIvgm/LCkFbwJrnu+8vyq8W8BQj0Fwc
176760 59 65 79 54 62 63 45 71 59 53 6a 4d 71 2b 75 37 6d 73 58 69 37 4b 78 2f 6d 7a 68 6b 49 79 49 71 YeyTbcEqYSjMq+u7msXi7Kx/mzhkIyIq
176780 4a 64 49 0a 7a 73 68 4e 79 2f 4d 47 7a 31 39 71 43 6b 4b 78 48 68 35 33 4c 34 36 67 35 70 49 4f JdI.zshNy/MGz19qCkKxHh53L46g5pIO
1767a0 42 76 77 46 49 74 49 6d 34 54 46 52 66 54 4c 63 44 77 49 44 41 51 41 42 6f 79 4d 77 49 54 41 4f BvwFItIm4TFRfTLcDwIDAQABoyMwITAO
1767c0 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 0a 41 51 59 77 44 77 59 44 56 52 30 54 41 51 48 BgNVHQ8BAf8EBAMC.AQYwDwYDVR0TAQH
1767e0 2f 42 41 55 77 41 77 45 42 2f 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 41 4f /BAUwAwEB/zANBgkqhkiG9w0BAQsFAAO
176800 43 41 67 45 41 58 7a 53 42 64 75 2b 57 48 64 58 6c 74 64 6b 43 59 34 51 57 77 61 36 67 0a 63 46 CAgEAXzSBdu+WHdXltdkCY4QWwa6g.cF
176820 47 6e 39 30 78 48 4e 63 67 4c 31 79 67 39 69 58 48 5a 71 6a 4e 42 36 68 51 62 62 43 45 41 77 47 Gn90xHNcgL1yg9iXHZqjNB6hQbbCEAwG
176840 78 43 47 58 36 66 61 56 73 67 51 74 2b 69 30 74 72 45 66 4a 64 4c 6a 62 44 6f 72 4d 6a 75 70 57 xCGX6faVsgQt+i0trEfJdLjbDorMjupW
176860 6b 45 6d 51 71 53 70 71 73 6e 0a 4c 68 70 4e 67 62 2b 45 31 48 41 65 72 55 66 2b 2f 55 71 64 4d kEmQqSpqsn.LhpNgb+E1HAerUf+/UqdM
176880 2b 44 79 75 63 52 46 43 43 45 4b 32 6d 6c 70 63 33 49 4e 76 6a 54 2b 6c 49 75 74 77 78 34 31 31 +DyucRFCCEK2mlpc3INvjT+lIutwx411
1768a0 36 4b 44 37 2b 55 34 78 36 57 46 48 36 76 50 4e 4f 77 2f 4b 50 34 4d 0a 38 56 65 47 54 73 6c 56 6KD7+U4x6WFH6vPNOw/KP4M.8VeGTslV
1768c0 39 78 7a 55 32 4b 56 39 42 6e 70 76 31 64 38 51 33 34 46 4f 49 57 57 78 74 75 45 58 65 5a 56 46 9xzU2KV9Bnpv1d8Q34FOIWWxtuEXeZVF
1768e0 42 73 35 66 7a 4e 78 47 69 57 4e 6f 52 49 32 54 39 47 52 77 6f 44 32 64 4b 41 58 44 4f 58 43 34 Bs5fzNxGiWNoRI2T9GRwoD2dKAXDOXC4
176900 59 6e 73 67 0a 2f 65 54 62 36 51 69 68 75 4a 34 39 43 63 64 50 2b 79 7a 34 6b 33 5a 42 33 6c 4c Ynsg./eTb6QihuJ49CcdP+yz4k3ZB3lL
176920 67 34 56 66 53 6e 51 4f 38 64 35 37 2b 6e 69 6c 65 39 38 46 52 59 42 2f 65 32 67 75 79 4c 58 57 g4VfSnQO8d57+nile98FRYB/e2guyLXW
176940 33 51 30 69 54 35 2f 5a 35 78 6f 52 64 67 46 6c 67 0a 6c 50 78 34 6d 49 38 38 6b 31 48 74 51 4a 3Q0iT5/Z5xoRdgFlg.lPx4mI88k1HtQJ
176960 41 48 33 32 52 6a 4a 4d 74 4f 63 51 57 68 31 35 51 61 69 44 4c 78 49 6e 51 69 72 71 57 6d 32 42 AH32RjJMtOcQWh15QaiDLxInQirqWm2B
176980 4a 70 54 47 43 6a 41 75 34 72 37 4e 52 6a 6b 67 74 65 76 69 39 32 61 36 4f 32 4a 72 79 50 0a 41 JpTGCjAu4r7NRjkgtevi92a6O2JryP.A
1769a0 39 67 4b 38 6b 78 6b 52 72 30 35 59 75 57 57 36 7a 52 6a 45 53 6a 4d 6c 66 47 74 37 2b 2f 63 67 9gK8kxkRr05YuWW6zRjESjMlfGt7+/cg
1769c0 46 68 49 36 55 75 34 36 6d 57 73 36 66 79 41 74 62 58 49 52 66 6d 73 77 5a 2f 5a 75 65 70 69 69 FhI6Uu46mWs6fyAtbXIRfmswZ/Zuepii
1769e0 49 37 45 38 55 75 44 45 71 33 6d 0a 69 34 54 57 6e 73 4c 72 67 78 69 66 61 72 73 62 4a 47 41 7a I7E8UuDEq3m.i4TWnsLrgxifarsbJGAz
176a00 63 4d 7a 73 39 7a 4c 7a 58 4e 6c 35 66 65 2b 65 70 50 37 4a 49 38 4d 6b 37 68 57 53 73 54 32 52 cMzs9zLzXNl5fe+epP7JI8Mk7hWSsT2R
176a20 54 79 61 47 76 57 5a 7a 4a 42 50 71 70 4b 35 6a 77 61 31 39 68 41 4d 38 0a 45 48 69 47 47 33 6e TyaGvWZzJBPqpK5jwa19hAM8.EHiGG3n
176a40 6a 78 50 50 79 42 4a 55 67 72 69 4f 43 78 4c 4d 36 41 47 4b 2f 35 6a 59 6b 34 56 65 36 78 78 36 jxPPyBJUgriOCxLM6AGK/5jYk4Ve6xx6
176a60 51 64 64 56 66 50 35 56 68 4b 38 45 37 7a 65 57 7a 61 47 48 51 52 69 61 70 49 56 4a 70 4c 65 73 QddVfP5VhK8E7zeWzaGHQRiapIVJpLes
176a80 75 78 2b 74 33 0a 7a 71 59 36 74 51 4d 7a 54 33 62 52 35 31 78 55 41 56 33 4c 65 50 54 4a 44 4c ux+t3.zqY6tQMzT3bR51xUAV3LePTJDL
176aa0 2f 50 45 6f 34 58 4c 53 4e 6f 6c 4f 65 72 2f 71 6d 79 4b 77 62 51 42 4d 30 3d 0a 2d 2d 2d 2d 2d /PEo4XLSNolOer/qmyKwbQBM0=.-----
176ac0 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 65 6c 69 61 53 6f 6e 65 72 END.CERTIFICATE-----..TeliaSoner
176ae0 61 20 52 6f 6f 74 20 43 41 20 76 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d a.Root.CA.v1.===================
176b00 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a ===.-----BEGIN.CERTIFICATE-----.
176b20 4d 49 49 46 4f 44 43 43 41 79 43 67 41 77 49 42 41 67 49 52 41 4a 57 2b 46 71 44 33 4c 6b 62 78 MIIFODCCAyCgAwIBAgIRAJW+FqD3Lkbx
176b40 65 7a 6d 43 63 76 71 4c 7a 5a 59 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 46 42 51 41 77 ezmCcvqLzZYwDQYJKoZIhvcNAQEFBQAw
176b60 4e 7a 45 55 4d 42 49 47 41 31 55 45 0a 43 67 77 4c 56 47 56 73 61 57 46 54 62 32 35 6c 63 6d 45 NzEUMBIGA1UE.CgwLVGVsaWFTb25lcmE
176b80 78 48 7a 41 64 42 67 4e 56 42 41 4d 4d 46 6c 52 6c 62 47 6c 68 55 32 39 75 5a 58 4a 68 49 46 4a xHzAdBgNVBAMMFlRlbGlhU29uZXJhIFJ
176ba0 76 62 33 51 67 51 30 45 67 64 6a 45 77 48 68 63 4e 4d 44 63 78 4d 44 45 34 0a 4d 54 49 77 4d 44 vb3QgQ0EgdjEwHhcNMDcxMDE4.MTIwMD
176bc0 55 77 57 68 63 4e 4d 7a 49 78 4d 44 45 34 4d 54 49 77 4d 44 55 77 57 6a 41 33 4d 52 51 77 45 67 UwWhcNMzIxMDE4MTIwMDUwWjA3MRQwEg
176be0 59 44 56 51 51 4b 44 41 74 55 5a 57 78 70 59 56 4e 76 62 6d 56 79 59 54 45 66 4d 42 30 47 41 31 YDVQQKDAtUZWxpYVNvbmVyYTEfMB0GA1
176c00 55 45 41 77 77 57 0a 56 47 56 73 61 57 46 54 62 32 35 6c 63 6d 45 67 55 6d 39 76 64 43 42 44 51 UEAwwW.VGVsaWFTb25lcmEgUm9vdCBDQ
176c20 53 42 32 4d 54 43 43 41 69 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 SB2MTCCAiIwDQYJKoZIhvcNAQEBBQADg
176c40 67 49 50 41 44 43 43 41 67 6f 43 67 67 49 42 41 4d 4b 2b 0a 36 79 66 77 49 61 50 7a 61 53 5a 56 gIPADCCAgoCggIBAMK+.6yfwIaPzaSZV
176c60 66 70 33 46 56 52 61 52 58 50 33 76 49 62 39 54 67 48 6f 74 30 70 47 4d 59 7a 48 77 37 43 54 77 fp3FVRaRXP3vIb9TgHot0pGMYzHw7CTw
176c80 77 36 58 53 63 6e 77 51 62 66 51 33 74 2b 58 6d 66 48 6e 71 6a 4c 57 43 69 36 35 49 74 71 77 41 w6XScnwQbfQ3t+XmfHnqjLWCi65ItqwA
176ca0 0a 33 47 56 31 37 43 70 4e 58 38 47 48 39 53 42 6c 4b 34 47 6f 52 7a 36 4a 49 35 55 77 46 70 42 .3GV17CpNX8GH9SBlK4GoRz6JI5UwFpB
176cc0 2f 36 46 63 48 53 4f 63 5a 72 72 39 46 5a 37 45 33 47 77 59 71 2f 74 37 35 72 48 32 44 2b 31 36 /6FcHSOcZrr9FZ7E3GwYq/t75rH2D+16
176ce0 36 35 49 2b 58 5a 37 35 4c 6a 6f 31 6b 0a 42 31 63 34 56 57 6b 30 4e 6a 30 54 53 4f 39 50 34 74 65I+XZ75Ljo1k.B1c4VWk0Nj0TSO9P4t
176d00 4e 6d 48 71 54 50 47 72 64 65 4e 6a 50 55 74 41 61 39 47 41 48 39 64 34 52 51 41 45 58 31 6a 46 NmHqTPGrdeNjPUtAa9GAH9d4RQAEX1jF
176d20 33 6f 49 37 78 2b 2f 6a 58 68 37 56 42 37 71 54 43 4e 47 64 4d 4a 6a 6d 68 6e 0a 58 62 38 38 6c 3oI7x+/jXh7VB7qTCNGdMJjmhn.Xb88l
176d40 78 68 54 75 79 6c 69 78 63 70 65 63 73 48 48 6c 74 54 62 4c 61 43 30 48 32 6b 44 37 4f 72 69 55 xhTuylixcpecsHHltTbLaC0H2kD7OriU
176d60 50 45 4d 50 50 43 73 38 31 4d 74 38 42 7a 31 37 57 77 35 4f 58 4f 41 46 73 68 53 73 43 50 4e 34 PEMPPCs81Mt8Bz17Ww5OXOAFshSsCPN4
176d80 44 37 63 33 54 78 48 0a 6f 4c 73 31 69 75 4b 59 61 49 75 2b 35 62 39 79 37 74 4c 36 70 65 30 53 D7c3TxH.oLs1iuKYaIu+5b9y7tL6pe0S
176da0 37 66 79 59 47 4b 6b 6d 64 74 77 6f 53 78 41 67 48 4e 4e 2f 46 6e 63 74 37 57 2b 41 39 30 6d 37 7fyYGKkmdtwoSxAgHNN/Fnct7W+A90m7
176dc0 55 77 57 37 58 57 6a 48 31 4d 68 31 46 6a 2b 4a 57 6f 76 33 0a 46 30 66 55 54 50 48 53 69 58 6b UwW7XWjH1Mh1Fj+JWov3.F0fUTPHSiXk
176de0 2b 54 54 32 59 71 47 48 65 4f 68 37 53 2b 46 34 44 34 4d 48 4a 48 49 7a 54 6a 55 33 54 6c 54 61 +TT2YqGHeOh7S+F4D4MHJHIzTjU3TlTa
176e00 7a 4e 31 39 6a 59 35 73 7a 46 50 41 74 4a 6d 74 54 66 49 6d 4d 4d 73 4a 75 37 44 30 68 41 44 6e zN19jY5szFPAtJmtTfImMMsJu7D0hADn
176e20 4a 0a 6f 57 6a 69 55 49 4d 75 73 44 6f 72 38 7a 61 67 72 43 2f 6b 62 32 48 43 55 51 6b 35 50 6f J.oWjiUIMusDor8zagrC/kb2HCUQk5Po
176e40 74 54 75 62 74 6e 32 74 78 54 75 58 5a 5a 4e 70 31 44 35 53 44 67 50 54 4a 67 68 53 4a 52 74 38 tTubtn2txTuXZZNp1D5SDgPTJghSJRt8
176e60 63 7a 75 39 30 56 4c 36 52 34 70 67 64 37 0a 67 55 59 32 42 49 62 64 65 54 58 48 6c 53 77 37 73 czu90VL6R4pgd7.gUY2BIbdeTXHlSw7s
176e80 4b 4d 58 4e 65 56 7a 48 37 52 63 57 65 2f 61 36 68 42 6c 65 33 72 51 66 35 2b 7a 74 43 6f 33 4f KMXNeVzH7RcWe/a6hBle3rQf5+ztCo3O
176ea0 33 43 4c 6d 31 75 35 4b 37 66 73 73 6c 45 53 6c 31 4d 70 57 74 54 77 45 68 44 63 0a 54 77 4b 37 3CLm1u5K7fsslESl1MpWtTwEhDc.TwK7
176ec0 45 70 49 76 59 74 51 2f 61 55 4e 38 44 64 62 38 57 48 55 42 69 4a 31 59 46 6b 76 65 75 70 44 2f EpIvYtQ/aUN8Ddb8WHUBiJ1YFkveupD/
176ee0 52 77 47 4a 42 6d 72 32 58 37 4b 51 61 72 4d 43 70 67 4b 49 76 37 4e 48 66 69 72 5a 31 66 70 6f RwGJBmr2X7KQarMCpgKIv7NHfirZ1fpo
176f00 65 44 56 4e 41 67 4d 42 0a 41 41 47 6a 50 7a 41 39 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 eDVNAgMB.AAGjPzA9MA8GA1UdEwEB/wQ
176f20 46 4d 41 4d 42 41 66 38 77 43 77 59 44 56 52 30 50 42 41 51 44 41 67 45 47 4d 42 30 47 41 31 55 FMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1U
176f40 64 44 67 51 57 42 42 54 77 6a 31 6b 34 41 4c 50 31 6a 35 71 57 0a 44 4e 58 72 2b 6e 75 71 46 2b dDgQWBBTwj1k4ALP1j5qW.DNXr+nuqF+
176f60 67 54 45 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 41 4f 43 41 67 45 41 76 75 gTEjANBgkqhkiG9w0BAQUFAAOCAgEAvu
176f80 52 63 59 6b 34 6b 39 41 77 49 2f 2f 44 54 44 47 6a 6b 6b 30 6b 69 50 30 51 6e 62 37 74 74 33 6f RcYk4k9AwI//DTDGjkk0kiP0Qnb7tt3o
176fa0 4e 6d 0a 7a 71 6a 4d 44 66 7a 31 6d 67 62 6c 64 78 53 52 36 35 31 42 65 35 6b 71 68 4f 58 2f 2f Nm.zqjMDfz1mgbldxSR651Be5kqhOX//
176fc0 43 48 42 58 66 44 6b 48 31 65 33 64 61 6d 68 58 77 49 6d 2f 39 66 48 39 30 37 65 54 2f 6a 33 48 CHBXfDkH1e3damhXwIm/9fH907eT/j3H
176fe0 45 62 41 65 6b 39 41 4c 43 49 31 38 42 6d 78 0a 30 47 74 6e 4c 4c 43 6f 34 4d 42 41 4e 7a 58 32 EbAek9ALCI18Bmx.0GtnLLCo4MBANzX2
177000 68 46 78 63 34 36 39 43 65 50 36 6e 79 51 31 51 36 67 32 45 64 76 5a 52 37 34 4e 54 78 6e 72 2f hFxc469CeP6nyQ1Q6g2EdvZR74NTxnr/
177020 44 6c 5a 4a 4c 6f 39 36 31 67 7a 6d 4a 31 54 6a 54 51 70 67 63 6d 4c 4e 6b 51 66 57 0a 70 62 2f DlZJLo961gzmJ1TjTQpgcmLNkQfW.pb/
177040 49 6d 57 76 74 78 42 6e 6d 71 30 77 52 4f 4d 56 76 4d 65 4a 75 53 63 67 2f 64 6f 41 6d 41 79 59 ImWvtxBnmq0wROMVvMeJuScg/doAmAyY
177060 70 34 44 62 32 39 69 42 54 34 78 64 77 4e 42 65 64 59 32 67 65 61 2b 7a 44 54 59 61 34 45 7a 41 p4Db29iBT4xdwNBedY2gea+zDTYa4EzA
177080 76 58 55 59 4e 52 30 50 56 0a 47 36 70 5a 44 72 6c 63 6a 51 5a 49 72 58 53 48 58 38 66 38 4d 56 vXUYNR0PV.G6pZDrlcjQZIrXSHX8f8MV
1770a0 52 42 45 2b 4c 48 49 51 36 65 34 42 34 4e 34 63 42 37 51 34 57 51 78 59 70 59 78 6d 55 4b 65 46 RBE+LHIQ6e4B4N4cB7Q4WQxYpYxmUKeF
1770c0 66 79 78 69 4d 50 41 64 6b 67 53 39 34 50 2b 35 4b 46 64 53 70 63 0a 63 34 31 74 65 79 57 52 79 fyxiMPAdkgS94P+5KFdSpc.c41teyWRy
1770e0 75 35 46 72 67 5a 4c 41 4d 7a 54 73 56 6c 51 32 6a 71 49 4f 79 6c 44 52 6c 36 58 4b 31 54 4f 55 u5FrgZLAMzTsVlQ2jqIOylDRl6XK1TOU
177100 32 2b 4e 53 75 65 57 2b 72 39 78 44 6b 4b 4c 66 50 30 6f 6f 4e 42 49 79 74 72 45 67 55 79 37 6f 2+NSueW+r9xDkKLfP0ooNBIytrEgUy7o
177120 6e 4f 54 0a 4a 73 6a 72 44 4e 59 6d 69 4c 62 41 4a 4d 2b 37 76 56 76 72 64 58 33 70 43 49 36 47 nOT.JsjrDNYmiLbAJM+7vVvrdX3pCI6G
177140 4d 79 78 35 64 77 6c 70 70 59 6e 38 73 33 43 51 68 33 61 50 30 79 4b 37 51 73 36 39 63 77 73 67 Myx5dwlppYn8s3CQh3aP0yK7Qs69cwsg
177160 4a 69 72 51 6d 7a 31 77 48 69 52 73 7a 59 64 32 0a 71 52 65 57 74 38 38 4e 6b 76 75 4f 47 4b 6d JirQmz1wHiRszYd2.qReWt88NkvuOGKm
177180 59 53 64 47 65 2f 6d 42 45 63 69 47 35 47 65 33 43 39 54 48 78 4f 55 69 49 6b 43 52 31 56 42 61 YSdGe/mBEciG5Ge3C9THxOUiIkCR1VBa
1771a0 74 7a 76 54 34 61 52 52 6b 4f 66 75 6a 75 4c 70 77 51 4d 63 6e 48 4c 2f 45 56 6c 50 36 0a 59 32 tzvT4aRRkOfujuLpwQMcnHL/EVlP6.Y2
1771c0 58 51 38 78 77 4f 46 76 56 72 68 6c 68 4e 47 4e 54 6b 44 59 36 6c 6e 56 75 52 33 48 59 6b 55 44 XQ8xwOFvVrhlhNGNTkDY6lnVuR3HYkUD
1771e0 2f 47 4b 76 76 5a 74 35 79 31 31 75 62 51 32 65 67 5a 69 78 56 78 53 4b 32 33 36 74 68 5a 69 4e /GKvvZt5y11ubQ2egZixVxSK236thZiN
177200 53 51 76 78 61 7a 32 65 6d 73 0a 57 57 46 55 79 42 79 36 79 73 48 4b 34 62 6b 67 54 49 38 36 6b SQvxaz2ems.WWFUyBy6ysHK4bkgTI86k
177220 34 6d 6c 6f 4d 79 2f 30 2f 5a 31 70 48 57 57 62 56 59 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 4mloMy/0/Z1pHWWbVY=.-----END.CER
177240 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 45 2d 54 75 67 72 61 20 43 65 72 74 69 66 69 63 61 TIFICATE-----..E-Tugra.Certifica
177260 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d tion.Authority.=================
177280 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 ==============.-----BEGIN.CERTIF
1772a0 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 47 53 7a 43 43 42 44 4f 67 41 77 49 42 41 67 49 49 61 ICATE-----.MIIGSzCCBDOgAwIBAgIIa
1772c0 6d 67 2b 6e 46 47 62 79 31 4d 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 77 67 mg+nFGby1MwDQYJKoZIhvcNAQELBQAwg
1772e0 62 49 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 52 53 4d 51 38 77 0a 44 51 59 44 56 51 51 48 bIxCzAJBgNVBAYTAlRSMQ8w.DQYDVQQH
177300 44 41 5a 42 62 6d 74 68 63 6d 45 78 51 44 41 2b 42 67 4e 56 42 41 6f 4d 4e 30 55 74 56 48 58 45 DAZBbmthcmExQDA+BgNVBAoMN0UtVHXE
177320 6e 33 4a 68 49 45 56 43 52 79 42 43 61 57 78 70 78 5a 39 70 62 53 42 55 5a 57 74 75 62 32 78 76 n3JhIEVCRyBCaWxpxZ9pbSBUZWtub2xv
177340 61 6d 6c 73 0a 5a 58 4a 70 49 48 5a 6c 49 45 68 70 65 6d 31 6c 64 47 78 6c 63 6d 6b 67 51 53 37 amls.ZXJpIHZlIEhpem1ldGxlcmkgQS7
177360 46 6e 69 34 78 4a 6a 41 6b 42 67 4e 56 42 41 73 4d 48 55 55 74 56 48 56 6e 63 6d 45 67 55 32 56 Fni4xJjAkBgNVBAsMHUUtVHVncmEgU2V
177380 79 64 47 6c 6d 61 57 74 68 63 33 6c 76 62 69 42 4e 0a 5a 58 4a 72 5a 58 70 70 4d 53 67 77 4a 67 ydGlmaWthc3lvbiBN.ZXJrZXppMSgwJg
1773a0 59 44 56 51 51 44 44 42 39 46 4c 56 52 31 5a 33 4a 68 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 YDVQQDDB9FLVR1Z3JhIENlcnRpZmljYX
1773c0 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 4d 42 34 58 44 54 45 7a 4d 44 4d 77 0a 4e Rpb24gQXV0aG9yaXR5MB4XDTEzMDMw.N
1773e0 54 45 79 4d 44 6b 30 4f 46 6f 58 44 54 49 7a 4d 44 4d 77 4d 7a 45 79 4d 44 6b 30 4f 46 6f 77 67 TEyMDk0OFoXDTIzMDMwMzEyMDk0OFowg
177400 62 49 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 52 53 4d 51 38 77 44 51 59 44 56 51 51 48 44 bIxCzAJBgNVBAYTAlRSMQ8wDQYDVQQHD
177420 41 5a 42 62 6d 74 68 63 6d 45 78 0a 51 44 41 2b 42 67 4e 56 42 41 6f 4d 4e 30 55 74 56 48 58 45 AZBbmthcmEx.QDA+BgNVBAoMN0UtVHXE
177440 6e 33 4a 68 49 45 56 43 52 79 42 43 61 57 78 70 78 5a 39 70 62 53 42 55 5a 57 74 75 62 32 78 76 n3JhIEVCRyBCaWxpxZ9pbSBUZWtub2xv
177460 61 6d 6c 73 5a 58 4a 70 49 48 5a 6c 49 45 68 70 65 6d 31 6c 64 47 78 6c 0a 63 6d 6b 67 51 53 37 amlsZXJpIHZlIEhpem1ldGxl.cmkgQS7
177480 46 6e 69 34 78 4a 6a 41 6b 42 67 4e 56 42 41 73 4d 48 55 55 74 56 48 56 6e 63 6d 45 67 55 32 56 Fni4xJjAkBgNVBAsMHUUtVHVncmEgU2V
1774a0 79 64 47 6c 6d 61 57 74 68 63 33 6c 76 62 69 42 4e 5a 58 4a 72 5a 58 70 70 4d 53 67 77 4a 67 59 ydGlmaWthc3lvbiBNZXJrZXppMSgwJgY
1774c0 44 56 51 51 44 0a 44 42 39 46 4c 56 52 31 5a 33 4a 68 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 DVQQD.DB9FLVR1Z3JhIENlcnRpZmljYX
1774e0 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 4d 49 49 43 49 6a 41 4e 42 67 6b 71 68 6b Rpb24gQXV0aG9yaXR5MIICIjANBgkqhk
177500 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 0a 4d 49 49 43 43 67 4b 43 41 67 45 41 34 iG9w0BAQEFAAOCAg8A.MIICCgKCAgEA4
177520 76 55 2f 6b 77 56 52 48 6f 56 69 56 46 35 36 43 2f 55 59 42 34 4f 75 66 71 39 38 39 39 53 4b 61 vU/kwVRHoViVF56C/UYB4Oufq9899SKa
177540 36 56 6a 51 7a 6d 35 53 2f 66 44 78 6d 53 4a 50 5a 51 75 56 49 42 53 4f 54 6b 48 53 30 76 64 0a 6VjQzm5S/fDxmSJPZQuVIBSOTkHS0vd.
177560 68 51 64 32 68 38 79 2f 4c 35 56 4d 7a 48 32 6e 50 62 78 48 44 35 68 77 2b 49 79 46 48 6e 53 4f hQd2h8y/L5VMzH2nPbxHD5hw+IyFHnSO
177580 6b 6d 30 62 51 4e 47 5a 44 62 74 31 62 73 69 70 61 35 72 41 68 44 47 76 79 6b 50 4c 36 79 73 30 km0bQNGZDbt1bsipa5rAhDGvykPL6ys0
1775a0 36 49 2b 58 61 77 47 62 31 51 35 4b 0a 43 4b 70 62 6b 6e 53 46 51 39 4f 41 72 71 47 49 57 36 36 6I+XawGb1Q5K.CKpbknSFQ9OArqGIW66
1775c0 7a 36 6c 37 4c 46 70 70 33 52 4d 69 68 39 6c 52 6f 7a 74 36 50 6c 79 75 36 57 30 41 43 44 47 51 z6l7LFpp3RMih9lRozt6Plyu6W0ACDGQ
1775e0 58 77 4c 57 54 7a 65 48 78 45 32 62 4f 44 48 6e 76 30 5a 45 6f 71 31 2b 67 0a 45 6c 49 77 63 78 XwLWTzeHxE2bODHnv0ZEoq1+g.ElIwcx
177600 6d 4f 6a 2b 47 4d 42 36 4c 44 75 30 72 77 36 68 38 56 71 4f 34 6c 7a 4b 52 47 2b 42 73 69 37 37 mOj+GMB6LDu0rw6h8VqO4lzKRG+Bsi77
177620 4d 4f 51 37 6f 73 4a 4c 6a 46 4c 46 7a 55 48 50 68 64 5a 4c 33 44 6b 31 34 6f 70 7a 38 6e 38 59 MOQ7osJLjFLFzUHPhdZL3Dk14opz8n8Y
177640 34 65 30 79 70 51 0a 42 61 4e 56 32 63 76 6e 4f 56 50 41 6d 4a 36 4d 56 47 4b 4c 4a 72 44 33 66 4e0ypQ.BaNV2cvnOVPAmJ6MVGKLJrD3f
177660 59 31 38 35 4d 61 65 5a 6b 4a 56 67 6b 66 6e 73 6c 69 4e 5a 76 63 48 66 43 34 32 35 6c 41 63 50 Y185MaeZkJVgkfnsliNZvcHfC425lAcP
177680 39 74 44 4a 4d 57 2f 68 6b 64 35 73 33 6b 63 39 31 72 30 0a 45 2b 78 73 2b 44 2f 69 57 52 2b 56 9tDJMW/hkd5s3kc91r0.E+xs+D/iWR+V
1776a0 37 6b 49 2b 75 61 32 6f 4d 6f 56 4a 6c 30 62 2b 53 7a 47 50 57 73 75 74 64 45 63 66 36 5a 47 33 7kI+ua2oMoVJl0b+SzGPWsutdEcf6ZG3
1776c0 33 79 67 45 49 71 44 55 44 31 33 69 65 55 2f 71 62 49 57 47 76 61 69 6d 7a 75 54 36 77 2b 47 7a 3ygEIqDUD13ieU/qbIWGvaimzuT6w+Gz
1776e0 0a 72 74 34 38 55 65 37 4c 45 33 77 42 66 34 51 4f 58 56 47 55 6e 68 4d 4d 74 69 36 6c 54 50 6b .rt48Ue7LE3wBf4QOXVGUnhMMti6lTPk
177700 35 63 44 5a 76 6c 73 6f 75 44 45 52 56 78 63 72 36 58 51 4b 6a 33 39 5a 6b 6a 46 71 7a 41 51 71 5cDZvlsouDERVxcr6XQKj39ZkjFqzAQq
177720 70 74 51 70 48 46 2f 2f 76 6b 55 41 71 0a 6a 71 46 47 4f 6a 47 59 35 52 48 38 7a 4c 74 4a 56 6f ptQpHF//vkUAq.jqFGOjGY5RH8zLtJVo
177740 72 38 75 64 42 68 6d 6d 39 6c 62 4f 62 44 79 7a 35 31 53 66 36 50 70 2b 4b 4a 78 57 66 58 6e 55 r8udBhmm9lbObDyz51Sf6Pp+KJxWfXnU
177760 59 54 54 6a 46 32 4f 79 53 7a 6e 68 46 6c 68 71 74 2f 37 78 33 55 2b 4c 7a 6e 0a 72 46 70 63 74 YTTjF2OySznhFlhqt/7x3U+Lzn.rFpct
177780 31 70 48 58 46 58 4f 56 62 51 69 63 56 74 62 43 2f 44 50 33 4b 42 68 5a 4f 71 70 31 32 67 4b 59 1pHXFXOVbQicVtbC/DP3KBhZOqp12gKY
1777a0 36 66 67 44 54 2b 67 72 39 4f 71 30 6e 37 76 55 61 44 6d 55 53 74 56 6b 68 55 58 55 38 75 33 5a 6fgDT+gr9Oq0n7vUaDmUStVkhUXU8u3Z
1777c0 67 35 6d 54 50 6a 35 0a 64 55 79 51 35 78 4a 77 78 30 55 43 41 77 45 41 41 61 4e 6a 4d 47 45 77 g5mTPj5.dUyQ5xJwx0UCAwEAAaNjMGEw
1777e0 48 51 59 44 56 52 30 4f 42 42 59 45 46 43 37 6a 32 37 4a 4a 30 4a 78 55 65 56 7a 36 4a 79 72 2b HQYDVR0OBBYEFC7j27JJ0JxUeVz6Jyr+
177800 7a 45 37 53 36 45 35 55 4d 41 38 47 41 31 55 64 45 77 45 42 0a 2f 77 51 46 4d 41 4d 42 41 66 38 zE7S6E5UMA8GA1UdEwEB./wQFMAMBAf8
177820 77 48 77 59 44 56 52 30 6a 42 42 67 77 46 6f 41 55 4c 75 50 62 73 6b 6e 51 6e 46 52 35 58 50 6f wHwYDVR0jBBgwFoAULuPbsknQnFR5XPo
177840 6e 4b 76 37 4d 54 74 4c 6f 54 6c 51 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 nKv7MTtLoTlQwDgYDVR0PAQH/BAQDAgE
177860 47 0a 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 41 34 49 43 41 51 41 46 4e 7a G.MA0GCSqGSIb3DQEBCwUAA4ICAQAFNz
177880 72 30 54 62 64 46 34 6b 56 31 4a 49 2b 32 64 31 4c 6f 48 4e 67 51 6b 32 58 7a 38 6c 6b 47 70 44 r0TbdF4kV1JI+2d1LoHNgQk2Xz8lkGpD
1778a0 34 65 4b 65 78 64 30 64 43 72 66 4f 41 4b 0a 6b 45 68 34 37 55 36 59 41 35 6e 2b 4b 47 43 52 48 4eKexd0dCrfOAK.kEh47U6YA5n+KGCRH
1778c0 54 41 64 75 47 4e 38 71 4f 59 31 74 66 72 54 59 58 62 6d 31 67 64 4c 79 6d 6d 61 73 6f 52 36 64 TAduGN8qOY1tfrTYXbm1gdLymmasoR6d
1778e0 35 4e 46 46 78 57 66 4a 4e 43 59 45 78 4c 2f 75 36 41 75 2f 55 35 4d 68 2f 6a 4f 0a 58 4b 71 59 5NFFxWfJNCYExL/u6Au/U5Mh/jO.XKqY
177900 47 77 58 67 41 45 5a 4b 67 6f 43 6c 4d 34 73 6f 33 4f 30 34 30 39 2f 6c 50 75 6e 2b 2b 31 6e 64 GwXgAEZKgoClM4so3O0409/lPun++1nd
177920 59 59 52 50 30 6c 53 57 45 32 45 54 50 6f 2b 41 61 62 36 54 52 37 55 31 51 39 4a 61 75 7a 31 63 YYRP0lSWE2ETPo+Aab6TR7U1Q9Jauz1c
177940 37 37 4e 43 52 38 30 37 0a 56 52 4d 47 73 41 6e 62 2f 57 50 32 4f 6f 67 4b 6d 57 39 2b 34 63 34 77NCR807.VRMGsAnb/WP2OogKmW9+4c4
177960 62 55 32 70 45 5a 69 4e 52 43 48 75 38 57 31 4b 69 2f 51 59 33 4f 45 42 68 6a 30 71 57 75 4a 41 bU2pEZiNRCHu8W1Ki/QY3OEBhj0qWuJA
177980 33 2b 47 62 48 65 4a 41 41 46 53 36 4c 72 56 45 31 55 77 65 6f 0a 61 32 69 75 2b 55 34 38 42 79 3+GbHeJAAFS6LrVE1Uweo.a2iu+U48By
1779a0 62 4e 43 41 56 77 7a 44 6b 2f 64 72 32 6c 30 32 63 6d 41 59 61 6d 55 39 4a 67 4f 33 78 44 66 31 bNCAVwzDk/dr2l02cmAYamU9JgO3xDf1
1779c0 57 4b 76 4a 55 61 77 53 67 35 54 42 39 44 30 70 48 30 63 6c 6d 4b 75 56 62 38 50 37 53 64 32 6e WKvJUawSg5TB9D0pH0clmKuVb8P7Sd2n
1779e0 43 63 0a 64 6c 71 4d 51 31 44 75 6a 6a 42 79 54 64 2f 2f 53 66 66 47 71 57 66 5a 62 61 77 43 45 Cc.dlqMQ1DujjByTd//SffGqWfZbawCE
177a00 65 49 36 46 69 57 6e 57 41 6a 4c 62 31 4e 42 6e 45 67 34 52 32 67 7a 30 64 66 48 6a 39 52 30 49 eI6FiWnWAjLb1NBnEg4R2gz0dfHj9R0I
177a20 64 54 44 42 5a 42 36 2f 38 36 57 69 4c 45 56 0a 4b 56 30 6a 71 39 42 67 6f 52 4a 50 33 76 51 58 dTDBZB6/86WiLEV.KV0jq9BgoRJP3vQX
177a40 7a 54 4c 6c 79 62 2f 49 51 36 33 39 4c 6f 37 78 72 2b 4c 30 6d 50 6f 53 48 79 44 59 77 4b 63 4d zTLlyb/IQ639Lo7xr+L0mPoSHyDYwKcM
177a60 68 63 57 51 39 44 73 74 6c 69 61 78 4c 4c 35 4d 71 2b 75 78 30 6f 72 4a 32 33 67 54 0a 44 78 34 hcWQ9DstliaxLL5Mq+ux0orJ23gT.Dx4
177a80 4a 6e 57 32 50 41 4a 38 43 32 73 48 36 48 33 70 36 43 63 52 4b 35 6f 67 71 6c 35 2b 4a 69 2f 30 JnW2PAJ8C2sH6H3p6CcRK5ogql5+Ji/0
177aa0 33 58 31 38 36 7a 6a 68 5a 68 6b 75 76 63 51 75 30 32 50 4a 77 54 35 38 79 45 2b 4f 77 70 31 66 3X186zjhZhkuvcQu02PJwT58yE+Owp1f
177ac0 6c 32 74 70 44 79 34 51 30 0a 38 69 6a 45 36 6d 33 30 4b 75 2f 42 61 33 62 61 2b 33 36 37 68 54 l2tpDy4Q0.8ijE6m30Ku/Ba3ba+367hT
177ae0 7a 53 55 38 4a 4e 76 6e 48 68 52 64 48 39 49 32 63 4e 45 33 58 37 7a 32 56 6e 49 70 32 75 73 41 zSU8JNvnHhRdH9I2cNE3X7z2VnIp2usA
177b00 6e 52 43 66 38 64 4e 4c 2f 2b 49 35 63 33 30 6a 6e 36 50 51 30 47 0a 43 37 54 62 4f 36 4f 72 62 nRCf8dNL/+I5c30jn6PQ0G.C7TbO6Orb
177b20 31 77 64 74 6e 37 6f 73 34 49 30 37 51 5a 63 4a 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 1wdtn7os4I07QZcJA==.-----END.CER
177b40 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 2d 54 65 6c 65 53 65 63 20 47 6c 6f 62 61 6c 52 TIFICATE-----..T-TeleSec.GlobalR
177b60 6f 6f 74 20 43 6c 61 73 73 20 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d oot.Class.2.====================
177b80 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
177ba0 2d 2d 2d 2d 0a 4d 49 49 44 77 7a 43 43 41 71 75 67 41 77 49 42 41 67 49 42 41 54 41 4e 42 67 6b ----.MIIDwzCCAqugAwIBAgIBATANBgk
177bc0 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 43 42 67 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d qhkiG9w0BAQsFADCBgjELMAkGA1UEBhM
177be0 43 52 45 55 78 4b 7a 41 70 42 67 4e 56 42 41 6f 4d 0a 49 6c 51 74 55 33 6c 7a 64 47 56 74 63 79 CREUxKzApBgNVBAoM.IlQtU3lzdGVtcy
177c00 42 46 62 6e 52 6c 63 6e 42 79 61 58 4e 6c 49 46 4e 6c 63 6e 5a 70 59 32 56 7a 49 45 64 74 59 6b BFbnRlcnByaXNlIFNlcnZpY2VzIEdtYk
177c20 67 78 48 7a 41 64 42 67 4e 56 42 41 73 4d 46 6c 51 74 55 33 6c 7a 64 47 56 74 63 79 42 55 0a 63 gxHzAdBgNVBAsMFlQtU3lzdGVtcyBU.c
177c40 6e 56 7a 64 43 42 44 5a 57 35 30 5a 58 49 78 4a 54 41 6a 42 67 4e 56 42 41 4d 4d 48 46 51 74 56 nVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtV
177c60 47 56 73 5a 56 4e 6c 59 79 42 48 62 47 39 69 59 57 78 53 62 32 39 30 49 45 4e 73 59 58 4e 7a 49 GVsZVNlYyBHbG9iYWxSb290IENsYXNzI
177c80 44 49 77 48 68 63 4e 4d 44 67 78 0a 4d 44 41 78 4d 54 41 30 4d 44 45 30 57 68 63 4e 4d 7a 4d 78 DIwHhcNMDgx.MDAxMTA0MDE0WhcNMzMx
177ca0 4d 44 41 78 4d 6a 4d 31 4f 54 55 35 57 6a 43 42 67 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 MDAxMjM1OTU5WjCBgjELMAkGA1UEBhMC
177cc0 52 45 55 78 4b 7a 41 70 42 67 4e 56 42 41 6f 4d 49 6c 51 74 55 33 6c 7a 0a 64 47 56 74 63 79 42 REUxKzApBgNVBAoMIlQtU3lz.dGVtcyB
177ce0 46 62 6e 52 6c 63 6e 42 79 61 58 4e 6c 49 46 4e 6c 63 6e 5a 70 59 32 56 7a 49 45 64 74 59 6b 67 FbnRlcnByaXNlIFNlcnZpY2VzIEdtYkg
177d00 78 48 7a 41 64 42 67 4e 56 42 41 73 4d 46 6c 51 74 55 33 6c 7a 64 47 56 74 63 79 42 55 63 6e 56 xHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnV
177d20 7a 64 43 42 44 0a 5a 57 35 30 5a 58 49 78 4a 54 41 6a 42 67 4e 56 42 41 4d 4d 48 46 51 74 56 47 zdCBD.ZW50ZXIxJTAjBgNVBAMMHFQtVG
177d40 56 73 5a 56 4e 6c 59 79 42 48 62 47 39 69 59 57 78 53 62 32 39 30 49 45 4e 73 59 58 4e 7a 49 44 VsZVNlYyBHbG9iYWxSb290IENsYXNzID
177d60 49 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 0a 44 51 45 42 41 51 55 41 41 34 49 42 44 IwggEiMA0GCSqGSIb3.DQEBAQUAA4IBD
177d80 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 71 58 39 6f 62 58 2b 68 7a 6b 65 58 61 58 50 53 69 35 wAwggEKAoIBAQCqX9obX+hzkeXaXPSi5
177da0 6b 66 6c 38 32 68 56 59 41 55 64 41 71 53 7a 6d 31 6e 7a 48 6f 71 76 4e 4b 33 38 44 63 4c 5a 0a kfl82hVYAUdAqSzm1nzHoqvNK38DcLZ.
177dc0 53 42 6e 75 61 59 2f 4a 49 50 77 68 71 67 63 5a 37 62 42 63 72 47 58 48 58 2b 30 43 66 48 74 38 SBnuaY/JIPwhqgcZ7bBcrGXHX+0CfHt8
177de0 4c 52 76 57 75 72 6d 41 77 68 69 43 46 6f 54 36 5a 72 41 49 78 6c 51 6a 67 65 54 4e 75 55 6b 2f LRvWurmAwhiCFoT6ZrAIxlQjgeTNuUk/
177e00 39 6b 39 75 4e 30 67 6f 4f 41 2f 46 0a 76 75 64 6f 63 50 30 35 6c 30 33 53 78 35 69 52 55 4b 72 9k9uN0goOA/F.vudocP05l03Sx5iRUKr
177e20 45 52 4c 4d 6a 66 54 6c 48 36 56 4a 69 31 68 4b 54 58 72 63 78 6c 6b 49 46 2b 33 61 6e 48 71 50 ERLMjfTlH6VJi1hKTXrcxlkIF+3anHqP
177e40 31 77 76 7a 70 65 73 56 73 71 58 46 50 36 73 74 34 76 47 43 76 78 39 37 30 0a 32 63 75 2b 66 6a 1wvzpesVsqXFP6st4vGCvx970.2cu+fj
177e60 4f 6c 62 70 53 44 38 44 54 36 49 61 76 71 6a 6e 4b 67 50 36 54 65 4d 46 76 76 68 6b 31 71 6c 56 OlbpSD8DT6IavqjnKgP6TeMFvvhk1qlV
177e80 74 44 52 4b 67 51 46 52 7a 6c 41 56 66 46 6d 50 48 6d 42 69 69 52 71 69 44 46 74 31 4d 6d 55 55 tDRKgQFRzlAVfFmPHmBiiRqiDFt1MmUU
177ea0 4f 79 43 78 47 56 0a 57 4f 48 41 44 33 62 5a 77 49 31 38 67 66 4e 79 63 4a 35 76 2f 68 71 4f 32 OyCxGV.WOHAD3bZwI18gfNycJ5v/hqO2
177ec0 56 38 31 78 72 4a 76 4e 48 79 2b 53 45 2f 69 57 6a 6e 58 32 4a 31 34 6e 70 2b 47 50 67 4e 65 47 V81xrJvNHy+SE/iWjnX2J14np+GPgNeG
177ee0 59 74 45 6f 74 58 48 41 67 4d 42 41 41 47 6a 51 6a 42 41 0a 4d 41 38 47 41 31 55 64 45 77 45 42 YtEotXHAgMBAAGjQjBA.MA8GA1UdEwEB
177f00 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 /wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEG
177f20 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 53 2f 57 53 41 32 41 48 6d 67 6f 43 4a 72 6a 4e 58 79 MB0GA1UdDgQWBBS/WSA2AHmgoCJrjNXy
177f40 0a 59 64 4b 34 4c 4d 75 43 53 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 41 4f .YdK4LMuCSjANBgkqhkiG9w0BAQsFAAO
177f60 43 41 51 45 41 4d 51 4f 69 59 51 73 66 64 4f 68 79 4e 73 5a 74 2b 55 32 65 2b 69 4b 6f 34 59 46 CAQEAMQOiYQsfdOhyNsZt+U2e+iKo4YF
177f80 57 7a 38 32 37 6e 2b 71 72 6b 52 6b 34 0a 72 36 70 38 46 55 33 7a 74 71 4f 4e 70 66 53 4f 39 6b Wz827n+qrkRk4.r6p8FU3ztqONpfSO9k
177fa0 53 70 70 2b 67 68 6c 61 30 2b 41 47 49 57 69 50 41 43 75 76 78 68 49 2b 59 7a 6d 7a 42 36 61 7a Spp+ghla0+AGIWiPACuvxhI+YzmzB6az
177fc0 5a 69 65 36 30 45 49 34 52 59 5a 65 4c 62 4b 34 72 6e 4a 56 4d 33 59 6c 4e 66 0a 76 4e 6f 42 59 Zie60EI4RYZeLbK4rnJVM3YlNf.vNoBY
177fe0 69 6d 69 70 69 64 78 35 6a 6f 69 66 73 46 76 48 5a 56 77 49 45 6f 48 4e 4e 2f 71 2f 78 57 41 35 imipidx5joifsFvHZVwIEoHNN/q/xWA5
178000 62 72 58 65 74 68 62 64 58 77 46 65 69 6c 48 66 6b 43 6f 4d 52 4e 33 7a 55 41 37 74 46 46 48 65 brXethbdXwFeilHfkCoMRN3zUA7tFFHe
178020 69 34 52 34 30 63 52 0a 33 70 31 6d 30 49 76 56 56 47 62 36 67 31 58 71 66 4d 49 70 69 52 76 70 i4R40cR.3p1m0IvVVGb6g1XqfMIpiRvp
178040 62 37 50 4f 34 67 57 45 79 53 38 2b 65 49 56 69 62 73 6c 66 77 58 68 6a 64 46 6a 41 53 42 67 4d b7PO4gWEyS8+eIVibslfwXhjdFjASBgM
178060 6d 54 6e 72 70 4d 77 61 74 58 6c 61 6a 52 57 63 32 42 51 4e 0a 39 6e 6f 48 56 38 63 69 67 77 55 mTnrpMwatXlajRWc2BQN.9noHV8cigwU
178080 74 50 4a 73 6c 4a 6a 30 59 73 36 6c 44 66 4d 6a 49 71 32 53 50 44 71 4f 2f 6e 42 75 64 4d 4e 76 tPJslJj0Ys6lDfMjIq2SPDqO/nBudMNv
1780a0 61 30 42 6b 75 71 6a 7a 78 2b 7a 4f 41 64 75 54 4e 72 52 6c 50 42 53 65 4f 45 36 46 75 77 67 3d a0Bkuqjzx+zOAduTNrRlPBSeOE6Fuwg=
1780c0 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 41 74 6f =.-----END.CERTIFICATE-----..Ato
1780e0 73 20 54 72 75 73 74 65 64 52 6f 6f 74 20 32 30 31 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d s.TrustedRoot.2011.=============
178100 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
178120 2d 2d 2d 2d 0a 4d 49 49 44 64 7a 43 43 41 6c 2b 67 41 77 49 42 41 67 49 49 58 44 50 4c 59 69 78 ----.MIIDdzCCAl+gAwIBAgIIXDPLYix
178140 66 73 7a 49 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 77 50 44 45 65 4d 42 77 fszIwDQYJKoZIhvcNAQELBQAwPDEeMBw
178160 47 41 31 55 45 41 77 77 56 51 58 52 76 63 79 42 55 0a 63 6e 56 7a 64 47 56 6b 55 6d 39 76 64 43 GA1UEAwwVQXRvcyBU.cnVzdGVkUm9vdC
178180 41 79 4d 44 45 78 4d 51 30 77 43 77 59 44 56 51 51 4b 44 41 52 42 64 47 39 7a 4d 51 73 77 43 51 AyMDExMQ0wCwYDVQQKDARBdG9zMQswCQ
1781a0 59 44 56 51 51 47 45 77 4a 45 52 54 41 65 46 77 30 78 4d 54 41 33 4d 44 63 78 4e 44 55 34 0a 4d YDVQQGEwJERTAeFw0xMTA3MDcxNDU4.M
1781c0 7a 42 61 46 77 30 7a 4d 44 45 79 4d 7a 45 79 4d 7a 55 35 4e 54 6c 61 4d 44 77 78 48 6a 41 63 42 zBaFw0zMDEyMzEyMzU5NTlaMDwxHjAcB
1781e0 67 4e 56 42 41 4d 4d 46 55 46 30 62 33 4d 67 56 48 4a 31 63 33 52 6c 5a 46 4a 76 62 33 51 67 4d gNVBAMMFUF0b3MgVHJ1c3RlZFJvb3QgM
178200 6a 41 78 4d 54 45 4e 4d 41 73 47 0a 41 31 55 45 43 67 77 45 51 58 52 76 63 7a 45 4c 4d 41 6b 47 jAxMTENMAsG.A1UECgwEQXRvczELMAkG
178220 41 31 55 45 42 68 4d 43 52 45 55 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 A1UEBhMCREUwggEiMA0GCSqGSIb3DQEB
178240 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 43 56 0a 68 54 75 58 62 79 6f AQUAA4IBDwAwggEKAoIBAQCV.hTuXbyo
178260 37 4c 6a 76 50 70 76 4d 70 4e 62 37 50 47 4b 77 2b 71 74 6e 34 54 61 41 2b 47 6b 65 35 76 4a 72 7LjvPpvMpNb7PGKw+qtn4TaA+Gke5vJr
178280 66 38 76 37 4d 50 6b 66 6f 65 70 62 43 4a 49 34 31 39 4b 6b 4d 2f 49 4c 39 62 63 46 79 59 69 65 f8v7MPkfoepbCJI419KkM/IL9bcFyYie
1782a0 39 36 6d 76 72 0a 35 34 72 4d 56 44 36 51 55 4d 2b 41 31 4a 58 37 36 4c 57 43 31 42 54 46 74 71 96mvr.54rMVD6QUM+A1JX76LWC1BTFtq
1782c0 6c 56 4a 56 66 62 73 56 44 32 73 47 42 6b 57 58 70 70 7a 77 4f 33 62 77 32 2b 79 6a 35 76 64 48 lVJVfbsVD2sGBkWXppzwO3bw2+yj5vdH
1782e0 4c 71 71 6a 41 71 63 32 4b 2b 53 5a 46 68 79 42 48 2b 0a 44 67 4d 71 39 32 6f 67 33 41 49 56 44 LqqjAqc2K+SZFhyBH+.DgMq92og3AIVD
178300 56 34 56 61 76 7a 6a 67 73 47 31 78 5a 31 6b 43 57 79 6a 57 5a 67 48 4a 38 63 62 6c 69 74 68 64 V4VavzjgsG1xZ1kCWyjWZgHJ8cblithd
178320 48 46 73 51 2f 48 33 4e 59 6b 51 34 4a 37 73 56 61 45 33 49 71 4b 48 42 41 55 73 52 33 32 30 0a HFsQ/H3NYkQ4J7sVaE3IqKHBAUsR320.
178340 48 4c 6c 69 4b 57 59 6f 79 72 66 68 6b 2f 57 6b 6c 41 4f 5a 75 58 43 46 74 65 5a 49 36 6f 31 51 HLliKWYoyrfhk/WklAOZuXCFteZI6o1Q
178360 2f 4e 6e 65 7a 47 38 48 44 74 30 4c 63 70 32 41 4d 42 59 48 6c 54 38 6f 44 76 33 46 64 55 39 54 /NnezG8HDt0Lcp2AMBYHlT8oDv3FdU9T
178380 31 6e 53 61 74 43 51 75 6a 67 4b 52 0a 7a 33 62 46 6d 78 35 56 64 4a 78 34 49 62 48 77 4c 66 45 1nSatCQujgKR.z3bFmx5VdJx4IbHwLfE
1783a0 4c 6e 38 4c 56 6c 68 67 66 38 46 51 69 65 6f 77 48 41 67 4d 42 41 41 47 6a 66 54 42 37 4d 42 30 Ln8LVlhgf8FQieowHAgMBAAGjfTB7MB0
1783c0 47 41 31 55 64 44 67 51 57 42 42 53 6e 70 51 61 78 4c 4b 59 4a 59 4f 37 52 0a 6c 2b 6c 77 72 72 GA1UdDgQWBBSnpQaxLKYJYO7R.l+lwrr
1783e0 77 37 47 57 7a 62 49 54 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 w7GWzbITAPBgNVHRMBAf8EBTADAQH/MB
178400 38 47 41 31 55 64 49 77 51 59 4d 42 61 41 46 4b 65 6c 42 72 45 73 70 67 6c 67 37 74 47 58 36 58 8GA1UdIwQYMBaAFKelBrEspglg7tGX6X
178420 43 75 76 44 73 5a 0a 62 4e 73 68 4d 42 67 47 41 31 55 64 49 41 51 52 4d 41 38 77 44 51 59 4c 4b CuvDsZ.bNshMBgGA1UdIAQRMA8wDQYLK
178440 77 59 42 42 41 47 77 4c 51 4d 45 41 51 45 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 wYBBAGwLQMEAQEwDgYDVR0PAQH/BAQDA
178460 67 47 47 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 0a 43 77 55 41 41 34 49 42 41 51 41 6d gGGMA0GCSqGSIb3DQEB.CwUAA4IBAQAm
178480 64 7a 54 62 6c 45 69 47 4b 6b 47 64 4c 44 34 47 6b 47 44 45 6a 4b 77 4c 56 4c 67 66 75 58 76 54 dzTblEiGKkGdLD4GkGDEjKwLVLgfuXvT
1784a0 42 7a 6e 6b 2b 6a 35 37 73 6a 31 4f 37 5a 38 6a 76 5a 66 7a 61 31 7a 76 37 76 31 41 70 74 2b 68 Bznk+j57sj1O7Z8jvZfza1zv7v1Apt+h
1784c0 0a 6b 36 45 4b 68 71 7a 76 49 4e 42 35 41 62 31 34 39 78 6e 59 4a 44 45 30 42 41 47 6d 75 68 57 .k6EKhqzvINB5Ab149xnYJDE0BAGmuhW
1784e0 61 77 79 66 63 32 45 38 50 7a 42 68 6a 2f 35 6b 50 44 70 46 72 64 52 62 68 49 66 7a 59 4a 73 64 awyfc2E8PzBhj/5kPDpFrdRbhIfzYJsd
178500 48 74 36 62 50 57 48 4a 78 66 72 72 68 0a 54 5a 56 48 4f 38 6d 76 62 61 47 30 77 65 79 4a 39 72 Ht6bPWHJxfrrh.TZVHO8mvbaG0weyJ9r
178520 51 50 4f 4c 58 69 5a 4e 77 6c 7a 36 62 62 36 35 70 63 6d 61 48 46 43 4e 37 39 35 74 72 56 31 6c QPOLXiZNwlz6bb65pcmaHFCN795trV1l
178540 70 46 44 4d 53 33 77 72 55 55 37 37 51 52 2f 77 34 56 74 66 58 31 32 38 61 39 0a 36 31 71 6e 38 pFDMS3wrUU77QR/w4VtfX128a9.61qn8
178560 46 59 69 71 54 78 6c 56 4d 59 56 71 4c 32 47 6e 73 32 44 6c 6d 68 36 63 59 47 4a 34 51 76 68 36 FYiqTxlVMYVqL2Gns2Dlmh6cYGJ4Qvh6
178580 68 45 62 61 41 6a 4d 61 5a 37 73 6e 6b 47 65 52 44 49 6d 65 75 4b 48 43 6e 45 39 36 2b 52 61 70 hEbaAjMaZ7snkGeRDImeuKHCnE96+Rap
1785a0 4e 4c 62 78 63 33 47 0a 33 6d 42 2f 75 66 4e 50 52 4a 4c 76 4b 72 63 59 50 71 63 5a 32 51 74 39 NLbxc3G.3mB/ufNPRJLvKrcYPqcZ2Qt9
1785c0 73 54 64 42 51 72 43 36 59 42 33 79 2f 67 6b 52 73 50 43 48 65 36 65 64 0a 2d 2d 2d 2d 2d 45 4e sTdBQrC6YB3y/gkRsPCHe6ed.-----EN
1785e0 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 51 75 6f 56 61 64 69 73 20 52 6f 6f D.CERTIFICATE-----..QuoVadis.Roo
178600 74 20 43 41 20 31 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a t.CA.1.G3.=====================.
178620 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 -----BEGIN.CERTIFICATE-----.MIIF
178640 59 44 43 43 41 30 69 67 41 77 49 42 41 67 49 55 65 46 68 66 4c 71 30 73 47 55 76 6a 4e 77 63 31 YDCCA0igAwIBAgIUeFhfLq0sGUvjNwc1
178660 4e 42 4d 6f 74 5a 62 55 5a 5a 4d 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 77 NBMotZbUZZMwDQYJKoZIhvcNAQELBQAw
178680 53 44 45 4c 4d 41 6b 47 0a 41 31 55 45 42 68 4d 43 51 6b 30 78 47 54 41 58 42 67 4e 56 42 41 6f SDELMAkG.A1UEBhMCQk0xGTAXBgNVBAo
1786a0 54 45 46 46 31 62 31 5a 68 5a 47 6c 7a 49 45 78 70 62 57 6c 30 5a 57 51 78 48 6a 41 63 42 67 4e TEFF1b1ZhZGlzIExpbWl0ZWQxHjAcBgN
1786c0 56 42 41 4d 54 46 56 46 31 62 31 5a 68 5a 47 6c 7a 49 46 4a 76 0a 62 33 51 67 51 30 45 67 4d 53 VBAMTFVF1b1ZhZGlzIFJv.b3QgQ0EgMS
1786e0 42 48 4d 7a 41 65 46 77 30 78 4d 6a 41 78 4d 54 49 78 4e 7a 49 33 4e 44 52 61 46 77 30 30 4d 6a BHMzAeFw0xMjAxMTIxNzI3NDRaFw00Mj
178700 41 78 4d 54 49 78 4e 7a 49 33 4e 44 52 61 4d 45 67 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b AxMTIxNzI3NDRaMEgxCzAJBgNVBAYTAk
178720 4a 4e 0a 4d 52 6b 77 46 77 59 44 56 51 51 4b 45 78 42 52 64 57 39 57 59 57 52 70 63 79 42 4d 61 JN.MRkwFwYDVQQKExBRdW9WYWRpcyBMa
178740 57 31 70 64 47 56 6b 4d 52 34 77 48 41 59 44 56 51 51 44 45 78 56 52 64 57 39 57 59 57 52 70 63 W1pdGVkMR4wHAYDVQQDExVRdW9WYWRpc
178760 79 42 53 62 32 39 30 49 45 4e 42 49 44 45 67 0a 52 7a 4d 77 67 67 49 69 4d 41 30 47 43 53 71 47 yBSb290IENBIDEg.RzMwggIiMA0GCSqG
178780 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 67 SIb3DQEBAQUAA4ICDwAwggIKAoICAQCg
1787a0 76 6c 41 51 6a 75 6e 79 62 45 43 30 42 4a 79 46 75 54 48 4b 33 43 33 6b 45 61 6b 45 0a 50 42 74 vlAQjunybEC0BJyFuTHK3C3kEakE.PBt
1787c0 56 77 65 64 59 4d 42 30 6b 74 4d 50 76 68 64 36 4d 4c 4f 48 42 50 64 2b 43 35 6b 2b 74 52 34 64 VwedYMB0ktMPvhd6MLOHBPd+C5k+tR4d
1787e0 73 37 46 74 4a 77 55 72 56 75 34 2f 73 68 36 78 2f 67 70 71 47 37 44 30 44 6d 56 49 42 30 6a 57 s7FtJwUrVu4/sh6x/gpqG7D0DmVIB0jW
178800 65 72 4e 72 77 55 38 6c 6d 0a 50 4e 53 73 41 67 48 61 4a 4e 4d 37 71 41 4a 47 72 36 51 63 34 2f erNrwU8lm.PNSsAgHaJNM7qAJGr6Qc4/
178820 68 7a 57 48 61 33 39 67 36 51 44 62 58 77 7a 38 7a 36 2b 63 5a 4d 35 63 4f 47 4d 41 71 4e 46 33 hzWHa39g6QDbXwz8z6+cZM5cOGMAqNF3
178840 34 31 36 38 58 66 75 77 36 63 77 49 32 48 34 34 67 34 68 57 66 36 0a 50 73 65 72 34 42 4f 63 42 4168Xfuw6cwI2H44g4hWf6.Pser4BOcB
178860 52 69 59 7a 35 50 31 73 5a 4b 30 2f 43 50 54 7a 39 58 45 4a 30 6e 67 6e 6a 79 62 43 4b 4f 4c 58 RiYz5P1sZK0/CPTz9XEJ0ngnjybCKOLX
178880 53 6f 68 34 50 77 35 71 6c 50 61 66 58 37 50 47 67 6c 54 76 46 30 46 42 4d 2b 68 53 6f 2b 4c 64 Soh4Pw5qlPafX7PGglTvF0FBM+hSo+Ld
1788a0 6f 49 4e 0a 6f 66 6a 53 78 78 52 33 57 35 41 32 42 34 47 62 50 67 62 36 55 6c 35 6a 78 61 59 41 oIN.ofjSxxR3W5A2B4GbPgb6Ul5jxaYA
1788c0 2f 71 58 70 55 68 74 53 74 5a 49 35 63 67 4d 4a 59 72 32 77 59 42 5a 75 70 74 30 6c 77 67 4e 6d /qXpUhtStZI5cgMJYr2wYBZupt0lwgNm
1788e0 33 66 4d 45 30 55 44 69 54 6f 75 47 39 47 2f 6c 0a 67 36 41 6e 68 46 34 45 77 66 57 51 76 54 41 3fME0UDiTouG9G/l.g6AnhF4EwfWQvTA
178900 39 78 4f 2b 6f 61 62 77 34 6d 36 53 6b 6c 74 46 69 32 6d 6e 41 41 5a 61 75 79 38 52 52 4e 4f 6f 9xO+oabw4m6SkltFi2mnAAZauy8RRNOo
178920 4d 71 76 38 68 6a 6c 6d 50 53 6c 7a 6b 59 5a 71 6e 30 75 6b 71 65 49 31 52 50 54 6f 56 0a 37 71 Mqv8hjlmPSlzkYZqn0ukqeI1RPToV.7q
178940 4a 5a 6a 71 6c 63 33 73 58 35 6b 43 4c 6c 69 45 56 78 33 5a 47 5a 62 48 71 66 50 54 32 59 66 46 JZjqlc3sX5kCLliEVx3ZGZbHqfPT2YfF
178960 37 32 76 68 5a 6f 6f 46 36 75 43 79 50 38 57 67 2b 71 49 6e 59 74 79 61 45 51 48 65 54 54 52 43 72vhZooF6uCyP8Wg+qInYtyaEQHeTTRC
178980 4f 51 69 4a 2f 47 4b 75 62 58 0a 39 5a 71 7a 57 42 34 76 4d 49 6b 49 47 31 53 69 74 5a 67 6a 37 OQiJ/GKubX.9ZqzWB4vMIkIG1SitZgj7
1789a0 41 68 33 48 4a 56 64 59 64 48 4c 69 5a 78 66 6f 6b 71 52 6d 75 38 68 71 6b 6b 57 43 4b 69 39 59 Ah3HJVdYdHLiZxfokqRmu8hqkkWCKi9Y
1789c0 53 67 78 79 58 53 74 68 66 62 5a 78 62 47 4c 30 65 55 51 4d 6b 31 66 0a 69 79 41 36 50 45 6b 66 SgxyXSthfbZxbGL0eUQMk1f.iyA6PEkf
1789e0 4d 34 56 5a 44 64 76 4c 43 58 56 44 61 58 50 37 61 33 46 39 38 4e 2f 45 54 48 33 47 6f 79 37 49 M4VZDdvLCXVDaXP7a3F98N/ETH3Goy7I
178a00 6c 58 6e 4c 63 36 4b 4f 54 6b 30 6b 2b 31 37 6b 42 4c 35 79 47 36 59 6e 4c 55 6c 61 6d 58 72 58 lXnLc6KOTk0k+17kBL5yG6YnLUlamXrX
178a20 58 41 6b 67 0a 74 33 2b 55 75 55 2f 78 44 52 78 65 69 45 49 62 45 62 66 6e 6b 64 75 65 62 50 52 XAkg.t3+UuU/xDRxeiEIbEbfnkduebPR
178a40 71 33 34 77 47 6d 41 4f 74 7a 43 6a 76 70 55 66 7a 55 77 49 44 41 51 41 42 6f 30 49 77 51 44 41 q34wGmAOtzCjvpUfzUwIDAQABo0IwQDA
178a60 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 0a 41 51 48 2f 4d 41 34 47 41 31 55 64 44 77 PBgNVHRMBAf8EBTAD.AQH/MA4GA1UdDw
178a80 45 42 2f 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 6f 35 66 57 38 31 EB/wQEAwIBBjAdBgNVHQ4EFgQUo5fW81
178aa0 36 69 45 4f 47 72 52 5a 38 38 46 32 51 38 37 67 46 77 6e 4d 77 77 44 51 59 4a 4b 6f 5a 49 0a 68 6iEOGrRZ88F2Q87gFwnMwwDQYJKoZI.h
178ac0 76 63 4e 41 51 45 4c 42 51 41 44 67 67 49 42 41 42 6a 36 57 33 58 38 50 6e 72 48 58 33 66 48 79 vcNAQELBQADggIBABj6W3X8PnrHX3fHy
178ae0 74 2f 50 58 38 4d 53 78 45 42 64 31 44 4b 71 75 47 72 58 31 52 55 56 52 70 67 6a 70 65 61 51 57 t/PX8MSxEBd1DKquGrX1RUVRpgjpeaQW
178b00 78 69 5a 54 4f 4f 74 51 71 4f 43 0a 4d 54 61 49 7a 65 6e 37 78 41 53 57 53 49 73 42 78 34 30 42 xiZTOOtQqOC.MTaIzen7xASWSIsBx40B
178b20 7a 31 73 7a 42 70 5a 47 5a 6e 51 64 54 2b 33 42 74 72 6d 30 44 57 48 4d 59 33 37 58 4c 6e 65 4d z1szBpZGZnQdT+3Btrm0DWHMY37XLneM
178b40 6c 68 77 71 49 32 68 72 68 56 64 32 63 44 4d 54 2f 75 46 50 70 69 4e 33 0a 47 50 6f 61 6a 4f 69 lhwqI2hrhVd2cDMT/uFPpiN3.GPoajOi
178b60 39 5a 63 6e 50 50 2f 54 4a 46 39 7a 72 78 37 7a 41 42 43 34 74 52 69 39 70 5a 73 4d 62 6a 2f 37 9ZcnPP/TJF9zrx7zABC4tRi9pZsMbj/7
178b80 73 50 74 50 4b 6c 4c 39 32 43 69 55 4e 71 58 73 43 48 4b 6e 51 4f 31 38 4c 77 49 45 36 50 57 54 sPtPKlL92CiUNqXsCHKnQO18LwIE6PWT
178ba0 68 76 36 63 74 0a 54 72 31 4e 78 4e 67 70 78 69 49 59 30 4d 57 73 63 67 4b 43 50 36 6f 36 6f 6a hv6ct.Tr1NxNgpxiIY0MWscgKCP6o6oj
178bc0 6f 69 6c 7a 48 64 43 47 50 44 64 52 53 35 59 43 67 74 57 32 6a 67 46 71 6c 6d 67 69 4e 52 39 65 oilzHdCGPDdRS5YCgtW2jgFqlmgiNR9e
178be0 74 54 32 44 47 62 65 2b 6d 33 6e 55 76 72 69 42 62 50 0a 2b 56 30 34 69 6b 6b 77 6a 2b 33 78 36 tT2DGbe+m3nUvriBbP.+V04ikkwj+3x6
178c00 78 6e 30 64 78 6f 78 47 45 31 6e 56 47 77 76 62 32 58 35 32 7a 33 73 49 65 78 65 39 50 53 4c 79 xn0dxoxGE1nVGwvb2X52z3sIexe9PSLy
178c20 6d 42 6c 56 4e 46 78 5a 50 54 35 70 71 4f 42 4d 7a 59 7a 63 66 43 6b 65 46 39 4f 72 59 4d 68 0a mBlVNFxZPT5pqOBMzYzcfCkeF9OrYMh.
178c40 33 6a 52 4a 6a 65 68 5a 72 4a 33 79 64 6c 6f 32 38 68 50 30 72 2b 41 4a 78 32 45 71 62 50 66 67 3jRJjehZrJ3ydlo28hP0r+AJx2EqbPfg
178c60 6e 61 36 37 68 6b 6f 6f 62 79 37 75 74 48 6e 4e 6b 44 50 44 73 33 62 36 39 66 42 73 6e 51 47 51 na67hkooby7utHnNkDPDs3b69fBsnQGQ
178c80 2b 70 36 51 39 70 78 79 7a 30 66 61 0a 77 78 2f 6b 4e 53 42 54 38 6c 54 52 33 32 47 44 70 67 4c +p6Q9pxyz0fa.wx/kNSBT8lTR32GDpgL
178ca0 69 4a 54 6a 65 68 54 49 74 58 6e 4f 51 55 6c 31 43 78 4d 34 39 53 2b 48 35 47 59 51 64 31 61 4a iJTjehTItXnOQUl1CxM49S+H5GYQd1aJ
178cc0 51 7a 45 48 37 51 52 54 44 76 64 62 4a 57 71 4e 6a 5a 67 4b 41 76 51 55 36 0a 4f 30 65 63 37 41 QzEH7QRTDvdbJWqNjZgKAvQU6.O0ec7A
178ce0 41 6d 54 50 57 49 55 62 2b 6f 49 33 38 59 42 37 41 4c 37 59 73 6d 6f 57 54 54 59 55 72 72 58 4a AmTPWIUb+oI38YB7AL7YsmoWTTYUrrXJ
178d00 2f 65 73 36 39 6e 41 37 4d 66 33 57 31 64 61 57 68 70 71 31 34 36 37 48 78 70 76 4d 63 37 68 55 /es69nA7Mf3W1daWhpq1467HxpvMc7hU
178d20 36 65 46 62 6d 30 0a 46 55 2f 44 6c 58 70 59 31 38 6c 73 36 57 79 35 38 79 6c 6a 58 72 51 73 38 6eFbm0.FU/DlXpY18ls6Wy58yljXrQs8
178d40 43 30 39 37 56 70 6c 34 4b 6c 62 51 4d 4a 49 6d 59 46 74 6e 68 38 47 4b 6a 77 53 74 49 73 50 6d C097Vpl4KlbQMJImYFtnh8GKjwStIsPm
178d60 36 49 6b 38 4b 61 4e 31 6e 72 67 53 37 5a 6b 6c 6d 4f 56 0a 68 4d 4a 4b 7a 52 77 75 4a 49 63 7a 6Ik8KaN1nrgS7ZklmOV.hMJKzRwuJIcz
178d80 59 4f 58 44 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a YOXD.-----END.CERTIFICATE-----..
178da0 51 75 6f 56 61 64 69 73 20 52 6f 6f 74 20 43 41 20 32 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d QuoVadis.Root.CA.2.G3.==========
178dc0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 ===========.-----BEGIN.CERTIFICA
178de0 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 59 44 43 43 41 30 69 67 41 77 49 42 41 67 49 55 52 46 63 30 TE-----.MIIFYDCCA0igAwIBAgIURFc0
178e00 4a 46 75 42 69 5a 73 31 38 73 36 34 4b 7a 74 62 70 79 62 77 64 53 67 77 44 51 59 4a 4b 6f 5a 49 JFuBiZs18s64KztbpybwdSgwDQYJKoZI
178e20 68 76 63 4e 41 51 45 4c 42 51 41 77 53 44 45 4c 4d 41 6b 47 0a 41 31 55 45 42 68 4d 43 51 6b 30 hvcNAQELBQAwSDELMAkG.A1UEBhMCQk0
178e40 78 47 54 41 58 42 67 4e 56 42 41 6f 54 45 46 46 31 62 31 5a 68 5a 47 6c 7a 49 45 78 70 62 57 6c xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl
178e60 30 5a 57 51 78 48 6a 41 63 42 67 4e 56 42 41 4d 54 46 56 46 31 62 31 5a 68 5a 47 6c 7a 49 46 4a 0ZWQxHjAcBgNVBAMTFVF1b1ZhZGlzIFJ
178e80 76 0a 62 33 51 67 51 30 45 67 4d 69 42 48 4d 7a 41 65 46 77 30 78 4d 6a 41 78 4d 54 49 78 4f 44 v.b3QgQ0EgMiBHMzAeFw0xMjAxMTIxOD
178ea0 55 35 4d 7a 4a 61 46 77 30 30 4d 6a 41 78 4d 54 49 78 4f 44 55 35 4d 7a 4a 61 4d 45 67 78 43 7a U5MzJaFw00MjAxMTIxODU5MzJaMEgxCz
178ec0 41 4a 42 67 4e 56 42 41 59 54 41 6b 4a 4e 0a 4d 52 6b 77 46 77 59 44 56 51 51 4b 45 78 42 52 64 AJBgNVBAYTAkJN.MRkwFwYDVQQKExBRd
178ee0 57 39 57 59 57 52 70 63 79 42 4d 61 57 31 70 64 47 56 6b 4d 52 34 77 48 41 59 44 56 51 51 44 45 W9WYWRpcyBMaW1pdGVkMR4wHAYDVQQDE
178f00 78 56 52 64 57 39 57 59 57 52 70 63 79 42 53 62 32 39 30 49 45 4e 42 49 44 49 67 0a 52 7a 4d 77 xVRdW9WYWRpcyBSb290IENBIDIg.RzMw
178f20 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw
178f40 67 67 49 4b 41 6f 49 43 41 51 43 68 72 69 57 79 41 52 6a 63 56 34 67 2f 52 75 76 35 72 2b 4c 72 ggIKAoICAQChriWyARjcV4g/Ruv5r+Lr
178f60 49 33 48 69 6d 74 46 68 0a 5a 69 46 66 71 71 38 6e 55 65 56 75 47 78 62 55 4c 58 31 51 73 46 4e I3HimtFh.ZiFfqq8nUeVuGxbULX1QsFN
178f80 33 76 58 67 36 59 4f 4a 6b 41 70 74 38 68 70 76 57 47 6f 36 74 2f 78 38 56 66 39 57 56 48 68 4c 3vXg6YOJkApt8hpvWGo6t/x8Vf9WVHhL
178fa0 4c 35 68 53 45 42 4d 48 66 4e 72 4d 57 6e 34 72 6a 79 64 75 59 0a 4e 4d 37 59 4d 78 63 6f 52 76 L5hSEBMHfNrMWn4rjyduY.NM7YMxcoRv
178fc0 79 6e 79 66 44 53 74 4e 56 4e 43 58 4a 4a 2b 66 4b 48 34 36 6e 61 66 61 46 39 61 37 49 36 4a 61 ynyfDStNVNCXJJ+fKH46nafaF9a7I6Ja
178fe0 6c 74 55 6b 53 73 2b 4c 35 75 2b 39 79 6d 63 35 47 51 59 61 59 44 46 43 44 79 35 34 65 6a 69 4b ltUkSs+L5u+9ymc5GQYaYDFCDy54ejiK
179000 32 74 0a 6f 49 7a 2f 70 67 73 6c 55 69 58 6e 46 67 48 56 79 37 67 31 67 51 79 6a 4f 2f 44 68 34 2t.oIz/pgslUiXnFgHVy7g1gQyjO/Dh4
179020 66 78 61 58 63 36 41 63 57 33 34 53 61 73 2b 4f 37 71 34 31 34 41 42 2b 36 58 72 57 37 50 46 58 fxaXc6AcW34Sas+O7q414AB+6XrW7PFX
179040 6d 41 71 4d 61 43 76 4e 2b 67 67 4f 70 2b 6f 0a 4d 69 77 4d 7a 41 6b 64 30 35 36 4f 58 62 78 4d mAqMaCvN+ggOp+o.MiwMzAkd056OXbxM
179060 6d 4f 37 46 47 6d 68 37 37 46 4f 6d 36 52 51 31 6f 39 2f 4e 67 4a 38 4d 53 50 73 63 39 50 47 2f mO7FGmh77FOm6RQ1o9/NgJ8MSPsc9PG/
179080 53 72 6a 36 31 59 78 78 53 73 63 66 72 66 35 42 6d 72 4f 44 58 66 4b 45 56 75 2b 6c 0a 56 30 50 Srj61YxxSscfrf5BmrODXfKEVu+l.V0P
1790a0 4f 4b 61 32 4d 71 31 57 2f 78 50 74 62 41 64 30 6a 49 61 46 59 41 49 37 44 30 47 6f 54 37 52 50 OKa2Mq1W/xPtbAd0jIaFYAI7D0GoT7RP
1790c0 6a 45 69 75 41 33 47 66 6d 6c 62 4c 4e 48 69 4a 75 4b 76 68 42 31 50 4c 4b 46 41 65 4e 69 6c 55 jEiuA3GfmlbLNHiJuKvhB1PLKFAeNilU
1790e0 53 78 6d 6e 31 75 49 5a 6f 0a 4c 31 4e 65 73 4e 4b 71 49 63 47 59 35 6a 44 6a 5a 31 58 48 6d 32 Sxmn1uIZo.L1NesNKqIcGY5jDjZ1XHm2
179100 36 73 47 61 68 56 70 6b 55 47 30 43 4d 36 32 2b 74 6c 58 53 6f 52 45 66 41 37 54 38 70 74 39 44 6sGahVpkUG0CM62+tlXSoREfA7T8pt9D
179120 54 45 63 65 54 2f 41 46 72 32 58 4b 34 6a 59 49 56 7a 38 65 51 51 0a 73 53 57 75 31 5a 4b 37 45 TEceT/AFr2XK4jYIVz8eQQ.sSWu1ZK7E
179140 38 45 4d 34 44 6e 61 74 44 6c 58 74 61 73 31 71 6e 49 68 4f 34 4d 31 35 7a 48 66 65 69 46 75 75 8EM4DnatDlXtas1qnIhO4M15zHfeiFuu
179160 44 49 49 66 52 30 79 6b 52 56 4b 59 6e 4c 50 34 33 65 68 76 4e 55 52 47 33 59 42 5a 77 6a 67 51 DIIfR0ykRVKYnLP43ehvNURG3YBZwjgQ
179180 51 76 44 0a 36 78 56 75 2b 4b 51 5a 32 61 4b 72 72 2b 49 6e 55 6c 59 72 41 6f 6f 73 46 43 54 35 QvD.6xVu+KQZ2aKrr+InUlYrAoosFCT5
1791a0 76 30 49 43 76 79 62 49 78 6f 2f 67 62 6a 68 39 55 79 33 6c 37 5a 69 7a 6c 57 4e 6f 66 2f 6b 31 v0ICvybIxo/gbjh9Uy3l7ZizlWNof/k1
1791c0 39 4e 2b 49 78 57 41 31 6b 73 42 38 61 52 78 68 0a 6c 52 62 51 36 39 34 4c 72 7a 34 45 45 45 56 9N+IxWA1ksB8aRxh.lRbQ694Lrz4EEEV
1791e0 6c 57 46 41 34 72 30 6a 79 57 62 59 57 38 6a 77 4e 6b 41 4c 47 63 43 34 42 72 54 77 56 31 77 49 lWFA4r0jyWbYW8jwNkALGcC4BrTwV1wI
179200 44 41 51 41 42 6f 30 49 77 51 44 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 0a 41 51 DAQABo0IwQDAPBgNVHRMBAf8EBTAD.AQ
179220 48 2f 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 H/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ
179240 34 45 46 67 51 55 37 65 64 76 64 6c 71 2f 59 4f 78 4a 57 38 61 6c 64 37 74 79 46 6e 47 62 78 44 4EFgQU7edvdlq/YOxJW8ald7tyFnGbxD
179260 30 77 44 51 59 4a 4b 6f 5a 49 0a 68 76 63 4e 41 51 45 4c 42 51 41 44 67 67 49 42 41 4a 48 66 67 0wDQYJKoZI.hvcNAQELBQADggIBAJHfg
179280 44 39 44 43 58 35 78 77 76 66 72 73 34 69 50 34 56 47 79 76 44 31 31 2b 53 68 64 79 4c 79 5a 6d D9DCX5xwvfrs4iP4VGyvD11+ShdyLyZm
1792a0 33 74 64 71 75 58 4b 34 51 72 33 36 4c 4c 54 6e 39 31 6e 4d 58 36 36 0a 41 61 72 48 61 6b 45 37 3tdquXK4Qr36LLTn91nMX66.AarHakE7
1792c0 6b 4e 51 49 58 4c 4a 67 61 70 44 77 79 4d 34 44 59 76 6d 4c 37 66 74 75 4b 74 77 47 54 54 77 70 kNQIXLJgapDwyM4DYvmL7ftuKtwGTTwp
1792e0 44 34 6b 57 69 6c 68 4d 53 41 2f 6f 68 47 48 71 50 48 4b 6d 64 2b 52 43 72 6f 69 6a 51 31 68 35 D4kWilhMSA/ohGHqPHKmd+RCroijQ1h5
179300 66 71 37 4b 0a 70 56 4d 4e 71 54 31 77 76 53 41 5a 59 61 52 73 4f 50 78 44 4d 75 48 42 52 2f 2f fq7K.pVMNqT1wvSAZYaRsOPxDMuHBR//
179320 34 37 50 45 52 49 6a 4b 57 6e 4d 4c 32 57 32 6d 57 65 79 41 4d 51 30 47 61 57 2f 5a 5a 47 59 6a 47PERIjKWnML2W2mWeyAMQ0GaW/ZZGYj
179340 65 56 59 67 33 55 51 74 34 58 41 6f 65 6f 30 4c 39 0a 78 35 32 49 44 38 44 79 65 41 49 6b 56 4a eVYg3UQt4XAoeo0L9.x52ID8DyeAIkVJ
179360 4f 76 69 59 65 49 79 55 71 41 48 65 72 51 62 6a 35 68 4c 6a 61 37 4e 51 34 6e 6c 76 31 6d 4e 44 OviYeIyUqAHerQbj5hLja7NQ4nlv1mND
179380 74 68 63 6e 50 78 46 6c 78 48 42 6c 52 4a 41 48 70 59 45 72 41 4b 37 34 58 39 73 62 67 7a 0a 64 thcnPxFlxHBlRJAHpYErAK74X9sbgz.d
1793a0 57 71 54 48 42 4c 6d 59 46 35 76 48 58 2f 4a 48 79 50 4c 68 47 47 66 48 6f 4a 45 2b 56 2b 74 59 WqTHBLmYF5vHX/JHyPLhGGfHoJE+V+tY
1793c0 6c 55 6b 6d 6c 4b 59 37 56 48 6e 6f 58 36 58 4f 75 59 76 48 78 48 61 55 34 41 73 68 5a 36 72 4e lUkmlKY7VHnoX6XOuYvHxHaU4AshZ6rN
1793e0 52 44 62 49 6c 39 71 78 56 36 58 0a 55 2f 49 79 41 67 6b 77 6f 31 6a 77 44 51 48 56 63 73 61 78 RDbIl9qxV6X.U/IyAgkwo1jwDQHVcsax
179400 66 47 6c 37 77 2f 55 32 52 63 78 68 62 6c 35 4d 6c 4d 56 65 72 75 67 4f 58 6f 75 2f 39 38 33 67 fGl7w/U2Rcxhbl5MlMVerugOXou/983g
179420 37 61 45 4f 47 7a 50 75 56 42 6a 2b 44 37 37 76 66 6f 52 72 51 2b 4e 77 0a 6d 4e 74 64 64 62 49 7aEOGzPuVBj+D77vfoRrQ+Nw.mNtddbI
179440 4e 57 51 65 46 46 53 4d 35 31 76 48 66 71 53 59 50 31 6b 6a 48 73 36 59 69 39 54 4d 33 57 70 56 NWQeFFSM51vHfqSYP1kjHs6Yi9TM3WpV
179460 48 6e 33 75 36 47 42 56 76 2f 39 59 55 5a 49 4e 4a 30 67 70 6e 49 64 73 50 4e 57 4e 67 4b 43 4c Hn3u6GBVv/9YUZINJ0gpnIdsPNWNgKCL
179480 6a 73 5a 57 44 0a 7a 59 57 6d 33 53 38 50 35 32 64 53 62 72 73 76 68 58 7a 31 53 6e 50 6e 78 54 jsZWD.zYWm3S8P52dSbrsvhXz1SnPnxT
1794a0 37 41 76 53 45 53 42 54 2f 38 74 77 4e 4a 41 6c 76 49 4a 65 62 69 56 44 6a 31 65 59 65 4d 48 56 7AvSESBT/8twNJAlvIJebiVDj1eYeMHV
1794c0 4f 79 54 6f 56 37 42 6a 6a 48 4c 50 6a 34 73 48 4b 4e 0a 4a 65 56 33 55 76 51 44 48 45 69 6d 55 OyToV7BjjHLPj4sHKN.JeV3UvQDHEimU
1794e0 46 2b 49 49 44 42 75 38 6f 4a 44 71 7a 32 58 68 4f 64 54 2b 79 48 42 54 77 38 69 6d 6f 61 34 57 F+IIDBu8oJDqz2XhOdT+yHBTw8imoa4W
179500 53 72 32 52 7a 30 5a 69 43 33 6f 68 65 47 65 37 49 55 49 61 72 46 73 4e 4d 6b 64 37 45 67 72 0a Sr2Rz0ZiC3oheGe7IUIarFsNMkd7Egr.
179520 4f 33 6a 74 5a 73 53 4f 65 57 6d 44 33 6e 2b 4d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 O3jtZsSOeWmD3n+M.-----END.CERTIF
179540 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 51 75 6f 56 61 64 69 73 20 52 6f 6f 74 20 43 41 20 33 20 47 ICATE-----..QuoVadis.Root.CA.3.G
179560 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 3.=====================.-----BEG
179580 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 59 44 43 43 41 30 69 67 IN.CERTIFICATE-----.MIIFYDCCA0ig
1795a0 41 77 49 42 41 67 49 55 4c 76 57 62 41 69 69 6e 32 33 72 2f 31 61 4f 70 37 72 30 44 6f 4d 38 53 AwIBAgIULvWbAiin23r/1aOp7r0DoM8S
1795c0 61 68 30 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 77 53 44 45 4c 4d 41 6b 47 ah0wDQYJKoZIhvcNAQELBQAwSDELMAkG
1795e0 0a 41 31 55 45 42 68 4d 43 51 6b 30 78 47 54 41 58 42 67 4e 56 42 41 6f 54 45 46 46 31 62 31 5a .A1UEBhMCQk0xGTAXBgNVBAoTEFF1b1Z
179600 68 5a 47 6c 7a 49 45 78 70 62 57 6c 30 5a 57 51 78 48 6a 41 63 42 67 4e 56 42 41 4d 54 46 56 46 hZGlzIExpbWl0ZWQxHjAcBgNVBAMTFVF
179620 31 62 31 5a 68 5a 47 6c 7a 49 46 4a 76 0a 62 33 51 67 51 30 45 67 4d 79 42 48 4d 7a 41 65 46 77 1b1ZhZGlzIFJv.b3QgQ0EgMyBHMzAeFw
179640 30 78 4d 6a 41 78 4d 54 49 79 4d 44 49 32 4d 7a 4a 61 46 77 30 30 4d 6a 41 78 4d 54 49 79 4d 44 0xMjAxMTIyMDI2MzJaFw00MjAxMTIyMD
179660 49 32 4d 7a 4a 61 4d 45 67 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 4a 4e 0a 4d 52 6b 77 46 I2MzJaMEgxCzAJBgNVBAYTAkJN.MRkwF
179680 77 59 44 56 51 51 4b 45 78 42 52 64 57 39 57 59 57 52 70 63 79 42 4d 61 57 31 70 64 47 56 6b 4d wYDVQQKExBRdW9WYWRpcyBMaW1pdGVkM
1796a0 52 34 77 48 41 59 44 56 51 51 44 45 78 56 52 64 57 39 57 59 57 52 70 63 79 42 53 62 32 39 30 49 R4wHAYDVQQDExVRdW9WYWRpcyBSb290I
1796c0 45 4e 42 49 44 4d 67 0a 52 7a 4d 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 ENBIDMg.RzMwggIiMA0GCSqGSIb3DQEB
1796e0 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 7a 79 77 34 51 5a 34 37 71 AQUAA4ICDwAwggIKAoICAQCzyw4QZ47q
179700 46 4a 65 6e 4d 69 6f 4b 56 6a 5a 2f 61 45 7a 48 73 32 38 36 0a 49 78 53 52 2f 78 6c 2f 70 63 71 FJenMioKVjZ/aEzHs286.IxSR/xl/pcq
179720 73 37 72 4e 32 6e 58 72 70 69 78 75 72 61 7a 48 62 2b 67 74 54 54 4b 2f 46 70 52 70 35 50 49 70 s7rN2nXrpixurazHb+gtTTK/FpRp5PIp
179740 4d 2f 36 7a 66 4a 64 35 4f 32 59 49 79 43 30 54 65 79 74 75 4d 72 4b 4e 75 46 6f 4d 37 70 6d 52 M/6zfJd5O2YIyC0TeytuMrKNuFoM7pmR
179760 4c 0a 4d 6f 6e 37 46 68 59 34 66 75 74 44 34 74 4e 30 53 73 4a 69 43 6e 4d 4b 33 55 6d 7a 56 39 L.Mon7FhY4futD4tN0SsJiCnMK3UmzV9
179780 4b 77 43 6f 57 64 63 54 7a 65 6f 38 76 41 4d 76 4d 42 4f 53 42 44 47 7a 58 52 55 37 4f 78 37 73 KwCoWdcTzeo8vAMvMBOSBDGzXRU7Ox7s
1797a0 57 54 61 59 49 2b 46 72 55 6f 52 71 48 65 0a 36 6f 6b 4a 37 55 4f 34 42 55 61 4b 68 76 56 5a 52 WTaYI+FrUoRqHe.6okJ7UO4BUaKhvVZR
1797c0 37 34 62 62 77 45 68 45 4c 6e 39 71 64 49 6f 79 68 41 35 43 63 6f 54 4e 73 2b 63 72 61 31 41 64 74bbwEhELn9qdIoyhA5CcoTNs+cra1Ad
1797e0 48 6b 72 41 6a 38 30 2f 2f 6f 67 61 58 33 54 37 6d 48 31 75 72 50 6e 4d 4e 41 33 0a 49 34 5a 79 HkrAj80//ogaX3T7mH1urPnMNA3.I4Zy
179800 59 55 55 70 53 46 6c 6f 62 33 65 6d 4c 6f 47 2b 42 30 31 76 72 38 37 45 52 52 4f 52 46 48 41 47 YUUpSFlob3emLoG+B01vr87ERRORFHAG
179820 6a 78 2b 66 2b 49 64 70 73 51 37 76 77 34 6b 5a 36 2b 6f 63 59 66 78 36 62 49 72 63 31 67 4d 4c jx+f+IdpsQ7vw4kZ6+ocYfx6bIrc1gML
179840 6e 69 61 36 45 74 33 55 0a 56 44 6d 72 4a 71 4d 7a 36 6e 57 42 32 69 33 4e 44 30 2f 6b 41 39 48 nia6Et3U.VDmrJqMz6nWB2i3ND0/kA9H
179860 76 46 5a 63 62 61 35 44 46 41 70 43 54 5a 67 49 68 73 55 66 65 69 35 70 4b 67 4c 6c 56 6a 37 57 vFZcba5DFApCTZgIhsUfei5pKgLlVj7W
179880 69 4c 38 44 57 4d 32 66 61 66 73 53 6e 74 41 52 45 36 30 66 37 0a 35 6c 69 35 39 77 7a 77 65 79 iL8DWM2fafsSntARE60f7.5li59wzwey
1798a0 75 78 77 48 41 70 77 30 42 69 4c 54 74 49 61 64 77 6a 50 45 6a 72 65 77 6c 35 71 57 33 61 71 44 uxwHApw0BiLTtIadwjPEjrewl5qW3aqD
1798c0 43 59 7a 34 42 79 41 34 69 6d 57 30 61 75 63 6e 6c 38 43 41 4d 68 5a 61 36 33 34 52 79 6c 73 53 CYz4ByA4imW0aucnl8CAMhZa634RylsS
1798e0 71 69 0a 4d 64 35 6d 42 50 66 41 64 4f 68 78 33 76 38 39 57 63 79 57 4a 68 4b 4c 68 5a 56 58 47 qi.Md5mBPfAdOhx3v89WcyWJhKLhZVXG
179900 71 74 72 64 51 74 45 50 52 45 6f 50 48 74 68 74 2b 4b 50 5a 30 2f 6c 37 44 78 4d 59 49 42 70 56 qtrdQtEPREoPHtht+KPZ0/l7DxMYIBpV
179920 7a 67 65 41 56 75 4e 56 65 6a 48 33 38 44 4d 0a 64 79 4d 30 53 58 56 38 39 70 67 52 36 79 33 65 zgeAVuNVejH38DM.dyM0SXV89pgR6y3e
179940 37 55 45 75 46 41 55 43 66 2b 44 2b 49 4f 73 31 35 78 47 73 49 73 35 58 50 64 37 4a 4d 47 30 51 7UEuFAUCf+D+IOs15xGsIs5XPd7JMG0Q
179960 41 34 58 4e 38 66 2b 4d 46 72 58 42 73 6a 36 49 62 47 42 2f 6b 45 2b 56 39 2f 59 74 0a 72 51 45 A4XN8f+MFrXBsj6IbGB/kE+V9/Yt.rQE
179980 35 42 77 54 36 64 59 42 39 76 30 6c 51 37 65 2f 4a 78 48 77 63 36 34 42 2b 32 37 62 51 33 52 50 5BwT6dYB9v0lQ7e/JxHwc64B+27bQ3RP
1799a0 2b 79 64 4f 63 31 37 4b 58 71 51 49 44 41 51 41 42 6f 30 49 77 51 44 41 50 42 67 4e 56 48 52 4d +ydOc17KXqQIDAQABo0IwQDAPBgNVHRM
1799c0 42 41 66 38 45 42 54 41 44 0a 41 51 48 2f 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 BAf8EBTAD.AQH/MA4GA1UdDwEB/wQEAw
1799e0 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 78 68 66 51 76 4b 6a 71 41 6b 50 79 47 77 IBBjAdBgNVHQ4EFgQUxhfQvKjqAkPyGw
179a00 61 5a 58 53 75 51 49 4c 6e 58 6e 4f 51 77 44 51 59 4a 4b 6f 5a 49 0a 68 76 63 4e 41 51 45 4c 42 aZXSuQILnXnOQwDQYJKoZI.hvcNAQELB
179a20 51 41 44 67 67 49 42 41 44 52 68 32 56 61 31 45 6f 64 56 54 64 32 6a 4e 54 46 47 75 36 51 48 63 QADggIBADRh2Va1EodVTd2jNTFGu6QHc
179a40 72 78 66 59 57 4c 6f 70 66 73 4c 4e 37 45 38 74 72 50 36 4b 5a 31 2f 41 76 57 6b 79 61 69 54 74 rxfYWLopfsLN7E8trP6KZ1/AvWkyaiTt
179a60 33 70 78 0a 4b 47 6d 50 63 2b 46 53 6b 4e 72 56 76 6a 72 6c 74 33 5a 71 56 6f 41 68 33 31 33 6d 3px.KGmPc+FSkNrVvjrlt3ZqVoAh313m
179a80 36 54 71 65 35 54 37 32 6f 6d 6e 48 4b 67 71 77 47 45 66 63 49 48 42 39 55 71 4d 2b 57 58 7a 42 6Tqe5T72omnHKgqwGEfcIHB9UqM+WXzB
179aa0 75 73 6e 49 46 55 42 68 79 6e 4c 57 63 4b 7a 53 0a 74 2f 41 63 35 49 59 70 38 4d 37 76 61 47 50 usnIFUBhynLWcKzS.t/Ac5IYp8M7vaGP
179ac0 51 74 53 43 4b 46 57 47 61 66 6f 61 59 74 4d 6e 43 64 76 76 4d 75 6a 41 57 7a 4b 4e 68 78 6e 51 QtSCKFWGafoaYtMnCdvvMujAWzKNhxnQ
179ae0 54 35 57 76 76 6f 78 58 71 41 2f 34 54 69 32 54 6b 30 38 48 53 36 49 54 37 53 64 45 51 0a 54 58 T5WvvoxXqA/4Ti2Tk08HS6IT7SdEQ.TX
179b00 6c 6d 36 36 72 39 39 49 30 78 48 6e 41 55 72 64 7a 65 5a 78 4e 4d 67 52 56 68 76 4c 66 5a 6b 58 lm66r99I0xHnAUrdzeZxNMgRVhvLfZkX
179b20 64 78 47 59 46 67 75 2f 42 59 70 62 57 63 43 2f 65 50 49 6c 55 6e 77 45 73 42 62 54 75 5a 44 64 dxGYFgu/BYpbWcC/ePIlUnwEsBbTuZDd
179b40 51 64 6d 32 4e 6e 4c 39 44 75 0a 44 63 70 6d 76 4a 52 50 70 71 33 74 2f 4f 35 6a 72 46 63 2f 5a Qdm2NnL9Du.DcpmvJRPpq3t/O5jrFc/Z
179b60 53 58 50 73 6f 61 50 30 41 6a 2f 75 48 59 55 62 74 37 6c 4a 2b 79 72 65 4c 56 54 75 62 59 2f 36 SXPsoaP0Aj/uHYUbt7lJ+yreLVTubY/6
179b80 43 44 35 30 71 69 2b 59 55 62 4b 68 34 79 45 38 2f 6e 78 6f 47 69 62 0a 49 68 36 42 4a 70 73 51 CD50qi+YUbKh4yE8/nxoGib.Ih6BJpsQ
179ba0 42 4a 46 78 77 41 59 66 33 4b 44 54 75 56 61 6e 34 35 67 74 66 34 4f 64 33 34 77 72 6e 44 4b 4f BJFxwAYf3KDTuVan45gtf4Od34wrnDKO
179bc0 4d 70 54 77 41 54 77 69 4b 70 39 44 77 69 37 44 6d 44 6b 48 4f 48 76 38 58 67 42 43 48 2f 4d 79 MpTwATwiKp9Dwi7DmDkHOHv8XgBCH/My
179be0 4a 6e 6d 44 0a 68 50 62 6c 38 4d 46 52 45 73 41 4c 48 67 51 6a 44 46 53 6c 54 43 39 4a 78 55 72 JnmD.hPbl8MFREsALHgQjDFSlTC9JxUr
179c00 52 74 6d 35 67 44 57 76 38 61 34 75 46 4a 47 53 33 69 51 36 72 4a 55 64 62 50 4d 39 2b 53 62 33 Rtm5gDWv8a4uFJGS3iQ6rJUdbPM9+Sb3
179c20 48 36 51 72 47 32 76 64 2b 44 68 63 49 30 30 69 58 0a 30 48 47 53 38 41 38 35 50 6a 52 71 48 48 H6QrG2vd+DhcI00iX.0HGS8A85PjRqHH
179c40 33 59 38 69 4b 75 75 32 6e 30 4d 37 53 6d 53 46 58 52 44 77 34 6d 36 4f 79 32 43 79 32 6e 68 54 3Y8iKuu2n0M7SmSFXRDw4m6Oy2Cy2nhT
179c60 58 4e 2f 56 6e 49 6e 39 48 4e 50 6c 6f 70 4e 4c 6b 39 68 4d 36 78 5a 64 52 5a 6b 5a 46 57 0a 64 XN/VnIn9HNPlopNLk9hM6xZdRZkZFW.d
179c80 53 48 42 64 35 37 35 65 75 46 67 6e 64 4f 74 42 42 6a 30 66 4f 74 65 6b 34 39 54 53 69 49 70 2b SHBd575euFgndOtBBj0fOtek49TSiIp+
179ca0 45 67 72 50 6b 32 47 72 46 74 2f 79 77 61 5a 57 57 44 59 57 47 57 56 6a 55 54 52 39 33 39 2b 4a EgrPk2GrFt/ywaZWWDYWGWVjUTR939+J
179cc0 33 39 39 72 6f 44 31 42 30 79 32 0a 50 70 78 78 56 4a 6b 45 53 2f 31 59 2b 5a 6a 30 0a 2d 2d 2d 399roD1B0y2.PpxxVJkES/1Y+Zj0.---
179ce0 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 44 69 67 69 43 65 72 74 --END.CERTIFICATE-----..DigiCert
179d00 20 41 73 73 75 72 65 64 20 49 44 20 52 6f 6f 74 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .Assured.ID.Root.G2.============
179d20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 ===============.-----BEGIN.CERTI
179d40 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 44 6c 6a 43 43 41 6e 36 67 41 77 49 42 41 67 49 51 FICATE-----.MIIDljCCAn6gAwIBAgIQ
179d60 43 35 4d 63 4f 74 59 35 5a 2b 70 6e 49 37 2f 44 72 35 72 30 53 7a 41 4e 42 67 6b 71 68 6b 69 47 C5McOtY5Z+pnI7/Dr5r0SzANBgkqhkiG
179d80 39 77 30 42 41 51 73 46 41 44 42 6c 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 56 55 7a 45 9w0BAQsFADBlMQswCQYDVQQG.EwJVUzE
179da0 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 6e 51 67 53 57 35 6a 4d 52 6b VMBMGA1UEChMMRGlnaUNlcnQgSW5jMRk
179dc0 77 46 77 59 44 56 51 51 4c 45 78 42 33 64 33 63 75 5a 47 6c 6e 61 57 4e 6c 63 6e 51 75 59 32 39 wFwYDVQQLExB3d3cuZGlnaWNlcnQuY29
179de0 74 4d 53 51 77 0a 49 67 59 44 56 51 51 44 45 78 74 45 61 57 64 70 51 32 56 79 64 43 42 42 63 33 tMSQw.IgYDVQQDExtEaWdpQ2VydCBBc3
179e00 4e 31 63 6d 56 6b 49 45 6c 45 49 46 4a 76 62 33 51 67 52 7a 49 77 48 68 63 4e 4d 54 4d 77 4f 44 N1cmVkIElEIFJvb3QgRzIwHhcNMTMwOD
179e20 41 78 4d 54 49 77 4d 44 41 77 57 68 63 4e 4d 7a 67 77 0a 4d 54 45 31 4d 54 49 77 4d 44 41 77 57 AxMTIwMDAwWhcNMzgw.MTE1MTIwMDAwW
179e40 6a 42 6c 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 jBlMQswCQYDVQQGEwJVUzEVMBMGA1UEC
179e60 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 6e 51 67 53 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 0a hMMRGlnaUNlcnQgSW5jMRkwFwYDVQQL.
179e80 45 78 42 33 64 33 63 75 5a 47 6c 6e 61 57 4e 6c 63 6e 51 75 59 32 39 74 4d 53 51 77 49 67 59 44 ExB3d3cuZGlnaWNlcnQuY29tMSQwIgYD
179ea0 56 51 51 44 45 78 74 45 61 57 64 70 51 32 56 79 64 43 42 42 63 33 4e 31 63 6d 56 6b 49 45 6c 45 VQQDExtEaWdpQ2VydCBBc3N1cmVkIElE
179ec0 49 46 4a 76 62 33 51 67 52 7a 49 77 0a 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 IFJvb3QgRzIw.ggEiMA0GCSqGSIb3DQE
179ee0 42 41 51 55 41 41 34 49 42 44 77 41 77 67 67 45 4b 41 6f 49 42 41 51 44 5a 35 79 67 76 55 6a 38 BAQUAA4IBDwAwggEKAoIBAQDZ5ygvUj8
179f00 32 63 6b 6d 49 6b 7a 54 7a 2b 47 6f 65 4d 56 53 41 6e 36 31 55 51 62 56 48 0a 33 35 61 6f 31 4b 2ckmIkzTz+GoeMVSAn61UQbVH.35ao1K
179f20 2b 41 4c 62 6b 4b 7a 33 58 39 69 61 56 39 4a 50 72 6a 49 67 77 72 76 4a 55 58 43 7a 4f 2f 47 55 +ALbkKz3X9iaV9JPrjIgwrvJUXCzO/GU
179f40 31 42 42 70 41 41 76 51 78 4e 45 50 34 48 74 65 63 63 62 69 4a 56 4d 57 57 58 76 64 4d 58 30 68 1BBpAAvQxNEP4HteccbiJVMWWXvdMX0h
179f60 35 69 38 39 76 71 0a 62 46 43 4d 50 34 51 4d 6c 73 2b 33 79 77 50 67 79 6d 32 68 46 45 77 62 69 5i89vq.bFCMP4QMls+3ywPgym2hFEwbi
179f80 64 33 74 41 4c 42 53 66 4b 2b 52 62 4c 45 34 45 39 48 70 45 67 6a 41 41 4c 41 63 4b 78 48 61 64 d3tALBSfK+RbLE4E9HpEgjAALAcKxHad
179fa0 33 41 32 6d 36 37 4f 65 59 66 63 67 6e 44 6d 43 58 52 77 0a 56 57 6d 76 6f 32 69 66 76 39 32 32 3A2m67OeYfcgnDmCXRw.VWmvo2ifv922
179fc0 65 62 50 79 6e 58 41 70 56 66 53 72 2f 35 56 68 38 38 6c 41 62 78 33 52 76 70 4f 37 30 34 67 71 ebPynXApVfSr/5Vh88lAbx3RvpO704gq
179fe0 75 35 32 2f 63 6c 70 57 63 54 73 2f 31 50 50 52 43 76 34 6f 37 36 50 75 32 5a 6d 76 41 39 4f 50 u52/clpWcTs/1PPRCv4o76Pu2ZmvA9OP
17a000 0a 59 4c 66 79 6b 71 47 78 76 59 6d 4a 48 7a 44 4e 77 36 59 75 59 6a 4f 75 46 67 4a 33 52 46 72 .YLfykqGxvYmJHzDNw6YuYjOuFgJ3RFr
17a020 6e 67 51 6f 38 70 30 51 75 65 62 67 2f 42 4c 78 63 6f 49 66 68 47 36 39 52 6a 73 33 73 4c 50 72 ngQo8p0Quebg/BLxcoIfhG69Rjs3sLPr
17a040 34 2f 6d 33 77 4f 6e 79 71 69 2b 52 6e 0a 6c 54 47 4e 41 67 4d 42 41 41 47 6a 51 6a 42 41 4d 41 4/m3wOnyqi+Rn.lTGNAgMBAAGjQjBAMA
17a060 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 67 59 44 56 52 30 50 41 51 8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQ
17a080 48 2f 42 41 51 44 41 67 47 47 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 54 4f 0a 77 30 71 35 6d H/BAQDAgGGMB0GA1UdDgQWBBTO.w0q5m
17a0a0 56 58 79 75 4e 74 67 76 36 6c 2b 76 56 61 31 6c 7a 61 6e 31 6a 41 4e 42 67 6b 71 68 6b 69 47 39 VXyuNtgv6l+vVa1lzan1jANBgkqhkiG9
17a0c0 77 30 42 41 51 73 46 41 41 4f 43 41 51 45 41 79 71 56 56 6a 4f 50 49 51 57 35 70 4a 36 64 31 45 w0BAQsFAAOCAQEAyqVVjOPIQW5pJ6d1E
17a0e0 65 38 38 68 6a 5a 76 0a 30 70 33 47 65 44 67 64 61 5a 61 69 6b 6d 6b 75 4f 47 79 62 66 51 54 55 e88hjZv.0p3GeDgdaZaikmkuOGybfQTU
17a100 69 61 57 78 4d 54 65 4b 79 53 48 4d 71 32 7a 4e 69 78 79 61 31 72 39 49 30 6a 4a 6d 77 59 72 41 iaWxMTeKySHMq2zNixya1r9I0jJmwYrA
17a120 38 79 38 36 37 38 44 6a 31 4a 47 47 30 56 44 6a 41 39 74 7a 0a 64 32 39 4b 4f 56 50 74 33 69 62 8y8678Dj1JGG0VDjA9tz.d29KOVPt3ib
17a140 48 74 58 32 76 4b 30 4c 52 64 57 4c 6a 53 69 73 43 78 31 42 4c 34 47 6e 69 6c 6d 77 4f 52 47 59 HtX2vK0LRdWLjSisCx1BL4GnilmwORGY
17a160 51 52 49 2b 74 42 65 76 34 65 61 79 6d 47 2b 67 33 4e 4a 31 54 79 57 47 71 6f 6c 4b 76 53 6e 41 QRI+tBev4eaymG+g3NJ1TyWGqolKvSnA
17a180 57 0a 68 73 49 36 79 4c 45 54 63 44 62 59 7a 2b 37 30 43 6a 54 56 57 30 7a 39 42 35 79 69 75 74 W.hsI6yLETcDbYz+70CjTVW0z9B5yiut
17a1a0 6b 42 63 6c 7a 7a 54 63 48 64 44 72 45 63 44 63 52 6a 76 71 33 30 46 50 75 4a 37 4b 4a 42 44 6b kBclzzTcHdDrEcDcRjvq30FPuJ7KJBDk
17a1c0 7a 4d 79 46 64 41 30 47 34 44 71 73 30 4d 0a 6a 6f 6d 5a 6d 57 7a 77 50 44 43 76 4f 4e 39 76 76 zMyFdA0G4Dqs0M.jomZmWzwPDCvON9vv
17a1e0 4b 4f 2b 4b 53 41 6e 71 33 54 2f 45 79 4a 34 33 70 64 53 56 52 36 44 74 56 51 67 41 2b 36 75 77 KO+KSAnq3T/EyJ43pdSVR6DtVQgA+6uw
17a200 45 39 57 33 6a 66 4d 77 33 2b 71 42 43 65 37 30 33 65 34 59 74 73 58 66 4a 77 6f 0a 49 68 4e 7a E9W3jfMw3+qBCe703e4YtsXfJwo.IhNz
17a220 62 4d 38 6d 39 59 6f 70 35 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 bM8m9Yop5w==.-----END.CERTIFICAT
17a240 45 2d 2d 2d 2d 2d 0a 0a 44 69 67 69 43 65 72 74 20 41 73 73 75 72 65 64 20 49 44 20 52 6f 6f 74 E-----..DigiCert.Assured.ID.Root
17a260 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a .G3.===========================.
17a280 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 43 -----BEGIN.CERTIFICATE-----.MIIC
17a2a0 52 6a 43 43 41 63 32 67 41 77 49 42 41 67 49 51 43 36 46 61 2b 68 33 66 6f 4c 56 4a 52 4b 2f 4e RjCCAc2gAwIBAgIQC6Fa+h3foLVJRK/N
17a2c0 4a 4b 42 73 37 44 41 4b 42 67 67 71 68 6b 6a 4f 50 51 51 44 41 7a 42 6c 4d 51 73 77 43 51 59 44 JKBs7DAKBggqhkjOPQQDAzBlMQswCQYD
17a2e0 56 51 51 47 45 77 4a 56 0a 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 47 6c 6e 61 55 4e VQQGEwJV.UzEVMBMGA1UEChMMRGlnaUN
17a300 6c 63 6e 51 67 53 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 45 78 42 33 64 33 63 75 5a 47 6c lcnQgSW5jMRkwFwYDVQQLExB3d3cuZGl
17a320 6e 61 57 4e 6c 63 6e 51 75 59 32 39 74 4d 53 51 77 49 67 59 44 0a 56 51 51 44 45 78 74 45 61 57 naWNlcnQuY29tMSQwIgYD.VQQDExtEaW
17a340 64 70 51 32 56 79 64 43 42 42 63 33 4e 31 63 6d 56 6b 49 45 6c 45 49 46 4a 76 62 33 51 67 52 7a dpQ2VydCBBc3N1cmVkIElEIFJvb3QgRz
17a360 4d 77 48 68 63 4e 4d 54 4d 77 4f 44 41 78 4d 54 49 77 4d 44 41 77 57 68 63 4e 4d 7a 67 77 4d 54 MwHhcNMTMwODAxMTIwMDAwWhcNMzgwMT
17a380 45 31 0a 4d 54 49 77 4d 44 41 77 57 6a 42 6c 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 E1.MTIwMDAwWjBlMQswCQYDVQQGEwJVU
17a3a0 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 6e 51 67 53 57 35 6a 4d zEVMBMGA1UEChMMRGlnaUNlcnQgSW5jM
17a3c0 52 6b 77 46 77 59 44 56 51 51 4c 45 78 42 33 0a 64 33 63 75 5a 47 6c 6e 61 57 4e 6c 63 6e 51 75 RkwFwYDVQQLExB3.d3cuZGlnaWNlcnQu
17a3e0 59 32 39 74 4d 53 51 77 49 67 59 44 56 51 51 44 45 78 74 45 61 57 64 70 51 32 56 79 64 43 42 42 Y29tMSQwIgYDVQQDExtEaWdpQ2VydCBB
17a400 63 33 4e 31 63 6d 56 6b 49 45 6c 45 49 46 4a 76 62 33 51 67 52 7a 4d 77 64 6a 41 51 0a 42 67 63 c3N1cmVkIElEIFJvb3QgRzMwdjAQ.Bgc
17a420 71 68 6b 6a 4f 50 51 49 42 42 67 55 72 67 51 51 41 49 67 4e 69 41 41 51 5a 35 37 79 73 52 47 58 qhkjOPQIBBgUrgQQAIgNiAAQZ57ysRGX
17a440 74 7a 62 67 2f 57 50 75 4e 73 56 65 70 52 43 30 46 46 66 4c 76 43 2f 38 51 64 4a 2b 31 59 6c 4a tzbg/WPuNsVepRC0FFfLvC/8QdJ+1YlJ
17a460 66 5a 6e 34 66 35 64 77 62 0a 52 58 6b 4c 7a 4d 5a 54 43 70 32 4e 58 51 4c 5a 71 56 6e 65 41 6c fZn4f5dwb.RXkLzMZTCp2NXQLZqVneAl
17a480 72 32 6c 53 6f 4f 6a 54 68 4b 69 6b 6e 47 76 4d 59 44 4f 41 64 66 56 64 70 2b 43 57 37 69 66 31 r2lSoOjThKiknGvMYDOAdfVdp+CW7if1
17a4a0 37 51 52 53 41 50 57 58 59 51 31 71 41 6b 38 43 33 65 4e 76 4a 73 0a 4b 54 6d 6a 51 6a 42 41 4d 7QRSAPWXYQ1qAk8C3eNvJs.KTmjQjBAM
17a4c0 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 67 59 44 56 52 30 50 41 A8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PA
17a4e0 51 48 2f 42 41 51 44 41 67 47 47 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 54 4c 30 4c 32 70 34 QH/BAQDAgGGMB0GA1UdDgQWBBTL0L2p4
17a500 5a 67 46 0a 55 61 46 4e 4e 36 4b 44 65 63 36 4e 48 53 72 6b 68 44 41 4b 42 67 67 71 68 6b 6a 4f ZgF.UaFNN6KDec6NHSrkhDAKBggqhkjO
17a520 50 51 51 44 41 77 4e 6e 41 44 42 6b 41 6a 41 6c 70 49 46 46 41 6d 73 53 53 33 56 30 54 38 67 6a PQQDAwNnADBkAjAlpIFFAmsSS3V0T8gj
17a540 34 33 44 79 64 58 4c 65 66 49 6e 77 7a 35 46 79 0a 59 5a 35 65 45 4a 4a 5a 56 72 6d 44 78 78 44 43DydXLefInwz5Fy.YZ5eEJJZVrmDxxD
17a560 6e 4f 4f 6c 59 4a 6a 5a 39 31 65 51 30 68 6a 6b 43 4d 48 77 32 55 2f 41 77 35 57 4a 6a 4f 70 6e nOOlYJjZ91eQ0hjkCMHw2U/Aw5WJjOpn
17a580 69 74 71 4d 37 6d 7a 54 36 48 74 6f 51 6b 6e 46 65 6b 52 4f 6e 33 61 52 75 6b 73 77 79 0a 31 76 itqM7mzT6HtoQknFekROn3aRukswy.1v
17a5a0 55 68 5a 73 63 76 36 70 5a 6a 61 6d 56 46 6b 70 55 42 74 41 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 UhZscv6pZjamVFkpUBtA==.-----END.
17a5c0 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 44 69 67 69 43 65 72 74 20 47 6c 6f 62 61 CERTIFICATE-----..DigiCert.Globa
17a5e0 6c 20 52 6f 6f 74 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d l.Root.G2.======================
17a600 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 =.-----BEGIN.CERTIFICATE-----.MI
17a620 49 44 6a 6a 43 43 41 6e 61 67 41 77 49 42 41 67 49 51 41 7a 72 78 35 71 63 52 71 61 43 37 4b 47 IDjjCCAnagAwIBAgIQAzrx5qcRqaC7KG
17a640 53 78 48 51 6e 36 35 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 68 4d 51 SxHQn65TANBgkqhkiG9w0BAQsFADBhMQ
17a660 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 56 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 swCQYDVQQG.EwJVUzEVMBMGA1UEChMMR
17a680 47 6c 6e 61 55 4e 6c 63 6e 51 67 53 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 45 78 42 33 64 GlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d
17a6a0 33 63 75 5a 47 6c 6e 61 57 4e 6c 63 6e 51 75 59 32 39 74 4d 53 41 77 0a 48 67 59 44 56 51 51 44 3cuZGlnaWNlcnQuY29tMSAw.HgYDVQQD
17a6c0 45 78 64 45 61 57 64 70 51 32 56 79 64 43 42 48 62 47 39 69 59 57 77 67 55 6d 39 76 64 43 42 48 ExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBH
17a6e0 4d 6a 41 65 46 77 30 78 4d 7a 41 34 4d 44 45 78 4d 6a 41 77 4d 44 42 61 46 77 30 7a 4f 44 41 78 MjAeFw0xMzA4MDExMjAwMDBaFw0zODAx
17a700 4d 54 55 78 0a 4d 6a 41 77 4d 44 42 61 4d 47 45 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 56 MTUx.MjAwMDBaMGExCzAJBgNVBAYTAlV
17a720 54 4d 52 55 77 45 77 59 44 56 51 51 4b 45 77 78 45 61 57 64 70 51 32 56 79 64 43 42 4a 62 6d 4d TMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmM
17a740 78 47 54 41 58 42 67 4e 56 42 41 73 54 45 48 64 33 0a 64 79 35 6b 61 57 64 70 59 32 56 79 64 43 xGTAXBgNVBAsTEHd3.dy5kaWdpY2VydC
17a760 35 6a 62 32 30 78 49 44 41 65 42 67 4e 56 42 41 4d 54 46 30 52 70 5a 32 6c 44 5a 58 4a 30 49 45 5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IE
17a780 64 73 62 32 4a 68 62 43 42 53 62 32 39 30 49 45 63 79 4d 49 49 42 49 6a 41 4e 42 67 6b 71 0a 68 dsb2JhbCBSb290IEcyMIIBIjANBgkq.h
17a7a0 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41 75 kiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu
17a7c0 7a 66 4e 4e 4e 78 37 61 38 6d 79 61 4a 43 74 53 6e 58 2f 52 72 6f 68 43 67 69 4e 39 52 6c 55 79 zfNNNx7a8myaJCtSnX/RrohCgiN9RlUy
17a7e0 66 75 49 32 2f 4f 75 38 6a 71 4a 0a 6b 54 78 36 35 71 73 47 47 6d 76 50 72 43 33 6f 58 67 6b 6b fuI2/Ou8jqJ.kTx65qsGGmvPrC3oXgkk
17a800 52 4c 70 69 6d 6e 37 57 6f 36 68 2b 34 46 52 31 49 41 57 73 55 4c 65 63 59 78 70 73 4d 4e 7a 61 RLpimn7Wo6h+4FR1IAWsULecYxpsMNza
17a820 48 78 6d 78 31 78 37 65 2f 64 66 67 79 35 53 44 4e 36 37 73 48 30 4e 4f 0a 33 58 73 73 30 72 30 Hxmx1x7e/dfgy5SDN67sH0NO.3Xss0r0
17a840 75 70 53 2f 6b 71 62 69 74 4f 74 53 5a 70 4c 59 6c 36 5a 74 72 41 47 43 53 59 50 39 50 49 55 6b upS/kqbitOtSZpLYl6ZtrAGCSYP9PIUk
17a860 59 39 32 65 51 71 32 45 47 6e 49 2f 79 75 75 6d 30 36 5a 49 79 61 37 58 7a 56 2b 68 64 47 38 32 Y92eQq2EGnI/yuum06ZIya7XzV+hdG82
17a880 4d 48 61 75 56 0a 42 4a 56 4a 38 7a 55 74 6c 75 4e 4a 62 64 31 33 34 2f 74 4a 53 37 53 73 56 51 MHauV.BJVJ8zUtluNJbd134/tJS7SsVQ
17a8a0 65 70 6a 35 57 7a 74 43 4f 37 54 47 31 46 38 50 61 70 73 70 55 77 74 50 31 4d 56 59 77 6e 53 6c epj5WztCO7TG1F8PapspUwtP1MVYwnSl
17a8c0 63 55 66 49 4b 64 7a 58 4f 53 30 78 5a 4b 42 67 79 4d 0a 55 4e 47 50 48 67 6d 2b 46 36 48 6d 49 cUfIKdzXOS0xZKBgyM.UNGPHgm+F6HmI
17a8e0 63 72 39 67 2b 55 51 76 49 4f 6c 43 73 52 6e 4b 50 5a 7a 46 42 51 39 52 6e 62 44 68 78 53 4a 49 cr9g+UQvIOlCsRnKPZzFBQ9RnbDhxSJI
17a900 54 52 4e 72 77 39 46 44 4b 5a 4a 6f 62 71 37 6e 4d 57 78 4d 34 4d 70 68 51 49 44 41 51 41 42 0a TRNrw9FDKZJobq7nMWxM4MphQIDAQAB.
17a920 6f 30 49 77 51 44 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 34 47 o0IwQDAPBgNVHRMBAf8EBTADAQH/MA4G
17a940 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 68 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 A1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQU
17a960 54 69 4a 55 49 42 69 56 35 75 4e 75 0a 35 67 2f 36 2b 72 6b 53 37 51 59 58 6a 7a 6b 77 44 51 59 TiJUIBiV5uNu.5g/6+rkS7QYXjzkwDQY
17a980 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 44 67 67 45 42 41 47 42 6e 4b 4a 52 76 44 6b 68 JKoZIhvcNAQELBQADggEBAGBnKJRvDkh
17a9a0 6a 36 7a 48 64 36 6d 63 59 31 59 6c 39 50 4d 57 4c 53 6e 2f 70 76 74 73 72 0a 46 39 2b 77 58 33 j6zHd6mcY1Yl9PMWLSn/pvtsr.F9+wX3
17a9c0 4e 33 4b 6a 49 54 4f 59 46 6e 51 6f 51 6a 38 6b 56 6e 4e 65 79 49 76 2f 69 50 73 47 45 4d 4e 4b N3KjITOYFnQoQj8kVnNeyIv/iPsGEMNK
17a9e0 53 75 49 45 79 45 78 74 76 34 4e 65 46 32 32 64 2b 6d 51 72 76 48 52 41 69 47 66 7a 5a 30 4a 46 SuIEyExtv4NeF22d+mQrvHRAiGfzZ0JF
17aa00 72 61 62 41 30 55 0a 57 54 57 39 38 6b 6e 64 74 68 2f 4a 73 77 31 48 4b 6a 32 5a 4c 37 74 63 75 rabA0U.WTW98kndth/Jsw1HKj2ZL7tcu
17aa20 37 58 55 49 4f 47 5a 58 31 4e 47 46 64 74 6f 6d 2f 44 7a 4d 4e 55 2b 4d 65 4b 4e 68 4a 37 6a 69 7XUIOGZX1NGFdtom/DzMNU+MeKNhJ7ji
17aa40 74 72 61 6c 6a 34 31 45 36 56 66 38 50 6c 77 55 48 42 48 0a 51 52 46 58 47 55 37 41 6a 36 34 47 tralj41E6Vf8PlwUHBH.QRFXGU7Aj64G
17aa60 78 4a 55 54 46 79 38 62 4a 5a 39 31 38 72 47 4f 6d 61 46 76 45 37 46 42 63 66 36 49 4b 73 68 50 xJUTFy8bJZ918rGOmaFvE7FBcf6IKshP
17aa80 45 43 42 56 31 2f 4d 55 52 65 58 67 52 50 54 71 68 35 55 79 6b 77 37 2b 55 30 62 36 4c 4a 33 2f ECBV1/MUReXgRPTqh5Uykw7+U0b6LJ3/
17aaa0 0a 69 79 4b 35 53 39 6b 4a 52 61 54 65 70 4c 69 61 57 4e 30 62 66 56 4b 66 6a 6c 6c 44 69 49 47 .iyK5S9kJRaTepLiaWN0bfVKfjllDiIG
17aac0 6b 6e 69 62 56 62 36 33 64 44 63 59 33 66 65 30 44 6b 68 76 6c 64 31 39 32 37 6a 79 4e 78 46 31 knibVb63dDcY3fe0Dkhvld1927jyNxF1
17aae0 57 57 36 4c 5a 5a 6d 36 7a 4e 54 66 6c 0a 4d 72 59 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 WW6LZZm6zNTfl.MrY=.-----END.CERT
17ab00 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 44 69 67 69 43 65 72 74 20 47 6c 6f 62 61 6c 20 52 6f IFICATE-----..DigiCert.Global.Ro
17ab20 6f 74 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d ot.G3.=======================.--
17ab40 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 43 50 7a ---BEGIN.CERTIFICATE-----.MIICPz
17ab60 43 43 41 63 57 67 41 77 49 42 41 67 49 51 42 56 56 57 76 50 4a 65 70 44 55 31 77 36 51 50 31 61 CCAcWgAwIBAgIQBVVWvPJepDU1w6QP1a
17ab80 74 46 63 6a 41 4b 42 67 67 71 68 6b 6a 4f 50 51 51 44 41 7a 42 68 4d 51 73 77 43 51 59 44 56 51 tFcjAKBggqhkjOPQQDAzBhMQswCQYDVQ
17aba0 51 47 45 77 4a 56 0a 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 QGEwJV.UzEVMBMGA1UEChMMRGlnaUNlc
17abc0 6e 51 67 53 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 45 78 42 33 64 33 63 75 5a 47 6c 6e 61 nQgSW5jMRkwFwYDVQQLExB3d3cuZGlna
17abe0 57 4e 6c 63 6e 51 75 59 32 39 74 4d 53 41 77 48 67 59 44 0a 56 51 51 44 45 78 64 45 61 57 64 70 WNlcnQuY29tMSAwHgYD.VQQDExdEaWdp
17ac00 51 32 56 79 64 43 42 48 62 47 39 69 59 57 77 67 55 6d 39 76 64 43 42 48 4d 7a 41 65 46 77 30 78 Q2VydCBHbG9iYWwgUm9vdCBHMzAeFw0x
17ac20 4d 7a 41 34 4d 44 45 78 4d 6a 41 77 4d 44 42 61 46 77 30 7a 4f 44 41 78 4d 54 55 78 4d 6a 41 77 MzA4MDExMjAwMDBaFw0zODAxMTUxMjAw
17ac40 0a 4d 44 42 61 4d 47 45 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6c 56 54 4d 52 55 77 45 77 59 .MDBaMGExCzAJBgNVBAYTAlVTMRUwEwY
17ac60 44 56 51 51 4b 45 77 78 45 61 57 64 70 51 32 56 79 64 43 42 4a 62 6d 4d 78 47 54 41 58 42 67 4e DVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgN
17ac80 56 42 41 73 54 45 48 64 33 64 79 35 6b 0a 61 57 64 70 59 32 56 79 64 43 35 6a 62 32 30 78 49 44 VBAsTEHd3dy5k.aWdpY2VydC5jb20xID
17aca0 41 65 42 67 4e 56 42 41 4d 54 46 30 52 70 5a 32 6c 44 5a 58 4a 30 49 45 64 73 62 32 4a 68 62 43 AeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbC
17acc0 42 53 62 32 39 30 49 45 63 7a 4d 48 59 77 45 41 59 48 4b 6f 5a 49 7a 6a 30 43 0a 41 51 59 46 4b BSb290IEczMHYwEAYHKoZIzj0C.AQYFK
17ace0 34 45 45 41 43 49 44 59 67 41 45 33 61 66 5a 75 34 71 34 43 2f 73 4c 66 79 48 53 38 4c 36 2b 63 4EEACIDYgAE3afZu4q4C/sLfyHS8L6+c
17ad00 2f 4d 7a 58 52 71 38 4e 4f 72 65 78 70 75 38 30 4a 58 32 38 4d 7a 51 43 37 70 68 57 31 46 47 66 /MzXRq8NOrexpu80JX28MzQC7phW1FGf
17ad20 70 34 74 6e 2b 36 4f 0a 59 77 77 58 37 41 64 77 39 63 2b 45 4c 6b 43 44 6e 4f 67 2f 51 57 30 37 p4tn+6O.YwwX7Adw9c+ELkCDnOg/QW07
17ad40 72 64 4f 6b 46 46 6b 32 65 4a 30 44 51 2b 34 51 45 32 78 79 33 71 36 49 70 36 46 72 74 55 50 4f rdOkFFk2eJ0DQ+4QE2xy3q6Ip6FrtUPO
17ad60 5a 39 77 6a 2f 77 4d 63 6f 2b 49 2b 6f 30 49 77 51 44 41 50 0a 42 67 4e 56 48 52 4d 42 41 66 38 Z9wj/wMco+I+o0IwQDAP.BgNVHRMBAf8
17ad80 45 42 54 41 44 41 51 48 2f 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 68 6a 41 EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjA
17ada0 64 42 67 4e 56 48 51 34 45 46 67 51 55 73 39 74 49 70 50 6d 68 78 64 69 75 4e 6b 48 4d 45 57 4e dBgNVHQ4EFgQUs9tIpPmhxdiuNkHMEWN
17adc0 70 0a 59 69 6d 38 53 38 59 77 43 67 59 49 4b 6f 5a 49 7a 6a 30 45 41 77 4d 44 61 41 41 77 5a 51 p.Yim8S8YwCgYIKoZIzj0EAwMDaAAwZQ
17ade0 49 78 41 4b 32 38 38 6d 77 2f 45 6b 72 52 4c 54 6e 44 43 67 6d 58 63 2f 53 49 4e 6f 79 49 4a 37 IxAK288mw/EkrRLTnDCgmXc/SINoyIJ7
17ae00 76 6d 69 49 31 51 68 61 64 6a 2b 5a 34 79 0a 33 6d 61 54 44 2f 48 4d 73 51 6d 50 33 57 79 72 2b vmiI1Qhadj+Z4y.3maTD/HMsQmP3Wyr+
17ae20 6d 74 2f 6f 41 49 77 4f 57 5a 62 77 6d 53 4e 75 4a 35 51 33 4b 6a 56 53 61 4c 74 78 39 7a 52 53 mt/oAIwOWZbwmSNuJ5Q3KjVSaLtx9zRS
17ae40 58 38 58 41 62 6a 49 68 6f 39 4f 6a 49 67 72 71 4a 71 70 69 73 58 52 41 4c 33 34 0a 56 4f 4b 61 X8XAbjIho9OjIgrqJqpisXRAL34.VOKa
17ae60 35 56 74 38 73 79 63 58 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 5Vt8sycX.-----END.CERTIFICATE---
17ae80 2d 2d 0a 0a 44 69 67 69 43 65 72 74 20 54 72 75 73 74 65 64 20 52 6f 6f 74 20 47 34 0a 3d 3d 3d --..DigiCert.Trusted.Root.G4.===
17aea0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e =====================.-----BEGIN
17aec0 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 6b 44 43 43 41 33 69 67 41 77 .CERTIFICATE-----.MIIFkDCCA3igAw
17aee0 49 42 41 67 49 51 42 5a 73 62 56 35 36 4f 49 54 4c 69 4f 51 65 39 70 33 64 31 58 44 41 4e 42 67 IBAgIQBZsbV56OITLiOQe9p3d1XDANBg
17af00 6b 71 68 6b 69 47 39 77 30 42 41 51 77 46 41 44 42 69 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 kqhkiG9w0BAQwFADBiMQswCQYDVQQG.E
17af20 77 4a 56 55 7a 45 56 4d 42 4d 47 41 31 55 45 43 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 6e 51 67 53 wJVUzEVMBMGA1UEChMMRGlnaUNlcnQgS
17af40 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 4c 45 78 42 33 64 33 63 75 5a 47 6c 6e 61 57 4e 6c 63 W5jMRkwFwYDVQQLExB3d3cuZGlnaWNlc
17af60 6e 51 75 59 32 39 74 4d 53 45 77 0a 48 77 59 44 56 51 51 44 45 78 68 45 61 57 64 70 51 32 56 79 nQuY29tMSEw.HwYDVQQDExhEaWdpQ2Vy
17af80 64 43 42 55 63 6e 56 7a 64 47 56 6b 49 46 4a 76 62 33 51 67 52 7a 51 77 48 68 63 4e 4d 54 4d 77 dCBUcnVzdGVkIFJvb3QgRzQwHhcNMTMw
17afa0 4f 44 41 78 4d 54 49 77 4d 44 41 77 57 68 63 4e 4d 7a 67 77 4d 54 45 31 0a 4d 54 49 77 4d 44 41 ODAxMTIwMDAwWhcNMzgwMTE1.MTIwMDA
17afc0 77 57 6a 42 69 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 56 4d 42 4d 47 41 31 55 wWjBiMQswCQYDVQQGEwJVUzEVMBMGA1U
17afe0 45 43 68 4d 4d 52 47 6c 6e 61 55 4e 6c 63 6e 51 67 53 57 35 6a 4d 52 6b 77 46 77 59 44 56 51 51 EChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQ
17b000 4c 45 78 42 33 0a 64 33 63 75 5a 47 6c 6e 61 57 4e 6c 63 6e 51 75 59 32 39 74 4d 53 45 77 48 77 LExB3.d3cuZGlnaWNlcnQuY29tMSEwHw
17b020 59 44 56 51 51 44 45 78 68 45 61 57 64 70 51 32 56 79 64 43 42 55 63 6e 56 7a 64 47 56 6b 49 46 YDVQQDExhEaWdpQ2VydCBUcnVzdGVkIF
17b040 4a 76 62 33 51 67 52 7a 51 77 67 67 49 69 4d 41 30 47 0a 43 53 71 47 53 49 62 33 44 51 45 42 41 Jvb3QgRzQwggIiMA0G.CSqGSIb3DQEBA
17b060 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 2f 35 70 42 7a 61 4e 36 37 35 QUAA4ICDwAwggIKAoICAQC/5pBzaN675
17b080 46 31 4b 50 44 41 69 4d 47 6b 7a 37 4d 4b 6e 4a 53 37 4a 49 54 33 79 69 74 68 5a 77 75 45 70 0a F1KPDAiMGkz7MKnJS7JIT3yithZwuEp.
17b0a0 70 7a 31 59 71 33 61 61 7a 61 35 37 47 34 51 4e 78 44 41 66 38 78 75 6b 4f 42 62 72 56 73 61 58 pz1Yq3aaza57G4QNxDAf8xukOBbrVsaX
17b0c0 62 52 32 72 73 6e 6e 79 79 68 48 53 35 46 2f 57 42 54 78 53 44 31 49 66 78 70 34 56 70 58 36 2b bR2rsnnyyhHS5F/WBTxSD1Ifxp4VpX6+
17b0e0 6e 36 6c 58 46 6c 6c 56 63 71 39 6f 0a 6b 33 44 43 73 72 70 31 6d 57 70 7a 4d 70 54 52 45 45 51 n6lXFllVcq9o.k3DCsrp1mWpzMpTREEQ
17b100 51 4c 74 2b 43 38 77 65 45 35 6e 51 37 62 58 48 69 4c 51 77 62 37 69 44 56 79 53 41 64 59 79 6b QLt+C8weE5nQ7bXHiLQwb7iDVySAdYyk
17b120 74 7a 75 78 65 54 73 69 54 2b 43 46 68 6d 7a 54 72 42 63 5a 65 37 46 73 61 0a 76 4f 76 4a 7a 38 tzuxeTsiT+CFhmzTrBcZe7Fsa.vOvJz8
17b140 32 73 4e 45 42 66 73 58 70 6d 37 6e 66 49 53 4b 68 6d 56 31 65 66 56 46 69 4f 44 43 75 33 54 36 2sNEBfsXpm7nfISKhmV1efVFiODCu3T6
17b160 63 77 32 56 62 75 79 6e 74 64 34 36 33 4a 54 31 37 6c 4e 65 63 78 79 39 71 54 58 74 79 4f 6a 34 cw2Vbuyntd463JT17lNecxy9qTXtyOj4
17b180 44 61 74 70 47 59 0a 51 4a 42 35 77 33 6a 48 74 72 48 45 74 57 6f 59 4f 41 4d 51 6a 64 6a 55 4e DatpGY.QJB5w3jHtrHEtWoYOAMQjdjUN
17b1a0 36 51 75 42 58 32 49 39 59 49 2b 45 4a 46 77 71 31 57 43 51 54 4c 58 32 77 52 7a 4b 6d 36 52 41 6QuBX2I9YI+EJFwq1WCQTLX2wRzKm6RA
17b1c0 58 77 68 54 4e 53 38 72 68 73 44 64 56 31 34 5a 74 6b 36 0a 4d 55 53 61 4d 30 43 2f 43 4e 64 61 XwhTNS8rhsDdV14Ztk6.MUSaM0C/CNda
17b1e0 53 61 54 43 35 71 6d 67 5a 39 32 6b 4a 37 79 68 54 7a 6d 31 45 56 67 58 39 79 52 63 52 6f 39 6b SaTC5qmgZ92kJ7yhTzm1EVgX9yRcRo9k
17b200 39 38 46 70 69 48 61 59 64 6a 31 5a 58 55 4a 32 68 34 6d 58 61 58 70 49 38 4f 43 69 45 68 74 6d 98FpiHaYdj1ZXUJ2h4mXaXpI8OCiEhtm
17b220 0a 6d 6e 54 4b 33 6b 73 65 35 77 35 6a 72 75 62 55 37 35 4b 53 4f 70 34 39 33 41 44 6b 52 53 57 .mnTK3kse5w5jrubU75KSOp493ADkRSW
17b240 4a 74 70 70 45 47 53 74 2b 77 4a 53 30 30 6d 46 74 36 7a 50 5a 78 64 39 4c 42 41 44 4d 66 52 79 JtppEGSt+wJS00mFt6zPZxd9LBADMfRy
17b260 56 77 34 2f 33 49 62 4b 79 45 62 65 37 0a 66 2f 4c 56 6a 48 41 73 51 57 43 71 73 57 4d 59 52 4a Vw4/3IbKyEbe7.f/LVjHAsQWCqsWMYRJ
17b280 55 61 64 6d 4a 2b 39 6f 43 77 2b 2b 68 6b 70 6a 50 52 69 51 66 68 76 62 66 6d 51 36 51 59 75 4b UadmJ+9oCw++hkpjPRiQfhvbfmQ6QYuK
17b2a0 5a 33 41 65 45 50 6c 41 77 68 48 62 4a 55 4b 53 57 4a 62 4f 55 4f 55 6c 46 48 0a 64 4c 34 6d 72 Z3AeEPlAwhHbJUKSWJbOUOUlFH.dL4mr
17b2c0 4c 5a 42 64 64 35 36 72 46 2b 4e 50 38 6d 38 30 30 45 52 45 6c 76 6c 45 46 44 72 4d 63 58 4b 63 LZBdd56rF+NP8m800ERElvlEFDrMcXKc
17b2e0 68 59 69 43 64 39 38 54 48 55 2f 59 2b 77 68 58 38 51 67 55 57 74 76 73 61 75 47 69 30 2f 43 31 hYiCd98THU/Y+whX8QgUWtvsauGi0/C1
17b300 6b 56 66 6e 53 44 38 0a 6f 52 37 46 77 49 2b 69 73 58 34 4b 4a 70 6e 31 35 47 6b 76 6d 42 30 74 kVfnSD8.oR7FwI+isX4KJpn15GkvmB0t
17b320 39 64 6d 70 73 68 33 6c 47 77 49 44 41 51 41 42 6f 30 49 77 51 44 41 50 42 67 4e 56 48 52 4d 42 9dmpsh3lGwIDAQABo0IwQDAPBgNVHRMB
17b340 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 34 47 41 31 55 64 0a 44 77 45 42 2f 77 51 45 41 77 49 Af8EBTADAQH/MA4GA1Ud.DwEB/wQEAwI
17b360 42 68 6a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 37 4e 66 6a 67 74 4a 78 58 57 52 4d 33 79 35 BhjAdBgNVHQ4EFgQU7NfjgtJxXWRM3y5
17b380 6e 50 2b 65 36 6d 4b 34 63 44 30 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4d 42 51 41 nP+e6mK4cD08wDQYJKoZIhvcNAQEMBQA
17b3a0 44 0a 67 67 49 42 41 4c 74 68 32 58 32 70 62 4c 34 58 78 4a 45 62 77 36 47 69 41 49 33 6a 5a 47 D.ggIBALth2X2pbL4XxJEbw6GiAI3jZG
17b3c0 67 50 56 73 39 33 72 6e 44 35 2f 5a 70 4b 6d 62 6e 4a 65 46 77 4d 44 46 2f 6b 35 68 51 70 56 67 gPVs93rnD5/ZpKmbnJeFwMDF/k5hQpVg
17b3e0 73 32 53 56 31 45 59 2b 43 74 6e 4a 59 59 0a 5a 68 73 6a 44 54 31 35 36 57 31 72 31 6c 54 34 30 s2SV1EY+CtnJYY.ZhsjDT156W1r1lT40
17b400 6a 7a 42 51 30 43 75 48 56 44 31 55 76 79 51 4f 37 75 59 6d 57 6c 72 78 38 47 6e 71 47 69 6b 4a jzBQ0CuHVD1UvyQO7uYmWlrx8GnqGikJ
17b420 39 79 64 2b 53 65 75 4d 49 57 35 39 6d 64 4e 4f 6a 36 50 57 54 6b 69 55 30 54 72 0a 79 46 30 44 9yd+SeuMIW59mdNOj6PWTkiU0Tr.yF0D
17b440 79 75 31 51 65 6e 31 69 49 51 71 41 79 48 4e 6d 30 61 41 46 59 46 2f 6f 70 62 53 6e 72 36 6a 33 yu1Qen1iIQqAyHNm0aAFYF/opbSnr6j3
17b460 62 54 57 63 66 46 71 4b 31 71 49 34 6d 66 4e 34 69 2f 52 4e 30 69 41 4c 33 67 54 75 6a 4a 74 48 bTWcfFqK1qI4mfN4i/RN0iAL3gTujJtH
17b480 67 58 49 4e 77 42 51 79 0a 37 7a 42 5a 4c 71 37 67 63 66 4a 57 35 47 71 58 62 35 4a 51 62 5a 61 gXINwBQy.7zBZLq7gcfJW5GqXb5JQbZa
17b4a0 4e 61 48 71 61 73 6a 59 55 65 67 62 79 4a 4c 6b 4a 45 56 44 58 43 4c 47 34 69 58 71 45 49 32 46 NaHqasjYUegbyJLkJEVDXCLG4iXqEI2F
17b4c0 43 4b 65 57 6a 7a 61 49 67 51 64 66 52 6e 47 54 5a 36 69 61 68 0a 69 78 54 58 54 42 6d 79 55 45 CKeWjzaIgQdfRnGTZ6iah.ixTXTBmyUE
17b4e0 46 78 50 54 39 4e 63 43 4f 47 44 45 72 63 67 64 4c 4d 4d 70 53 45 44 51 67 4a 6c 78 78 50 77 4f FxPT9NcCOGDErcgdLMMpSEDQgJlxxPwO
17b500 35 72 49 48 51 77 30 75 41 35 4e 42 43 46 49 52 55 42 43 4f 68 56 4d 74 35 78 53 64 6b 6f 46 31 5rIHQw0uA5NBCFIRUBCOhVMt5xSdkoF1
17b520 42 4e 0a 35 72 35 4e 30 58 57 73 30 4d 72 37 51 62 68 44 70 61 72 54 77 77 56 45 54 79 77 32 6d BN.5r5N0XWs0Mr7QbhDparTwwVETyw2m
17b540 2b 4c 36 34 6b 57 34 49 31 4e 73 42 6d 39 6e 56 58 39 47 74 55 77 2f 62 69 68 61 65 53 62 53 70 +L64kW4I1NsBm9nVX9GtUw/bihaeSbSp
17b560 4b 68 69 6c 39 49 65 34 75 31 4b 69 37 77 62 0a 2f 55 64 4b 44 64 39 6e 5a 6e 36 79 57 30 48 51 Khil9Ie4u1Ki7wb./UdKDd9nZn6yW0HQ
17b580 4f 2b 54 30 4f 2f 51 45 59 2b 6e 76 77 6c 51 41 55 61 43 4b 4b 73 6e 4f 65 4d 7a 56 36 6f 63 45 O+T0O/QEY+nvwlQAUaCKKsnOeMzV6ocE
17b5a0 47 4c 50 4f 72 30 6d 49 72 2f 4f 53 6d 62 61 7a 35 6d 45 50 30 6f 55 41 35 31 41 61 0a 35 42 75 GLPOr0mIr/OSmbaz5mEP0oUA51Aa.5Bu
17b5c0 56 6e 52 6d 68 75 5a 79 78 6d 37 45 41 48 75 2f 51 44 30 39 43 62 4d 6b 4b 76 4f 35 44 2b 6a 70 VnRmhuZyxm7EAHu/QD09CbMkKvO5D+jp
17b5e0 78 70 63 68 4e 4a 71 55 31 2f 59 6c 64 76 49 56 69 48 54 4c 53 6f 43 74 55 37 5a 70 58 77 64 76 xpchNJqU1/YldvIViHTLSoCtU7ZpXwdv
17b600 36 45 4d 38 5a 74 34 74 4b 0a 47 34 38 42 74 69 65 56 55 2b 69 32 69 57 31 62 76 47 6a 55 49 2b 6EM8Zt4tK.G48BtieVU+i2iW1bvGjUI+
17b620 69 4c 55 61 4a 57 2b 66 43 6d 67 4b 44 57 48 72 4f 38 44 77 39 54 64 53 6d 71 36 68 4e 33 35 4e iLUaJW+fCmgKDWHrO8Dw9TdSmq6hN35N
17b640 36 4d 67 53 47 74 42 78 42 48 45 61 32 48 50 51 66 52 64 62 7a 50 0a 38 32 5a 2b 0a 2d 2d 2d 2d 6MgSGtBxBHEa2HPQfRdbzP.82Z+.----
17b660 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 57 6f 53 69 67 6e 0a 3d 3d -END.CERTIFICATE-----..WoSign.==
17b680 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d ====.-----BEGIN.CERTIFICATE-----
17b6a0 0a 4d 49 49 46 64 6a 43 43 41 31 36 67 41 77 49 42 41 67 49 51 58 6d 6a 57 45 58 47 55 59 31 42 .MIIFdjCCA16gAwIBAgIQXmjWEXGUY1B
17b6c0 57 41 47 6a 7a 50 73 6e 46 6b 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 55 46 41 44 42 WAGjzPsnFkTANBgkqhkiG9w0BAQUFADB
17b6e0 56 4d 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 44 54 6a 45 61 4d 42 67 47 41 31 55 45 43 68 VMQswCQYDVQQG.EwJDTjEaMBgGA1UECh
17b700 4d 52 56 32 39 54 61 57 64 75 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 4b 6a 41 6f 42 67 MRV29TaWduIENBIExpbWl0ZWQxKjAoBg
17b720 4e 56 42 41 4d 54 49 55 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 0a 51 58 56 30 61 NVBAMTIUNlcnRpZmljYXRpb24g.QXV0a
17b740 47 39 79 61 58 52 35 49 47 39 6d 49 46 64 76 55 32 6c 6e 62 6a 41 65 46 77 30 77 4f 54 41 34 4d G9yaXR5IG9mIFdvU2lnbjAeFw0wOTA4M
17b760 44 67 77 4d 54 41 77 4d 44 46 61 46 77 30 7a 4f 54 41 34 4d 44 67 77 4d 54 41 77 4d 44 46 61 4d DgwMTAwMDFaFw0zOTA4MDgwMTAwMDFaM
17b780 46 55 78 43 7a 41 4a 0a 42 67 4e 56 42 41 59 54 41 6b 4e 4f 4d 52 6f 77 47 41 59 44 56 51 51 4b FUxCzAJ.BgNVBAYTAkNOMRowGAYDVQQK
17b7a0 45 78 46 58 62 31 4e 70 5a 32 34 67 51 30 45 67 54 47 6c 74 61 58 52 6c 5a 44 45 71 4d 43 67 47 ExFXb1NpZ24gQ0EgTGltaXRlZDEqMCgG
17b7c0 41 31 55 45 41 78 4d 68 51 32 56 79 64 47 6c 6d 61 57 4e 68 0a 64 47 6c 76 62 69 42 42 64 58 52 A1UEAxMhQ2VydGlmaWNh.dGlvbiBBdXR
17b7e0 6f 62 33 4a 70 64 48 6b 67 62 32 59 67 56 32 39 54 61 57 64 75 4d 49 49 43 49 6a 41 4e 42 67 6b ob3JpdHkgb2YgV29TaWduMIICIjANBgk
17b800 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 45 qhkiG9w0BAQEFAAOCAg8AMIICCgKCAgE
17b820 41 0a 76 63 71 4e 72 4c 69 52 46 56 61 58 65 32 74 63 65 73 4c 65 61 39 6d 68 73 4d 4d 51 49 2f A.vcqNrLiRFVaXe2tcesLea9mhsMMQI/
17b840 71 6e 6f 62 4c 4d 4d 66 6f 2b 32 61 59 70 62 78 59 39 34 47 76 34 75 45 42 66 32 7a 6d 6f 41 48 qnobLMMfo+2aYpbxY94Gv4uEBf2zmoAH
17b860 71 4c 6f 45 31 55 66 63 49 69 65 50 79 4f 0a 43 62 69 6f 68 64 66 4d 6c 5a 64 4c 64 4e 69 65 66 qLoE1UfcIiePyO.CbiohdfMlZdLdNief
17b880 76 41 41 35 41 36 4a 72 6b 6b 6f 52 42 6f 51 6d 54 49 50 4a 59 68 54 70 41 32 7a 44 78 49 49 46 vAA5A6JrkkoRBoQmTIPJYhTpA2zDxIIF
17b8a0 67 73 44 63 53 63 63 66 2b 48 62 30 76 31 6e 61 4d 51 46 58 51 6f 4f 58 58 44 58 0a 32 4a 65 67 gsDcSccf+Hb0v1naMQFXQoOXXDX.2Jeg
17b8c0 76 46 4e 42 6d 70 47 4e 39 4a 34 32 5a 6e 70 2b 56 73 47 51 58 2b 61 78 61 43 41 32 70 49 77 6b vFNBmpGN9J42Znp+VsGQX+axaCA2pIwk
17b8e0 4c 43 78 48 43 31 6c 32 5a 6a 43 31 76 74 37 74 6a 2f 69 64 30 37 73 42 4d 4f 62 79 38 77 37 67 LCxHC1l2ZjC1vt7tj/id07sBMOby8w7g
17b900 4c 4a 4b 41 38 34 58 35 0a 4b 49 71 30 56 43 36 61 37 66 64 32 2f 42 56 6f 46 75 74 4b 62 4f 73 LJKA84X5.KIq0VC6a7fd2/BVoFutKbOs
17b920 75 45 6f 2f 55 7a 2f 34 4d 78 31 77 64 43 33 34 46 4d 72 35 65 73 41 6b 71 51 74 58 4a 54 70 43 uEo/Uz/4Mx1wdC34FMr5esAkqQtXJTpC
17b940 7a 57 51 32 37 65 6e 37 4e 31 51 68 61 74 48 2f 59 48 47 6b 52 0a 2b 53 63 50 65 77 61 76 56 49 zWQ27en7N1QhatH/YHGkR.+ScPewavVI
17b960 4d 59 65 2b 48 64 56 48 70 52 61 47 35 33 2f 4d 61 2f 55 6b 70 6d 52 71 47 79 5a 78 71 37 6f 30 MYe+HdVHpRaG53/Ma/UkpmRqGyZxq7o0
17b980 39 33 6f 4c 35 64 2f 2f 78 57 43 30 4e 79 64 35 44 4b 6e 76 6e 79 4f 66 55 4e 71 66 54 71 31 2b 93oL5d//xWC0Nyd5DKnvnyOfUNqfTq1+
17b9a0 65 7a 0a 45 43 38 77 51 6a 63 68 7a 44 42 77 79 59 61 59 44 38 78 59 54 59 4f 37 66 65 55 61 70 ez.EC8wQjchzDBwyYaYD8xYTYO7feUap
17b9c0 54 65 4e 74 71 77 79 6c 77 41 36 59 33 45 6b 48 70 34 33 78 50 39 30 31 44 66 41 34 76 36 49 52 TeNtqwylwA6Y3EkHp43xP901DfA4v6IR
17b9e0 6d 41 52 33 51 67 2f 55 44 61 72 75 48 71 6b 0a 6c 57 4a 71 62 72 44 4b 61 69 46 61 61 66 50 7a mAR3Qg/UDaruHqk.lWJqbrDKaiFaafPz
17ba00 2b 78 31 77 4f 5a 58 7a 70 32 36 6d 67 59 6d 68 69 4d 55 37 63 63 71 6a 55 75 36 44 75 2f 32 67 +x1wOZXzp26mgYmhiMU7ccqjUu6Du/2g
17ba20 64 2f 54 6b 62 2b 64 43 32 32 31 4b 6d 59 6f 30 53 4c 77 58 33 4f 53 41 43 43 4b 32 0a 38 6a 48 d/Tkb+dC221KmYo0SLwX3OSACCK2.8jH
17ba40 41 50 77 51 2b 36 35 38 67 65 64 61 34 42 6d 52 6b 41 6a 48 58 71 63 31 53 2b 34 52 46 61 51 6b APwQ+658geda4BmRkAjHXqc1S+4RFaQk
17ba60 41 4b 74 78 56 69 38 51 47 52 6b 76 41 53 68 30 4a 57 7a 6b 6f 2f 61 6d 72 7a 67 44 35 4c 6b 68 AKtxVi8QGRkvASh0JWzko/amrzgD5Lkh
17ba80 4c 4a 75 59 77 54 4b 56 59 0a 79 72 52 45 67 6b 2f 6e 6b 52 34 7a 77 37 43 54 2f 78 48 38 67 64 LJuYwTKVY.yrREgk/nkR4zw7CT/xH8gd
17baa0 4c 4b 48 33 45 70 33 58 5a 50 6b 69 57 76 48 59 47 33 44 79 2b 4d 77 77 62 4d 4c 79 65 6a 53 75 LKH3Ep3XZPkiWvHYG3Dy+MwwbMLyejSu
17bac0 51 4f 6d 62 70 38 48 6b 55 66 66 36 6f 5a 52 5a 62 39 2f 44 30 43 0a 41 77 45 41 41 61 4e 43 4d QOmbp8HkUff6oZRZb9/D0C.AwEAAaNCM
17bae0 45 41 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 45 EAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdE
17bb00 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4f 46 6d 7a wEB/wQFMAMBAf8wHQYDVR0OBBYEFOFmz
17bb20 77 37 52 0a 38 62 4e 4c 74 77 59 67 46 50 36 48 45 74 58 32 2f 76 73 2b 4d 41 30 47 43 53 71 47 w7R.8bNLtwYgFP6HEtX2/vs+MA0GCSqG
17bb40 53 49 62 33 44 51 45 42 42 51 55 41 41 34 49 43 41 51 43 6f 79 33 4a 41 73 6e 62 42 66 6e 76 38 SIb3DQEBBQUAA4ICAQCoy3JAsnbBfnv8
17bb60 72 57 54 6a 4d 6e 76 4d 50 4c 5a 64 52 74 50 31 0a 4c 4f 4a 77 58 63 67 75 32 41 5a 39 6d 4e 45 rWTjMnvMPLZdRtP1.LOJwXcgu2AZ9mNE
17bb80 4c 49 61 43 4a 57 53 51 42 6e 66 6d 76 43 58 30 4b 49 34 49 30 31 66 78 38 63 70 6d 35 6f 39 64 LIaCJWSQBnfmvCX0KI4I01fx8cpm5o9d
17bba0 55 39 4f 70 53 63 41 37 46 39 64 59 37 34 54 6f 4a 4d 75 59 68 4f 5a 4f 39 73 78 58 71 0a 54 32 U9OpScA7F9dY74ToJMuYhOZO9sxXq.T2
17bbc0 72 30 39 59 73 2f 4c 33 79 4e 57 43 37 46 34 54 6d 67 50 73 63 39 53 6e 4f 65 51 48 72 41 4b 32 r09Ys/L3yNWC7F4TmgPsc9SnOeQHrAK2
17bbe0 47 70 5a 38 6e 7a 4a 4c 6d 7a 62 56 55 73 57 68 32 65 4a 58 4c 4f 43 36 32 71 78 31 56 69 43 37 GpZ8nzJLmzbVUsWh2eJXLOC62qx1ViC7
17bc00 37 37 59 37 4e 68 52 43 4f 6a 0a 79 2b 45 61 44 76 65 61 42 6b 33 65 31 43 4e 4f 49 5a 5a 62 4f 77Y7NhRCOj.y+EaDveaBk3e1CNOIZZbO
17bc20 56 74 58 48 53 39 64 43 46 34 4a 65 66 39 38 6c 37 56 4e 67 36 34 4e 31 75 61 6a 65 65 41 7a 30 VtXHS9dCF4Jef98l7VNg64N1uajeeAz0
17bc40 4a 6d 57 41 6a 43 6e 50 76 2f 53 6f 30 4d 2f 42 56 6f 47 36 6b 51 43 0a 32 6e 7a 34 53 4e 41 7a JmWAjCnPv/So0M/BVoG6kQC.2nz4SNAz
17bc60 71 66 6b 48 78 35 58 68 39 54 37 31 58 58 47 36 38 70 57 70 64 49 68 68 57 65 4f 2f 79 6c 6f 54 qfkHx5Xh9T71XXG68pWpdIhhWeO/yloT
17bc80 75 6e 4b 30 6a 46 30 32 68 2b 6d 6d 78 54 77 54 76 39 37 51 52 43 62 75 74 2b 77 75 63 50 72 58 unK0jF02h+mmxTwTv97QRCbut+wucPrX
17bca0 6e 62 65 73 0a 35 63 56 41 57 75 62 58 62 48 73 73 77 31 61 62 52 38 30 4c 7a 76 6f 62 74 43 48 nbes.5cVAWubXbHssw1abR80LzvobtCH
17bcc0 58 74 32 61 34 39 43 55 77 69 31 77 4e 75 65 70 6e 73 76 52 74 72 74 57 68 6e 6b 2f 59 6e 2b 6b Xt2a49CUwi1wNuepnsvRtrtWhnk/Yn+k
17bce0 6e 41 72 41 64 42 74 61 50 34 2f 74 49 45 70 39 2f 0a 45 61 45 51 50 6b 78 52 4f 70 61 77 30 52 nArAdBtaP4/tIEp9/.EaEQPkxROpaw0R
17bd00 50 78 78 39 67 6d 72 6a 72 4b 6b 63 52 70 6e 64 38 42 4b 57 52 52 62 32 6a 61 46 4f 77 49 51 5a Pxx9gmrjrKkcRpnd8BKWRRb2jaFOwIQZ
17bd20 65 51 6a 64 43 79 67 50 4c 50 77 6a 32 2f 6b 57 6a 46 67 47 63 65 78 47 41 54 56 64 56 68 0a 6d eQjdCygPLPwj2/kWjFgGcexGATVdVh.m
17bd40 56 64 38 75 70 55 50 59 55 6b 36 79 6e 57 38 79 51 71 54 50 32 63 4f 45 76 49 6f 34 6a 45 62 77 Vd8upUPYUk6ynW8yQqTP2cOEvIo4jEbw
17bd60 46 63 57 33 77 68 38 47 63 46 2b 44 78 2b 46 48 67 6f 32 66 46 74 2b 4a 37 78 36 76 2b 44 62 39 FcW3wh8GcF+Dx+FHgo2fFt+J7x6v+Db9
17bd80 4e 70 53 76 64 34 4d 56 48 41 78 0a 6b 55 4f 56 79 4c 7a 77 50 74 30 4a 66 6a 42 6b 55 4f 31 2f NpSvd4MVHAx.kUOVyLzwPt0JfjBkUO1/
17bda0 41 61 51 7a 5a 30 31 6f 54 37 34 56 37 37 44 32 41 68 47 69 47 78 4d 6c 4f 74 7a 43 57 66 48 6a AaQzZ01oT74V77D2AhGiGxMlOtzCWfHj
17bdc0 58 45 61 37 5a 79 77 43 52 75 6f 65 53 4b 62 6d 57 39 6d 31 76 46 47 69 0a 6b 70 62 62 71 73 59 XEa7ZywCRuoeSKbmW9m1vFGi.kpbbqsY
17bde0 33 49 71 62 2b 7a 43 42 30 6f 79 32 70 4c 6d 76 4c 77 49 49 52 49 62 57 54 65 65 35 45 68 72 37 3Iqb+zCB0oy2pLmvLwIIRIbWTee5Ehr7
17be00 58 48 75 51 65 2b 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d XHuQe+w==.-----END.CERTIFICATE--
17be20 2d 2d 2d 0a 0a 57 6f 53 69 67 6e 20 43 68 69 6e 61 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d ---..WoSign.China.============.-
17be40 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 57 ----BEGIN.CERTIFICATE-----.MIIFW
17be60 44 43 43 41 30 43 67 41 77 49 42 41 67 49 51 55 48 42 72 7a 64 67 54 2f 42 74 4f 4f 7a 4e 79 30 DCCA0CgAwIBAgIQUHBrzdgT/BtOOzNy0
17be80 68 46 49 6a 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 47 4d 51 73 77 43 hFIjTANBgkqhkiG9w0BAQsFADBGMQswC
17bea0 51 59 44 56 51 51 47 0a 45 77 4a 44 54 6a 45 61 4d 42 67 47 41 31 55 45 43 68 4d 52 56 32 39 54 QYDVQQG.EwJDTjEaMBgGA1UEChMRV29T
17bec0 61 57 64 75 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 47 7a 41 5a 42 67 4e 56 42 41 4d 4d aWduIENBIExpbWl0ZWQxGzAZBgNVBAMM
17bee0 45 6b 4e 42 49 4f 61 79 67 2b 6d 41 6d 75 61 67 75 65 69 76 0a 67 65 53 35 70 6a 41 65 46 77 30 EkNBIOayg+mAmuagueiv.geS5pjAeFw0
17bf00 77 4f 54 41 34 4d 44 67 77 4d 54 41 77 4d 44 46 61 46 77 30 7a 4f 54 41 34 4d 44 67 77 4d 54 41 wOTA4MDgwMTAwMDFaFw0zOTA4MDgwMTA
17bf20 77 4d 44 46 61 4d 45 59 78 43 7a 41 4a 42 67 4e 56 42 41 59 54 41 6b 4e 4f 4d 52 6f 77 47 41 59 wMDFaMEYxCzAJBgNVBAYTAkNOMRowGAY
17bf40 44 0a 56 51 51 4b 45 78 46 58 62 31 4e 70 5a 32 34 67 51 30 45 67 54 47 6c 74 61 58 52 6c 5a 44 D.VQQKExFXb1NpZ24gQ0EgTGltaXRlZD
17bf60 45 62 4d 42 6b 47 41 31 55 45 41 77 77 53 51 30 45 67 35 72 4b 44 36 59 43 61 35 71 43 35 36 4b EbMBkGA1UEAwwSQ0Eg5rKD6YCa5qC56K
17bf80 2b 42 35 4c 6d 6d 4d 49 49 43 49 6a 41 4e 0a 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 +B5LmmMIICIjAN.BgkqhkiG9w0BAQEFA
17bfa0 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 45 41 30 45 6b 68 48 69 58 38 68 38 45 71 77 AOCAg8AMIICCgKCAgEA0EkhHiX8h8Eqw
17bfc0 71 7a 62 64 6f 59 47 54 75 66 51 64 44 54 63 37 57 55 31 2f 46 44 57 69 44 2b 6b 0a 38 48 2f 72 qzbdoYGTufQdDTc7WU1/FDWiD+k.8H/r
17bfe0 44 31 39 35 4c 34 6d 78 2f 62 78 6a 57 44 65 54 6d 7a 6a 34 74 31 75 70 2b 74 68 78 78 37 53 38 D195L4mx/bxjWDeTmzj4t1up+thxx7S8
17c000 67 4a 65 4e 62 45 76 78 55 4e 55 71 4b 61 71 6f 47 58 71 57 35 70 57 4f 64 4f 32 58 43 6c 64 31 gJeNbEvxUNUqKaqoGXqW5pWOdO2XCld1
17c020 39 41 58 62 62 51 73 35 0a 75 51 46 2f 71 76 62 57 32 6d 7a 6d 42 65 43 6b 54 56 4c 38 32 39 42 9AXbbQs5.uQF/qvbW2mzmBeCkTVL829B
17c040 30 74 78 47 4d 65 34 31 50 2f 34 65 44 72 76 38 46 41 78 4e 58 55 44 66 2b 6a 4a 5a 53 45 45 78 0txGMe41P/4eDrv8FAxNXUDf+jJZSEEx
17c060 66 76 35 52 78 61 64 6d 57 50 67 78 44 54 37 34 77 77 4a 38 35 0a 64 45 38 47 52 56 32 6a 31 6c fv5RxadmWPgxDT74wwJ85.dE8GRV2j1l
17c080 59 35 61 41 66 4d 68 30 39 51 64 35 4e 78 32 55 51 49 73 59 6f 30 36 59 6d 73 32 35 74 4f 34 64 Y5aAfMh09Qd5Nx2UQIsYo06Yms25tO4d
17c0a0 6e 6b 55 6b 57 4d 4c 68 51 66 6b 57 73 5a 48 57 67 70 4c 46 62 45 34 68 34 54 56 32 54 77 59 65 nkUkWMLhQfkWsZHWgpLFbE4h4TV2TwYe
17c0c0 4f 35 0a 45 64 2b 77 34 56 65 67 47 36 33 58 58 39 47 76 32 79 73 74 50 39 42 6f 6a 67 2f 71 6e O5.Ed+w4VegG63XX9Gv2ystP9Bojg/qn
17c0e0 77 2b 4c 4e 56 67 62 45 78 7a 30 33 6a 57 68 43 6c 33 57 36 74 38 53 62 38 44 37 61 51 64 47 63 w+LNVgbExz03jWhCl3W6t8Sb8D7aQdGc
17c100 74 79 42 39 67 51 6a 46 2b 42 4e 64 65 46 79 0a 62 37 41 6f 36 35 76 68 34 59 4f 68 6e 30 70 64 tyB9gQjF+BNdeFy.b7Ao65vh4YOhn0pd
17c120 72 38 79 62 2b 67 49 67 74 68 68 69 64 35 45 37 6f 39 56 6c 72 64 78 38 6b 48 63 63 52 45 47 6b r8yb+gIgthhid5E7o9Vlrdx8kHccREGk
17c140 53 6f 76 72 6c 58 4c 70 39 67 6c 6b 33 4b 67 74 6e 33 52 34 36 4d 47 69 43 57 4f 63 0a 37 36 44 SovrlXLp9glk3Kgtn3R46MGiCWOc.76D
17c160 62 54 35 32 56 71 79 42 50 74 37 44 33 68 31 79 6d 6f 4f 51 33 4f 4d 64 63 34 7a 55 50 4c 4b 32 bT52VqyBPt7D3h1ymoOQ3OMdc4zUPLK2
17c180 6a 67 4b 4c 73 4c 6c 33 41 7a 2b 32 4c 42 63 4c 6d 63 32 37 32 69 64 58 31 30 6b 61 4f 36 6d 31 jgKLsLl3Az+2LBcLmc272idX10kaO6m1
17c1a0 6a 47 78 36 4b 79 58 32 6d 0a 2b 4a 7a 72 35 64 56 6a 68 55 31 7a 5a 6d 6b 52 2f 73 67 4f 39 4d jGx6KyX2m.+Jzr5dVjhU1zZmkR/sgO9M
17c1c0 48 48 5a 6b 6c 54 66 75 51 5a 61 2f 48 70 65 6c 6d 6a 62 58 37 46 46 2b 59 6e 78 75 38 62 32 32 HHZklTfuQZa/HpelmjbX7FF+Ynxu8b22
17c1e0 2f 38 44 55 30 47 41 62 51 4f 58 44 42 47 56 57 43 76 4f 47 55 36 0a 79 6b 65 36 72 43 7a 4d 52 /8DU0GAbQOXDBGVWCvOGU6.yke6rCzMR
17c200 68 2b 79 52 70 59 2f 38 2b 30 6d 42 65 35 33 6f 57 70 72 66 69 31 74 57 46 78 4b 31 49 35 6e 75 h+yRpY/8+0mBe53oWprfi1tWFxK1I5nu
17c220 50 48 61 31 55 61 4b 4a 2f 6b 52 38 73 6c 43 2f 6b 37 65 33 78 39 63 78 4b 53 47 68 78 59 7a 6f PHa1UaKJ/kR8slC/k7e3x9cxKSGhxYzo
17c240 61 63 58 0a 47 4b 55 4e 35 41 58 6c 4b 38 49 72 43 36 4b 56 6b 4c 6e 39 59 44 78 4f 69 54 37 6e acX.GKUN5AXlK8IrC6KVkLn9YDxOiT7n
17c260 6e 4f 34 66 75 77 45 43 41 77 45 41 41 61 4e 43 4d 45 41 77 44 67 59 44 56 52 30 50 41 51 48 2f nO4fuwECAwEAAaNCMEAwDgYDVR0PAQH/
17c280 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 0a 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 BAQDAgEGMA8GA1Ud.EwEB/wQFMAMBAf8
17c2a0 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 4f 42 4e 76 39 79 62 51 56 30 54 36 47 54 77 70 2b 6b wHQYDVR0OBBYEFOBNv9ybQV0T6GTwp+k
17c2c0 56 70 4f 47 42 77 62 6f 78 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 0a 41 34 VpOGBwboxMA0GCSqGSIb3DQEBCwUA.A4
17c2e0 49 43 41 51 42 71 69 6e 41 34 57 62 62 61 69 78 6a 49 76 69 72 54 74 68 6e 56 5a 69 6c 36 58 63 ICAQBqinA4WbbaixjIvirTthnVZil6Xc
17c300 31 62 4c 33 4d 63 4a 6b 36 6a 66 57 2b 72 74 79 6c 4e 70 75 6d 6c 45 59 4f 6e 4f 58 4f 76 45 45 1bL3McJk6jfW+rtylNpumlEYOnOXOvEE
17c320 53 53 35 69 56 64 54 32 48 36 0a 79 41 61 2b 54 6b 76 76 2f 76 4d 78 2f 73 5a 38 63 41 70 42 57 SS5iVdT2H6.yAa+Tkvv/vMx/sZ8cApBW
17c340 4e 72 6f 6d 55 75 57 79 58 69 38 6d 48 77 43 4b 65 30 4a 67 4f 59 4b 4f 6f 49 43 4b 75 4c 4a 4c NromUuWyXi8mHwCKe0JgOYKOoICKuLJL
17c360 38 68 57 47 53 62 75 65 42 77 6a 2f 66 65 54 5a 55 37 6e 38 35 69 59 0a 72 38 33 64 32 5a 35 41 8hWGSbueBwj/feTZU7n85iY.r83d2Z5A
17c380 69 44 45 6f 4f 71 73 75 43 37 43 73 44 43 54 36 65 69 61 59 38 78 4a 68 45 50 52 64 46 2f 64 2b iDEoOqsuC7CsDCT6eiaY8xJhEPRdF/d+
17c3a0 34 6e 69 58 56 4f 4b 4d 36 43 6d 36 6a 42 41 79 76 64 30 7a 61 7a 69 47 66 6a 6b 39 44 67 4e 79 4niXVOKM6Cm6jBAyvd0zaziGfjk9DgNy
17c3c0 70 31 31 35 0a 6a 30 57 4b 57 61 35 62 49 57 34 78 52 74 56 5a 6a 63 38 56 58 39 30 78 4a 63 2f p115.j0WKWa5bIW4xRtVZjc8VX90xJc/
17c3e0 62 59 4e 61 42 52 48 49 70 41 6c 66 32 6c 74 54 57 2f 2b 6f 70 32 7a 6e 46 75 43 79 4b 47 6f 33 bYNaBRHIpAlf2ltTW/+op2znFuCyKGo3
17c400 4f 79 2b 64 43 4d 59 59 46 61 41 36 65 46 4e 30 41 0a 6b 4c 70 70 52 51 6a 62 62 70 43 42 68 71 Oy+dCMYYFaA6eFN0A.kLppRQjbbpCBhq
17c420 63 71 42 54 2f 6d 68 44 6e 34 74 2f 6c 58 58 30 79 6b 65 56 6f 51 44 46 37 56 61 2f 38 31 58 77 cqBT/mhDn4t/lXX0ykeVoQDF7Va/81Xw
17c440 56 52 48 6d 79 6a 64 61 6e 50 55 49 50 54 66 50 52 6d 39 34 4b 4e 50 51 78 39 36 4e 39 37 0a 71 VRHmyjdanPUIPTfPRm94KNPQx96N97.q
17c460 41 34 62 4c 4a 79 75 51 48 43 48 32 75 32 6e 46 6f 4a 61 76 6a 56 73 49 45 34 69 59 64 6d 38 55 A4bLJyuQHCH2u2nFoJavjVsIE4iYdm8U
17c480 58 72 4e 65 6d 48 63 53 78 48 35 2f 6d 63 30 7a 79 34 45 5a 6d 46 63 56 35 63 6a 6a 50 4f 47 47 XrNemHcSxH5/mc0zy4EZmFcV5cjjPOGG
17c4a0 30 6a 66 4b 71 2b 6e 77 66 2f 59 0a 6a 6a 34 44 75 39 67 71 73 50 6f 55 4a 62 4a 52 61 34 5a 44 0jfKq+nwf/Y.jj4Du9gqsPoUJbJRa4ZD
17c4c0 68 53 34 48 49 78 61 41 6a 55 7a 37 74 47 4d 37 7a 4d 4e 30 37 52 75 6a 48 76 34 31 44 31 39 38 hS4HIxaAjUz7tGM7zMN07RujHv41D198
17c4e0 48 52 61 47 39 51 37 44 6c 66 45 76 72 31 30 6c 4f 31 48 6d 31 33 5a 42 0a 4f 4e 46 4c 41 7a 6b HRaG9Q7DlfEvr10lO1Hm13ZB.ONFLAzk
17c500 6f 70 52 36 52 63 74 52 39 71 35 63 7a 78 4e 4d 2b 34 47 6d 32 4b 48 6d 67 43 59 30 63 30 66 39 opR6RctR9q5czxNM+4Gm2KHmgCY0c0f9
17c520 42 63 6b 67 47 2f 4a 6f 75 35 79 44 35 6d 36 4c 65 69 65 32 75 50 41 6d 76 79 6c 65 7a 6b 6f 6c BckgG/Jou5yD5m6Leie2uPAmvylezkol
17c540 77 51 4f 51 76 0a 54 38 4a 77 67 30 44 58 4a 43 78 72 35 77 6b 66 30 39 58 48 77 51 6a 30 32 77 wQOQv.T8Jwg0DXJCxr5wkf09XHwQj02w
17c560 34 37 48 41 63 4c 51 78 47 45 49 59 62 70 67 4e 52 31 32 4b 76 78 41 6d 4c 42 73 58 35 56 59 63 47HAcLQxGEIYbpgNR12KvxAmLBsX5VYc
17c580 38 54 31 79 61 77 31 35 7a 4c 4b 59 73 34 53 67 73 4f 0a 6b 49 32 36 6f 51 3d 3d 0a 2d 2d 2d 2d 8T1yaw15zLKYs4SgsO.kI26oQ==.----
17c5a0 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 4f 4d 4f 44 4f 20 52 53 -END.CERTIFICATE-----..COMODO.RS
17c5c0 41 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d 3d A.Certification.Authority.======
17c5e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d ============================.---
17c600 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 32 44 43 --BEGIN.CERTIFICATE-----.MIIF2DC
17c620 43 41 38 43 67 41 77 49 42 41 67 49 51 54 4b 72 35 79 74 74 6a 62 2b 41 66 39 30 37 59 57 77 4f CA8CgAwIBAgIQTKr5yttjb+Af907YWwO
17c640 47 6e 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 77 46 41 44 43 42 68 54 45 4c 4d 41 6b GnTANBgkqhkiG9w0BAQwFADCBhTELMAk
17c660 47 41 31 55 45 0a 42 68 4d 43 52 30 49 78 47 7a 41 5a 42 67 4e 56 42 41 67 54 45 6b 64 79 5a 57 GA1UE.BhMCR0IxGzAZBgNVBAgTEkdyZW
17c680 46 30 5a 58 49 67 54 57 46 75 59 32 68 6c 63 33 52 6c 63 6a 45 51 4d 41 34 47 41 31 55 45 42 78 F0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBx
17c6a0 4d 48 55 32 46 73 5a 6d 39 79 5a 44 45 61 4d 42 67 47 0a 41 31 55 45 43 68 4d 52 51 30 39 4e 54 MHU2FsZm9yZDEaMBgG.A1UEChMRQ09NT
17c6c0 30 52 50 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 4b 7a 41 70 42 67 4e 56 42 41 4d 54 49 0RPIENBIExpbWl0ZWQxKzApBgNVBAMTI
17c6e0 6b 4e 50 54 55 39 45 54 79 42 53 55 30 45 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 6c 76 0a kNPTU9ETyBSU0EgQ2VydGlmaWNhdGlv.
17c700 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 48 68 63 4e 4d 54 41 77 4d 54 45 35 4d 44 41 77 biBBdXRob3JpdHkwHhcNMTAwMTE5MDAw
17c720 4d 44 41 77 57 68 63 4e 4d 7a 67 77 4d 54 45 34 4d 6a 4d 31 4f 54 55 35 57 6a 43 42 68 54 45 4c MDAwWhcNMzgwMTE4MjM1OTU5WjCBhTEL
17c740 4d 41 6b 47 41 31 55 45 42 68 4d 43 0a 52 30 49 78 47 7a 41 5a 42 67 4e 56 42 41 67 54 45 6b 64 MAkGA1UEBhMC.R0IxGzAZBgNVBAgTEkd
17c760 79 5a 57 46 30 5a 58 49 67 54 57 46 75 59 32 68 6c 63 33 52 6c 63 6a 45 51 4d 41 34 47 41 31 55 yZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1U
17c780 45 42 78 4d 48 55 32 46 73 5a 6d 39 79 5a 44 45 61 4d 42 67 47 41 31 55 45 0a 43 68 4d 52 51 30 EBxMHU2FsZm9yZDEaMBgGA1UE.ChMRQ0
17c7a0 39 4e 54 30 52 50 49 45 4e 42 49 45 78 70 62 57 6c 30 5a 57 51 78 4b 7a 41 70 42 67 4e 56 42 41 9NT0RPIENBIExpbWl0ZWQxKzApBgNVBA
17c7c0 4d 54 49 6b 4e 50 54 55 39 45 54 79 42 53 55 30 45 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 47 MTIkNPTU9ETyBSU0EgQ2VydGlmaWNhdG
17c7e0 6c 76 62 69 42 42 0a 64 58 52 6f 62 33 4a 70 64 48 6b 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 lvbiBB.dXRob3JpdHkwggIiMA0GCSqGS
17c800 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 52 36 Ib3DQEBAQUAA4ICDwAwggIKAoICAQCR6
17c820 46 53 53 30 67 70 57 73 61 77 4e 4a 4e 33 46 7a 30 52 6e 0a 64 4a 6b 72 4e 36 4e 39 49 33 41 41 FSS0gpWsawNJN3Fz0Rn.dJkrN6N9I3AA
17c840 63 62 78 54 33 38 54 36 4b 68 4b 50 53 33 38 51 56 72 32 66 63 48 4b 33 59 58 2f 4a 53 77 38 58 cbxT38T6KhKPS38QVr2fcHK3YX/JSw8X
17c860 70 7a 33 6a 73 41 52 68 37 76 38 52 6c 38 66 30 68 6a 34 4b 2b 6a 35 63 2b 5a 50 6d 4e 48 72 5a pz3jsARh7v8Rl8f0hj4K+j5c+ZPmNHrZ
17c880 0a 46 47 76 6e 6e 4c 4f 46 6f 49 4a 36 64 71 39 78 6b 4e 66 73 2f 51 33 36 6e 47 7a 36 33 37 43 .FGvnnLOFoIJ6dq9xkNfs/Q36nGz637C
17c8a0 43 39 42 52 2b 2b 62 37 45 70 69 39 50 66 35 6c 2f 74 66 78 6e 51 33 4b 39 44 41 44 57 69 65 74 C9BR++b7Epi9Pf5l/tfxnQ3K9DADWiet
17c8c0 72 4c 4e 50 74 6a 35 67 63 46 4b 74 2b 0a 35 65 4e 75 2f 4e 69 6f 35 4a 49 6b 32 6b 4e 72 59 72 rLNPtj5gcFKt+.5eNu/Nio5JIk2kNrYr
17c8e0 68 56 2f 65 72 42 76 47 79 32 69 2f 4d 4f 6a 5a 72 6b 6d 32 78 70 6d 66 68 34 53 44 42 46 31 61 hV/erBvGy2i/MOjZrkm2xpmfh4SDBF1a
17c900 33 68 44 54 78 46 59 50 77 79 6c 6c 45 6e 76 47 66 44 79 69 36 32 61 2b 70 47 0a 78 38 63 67 6f 3hDTxFYPwyllEnvGfDyi62a+pG.x8cgo
17c920 4c 45 66 5a 64 35 49 43 4c 71 6b 54 71 6e 79 67 30 59 33 68 4f 76 6f 7a 49 46 49 51 32 64 4f 63 LEfZd5ICLqkTqnyg0Y3hOvozIFIQ2dOc
17c940 69 71 62 58 4c 31 4d 47 79 69 4b 58 43 4a 37 74 4b 75 59 32 65 37 67 55 59 50 44 43 55 5a 4f 62 iqbXL1MGyiKXCJ7tKuY2e7gUYPDCUZOb
17c960 54 36 5a 2b 70 55 58 0a 32 6e 77 7a 56 30 45 38 6a 56 48 74 43 37 5a 63 72 79 78 6a 47 74 39 58 T6Z+pUX.2nwzV0E8jVHtC7ZcryxjGt9X
17c980 79 44 2b 38 36 56 33 45 6d 36 39 46 6d 65 4b 6a 57 69 53 30 75 71 6c 57 50 63 39 76 71 76 39 4a yD+86V3Em69FmeKjWiS0uqlWPc9vqv9J
17c9a0 57 4c 37 77 71 50 2f 30 75 4b 33 70 4e 2f 75 36 75 50 51 4c 0a 4f 76 6e 6f 51 30 49 65 69 64 69 WL7wqP/0uK3pN/u6uPQL.OvnoQ0Ieidi
17c9c0 45 79 78 50 78 32 62 76 68 69 57 43 34 6a 43 68 57 72 42 51 64 6e 41 72 6e 63 65 76 50 44 74 30 EyxPx2bvhiWC4jChWrBQdnArncevPDt0
17c9e0 39 71 5a 61 68 53 4c 30 38 39 36 2b 31 44 53 4a 4d 77 42 47 42 37 46 59 37 39 74 4f 69 34 6c 75 9qZahSL0896+1DSJMwBGB7FY79tOi4lu
17ca00 33 0a 73 67 51 69 55 70 57 41 6b 32 6e 6f 6a 6b 78 6c 38 5a 45 44 4c 58 42 30 41 75 71 4c 5a 78 3.sgQiUpWAk2nojkxl8ZEDLXB0AuqLZx
17ca20 55 70 61 56 49 43 75 39 66 66 55 47 70 56 52 72 2b 67 6f 79 68 68 66 33 44 51 77 36 4b 71 4c 43 UpaVICu9ffUGpVRr+goyhhf3DQw6KqLC
17ca40 47 71 52 38 34 6f 6e 41 5a 46 64 72 2b 43 0a 47 43 65 30 31 61 36 30 79 31 44 6d 61 2f 52 4d 68 GqR84onAZFdr+C.GCe01a60y1Dma/RMh
17ca60 6e 45 77 36 61 62 66 46 6f 62 67 32 50 39 41 33 66 76 51 51 6f 68 2f 6f 7a 4d 36 4c 6c 77 65 51 nEw6abfFobg2P9A3fvQQoh/ozM6LlweQ
17ca80 52 47 42 59 38 34 59 63 57 73 72 37 4b 61 4b 74 7a 46 63 4f 6d 70 48 34 4d 4e 35 0a 57 64 59 67 RGBY84YcWsr7KaKtzFcOmpH4MN5.WdYg
17caa0 47 71 2f 79 61 70 69 71 63 72 78 58 53 74 4a 4c 6e 62 73 51 2f 4c 42 4d 51 65 58 74 48 54 31 65 Gq/yapiqcrxXStJLnbsQ/LBMQeXtHT1e
17cac0 4b 4a 32 63 7a 4c 2b 7a 55 64 71 6e 52 2b 57 45 55 77 49 44 41 51 41 42 6f 30 49 77 51 44 41 64 KJ2czL+zUdqnR+WEUwIDAQABo0IwQDAd
17cae0 42 67 4e 56 48 51 34 45 0a 46 67 51 55 75 36 39 2b 41 6a 33 36 70 76 45 38 68 49 36 74 37 6a 69 BgNVHQ4E.FgQUu69+Aj36pvE8hI6t7ji
17cb00 59 37 4e 6b 79 4d 74 51 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 38 Y7NkyMtQwDgYDVR0PAQH/BAQDAgEGMA8
17cb20 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 0a 44 51 59 4a 4b 6f 5a 49 68 76 GA1UdEwEB/wQFMAMBAf8w.DQYJKoZIhv
17cb40 63 4e 41 51 45 4d 42 51 41 44 67 67 49 42 41 41 72 78 31 55 61 45 74 36 35 52 75 32 79 79 54 55 cNAQEMBQADggIBAArx1UaEt65Ru2yyTU
17cb60 45 55 41 4a 4e 4d 6e 4d 76 6c 77 46 54 50 6f 43 57 4f 41 76 6e 39 73 4b 49 4e 39 53 43 59 50 42 EUAJNMnMvlwFTPoCWOAvn9sKIN9SCYPB
17cb80 4d 74 0a 72 46 61 69 73 4e 5a 2b 45 5a 4c 70 4c 72 71 65 4c 70 70 79 73 62 30 5a 52 47 78 68 4e Mt.rFaisNZ+EZLpLrqeLppysb0ZRGxhN
17cba0 61 4b 61 74 42 59 53 61 56 71 4d 34 64 63 2b 70 42 72 6f 4c 77 50 30 72 6d 45 64 45 42 73 71 70 aKatBYSaVqM4dc+pBroLwP0rmEdEBsqp
17cbc0 49 74 36 78 66 34 46 70 75 48 41 31 73 6a 2b 0a 6e 71 36 50 4b 37 6f 39 6d 66 6a 59 63 77 6c 59 It6xf4FpuHA1sj+.nq6PK7o9mfjYcwlY
17cbe0 52 6d 36 6d 6e 50 54 58 4a 39 4f 56 32 6a 65 44 63 68 7a 54 63 2b 43 69 52 35 6b 44 4f 46 33 56 Rm6mnPTXJ9OV2jeDchzTc+CiR5kDOF3V
17cc00 53 58 6b 41 4b 52 7a 48 37 4a 73 67 48 41 63 6b 61 56 64 34 73 6a 6e 38 4f 6f 53 67 0a 74 5a 78 SXkAKRzH7JsgHAckaVd4sjn8OoSg.tZx
17cc20 38 6a 62 38 75 6b 32 49 6e 74 7a 6e 61 46 78 69 75 76 54 77 4a 61 50 2b 45 6d 7a 7a 56 31 67 73 8jb8uk2IntznaFxiuvTwJaP+EmzzV1gs
17cc40 44 34 31 65 65 46 50 66 52 36 30 2f 49 76 59 63 6a 74 37 5a 4a 51 33 6d 46 58 4c 72 72 6b 67 75 D41eeFPfR60/IvYcjt7ZJQ3mFXLrrkgu
17cc60 68 78 75 68 6f 71 45 77 57 0a 73 52 71 5a 43 75 68 54 4c 4a 4b 37 6f 51 6b 59 64 51 78 6c 71 48 hxuhoqEwW.sRqZCuhTLJK7oQkYdQxlqH
17cc80 76 4c 49 37 63 61 77 69 69 46 77 78 76 2f 30 43 74 69 37 36 52 37 43 5a 47 59 5a 34 77 55 41 63 vLI7cawiiFwxv/0Cti76R7CZGYZ4wUAc
17cca0 31 6f 42 6d 70 6a 49 58 55 44 67 49 69 4b 62 6f 48 47 68 66 4b 70 0a 70 43 33 6e 39 4b 55 6b 45 1oBmpjIXUDgIiKboHGhfKp.pC3n9KUkE
17ccc0 45 65 44 79 73 33 30 6a 58 6c 59 73 51 61 62 35 78 6f 71 32 5a 30 42 31 35 52 39 37 51 4e 4b 79 EeDys30jXlYsQab5xoq2Z0B15R97QNKy
17cce0 76 44 62 36 4b 6b 42 50 76 56 57 6d 63 6b 65 6a 6b 6b 39 75 2b 55 4a 75 65 42 50 53 5a 49 39 46 vDb6KkBPvVWmckejkk9u+UJueBPSZI9F
17cd00 6f 4a 41 0a 7a 4d 78 5a 78 75 59 36 37 52 49 75 61 54 78 73 6c 62 48 39 71 68 31 37 66 34 61 2b oJA.zMxZxuY67RIuaTxslbH9qh17f4a+
17cd20 48 67 34 79 52 76 76 37 45 34 39 31 66 30 79 4c 53 30 5a 6a 2f 67 41 30 51 48 44 42 77 37 6d 68 Hg4yRvv7E491f0yLS0Zj/gA0QHDBw7mh
17cd40 33 61 5a 77 34 67 53 7a 51 62 7a 70 67 4a 48 71 0a 5a 4a 78 36 34 53 49 44 71 5a 78 75 62 77 35 3aZw4gSzQbzpgJHq.ZJx64SIDqZxubw5
17cd60 6c 54 32 79 48 68 31 37 7a 62 71 44 35 64 61 57 62 51 4f 68 54 73 69 65 64 53 72 6e 41 64 79 47 lT2yHh17zbqD5daWbQOhTsiedSrnAdyG
17cd80 4e 2f 34 66 79 33 72 79 4d 37 78 66 66 74 30 6b 4c 30 66 4a 75 4d 41 73 61 44 6b 35 32 0a 37 52 N/4fy3ryM7xfft0kL0fJuMAsaDk52.7R
17cda0 48 38 39 65 6c 57 73 6e 32 2f 78 32 30 4b 6b 34 79 6c 30 4d 43 32 48 62 34 36 54 70 53 69 31 32 H89elWsn2/x20Kk4yl0MC2Hb46TpSi12
17cdc0 35 73 43 38 4b 4b 66 50 6f 67 38 38 54 6b 35 63 30 4e 71 4d 75 52 6b 72 46 38 68 65 79 31 46 47 5sC8KKfPog88Tk5c0NqMuRkrF8hey1FG
17cde0 6c 6d 44 6f 4c 6e 7a 63 37 49 0a 4c 61 5a 52 66 79 48 42 4e 56 4f 46 42 6b 70 64 6e 36 32 37 47 lmDoLnzc7I.LaZRfyHBNVOFBkpdn627G
17ce00 31 39 30 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 55 190.-----END.CERTIFICATE-----..U
17ce20 53 45 52 54 72 75 73 74 20 52 53 41 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f SERTrust.RSA.Certification.Autho
17ce40 72 69 74 79 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d rity.===========================
17ce60 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 ==========.-----BEGIN.CERTIFICAT
17ce80 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 33 6a 43 43 41 38 61 67 41 77 49 42 41 67 49 51 41 66 31 74 4d E-----.MIIF3jCCA8agAwIBAgIQAf1tM
17cea0 50 79 6a 79 6c 47 6f 47 37 78 6b 44 6a 55 44 4c 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 PyjylGoG7xkDjUDLTANBgkqhkiG9w0BA
17cec0 51 77 46 41 44 43 42 69 44 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 56 56 4d 78 45 7a 41 52 QwFADCBiDELMAkGA1UE.BhMCVVMxEzAR
17cee0 42 67 4e 56 42 41 67 54 43 6b 35 6c 64 79 42 4b 5a 58 4a 7a 5a 58 6b 78 46 44 41 53 42 67 4e 56 BgNVBAgTCk5ldyBKZXJzZXkxFDASBgNV
17cf00 42 41 63 54 43 30 70 6c 63 6e 4e 6c 65 53 42 44 61 58 52 35 4d 52 34 77 48 41 59 44 56 51 51 4b BAcTC0plcnNleSBDaXR5MR4wHAYDVQQK
17cf20 0a 45 78 56 55 61 47 55 67 56 56 4e 46 55 6c 52 53 56 56 4e 55 49 45 35 6c 64 48 64 76 63 6d 73 .ExVUaGUgVVNFUlRSVVNUIE5ldHdvcms
17cf40 78 4c 6a 41 73 42 67 4e 56 42 41 4d 54 4a 56 56 54 52 56 4a 55 63 6e 56 7a 64 43 42 53 55 30 45 xLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0E
17cf60 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 0a 64 47 6c 76 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 gQ2VydGlmaWNh.dGlvbiBBdXRob3JpdH
17cf80 6b 77 48 68 63 4e 4d 54 41 77 4d 6a 41 78 4d 44 41 77 4d 44 41 77 57 68 63 4e 4d 7a 67 77 4d 54 kwHhcNMTAwMjAxMDAwMDAwWhcNMzgwMT
17cfa0 45 34 4d 6a 4d 31 4f 54 55 35 57 6a 43 42 69 44 45 4c 4d 41 6b 47 41 31 55 45 0a 42 68 4d 43 56 E4MjM1OTU5WjCBiDELMAkGA1UE.BhMCV
17cfc0 56 4d 78 45 7a 41 52 42 67 4e 56 42 41 67 54 43 6b 35 6c 64 79 42 4b 5a 58 4a 7a 5a 58 6b 78 46 VMxEzARBgNVBAgTCk5ldyBKZXJzZXkxF
17cfe0 44 41 53 42 67 4e 56 42 41 63 54 43 30 70 6c 63 6e 4e 6c 65 53 42 44 61 58 52 35 4d 52 34 77 48 DASBgNVBAcTC0plcnNleSBDaXR5MR4wH
17d000 41 59 44 56 51 51 4b 0a 45 78 56 55 61 47 55 67 56 56 4e 46 55 6c 52 53 56 56 4e 55 49 45 35 6c AYDVQQK.ExVUaGUgVVNFUlRSVVNUIE5l
17d020 64 48 64 76 63 6d 73 78 4c 6a 41 73 42 67 4e 56 42 41 4d 54 4a 56 56 54 52 56 4a 55 63 6e 56 7a dHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVz
17d040 64 43 42 53 55 30 45 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 0a 64 47 6c 76 62 69 42 42 64 58 52 dCBSU0EgQ2VydGlmaWNh.dGlvbiBBdXR
17d060 6f 62 33 4a 70 64 48 6b 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 ob3JpdHkwggIiMA0GCSqGSIb3DQEBAQU
17d080 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 41 45 6d 55 58 4e 67 37 44 32 77 69 AA4ICDwAwggIKAoICAQCAEmUXNg7D2wi
17d0a0 7a 0a 30 4b 78 58 44 58 62 74 7a 53 66 54 54 4b 31 51 67 32 48 69 71 69 42 4e 43 53 31 6b 43 64 z.0KxXDXbtzSfTTK1Qg2HiqiBNCS1kCd
17d0c0 7a 4f 69 5a 2f 4d 50 61 6e 73 39 73 2f 42 33 50 48 54 73 64 5a 37 4e 79 67 52 4b 30 66 61 4f 63 zOiZ/MPans9s/B3PHTsdZ7NygRK0faOc
17d0e0 61 38 4f 68 6d 30 58 36 61 39 66 5a 32 6a 0a 59 30 4b 32 64 76 4b 70 4f 79 75 52 2b 4f 4a 76 30 a8Ohm0X6a9fZ2j.Y0K2dvKpOyuR+OJv0
17d100 4f 77 57 49 4a 41 4a 50 75 4c 6f 64 4d 6b 59 74 4a 48 55 59 6d 54 62 66 36 4d 47 38 59 67 59 61 OwWIJAJPuLodMkYtJHUYmTbf6MG8YgYa
17d120 70 41 69 50 4c 7a 2b 45 2f 43 48 46 48 76 32 35 42 2b 4f 31 4f 52 52 78 68 46 6e 0a 52 67 68 52 pAiPLz+E/CHFHv25B+O1ORRxhFn.RghR
17d140 79 34 59 55 56 44 2b 38 4d 2f 35 2b 62 4a 7a 2f 46 70 30 59 76 56 47 4f 4e 61 61 6e 5a 73 68 79 y4YUVD+8M/5+bJz/Fp0YvVGONaanZshy
17d160 5a 39 73 68 5a 72 48 55 6d 33 67 44 77 46 41 36 36 4d 7a 77 33 4c 79 65 54 50 36 76 42 5a 59 31 Z9shZrHUm3gDwFA66Mzw3LyeTP6vBZY1
17d180 48 31 64 61 74 2f 2f 4f 0a 2b 54 32 33 4c 4c 62 32 56 4e 33 49 35 78 49 36 54 61 35 4d 69 72 64 H1dat//O.+T23LLb2VN3I5xI6Ta5Mird
17d1a0 63 6d 72 53 33 49 44 33 4b 66 79 49 30 72 6e 34 37 61 47 59 42 52 4f 63 42 54 6b 5a 54 6d 7a 4e cmrS3ID3KfyI0rn47aGYBROcBTkZTmzN
17d1c0 67 39 35 53 2b 55 7a 65 51 63 30 50 7a 4d 73 4e 54 37 39 75 71 0a 2f 6e 52 4f 61 63 64 72 6a 47 g95S+UzeQc0PzMsNT79uq./nROacdrjG
17d1e0 43 54 33 73 54 48 44 4e 2f 68 4d 71 37 4d 6b 7a 74 52 65 4a 56 6e 69 2b 34 39 56 76 34 4d 30 47 CT3sTHDN/hMq7MkztReJVni+49Vv4M0G
17d200 6b 50 47 77 2f 7a 4a 53 5a 72 4d 32 33 33 62 6b 66 36 63 30 50 6c 66 67 36 6c 5a 72 45 70 66 44 kPGw/zJSZrM233bkf6c0Plfg6lZrEpfD
17d220 4b 45 0a 59 31 57 4a 78 41 33 42 6b 31 51 77 47 52 4f 73 30 33 30 33 70 2b 74 64 4f 6d 77 31 58 KE.Y1WJxA3Bk1QwGROs0303p+tdOmw1X
17d240 4e 74 42 31 78 4c 61 71 55 6b 4c 33 39 69 41 69 67 6d 54 59 6f 36 31 5a 73 38 6c 69 4d 32 45 75 NtB1xLaqUkL39iAigmTYo61Zs8liM2Eu
17d260 4c 45 2f 70 44 6b 50 32 51 4b 65 36 78 4a 4d 0a 6c 58 7a 7a 61 77 57 70 58 68 61 44 7a 4c 68 6e LE/pDkP2QKe6xJM.lXzzawWpXhaDzLhn
17d280 34 75 67 54 6e 63 78 62 67 74 4e 4d 73 2b 31 62 2f 39 37 6c 63 36 77 6a 4f 79 30 41 76 7a 56 56 4ugTncxbgtNMs+1b/97lc6wjOy0AvzVV
17d2a0 64 41 6c 4a 32 45 6c 59 47 6e 2b 53 4e 75 5a 52 6b 67 37 7a 4a 6e 30 63 54 52 65 38 0a 79 65 78 dAlJ2ElYGn+SNuZRkg7zJn0cTRe8.yex
17d2c0 44 4a 74 43 2f 51 56 39 41 71 55 52 45 39 4a 6e 6e 56 34 65 65 55 42 39 58 56 4b 67 2b 2f 58 52 DJtC/QV9AqURE9JnnV4eeUB9XVKg+/XR
17d2e0 6a 4c 37 46 51 5a 51 6e 6d 57 45 49 75 51 78 70 4d 74 50 41 6c 52 31 6e 36 42 42 36 54 31 43 5a jL7FQZQnmWEIuQxpMtPAlR1n6BB6T1CZ
17d300 47 53 6c 43 42 73 74 36 2b 0a 65 4c 66 38 5a 78 58 68 79 56 65 45 48 67 39 6a 31 75 6c 69 75 74 GSlCBst6+.eLf8ZxXhyVeEHg9j1uliut
17d320 5a 66 56 53 37 71 58 4d 59 6f 43 41 51 6c 4f 62 67 4f 4b 36 6e 79 54 4a 63 63 42 7a 38 4e 55 76 ZfVS7qXMYoCAQlObgOK6nyTJccBz8NUv
17d340 58 74 37 79 2b 43 44 77 49 44 41 51 41 42 6f 30 49 77 51 44 41 64 0a 42 67 4e 56 48 51 34 45 46 Xt7y+CDwIDAQABo0IwQDAd.BgNVHQ4EF
17d360 67 51 55 55 33 6d 2f 57 71 6f 72 53 73 39 55 67 4f 48 59 6d 38 43 64 38 72 49 44 5a 73 73 77 44 gQUU3m/WqorSs9UgOHYm8Cd8rIDZsswD
17d380 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f gYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/
17d3a0 77 51 46 0a 4d 41 4d 42 41 66 38 77 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4d 42 51 41 44 wQF.MAMBAf8wDQYJKoZIhvcNAQEMBQAD
17d3c0 67 67 49 42 41 46 7a 55 66 41 33 50 39 77 46 39 51 5a 6c 6c 44 48 50 46 55 70 2f 4c 2b 4d 2b 5a ggIBAFzUfA3P9wF9QZllDHPFUp/L+M+Z
17d3e0 42 6e 38 62 32 6b 4d 56 6e 35 34 43 56 56 65 57 0a 46 50 46 53 50 43 65 48 6c 43 6a 74 48 7a 6f Bn8b2kMVn54CVVeW.FPFSPCeHlCjtHzo
17d400 42 4e 36 4a 32 2f 46 4e 51 77 49 53 62 78 6d 74 4f 75 6f 77 68 54 36 4b 4f 56 57 4b 52 38 32 6b BN6J2/FNQwISbxmtOuowhT6KOVWKR82k
17d420 56 32 4c 79 49 34 38 53 71 43 2f 33 76 71 4f 6c 4c 56 53 6f 47 49 47 31 56 65 43 6b 5a 0a 37 6c V2LyI48SqC/3vqOlLVSoGIG1VeCkZ.7l
17d440 38 77 58 45 73 6b 45 56 58 2f 4a 4a 70 75 58 69 6f 72 37 67 74 4e 6e 33 2f 33 41 54 69 55 46 4a 8wXEskEVX/JJpuXior7gtNn3/3ATiUFJ
17d460 56 44 42 77 6e 37 59 4b 6e 75 48 4b 73 53 6a 4b 43 61 58 71 65 59 61 6c 6c 74 69 7a 38 49 2b 38 VDBwn7YKnuHKsSjKCaXqeYalltiz8I+8
17d480 6a 52 52 61 38 59 46 57 53 51 0a 45 67 39 7a 4b 43 37 46 34 69 52 4f 2f 46 6a 73 38 50 52 46 2f jRRa8YFWSQ.Eg9zKC7F4iRO/Fjs8PRF/
17d4a0 69 4b 7a 36 79 2b 4f 30 74 6c 46 59 51 58 42 6c 32 2b 6f 64 6e 4b 50 69 34 77 32 72 37 38 4e 42 iKz6y+O0tlFYQXBl2+odnKPi4w2r78NB
17d4c0 63 35 78 6a 65 61 6d 62 78 39 73 70 6e 46 69 78 64 6a 51 67 33 49 4d 0a 38 57 63 52 69 51 79 63 c5xjeambx9spnFixdjQg3IM.8WcRiQyc
17d4e0 45 30 78 79 4e 4e 2b 38 31 58 48 66 71 6e 48 64 34 62 6c 73 6a 44 77 53 58 57 58 61 76 56 63 53 E0xyNN+81XHfqnHd4blsjDwSXWXavVcS
17d500 74 6b 4e 72 2f 2b 58 65 54 57 59 52 55 63 2b 5a 72 75 77 58 74 75 68 78 6b 59 7a 65 53 66 37 64 tkNr/+XeTWYRUc+ZruwXtuhxkYzeSf7d
17d520 4e 58 47 69 0a 46 53 65 55 48 4d 39 68 34 79 61 37 62 36 4e 6e 4a 53 46 64 35 74 30 64 43 79 35 NXGi.FSeUHM9h4ya7b6NnJSFd5t0dCy5
17d540 6f 47 7a 75 43 72 2b 79 44 5a 34 58 55 6d 46 46 30 73 62 6d 5a 67 49 6e 2f 66 33 67 5a 58 48 6c oGzuCr+yDZ4XUmFF0sbmZgIn/f3gZXHl
17d560 4b 59 43 36 53 51 4b 35 4d 4e 79 6f 73 79 63 64 69 0a 79 41 35 64 39 7a 5a 62 79 75 41 6c 4a 51 KYC6SQK5MNyosycdi.yA5d9zZbyuAlJQ
17d580 47 30 33 52 6f 48 6e 48 63 41 50 39 44 63 31 65 77 39 31 50 71 37 50 38 79 46 31 6d 39 2f 71 53 G03RoHnHcAP9Dc1ew91Pq7P8yF1m9/qS
17d5a0 33 66 75 51 4c 33 39 5a 65 61 74 54 58 61 77 32 65 77 68 30 71 70 4b 4a 34 6a 6a 76 39 63 0a 4a 3fuQL39ZeatTXaw2ewh0qpKJ4jjv9c.J
17d5c0 32 76 68 73 45 2f 7a 42 2b 34 41 4c 74 52 5a 68 38 74 53 51 5a 58 71 39 45 66 58 37 6d 52 42 56 2vhsE/zB+4ALtRZh8tSQZXq9EfX7mRBV
17d5e0 58 79 4e 57 51 4b 56 33 57 4b 64 77 72 6e 75 57 69 68 30 68 4b 57 62 74 35 44 48 44 41 66 66 39 XyNWQKV3WKdwrnuWih0hKWbt5DHDAff9
17d600 59 6b 32 64 44 4c 57 4b 4d 47 77 0a 73 41 76 67 6e 45 7a 44 48 4e 62 38 34 32 6d 31 52 30 61 42 Yk2dDLWKMGw.sAvgnEzDHNb842m1R0aB
17d620 4c 36 4b 43 71 39 4e 6a 52 48 44 45 6a 66 38 74 4d 37 71 74 6a 33 75 31 63 49 69 75 50 68 6e 50 L6KCq9NjRHDEjf8tM7qtj3u1cIiuPhnP
17d640 51 43 6a 59 2f 4d 69 51 75 31 32 5a 49 76 56 53 35 6c 6a 46 48 34 67 78 0a 51 2b 36 49 48 64 66 QCjY/MiQu12ZIvVS5ljFH4gx.Q+6IHdf
17d660 47 6a 6a 78 44 61 68 32 6e 47 4e 35 39 50 52 62 78 59 76 6e 4b 6b 4b 6a 39 0a 2d 2d 2d 2d 2d 45 GjjxDah2nGN59PRbxYvnKkKj9.-----E
17d680 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 55 53 45 52 54 72 75 73 74 20 45 ND.CERTIFICATE-----..USERTrust.E
17d6a0 43 43 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 0a 3d 3d 3d 3d 3d CC.Certification.Authority.=====
17d6c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
17d6e0 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 .-----BEGIN.CERTIFICATE-----.MII
17d700 43 6a 7a 43 43 41 68 57 67 41 77 49 42 41 67 49 51 58 49 75 5a 78 56 71 55 78 64 4a 78 56 74 37 CjzCCAhWgAwIBAgIQXIuZxVqUxdJxVt7
17d720 4e 69 59 44 4d 4a 6a 41 4b 42 67 67 71 68 6b 6a 4f 50 51 51 44 41 7a 43 42 69 44 45 4c 4d 41 6b NiYDMJjAKBggqhkjOPQQDAzCBiDELMAk
17d740 47 41 31 55 45 42 68 4d 43 0a 56 56 4d 78 45 7a 41 52 42 67 4e 56 42 41 67 54 43 6b 35 6c 64 79 GA1UEBhMC.VVMxEzARBgNVBAgTCk5ldy
17d760 42 4b 5a 58 4a 7a 5a 58 6b 78 46 44 41 53 42 67 4e 56 42 41 63 54 43 30 70 6c 63 6e 4e 6c 65 53 BKZXJzZXkxFDASBgNVBAcTC0plcnNleS
17d780 42 44 61 58 52 35 4d 52 34 77 48 41 59 44 56 51 51 4b 45 78 56 55 0a 61 47 55 67 56 56 4e 46 55 BDaXR5MR4wHAYDVQQKExVU.aGUgVVNFU
17d7a0 6c 52 53 56 56 4e 55 49 45 35 6c 64 48 64 76 63 6d 73 78 4c 6a 41 73 42 67 4e 56 42 41 4d 54 4a lRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJ
17d7c0 56 56 54 52 56 4a 55 63 6e 56 7a 64 43 42 46 51 30 4d 67 51 32 56 79 64 47 6c 6d 61 57 4e 68 64 VVTRVJUcnVzdCBFQ0MgQ2VydGlmaWNhd
17d7e0 47 6c 76 0a 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 48 68 63 4e 4d 54 41 77 4d 6a 41 78 Glv.biBBdXRob3JpdHkwHhcNMTAwMjAx
17d800 4d 44 41 77 4d 44 41 77 57 68 63 4e 4d 7a 67 77 4d 54 45 34 4d 6a 4d 31 4f 54 55 35 57 6a 43 42 MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCB
17d820 69 44 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 0a 56 56 4d 78 45 7a 41 52 42 67 4e 56 42 41 67 iDELMAkGA1UEBhMC.VVMxEzARBgNVBAg
17d840 54 43 6b 35 6c 64 79 42 4b 5a 58 4a 7a 5a 58 6b 78 46 44 41 53 42 67 4e 56 42 41 63 54 43 30 70 TCk5ldyBKZXJzZXkxFDASBgNVBAcTC0p
17d860 6c 63 6e 4e 6c 65 53 42 44 61 58 52 35 4d 52 34 77 48 41 59 44 56 51 51 4b 45 78 56 55 0a 61 47 lcnNleSBDaXR5MR4wHAYDVQQKExVU.aG
17d880 55 67 56 56 4e 46 55 6c 52 53 56 56 4e 55 49 45 35 6c 64 48 64 76 63 6d 73 78 4c 6a 41 73 42 67 UgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBg
17d8a0 4e 56 42 41 4d 54 4a 56 56 54 52 56 4a 55 63 6e 56 7a 64 43 42 46 51 30 4d 67 51 32 56 79 64 47 NVBAMTJVVTRVJUcnVzdCBFQ0MgQ2VydG
17d8c0 6c 6d 61 57 4e 68 64 47 6c 76 0a 62 69 42 42 64 58 52 6f 62 33 4a 70 64 48 6b 77 64 6a 41 51 42 lmaWNhdGlv.biBBdXRob3JpdHkwdjAQB
17d8e0 67 63 71 68 6b 6a 4f 50 51 49 42 42 67 55 72 67 51 51 41 49 67 4e 69 41 41 51 61 72 46 52 61 71 gcqhkjOPQIBBgUrgQQAIgNiAAQarFRaq
17d900 66 6c 6f 49 2b 64 36 31 53 52 76 55 38 5a 61 32 45 75 72 78 74 57 32 0a 30 65 5a 7a 63 61 37 64 floI+d61SRvU8Za2EurxtW2.0eZzca7d
17d920 6e 4e 59 4d 59 66 33 62 6f 49 6b 44 75 41 55 55 37 46 66 4f 37 6c 30 2f 34 69 47 7a 7a 76 66 55 nNYMYf3boIkDuAUU7FfO7l0/4iGzzvfU
17d940 69 6e 6e 67 6f 34 4e 2b 4c 5a 66 51 59 63 54 78 6d 64 77 6c 6b 57 4f 72 66 7a 43 6a 74 48 44 69 inngo4N+LZfQYcTxmdwlkWOrfzCjtHDi
17d960 78 36 45 7a 0a 6e 50 4f 2f 4c 6c 78 54 73 56 2b 7a 66 54 4a 2f 69 6a 54 6a 65 58 6d 6a 51 6a 42 x6Ez.nPO/LlxTsV+zfTJ/ijTjeXmjQjB
17d980 41 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 51 36 34 51 6d 47 31 4d 38 5a 77 70 5a 32 64 45 6c AMB0GA1UdDgQWBBQ64QmG1M8ZwpZ2dEl
17d9a0 32 33 4f 41 31 78 6d 4e 6a 6d 6a 41 4f 42 67 4e 56 0a 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 23OA1xmNjmjAOBgNV.HQ8BAf8EBAMCAQ
17d9c0 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4b 42 67 67 71 68 6b YwDwYDVR0TAQH/BAUwAwEB/zAKBggqhk
17d9e0 6a 4f 50 51 51 44 41 77 4e 6f 41 44 42 6c 41 6a 41 32 5a 36 45 57 43 4e 7a 6b 6c 77 42 42 0a 48 jOPQQDAwNoADBlAjA2Z6EWCNzklwBB.H
17da00 55 36 2b 34 57 4d 42 7a 7a 75 71 51 68 46 6b 6f 4a 32 55 4f 51 49 52 65 56 78 37 48 66 70 6b 75 U6+4WMBzzuqQhFkoJ2UOQIReVx7Hfpku
17da20 65 34 57 51 72 4f 2f 69 73 49 4a 78 4f 7a 6b 73 55 30 43 4d 51 44 70 4b 6d 46 48 6a 46 4a 4b 53 e4WQrO/isIJxOzksU0CMQDpKmFHjFJKS
17da40 30 34 59 63 50 62 57 52 4e 5a 75 0a 39 59 4f 36 62 56 69 39 4a 4e 6c 57 53 4f 72 76 78 4b 4a 47 04YcPbWRNZu.9YO6bVi9JNlWSOrvxKJG
17da60 67 59 68 71 4f 6b 62 52 71 5a 74 4e 79 57 48 61 30 56 31 58 61 68 67 3d 0a 2d 2d 2d 2d 2d 45 4e gYhqOkbRqZtNyWHa0V1Xahg=.-----EN
17da80 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 6c 6f 62 61 6c 53 69 67 6e 20 45 D.CERTIFICATE-----..GlobalSign.E
17daa0 43 43 20 52 6f 6f 74 20 43 41 20 2d 20 52 34 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d CC.Root.CA.-.R4.================
17dac0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 ===========.-----BEGIN.CERTIFICA
17dae0 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 42 34 54 43 43 41 59 65 67 41 77 49 42 41 67 49 52 4b 6a 69 6b TE-----.MIIB4TCCAYegAwIBAgIRKjik
17db00 48 4a 59 4b 42 4e 35 43 73 69 69 6c 43 2b 67 30 6d 41 49 77 43 67 59 49 4b 6f 5a 49 7a 6a 30 45 HJYKBN5CsiilC+g0mAIwCgYIKoZIzj0E
17db20 41 77 49 77 55 44 45 6b 4d 43 49 47 41 31 55 45 43 78 4d 62 0a 52 32 78 76 59 6d 46 73 55 32 6c AwIwUDEkMCIGA1UECxMb.R2xvYmFsU2l
17db40 6e 62 69 42 46 51 30 4d 67 55 6d 39 76 64 43 42 44 51 53 41 74 49 46 49 30 4d 52 4d 77 45 51 59 nbiBFQ0MgUm9vdCBDQSAtIFI0MRMwEQY
17db60 44 56 51 51 4b 45 77 70 48 62 47 39 69 59 57 78 54 61 57 64 75 4d 52 4d 77 45 51 59 44 56 51 51 DVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQ
17db80 44 0a 45 77 70 48 62 47 39 69 59 57 78 54 61 57 64 75 4d 42 34 58 44 54 45 79 4d 54 45 78 4d 7a D.EwpHbG9iYWxTaWduMB4XDTEyMTExMz
17dba0 41 77 4d 44 41 77 4d 46 6f 58 44 54 4d 34 4d 44 45 78 4f 54 41 7a 4d 54 51 77 4e 31 6f 77 55 44 AwMDAwMFoXDTM4MDExOTAzMTQwN1owUD
17dbc0 45 6b 4d 43 49 47 41 31 55 45 43 78 4d 62 0a 52 32 78 76 59 6d 46 73 55 32 6c 6e 62 69 42 46 51 EkMCIGA1UECxMb.R2xvYmFsU2lnbiBFQ
17dbe0 30 4d 67 55 6d 39 76 64 43 42 44 51 53 41 74 49 46 49 30 4d 52 4d 77 45 51 59 44 56 51 51 4b 45 0MgUm9vdCBDQSAtIFI0MRMwEQYDVQQKE
17dc00 77 70 48 62 47 39 69 59 57 78 54 61 57 64 75 4d 52 4d 77 45 51 59 44 56 51 51 44 0a 45 77 70 48 wpHbG9iYWxTaWduMRMwEQYDVQQD.EwpH
17dc20 62 47 39 69 59 57 78 54 61 57 64 75 4d 46 6b 77 45 77 59 48 4b 6f 5a 49 7a 6a 30 43 41 51 59 49 bG9iYWxTaWduMFkwEwYHKoZIzj0CAQYI
17dc40 4b 6f 5a 49 7a 6a 30 44 41 51 63 44 51 67 41 45 75 4d 5a 35 30 34 39 73 4a 51 36 66 4c 6a 6b 5a KoZIzj0DAQcDQgAEuMZ5049sJQ6fLjkZ
17dc60 48 41 4f 6b 72 70 72 6c 0a 4f 51 63 4a 46 73 70 6a 73 62 6d 47 2b 49 70 58 77 56 66 4f 51 76 70 HAOkrprl.OQcJFspjsbmG+IpXwVfOQvp
17dc80 7a 6f 66 64 6c 51 76 38 65 77 51 43 79 62 6e 4d 4f 2f 38 63 68 35 52 69 6b 71 74 6c 78 50 36 6a zofdlQv8ewQCybnMO/8ch5RikqtlxP6j
17dca0 55 75 63 36 4d 48 61 4e 43 4d 45 41 77 44 67 59 44 56 52 30 50 0a 41 51 48 2f 42 41 51 44 41 67 Uuc6MHaNCMEAwDgYDVR0P.AQH/BAQDAg
17dcc0 45 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 EGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR
17dce0 30 4f 42 42 59 45 46 46 53 77 65 36 31 46 75 4f 4a 41 66 2f 73 4b 62 76 75 2b 4d 38 6b 38 6f 34 0OBBYEFFSwe61FuOJAf/sKbvu+M8k8o4
17dd00 54 56 0a 4d 41 6f 47 43 43 71 47 53 4d 34 39 42 41 4d 43 41 30 67 41 4d 45 55 43 49 51 44 63 6b TV.MAoGCCqGSM49BAMCA0gAMEUCIQDck
17dd20 71 47 67 45 36 62 50 41 37 44 6d 78 43 47 58 6b 50 6f 55 56 79 30 44 37 4f 34 38 30 32 37 4b 71 qGgE6bPA7DmxCGXkPoUVy0D7O48027Kq
17dd40 47 78 32 76 4b 4c 65 75 77 49 67 4a 36 69 46 0a 4a 7a 57 62 56 73 61 6a 38 6b 66 53 74 32 34 62 Gx2vKLeuwIgJ6iF.JzWbVsaj8kfSt24b
17dd60 41 67 41 58 71 6d 65 6d 46 5a 48 65 2b 70 54 73 65 77 76 34 6e 34 51 3d 0a 2d 2d 2d 2d 2d 45 4e AgAXqmemFZHe+pTsewv4n4Q=.-----EN
17dd80 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 47 6c 6f 62 61 6c 53 69 67 6e 20 45 D.CERTIFICATE-----..GlobalSign.E
17dda0 43 43 20 52 6f 6f 74 20 43 41 20 2d 20 52 35 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d CC.Root.CA.-.R5.================
17ddc0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 ===========.-----BEGIN.CERTIFICA
17dde0 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 43 48 6a 43 43 41 61 53 67 41 77 49 42 41 67 49 52 59 46 6c 4a TE-----.MIICHjCCAaSgAwIBAgIRYFlJ
17de00 34 43 59 75 75 31 58 35 43 6e 65 4b 63 66 6c 4b 32 47 77 77 43 67 59 49 4b 6f 5a 49 7a 6a 30 45 4CYuu1X5CneKcflK2GwwCgYIKoZIzj0E
17de20 41 77 4d 77 55 44 45 6b 4d 43 49 47 41 31 55 45 43 78 4d 62 0a 52 32 78 76 59 6d 46 73 55 32 6c AwMwUDEkMCIGA1UECxMb.R2xvYmFsU2l
17de40 6e 62 69 42 46 51 30 4d 67 55 6d 39 76 64 43 42 44 51 53 41 74 49 46 49 31 4d 52 4d 77 45 51 59 nbiBFQ0MgUm9vdCBDQSAtIFI1MRMwEQY
17de60 44 56 51 51 4b 45 77 70 48 62 47 39 69 59 57 78 54 61 57 64 75 4d 52 4d 77 45 51 59 44 56 51 51 DVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQ
17de80 44 0a 45 77 70 48 62 47 39 69 59 57 78 54 61 57 64 75 4d 42 34 58 44 54 45 79 4d 54 45 78 4d 7a D.EwpHbG9iYWxTaWduMB4XDTEyMTExMz
17dea0 41 77 4d 44 41 77 4d 46 6f 58 44 54 4d 34 4d 44 45 78 4f 54 41 7a 4d 54 51 77 4e 31 6f 77 55 44 AwMDAwMFoXDTM4MDExOTAzMTQwN1owUD
17dec0 45 6b 4d 43 49 47 41 31 55 45 43 78 4d 62 0a 52 32 78 76 59 6d 46 73 55 32 6c 6e 62 69 42 46 51 EkMCIGA1UECxMb.R2xvYmFsU2lnbiBFQ
17dee0 30 4d 67 55 6d 39 76 64 43 42 44 51 53 41 74 49 46 49 31 4d 52 4d 77 45 51 59 44 56 51 51 4b 45 0MgUm9vdCBDQSAtIFI1MRMwEQYDVQQKE
17df00 77 70 48 62 47 39 69 59 57 78 54 61 57 64 75 4d 52 4d 77 45 51 59 44 56 51 51 44 0a 45 77 70 48 wpHbG9iYWxTaWduMRMwEQYDVQQD.EwpH
17df20 62 47 39 69 59 57 78 54 61 57 64 75 4d 48 59 77 45 41 59 48 4b 6f 5a 49 7a 6a 30 43 41 51 59 46 bG9iYWxTaWduMHYwEAYHKoZIzj0CAQYF
17df40 4b 34 45 45 41 43 49 44 59 67 41 45 52 30 55 4f 6c 76 74 39 58 62 2f 70 4f 64 45 68 2b 4a 38 4c K4EEACIDYgAER0UOlvt9Xb/pOdEh+J8L
17df60 74 74 56 37 48 70 49 36 0a 53 46 6b 63 38 47 49 78 4c 63 42 36 4b 50 34 61 70 31 79 7a 74 73 79 ttV7HpI6.SFkc8GIxLcB6KP4ap1yztsy
17df80 58 35 30 58 55 57 50 72 52 64 32 31 44 6f 73 43 48 5a 54 51 4b 48 33 72 64 36 7a 77 7a 6f 63 57 X50XUWPrRd21DosCHZTQKH3rd6zwzocW
17dfa0 64 54 61 52 76 51 5a 55 34 66 38 6b 65 68 4f 76 52 6e 6b 6d 53 0a 68 35 53 48 44 44 71 46 53 6d dTaRvQZU4f8kehOvRnkmS.h5SHDDqFSm
17dfc0 61 66 6e 56 6d 54 54 5a 64 68 42 6f 5a 4b 6f 30 49 77 51 44 41 4f 42 67 4e 56 48 51 38 42 41 66 afnVmTTZdhBoZKo0IwQDAOBgNVHQ8BAf
17dfe0 38 45 42 41 4d 43 41 51 59 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/z
17e000 41 64 0a 42 67 4e 56 48 51 34 45 46 67 51 55 50 65 59 70 53 4a 76 71 42 38 6f 68 52 45 6f 6d 33 Ad.BgNVHQ4EFgQUPeYpSJvqB8ohREom3
17e020 6d 37 65 30 6f 50 51 6e 31 6b 77 43 67 59 49 4b 6f 5a 49 7a 6a 30 45 41 77 4d 44 61 41 41 77 5a m7e0oPQn1kwCgYIKoZIzj0EAwMDaAAwZ
17e040 51 49 78 41 4f 56 70 45 73 6c 75 32 38 59 78 0a 75 67 6c 42 34 5a 66 34 2b 2f 32 61 34 6e 30 53 QIxAOVpEslu28Yx.uglB4Zf4+/2a4n0S
17e060 79 65 31 38 5a 4e 50 4c 42 53 57 4c 56 74 6d 67 35 31 35 64 54 67 75 44 6e 46 74 32 4b 61 41 4a ye18ZNPLBSWLVtmg515dTguDnFt2KaAJ
17e080 4a 69 46 71 59 67 49 77 63 64 4b 31 6a 31 7a 71 4f 2b 46 34 43 59 57 6f 64 5a 49 37 0a 79 46 7a JiFqYgIwcdK1j1zqO+F4CYWodZI7.yFz
17e0a0 39 53 4f 38 4e 64 43 4b 6f 43 4f 4a 75 78 55 6e 4f 78 77 79 38 70 32 46 70 38 66 63 37 34 53 72 9SO8NdCKoCOJuxUnOxwy8p2Fp8fc74Sr
17e0c0 4c 2b 53 76 7a 5a 70 41 33 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d L+SvzZpA3.-----END.CERTIFICATE--
17e0e0 2d 2d 2d 0a 0a 53 74 61 61 74 20 64 65 72 20 4e 65 64 65 72 6c 61 6e 64 65 6e 20 52 6f 6f 74 20 ---..Staat.der.Nederlanden.Root.
17e100 43 41 20 2d 20 47 33 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d CA.-.G3.========================
17e120 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 ==========.-----BEGIN.CERTIFICAT
17e140 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 64 44 43 43 41 31 79 67 41 77 49 42 41 67 49 45 41 4a 69 69 4f E-----.MIIFdDCCA1ygAwIBAgIEAJiiO
17e160 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 61 4d 51 73 77 43 51 59 44 56 TANBgkqhkiG9w0BAQsFADBaMQswCQYDV
17e180 51 51 47 45 77 4a 4f 54 44 45 65 4d 42 77 47 41 31 55 45 0a 43 67 77 56 55 33 52 68 59 58 51 67 QQGEwJOTDEeMBwGA1UE.CgwVU3RhYXQg
17e1a0 5a 47 56 79 49 45 35 6c 5a 47 56 79 62 47 46 75 5a 47 56 75 4d 53 73 77 4b 51 59 44 56 51 51 44 ZGVyIE5lZGVybGFuZGVuMSswKQYDVQQD
17e1c0 44 43 4a 54 64 47 46 68 64 43 42 6b 5a 58 49 67 54 6d 56 6b 5a 58 4a 73 59 57 35 6b 5a 57 34 67 DCJTdGFhdCBkZXIgTmVkZXJsYW5kZW4g
17e1e0 0a 55 6d 39 76 64 43 42 44 51 53 41 74 49 45 63 7a 4d 42 34 58 44 54 45 7a 4d 54 45 78 4e 44 45 .Um9vdCBDQSAtIEczMB4XDTEzMTExNDE
17e200 78 4d 6a 67 30 4d 6c 6f 58 44 54 49 34 4d 54 45 78 4d 7a 49 7a 4d 44 41 77 4d 46 6f 77 57 6a 45 xMjg0MloXDTI4MTExMzIzMDAwMFowWjE
17e220 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 0a 54 6b 77 78 48 6a 41 63 42 67 4e 56 42 41 6f 4d 46 56 LMAkGA1UEBhMC.TkwxHjAcBgNVBAoMFV
17e240 4e 30 59 57 46 30 49 47 52 6c 63 69 42 4f 5a 57 52 6c 63 6d 78 68 62 6d 52 6c 62 6a 45 72 4d 43 N0YWF0IGRlciBOZWRlcmxhbmRlbjErMC
17e260 6b 47 41 31 55 45 41 77 77 69 55 33 52 68 59 58 51 67 5a 47 56 79 49 45 35 6c 0a 5a 47 56 79 62 kGA1UEAwwiU3RhYXQgZGVyIE5l.ZGVyb
17e280 47 46 75 5a 47 56 75 49 46 4a 76 62 33 51 67 51 30 45 67 4c 53 42 48 4d 7a 43 43 41 69 49 77 44 GFuZGVuIFJvb3QgQ0EgLSBHMzCCAiIwD
17e2a0 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 49 50 41 44 43 43 41 67 6f 43 67 QYJKoZIhvcNAQEBBQADggIPADCCAgoCg
17e2c0 67 49 42 41 4c 34 79 0a 6f 6c 51 50 63 50 73 73 58 46 6e 72 62 4d 53 6b 55 65 69 46 4b 72 50 4d gIBAL4y.olQPcPssXFnrbMSkUeiFKrPM
17e2e0 53 6a 54 79 73 46 2f 7a 44 73 63 63 50 56 4d 65 69 41 68 6f 32 47 38 39 72 63 4b 65 7a 49 4a 6e SjTysF/zDsccPVMeiAho2G89rcKezIJn
17e300 42 79 65 48 61 48 45 36 6e 33 57 57 49 6b 59 46 73 4f 32 74 0a 78 31 75 65 4b 74 36 63 2f 44 72 ByeHaHE6n3WWIkYFsO2t.x1ueKt6c/Dr
17e320 47 6c 61 66 31 46 32 63 59 35 79 39 4a 43 41 78 63 7a 2b 62 4d 4e 4f 31 34 2b 31 43 78 33 47 73 Glaf1F2cY5y9JCAxcz+bMNO14+1Cx3Gs
17e340 79 38 4b 4c 2b 74 6a 7a 6b 37 46 71 58 78 7a 38 65 63 41 67 77 6f 4e 7a 46 73 32 31 76 30 49 4a y8KL+tjzk7FqXxz8ecAgwoNzFs21v0IJ
17e360 79 0a 45 61 76 53 67 57 68 5a 67 68 65 33 65 4a 4a 67 2b 73 7a 65 50 34 54 72 6a 54 67 7a 6b 41 y.EavSgWhZghe3eJJg+szeP4TrjTgzkA
17e380 70 79 49 2f 6f 31 7a 43 5a 78 4d 64 46 79 4b 4a 4c 5a 57 79 4e 74 5a 72 56 74 42 30 4c 72 70 6a pyI/o1zCZxMdFyKJLZWyNtZrVtB0Lrpj
17e3a0 50 4f 6b 74 76 41 39 6d 78 6a 65 4d 33 4b 0a 54 6a 32 31 35 56 4b 62 38 62 34 37 35 6c 52 67 73 POktvA9mxjeM3K.Tj215VKb8b475lRgs
17e3c0 47 59 65 43 61 73 48 2f 6c 53 4a 45 55 4c 52 39 79 53 36 59 48 67 61 6d 50 66 4a 45 66 30 57 77 GYeCasH/lSJEULR9yS6YHgamPfJEf0Ww
17e3e0 54 55 61 56 48 58 76 51 39 50 6c 72 6b 37 4f 35 33 76 44 78 6b 35 68 55 55 75 72 0a 6d 6b 56 4c TUaVHXvQ9Plrk7O53vDxk5hUUur.mkVL
17e400 6f 52 39 42 76 55 68 54 46 58 46 6b 43 34 61 7a 35 53 36 2b 7a 71 51 62 77 53 6d 45 6f 72 58 4c oR9BvUhTFXFkC4az5S6+zqQbwSmEorXL
17e420 43 43 4e 32 51 79 49 6b 48 78 63 45 31 47 36 63 78 76 78 2f 4b 32 59 61 37 49 72 6c 31 73 39 4e CCN2QyIkHxcE1G6cxvx/K2Ya7Irl1s9N
17e440 39 57 4d 4a 74 78 55 35 0a 31 6e 75 73 36 2b 4e 38 36 55 37 38 64 55 4c 49 37 56 69 56 44 41 5a 9WMJtxU5.1nus6+N86U78dULI7ViVDAZ
17e460 43 6f 70 7a 33 35 48 43 7a 33 33 4a 76 57 6a 64 41 69 64 69 46 70 4e 66 78 43 39 35 44 47 64 52 Copz35HCz33JvWjdAidiFpNfxC95DGdR
17e480 4b 57 43 79 4d 69 6a 6d 65 76 34 53 48 38 52 59 37 4e 67 7a 70 0a 30 37 54 4b 62 42 6c 42 55 67 KWCyMijmev4SH8RY7Ngzp.07TKbBlBUg
17e4a0 6d 68 48 62 42 71 76 34 4c 76 63 46 45 68 4d 74 77 46 64 6f 7a 4c 39 32 54 6b 41 31 43 76 6a 4a mhHbBqv4LvcFEhMtwFdozL92TkA1CvjJ
17e4c0 46 6e 71 38 58 79 37 6c 6a 59 33 72 37 33 35 7a 48 50 62 4d 6b 37 63 63 48 56 69 4c 56 6c 76 4d Fnq8Xy7ljY3r735zHPbMk7ccHViLVlvM
17e4e0 44 6f 0a 46 78 63 48 45 72 56 63 30 71 73 67 6b 37 54 6d 67 6f 4e 77 4e 73 58 4e 6f 34 32 74 69 Do.FxcHErVc0qsgk7TmgoNwNsXNo42ti
17e500 2b 79 6a 77 55 4f 48 35 6b 50 69 4e 4c 36 56 69 7a 58 74 42 7a 6e 61 71 42 31 36 6e 7a 61 65 45 +yjwUOH5kPiNL6VizXtBznaqB16nzaeE
17e520 72 41 4d 5a 52 4b 51 46 57 44 5a 4a 6b 42 45 0a 34 31 5a 67 70 52 44 55 61 6a 7a 39 51 64 77 4f rAMZRKQFWDZJkBE.41ZgpRDUajz9QdwO
17e540 57 6b 65 32 37 35 64 68 64 55 2f 5a 2f 73 65 79 48 64 54 74 58 55 6d 7a 71 57 72 4c 5a 6f 51 54 Wke275dhdU/Z/seyHdTtXUmzqWrLZoQT
17e560 31 56 79 67 33 4e 39 75 64 77 62 52 63 58 58 49 56 32 2b 76 44 33 64 62 41 67 4d 42 0a 41 41 47 1Vyg3N9udwbRcXXIV2+vD3dbAgMB.AAG
17e580 6a 51 6a 42 41 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 44 67 59 jQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgY
17e5a0 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 52 DVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR
17e5c0 55 72 66 72 48 6b 6c 65 75 0a 79 6a 57 63 4c 68 4c 37 35 4c 70 64 49 4e 79 55 56 7a 41 4e 42 67 UrfrHkleu.yjWcLhL75LpdINyUVzANBg
17e5e0 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 41 4f 43 41 67 45 41 4d 4a 6d 64 42 54 4c 49 58 67 kqhkiG9w0BAQsFAAOCAgEAMJmdBTLIXg
17e600 34 37 6d 41 45 36 69 71 54 6e 42 2f 64 36 2b 4f 65 61 33 31 42 44 0a 55 35 63 71 50 63 6f 38 52 47mAE6iqTnB/d6+Oea31BD.U5cqPco8R
17e620 35 67 75 34 52 56 37 38 5a 4c 7a 59 64 71 51 4a 52 5a 6c 77 4a 39 55 58 51 34 44 4f 31 74 33 41 5gu4RV78ZLzYdqQJRZlwJ9UXQ4DO1t3A
17e640 70 79 45 74 67 32 59 58 7a 54 64 4f 32 50 43 77 79 69 42 77 70 77 70 4c 69 6e 69 79 4d 4d 42 38 pyEtg2YXzTdO2PCwyiBwpwpLiniyMMB8
17e660 6a 50 71 0a 4b 71 72 4d 43 51 6a 33 5a 57 66 47 7a 64 2f 54 74 69 75 6e 76 63 7a 52 44 6e 42 66 jPq.KqrMCQj3ZWfGzd/TtiunvczRDnBf
17e680 75 43 50 52 79 35 46 4f 43 76 54 49 65 75 58 5a 59 7a 62 42 31 4e 2f 38 49 70 66 33 59 46 33 71 uCPRy5FOCvTIeuXZYzbB1N/8Ipf3YF3q
17e6a0 4b 53 39 59 73 72 31 59 76 59 32 57 54 78 42 31 0a 76 30 68 37 50 56 47 48 6f 54 78 30 49 73 4c KS9Ysr1YvY2WTxB1.v0h7PVGHoTx0IsL
17e6c0 38 42 33 2b 41 33 4d 53 73 2f 6d 72 42 63 44 43 77 36 59 35 70 34 69 78 70 67 5a 51 4a 75 74 33 8B3+A3MSs/mrBcDCw6Y5p4ixpgZQJut3
17e6e0 2b 54 63 43 44 6a 4a 52 59 77 45 59 67 72 35 77 66 41 76 67 31 56 55 6b 76 52 74 54 41 0a 38 4b +TcCDjJRYwEYgr5wfAvg1VUkvRtTA.8K
17e700 43 57 41 67 38 7a 78 58 48 7a 6e 69 4e 39 6c 4c 66 39 4f 74 4d 4a 67 77 59 68 2f 57 41 39 72 6a CWAg8zxXHzniN9lLf9OtMJgwYh/WA9rj
17e720 4c 41 30 75 36 4e 70 76 44 6e 74 49 4a 38 43 73 78 77 79 58 6d 41 2b 50 35 4d 39 7a 57 45 47 59 LA0u6NpvDntIJ8CsxwyXmA+P5M9zWEGY
17e740 6f 78 2b 77 72 5a 31 33 2b 62 0a 38 4b 4b 61 61 38 4d 46 53 75 31 42 59 42 51 77 30 61 6f 52 51 ox+wrZ13+b.8KKaa8MFSu1BYBQw0aoRQ
17e760 6d 37 54 49 77 49 45 43 38 5a 6c 33 64 31 53 64 39 71 42 61 37 4b 6f 2b 67 45 34 75 5a 62 71 4b m7TIwIEC8Zl3d1Sd9qBa7Ko+gE4uZbqK
17e780 6d 78 6e 6c 34 6d 55 6e 72 7a 68 56 4e 58 6b 61 6e 6a 76 53 72 30 72 0a 6d 6a 31 41 66 73 62 41 mxnl4mUnrzhVNXkanjvSr0r.mj1AfsbA
17e7a0 64 64 4a 75 2b 32 67 77 37 4f 79 4c 6e 66 6c 4a 4e 5a 6f 61 4c 4e 6d 7a 6c 54 6e 56 48 70 4c 33 ddJu+2gw7OyLnflJNZoaLNmzlTnVHpL3
17e7c0 70 72 6c 6c 4c 2b 55 39 62 54 70 49 54 41 6a 63 35 43 67 53 4b 4c 35 39 4e 56 7a 71 34 42 5a 2b prllL+U9bTpITAjc5CgSKL59NVzq4BZ+
17e7e0 45 78 74 71 0a 31 7a 37 58 6e 76 77 74 64 62 4c 42 46 4e 55 6a 41 39 74 62 62 77 73 2b 65 43 38 Extq.1z7XnvwtdbLBFNUjA9tbbws+eC8
17e800 4e 33 6a 4f 4e 46 72 64 49 35 34 4f 61 67 51 39 37 77 55 4e 4e 56 51 51 58 4f 45 70 52 31 56 6d N3jONFrdI54OagQ97wUNNVQQXOEpR1Vm
17e820 69 69 58 54 54 6e 37 34 65 53 39 66 47 62 62 65 49 0a 4a 47 39 67 6b 61 53 43 68 56 74 57 51 62 iiXTTn74eS9fGbbeI.JG9gkaSChVtWQb
17e840 7a 51 52 4b 74 71 45 37 37 52 4c 46 69 33 45 6a 4e 59 73 6a 64 6a 33 42 50 31 6c 42 30 2f 51 46 zQRKtqE77RLFi3EjNYsjdj3BP1lB0/QF
17e860 48 31 54 2f 55 36 37 63 6a 46 36 38 49 65 48 52 61 56 65 73 64 2b 51 6e 47 54 62 6b 73 56 0a 74 H1T/U67cjF68IeHRaVesd+QnGTbksV.t
17e880 7a 44 66 71 75 31 58 68 55 69 73 48 57 72 64 4f 57 6e 6b 34 58 6c 34 76 73 34 46 76 36 45 4d 39 zDfqu1XhUisHWrdOWnk4Xl4vs4Fv6EM9
17e8a0 34 42 37 49 57 63 6e 4d 46 6b 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 4B7IWcnMFk=.-----END.CERTIFICATE
17e8c0 2d 2d 2d 2d 2d 0a 0a 53 74 61 61 74 20 64 65 72 20 4e 65 64 65 72 6c 61 6e 64 65 6e 20 45 56 20 -----..Staat.der.Nederlanden.EV.
17e8e0 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d Root.CA.========================
17e900 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
17e920 2d 2d 2d 2d 0a 4d 49 49 46 63 44 43 43 41 31 69 67 41 77 49 42 41 67 49 45 41 4a 69 57 6a 54 41 ----.MIIFcDCCA1igAwIBAgIEAJiWjTA
17e940 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 59 4d 51 73 77 43 51 59 44 56 51 51 NBgkqhkiG9w0BAQsFADBYMQswCQYDVQQ
17e960 47 45 77 4a 4f 54 44 45 65 4d 42 77 47 41 31 55 45 0a 43 67 77 56 55 33 52 68 59 58 51 67 5a 47 GEwJOTDEeMBwGA1UE.CgwVU3RhYXQgZG
17e980 56 79 49 45 35 6c 5a 47 56 79 62 47 46 75 5a 47 56 75 4d 53 6b 77 4a 77 59 44 56 51 51 44 44 43 VyIE5lZGVybGFuZGVuMSkwJwYDVQQDDC
17e9a0 42 54 64 47 46 68 64 43 42 6b 5a 58 49 67 54 6d 56 6b 5a 58 4a 73 59 57 35 6b 5a 57 34 67 0a 52 BTdGFhdCBkZXIgTmVkZXJsYW5kZW4g.R
17e9c0 56 59 67 55 6d 39 76 64 43 42 44 51 54 41 65 46 77 30 78 4d 44 45 79 4d 44 67 78 4d 54 45 35 4d VYgUm9vdCBDQTAeFw0xMDEyMDgxMTE5M
17e9e0 6a 6c 61 46 77 30 79 4d 6a 45 79 4d 44 67 78 4d 54 45 77 4d 6a 68 61 4d 46 67 78 43 7a 41 4a 42 jlaFw0yMjEyMDgxMTEwMjhaMFgxCzAJB
17ea00 67 4e 56 42 41 59 54 41 6b 35 4d 0a 4d 52 34 77 48 41 59 44 56 51 51 4b 44 42 56 54 64 47 46 68 gNVBAYTAk5M.MR4wHAYDVQQKDBVTdGFh
17ea20 64 43 42 6b 5a 58 49 67 54 6d 56 6b 5a 58 4a 73 59 57 35 6b 5a 57 34 78 4b 54 41 6e 42 67 4e 56 dCBkZXIgTmVkZXJsYW5kZW4xKTAnBgNV
17ea40 42 41 4d 4d 49 46 4e 30 59 57 46 30 49 47 52 6c 63 69 42 4f 5a 57 52 6c 0a 63 6d 78 68 62 6d 52 BAMMIFN0YWF0IGRlciBOZWRl.cmxhbmR
17ea60 6c 62 69 42 46 56 69 42 53 62 32 39 30 49 45 4e 42 4d 49 49 43 49 6a 41 4e 42 67 6b 71 68 6b 69 lbiBFViBSb290IENBMIICIjANBgkqhki
17ea80 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 67 38 41 4d 49 49 43 43 67 4b 43 41 67 45 41 34 38 64 G9w0BAQEFAAOCAg8AMIICCgKCAgEA48d
17eaa0 2b 69 66 6b 6b 0a 53 7a 72 53 4d 34 4d 31 4c 47 6e 73 33 41 6d 6b 34 31 47 6f 4a 53 74 35 75 41 +ifkk.SzrSM4M1LGns3Amk41GoJSt5uA
17eac0 67 39 34 4a 47 36 68 49 58 47 68 61 54 4b 35 73 6b 75 55 36 54 4a 4a 42 37 39 56 57 5a 78 58 53 g94JG6hIXGhaTK5skuU6TJJB79VWZxXS
17eae0 7a 46 59 47 67 45 74 39 6e 43 55 69 59 34 69 4b 54 57 0a 4f 30 43 6d 77 73 30 2f 7a 5a 69 54 73 zFYGgEt9nCUiY4iKTW.O0Cmws0/zZiTs
17eb00 31 51 55 57 4a 5a 56 31 56 44 2b 68 71 32 6b 59 33 39 63 68 2f 61 4f 35 69 65 53 5a 78 65 53 41 1QUWJZV1VD+hq2kY39ch/aO5ieSZxeSA
17eb20 67 4d 73 33 4e 5a 6d 64 4f 33 64 5a 2f 2f 42 59 59 31 6a 54 77 2b 62 62 52 63 77 4a 75 2b 72 0a gMs3NZmdO3dZ//BYY1jTw+bbRcwJu+r.
17eb40 30 68 38 51 6f 50 6e 46 66 78 5a 70 67 51 4e 48 37 52 35 6f 6a 58 4b 68 54 62 49 6d 78 72 70 73 0h8QoPnFfxZpgQNH7R5ojXKhTbImxrps
17eb60 58 32 33 57 72 39 47 78 45 34 36 70 72 66 4e 65 61 58 55 6d 47 44 35 42 4b 79 46 2f 37 6f 74 64 X23Wr9GxE46prfNeaXUmGD5BKyF/7otd
17eb80 42 77 61 64 51 38 51 70 43 69 76 38 0a 4b 6a 36 47 79 7a 79 44 4f 76 6e 4a 44 64 72 46 6d 65 4b BwadQ8QpCiv8.Kj6GyzyDOvnJDdrFmeK
17eba0 38 65 45 45 7a 64 75 47 2f 4c 31 33 6c 70 4a 68 51 44 42 58 64 34 50 71 63 66 7a 68 6f 30 4c 4b 8eEEzduG/L13lpJhQDBXd4Pqcfzho0LK
17ebc0 6d 65 71 66 52 4d 62 31 2b 69 6c 67 6e 51 37 4f 36 4d 35 48 54 70 35 67 56 0a 58 4a 72 6d 30 77 meqfRMb1+ilgnQ7O6M5HTp5gV.XJrm0w
17ebe0 39 31 32 66 78 42 6d 4a 63 2b 71 69 58 62 6a 35 49 75 73 48 73 4d 58 2f 46 6a 71 54 66 35 6d 33 912fxBmJc+qiXbj5IusHsMX/FjqTf5m3
17ec00 56 70 54 43 67 6d 4a 64 72 56 38 68 4a 77 52 56 58 6a 33 33 4e 65 4e 2f 55 68 62 4a 43 4f 4e 56 VpTCgmJdrV8hJwRVXj33NeN/UhbJCONV
17ec20 72 4a 30 79 50 72 0a 30 38 43 2b 65 4b 78 43 4b 46 68 6d 70 55 5a 74 63 41 4c 58 45 50 6c 4c 56 rJ0yPr.08C+eKxCKFhmpUZtcALXEPlLV
17ec40 50 78 64 68 6b 71 48 7a 33 2f 4b 52 61 77 52 57 72 55 67 55 59 30 76 69 45 65 58 4f 63 44 50 75 PxdhkqHz3/KRawRWrUgUY0viEeXOcDPu
17ec60 73 42 43 41 55 43 5a 53 43 45 4c 61 36 66 53 2f 5a 62 56 0a 30 62 35 47 6e 55 6e 67 43 36 61 67 sBCAUCZSCELa6fS/ZbV.0b5GnUngC6ag
17ec80 49 6b 34 34 30 4d 45 38 4d 4c 78 77 6a 79 78 31 7a 4e 44 46 6a 46 45 37 50 5a 51 49 5a 43 5a 68 Ik440ME8MLxwjyx1zNDFjFE7PZQIZCZh
17eca0 66 62 6e 44 5a 59 38 55 6e 43 48 51 71 76 30 58 63 67 4f 50 76 5a 75 4d 35 6c 35 54 6e 72 6d 64 fbnDZY8UnCHQqv0XcgOPvZuM5l5Tnrmd
17ecc0 0a 37 34 4b 37 34 62 7a 69 63 6b 46 62 49 5a 54 54 52 54 65 55 30 64 38 4a 4f 56 33 6e 49 36 71 .74K74bzickFbIZTTRTeU0d8JOV3nI6q
17ece0 61 48 63 70 74 71 41 71 47 68 59 71 43 76 6b 49 48 31 76 49 34 67 6e 50 61 68 31 76 6c 50 4e 4f aHcptqAqGhYqCvkIH1vI4gnPah1vlPNO
17ed00 65 50 71 63 37 6e 76 51 44 73 2f 6e 78 0a 66 52 4e 30 41 76 2b 37 6f 65 58 36 41 48 6b 63 70 6d ePqc7nvQDs/nx.fRN0Av+7oeX6AHkcpm
17ed20 5a 42 69 46 78 67 56 36 59 75 43 63 53 36 2f 5a 72 50 70 78 39 41 77 37 76 4d 57 67 70 56 53 7a ZBiFxgV6YuCcS6/ZrPpx9Aw7vMWgpVSz
17ed40 73 34 64 6c 47 34 59 34 75 45 6c 42 62 6d 56 76 4d 43 41 77 45 41 41 61 4e 43 0a 4d 45 41 77 44 s4dlG4Y4uElBbmVvMCAwEAAaNC.MEAwD
17ed60 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4f 42 67 4e 56 48 51 38 42 41 wYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BA
17ed80 66 38 45 42 41 4d 43 41 51 59 77 48 51 59 44 56 52 30 4f 42 42 59 45 46 50 36 72 41 4a 43 59 6e f8EBAMCAQYwHQYDVR0OBBYEFP6rAJCYn
17eda0 69 54 38 71 63 77 61 0a 69 76 73 6e 75 4c 38 77 62 71 67 37 4d 41 30 47 43 53 71 47 53 49 62 33 iT8qcwa.ivsnuL8wbqg7MA0GCSqGSIb3
17edc0 44 51 45 42 43 77 55 41 41 34 49 43 41 51 44 50 64 79 78 75 56 72 35 4f 73 37 61 45 41 4a 53 72 DQEBCwUAA4ICAQDPdyxuVr5Os7aEAJSr
17ede0 52 38 6b 4e 30 6e 62 48 68 70 38 64 42 39 4f 32 74 4c 73 49 0a 65 4b 39 70 30 67 74 4a 33 6a 50 R8kN0nbHhp8dB9O2tLsI.eK9p0gtJ3jP
17ee00 46 72 4b 33 43 69 41 4a 39 42 72 63 31 41 73 46 67 79 62 2f 45 36 4a 54 65 31 4e 4f 70 45 79 56 FrK3CiAJ9Brc1AsFgyb/E6JTe1NOpEyV
17ee20 61 2f 6d 36 69 72 6e 30 46 33 48 33 7a 62 50 42 2b 70 6f 33 75 32 64 66 4f 57 42 66 6f 71 53 6d a/m6irn0F3H3zbPB+po3u2dfOWBfoqSm
17ee40 75 0a 63 30 69 48 35 35 76 4b 62 69 6d 68 5a 46 38 5a 45 2f 65 75 42 68 44 2f 55 63 61 62 54 56 u.c0iH55vKbimhZF8ZE/euBhD/UcabTV
17ee60 55 6c 54 35 4f 5a 45 41 46 54 64 66 45 54 7a 73 65 6d 51 55 48 53 76 34 69 6c 66 30 58 38 72 4c UlT5OZEAFTdfETzsemQUHSv4ilf0X8rL
17ee80 69 6c 74 54 4d 4d 67 73 54 37 42 2f 5a 71 0a 35 53 57 45 58 77 62 4b 77 59 59 35 45 64 74 59 7a iltTMMgsT7B/Zq.5SWEXwbKwYY5EdtYz
17eea0 58 63 37 4c 4d 4a 4d 44 31 36 61 34 2f 43 72 50 6d 45 62 55 43 54 43 77 50 54 78 47 66 41 52 4b Xc7LMJMD16a4/CrPmEbUCTCwPTxGfARK
17eec0 62 61 6c 47 41 4b 62 31 32 4e 4d 63 49 78 48 6f 77 4e 44 58 4c 6c 64 52 71 41 4e 0a 62 2f 39 5a balGAKb12NMcIxHowNDXLldRqAN.b/9Z
17eee0 6a 72 37 64 6e 33 4c 44 57 79 76 66 6a 46 76 4f 35 51 78 47 62 4a 4b 79 43 71 4e 4d 56 45 49 59 jr7dn3LDWyvfjFvO5QxGbJKyCqNMVEIY
17ef00 46 52 49 59 76 64 72 38 75 6e 52 75 2f 38 47 32 6f 47 54 59 71 56 39 56 72 70 39 63 61 6e 61 57 FRIYvdr8unRu/8G2oGTYqV9Vrp9canaW
17ef20 32 48 4e 6e 68 2f 74 4e 0a 66 31 7a 75 61 63 70 7a 45 50 75 4b 71 66 32 65 76 54 59 34 53 55 6d 2HNnh/tN.f1zuacpzEPuKqf2evTY4SUm
17ef40 48 39 41 34 55 38 4f 6d 48 75 44 2b 6e 54 33 70 61 6a 6e 6e 55 6b 2b 53 37 61 46 4b 45 72 47 7a H9A4U8OmHuD+nT3pajnnUk+S7aFKErGz
17ef60 70 38 35 68 77 56 58 49 79 2b 54 53 72 4b 30 6d 31 7a 53 42 69 0a 35 44 70 36 5a 32 4f 72 6c 74 p85hwVXIy+TSrK0m1zSBi.5Dp6Z2Orlt
17ef80 78 74 72 70 66 73 2f 4a 39 32 56 6f 67 75 5a 73 39 62 74 73 6d 6b 73 4e 63 46 75 75 45 6e 4c 35 xtrpfs/J92VoguZs9btsmksNcFuuEnL5
17efa0 4f 37 4a 69 71 69 6b 37 41 62 38 34 36 2b 48 55 43 6a 75 54 61 50 50 6f 49 61 47 6c 36 49 36 6c O7Jiqik7Ab846+HUCjuTaPPoIaGl6I6l
17efc0 44 34 0a 57 65 4b 44 52 69 6b 4c 34 30 52 63 34 5a 57 32 61 5a 43 61 46 47 2b 58 72 6f 48 50 61 D4.WeKDRikL40Rc4ZW2aZCaFG+XroHPa
17efe0 4f 2b 5a 6d 72 36 31 35 2b 46 2f 2b 50 6f 54 52 78 5a 4d 7a 47 30 49 51 4f 65 4c 65 47 39 51 67 O+Zmr615+F/+PoTRxZMzG0IQOeLeG9Qg
17f000 6b 52 51 50 32 59 47 69 71 74 44 68 46 5a 4b 0a 44 79 41 74 68 67 37 31 30 74 76 53 65 6f 70 4c kRQP2YGiqtDhFZK.DyAthg710tvSeopL
17f020 7a 61 58 6f 54 76 46 65 4a 69 55 42 57 53 4f 67 66 74 4c 32 66 69 46 58 31 79 65 38 46 56 64 4d zaXoTvFeJiUBWSOgftL2fiFX1ye8FVdM
17f040 70 45 62 42 34 49 4d 65 44 45 78 4e 48 30 38 47 47 65 4c 35 71 50 51 36 67 71 47 79 0a 65 55 4e pEbB4IMeDExNH08GGeL5qPQ6gqGy.eUN
17f060 35 31 71 31 76 65 69 65 51 41 36 54 71 4a 49 63 2f 32 62 33 5a 36 66 4a 66 55 45 6b 63 37 75 7a 51q1veieQA6TqJIc/2b3Z6fJfUEkc7uz
17f080 58 4c 67 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a XLg==.-----END.CERTIFICATE-----.
17f0a0 0a 49 64 65 6e 54 72 75 73 74 20 43 6f 6d 6d 65 72 63 69 61 6c 20 52 6f 6f 74 20 43 41 20 31 0a .IdenTrust.Commercial.Root.CA.1.
17f0c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d ==============================.-
17f0e0 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 59 ----BEGIN.CERTIFICATE-----.MIIFY
17f100 44 43 43 41 30 69 67 41 77 49 42 41 67 49 51 43 67 46 43 67 41 41 41 41 55 55 6a 79 45 53 31 41 DCCA0igAwIBAgIQCgFCgAAAAUUjyES1A
17f120 41 41 41 41 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 4b 4d 51 73 77 43 AAAAjANBgkqhkiG9w0BAQsFADBKMQswC
17f140 51 59 44 56 51 51 47 0a 45 77 4a 56 55 7a 45 53 4d 42 41 47 41 31 55 45 43 68 4d 4a 53 57 52 6c QYDVQQG.EwJVUzESMBAGA1UEChMJSWRl
17f160 62 6c 52 79 64 58 4e 30 4d 53 63 77 4a 51 59 44 56 51 51 44 45 78 35 4a 5a 47 56 75 56 48 4a 31 blRydXN0MScwJQYDVQQDEx5JZGVuVHJ1
17f180 63 33 51 67 51 32 39 74 62 57 56 79 59 32 6c 68 62 43 42 53 0a 62 32 39 30 49 45 4e 42 49 44 45 c3QgQ29tbWVyY2lhbCBS.b290IENBIDE
17f1a0 77 48 68 63 4e 4d 54 51 77 4d 54 45 32 4d 54 67 78 4d 6a 49 7a 57 68 63 4e 4d 7a 51 77 4d 54 45 wHhcNMTQwMTE2MTgxMjIzWhcNMzQwMTE
17f1c0 32 4d 54 67 78 4d 6a 49 7a 57 6a 42 4b 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 56 55 7a 45 2MTgxMjIzWjBKMQswCQYDVQQGEwJVUzE
17f1e0 53 0a 4d 42 41 47 41 31 55 45 43 68 4d 4a 53 57 52 6c 62 6c 52 79 64 58 4e 30 4d 53 63 77 4a 51 S.MBAGA1UEChMJSWRlblRydXN0MScwJQ
17f200 59 44 56 51 51 44 45 78 35 4a 5a 47 56 75 56 48 4a 31 63 33 51 67 51 32 39 74 62 57 56 79 59 32 YDVQQDEx5JZGVuVHJ1c3QgQ29tbWVyY2
17f220 6c 68 62 43 42 53 62 32 39 30 49 45 4e 42 0a 49 44 45 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 lhbCBSb290IENB.IDEwggIiMA0GCSqGS
17f240 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 43 6e 55 Ib3DQEBAQUAA4ICDwAwggIKAoICAQCnU
17f260 42 6e 65 50 35 6b 39 31 44 4e 47 38 57 39 52 59 59 4b 79 71 55 2b 50 5a 34 6c 64 0a 68 4e 6c 54 BneP5k91DNG8W9RYYKyqU+PZ4ld.hNlT
17f280 33 51 77 6f 32 64 66 77 2f 36 36 56 51 33 4b 5a 2b 62 56 64 66 49 72 42 51 75 45 78 55 48 54 52 3Qwo2dfw/66VQ3KZ+bVdfIrBQuExUHTR
17f2a0 67 51 31 38 7a 5a 73 68 71 30 50 69 72 4b 31 65 68 6d 37 7a 43 59 6f 66 57 6a 4b 39 6f 75 75 55 gQ18zZshq0PirK1ehm7zCYofWjK9ouuU
17f2c0 2b 65 68 63 43 75 7a 2f 0a 6d 4e 4b 76 63 62 4f 30 55 35 39 4f 68 2b 2b 53 76 4c 33 73 54 7a 49 +ehcCuz/.mNKvcbO0U59Oh++SvL3sTzI
17f2e0 77 69 45 73 58 58 6c 66 45 55 38 4c 32 41 70 65 4e 32 57 49 72 76 79 51 66 59 6f 33 66 77 37 67 wiEsXXlfEU8L2ApeN2WIrvyQfYo3fw7g
17f300 70 53 30 6c 34 50 4a 4e 67 69 43 4c 38 6d 64 6f 32 79 4d 4b 69 0a 31 43 78 55 41 47 63 31 62 6e pS0l4PJNgiCL8mdo2yMKi.1CxUAGc1bn
17f320 4f 2f 41 6c 6a 77 70 4e 33 6c 73 4b 49 6d 65 73 72 67 4e 71 55 5a 46 76 58 39 74 2b 2b 75 50 30 O/AljwpN3lsKImesrgNqUZFvX9t++uP0
17f340 44 31 62 56 6f 45 2f 63 34 30 79 69 54 63 64 43 4d 62 58 54 4d 54 45 6c 33 45 41 53 58 32 4d 4e D1bVoE/c40yiTcdCMbXTMTEl3EASX2MN
17f360 30 43 0a 58 5a 2f 67 31 55 65 39 74 4f 73 62 6f 62 74 4a 53 64 69 66 57 77 4c 7a 69 75 51 6b 6b 0C.XZ/g1Ue9tOsbobtJSdifWwLziuQkk
17f380 4f 52 69 54 30 2f 42 72 34 73 4f 64 42 65 6f 30 58 4b 49 61 6e 6f 42 53 63 79 30 52 6e 6e 47 46 ORiT0/Br4sOdBeo0XKIanoBScy0RnnGF
17f3a0 37 48 61 6d 42 34 48 57 66 70 31 49 59 56 6c 0a 33 5a 42 57 7a 76 75 72 70 57 43 64 78 4a 33 35 7HamB4HWfp1IYVl.3ZBWzvurpWCdxJ35
17f3c0 55 72 43 4c 76 59 66 35 6a 79 73 6a 43 69 4e 32 4f 2f 63 7a 34 63 6b 41 38 32 6e 35 53 36 4c 67 UrCLvYf5jysjCiN2O/cz4ckA82n5S6Lg
17f3e0 54 72 78 2b 6b 7a 6d 45 42 2f 64 45 63 48 37 2b 42 31 72 6c 73 61 7a 52 47 4d 7a 79 0a 4e 65 56 Trx+kzmEB/dEcH7+B1rlsazRGMzy.NeV
17f400 4a 53 51 6a 4b 56 73 6b 39 2b 77 38 59 66 59 73 37 77 52 50 43 54 59 2f 4a 54 77 34 33 36 52 2b JSQjKVsk9+w8YfYs7wRPCTY/JTw436R+
17f420 68 44 6d 72 66 59 69 37 4c 4e 51 5a 52 65 53 7a 49 4a 54 6a 30 2b 6b 75 6e 69 56 79 63 30 75 4d hDmrfYi7LNQZReSzIJTj0+kuniVyc0uM
17f440 4e 4f 59 5a 4b 64 48 7a 56 0a 57 59 66 43 50 30 34 4d 58 46 4c 30 50 66 64 53 67 76 48 71 6f 36 NOYZKdHzV.WYfCP04MXFL0PfdSgvHqo6
17f460 7a 39 53 54 51 61 4b 50 4e 42 69 44 6f 54 37 75 6a 65 2f 35 6b 64 58 37 72 4c 36 42 37 79 75 56 z9STQaKPNBiDoT7uje/5kdX7rL6B7yuV
17f480 42 67 77 44 48 54 63 2b 58 76 76 71 44 74 4d 77 74 30 76 69 41 67 0a 78 47 64 73 38 41 67 44 65 BgwDHTc+XvvqDtMwt0viAg.xGds8AgDe
17f4a0 6c 57 41 66 30 5a 4f 6c 71 66 30 48 6a 37 68 39 74 67 4a 34 54 4e 6b 4b 32 50 58 4d 6c 36 66 2b lWAf0ZOlqf0Hj7h9tgJ4TNkK2PXMl6f+
17f4c0 63 42 37 44 33 68 76 6c 37 79 54 6d 76 6d 63 45 70 42 34 65 6f 43 48 46 64 64 79 64 4a 78 56 64 cB7D3hvl7yTmvmcEpB4eoCHFddydJxVd
17f4e0 48 69 78 0a 75 75 46 75 63 41 53 36 54 36 43 36 61 4d 4e 37 2f 7a 48 77 63 7a 30 39 6c 43 71 78 Hix.uuFucAS6T6C6aMN7/zHwcz09lCqx
17f500 43 30 45 4f 6f 50 35 4e 69 47 56 72 65 54 4f 30 31 77 49 44 41 51 41 42 6f 30 49 77 51 44 41 4f C0EOoP5NiGVreTO01wIDAQABo0IwQDAO
17f520 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 0a 41 51 59 77 44 77 59 44 56 52 30 54 41 51 48 BgNVHQ8BAf8EBAMC.AQYwDwYDVR0TAQH
17f540 2f 42 41 55 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 37 55 51 5a 77 4e 50 /BAUwAwEB/zAdBgNVHQ4EFgQU7UQZwNP
17f560 77 42 6f 76 75 70 48 75 2b 51 75 63 6d 56 4d 69 4f 4e 6e 59 77 44 51 59 4a 4b 6f 5a 49 0a 68 76 wBovupHu+QucmVMiONnYwDQYJKoZI.hv
17f580 63 4e 41 51 45 4c 42 51 41 44 67 67 49 42 41 41 32 75 6b 44 4c 32 70 6b 74 38 52 48 59 5a 59 52 cNAQELBQADggIBAA2ukDL2pkt8RHYZYR
17f5a0 34 6e 4b 4d 31 65 56 4f 38 6c 76 4f 4d 49 6b 50 6b 70 31 36 35 6f 43 4f 47 55 41 46 6a 76 4c 69 4nKM1eVO8lvOMIkPkp165oCOGUAFjvLi
17f5c0 35 2b 55 31 4b 4d 74 6c 77 48 0a 36 6f 69 36 6d 59 74 51 6c 4e 65 43 67 4e 39 68 43 51 43 54 72 5+U1KMtlwH.6oi6mYtQlNeCgN9hCQCTr
17f5e0 51 30 55 35 73 37 42 38 6a 65 55 65 4c 42 66 6e 4c 4f 69 63 37 69 50 42 5a 4d 34 7a 59 30 2b 73 Q0U5s7B8jeUeLBfnLOic7iPBZM4zY0+s
17f600 4c 6a 37 77 4d 2b 78 38 75 77 74 4c 52 76 4d 37 4b 71 61 73 36 70 67 0a 67 68 73 74 4f 38 4f 45 Lj7wM+x8uwtLRvM7Kqas6pg.ghstO8OE
17f620 50 56 65 4b 6c 68 36 63 64 62 6a 54 4d 4d 31 67 43 49 4f 51 30 34 35 55 38 55 31 6d 77 46 31 30 PVeKlh6cdbjTMM1gCIOQ045U8U1mwF10
17f640 41 30 43 6a 37 6f 56 2b 77 68 39 33 6e 41 62 6f 77 61 63 59 58 56 4b 56 37 63 6e 64 4a 5a 35 74 A0Cj7oV+wh93nAbowacYXVKV7cndJZ5t
17f660 2b 71 6e 74 0a 6f 7a 6f 30 30 46 6c 37 32 75 31 51 38 7a 57 2f 37 65 73 55 54 54 48 48 59 50 54 +qnt.ozo00Fl72u1Q8zW/7esUTTHHYPT
17f680 61 38 59 65 63 34 6b 6a 69 78 73 55 33 2b 77 59 51 2b 6e 56 5a 5a 6a 46 48 4b 64 70 32 6d 68 7a a8Yec4kjixsU3+wYQ+nVZZjFHKdp2mhz
17f6a0 70 67 71 37 76 6d 72 6c 52 39 34 67 6a 6d 6d 6d 56 0a 59 6a 7a 6c 56 59 41 32 31 31 51 43 2f 2f pgq7vmrlR94gjmmmV.YjzlVYA211QC//
17f6c0 47 35 58 63 37 55 49 32 2f 59 52 59 52 4b 57 32 58 76 69 51 7a 64 46 4b 63 67 79 78 69 6c 4a 62 G5Xc7UI2/YRYRKW2XviQzdFKcgyxilJb
17f6e0 51 4e 2b 51 48 77 6f 74 4c 30 41 4d 68 30 6a 71 45 71 53 49 35 6c 32 78 50 45 34 69 55 58 0a 66 QN+QHwotL0AMh0jqEqSI5l2xPE4iUX.f
17f700 65 75 2b 68 31 73 58 49 46 52 52 6b 30 70 54 41 77 76 73 58 63 6f 7a 37 57 4c 39 52 63 63 76 57 eu+h1sXIFRRk0pTAwvsXcoz7WL9RccvW
17f720 39 78 59 6f 49 41 35 35 76 72 58 2f 68 4d 55 70 75 30 39 6c 45 70 43 64 4e 54 44 64 31 6c 7a 7a 9xYoIA55vrX/hMUpu09lEpCdNTDd1lzz
17f740 59 39 47 76 6c 55 34 37 2f 72 6f 0a 6b 54 4c 71 6c 31 67 45 49 74 34 34 77 38 79 38 62 63 6b 7a Y9GvlU47/ro.kTLql1gEIt44w8y8bckz
17f760 4f 6d 6f 4b 61 54 2b 67 79 4f 70 79 6a 34 78 6a 68 69 4f 39 62 54 79 57 6e 70 58 67 53 55 79 71 OmoKaT+gyOpyj4xjhiO9bTyWnpXgSUyq
17f780 6f 72 6b 71 47 35 77 32 67 58 6a 74 77 2b 68 47 34 69 5a 5a 52 48 55 65 0a 32 58 57 4a 55 63 30 orkqG5w2gXjtw+hG4iZZRHUe.2XWJUc0
17f7a0 51 68 4a 31 68 59 4d 74 64 2b 5a 63 69 54 59 36 59 35 75 4e 2f 39 6c 75 37 72 73 33 4b 53 6f 46 QhJ1hYMtd+ZciTY6Y5uN/9lu7rs3KSoF
17f7c0 72 58 67 76 7a 55 65 46 30 4b 2b 6c 2b 4a 36 66 5a 6d 55 6c 4f 2b 4b 57 41 32 79 55 50 48 47 4e rXgvzUeF0K+l+J6fZmUlO+KWA2yUPHGN
17f7e0 69 69 73 6b 7a 0a 5a 32 73 38 45 49 50 47 72 64 36 6f 7a 52 61 4f 6a 66 41 48 4e 33 47 66 38 71 iiskz.Z2s8EIPGrd6ozRaOjfAHN3Gf8q
17f800 76 38 51 66 58 42 69 2b 77 41 4e 31 30 4a 35 55 36 41 37 2f 71 78 58 44 67 47 70 52 74 4b 34 64 v8QfXBi+wAN10J5U6A7/qxXDgGpRtK4d
17f820 77 34 4c 54 7a 63 71 78 2b 51 47 74 56 4b 6e 4f 37 52 0a 63 47 7a 4d 37 76 52 58 2b 42 69 36 68 w4LTzcqx+QGtVKnO7R.cGzM7vRX+Bi6h
17f840 47 36 48 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 49 G6H.-----END.CERTIFICATE-----..I
17f860 64 65 6e 54 72 75 73 74 20 50 75 62 6c 69 63 20 53 65 63 74 6f 72 20 52 6f 6f 74 20 43 41 20 31 denTrust.Public.Sector.Root.CA.1
17f880 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .===============================
17f8a0 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d ==.-----BEGIN.CERTIFICATE-----.M
17f8c0 49 49 46 5a 6a 43 43 41 30 36 67 41 77 49 42 41 67 49 51 43 67 46 43 67 41 41 41 41 55 55 6a 7a IIFZjCCA06gAwIBAgIQCgFCgAAAAUUjz
17f8e0 30 5a 38 41 41 41 41 41 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 4e 4d 0Z8AAAAAjANBgkqhkiG9w0BAQsFADBNM
17f900 51 73 77 43 51 59 44 56 51 51 47 0a 45 77 4a 56 55 7a 45 53 4d 42 41 47 41 31 55 45 43 68 4d 4a QswCQYDVQQG.EwJVUzESMBAGA1UEChMJ
17f920 53 57 52 6c 62 6c 52 79 64 58 4e 30 4d 53 6f 77 4b 41 59 44 56 51 51 44 45 79 46 4a 5a 47 56 75 SWRlblRydXN0MSowKAYDVQQDEyFJZGVu
17f940 56 48 4a 31 63 33 51 67 55 48 56 69 62 47 6c 6a 49 46 4e 6c 59 33 52 76 0a 63 69 42 53 62 32 39 VHJ1c3QgUHVibGljIFNlY3Rv.ciBSb29
17f960 30 49 45 4e 42 49 44 45 77 48 68 63 4e 4d 54 51 77 4d 54 45 32 4d 54 63 31 4d 7a 4d 79 57 68 63 0IENBIDEwHhcNMTQwMTE2MTc1MzMyWhc
17f980 4e 4d 7a 51 77 4d 54 45 32 4d 54 63 31 4d 7a 4d 79 57 6a 42 4e 4d 51 73 77 43 51 59 44 56 51 51 NMzQwMTE2MTc1MzMyWjBNMQswCQYDVQQ
17f9a0 47 45 77 4a 56 0a 55 7a 45 53 4d 42 41 47 41 31 55 45 43 68 4d 4a 53 57 52 6c 62 6c 52 79 64 58 GEwJV.UzESMBAGA1UEChMJSWRlblRydX
17f9c0 4e 30 4d 53 6f 77 4b 41 59 44 56 51 51 44 45 79 46 4a 5a 47 56 75 56 48 4a 31 63 33 51 67 55 48 N0MSowKAYDVQQDEyFJZGVuVHJ1c3QgUH
17f9e0 56 69 62 47 6c 6a 49 46 4e 6c 59 33 52 76 63 69 42 53 0a 62 32 39 30 49 45 4e 42 49 44 45 77 67 VibGljIFNlY3RvciBS.b290IENBIDEwg
17fa00 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 gIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwg
17fa20 67 49 4b 41 6f 49 43 41 51 43 32 49 70 54 38 70 45 69 76 36 45 64 72 43 76 73 6e 64 75 54 79 0a gIKAoICAQC2IpT8pEiv6EdrCvsnduTy.
17fa40 50 34 6f 37 65 6b 6f 73 4d 53 71 4d 6a 62 43 70 77 7a 46 72 71 48 64 32 68 43 61 32 72 49 46 43 P4o7ekosMSqMjbCpwzFrqHd2hCa2rIFC
17fa60 44 51 6a 72 56 56 69 37 65 76 69 38 5a 58 33 79 6f 47 32 4c 71 45 66 70 59 6e 59 65 45 65 34 49 DQjrVVi7evi8ZX3yoG2LqEfpYnYeEe4I
17fa80 46 4e 47 79 52 42 62 30 36 74 44 36 0a 48 69 39 65 32 38 74 7a 51 61 36 38 41 4c 42 4b 4b 30 43 FNGyRBb06tD6.Hi9e28tzQa68ALBKK0C
17faa0 79 72 4f 45 37 53 38 49 74 6e 65 53 68 6d 2b 77 61 4f 68 37 77 43 4c 50 51 35 43 51 31 42 35 2b yrOE7S8ItneShm+waOh7wCLPQ5CQ1B5+
17fac0 63 74 4d 6c 53 62 64 73 48 79 6f 2b 31 57 2f 43 44 38 30 2f 48 4c 61 58 49 0a 72 63 75 56 49 4b ctMlSbdsHyo+1W/CD80/HLaXI.rcuVIK
17fae0 51 78 4b 46 64 59 57 75 53 4e 47 35 71 72 6e 67 30 4d 38 67 6f 7a 4f 53 49 35 43 70 63 75 38 31 QxKFdYWuSNG5qrng0M8gozOSI5Cpcu81
17fb00 4e 33 75 55 52 46 2f 59 54 4c 4e 69 43 42 57 53 32 61 62 32 31 49 53 47 48 4b 54 4e 39 54 30 61 N3uURF/YTLNiCBWS2ab21ISGHKTN9T0a
17fb20 39 53 76 45 53 66 0a 71 79 39 72 67 33 4c 76 64 59 44 61 42 6a 4d 62 58 63 6a 61 59 38 5a 4e 7a 9SvESf.qy9rg3LvdYDaBjMbXcjaY8ZNz
17fb40 61 78 6d 4d 63 33 52 33 6a 36 48 45 44 62 68 75 61 52 36 37 32 42 51 73 73 76 4b 70 6c 62 67 4e axmMc3R3j6HEDbhuaR672BQssvKplbgN
17fb60 36 2b 72 4e 42 4d 35 4a 65 67 35 5a 75 53 59 65 71 6f 53 0a 6d 4a 78 5a 5a 6f 59 2b 72 66 47 77 6+rNBM5Jeg5ZuSYeqoS.mJxZZoY+rfGw
17fb80 79 6a 34 47 44 33 76 77 45 55 73 33 6f 45 52 74 65 38 75 6f 6a 48 48 30 31 62 57 52 4e 73 7a 77 yj4GD3vwEUs3oERte8uojHH01bWRNszw
17fba0 46 63 59 72 33 6c 45 58 73 5a 64 4d 55 44 32 78 6c 56 6c 38 42 58 30 74 49 64 55 41 76 77 46 6e FcYr3lEXsZdMUD2xlVl8BX0tIdUAvwFn
17fbc0 0a 6f 6c 35 37 70 6c 7a 79 39 79 4c 78 6b 41 32 54 32 36 70 45 55 57 62 4d 66 58 59 44 36 32 71 .ol57plzy9yLxkA2T26pEUWbMfXYD62q
17fbe0 6f 4b 6a 67 5a 6c 33 59 4e 61 34 70 68 2b 62 7a 32 37 6e 62 39 63 43 76 64 4b 54 7a 34 43 68 35 oKjgZl3YNa4ph+bz27nb9cCvdKTz4Ch5
17fc00 62 51 68 79 4c 56 69 39 56 47 78 79 68 0a 4c 72 58 48 46 75 62 34 71 6a 79 53 6a 6d 6d 32 41 63 bQhyLVi9VGxyh.LrXHFub4qjySjmm2Ac
17fc20 47 31 68 70 32 4a 44 77 73 34 6c 46 54 6f 36 74 79 65 50 53 57 38 55 79 62 74 31 61 73 35 71 73 G1hp2JDws4lFTo6tyePSW8Uybt1as5qs
17fc40 56 41 54 46 53 72 73 72 54 5a 32 66 6a 58 63 74 73 63 76 47 32 39 5a 56 2f 76 0a 69 44 55 71 5a VATFSrsrTZ2fjXctscvG29ZV/v.iDUqZ
17fc60 69 2f 75 39 72 4e 6c 38 44 4f 4e 66 4a 68 42 61 55 59 50 51 78 78 70 2b 70 75 31 30 47 46 71 7a i/u9rNl8DONfJhBaUYPQxxp+pu10GFqz
17fc80 63 70 4c 32 55 79 51 52 71 73 56 57 61 46 48 56 43 6b 75 67 79 68 66 48 4d 4b 69 71 33 49 58 41 cpL2UyQRqsVWaFHVCkugyhfHMKiq3IXA
17fca0 41 61 4f 52 65 79 4c 0a 34 6a 4d 39 66 39 6f 5a 52 4f 52 69 63 73 50 66 49 73 62 79 56 74 54 64 AaOReyL.4jM9f9oZRORicsPfIsbyVtTd
17fcc0 58 35 56 79 37 57 31 66 39 30 67 44 57 2f 33 46 4b 71 44 32 63 79 4f 45 45 42 73 42 35 77 49 44 X5Vy7W1f90gDW/3FKqD2cyOEEBsB5wID
17fce0 41 51 41 42 6f 30 49 77 51 44 41 4f 42 67 4e 56 48 51 38 42 0a 41 66 38 45 42 41 4d 43 41 51 59 AQABo0IwQDAOBgNVHQ8B.Af8EBAMCAQY
17fd00 77 44 77 59 44 56 52 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 64 42 67 4e 56 48 51 34 wDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4
17fd20 45 46 67 51 55 34 33 48 67 6e 74 69 6e 51 74 6e 62 63 5a 46 72 6c 4a 50 72 77 36 50 52 46 4b 4d EFgQU43HgntinQtnbcZFrlJPrw6PRFKM
17fd40 77 0a 44 51 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 44 67 67 49 42 41 45 66 36 33 51 w.DQYJKoZIhvcNAQELBQADggIBAEf63Q
17fd60 71 77 45 5a 45 34 72 55 31 64 39 2b 55 4f 6c 31 51 5a 67 6b 69 48 56 49 79 71 5a 4a 6e 59 57 76 qwEZE4rU1d9+UOl1QZgkiHVIyqZJnYWv
17fd80 36 49 41 63 56 59 70 5a 6d 78 49 31 51 6a 0a 74 32 6f 64 49 46 66 6c 41 57 4a 42 46 39 4d 4a 32 6IAcVYpZmxI1Qj.t2odIFflAWJBF9MJ2
17fda0 33 58 4c 62 6c 53 51 64 66 34 61 6e 34 45 4b 77 74 33 58 39 77 6e 51 57 33 49 56 35 42 34 4a 61 3XLblSQdf4an4EKwt3X9wnQW3IV5B4Ja
17fdc0 6a 30 7a 38 79 47 61 35 68 56 2b 72 56 48 56 44 52 44 74 66 55 4c 41 6a 2b 37 41 0a 6d 67 6a 56 j0z8yGa5hV+rVHVDRDtfULAj+7A.mgjV
17fde0 51 64 5a 63 44 69 46 70 62 6f 42 68 44 68 58 41 75 4d 2f 46 53 52 4a 53 7a 4c 34 36 7a 4e 51 75 QdZcDiFpboBhDhXAuM/FSRJSzL46zNQu
17fe00 4f 41 58 65 4e 66 30 66 62 37 69 41 61 4a 67 39 54 61 44 4b 51 47 58 53 63 33 7a 31 69 39 6b 4b OAXeNf0fb7iAaJg9TaDKQGXSc3z1i9kK
17fe20 6c 54 2f 59 50 79 4e 74 0a 47 74 45 71 4a 42 6e 5a 68 62 4d 58 37 33 68 75 71 56 6a 52 49 39 50 lT/YPyNt.GtEqJBnZhbMX73huqVjRI9P
17fe40 48 45 2b 31 79 4a 58 39 64 73 58 4e 77 30 48 38 47 6c 77 6d 45 4b 59 42 68 48 66 70 65 2f 33 4f HE+1yJX9dsXNw0H8GlwmEKYBhHfpe/3O
17fe60 73 6f 4f 4f 4a 75 42 78 78 46 63 62 65 4d 58 38 53 33 4f 46 74 0a 6d 36 2f 6e 36 4a 39 31 65 45 soOOJuBxxFcbeMX8S3OFt.m6/n6J91eE
17fe80 79 72 52 6a 75 61 7a 72 38 46 47 46 31 4e 46 54 77 57 6d 68 6c 51 42 4a 71 79 6d 6d 39 6c 69 31 yrRjuazr8FGF1NFTwWmhlQBJqymm9li1
17fea0 4a 66 50 46 67 45 4b 43 58 41 5a 6d 45 78 66 72 6e 67 64 62 6b 61 71 49 48 57 63 68 65 7a 78 51 JfPFgEKCXAZmExfrngdbkaqIHWchezxQ
17fec0 4d 78 0a 4e 52 46 34 65 4b 4c 67 36 54 43 4d 66 34 44 66 57 4e 38 38 75 69 65 57 34 6f 41 30 62 Mx.NRF4eKLg6TCMf4DfWN88uieW4oA0b
17fee0 65 4f 59 30 32 51 6e 72 45 68 2b 4b 48 64 63 78 69 56 68 4a 66 69 46 44 47 58 36 78 44 49 76 70 eOY02QnrEh+KHdcxiVhJfiFDGX6xDIvp
17ff00 5a 67 46 35 50 67 4c 5a 78 59 57 78 6f 4b 34 0a 4d 68 6e 35 2b 62 6c 35 33 42 2f 4e 36 36 2b 72 ZgF5PgLZxYWxoK4.Mhn5+bl53B/N66+r
17ff20 44 74 30 62 32 30 58 6b 65 75 63 43 34 70 56 64 2f 47 6e 77 55 32 6c 68 6c 58 56 35 43 31 35 56 Dt0b20XkeucC4pVd/GnwU2lhlXV5C15V
17ff40 35 6a 67 63 6c 4b 6c 5a 4d 35 37 49 63 58 52 35 66 31 47 4a 74 73 68 71 75 44 44 49 0a 61 6a 6a 5jgclKlZM57IcXR5f1GJtshquDDI.ajj
17ff60 44 62 70 37 68 4e 78 62 71 42 57 4a 4d 57 78 4a 48 37 61 65 30 73 31 68 57 78 30 6e 7a 66 78 4a Dbp7hNxbqBWJMWxJH7ae0s1hWx0nzfxJ
17ff80 6f 43 54 46 78 38 47 33 34 54 6b 66 37 31 6f 58 75 78 56 68 41 47 61 51 64 70 2f 6c 4c 51 7a 66 oCTFx8G34Tkf71oXuxVhAGaQdp/lLQzf
17ffa0 63 61 46 70 50 7a 2b 76 43 0a 5a 48 54 65 74 42 58 5a 39 46 52 55 47 69 38 63 31 35 64 78 56 4a caFpPz+vC.ZHTetBXZ9FRUGi8c15dxVJ
17ffc0 43 4f 32 53 43 64 55 79 74 2f 71 34 2f 69 36 6a 43 38 55 44 66 76 38 55 65 31 66 58 77 73 42 4f CO2SCdUyt/q4/i6jC8UDfv8Ue1fXwsBO
17ffe0 78 6f 6e 62 52 4a 52 42 44 30 63 6b 73 63 5a 4f 66 38 35 6d 75 51 0a 33 57 6c 39 61 66 30 41 56 xonbRJRBD0ckscZOf85muQ.3Wl9af0AV
180000 71 57 33 72 4c 61 74 74 38 6f 2b 41 65 2b 63 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 qW3rLatt8o+Ae+c.-----END.CERTIFI
180020 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 45 6e 74 72 75 73 74 20 52 6f 6f 74 20 43 65 72 74 69 66 69 63 CATE-----..Entrust.Root.Certific
180040 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 20 2d 20 47 32 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ation.Authority.-.G2.===========
180060 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d ==============================.-
180080 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 50 ----BEGIN.CERTIFICATE-----.MIIEP
1800a0 6a 43 43 41 79 61 67 41 77 49 42 41 67 49 45 53 6c 4f 4d 4b 44 41 4e 42 67 6b 71 68 6b 69 47 39 jCCAyagAwIBAgIESlOMKDANBgkqhkiG9
1800c0 77 30 42 41 51 73 46 41 44 43 42 76 6a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 w0BAQsFADCBvjELMAkGA1UEBhMCVVMxF
1800e0 6a 41 55 42 67 4e 56 0a 42 41 6f 54 44 55 56 75 64 48 4a 31 63 33 51 73 49 45 6c 75 59 79 34 78 jAUBgNV.BAoTDUVudHJ1c3QsIEluYy4x
180100 4b 44 41 6d 42 67 4e 56 42 41 73 54 48 31 4e 6c 5a 53 42 33 64 33 63 75 5a 57 35 30 63 6e 56 7a KDAmBgNVBAsTH1NlZSB3d3cuZW50cnVz
180120 64 43 35 75 5a 58 51 76 62 47 56 6e 59 57 77 74 64 47 56 79 0a 62 58 4d 78 4f 54 41 33 42 67 4e dC5uZXQvbGVnYWwtdGVy.bXMxOTA3BgN
180140 56 42 41 73 54 4d 43 68 6a 4b 53 41 79 4d 44 41 35 49 45 56 75 64 48 4a 31 63 33 51 73 49 45 6c VBAsTMChjKSAyMDA5IEVudHJ1c3QsIEl
180160 75 59 79 34 67 4c 53 42 6d 62 33 49 67 59 58 56 30 61 47 39 79 61 58 70 6c 5a 43 42 31 63 32 55 uYy4gLSBmb3IgYXV0aG9yaXplZCB1c2U
180180 67 0a 62 32 35 73 65 54 45 79 4d 44 41 47 41 31 55 45 41 78 4d 70 52 57 35 30 63 6e 56 7a 64 43 g.b25seTEyMDAGA1UEAxMpRW50cnVzdC
1801a0 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 BSb290IENlcnRpZmljYXRpb24gQXV0aG
1801c0 39 79 61 58 52 35 49 43 30 67 52 7a 49 77 0a 48 68 63 4e 4d 44 6b 77 4e 7a 41 33 4d 54 63 79 4e 9yaXR5IC0gRzIw.HhcNMDkwNzA3MTcyN
1801e0 54 55 30 57 68 63 4e 4d 7a 41 78 4d 6a 41 33 4d 54 63 31 4e 54 55 30 57 6a 43 42 76 6a 45 4c 4d TU0WhcNMzAxMjA3MTc1NTU0WjCBvjELM
180200 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 46 6a 41 55 42 67 4e 56 42 41 6f 54 0a 44 55 56 75 AkGA1UEBhMCVVMxFjAUBgNVBAoT.DUVu
180220 64 48 4a 31 63 33 51 73 49 45 6c 75 59 79 34 78 4b 44 41 6d 42 67 4e 56 42 41 73 54 48 31 4e 6c dHJ1c3QsIEluYy4xKDAmBgNVBAsTH1Nl
180240 5a 53 42 33 64 33 63 75 5a 57 35 30 63 6e 56 7a 64 43 35 75 5a 58 51 76 62 47 56 6e 59 57 77 74 ZSB3d3cuZW50cnVzdC5uZXQvbGVnYWwt
180260 64 47 56 79 62 58 4d 78 0a 4f 54 41 33 42 67 4e 56 42 41 73 54 4d 43 68 6a 4b 53 41 79 4d 44 41 dGVybXMx.OTA3BgNVBAsTMChjKSAyMDA
180280 35 49 45 56 75 64 48 4a 31 63 33 51 73 49 45 6c 75 59 79 34 67 4c 53 42 6d 62 33 49 67 59 58 56 5IEVudHJ1c3QsIEluYy4gLSBmb3IgYXV
1802a0 30 61 47 39 79 61 58 70 6c 5a 43 42 31 63 32 55 67 62 32 35 73 0a 65 54 45 79 4d 44 41 47 41 31 0aG9yaXplZCB1c2Ugb25s.eTEyMDAGA1
1802c0 55 45 41 78 4d 70 52 57 35 30 63 6e 56 7a 64 43 42 53 62 32 39 30 49 45 4e 6c 63 6e 52 70 5a 6d UEAxMpRW50cnVzdCBSb290IENlcnRpZm
1802e0 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 49 43 30 67 52 7a 49 77 67 67 ljYXRpb24gQXV0aG9yaXR5IC0gRzIwgg
180300 45 69 0a 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 41 34 49 42 44 77 41 77 67 Ei.MA0GCSqGSIb3DQEBAQUAA4IBDwAwg
180320 67 45 4b 41 6f 49 42 41 51 43 36 68 4c 5a 79 32 35 34 4d 61 2b 4b 5a 36 54 41 42 70 33 62 71 4d gEKAoIBAQC6hLZy254Ma+KZ6TABp3bqM
180340 72 69 56 51 52 72 4a 32 6d 46 4f 57 48 4c 50 0a 2f 76 61 43 65 62 39 7a 59 51 59 4b 70 53 66 59 riVQRrJ2mFOWHLP./vaCeb9zYQYKpSfY
180360 73 31 2f 54 52 55 34 63 63 74 5a 4f 4d 76 4a 79 69 67 2f 33 67 78 6e 51 61 6f 43 41 41 45 55 65 s1/TRU4cctZOMvJyig/3gxnQaoCAAEUe
180380 73 4d 66 6e 6d 72 38 53 56 79 63 63 6f 32 67 76 43 6f 65 39 61 6d 73 4f 58 6d 58 7a 0a 48 48 66 sMfnmr8SVycco2gvCoe9amsOXmXz.HHf
1803a0 56 31 49 57 4e 63 43 47 30 73 7a 4c 6e 69 36 4c 56 68 6a 6b 43 73 62 6a 53 52 38 37 6b 79 55 6e V1IWNcCG0szLni6LVhjkCsbjSR87kyUn
1803c0 45 4f 36 66 65 2b 31 52 39 56 37 37 77 36 47 37 43 65 62 49 36 43 31 58 69 55 4a 67 57 4d 68 4e EO6fe+1R9V77w6G7CebI6C1XiUJgWMhN
1803e0 63 4c 33 68 57 77 63 4b 55 0a 73 2f 4a 61 35 43 65 61 6e 79 54 58 78 75 7a 51 6d 79 57 43 34 38 cL3hWwcKU.s/Ja5CeanyTXxuzQmyWC48
180400 7a 43 78 45 58 46 6a 4a 64 36 42 6d 73 71 45 5a 2b 70 43 6d 35 49 4f 32 2f 62 31 42 45 5a 51 76 zCxEXFjJd6BmsqEZ+pCm5IO2/b1BEZQv
180420 65 50 42 37 2f 31 55 31 2b 63 50 76 51 58 4c 4f 5a 70 72 45 34 79 0a 54 47 4a 33 36 72 66 6f 35 ePB7/1U1+cPvQXLOZprE4y.TGJ36rfo5
180440 62 73 30 76 42 6d 4c 72 70 78 52 35 37 64 2b 74 56 4f 78 4d 79 4c 6c 62 63 39 77 50 42 72 36 34 bs0vBmLrpxR57d+tVOxMyLlbc9wPBr64
180460 70 74 6e 74 6f 50 30 6a 61 57 76 59 6b 78 4e 34 46 69 73 5a 44 51 53 41 2f 69 32 6a 5a 52 6a 4a ptntoP0jaWvYkxN4FisZDQSA/i2jZRjJ
180480 4b 52 78 0a 41 67 4d 42 41 41 47 6a 51 6a 42 41 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 KRx.AgMBAAGjQjBAMA4GA1UdDwEB/wQE
1804a0 41 77 49 42 42 6a 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 30 47 AwIBBjAPBgNVHRMBAf8EBTADAQH/MB0G
1804c0 41 31 55 64 44 67 51 57 42 42 52 71 63 69 5a 36 0a 30 42 37 76 66 65 63 37 61 56 48 55 62 49 32 A1UdDgQWBBRqciZ6.0B7vfec7aVHUbI2
1804e0 66 6b 42 4a 6d 71 7a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 41 4f 43 41 51 45 fkBJmqzANBgkqhkiG9w0BAQsFAAOCAQE
180500 41 65 5a 38 64 6c 73 61 32 65 54 38 69 6a 59 66 54 68 77 4d 45 59 47 70 72 6d 69 35 5a 0a 69 58 AeZ8dlsa2eT8ijYfThwMEYGprmi5Z.iX
180520 4d 52 72 45 50 52 39 52 50 2f 6a 54 6b 72 77 50 4b 39 54 33 43 4d 71 53 2f 71 46 38 51 4c 56 4a MRrEPR9RP/jTkrwPK9T3CMqS/qF8QLVJ
180540 37 55 47 35 61 59 4d 7a 79 6f 72 57 4b 69 41 48 61 72 57 57 6c 75 42 68 31 2b 78 4c 6c 45 6a 5a 7UG5aYMzyorWKiAHarWWluBh1+xLlEjZ
180560 69 76 45 74 52 68 32 77 6f 5a 0a 52 6b 66 7a 36 2f 64 6a 77 55 41 46 51 4b 58 53 74 2f 53 31 6d ivEtRh2woZ.Rkfz6/djwUAFQKXSt/S1m
180580 6a 61 2f 71 59 68 32 69 41 52 56 42 43 75 63 68 33 38 61 4e 7a 78 2b 4c 61 55 61 32 4e 53 4a 58 ja/qYh2iARVBCuch38aNzx+LaUa2NSJX
1805a0 73 71 39 72 44 31 73 32 47 32 76 31 66 4e 32 44 38 30 37 69 44 67 69 0a 6e 57 79 54 6d 73 51 39 sq9rD1s2G2v1fN2D807iDgi.nWyTmsQ9
1805c0 76 34 49 62 5a 54 2b 6d 44 31 32 71 2f 4f 57 79 46 63 71 31 72 63 61 38 50 64 43 45 36 4f 6f 47 v4IbZT+mD12q/OWyFcq1rca8PdCE6OoG
1805e0 63 72 42 4e 4f 54 4a 34 76 7a 34 52 6e 41 75 6b 6e 5a 6f 68 38 2f 43 62 43 7a 42 34 32 38 48 63 crBNOTJ4vz4RnAuknZoh8/CbCzB428Hc
180600 68 30 50 2b 0a 76 47 4f 61 79 73 58 43 48 4d 6e 48 6a 66 38 37 45 6c 67 49 35 72 59 39 37 48 6f h0P+.vGOaysXCHMnHjf87ElgI5rY97Ho
180620 73 54 76 75 44 6c 73 34 4d 50 47 6d 48 56 48 4f 6b 63 38 4b 54 2f 31 45 51 72 42 56 55 41 64 6a sTvuDls4MPGmHVHOkc8KT/1EQrBVUAdj
180640 38 42 62 47 4a 6f 58 39 30 67 35 70 4a 31 39 78 4f 0a 65 34 70 49 62 34 74 46 39 67 3d 3d 0a 2d 8BbGJoX90g5pJ19xO.e4pIb4tF9g==.-
180660 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 45 6e 74 72 75 73 ----END.CERTIFICATE-----..Entrus
180680 74 20 52 6f 6f 74 20 43 65 72 74 69 66 69 63 61 74 69 6f 6e 20 41 75 74 68 6f 72 69 74 79 20 2d t.Root.Certification.Authority.-
1806a0 20 45 43 31 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .EC1.===========================
1806c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 ===============.-----BEGIN.CERTI
1806e0 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 43 2b 54 43 43 41 6f 43 67 41 77 49 42 41 67 49 4e FICATE-----.MIIC+TCCAoCgAwIBAgIN
180700 41 4b 61 4c 65 53 6b 41 41 41 41 41 55 4e 43 52 2b 54 41 4b 42 67 67 71 68 6b 6a 4f 50 51 51 44 AKaLeSkAAAAAUNCR+TAKBggqhkjOPQQD
180720 41 7a 43 42 76 7a 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 56 4d 78 0a 46 6a 41 55 42 67 4e AzCBvzELMAkGA1UEBhMCVVMx.FjAUBgN
180740 56 42 41 6f 54 44 55 56 75 64 48 4a 31 63 33 51 73 49 45 6c 75 59 79 34 78 4b 44 41 6d 42 67 4e VBAoTDUVudHJ1c3QsIEluYy4xKDAmBgN
180760 56 42 41 73 54 48 31 4e 6c 5a 53 42 33 64 33 63 75 5a 57 35 30 63 6e 56 7a 64 43 35 75 5a 58 51 VBAsTH1NlZSB3d3cuZW50cnVzdC5uZXQ
180780 76 62 47 56 6e 0a 59 57 77 74 64 47 56 79 62 58 4d 78 4f 54 41 33 42 67 4e 56 42 41 73 54 4d 43 vbGVn.YWwtdGVybXMxOTA3BgNVBAsTMC
1807a0 68 6a 4b 53 41 79 4d 44 45 79 49 45 56 75 64 48 4a 31 63 33 51 73 49 45 6c 75 59 79 34 67 4c 53 hjKSAyMDEyIEVudHJ1c3QsIEluYy4gLS
1807c0 42 6d 62 33 49 67 59 58 56 30 61 47 39 79 61 58 70 6c 0a 5a 43 42 31 63 32 55 67 62 32 35 73 65 Bmb3IgYXV0aG9yaXpl.ZCB1c2Ugb25se
1807e0 54 45 7a 4d 44 45 47 41 31 55 45 41 78 4d 71 52 57 35 30 63 6e 56 7a 64 43 42 53 62 32 39 30 49 TEzMDEGA1UEAxMqRW50cnVzdCBSb290I
180800 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 51 58 56 30 61 47 39 79 61 58 52 35 0a ENlcnRpZmljYXRpb24gQXV0aG9yaXR5.
180820 49 43 30 67 52 55 4d 78 4d 42 34 58 44 54 45 79 4d 54 49 78 4f 44 45 31 4d 6a 55 7a 4e 6c 6f 58 IC0gRUMxMB4XDTEyMTIxODE1MjUzNloX
180840 44 54 4d 33 4d 54 49 78 4f 44 45 31 4e 54 55 7a 4e 6c 6f 77 67 62 38 78 43 7a 41 4a 42 67 4e 56 DTM3MTIxODE1NTUzNlowgb8xCzAJBgNV
180860 42 41 59 54 41 6c 56 54 4d 52 59 77 0a 46 41 59 44 56 51 51 4b 45 77 31 46 62 6e 52 79 64 58 4e BAYTAlVTMRYw.FAYDVQQKEw1FbnRydXN
180880 30 4c 43 42 4a 62 6d 4d 75 4d 53 67 77 4a 67 59 44 56 51 51 4c 45 78 39 54 5a 57 55 67 64 33 64 0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d
1808a0 33 4c 6d 56 75 64 48 4a 31 63 33 51 75 62 6d 56 30 4c 32 78 6c 5a 32 46 73 0a 4c 58 52 6c 63 6d 3LmVudHJ1c3QubmV0L2xlZ2Fs.LXRlcm
1808c0 31 7a 4d 54 6b 77 4e 77 59 44 56 51 51 4c 45 7a 41 6f 59 79 6b 67 4d 6a 41 78 4d 69 42 46 62 6e 1zMTkwNwYDVQQLEzAoYykgMjAxMiBFbn
1808e0 52 79 64 58 4e 30 4c 43 42 4a 62 6d 4d 75 49 43 30 67 5a 6d 39 79 49 47 46 31 64 47 68 76 63 6d RydXN0LCBJbmMuIC0gZm9yIGF1dGhvcm
180900 6c 36 5a 57 51 67 0a 64 58 4e 6c 49 47 39 75 62 48 6b 78 4d 7a 41 78 42 67 4e 56 42 41 4d 54 4b l6ZWQg.dXNlIG9ubHkxMzAxBgNVBAMTK
180920 6b 56 75 64 48 4a 31 63 33 51 67 55 6d 39 76 64 43 42 44 5a 58 4a 30 61 57 5a 70 59 32 46 30 61 kVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0a
180940 57 39 75 49 45 46 31 64 47 68 76 63 6d 6c 30 65 53 41 74 0a 49 45 56 44 4d 54 42 32 4d 42 41 47 W9uIEF1dGhvcml0eSAt.IEVDMTB2MBAG
180960 42 79 71 47 53 4d 34 39 41 67 45 47 42 53 75 42 42 41 41 69 41 32 49 41 42 49 51 54 79 64 43 36 ByqGSM49AgEGBSuBBAAiA2IABIQTydC6
180980 62 55 46 37 34 6d 7a 51 36 31 56 66 5a 67 49 61 4a 50 52 62 69 57 6c 48 34 37 6a 43 66 66 48 79 bUF74mzQ61VfZgIaJPRbiWlH47jCffHy
1809a0 0a 41 73 57 66 6f 50 5a 62 31 59 73 47 47 59 5a 50 55 78 42 74 42 79 51 6e 6f 61 44 34 31 55 63 .AsWfoPZb1YsGGYZPUxBtByQnoaD41Uc
1809c0 5a 59 55 78 39 79 70 4d 6e 36 6e 51 4d 37 32 2b 57 43 66 35 6a 37 48 42 64 4e 71 31 6e 64 36 37 ZYUx9ypMn6nQM72+WCf5j7HBdNq1nd67
1809e0 4a 6e 58 78 56 52 44 71 69 59 31 45 66 0a 39 65 4e 69 31 4b 6c 48 42 7a 37 4d 49 4b 4e 43 4d 45 JnXxVRDqiY1Ef.9eNi1KlHBz7MIKNCME
180a00 41 77 44 67 59 44 56 52 30 50 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 45 77 AwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEw
180a20 45 42 2f 77 51 46 4d 41 4d 42 41 66 38 77 48 51 59 44 56 52 30 4f 42 42 59 45 0a 46 4c 64 6a 35 EB/wQFMAMBAf8wHQYDVR0OBBYE.FLdj5
180a40 78 72 64 6a 65 6b 49 70 6c 57 44 70 4f 42 71 55 45 46 6c 45 55 4a 4a 4d 41 6f 47 43 43 71 47 53 xrdjekIplWDpOBqUEFlEUJJMAoGCCqGS
180a60 4d 34 39 42 41 4d 44 41 32 63 41 4d 47 51 43 4d 47 46 35 32 4f 56 43 52 39 38 63 72 6c 4f 5a 46 M49BAMDA2cAMGQCMGF52OVCR98crlOZF
180a80 37 5a 76 48 48 33 68 0a 76 78 47 55 30 51 4f 49 64 65 53 4e 69 61 53 4b 64 30 62 65 62 57 48 76 7ZvHH3h.vxGU0QOIdeSNiaSKd0bebWHv
180aa0 41 76 58 37 74 64 2f 4d 2f 6b 37 2f 2f 71 6e 6d 70 77 49 77 57 35 6e 58 68 54 63 47 74 58 73 49 AvX7td/M/k7//qnmpwIwW5nXhTcGtXsI
180ac0 2f 65 73 6e 69 30 71 55 2b 65 48 36 70 34 34 6d 43 4f 68 38 0a 6b 6d 68 74 63 39 68 76 4a 71 77 /esni0qU+eH6p44mCOh8.kmhtc9hvJqw
180ae0 68 41 72 69 5a 74 79 5a 42 57 79 56 67 72 74 42 49 47 75 34 47 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 hAriZtyZBWyVgrtBIGu4G.-----END.C
180b00 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 43 46 43 41 20 45 56 20 52 4f 4f 54 0a 3d 3d ERTIFICATE-----..CFCA.EV.ROOT.==
180b20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 ==========.-----BEGIN.CERTIFICAT
180b40 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 6a 54 43 43 41 33 57 67 41 77 49 42 41 67 49 45 47 45 72 4d 31 E-----.MIIFjTCCA3WgAwIBAgIEGErM1
180b60 6a 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 57 4d 51 73 77 43 51 59 44 56 jANBgkqhkiG9w0BAQsFADBWMQswCQYDV
180b80 51 51 47 45 77 4a 44 54 6a 45 77 4d 43 34 47 41 31 55 45 0a 43 67 77 6e 51 32 68 70 62 6d 45 67 QQGEwJDTjEwMC4GA1UE.CgwnQ2hpbmEg
180ba0 52 6d 6c 75 59 57 35 6a 61 57 46 73 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 34 67 RmluYW5jaWFsIENlcnRpZmljYXRpb24g
180bc0 51 58 56 30 61 47 39 79 61 58 52 35 4d 52 55 77 45 77 59 44 56 51 51 44 44 41 78 44 52 6b 4e 42 QXV0aG9yaXR5MRUwEwYDVQQDDAxDRkNB
180be0 0a 49 45 56 57 49 46 4a 50 54 31 51 77 48 68 63 4e 4d 54 49 77 4f 44 41 34 4d 44 4d 77 4e 7a 41 .IEVWIFJPT1QwHhcNMTIwODA4MDMwNzA
180c00 78 57 68 63 4e 4d 6a 6b 78 4d 6a 4d 78 4d 44 4d 77 4e 7a 41 78 57 6a 42 57 4d 51 73 77 43 51 59 xWhcNMjkxMjMxMDMwNzAxWjBWMQswCQY
180c20 44 56 51 51 47 45 77 4a 44 54 6a 45 77 0a 4d 43 34 47 41 31 55 45 43 67 77 6e 51 32 68 70 62 6d DVQQGEwJDTjEw.MC4GA1UECgwnQ2hpbm
180c40 45 67 52 6d 6c 75 59 57 35 6a 61 57 46 73 49 45 4e 6c 63 6e 52 70 5a 6d 6c 6a 59 58 52 70 62 32 EgRmluYW5jaWFsIENlcnRpZmljYXRpb2
180c60 34 67 51 58 56 30 61 47 39 79 61 58 52 35 4d 52 55 77 45 77 59 44 56 51 51 44 0a 44 41 78 44 52 4gQXV0aG9yaXR5MRUwEwYDVQQD.DAxDR
180c80 6b 4e 42 49 45 56 57 49 46 4a 50 54 31 51 77 67 67 49 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 kNBIEVWIFJPT1QwggIiMA0GCSqGSIb3D
180ca0 51 45 42 41 51 55 41 41 34 49 43 44 77 41 77 67 67 49 4b 41 6f 49 43 41 51 44 58 58 57 76 4e 45 QEBAQUAA4ICDwAwggIKAoICAQDXXWvNE
180cc0 44 38 66 42 56 6e 56 0a 42 55 30 33 73 51 37 73 6d 43 75 4f 46 52 33 36 6b 30 73 58 67 69 46 78 D8fBVnV.BU03sQ7smCuOFR36k0sXgiFx
180ce0 45 46 4c 58 55 57 52 77 46 73 4a 56 61 55 32 4f 46 57 32 66 76 77 77 62 77 75 43 6a 5a 39 59 4d EFLXUWRwFsJVaU2OFW2fvwwbwuCjZ9YM
180d00 72 4d 38 69 72 71 39 33 56 43 70 4c 54 49 70 54 55 6e 72 44 0a 37 69 37 65 73 33 45 6c 77 65 6c rM8irq93VCpLTIpTUnrD.7i7es3Elwel
180d20 64 50 65 36 68 4c 36 50 33 4b 6a 7a 4a 49 78 31 71 71 78 32 68 70 2f 48 7a 37 4b 44 56 52 4d 38 dPe6hL6P3KjzJIx1qqx2hp/Hz7KDVRM8
180d40 56 7a 33 49 76 48 57 4f 58 36 4a 6e 35 2f 5a 4f 6b 56 49 42 4d 55 74 52 53 71 79 35 4a 33 35 44 Vz3IvHWOX6Jn5/ZOkVIBMUtRSqy5J35D
180d60 4e 0a 75 46 2b 2b 50 39 36 68 79 6b 30 67 31 43 58 6f 68 43 6c 54 74 37 47 49 48 2f 2f 36 32 70 N.uF++P96hyk0g1CXohClTt7GIH//62p
180d80 43 66 43 71 6b 74 51 54 2b 78 38 52 67 70 37 68 5a 5a 4c 44 52 4a 47 71 67 47 31 36 69 49 30 67 CfCqktQT+x8Rgp7hZZLDRJGqgG16iI0g
180da0 4e 79 65 6a 4c 69 36 6d 68 4e 62 69 79 57 0a 5a 58 76 4b 57 66 72 79 34 74 33 75 4d 43 7a 37 7a NyejLi6mhNbiyW.ZXvKWfry4t3uMCz7z
180dc0 45 61 73 78 47 50 72 62 33 38 32 4b 7a 52 7a 45 70 52 2f 33 38 77 6d 6e 76 46 79 58 56 42 6c 57 EasxGPrb382KzRzEpR/38wmnvFyXVBlW
180de0 59 39 70 73 34 64 65 4d 6d 2f 44 47 49 71 31 6c 59 2b 77 65 6a 66 65 57 6b 55 37 0a 78 7a 62 68 Y9ps4deMm/DGIq1lY+wejfeWkU7.xzbh
180e00 37 32 66 52 4f 64 4f 58 57 33 4e 69 47 55 67 74 68 78 77 47 2b 33 53 59 49 45 6c 7a 38 41 58 53 72fROdOXW3NiGUgthxwG+3SYIElz8AXS
180e20 47 37 47 67 6f 37 63 62 63 4e 4f 49 61 62 6c 61 31 6a 6a 30 59 74 77 6c 69 33 69 2f 2b 4f 68 2b G7Ggo7cbcNOIabla1jj0Ytwli3i/+Oh+
180e40 75 46 7a 4a 6c 55 39 66 0a 70 79 32 35 49 47 76 50 61 39 33 31 44 66 53 43 74 2f 53 79 5a 69 34 uFzJlU9f.py25IGvPa931DfSCt/SyZi4
180e60 51 4b 50 61 58 57 6e 75 57 46 6f 38 42 47 53 31 73 62 6e 38 35 57 41 5a 6b 67 77 47 44 67 38 4e QKPaXWnuWFo8BGS1sbn85WAZkgwGDg8N
180e80 4e 6b 74 30 79 78 6f 65 6b 4e 2b 6b 57 7a 71 6f 74 61 4b 38 4b 0a 67 57 55 36 63 4d 47 62 72 55 Nkt0yxoekN+kWzqotaK8K.gWU6cMGbrU
180ea0 31 74 56 4d 6f 71 4c 55 75 46 47 37 4f 41 35 6e 42 46 44 57 74 65 4e 66 42 2f 4f 37 69 63 35 41 1tVMoqLUuFG7OA5nBFDWteNfB/O7ic5A
180ec0 52 77 69 52 49 6c 6b 39 6f 4b 6d 53 4a 67 61 6d 4e 67 54 6e 59 47 6d 45 36 39 67 36 30 64 57 49 RwiRIlk9oKmSJgamNgTnYGmE69g60dWI
180ee0 6f 6c 0a 68 64 4c 48 5a 52 34 74 6a 73 62 66 74 73 62 68 66 34 6f 45 49 52 55 70 64 50 41 2b 6e ol.hdLHZR4tjsbftsbhf4oEIRUpdPA+n
180f00 4a 43 64 44 43 37 78 69 6a 35 61 71 67 77 4a 48 73 66 56 50 4b 50 74 6c 38 4d 65 4e 50 6f 34 2b JCdDC7xij5aqgwJHsfVPKPtl8MeNPo4+
180f20 51 67 4f 34 38 42 64 4b 34 50 52 56 6d 72 4a 0a 74 71 68 55 55 79 35 34 4d 6d 63 39 67 6e 39 30 QgO48BdK4PRVmrJ.tqhUUy54Mmc9gn90
180f40 30 50 76 68 74 67 56 67 75 58 44 62 6a 67 76 35 45 31 68 76 63 57 41 51 55 68 43 35 77 55 45 4a 0PvhtgVguXDbjgv5E1hvcWAQUhC5wUEJ
180f60 37 33 49 66 5a 7a 46 34 2f 35 59 46 6a 51 49 44 41 51 41 42 6f 32 4d 77 59 54 41 66 0a 42 67 4e 73IfZzF4/5YFjQIDAQABo2MwYTAf.BgN
180f80 56 48 53 4d 45 47 44 41 57 67 42 54 6a 2f 69 33 39 4b 4e 41 4c 74 62 71 32 6f 73 53 2f 42 71 6f VHSMEGDAWgBTj/i39KNALtbq2osS/Bqo
180fa0 46 6a 4a 50 37 4c 7a 41 50 42 67 4e 56 48 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 41 34 FjJP7LzAPBgNVHRMBAf8EBTADAQH/MA4
180fc0 47 41 31 55 64 44 77 45 42 0a 2f 77 51 45 41 77 49 42 42 6a 41 64 42 67 4e 56 48 51 34 45 46 67 GA1UdDwEB./wQEAwIBBjAdBgNVHQ4EFg
180fe0 51 55 34 2f 34 74 2f 53 6a 51 43 37 57 36 74 71 4c 45 76 77 61 71 42 59 79 54 2b 79 38 77 44 51 QU4/4t/SjQC7W6tqLEvwaqBYyT+y8wDQ
181000 59 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 4c 42 51 41 44 67 67 49 42 0a 41 43 58 47 75 6d 76 72 68 YJKoZIhvcNAQELBQADggIB.ACXGumvrh
181020 38 76 65 67 6a 6d 57 50 66 42 45 70 32 75 45 63 77 50 65 6e 53 74 50 75 69 42 2f 76 48 69 79 7a 8vegjmWPfBEp2uEcwPenStPuiB/vHiyz
181040 35 65 77 47 35 7a 7a 31 33 6b 75 39 55 69 32 30 76 73 58 69 4f 62 54 65 6a 2f 74 55 78 50 51 34 5ewG5zz13ku9Ui20vsXiObTej/tUxPQ4
181060 69 39 71 0a 65 63 73 41 49 79 6a 6d 48 6a 64 58 4e 59 6d 45 77 6e 5a 50 4e 44 61 74 5a 38 50 4f i9q.ecsAIyjmHjdXNYmEwnZPNDatZ8PO
181080 51 51 61 49 78 66 66 75 32 42 71 34 31 67 74 2f 55 50 2b 54 71 68 64 4c 6a 4f 7a 74 55 6d 43 79 QQaIxffu2Bq41gt/UP+TqhdLjOztUmCy
1810a0 70 41 62 71 54 75 76 30 61 78 6e 39 36 2f 55 61 0a 34 43 55 71 6d 74 7a 48 51 54 62 33 79 48 51 pAbqTuv0axn96/Ua.4CUqmtzHQTb3yHQ
1810c0 46 68 44 6d 56 4f 64 59 4c 4f 36 51 6e 2b 67 6a 59 58 42 37 34 42 47 42 53 45 53 67 6f 41 2f 2f FhDmVOdYLO6Qn+gjYXB74BGBSESgoA//
1810e0 76 55 32 59 41 70 55 6f 30 46 6d 5a 38 2f 51 6d 6b 72 70 35 6e 47 6d 39 42 43 32 73 47 0a 45 35 vU2YApUo0FmZ8/Qmkrp5nGm9BC2sG.E5
181100 75 50 68 6e 45 46 74 43 2b 4e 69 57 59 7a 4b 58 5a 55 6d 68 48 34 4a 2f 71 79 50 35 48 67 7a 67 uPhnEFtC+NiWYzKXZUmhH4J/qyP5Hgzg
181120 30 62 38 7a 41 61 72 62 38 69 58 52 76 54 76 79 55 46 54 65 47 53 47 6e 2b 5a 6e 7a 78 45 6b 38 0b8zAarb8iXRvTvyUFTeGSGn+ZnzxEk8
181140 72 55 51 45 6c 73 67 49 66 58 0a 42 44 72 44 4d 6c 49 31 44 6c 62 34 70 64 31 39 78 49 73 4e 45 rUQElsgIfX.BDrDMlI1Dlb4pd19xIsNE
181160 52 39 54 79 78 36 79 46 37 5a 6f 64 31 72 67 31 4d 76 49 42 36 37 31 4f 69 36 4f 4e 37 66 51 41 R9Tyx6yF7Zod1rg1MvIB671Oi6ON7fQA
181180 55 74 44 4b 58 65 4d 4f 5a 65 50 67 6c 72 34 55 65 57 4a 6f 42 6a 6e 0a 61 48 39 64 43 69 37 37 UtDKXeMOZePglr4UeWJoBjn.aH9dCi77
1811a0 6f 30 63 4f 50 61 59 6a 65 73 59 42 78 34 2f 49 58 72 39 74 67 46 61 2b 69 69 53 36 4d 2b 71 66 o0cOPaYjesYBx4/IXr9tgFa+iiS6M+qf
1811c0 34 54 49 52 6e 76 48 53 54 34 44 32 47 30 43 76 4f 4a 34 52 55 48 6c 7a 45 68 4c 4e 35 6d 79 64 4TIRnvHST4D2G0CvOJ4RUHlzEhLN5myd
1811e0 4c 49 68 79 0a 50 44 43 42 42 70 45 69 36 6c 6d 74 32 68 6b 75 49 73 4b 4e 75 59 79 48 34 47 61 LIhy.PDCBBpEi6lmt2hkuIsKNuYyH4Ga
181200 38 63 79 4e 66 49 57 52 6a 67 45 6a 31 6f 44 77 59 50 5a 54 49 53 45 45 64 51 4c 70 65 2f 76 35 8cyNfIWRjgEj1oDwYPZTISEEdQLpe/v5
181220 57 4f 61 48 49 7a 31 36 65 47 57 52 47 45 4e 6f 58 0a 6b 62 63 46 67 4b 79 4c 6d 5a 4a 39 35 36 WOaHIz16eGWRGENoX.kbcFgKyLmZJ956
181240 4c 59 42 77 73 32 4a 2b 64 49 65 57 43 4b 77 39 63 54 58 50 68 79 51 4e 39 4b 79 38 2b 5a 41 41 LYBws2J+dIeWCKw9cTXPhyQN9Ky8+ZAA
181260 6f 41 43 78 47 56 32 6c 5a 46 41 34 67 4b 6e 32 66 51 31 58 6d 78 71 49 31 41 62 51 33 43 0a 65 oACxGV2lZFA4gKn2fQ1XmxqI1AbQ3C.e
181280 6b 44 36 38 31 39 6b 52 35 4c 4c 55 37 6d 37 57 63 35 50 2f 64 41 56 55 77 48 59 33 2b 76 5a 35 kD6819kR5LLU7m7Wc5P/dAVUwHY3+vZ5
1812a0 6e 62 76 30 43 4f 37 4f 36 6c 35 73 39 55 43 4b 63 32 4a 6f 35 59 50 53 6a 58 6e 54 6b 4c 41 64 nbv0CO7O6l5s9UCKc2Jo5YPSjXnTkLAd
1812c0 63 30 48 7a 2b 59 73 36 33 73 75 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 c0Hz+Ys63su.-----END.CERTIFICATE
1812e0 2d 2d 2d 2d 2d 0a 0a 54 c3 9c 52 4b 54 52 55 53 54 20 45 6c 65 6b 74 72 6f 6e 69 6b 20 53 65 72 -----..T..RKTRUST.Elektronik.Ser
181300 74 69 66 69 6b 61 20 48 69 7a 6d 65 74 20 53 61 c4 9f 6c 61 79 c4 b1 63 c4 b1 73 c4 b1 20 48 35 tifika.Hizmet.Sa..lay..c..s...H5
181320 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .===============================
181340 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d ==========================.-----
181360 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 45 4a 7a 43 43 41 BEGIN.CERTIFICATE-----.MIIEJzCCA
181380 77 2b 67 41 77 49 42 41 67 49 48 41 49 34 58 2f 69 51 67 67 54 41 4e 42 67 6b 71 68 6b 69 47 39 w+gAwIBAgIHAI4X/iQggTANBgkqhkiG9
1813a0 77 30 42 41 51 73 46 41 44 43 42 73 54 45 4c 4d 41 6b 47 41 31 55 45 42 68 4d 43 56 46 49 78 44 w0BAQsFADCBsTELMAkGA1UEBhMCVFIxD
1813c0 7a 41 4e 0a 42 67 4e 56 42 41 63 4d 42 6b 46 75 61 32 46 79 59 54 46 4e 4d 45 73 47 41 31 55 45 zAN.BgNVBAcMBkFua2FyYTFNMEsGA1UE
1813e0 43 67 78 45 56 4d 4f 63 55 6b 74 55 55 6c 56 54 56 43 42 43 61 57 78 6e 61 53 44 45 73 47 78 6c CgxEVMOcUktUUlVTVCBCaWxnaSDEsGxl
181400 64 47 6e 46 6e 32 6c 74 49 48 5a 6c 49 45 4a 70 0a 62 47 6e 46 6e 32 6c 74 49 45 66 44 76 48 5a dGnFn2ltIHZlIEJp.bGnFn2ltIEfDvHZ
181420 6c 62 6d 78 70 78 4a 39 70 49 45 68 70 65 6d 31 6c 64 47 78 6c 63 6d 6b 67 51 53 37 46 6e 69 34 lbmxpxJ9pIEhpem1ldGxlcmkgQS7Fni4
181440 78 51 6a 42 41 42 67 4e 56 42 41 4d 4d 4f 56 54 44 6e 46 4a 4c 56 46 4a 56 55 31 51 67 0a 52 57 xQjBABgNVBAMMOVTDnFJLVFJVU1Qg.RW
181460 78 6c 61 33 52 79 62 32 35 70 61 79 42 54 5a 58 4a 30 61 57 5a 70 61 32 45 67 53 47 6c 36 62 57 xla3Ryb25payBTZXJ0aWZpa2EgSGl6bW
181480 56 30 49 46 4e 68 78 4a 39 73 59 58 6e 45 73 57 50 45 73 58 50 45 73 53 42 49 4e 54 41 65 46 77 V0IFNhxJ9sYXnEsWPEsXPEsSBINTAeFw
1814a0 30 78 4d 7a 41 30 4d 7a 41 77 0a 4f 44 41 33 4d 44 46 61 46 77 30 79 4d 7a 41 30 4d 6a 67 77 4f 0xMzA0MzAw.ODA3MDFaFw0yMzA0MjgwO
1814c0 44 41 33 4d 44 46 61 4d 49 47 78 4d 51 73 77 43 51 59 44 56 51 51 47 45 77 4a 55 55 6a 45 50 4d DA3MDFaMIGxMQswCQYDVQQGEwJUUjEPM
1814e0 41 30 47 41 31 55 45 42 77 77 47 51 57 35 72 59 58 4a 68 4d 55 30 77 0a 53 77 59 44 56 51 51 4b A0GA1UEBwwGQW5rYXJhMU0w.SwYDVQQK
181500 44 45 52 55 77 35 78 53 53 31 52 53 56 56 4e 55 49 45 4a 70 62 47 64 70 49 4d 53 77 62 47 56 30 DERUw5xSS1RSVVNUIEJpbGdpIMSwbGV0
181520 61 63 57 66 61 57 30 67 64 6d 55 67 51 6d 6c 73 61 63 57 66 61 57 30 67 52 38 4f 38 64 6d 56 75 acWfaW0gdmUgQmlsacWfaW0gR8O8dmVu
181540 62 47 6e 45 0a 6e 32 6b 67 53 47 6c 36 62 57 56 30 62 47 56 79 61 53 42 42 4c 73 57 65 4c 6a 46 bGnE.n2kgSGl6bWV0bGVyaSBBLsWeLjF
181560 43 4d 45 41 47 41 31 55 45 41 77 77 35 56 4d 4f 63 55 6b 74 55 55 6c 56 54 56 43 42 46 62 47 56 CMEAGA1UEAww5VMOcUktUUlVTVCBFbGV
181580 72 64 48 4a 76 62 6d 6c 72 49 46 4e 6c 63 6e 52 70 0a 5a 6d 6c 72 59 53 42 49 61 58 70 74 5a 58 rdHJvbmlrIFNlcnRp.ZmlrYSBIaXptZX
1815a0 51 67 55 32 48 45 6e 32 78 68 65 63 53 78 59 38 53 78 63 38 53 78 49 45 67 31 4d 49 49 42 49 6a QgU2HEn2xhecSxY8Sxc8SxIEg1MIIBIj
1815c0 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43 41 51 38 41 4d 49 49 42 0a 43 ANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB.C
1815e0 67 4b 43 41 51 45 41 70 43 55 5a 34 57 57 65 36 30 67 68 55 45 6f 49 35 52 48 77 57 72 6f 6d 2f gKCAQEApCUZ4WWe60ghUEoI5RHwWrom/
181600 34 4e 5a 7a 6b 51 71 4c 2f 37 68 7a 6d 41 44 2f 49 30 44 70 65 33 2f 61 36 69 36 7a 44 51 47 6e 4NZzkQqL/7hzmAD/I0Dpe3/a6i6zDQGn
181620 31 6b 31 39 75 77 73 75 35 33 37 0a 6a 56 4a 70 34 35 77 6e 45 46 50 7a 70 41 4c 46 70 2f 6b 52 1k19uwsu537.jVJp45wnEFPzpALFp/kR
181640 47 6d 6c 31 62 73 4d 64 69 39 47 59 6a 5a 4f 48 70 33 47 58 44 53 48 48 6d 66 6c 53 30 79 78 6a Gml1bsMdi9GYjZOHp3GXDSHHmflS0yxj
181660 58 56 57 38 36 42 38 42 53 4c 6c 67 2f 6b 4a 4b 39 73 69 41 72 73 31 6d 0a 65 70 35 46 69 6d 68 XVW86B8BSLlg/kJK9siArs1m.ep5Fimh
181680 33 34 6b 68 6f 6e 36 4c 61 38 65 48 42 45 4a 2f 72 50 43 6d 42 70 2b 45 79 43 4e 53 67 42 62 47 34khon6La8eHBEJ/rPCmBp+EyCNSgBbG
1816a0 4d 2b 34 32 57 41 41 34 2b 4a 64 39 54 68 69 49 37 2f 50 53 39 38 77 6c 2b 64 2b 79 47 36 77 38 M+42WAA4+Jd9ThiI7/PS98wl+d+yG6w8
1816c0 7a 35 55 4e 50 0a 39 46 52 31 62 53 6d 5a 4c 6d 5a 61 51 39 2f 4c 58 4d 72 49 35 54 6a 78 66 6a z5UNP.9FR1bSmZLmZaQ9/LXMrI5Tjxfj
1816e0 73 31 6e 51 2f 30 78 56 71 68 7a 50 4d 67 67 43 54 54 56 2b 77 56 75 6e 55 6c 6d 2b 68 6b 53 37 s1nQ/0xVqhzPMggCTTV+wVunUlm+hkS7
181700 4d 30 68 4f 38 45 75 50 62 4a 62 4b 6f 43 50 72 5a 56 0a 34 6a 49 33 58 2f 78 6d 6c 31 2f 4e 31 M0hO8EuPbJbKoCPrZV.4jI3X/xml1/N1
181720 70 37 48 49 4c 39 4e 78 71 77 2f 64 56 38 63 37 54 4b 63 66 47 6b 41 61 5a 48 6a 49 78 68 54 36 p7HIL9Nxqw/dV8c7TKcfGkAaZHjIxhT6
181740 51 49 44 41 51 41 42 6f 30 49 77 51 44 41 64 42 67 4e 56 48 51 34 45 46 67 51 55 56 70 6b 48 0a QIDAQABo0IwQDAdBgNVHQ4EFgQUVpkH.
181760 48 74 4f 73 44 47 6c 6b 74 41 78 51 52 39 35 44 4c 4c 34 67 77 50 73 77 44 67 59 44 56 52 30 50 HtOsDGlktAxQR95DLL4gwPswDgYDVR0P
181780 41 51 48 2f 42 41 51 44 41 67 45 47 4d 41 38 47 41 31 55 64 45 77 45 42 2f 77 51 46 4d 41 4d 42 AQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB
1817a0 41 66 38 77 44 51 59 4a 4b 6f 5a 49 0a 68 76 63 4e 41 51 45 4c 42 51 41 44 67 67 45 42 41 4a 35 Af8wDQYJKoZI.hvcNAQELBQADggEBAJ5
1817c0 46 64 6e 73 58 53 44 4c 79 4f 49 73 70 76 65 36 57 53 6b 36 42 47 4c 46 52 52 79 44 4e 30 47 53 FdnsXSDLyOIspve6WSk6BGLFRRyDN0GS
1817e0 78 44 73 6e 5a 41 64 6b 4a 7a 73 69 5a 33 47 67 6c 45 39 52 63 38 71 50 6f 0a 42 50 35 79 43 63 xDsnZAdkJzsiZ3GglE9Rc8qPo.BP5yCc
181800 63 4c 71 68 30 6c 56 58 36 57 6d 6c 65 33 75 73 55 52 65 68 6e 6d 70 33 34 39 68 51 37 31 2b 53 cLqh0lVX6Wmle3usURehnmp349hQ71+S
181820 34 70 4c 2b 66 35 62 46 67 57 56 31 41 6c 39 6a 34 75 50 71 72 74 64 33 47 71 71 70 6d 57 52 67 4pL+f5bFgWV1Al9j4uPqrtd3GqqpmWRg
181840 71 75 6a 75 77 71 0a 55 52 61 77 58 73 33 71 5a 77 51 63 57 44 44 31 59 49 71 39 70 72 31 4e 35 qujuwq.URawXs3qZwQcWDD1YIq9pr1N5
181860 5a 61 30 2f 45 4b 4a 41 57 76 32 63 4d 68 51 4f 51 77 74 31 57 62 5a 79 4e 4b 7a 4d 72 63 62 47 Za0/EKJAWv2cMhQOQwt1WbZyNKzMrcbG
181880 57 33 4c 4d 2f 6e 66 70 65 59 56 68 44 66 77 77 76 4a 6c 0a 6c 70 4b 51 64 2f 43 74 39 4a 44 70 W3LM/nfpeYVhDfwwvJl.lpKQd/Ct9JDp
1818a0 45 58 6a 58 6b 34 6e 41 50 51 75 36 4b 66 54 6f 6d 5a 31 79 6a 75 32 64 4c 2b 36 53 66 61 48 78 EXjXk4nAPQu6KfTomZ1yju2dL+6SfaHx
1818c0 2f 31 32 36 4d 32 43 46 59 76 34 48 41 71 47 45 56 6b 61 2b 6c 67 71 61 45 39 63 68 54 4c 64 38 /126M2CFYv4HAqGEVka+lgqaE9chTLd8
1818e0 0a 42 35 39 4f 54 6a 2b 52 64 50 73 6e 6e 52 48 4d 33 65 61 78 79 6e 46 4e 45 78 63 35 4a 73 55 .B59OTj+RdPsnnRHM3eaxynFNExc5JsU
181900 70 49 53 75 54 4b 57 71 57 2b 71 74 42 34 55 75 32 4e 51 76 41 6d 78 55 3d 0a 2d 2d 2d 2d 2d 45 pISuTKWqW+qtB4Uu2NQvAmxU=.-----E
181920 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 0a 54 c3 9c 52 4b 54 52 55 53 54 20 ND.CERTIFICATE-----..T..RKTRUST.
181940 45 6c 65 6b 74 72 6f 6e 69 6b 20 53 65 72 74 69 66 69 6b 61 20 48 69 7a 6d 65 74 20 53 61 c4 9f Elektronik.Sertifika.Hizmet.Sa..
181960 6c 61 79 c4 b1 63 c4 b1 73 c4 b1 20 48 36 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d lay..c..s...H6.=================
181980 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
1819a0 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d ========.-----BEGIN.CERTIFICATE-
1819c0 2d 2d 2d 2d 0a 4d 49 49 45 4a 6a 43 43 41 77 36 67 41 77 49 42 41 67 49 47 66 61 48 79 5a 65 79 ----.MIIEJjCCAw6gAwIBAgIGfaHyZey
1819e0 4b 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 43 77 55 41 4d 49 47 78 4d 51 73 77 43 51 59 KMA0GCSqGSIb3DQEBCwUAMIGxMQswCQY
181a00 44 56 51 51 47 45 77 4a 55 55 6a 45 50 4d 41 30 47 0a 41 31 55 45 42 77 77 47 51 57 35 72 59 58 DVQQGEwJUUjEPMA0G.A1UEBwwGQW5rYX
181a20 4a 68 4d 55 30 77 53 77 59 44 56 51 51 4b 44 45 52 55 77 35 78 53 53 31 52 53 56 56 4e 55 49 45 JhMU0wSwYDVQQKDERUw5xSS1RSVVNUIE
181a40 4a 70 62 47 64 70 49 4d 53 77 62 47 56 30 61 63 57 66 61 57 30 67 64 6d 55 67 51 6d 6c 73 0a 61 JpbGdpIMSwbGV0acWfaW0gdmUgQmls.a
181a60 63 57 66 61 57 30 67 52 38 4f 38 64 6d 56 75 62 47 6e 45 6e 32 6b 67 53 47 6c 36 62 57 56 30 62 cWfaW0gR8O8dmVubGnEn2kgSGl6bWV0b
181a80 47 56 79 61 53 42 42 4c 73 57 65 4c 6a 46 43 4d 45 41 47 41 31 55 45 41 77 77 35 56 4d 4f 63 55 GVyaSBBLsWeLjFCMEAGA1UEAww5VMOcU
181aa0 6b 74 55 55 6c 56 54 56 43 42 46 0a 62 47 56 72 64 48 4a 76 62 6d 6c 72 49 46 4e 6c 63 6e 52 70 ktUUlVTVCBF.bGVrdHJvbmlrIFNlcnRp
181ac0 5a 6d 6c 72 59 53 42 49 61 58 70 74 5a 58 51 67 55 32 48 45 6e 32 78 68 65 63 53 78 59 38 53 78 ZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx
181ae0 63 38 53 78 49 45 67 32 4d 42 34 58 44 54 45 7a 4d 54 49 78 4f 44 41 35 0a 4d 44 51 78 4d 46 6f c8SxIEg2MB4XDTEzMTIxODA5.MDQxMFo
181b00 58 44 54 49 7a 4d 54 49 78 4e 6a 41 35 4d 44 51 78 4d 46 6f 77 67 62 45 78 43 7a 41 4a 42 67 4e XDTIzMTIxNjA5MDQxMFowgbExCzAJBgN
181b20 56 42 41 59 54 41 6c 52 53 4d 51 38 77 44 51 59 44 56 51 51 48 44 41 5a 42 62 6d 74 68 63 6d 45 VBAYTAlRSMQ8wDQYDVQQHDAZBbmthcmE
181b40 78 54 54 42 4c 0a 42 67 4e 56 42 41 6f 4d 52 46 54 44 6e 46 4a 4c 56 46 4a 56 55 31 51 67 51 6d xTTBL.BgNVBAoMRFTDnFJLVFJVU1QgQm
181b60 6c 73 5a 32 6b 67 78 4c 42 73 5a 58 52 70 78 5a 39 70 62 53 42 32 5a 53 42 43 61 57 78 70 78 5a lsZ2kgxLBsZXRpxZ9pbSB2ZSBCaWxpxZ
181b80 39 70 62 53 42 48 77 37 78 32 5a 57 35 73 61 63 53 66 0a 61 53 42 49 61 58 70 74 5a 58 52 73 5a 9pbSBHw7x2ZW5sacSf.aSBIaXptZXRsZ
181ba0 58 4a 70 49 45 45 75 78 5a 34 75 4d 55 49 77 51 41 59 44 56 51 51 44 44 44 6c 55 77 35 78 53 53 XJpIEEuxZ4uMUIwQAYDVQQDDDlUw5xSS
181bc0 31 52 53 56 56 4e 55 49 45 56 73 5a 57 74 30 63 6d 39 75 61 57 73 67 55 32 56 79 64 47 6c 6d 0a 1RSVVNUIEVsZWt0cm9uaWsgU2VydGlm.
181be0 61 57 74 68 49 45 68 70 65 6d 31 6c 64 43 42 54 59 63 53 66 62 47 46 35 78 4c 46 6a 78 4c 46 7a aWthIEhpem1ldCBTYcSfbGF5xLFjxLFz
181c00 78 4c 45 67 53 44 59 77 67 67 45 69 4d 41 30 47 43 53 71 47 53 49 62 33 44 51 45 42 41 51 55 41 xLEgSDYwggEiMA0GCSqGSIb3DQEBAQUA
181c20 41 34 49 42 44 77 41 77 67 67 45 4b 0a 41 6f 49 42 41 51 43 64 73 47 6a 57 36 4c 30 55 6c 71 4d A4IBDwAwggEK.AoIBAQCdsGjW6L0UlqM
181c40 41 43 70 72 78 39 4d 66 4d 6b 55 31 78 65 48 65 35 39 79 45 6d 46 58 4e 52 46 70 51 4a 52 77 58 ACprx9MfMkU1xeHe59yEmFXNRFpQJRwX
181c60 69 4d 2f 56 6f 6d 6a 58 2f 33 45 73 76 4d 73 65 77 37 65 4b 43 35 57 2f 61 0a 32 75 71 73 78 67 iM/VomjX/3EsvMsew7eKC5W/a.2uqsxg
181c80 62 50 4a 51 31 42 67 66 62 42 4f 43 4b 39 2b 62 47 6c 70 72 4d 42 76 44 39 51 46 79 76 32 36 57 bPJQ1BgfbBOCK9+bGlprMBvD9QFyv26W
181ca0 5a 56 31 44 4f 7a 58 50 68 44 49 48 69 54 56 52 5a 77 47 54 4c 6d 69 64 64 6b 36 37 31 49 55 50 ZV1DOzXPhDIHiTVRZwGTLmiddk671IUP
181cc0 33 32 30 45 45 44 0a 77 6e 53 33 2f 66 61 41 7a 31 76 46 71 36 54 57 6c 52 4b 62 35 35 63 54 4d 320EED.wnS3/faAz1vFq6TWlRKb55cTM
181ce0 67 50 70 31 4b 74 44 57 78 62 74 4d 79 4a 6b 4b 62 62 53 6b 36 30 76 62 4e 67 39 74 76 59 64 44 gPp1KtDWxbtMyJkKbbSk60vbNg9tvYdD
181d00 6a 54 75 30 6e 32 70 56 51 38 67 39 50 30 70 75 35 46 62 0a 48 48 33 47 51 6a 68 74 51 69 68 74 jTu0n2pVQ8g9P0pu5Fb.HH3GQjhtQiht
181d20 31 41 48 37 7a 59 69 58 53 58 36 34 38 34 50 34 74 5a 67 76 73 79 63 4c 53 46 35 57 35 30 36 6a 1AH7zYiXSX6484P4tZgvsycLSF5W506j
181d40 4d 37 4e 45 31 71 58 79 47 4a 54 74 48 42 36 70 6c 56 78 69 53 76 67 4e 5a 31 47 70 72 79 48 56 M7NE1qXyGJTtHB6plVxiSvgNZ1GpryHV
181d60 0a 2b 44 4b 64 65 62 6f 61 58 2b 55 45 56 55 30 54 52 76 2f 79 7a 33 54 48 47 6d 4e 74 77 78 38 .+DKdeboaX+UEVU0TRv/yz3THGmNtwx8
181d80 58 45 73 4d 65 45 44 35 67 43 4c 4d 78 41 67 4d 42 41 41 47 6a 51 6a 42 41 4d 42 30 47 41 31 55 XEsMeED5gCLMxAgMBAAGjQjBAMB0GA1U
181da0 64 44 67 51 57 42 42 54 64 56 52 63 54 0a 39 71 7a 6f 53 43 48 4b 37 37 57 76 30 51 41 79 37 5a dDgQWBBTdVRcT.9qzoSCHK77Wv0QAy7Z
181dc0 36 4d 74 54 41 4f 42 67 4e 56 48 51 38 42 41 66 38 45 42 41 4d 43 41 51 59 77 44 77 59 44 56 52 6MtTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR
181de0 30 54 41 51 48 2f 42 41 55 77 41 77 45 42 2f 7a 41 4e 42 67 6b 71 68 6b 69 47 0a 39 77 30 42 41 0TAQH/BAUwAwEB/zANBgkqhkiG.9w0BA
181e00 51 73 46 41 41 4f 43 41 51 45 41 62 31 67 4e 6c 30 4f 71 46 6c 51 2b 76 36 6e 66 6b 6b 55 2f 68 QsFAAOCAQEAb1gNl0OqFlQ+v6nfkkU/h
181e20 51 75 37 56 74 4d 4d 55 73 7a 49 76 33 5a 6e 58 75 61 71 73 36 66 76 75 61 79 30 45 42 51 4e 64 Qu7VtMMUszIv3ZnXuaqs6fvuay0EBQNd
181e40 48 34 39 62 61 33 52 0a 66 64 43 61 71 61 58 4b 47 44 73 43 51 43 34 71 6e 46 41 55 69 2f 35 58 H49ba3R.fdCaqaXKGDsCQC4qnFAUi/5X
181e60 66 6c 64 63 45 51 6c 4c 4e 6b 56 53 39 7a 32 73 46 50 31 45 33 34 75 58 49 39 54 44 77 65 37 55 fldcEQlLNkVS9z2sFP1E34uXI9TDwe7U
181e80 55 35 58 2b 4c 45 72 2b 44 58 43 71 75 34 73 76 4c 63 73 79 0a 6f 34 4c 79 56 4e 2f 59 38 74 33 U5X+LEr+DXCqu4svLcsy.o4LyVN/Y8t3
181ea0 58 53 48 4c 75 53 71 4d 70 6c 73 4e 45 7a 6d 36 31 6b 6f 64 32 70 4c 76 30 6b 6d 7a 4f 4c 42 51 XSHLuSqMplsNEzm61kod2pLv0kmzOLBQ
181ec0 4a 5a 6f 36 4e 72 52 61 31 78 78 73 4a 59 54 76 6a 49 4b 49 44 67 49 36 74 66 6c 45 41 54 73 65 JZo6NrRa1xxsJYTvjIKIDgI6tflEATse
181ee0 57 0a 68 76 74 44 6d 48 64 39 4b 4d 65 50 32 43 70 75 35 34 52 76 6c 30 45 70 41 42 5a 65 54 65 W.hvtDmHd9KMeP2Cpu54Rvl0EpABZeTe
181f00 49 54 36 6c 6e 41 59 32 63 36 52 50 75 59 2f 41 54 54 4d 48 4b 6d 39 6f 63 4a 56 36 31 32 70 68 IT6lnAY2c6RPuY/ATTMHKm9ocJV612ph
181f20 31 6a 6d 76 33 58 5a 63 68 34 67 79 74 31 0a 4f 36 56 62 75 41 31 64 66 37 34 6a 72 6c 5a 56 6c 1jmv3XZch4gyt1.O6VbuA1df74jrlZVl
181f40 46 6a 76 48 34 47 4d 4b 72 4c 4e 35 70 74 6a 6e 68 69 38 35 57 73 47 74 41 75 59 53 79 68 65 72 FjvH4GMKrLN5ptjnhi85WsGtAuYSyher
181f60 34 68 59 79 77 3d 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 4hYyw==.-----END.CERTIFICATE----
181f80 2d 0a 0a 43 65 72 74 69 6e 6f 6d 69 73 20 2d 20 52 6f 6f 74 20 43 41 0a 3d 3d 3d 3d 3d 3d 3d 3d -..Certinomis.-.Root.CA.========
181fa0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 ============.-----BEGIN.CERTIFIC
181fc0 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 46 6b 6a 43 43 41 33 71 67 41 77 49 42 41 67 49 42 41 54 41 ATE-----.MIIFkjCCA3qgAwIBAgIBATA
181fe0 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 41 44 42 61 4d 51 73 77 43 51 59 44 56 51 51 NBgkqhkiG9w0BAQsFADBaMQswCQYDVQQ
182000 47 45 77 4a 47 55 6a 45 54 4d 42 45 47 41 31 55 45 43 68 4d 4b 0a 51 32 56 79 64 47 6c 75 62 32 GEwJGUjETMBEGA1UEChMK.Q2VydGlub2
182020 31 70 63 7a 45 58 4d 42 55 47 41 31 55 45 43 78 4d 4f 4d 44 41 77 4d 69 41 30 4d 7a 4d 35 4f 54 1pczEXMBUGA1UECxMOMDAwMiA0MzM5OT
182040 67 35 4d 44 4d 78 48 54 41 62 42 67 4e 56 42 41 4d 54 46 45 4e 6c 63 6e 52 70 62 6d 39 74 61 58 g5MDMxHTAbBgNVBAMTFENlcnRpbm9taX
182060 4d 67 0a 4c 53 42 53 62 32 39 30 49 45 4e 42 4d 42 34 58 44 54 45 7a 4d 54 41 79 4d 54 41 35 4d Mg.LSBSb290IENBMB4XDTEzMTAyMTA5M
182080 54 63 78 4f 46 6f 58 44 54 4d 7a 4d 54 41 79 4d 54 41 35 4d 54 63 78 4f 46 6f 77 57 6a 45 4c 4d TcxOFoXDTMzMTAyMTA5MTcxOFowWjELM
1820a0 41 6b 47 41 31 55 45 42 68 4d 43 52 6c 49 78 0a 45 7a 41 52 42 67 4e 56 42 41 6f 54 43 6b 4e 6c AkGA1UEBhMCRlIx.EzARBgNVBAoTCkNl
1820c0 63 6e 52 70 62 6d 39 74 61 58 4d 78 46 7a 41 56 42 67 4e 56 42 41 73 54 44 6a 41 77 4d 44 49 67 cnRpbm9taXMxFzAVBgNVBAsTDjAwMDIg
1820e0 4e 44 4d 7a 4f 54 6b 34 4f 54 41 7a 4d 52 30 77 47 77 59 44 56 51 51 44 45 78 52 44 0a 5a 58 4a NDMzOTk4OTAzMR0wGwYDVQQDExRD.ZXJ
182100 30 61 57 35 76 62 57 6c 7a 49 43 30 67 55 6d 39 76 64 43 42 44 51 54 43 43 41 69 49 77 44 51 59 0aW5vbWlzIC0gUm9vdCBDQTCCAiIwDQY
182120 4a 4b 6f 5a 49 68 76 63 4e 41 51 45 42 42 51 41 44 67 67 49 50 41 44 43 43 41 67 6f 43 67 67 49 JKoZIhvcNAQEBBQADggIPADCCAgoCggI
182140 42 41 4e 54 4d 43 51 6f 73 0a 50 35 4c 32 66 78 53 65 43 35 79 61 61 68 31 41 4d 47 54 39 71 74 BANTMCQos.P5L2fxSeC5yaah1AMGT9qt
182160 38 4f 48 67 5a 62 6e 31 43 46 36 73 32 4e 71 30 4e 6e 33 72 44 36 66 6f 43 57 6e 6f 52 34 6b 6b 8OHgZbn1CF6s2Nq0Nn3rD6foCWnoR4kk
182180 6a 57 34 7a 6e 75 7a 75 52 5a 57 4a 66 6c 4c 69 65 59 36 70 4f 6f 0a 64 35 74 4b 38 4f 39 30 67 jW4znuzuRZWJflLieY6pOo.d5tK8O90g
1821a0 43 33 72 4d 42 2b 31 32 63 65 41 6e 47 49 6e 6b 59 6a 77 53 6f 6e 64 33 49 6a 6d 46 50 6e 56 41 C3rMB+12ceAnGInkYjwSond3IjmFPnVA
1821c0 79 2f 2f 6c 64 75 39 6e 2b 77 73 2b 68 51 56 57 5a 55 4b 78 6b 64 38 61 52 69 35 70 77 50 35 79 y//ldu9n+ws+hQVWZUKxkd8aRi5pwP5y
1821e0 6e 61 70 0a 7a 38 64 76 74 46 34 46 2f 75 37 42 55 72 4a 31 4d 6f 66 73 37 53 6c 6d 4f 2f 4e 4b nap.z8dvtF4F/u7BUrJ1Mofs7SlmO/NK
182200 46 6f 4c 32 31 70 72 62 63 70 6a 70 33 76 44 46 54 4b 57 72 74 65 6f 42 34 6f 77 75 5a 48 39 6b FoL21prbcpjp3vDFTKWrteoB4owuZH9k
182220 62 2f 32 6a 4a 5a 4f 4c 79 4b 49 4f 53 59 30 30 0a 38 42 2f 73 57 45 55 75 4e 4b 71 45 55 4c 33 b/2jJZOLyKIOSY00.8B/sWEUuNKqEUL3
182240 6e 73 6b 6f 54 75 4c 41 50 72 6a 68 64 73 4b 6b 62 35 6e 50 4a 57 71 48 5a 5a 6b 43 71 71 55 32 nskoTuLAPrjhdsKkb5nPJWqHZZkCqqU2
182260 6d 4e 41 4b 74 68 48 36 79 49 38 48 37 4b 73 5a 6e 39 44 53 32 73 4a 56 71 4d 30 39 78 0a 52 4c mNAKthH6yI8H7KsZn9DS2sJVqM09x.RL
182280 57 74 77 48 6b 7a 69 4f 43 2f 37 61 4f 67 46 4c 53 63 43 62 41 4b 34 32 43 2b 2b 50 68 6d 69 4d WtwHkziOC/7aOgFLScCbAK42C++PhmiM
1822a0 31 62 38 58 63 46 34 4c 56 7a 62 73 46 39 52 69 36 4f 53 79 65 6d 7a 54 55 4b 2f 65 56 4e 66 61 1b8XcF4LVzbsF9Ri6OSyemzTUK/eVNfa
1822c0 6f 71 6f 79 6e 48 57 6d 67 45 0a 36 4f 58 57 6b 36 52 69 77 73 58 6d 39 45 2f 47 2b 5a 38 61 6a oqoynHWmgE.6OXWk6RiwsXm9E/G+Z8aj
1822e0 59 4a 4a 47 59 72 4b 57 55 4d 36 36 41 30 79 77 66 52 4d 45 77 4e 76 62 71 59 2f 6b 58 50 4c 79 YJJGYrKWUM66A0ywfRMEwNvbqY/kXPLy
182300 6e 4e 76 45 69 43 4c 37 73 43 43 65 4e 35 4c 4c 73 4a 4a 77 78 33 74 0a 46 76 59 6b 39 43 63 62 nNvEiCL7sCCeN5LLsJJwx3t.FvYk9Ccb
182320 58 46 63 78 33 46 58 75 71 42 35 76 62 4b 7a 69 52 63 78 58 56 34 70 31 56 78 6e 67 74 56 69 5a XFcx3FXuqB5vbKziRcxXV4p1VxngtViZ
182340 53 54 59 78 50 44 4d 42 62 52 5a 4b 7a 62 67 71 67 34 53 47 6d 2f 6c 67 30 68 39 74 6b 51 50 54 STYxPDMBbRZKzbgqg4SGm/lg0h9tkQPT
182360 59 4b 62 56 0a 50 5a 72 64 64 35 41 39 4e 61 53 66 44 31 37 31 55 6b 52 70 75 63 43 36 33 4d 39 YKbV.PZrdd5A9NaSfD171UkRpucC63M9
182380 39 33 33 7a 5a 78 4b 79 47 49 6a 4b 38 65 32 75 52 37 33 72 34 46 32 69 77 34 6c 4e 56 59 43 32 933zZxKyGIjK8e2uR73r4F2iw4lNVYC2
1823a0 76 50 73 4b 44 32 4e 6b 4a 4b 2f 44 41 5a 4e 75 48 0a 69 35 48 4d 6b 65 73 45 2f 58 61 30 6c 5a vPsKD2NkJK/DAZNuH.i5HMkesE/Xa0lZ
1823c0 72 6d 46 41 59 62 31 54 51 64 76 74 6a 2f 64 42 78 54 68 5a 6e 67 57 56 4a 4b 59 65 32 49 6e 6d rmFAYb1TQdvtj/dBxThZngWVJKYe2Inm
1823e0 74 4a 69 55 5a 2b 49 46 72 5a 35 30 72 6c 61 75 37 53 5a 52 46 44 41 67 4d 42 41 41 47 6a 0a 59 tJiUZ+IFrZ50rlau7SZRFDAgMBAAGj.Y
182400 7a 42 68 4d 41 34 47 41 31 55 64 44 77 45 42 2f 77 51 45 41 77 49 42 42 6a 41 50 42 67 4e 56 48 zBhMA4GA1UdDwEB/wQEAwIBBjAPBgNVH
182420 52 4d 42 41 66 38 45 42 54 41 44 41 51 48 2f 4d 42 30 47 41 31 55 64 44 67 51 57 42 42 54 76 6b RMBAf8EBTADAQH/MB0GA1UdDgQWBBTvk
182440 55 7a 31 70 63 4d 77 36 43 38 49 0a 36 74 4e 78 49 71 53 53 61 48 68 30 32 54 41 66 42 67 4e 56 Uz1pcMw6C8I.6tNxIqSSaHh02TAfBgNV
182460 48 53 4d 45 47 44 41 57 67 42 54 76 6b 55 7a 31 70 63 4d 77 36 43 38 49 36 74 4e 78 49 71 53 53 HSMEGDAWgBTvkUz1pcMw6C8I6tNxIqSS
182480 61 48 68 30 32 54 41 4e 42 67 6b 71 68 6b 69 47 39 77 30 42 41 51 73 46 0a 41 41 4f 43 41 67 45 aHh02TANBgkqhkiG9w0BAQsF.AAOCAgE
1824a0 41 66 6a 31 55 32 69 4a 64 47 6c 67 2b 4f 31 51 6e 75 72 72 4d 79 4f 4d 61 61 75 6f 2b 2b 52 4c Afj1U2iJdGlg+O1QnurrMyOMaauo++RL
1824c0 72 56 6c 38 39 55 4d 37 67 36 6b 67 6d 4a 73 39 35 56 6e 36 52 48 4a 6b 2f 30 4b 47 52 48 43 77 rVl89UM7g6kgmJs95Vn6RHJk/0KGRHCw
1824e0 50 54 35 69 56 0a 57 56 4f 39 30 43 4c 59 69 46 32 63 4e 2f 7a 37 5a 4d 46 34 6a 49 75 61 59 41 PT5iV.WVO90CLYiF2cN/z7ZMF4jIuaYA
182500 6e 71 31 66 6f 68 58 39 42 30 5a 65 64 51 78 62 38 75 75 51 73 4c 72 62 57 77 46 36 59 53 6a 4e nq1fohX9B0ZedQxb8uuQsLrbWwF6YSjN
182520 52 69 65 4f 70 57 61 75 77 4b 30 6b 44 44 50 41 55 77 0a 50 6b 32 55 74 35 39 4b 41 39 4e 39 4a RieOpWauwK0kDDPAUw.Pk2Ut59KA9N9J
182540 30 75 32 2f 6b 54 4f 2b 68 6b 7a 47 6d 32 6b 51 74 48 64 7a 4d 6a 49 31 78 5a 53 67 30 38 31 6c 0u2/kTO+hkzGm2kQtHdzMjI1xZSg081l
182560 4c 4d 53 56 58 33 6c 34 6b 4c 72 35 4a 79 54 43 63 42 4d 57 77 65 72 78 32 30 52 6f 46 41 58 0a LMSVX3l4kLr5JyTCcBMWwerx20RoFAX.
182580 6c 43 4f 6f 74 51 71 53 44 37 4a 36 77 57 41 73 4f 4d 77 61 70 6c 76 2f 38 67 7a 6a 71 68 38 63 lCOotQqSD7J6wWAsOMwaplv/8gzjqh8c
1825a0 33 4c 69 67 6b 79 66 65 59 2b 4e 2f 49 5a 38 36 35 5a 37 36 34 42 4e 71 64 65 75 57 58 47 4b 52 3LigkyfeY+N/IZ865Z764BNqdeuWXGKR
1825c0 6c 49 35 6e 55 37 61 4a 2b 42 49 4a 0a 79 32 39 53 57 77 4e 79 68 6c 43 56 43 4e 53 4e 68 34 59 lI5nU7aJ+BIJ.y29SWwNyhlCVCNSNh4Y
1825e0 56 48 35 55 6b 32 4b 52 76 6d 73 36 6b 6e 5a 74 74 30 72 4a 32 42 6f 62 47 56 67 6a 46 36 77 6e VH5Uk2KRvms6knZtt0rJ2BobGVgjF6wn
182600 61 4e 73 49 62 57 30 47 2b 59 53 72 6a 63 4f 61 34 70 76 69 32 57 73 53 39 0a 49 66 66 2f 71 6c aNsIbW0G+YSrjcOa4pvi2WsS9.Iff/ql
182620 2b 68 62 48 59 35 5a 74 62 71 54 46 58 68 41 44 4f 62 45 35 68 6a 79 57 2f 51 41 53 41 4a 4e 31 +hbHY5ZtbqTFXhADObE5hjyW/QASAJN1
182640 4c 6e 44 45 38 2b 7a 62 7a 31 58 35 59 6e 70 79 41 43 6c 65 41 75 36 41 64 42 42 52 38 56 62 74 LnDE8+zbz1X5YnpyACleAu6AdBBR8Vbt
182660 61 77 35 42 6e 67 0a 44 77 4b 54 41 43 64 79 78 59 76 52 56 42 39 64 53 73 4e 41 6c 33 35 56 70 aw5Bng.DwKTACdyxYvRVB9dSsNAl35Vp
182680 6e 7a 42 4d 77 51 55 41 52 31 4a 49 47 6b 4c 47 5a 4f 64 62 6c 67 69 39 30 41 4d 52 67 77 6a 59 nzBMwQUAR1JIGkLGZOdblgi90AMRgwjY
1826a0 2f 4d 35 30 6e 39 32 55 61 66 30 79 4b 48 78 44 48 59 69 0a 49 30 5a 53 4b 53 33 69 6f 30 45 48 /M50n92Uaf0yKHxDHYi.I0ZSKS3io0EH
1826c0 56 6d 6d 59 30 67 55 4a 76 47 6e 48 57 6d 48 4e 6a 34 46 67 46 55 32 41 33 5a 44 69 66 63 52 51 VmmY0gUJvGnHWmHNj4FgFU2A3ZDifcRQ
1826e0 38 6f 77 37 62 6b 72 48 78 75 61 41 4b 7a 79 42 76 42 47 41 46 68 41 6e 31 2f 44 4e 50 33 6e 4d 8ow7bkrHxuaAKzyBvBGAFhAn1/DNP3nM
182700 0a 63 79 72 44 66 6c 4f 52 31 6d 37 34 39 66 50 48 30 46 46 4e 6a 6b 75 6c 57 2b 59 5a 46 7a 76 .cyrDflOR1m749fPH0FFNjkulW+YZFzv
182720 57 67 51 6e 63 49 74 7a 75 6a 72 6e 45 6a 31 50 68 5a 37 73 7a 75 49 67 56 52 73 2f 74 61 54 58 WgQncItzujrnEj1PhZ7szuIgVRs/taTX
182740 2f 64 51 31 47 38 38 35 78 34 63 56 72 0a 68 6b 49 47 75 55 45 3d 0a 2d 2d 2d 2d 2d 45 4e 44 20 /dQ1G885x4cVr.hkIGuUE=.-----END.
182760 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 3c 3f 70 68 70 0a 0a 69 66 20 28 50 48 50 5f CERTIFICATE-----.<?php..if.(PHP_
182780 53 41 50 49 20 21 3d 3d 20 27 63 6c 69 27 29 20 7b 0a 20 20 20 20 65 63 68 6f 20 27 57 61 72 6e SAPI.!==.'cli').{.....echo.'Warn
1827a0 69 6e 67 3a 20 43 6f 6d 70 6f 73 65 72 20 73 68 6f 75 6c 64 20 62 65 20 69 6e 76 6f 6b 65 64 20 ing:.Composer.should.be.invoked.
1827c0 76 69 61 20 74 68 65 20 43 4c 49 20 76 65 72 73 69 6f 6e 20 6f 66 20 50 48 50 2c 20 6e 6f 74 20 via.the.CLI.version.of.PHP,.not.
1827e0 74 68 65 20 27 2e 50 48 50 5f 53 41 50 49 2e 27 20 53 41 50 49 27 2e 50 48 50 5f 45 4f 4c 3b 0a the.'.PHP_SAPI.'.SAPI'.PHP_EOL;.
182800 7d 0a 0a 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 73 72 63 2f 62 6f 6f 74 }..require.__DIR__.'/../src/boot
182820 73 74 72 61 70 2e 70 68 70 27 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 73 6f 6c strap.php';..use.Composer\Consol
182840 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 0a 65 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 e\Application;..error_reporting(
182860 2d 31 29 3b 0a 0a 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 69 6e 69 5f 73 -1);..if.(function_exists('ini_s
182880 65 74 27 29 29 20 7b 0a 20 20 20 20 40 69 6e 69 5f 73 65 74 28 27 64 69 73 70 6c 61 79 5f 65 72 et')).{.....@ini_set('display_er
1828a0 72 6f 72 73 27 2c 20 31 29 3b 0a 0a 20 20 20 20 24 6d 65 6d 6f 72 79 49 6e 42 79 74 65 73 20 3d rors',.1);......$memoryInBytes.=
1828c0 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 7b 0a 20 20 20 20 20 20 20 20 24 75 6e .function.($value).{.........$un
1828e0 69 74 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 73 75 62 73 74 72 28 24 76 61 6c 75 65 2c 20 2d it.=.strtolower(substr($value,.-
182900 31 2c 20 31 29 29 3b 0a 20 20 20 20 20 20 20 20 24 76 61 6c 75 65 20 3d 20 28 69 6e 74 29 20 24 1,.1));.........$value.=.(int).$
182920 76 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 73 77 69 74 63 68 28 24 75 6e 69 74 29 20 7b 0a 20 value;.........switch($unit).{..
182940 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 27 67 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 ...........case.'g':............
182960 20 20 20 20 20 24 76 61 6c 75 65 20 2a 3d 20 31 30 32 34 3b 0a 20 20 20 20 20 20 20 20 20 20 20 .....$value.*=.1024;............
182980 20 20 20 20 20 2f 2f 20 6e 6f 20 62 72 65 61 6b 20 28 63 75 6d 75 6c 61 74 69 76 65 20 6d 75 6c .....//.no.break.(cumulative.mul
1829a0 74 69 70 6c 69 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 27 6d 27 3a 0a 20 tiplier).............case.'m':..
1829c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 76 61 6c 75 65 20 2a 3d 20 31 30 32 34 3b 0a 20 ...............$value.*=.1024;..
1829e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6e 6f 20 62 72 65 61 6b 20 28 63 75 6d 75 ...............//.no.break.(cumu
182a00 6c 61 74 69 76 65 20 6d 75 6c 74 69 70 6c 69 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 lative.multiplier).............c
182a20 61 73 65 20 27 6b 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 76 61 6c 75 65 20 ase.'k':.................$value.
182a40 2a 3d 20 31 30 32 34 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 72 65 74 75 *=.1024;.........}..........retu
182a60 72 6e 20 24 76 61 6c 75 65 3b 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 24 6d 65 6d 6f 72 79 4c 69 rn.$value;.....};......$memoryLi
182a80 6d 69 74 20 3d 20 74 72 69 6d 28 69 6e 69 5f 67 65 74 28 27 6d 65 6d 6f 72 79 5f 6c 69 6d 69 74 mit.=.trim(ini_get('memory_limit
182aa0 27 29 29 3b 0a 20 20 20 20 2f 2f 20 49 6e 63 72 65 61 73 65 20 6d 65 6d 6f 72 79 5f 6c 69 6d 69 '));.....//.Increase.memory_limi
182ac0 74 20 69 66 20 69 74 20 69 73 20 6c 6f 77 65 72 20 74 68 61 6e 20 31 47 42 0a 20 20 20 20 69 66 t.if.it.is.lower.than.1GB.....if
182ae0 20 28 24 6d 65 6d 6f 72 79 4c 69 6d 69 74 20 21 3d 20 2d 31 20 26 26 20 24 6d 65 6d 6f 72 79 49 .($memoryLimit.!=.-1.&&.$memoryI
182b00 6e 42 79 74 65 73 28 24 6d 65 6d 6f 72 79 4c 69 6d 69 74 29 20 3c 20 31 30 32 34 20 2a 20 31 30 nBytes($memoryLimit).<.1024.*.10
182b20 32 34 20 2a 20 31 30 32 34 29 20 7b 0a 20 20 20 20 20 20 20 20 40 69 6e 69 5f 73 65 74 28 27 6d 24.*.1024).{.........@ini_set('m
182b40 65 6d 6f 72 79 5f 6c 69 6d 69 74 27 2c 20 27 31 47 27 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 75 emory_limit',.'1G');.....}.....u
182b60 6e 73 65 74 28 24 6d 65 6d 6f 72 79 49 6e 42 79 74 65 73 2c 20 24 6d 65 6d 6f 72 79 4c 69 6d 69 nset($memoryInBytes,.$memoryLimi
182b80 74 29 3b 0a 7d 0a 0a 2f 2f 20 72 75 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 61 70 70 6c 69 63 t);.}..//.run.the.command.applic
182ba0 61 74 69 6f 6e 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 6e 65 77 20 41 70 70 6c 69 63 61 ation.$application.=.new.Applica
182bc0 74 69 6f 6e 28 29 3b 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 72 75 6e 28 29 3b 0a 0a 43 6f tion();.$application->run();..Co
182be0 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 36 20 4e 69 6c 73 20 41 64 65 72 6d 61 6e 6e 2c 20 pyright.(c).2016.Nils.Adermann,.
182c00 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 0a 0a 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 Jordi.Boggiano..Permission.is.he
182c20 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f reby.granted,.free.of.charge,.to
182c40 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 6f 66 20 .any.person.obtaining.a.copy.of.
182c60 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 6f 63 this.software.and.associated.doc
182c80 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 65 22 umentation.files.(the."Software"
182ca0 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 68 6f ),.to.deal.in.the.Software.witho
182cc0 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 6f 75 ut.restriction,.including.withou
182ce0 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 74 6f 20 75 73 65 2c 20 t.limitation.the.rights.to.use,.
182d00 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 2c 20 64 69 copy,.modify,.merge,.publish,.di
182d20 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 20 73 65 6c stribute,.sublicense,.and/or.sel
182d40 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 74 6f l.copies.of.the.Software,.and.to
182d60 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 53 6f 66 74 .permit.persons.to.whom.the.Soft
182d80 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 0a 74 6f 20 64 6f 20 73 6f 2c 20 73 75 62 6a ware.is.furnished.to.do.so,.subj
182da0 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 3a ect.to.the.following.conditions:
182dc0 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 ..The.above.copyright.notice.and
182de0 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c 6c 20 62 65 .this.permission.notice.shall.be
182e00 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 73 20 6f 72 20 73 75 62 73 74 .included.in.all.copies.or.subst
182e20 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2e antial.portions.of.the.Software.
182e40 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 20 49 ..THE.SOFTWARE.IS.PROVIDED."AS.I
182e60 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 S",.WITHOUT.WARRANTY.OF.ANY.KIND
182e80 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 ,.EXPRESS.OR.IMPLIED,.INCLUDING.
182ea0 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 BUT.NOT.LIMITED.TO.THE.WARRANTIE
182ec0 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 46 49 54 4e 45 53 53 20 46 4f S.OF.MERCHANTABILITY,.FITNESS.FO
182ee0 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 4e R.A.PARTICULAR.PURPOSE.AND.NONIN
182f00 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 FRINGEMENT..IN.NO.EVENT.SHALL.TH
182f20 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 42 E.AUTHORS.OR.COPYRIGHT.HOLDERS.B
182f40 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 53 20 E.LIABLE.FOR.ANY.CLAIM,.DAMAGES.
182f60 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 41 OR.OTHER.LIABILITY,.WHETHER.IN.A
182f80 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 20 4f 54 N.ACTION.OF.CONTRACT,.TORT.OR.OT
182fa0 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 4f 55 54 20 4f 46 20 4f 52 HERWISE,.ARISING.FROM,.OUT.OF.OR
182fc0 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f 46 54 57 41 52 45 .IN.CONNECTION.WITH.THE.SOFTWARE
182fe0 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 53 20 49 4e .OR.THE.USE.OR.OTHER.DEALINGS.IN
183000 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a 54 2b 15 c5 99 e3 9b 9c 5d a6 6c 3e 00 b1 e6 e8 .THE.SOFTWARE...T+......].l>....
183020 07 77 49 b1 02 00 00 00 47 42 4d 42 .wI.....GBMB